|
|
|
![]() |
|
|||||||
|
||||||||
Gear ratio selection is typically based upon theoretical top speeds or pushing power, but oftentimes, this isn't the criterion, and is a poor model for actual events. Sprint distance can play a much bigger factor for agile defense.
In this, we'll take a look at how to optimize based on reaching a certain point first, rather than being as "fast" as possible.
In the High Level Overview, basic facts about motor curves and limitations of our models are brushed over.
In the maple sheet, I use differential equations to model the velocity and distance travelled of a typical FRC robot as a function of time and gear ratio. This will then allow me to target a specific "sprint" distance, solve for required time, and find the gear ratio which reaches this distance in minimal time.
Motor DEQ.pdf
DC Motors and Gearboxes.pdf
Motor DEQ Interactive.zip
06-01-2016 21:21
apalrd
I really like that sprint-distance analysis is getting more 'light' in FRC. It's a way better metric for drivetrain performance than '81% adjusted speed' that a lot of CDers throw out during discussions.
To avoid differential equations, I've solved the physics equations in Excel iteratively (with a time-step of e.g. 0.01s and each slice of time on a new line). then I can also plot the curve of all of the variables in Excel. This is also easier to distribute to students in FRC.
What you don't go into detail on is how you determine what the sprint-distance you analyze to is. This all comes down to robot strategy, but it's really *really* important to get this right when you analyze the gear ratios in this way. It's all too easy to say the distance is 27' or 50' when really 10' or 15' is more appropriate for the game.
06-01-2016 21:34
ThaddeusMaximus|
To avoid differential equations, I've solved the physics equations in Excel iteratively (with a time-step of e.g. 0.01s and each slice of time on a new line). then I can also plot the curve of all of the variables in Excel. This is also easier to distribute to students in FRC.
|
This originally started as a "can this be done?" project.|
What you don't go into detail on is how you determine what the sprint-distance you analyze to is. This all comes down to robot strategy, but it's really *really* important to get this right when you analyze the gear ratios in this way. It's all too easy to say the distance is 27' or 50' when really 10' or 15' is more appropriate for the game.
|
06-01-2016 21:43
apalrd
|
Yes, you can indeed solve DEs numerically in that fashion, but it's hard to truly "optimize"; you've gotta trial-error it in every step (which, could be done, but processing power).
|
|
Yeah, this is arbitrary and pretty much just a flexible solution. It's something we're a bit new to, maybe someone else has better insight. I remember 610 saying something about how they optimized with sprint distance in mind in 2013.
|
07-01-2016 12:33
Rob StehlikThis is really neat stuff. My calculus is very rusty, but using a theoretical model to optimize gear ratios has potential to be very effective. I don't have or know how to use Maple though. Would it be possible for you to embed controls to vary the parameters and make it available using the Maple viewer?
http://www.maplesoft.com/products/maple/Mapleplayer/
07-01-2016 17:33
RyanCahoon|
To avoid differential equations, I've solved the physics equations in Excel iteratively (with a time-step of e.g. 0.01s and each slice of time on a new line). then I can also plot the curve of all of the variables in Excel. This is also easier to distribute to students in FRC.
|
07-01-2016 17:43
ThaddeusMaximus|
This is really neat stuff. My calculus is very rusty, but using a theoretical model to optimize gear ratios has potential to be very effective. I don't have or know how to use Maple though. Would it be possible for you to embed controls to vary the parameters and make it available using the Maple viewer?
http://www.maplesoft.com/products/maple/Mapleplayer/ |
08-01-2016 22:47
tomerThis is AMAZING.
Ever since I heared the term Spring distance I tried to figure out how can I calculate it and optimize it when designing a drive train, I tried some calculus and didn't reach anything meaningful, and we didn't have a ME mentor available to assist me..
So early in the morning of Kickoff, I find this. Thank you!!
08-01-2016 23:29
Mr. Lim
Super cool.
One thing we've struggled to model using the existing resources on CD is the optimal sprint taking into account decelerating to a stop at the end of the sprint. More often than not, your robot needs to be at a complete stop at the end of sprint, not blow past it at top speed.
Much of what we've done is anecdotal to try and take this into account - shortening the sprint distance by artificial amounts until it "felt" right. Different games have different characteristics - sometimes you need to slow down smoothly at the end of your sprint because it requires precise alignment. Other times you can practically hit something full-speed at the end of your sprint. I doubt you could effectively model the deceleration component as a result, but it would be cool to see.
Really inspiring work here. I remember I modeled optimal gear ratios for a robot that needed to drive up an incline without losing speed as a high school student in grade 11, using Maple for the very first time. I definitely didn't use ODEs back then... but Maple is a great tool.
(Insert blatant plug for a Canadian / University of Waterloo product)
14-01-2016 17:27
ThaddeusMaximus|
Really inspiring work here. I remember I modeled optimal gear ratios for a robot that needed to drive up an incline without losing speed as a high school student in grade 11, using Maple for the very first time. I definitely didn't use ODEs back then... but Maple is a great tool.
(Insert blatant plug for a Canadian / University of Waterloo product) |
14-01-2016 17:56
Ether|
If teams are looking for a good freeware alternative, SageMath is good.
|