|The robot is never 'done' there is always something that can be done to improve it. - Jonathan Norris [more]|
Sinusoidal Motion Profile Equations, Code, & Plots
*PLEASE USE THESE LINKS TO DOWNLOAD LATEST VERSIONS*
Sinusoidal Accel Profile
How to calculate a smooth sinusoidal acceleration motion profile,
given max accel and distance-to-target.
PDF file includes equations, example plots, and working Maxima scripts:
Sinusoidal accel motion profile generator Win32 console app
for off-line profile generation
cascaded position and velocity loops with feedforward.
x(t) v(t) a(t) motion profile with TalonSRX in speed-control mode.
x(t) v(t) a(t) motion profile with TalonSRX in position-control mode.
Sinusoidal Accel Profile.pngdownload file
Sinusoidal Accel Profile.mac.txtdownload file
Trapezoidal Accel Profile.mac.txtdownload file
Trapezoidal Accel Profile.pngdownload file
x(t) v(t) a(t) revA.pngdownload file
x(t) v(t) a(t) with TalonSRX.pngdownload file
sinusoidal acceleration motion profile revC.pdfdownload file
x(t) v(t) a(t) SRX CLP.pngdownload file
02-20-2015 10:14 AMJesseK
I see that this is desired behavior, but how do we poke the robot so it does what we want?
Is 'v' proportional to the motor output? Seems like we would tune 'amax' until the robot drives the desired distance in the desired time.
Is motor output a combination of 'v' and the different between actual 'x' and desired 'x'?
02-20-2015 11:13 AMEther
Hi Jesse, I answered your question here:
@all: please use the above link for any further discussion. Thanks.
02-20-2015 12:37 PMPaul Copioli
I am curious as to why you are proposing this equation based method when the filter based method posted from post #18 in this thread:http://www.chiefdelphi.com/forums/sh...motion+profile
The filter method is so much more real time friendly and flexible as you can determine the motion acceleration type just by manipulating the filter lengths.
02-20-2015 01:00 PMEther
Please continue the discussion in this thread:
Thank you !