TÜÜB | DIY CF Deck | Weight Shift | 16s3p | UBOX | 6355 | BN Drivetrain

Progress on those action items from before:

  • I’ve mostly gotten rid of the throttle oscillations by playing around with sensitivity, ramping, and dead band. I’ve reduced the gain in Arduino somewhat from the first ride, my current ramping times are about 1 second forward and 0.5 seconds reverse, and I have about 5% dead band. I can take off pretty smooth now, but there’s still a bit of oscillation during hard braking between 5 and 10 mph when the braking force hits its maximum. But TBH I’ll take that any day over the throttle oscillations at 30 mph I was having before, those were major sketch. Also, those ramping times might sound long to most people, but the limiting factor is actually how quickly I can transfer my body between lean angles, so this level of ramping doesn’t feel like it’s holding me back.
  • The sensor drift was by far the harder problem to tackle, because fundamentally I need to correct an issue with the sensor data using only the sensor data itself. My solution has been to use an integrator term that shifts the throttle balance of the board over time in whichever direction I lean. Took a lot of iterations to get it working the way I wanted, for the past week it felt like I was going back and forth between having good throttle and having good brakes, but I think I’ve got it like 90% sorted now.
  • I kept putting more screws into the enclosure mount until it stopped breaking. Why yes I’m an engineer, how did you know

After my testing session today the board was making me feel comfortable enough to take it out into traffic for the first time, and I spent the second half of that battery ripping around the quieter streets in my area and passing cars. Rode for a few blocks with a motorcyclist too, feels good man :metal:

13 Likes

Man, if you’re willing I’d love a deeper dive into your control code. Are you running PID and playing with the terms, or something more complex?

Congrats on progress!

5 Likes

Hats off to you and your big balls, sir

4 Likes

It’s not exactly PID because it isn’t based on the idea of defining an error function and trying to minimize it, it would probably be categorized as a simple feed-forward controller, plus the integrator I added and the low pass filter. A FFIF :thinking:. I also tried using a d term few days ago, and might try again in the future, but the one test I did with it had really terrible throttle oscillations, I think it was playing really bad with the latency produced by the filter and ramping so that its output was out of phase with the desired results.

I’m not going to just post my code because I don’t want somebody without the requisite experience in the future copy-pasting my project and hurting themselves, and also because my rapid fire test-and-edit thing has left it a poorly commented mess :stuck_out_tongue_winking_eye:. But what I’m essentially doing is:

Read sensors
Map front/back ratio to a throttle signal
Feed signal through low pass filter
IntegratorTally += signal/iTermGain
If (armed) {write (signal + tally) to ESC}

The tally has caps on growth and a different growth rate forwards and back.

And the mapping step also has asymmetric behavior that gets adjusted live according to the integration tally, which I found was necessary to keep the board feeling the same as the sensors drifted.

Haha thanks. Could also just be a lack of common sense, there’s more than one option here.

5 Likes

Whoa how the hell did I miss this thread :exploding_head:

6 Likes

It’s not your fault, my board appears to be accidentally low radar observable.

5 Likes

Took the board out on its first actual “I’m going to be walking an uncomfortably long distance if something breaks” ride a couple weeks ago, and it performed great. Using 80% of the battery got me 30 km with relatively aggressive riding. I took it up to 60 kph on shore parkway, and it definitely has more to give, but my nerves were the limiting factor. It didn’t feel like it was trying to wobble on me at that speed, though.

And then I fell off on a bumpy road at 20 kph and stubbed my thumb crazy hard. I’m starting to get some of the range of motion back in it now, so I’ll start riding again soon. This injury is dedicated to @ShutterShock

5 Likes

ah it all makes sense now, you’re from brooklyn.

2 Likes

Yeeah pal, whatsit tooyah?

4 Likes

the hint of accent in the videos makes sense

Haha everyone keeps saying that, not sure exactly what gave it away. I know my accent isn’t strong to begin with but I was always trying to hide it and speak really loud and clear in the videos. I guess it’s not something you’re able to notice about yourself.

1 Like

you sound like someone i’d bump into if I went on a walk, so uh :rofl:
its too familiar to me

1 Like

I need to catch up on this thread, haven’t been in here since the start, but I’m sure this is a strong contender for BOTY :muscle:

11 Likes

I agree. He definitely has the most entertaining build-thread imo. I really enjoy the videos.

4 Likes

60kph on a diy pressure driven board is super gnarly :clap::clap::metal:
I had doubts at the start, but kudos @Flyboy, I’m impressed with your balls of steel and technical prowess to back them up.

7 Likes

Oh good :joy: :joy:

I’m sorry for your injury

I agree lmao

4 Likes

No worries, I just wouldn’t have posted about that ride if you hadn’t mentioned it in the BOTY thread. :slight_smile:

Thanks @PedroMcJimenez, just think of it as a machine that forces you to keep your weight on the front truck before it lets you go fast. It’s like 10% less sketch that way :rofl:

4 Likes

damn, 37mph on my regular board is difficult enough. I gotta swing by Brooklyn soon to try this thing!

2 Likes

That would be sick! You’re welcome to.
It helps that I have a 54" deck and 50/30 split. Flies like a javelin, corners like a battleship.

3 Likes

Dude wtf that’s longer than the cyboard

3 Likes