Go to Post Be right back, have to go find out just how many tennis rackets I can put on a robot... - Countersteer [more]
Home
Go Back   Chief Delphi > Technical > Technical Discussion
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 05-15-2018, 11:56 AM
PeterR's Avatar
PeterR PeterR is offline
Registered User
FRC #4293
 
Join Date: Apr 2018
Location: Colorado
Posts: 14
PeterR is an unknown quantity at this point
Differential swerve Drive design

I have been looking into swerve drive modules and am working on designing one. I was particularly intrigued by the differential models. While looking at these I noticed that nobody has ever used them, even though by my calculations they are lighter, faster, more powerful. However, it seems that many people seem to see them as hard to design and program. However after lining up the gears and assembling, it seems as though one encoder could be used to measure one of the motors rotation, and one to measure the turning of the module. Then the other motor could have a speed change to match the other so that the module goes straight. I have not played with anything other than WCD before so is it difficult to do this, since it seems to be just a matter of speeding up the calculations as much as possible to correct instantly? Or is there something that I am missing?
Reply With Quote
  #2   Spotlight this post!  
Unread 05-15-2018, 12:18 PM
asid61's Avatar
asid61 asid61 is offline
Design Simple
AKA: Anand Rajamani
FRC #1072 (Harker Robotics)
Team Role: Mentor
 
Join Date: Jan 2014
Rookie Year: 2013
Location: Cupertino, CA
Posts: 2,911
asid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond repute
Re: Differential swerve Drive design

That's basically the main issue. However, straight-gear differentials have low gear ratios, so your module rotation speed can easily end up too fast for comfort (on the order of 1000rpm or more). Plus, it's conceptually difficult to design if you want to make a good one. Aren's design is probably the best-executed so far in terms of weight and packaging.
__________________
Team 1072 2017-present
Team 299 2017
Team 115 2013-2016

2018 Davis Finalists (w/ 6474 and 3880)
2018 Roebling Winners (w/ 3476, 1323, and 1778)


Reply With Quote
  #3   Spotlight this post!  
Unread 05-15-2018, 12:35 PM
nuclearnerd's Avatar
nuclearnerd nuclearnerd is offline
Speaking for myself, not my team
AKA: Brendan Simons
FRC #5406 (Celt-X)
Team Role: Engineer
 
Join Date: Jan 2014
Rookie Year: 2014
Location: Hamilton, Ontario, Canada
Posts: 765
nuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond repute
Re: Differential swerve Drive design

Quote:
Originally Posted by PeterR View Post
I have been looking into swerve drive modules and am working on designing one. I was particularly intrigued by the differential models. While looking at these I noticed that nobody has ever used them
You could be the first! The idea is on the bleeding edge of the technology curve right now- it will take some experiments and failures before you start seeing many differential swerves take the competition field.
Reply With Quote
  #4   Spotlight this post!  
Unread 05-16-2018, 01:44 PM
InFlight's Avatar
InFlight InFlight is offline
3574 - The King's of Bling
AKA: Jim
FRC #3574 (High Tekerz)
Team Role: Mentor
 
Join Date: Mar 2014
Rookie Year: 2012
Location: Seattle Area
Posts: 260
InFlight has a reputation beyond reputeInFlight has a reputation beyond reputeInFlight has a reputation beyond reputeInFlight has a reputation beyond reputeInFlight has a reputation beyond reputeInFlight has a reputation beyond reputeInFlight has a reputation beyond reputeInFlight has a reputation beyond reputeInFlight has a reputation beyond reputeInFlight has a reputation beyond reputeInFlight has a reputation beyond repute
Re: Differential swerve Drive design

The other issue is the variability in the motors. The specification limits are typically +/- 10% on Free Speed. Most motors will not be out that much; but they simply aren't a perfectly matched device pair.

Output Speed= Free Speed - (Free Speed/Stall Torque) * Torque Load

Thus the torque load vs speed relationship will not be perfectlly equal between the motors. Without adjustment this would cause wheel caster.

Multiply this issue times four swerve modules, and it's now really mess to fix in code. Then consider replacing a swerve module during competition that might need alternate code compensations.

I won't even start on cold vs hot motor performance...

Differential Swerve does looks nice on CAD.
__________________

Last edited by InFlight : 05-16-2018 at 01:48 PM.
Reply With Quote
  #5   Spotlight this post!  
Unread 05-16-2018, 02:40 PM
Jared Russell's Avatar
Jared Russell Jared Russell is offline
4933T15
FRC #0254 (The Cheesy Poofs), FRC #0341 (Miss Daisy)
Team Role: Engineer
 
Join Date: Nov 2002
Rookie Year: 2001
Location: San Francisco, CA
Posts: 3,503
Jared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond repute
Re: Differential swerve Drive design

Quote:
Originally Posted by InFlight View Post
The other issue is the variability in the motors. The specification limits are typically +/- 10% on Free Speed. Most motors will not be out that much; but they simply aren't a perfectly matched device pair.

