acceleration curves

Post anything you want to discuss with others about the software.

Re: acceleration curves

Postby 1JUMPER10 » Wed Oct 11, 2017 5:21 pm

I wonder what the effect would be if one were to use Exact stop mode in UCCNC and a higher than normal RAS setting in the servo? Never used exact stop mode before I only ever remember Gerry commenting once that the time he tried it the movements were very harsh. That was awhile ago.
1JUMPER10
 
Posts: 48
Joined: Tue Oct 04, 2016 1:54 am

Re: acceleration curves

Postby Robertspark » Wed Oct 11, 2017 6:05 pm

Firstly, I've never used servo's and have zero experiance of closed loop servo control.

But (doesn' stop me wondering :roll: ), Gerry mentioned following error, is this not something which is ignored, given the servo drives are closed loop, and just get a tran of steps which they then apply acceleration profiles to , hence they buffer the steps recieved and the pulse width between them so that they calculate internally what acceleration or deceleration profile needs to be overlaid to get up to that velocity and distance?

I know diddly squat about closed loop servos but if they know how fast you want to go (narrow pulse width), and know how many steps then is the following error just something which is ignored? (would need all axis to have the same settings though, that way they would all have the same degree of error or lag?)
Rob

Einstein ― “If you can't explain it to a six year old, you don't understand it yourself”
UC400eth, UC300eth, UCCNC v1.2046, Neuron Lite.
UCCNC Macro Manual
Robertspark
 
Posts: 597
Joined: Sat Sep 03, 2016 4:27 pm
Location: Nr Liverpool, England

Re: acceleration curves

Postby 1JUMPER10 » Wed Oct 11, 2017 7:52 pm

Robertspark - I wonder to. So I do a lot of reading and asking questions. Teknic is the manufacturer of the servo's on my machine and they were kind enough to go in to a little more detail about jerk limit and acceleration profiles. Here's what they said:
Regarding S-curves and jerk. S-curves have the benefit of providing smooth motion but it does change the rate of acceleration throughout the entire acceleration period. The negative effects of s-curves can not only be slower overall move times but also changes in the move profile itself. This is fine for a rapid move, where you are not cutting, but is not desirable when trying to accurately cut a shape. The RAS jerk limiting algorithm only affects the “knees” of the motion profiles. The rate of acceleration is maintained.

Here is some copy about the RAS (Regressive AutoSpline) function in the ClearPath motors:

The RAS feature (Regressive AutoSpline) automatically fits a modified, high-order rational spline curve to the incoming digital command stream, before it is passed to the position/velocity compensator. The RAS actively morphs the velocity into a "double" jerk-limited profile (enforcing not only a limit in the rate of change of acceleration or "jerk," but also in the rate of change of the jerk). So you can get all the smoothness benefits of jerk-limited movement—reduced wear on your mechanics, lower acoustical noise, less jostling of the load, minimized ringing of the mechanism at the end of moves, etc. using a controller (indexer) that generates only trapezoidal (linear acceleration) type moves. Because the resultant moves are so smooth, the tracking error is decreased which typically results in reduced settling time as well. The motor will also run cooler because less torque is required.

The RAS setting does add time to the command, making the move time longer, if you do not adjust your rate of acceleration. However, because you are reducing the amount of jerk (and derivative of jerk) of the axis (making the motion much smoother), you can almost always increase the rate of acceleration to not only make up for the added RAS time but can usually finish the move in less time than you could have without the RAS.

A light, fast laser cutter requiring accurate cuts with high rates of accelerations might use a RAS setting in the 9ms-14ms range, a plastic and wood router might be in the 14ms-21ms range, and a plasma cutter might be in the 21ms-41ms range. Testing is the best way to find the appropriate level of RAS for the machine and application type.

I thought that was pretty good info as it relates at least a little to the subject at hand. It makes more sense to me now. I may try increasing my RAS setting just a little and see if I can then increase my acceleration rate.
1JUMPER10
 
Posts: 48
Joined: Tue Oct 04, 2016 1:54 am

Re: acceleration curves

Postby Robertspark » Wed Oct 11, 2017 8:00 pm

Thanks very much for that, I've learnt something else.

It sounds like RAS was sort of what I was proposing earlier to shape only the transitional bits of the acceleration profile to limit the amound of jerk by adding a small amount of delay for the first and last few steps of the acceleration profile, which would allow for a higher acceleration profile, because the amount of jerk at the ends was now reduced.
Rob

Einstein ― “If you can't explain it to a six year old, you don't understand it yourself”
UC400eth, UC300eth, UCCNC v1.2046, Neuron Lite.
UCCNC Macro Manual
Robertspark
 
Posts: 597
Joined: Sat Sep 03, 2016 4:27 pm
Location: Nr Liverpool, England

Re: acceleration curves

Postby Robertspark » Wed Oct 11, 2017 8:09 pm

Oh, I wouldn't use exact stop (unless you had / needed to) {sharper corners}

because it will wait for the machine to come to "an exact stop" before progressing the next line of gcode, so it will accelerate and decelerate at each arc or linear move.

you are probably better to set the acceleration higher in uccnc, and keep an eye on the following error of the servos (presume they have software for them to be setup like the leadshine {cheaper} ones have), Add in the RAS + increase the servo acceleration setting, untill the following error becomes less in the acceleration profile and then back off the uccnc acceleration until the following error is very small and you've probably got the setting right (ie. uccnc is pumping the steps out as quick as possible, the servo is correcting for either end of the trapezoidal acceleration profile, and adding compensation steps in the middle by increasing its acceleration to catch up with the uccnc steps.

those drives look nice, little out of my price range.... maybe one day when I'm all grown up haha and on the next diy build.
Rob

Einstein ― “If you can't explain it to a six year old, you don't understand it yourself”
UC400eth, UC300eth, UCCNC v1.2046, Neuron Lite.
UCCNC Macro Manual
Robertspark
 
Posts: 597
Joined: Sat Sep 03, 2016 4:27 pm
Location: Nr Liverpool, England

Re: acceleration curves

Postby ger21 » Thu Oct 12, 2017 11:17 am

I don't think I've ever actually tried exact stop, but I'm sure I've said more than once that it's really not a usable option for a router.

Gerry mentioned following error, is this not something which is ignored, given the servo drives are closed loop,


All servo drives allow some amount of following error before they will fault. How much you actually see depends on the servo tuning.

Generally, when you send steps to the motors, they move as they receive the steps. Apparently, the Clearpaths are slowing down, or speeding up, the motors response to the recieved steps, in order to smooth out the motion.

I think that depending on what type of work you are doing, this may or may not be beneficial. While smoothing out the motion can give better cut quality, and be easier on the machine, I think that in some cases it could have a negative impact on precision.

The bottom line, is that if the servo drive is "smoothing" the motion, it's not moving the motors when and where UCCNC is telling them to move to.
Gerry
UCCNC 2017 Screenset - http://www.thecncwoodworker.com/2017.html
ger21
 
Posts: 742
Joined: Sat Sep 03, 2016 2:17 am

Re: acceleration curves

Postby Battwell » Fri Oct 13, 2017 10:46 am

i helped a guy out recently that had fitted delta servos on his machine- couldnt get circles etc right.
his drives had a small s curve amount- factory set in the parameters- which was causing him grief. he set that to zero and now it runs fine

i run mitsubishi servos. they run perfectly in position mode (step/direction) from uccnc.
the only problem i had- which is now solved was trying to get a 3:1 geared 500 watt servo to stop a 2 tonne gantry in time from a 25m/minute rapid !
i had to add regenerative braking resistor to it as the internal resistor couldnt handle the power dissipation. so sometimes id get a slight overshoot on deceleration
you would never see this on a lighter machine. they settle immediately in normal use (i have them on most of my equipment)
Battwell
 
Posts: 162
Joined: Sun Sep 25, 2016 7:39 pm

Previous

Return to General discussion about the UCCNC software

Who is online

Users browsing this forum: No registered users and 2 guests