So apparently I can’t quit thedifferential swerve stupid idea. The problem I saw with the previous designs is that the steering ratio is too fast, which leads to twitchy modules. So in response, I’ve designed a gear train that adds another stage to the steering train after the differential. The result (if I’ve calculated correctly) is a drive ratio of 4:1 on 3" wheels, and a steering ratio (with one motor stopped, and one motor spinning) of 35:1 which is right in line with non-differential swerves, so it should be more controllable.
Of course, it still has entirely too many moving parts to be reasonable, but after a day of CADing, I figure I might as well share it in case it inspires someone else. Hope it does!
Can someone please explain how the differential part actually works. I’ve been trying to understand for many weeks now and I am still completely baffled.
The planets (dark blue and gray) act like little balance beams, measuring the difference between each input ring gear (pink) and then:
Outputting the average of the two input speeds to the carrier (light blue), and on to the steering fork (green). So if both ring gears move the same speed in opposite direction, the average is zero, the carrier doesn’t move and the module keeps the same steering angle.
Outputting the difference in the two input speeds to the sun gear (yellow) and on to the drive wheels through the central shaft and miter gears. So if both ring gears move the same speed in the same direction, the planets don’t turn relative to the carrier. The carrier and sun gear turn together, causing the module to steer without* driving the wheels forward or backwards.
(*Without driving the wheels much anyway. The extra reduction between the carrier and the steering fork complicates the “turn in place” ratio in a way I haven’t fully thought through yet)
Sorry if that description doesn’t help. I’m much better at visualizing mechanisms than I am explaining them in words.
I’m pretty sure I just realized a flaw in the design. You can’t control the carrier speed independently from the sun gear speed, since birth sets of planets are connected to the sun gear. I think the doubled planets (gray) have to connect the ring gears only without touching the sun gear, like this: https://upload.wikimedia.org/wikipedia/commons/7/75/Spur_gear_differential_(Manual_of_Driving_and_Maintenance).jpg. If so, fixing the flaw would only require a slight modification to the carrier.
As you have 2 wheels and are using 2 motors why not steer by driving each wheel seperately kinda like tank drive and have an encoder on each wheel and have the software steer?
Would be great to see. We possibly if we get the newbs trained (everyone graduating and all newbs except 2) we want to try an all omniwheel drive with each one pointing in a different direction.
The problems with driving two wheels separately are a) the steering is way too sensitive to motor speed and more importantly b) it only works if both wheels have good traction with the floor. Both issues make control of the module much more difficult.
Using a differential mechanism ensures the steering is a direct function of the difference in motor speeds. It’s a proven concept at this point. You can even buy a module commercially (although I can’t comment on its performance). https://www.armabot.com/products/differential-swerve-drive
This was the final version that we did last summer:
Our biggest problem was steering ratio vs drive ratio, as nuclearnerd stated.
Our swivel section was too inconsistent and our frame a little too warped to maintain even contact.
In the off season, we’re starting to pick the project back up and redesign to account for those issues. We believe we have a design strategy to address the steering ratio vs. drive ratio problem. By placing the wheels further apart we effectively doubled the steering ratio without changing the drive ratio.
We never released CAD for the previous design because we considered it fatally flawed. If someone wants to see it, I’ll post it.