Output Speed= Free Speed - (Free Speed/Stall Torque) * Torque Load

Thus the torque load vs speed relationship will not be perfectlly equal between the motors. Without adjustment this would cause wheel caster.

Multiply this issue times four swerve modules, and it's now really mess to fix in code. Then consider replacing a swerve module during competition that might need alternate code compensations.

I won't even start on cold vs hot motor performance...

Differential Swerve does looks nice on CAD.
This issue exists in all differential drivetrains (but not 4 times over). Generally people have had success mitigating the variability with feedback control in those cases. There are arguments to be made both ways as to whether it's easier or harder to stabilize a loaded differential swerve module than a 2 wheel drive robot.
Reply With Quote
  #6   Spotlight this post!  
Unread 05-16-2018, 02:51 PM
wgorgen wgorgen is offline
Registered User
FRC #1533 (Triple Strange)
Team Role: Mentor
 
Join Date: Apr 2018
Rookie Year: 2014
Location: Greensboro, NC, USA
Posts: 44
wgorgen is a jewel in the roughwgorgen is a jewel in the roughwgorgen is a jewel in the roughwgorgen is a jewel in the rough
Re: Differential swerve Drive design

Quote:
Originally Posted by asid61 View Post
That's basically the main issue. However, straight-gear differentials have low gear ratios, so your module rotation speed can easily end up too fast for comfort (on the order of 1000rpm or more). Plus, it's conceptually difficult to design if you want to make a good one. Aren's design is probably the best-executed so far in terms of weight and packaging.
I've been looking at some of the designs out there over the past year or so. The designs are quite elegant and, in theory, allow you to put the power from the 2 motors into the wheels.
I came to the same conclusion as you: the difficulty comes in controlling the rotation. A PID control on the power to the second motor based on the absolute module rotation encoder input is the only reasonable way to do this. On the surface, it seems like a pretty straight forward problem, but with module high rotation speeds, the system would be so sensitive that the processing cycle times for the code could seriously hinder the response. You might be able to get it stable for steady state wheel speeds, but then when you factor in acceleration and quick direction changes that swerve drives are built for, I think the code would struggle to keep up with all the changing variables.

I've seen a few designs that try to incorporate different gearing schemes to try to get the module rotations slower as a proportion of motor speed. But I'm not sure how low the rotation speed ratio needs to be in order to bring the feedback gains into the realm of controllability. Maybe someone with more time than I have can do the math and develop the root locus diagrams for this problem.

I'm also wondering whether the built in PID controllers in the Talons would be better suited to the task than the main code and whether they can be tuned adequately. I've been impressed with the built-in capabilities that those motor controller have. It would be a fun experiment to that and see if it could be made stable. So far, this is nowhere near the top of our offseason project list, so I don't think we will be looking into this any time soon. But maybe someday our students will take a whack at this intriguing control problem.
Reply With Quote
  #7   Spotlight this post!  
Unread 05-16-2018, 03:39 PM
Jared Russell's Avatar
Jared Russell Jared Russell is offline
4933T15
FRC #0254 (The Cheesy Poofs), FRC #0341 (Miss Daisy)
Team Role: Engineer
 
Join Date: Nov 2002
Rookie Year: 2001
Location: San Francisco, CA
Posts: 3,503
Jared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond repute
Re: Differential swerve Drive design

Quote:
Originally Posted by wgorgen View Post
I'm also wondering whether the built in PID controllers in the Talons would be better suited to the task than the main code and whether they can be tuned adequately. I've been impressed with the built-in capabilities that those motor controller have. It would be a fun experiment to that and see if it could be made stable. So far, this is nowhere near the top of our offseason project list, so I don't think we will be looking into this any time soon. But maybe someday our students will take a whack at this intriguing control problem.
The tools you need for feedback control of a differential swerve in the Talon firmware were quietly added late in build season (auxiliary PID, custom feedforward, remote sensors, etc). See section 9.10.2 of the Software Reference Manual.
Reply With Quote
  #8   Spotlight this post!  
Unread 05-16-2018, 06:32 PM
nuclearnerd's Avatar
nuclearnerd nuclearnerd is offline
Speaking for myself, not my team
AKA: Brendan Simons
FRC #5406 (Celt-X)
Team Role: Engineer
 
Join Date: Jan 2014
Rookie Year: 2014
Location: Hamilton, Ontario, Canada
Posts: 765
nuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond reputenuclearnerd has a reputation beyond repute
Re: Differential swerve Drive design

Quote:
Originally Posted by Jared Russell View Post
The tools you need for feedback control of a differential swerve in the Talon firmware were quietly added late in build season (auxiliary PID, custom feedforward, remote sensors, etc). See section 9.10.2 of the Software Reference Manual.
Woah, cool. Crazy 971 mechanisms for everyone!
Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 02:06 AM.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi