Ok, so bear with me as this is conceptually in its infancy.
Autonomous vehicles are a dime a dozen with tons of projects (donkey car, etc) that all work to certain extents. So assuming one of those off the shelf navigation systems 'works', I've been trying to think of ways to implement it to a skateboard. Because why not!
So the problem I've encountered that takes some getting around has been the steering. So I started off initially with a custom plywood aircraft carrier deck sized mountain board. It was embarrassing janky. For steering I had a 60kg servo with a chain sprocket that turned a 'lazy susan'. The OD of the lazy susan was bolted to the board, and the ID mounted the front trucks. So...in theory, the servo turned the the ID of the lazy susan and the front trucks rotated around the lazy susan rotational axis. Worked great with no load, but once I stood on it...well it evoked noises that AvE has told me are not skookum. No angry pixie smoke...but it is still not the solution.
I graduated to linear actuators...with a good sized lever arm. It worked like a treat, steering kind of like a boat tiller. However it is slow. The higher speed ones would work fine, but a bit pricey (I know, complaining about cost in this hobby...). Then I had an idea:
What about differential acceleration and braking (differential steering...sorta) with each wheel. Conceptually, I was going to place disk brakes on the front wheels. If I apply full left brake, the skateboard would careen to the left (and flip over). But if I pulse left brake (like a PPM signal), it would pull that wheel back, allowing the truck to pivot a bit and turn the skateboard. While easy to do with servos and of the shelf disk brakes, I then though why not run this in software.
So, this brings me to where we are now...I'm working on differential skateboard steering. Essentially one motor drives, and the other motor drives less or brakes. I'd love to be able to communicate these commands over the canbus, but I'm still learning the whole language. I'm sure I could run vesc-tool on a raspi and send command line instructions, but there has got to be a more elegant solution. The redneck in me says just get 2x different escs and then have arduino or raspi feed them different PPM values, but that seems hacky to me.
And yes, the downsides of this whole scheme are legion:
1. Truck bearings have to be loose for good steering radius
2. Tire wear will be a thing for sure
3. Addition of a rider or absence of a rider will totally screw up all default settings
4. It is stupid
5. The board needs to have enough mass to keep everything from just spinning out and sliding.
So, if anyone cares to dream with me of a day where mountain boards hurl down the street autonomously, whizzing to pick up their owners at their favorite burger shops, then I simply ask:
What ideas do you have for eskate steering mechanisms?