Welcome! Log In Create A New Profile

Advanced

Velocity, Accelleration, and Jerk

Posted by BeagleFury 
Velocity, Accelleration, and Jerk
March 29, 2010 08:21AM
So I've come to terms that I probably will not solve the motion problem using polynomials and analytic techniques -- limiting velocity, acceleration, and jerk to a pre-specified set of limits; it feels I could do it given enough time and concentration, but I've not had the time nor concentration to focus on it outside of my other responsibilities.

So, I will try a new tactic. Instead of:
1. simulate the motion on host using (general polynomial) splines.
2. analytically adjust those (general polynomial) splines to have the desired velocity, acceleration and jerk limits.
3. Send cubic spline approximations to firmware to be processed as stepwise cubic splines, generating the timing needed between steps.

I've started to code the following host pipeline:
1. simulate the exact steps on host to get the desired curve(s).
2. compute delay required between steps to have the (average) desired velocity, accelleration, and jerk limits.
3. Determine a technique to communicate steps to firmware to reduce bandwidth and realtime requirements from host.
3a. Could use linear, quadratic or cubic splines on the step + timing information. Cubic may yield the best compression, but linear may be enough for the majority of motion.
3b. Could use direct coding of steps, using as little as 1 byte per step. Rough back of envelope calculations put requirement of ~1K to ~2K RAM buffer -- assuming 2K-4K steps per second. Would firmware require decelleration logic to handle buffer near empty, to prevent overshoot if host or error retransmition logic cannot keep up with firmware?

Any thoughts on 3b? I have heard suggestions that we can transmit the exact steps directly to the firmware; anyone have thoughts or experience making this work without running into too many realtime problems or using too much memory? I don't think it will be too much of a problem to convert steps into (linear, quadratic, or cubic) splines, but it does add another level of processing and complexity.
Re: Velocity, Accelleration, and Jerk
March 30, 2010 03:43AM
[hackaday.com]

Is there anything that can be learned from these guys?
Re: Velocity, Accelleration, and Jerk
March 30, 2010 08:21AM
JohnnyCooper Wrote:
-------------------------------------------------------
> [hackaday.com]-
> needs-no-computer/
>
> Is there anything that can be learned from these
> guys?

An ARM based microcontroller probably could produce reasonable speeds for computing polar paths assuming it had enough memory.

I'm not sure to which it is you refer, however. I read thru the link, but didn't see anything specific to motion calculation, or to polar computations. Did I miss it?
Re: Velocity, Accelleration, and Jerk
March 31, 2010 03:15PM
I don't think so. Just thinking maybe they had some PID code in there for servo control.
Sorry, only registered users may post in this forum.

Click here to login