LinuxCNC S-Curve Accelerations

More
9 months 3 weeks ago #341161 by grandixximo
The scurve is present now in linuxcnc master, download from GitHub and build, or use the latest .deb files

With many thanks to Grandixximo and 杨阳 we now have an experimental
S-curve / finite-jerk trajectory planner for testing.

For those that build from source just look for the new v2.10.0-pre1 tag.

Others can download debs from github for the next 90 days:
x86 / bookworm  github.com/LinuxCNC/linuxcnc/actions/run...artifacts/5056097663
x86 / trixie github.com/LinuxCNC/linuxcnc/actions/run...artifacts/5056161668
ARM64 / bookworm github.com/LinuxCNC/linuxcnc/actions/run...artifacts/5056139840
ARM64 / trixie github.com/LinuxCNC/linuxcnc/actions/run...artifacts/5056124080

Make no mistake, this is experimental, there are no guarantees that
these won't break your machines. The first user already hit the hard
stops when homing (too-low max jerk setting)
With the jerk setting it is probably best to start high and reduce, as
infinite jerk is closer to current behavior.

If you run these you are volunteering to be a guinea-pig.
magazine.punch.co.uk/image/I0000NOWOOdkXT_k

---
test signature

Please Log in to join the conversation.

More
9 months 3 weeks ago #341177 by PCW
Replied by PCW on topic LinuxCNC S-Curve Accelerations
Just a quick test and I got large following errors:

 

Attachment not found



ini setting are:

 

Attachment not found

Please Log in to join the conversation.

More
9 months 3 weeks ago #341181 by andypugh
Is a jerk of 2000 reasonable? What units is your config?

Please Log in to join the conversation.

More
9 months 3 weeks ago #341182 by grandixximo
Thank you Peter for looking at this.
I see a few issues with your ini.txt

16 float IN 1e+99 ini.traj_default_acceleration
16 float IN 0 ini.traj_default_jerk
16 float IN 1 ini.traj_default_velocity
16 float IN 1e+99 ini.traj_max_acceleration
16 float IN 0 ini.traj_max_jerk
16 float IN 1e+99 ini.traj_max_velocity


these settings seems a bit waky, if you want to have jerk control you need
ini.traj_default_jerk
and
ini.traj_max_jerk

to be more than 0
and the 1e+99 max acc and velocity, is this something people actually run with? is it something is supported without f-error on TP0 aka old TP?

---
test signature

Please Log in to join the conversation.

More
9 months 3 weeks ago #341183 by PCW
Replied by PCW on topic LinuxCNC S-Curve Accelerations
These are in inches.

So my understanding would be:

So 20 IPS max Velocity
200 Max accel (~1/2g) so 1/10 second to maxvel with no jerk limit (old TP)
2000 Max jerk  so 1/10 second to full accel

Which (jerk=2000) actually sounds a bit low

Please Log in to join the conversation.

More
9 months 3 weeks ago #341184 by PCW
Replied by PCW on topic LinuxCNC S-Curve Accelerations
Those ini values do not cause an issue with the old TP (0)

I'll check your suggestions in a bit...
 

Please Log in to join the conversation.

More
9 months 3 weeks ago #341185 by ihavenofish

These are in inches.

So my understanding would be:

So 20 IPS max Velocity
200 Max accel (~1/2g) so 1/10 second to maxvel with no jerk limit (old TP)
2000 Max jerk  so 1/10 second to full accel

Which (jerk=2000) actually sounds a bit low

I was doing some math to create paths (not real time) a little while back and on my machine with 0.5G (5000mm/s/s) a jerk of like 50000mm/s/s/s was the starting point of usefulness, and 500000 would probably be where I end up. So your 10:1 seems a logical place to start.

BUT, it shouldn't matter. Jerk should never create a following error, it should be mathematically precise, even if its comically low for real life machines.
 

Please Log in to join the conversation.

More
9 months 3 weeks ago #341187 by PCW
Replied by PCW on topic LinuxCNC S-Curve Accelerations
OK so the bad ini values seem to be LinuxCNC defaults (they were not specified in my ini file)
With more reasonable values set the errors are of much smaller magnitude bu there are still accel violations: 



Attachment not found





Note that the acceleration (green) which has a constraint of 200 IPS/S sometimes obeys this constraint
(right side of screen) but sometimes ignores it (spikes toward center of screen reaching more than 1500 IPS/S)


ini file settings: 



Attachment not found

 

 

Please Log in to join the conversation.

More
9 months 3 weeks ago #341188 by grandixximo
Could you try again with arc blend enable to true?

---
test signature

Please Log in to join the conversation.

More
9 months 3 weeks ago #341189 by mika
Replied by mika on topic LinuxCNC S-Curve Accelerations
Which G-code did you use for the test? I'd like to try it myself.

Please Log in to join the conversation.

Time to create page: 0.206 seconds
Powered by Kunena Forum