Welcome! Log In Create A New Profile

Advanced

Jerk!

Posted by WesBrooks 
Jerk!
August 24, 2017 04:39AM
I'd just like to confirm my understanding of Jerk!

I understand the concept of the axis can instantaneously jump from stationary to the jerk speed but how is it applied when the axis is currently moving, particularly when there is a change in direction?

Would the axis need to slow to the point where the change in speed is less than the jerk, make the jump then continue to accelerate in the new direction?

How about when there is no change in direction: For the sake of argument one vector command instructs a feed rate of 1000 in the x and a second vector drops this to 800. If the x jerk is more than or equal to 200 will it make the change in speed with no acceleration/deceleration?
Re: Jerk!
August 24, 2017 05:18AM
Try it out. Write some gcode such as

G28 ;home
G1 Z10 ;raise nozzle for safe movement
G1 X0 Y0 F2000 ; GO TO ORIGIN
G1 X0 Y100 F5000 ; MOVE FAST TO 1ST POSITION
G1 X100 Y100 F5000 ;POSITION 2
G1 X0 Y100 F5000 ;POSITION 3
G1 X0 Y0 F5000 ; BACK TO POSITION 1

By all means substitute 100 for a larger number if your machine is larger, longer moves demonstrate acceleration better.

Copy and paste lines 4-7 about 20-30 times then run it.
You'll see it move around the square over and over.

Now you can send M201 XA, YA (where A is your new acceleration value) and see what happens, using low acceleration will make the acceleration more obvious.
Try a few different settings
Now send M205 XB (where B is your new XY jerk value) and see what happens. M566 on RRF firmware.

Since most firmware's have look ahead planning, which reads the next few (6-10) moves and then decides whether they can flow into one another it will not stop at each corner of the square, I'd expect it to slow to the jerk speed and then change direction then accelerate. It would be interesting to see what happens with a Jerk value of zero, will it decelerate to a momentary dead stop then accelerate away on the next move? It should do.

Jerk is just a way of saving processing time for the small detailed moves, its really asking you how fast are you happy for your nozzle to be flung about on small moves depending on your printer's rigidity/motors etc...

Its also worth saying when you issue a move which has to be coordinated, i.e.
G1 X100 Y100 Z50 E0.45 so you are moving 4 axes at the same time, the axis with the lowest Jerk/Accel values determines the behaviour of the move, there's no point flinging the nozzle rapidly 4 cm in a direction whilst the extruder is still trying to accelerate to extrude sufficient filament.

To answer your last question yes it should change speed without decelerating, if this was a travel move it wouldn't have any consequence, but if you are also simultaneously extruding, given that extruder jerk/accel are usually way lower than X and Y, the lower extruder jerk/accel setting presuming its below 200 in your example, would force a degree of deceleration on the x axis move. Just as well or you'd get an unacceptable variation in extruded width during the transition.

Edited 2 time(s). Last edit at 08/24/2017 05:25AM by DjDemonD.


Simon Khoury

Co-founder of [www.precisionpiezo.co.uk] Accurate, repeatable, versatile Z-Probes
Published:Inventions
Re: Jerk!
August 25, 2017 04:24AM
Thanks for your comments. I've tried to reverse engineer the behaviour of laser based Additive Manufacturing systems before and your right, you can lean a lot about them by doing this but the results can be difficult to interpret if not careful. I've posted a similar message on the Duet3D forum and DC42 who is also on these forums has commented that a pending test release will have an improved simulator that will run at around 50 times real time speed which would make that work far more easier and accurate.

The limiting effect of the slowest axis is quite interesting to consider as the jerk, acceleration, and max speed all could be an issue. If there's been a bed compensation applied then the z-axis comes in to play too, meaning it is a four axis problem, each with three performance limits and current speed / position.
Re: Jerk!
August 25, 2017 05:49AM
Yes that's true and that's why I'd say a jerk value of 0 (and very low acceleration) for the z axis would slow the whole thing down, but the z axis tracking up and down 50 microns here and there as the head moves around, or even doing z hop moves on retract is not particularly slow even with very conservative jerk/accel. I try to leave at least a Jerk of 1 on my z axis and acceleration 50-200, this is partly to help with my sensors I make, accelerating z faster than 200mm/s/s can cause false triggering, and its not necessary during printing.

Also come to think of it whilst z hops are encoded into the gcode (assuming you use slicer-generated retraction rather than firmware retraction) and so need to be coordinated, bed level compensation is happening at another level, and works differently. Exactly how would require someone like DC who has a deep knowledge of how the firmware works to chime in.

Edited 1 time(s). Last edit at 08/25/2017 05:52AM by DjDemonD.


Simon Khoury

Co-founder of [www.precisionpiezo.co.uk] Accurate, repeatable, versatile Z-Probes
Published:Inventions
Re: Jerk!
August 25, 2017 05:54AM
I'm going to have to get a big brew on hand when I translate all this understanding from being based on the nice simple Cartesian systems to the core x-y! Glad I'm not trying to understand the delta in this much information... ;-)
Re: Jerk!
August 25, 2017 06:00AM
Leave the firmware to figure all that out, yes the maths behind corexy are a bit more complex but so long as belt A and belt B are equally tensioned your moves in X or Y will be square not parallelogram. Everything else works the same as cartesian.

Same with delta really, its the mechanical build thats tricky, the firmware does all the pythagorean maths for you. You want to set z accel on a delta, you just send a command the same as on an I3.


Simon Khoury

Co-founder of [www.precisionpiezo.co.uk] Accurate, repeatable, versatile Z-Probes
Published:Inventions
Re: Jerk!
August 25, 2017 06:04AM
My seams between perim & infil, I set what i thought to be a healthy overlap cant remember what, but seems look ok, and maybe I could go a little thinner, but it struck me that the jerk/accel must also be visible at that seam, the change in sheen maybe, would be interesting to see some tests at different settings.
Re: Jerk!
August 25, 2017 07:31AM
Ian did some testing with video mainly focusing on pressure advance but he noticed some interesting things:

[somei3deas.wordpress.com]


Simon Khoury

Co-founder of [www.precisionpiezo.co.uk] Accurate, repeatable, versatile Z-Probes
Published:Inventions
Sorry, only registered users may post in this forum.

Click here to login