scurve trajectory planner

More
19 Mar 2025 14:11 #324297 by Aciera
Replied by Aciera on topic scurve trajectory planner

So when lines have no intersection, there is no extra torsion turn.

that's quite interesting.
The following user(s) said Thank You: Grotius

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 19:45 #324308 by ruediger123
Replied by ruediger123 on topic scurve trajectory planner
Hello,

I've been following this topic for a long time, great work.

I looked at the jerk with the Hal oscilloscope, there seemed to be outliers.
see image. 
Attachments:
The following user(s) said Thank You: akb1212, Grotius

Please Log in or Create an account to join the conversation.

  • Grotius
  • Grotius's Avatar Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
19 Mar 2025 21:28 #324323 by Grotius
Replied by Grotius on topic scurve trajectory planner
@Arciera,

Yes. Interesting.

The clothoid takes as input the xy angle and the z angle. Derived from the 3d vector.
I personally should not design the abstract like this, where it uses xy & z angles.
I should prefer to design the abstract in pure 3d vector format. As this is cleaner in my view.
Now we need to transform xy & z angles into 3d vectors etc. I think this could be avoided.

If we should store extra info about a line vector self axis rotation 0 up to 2*M_PI. We could do a clothoid fit with multiple
torsion turns for example. The clothoid fit would then look like a helix fit.

There is still some kind of overfitting in some cases, where the clothoid fit is valid, but takes extra space into the workpiece.
This is inherent to the 4-clothoid-spline fit, as a 2-clothoid-spline can not fit like that, as it has less contrains.

I was considering to create a 2 clothoid spline library based on this 3d clothoid library. This is like downgrading the current
4-clothoid-spline. But will decide that later this year.

Hi Ruediger,

We are aware of spikes. Haha.

Even the most elegant curve seems to show acceleration spikes in halscope.
I dont have the J0 jerk pin here in my axis config.

One way to rule out spikes is to introduce back-end runners. They will filter out all spikes.

Good find btw. And nice you did some research on the codebase.
The following user(s) said Thank You: Aciera

Please Log in or Create an account to join the conversation.

More
20 Mar 2025 17:29 - 20 Mar 2025 17:54 #324365 by ruediger123
Replied by ruediger123 on topic scurve trajectory planner
Hello,
attached is the hal file with the jerk pins. 

Gruß Rüdiger
 

File Attachment:

File Name: sim_lib.tcl.txt
File Size:16 KB


 
Attachments:
Last edit: 20 Mar 2025 17:54 by ruediger123.
The following user(s) said Thank You: akb1212, Grotius

Please Log in or Create an account to join the conversation.

More
20 Mar 2025 20:53 #324376 by ruediger123
Replied by ruediger123 on topic scurve trajectory planner
Hello,
I tested further and apparently the acceleration is not limited. In the ini it says 'MAX_ACCELERATION = 5000' in the halscope at approx. -10000.

Gruß Rüdiger

 
Attachments:
The following user(s) said Thank You: Grotius

Please Log in or Create an account to join the conversation.

  • Grotius
  • Grotius's Avatar Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
20 Mar 2025 21:03 - 21 Mar 2025 20:20 #324377 by Grotius
Replied by Grotius on topic scurve trajectory planner
@ Rüdiger,

Max acc scurve = 2 x acc.
at scurve inflection point the
Scurve acc = 2 x acc.
see  scurve lib abstract.
 
Last edit: 21 Mar 2025 20:20 by Grotius.

Please Log in or Create an account to join the conversation.

  • Grotius
  • Grotius's Avatar Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
21 Mar 2025 20:27 #324451 by Grotius
Replied by Grotius on topic scurve trajectory planner
Hi all,

Today is activated the abc, uvw axis for the scurve planner.
It should work with look ahead.

git updated
The following user(s) said Thank You: akb1212, HalaszAttila, pommen, Aciera, Darium, hmnijp, nwallace

Please Log in or Create an account to join the conversation.

  • Grotius
  • Grotius's Avatar Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
22 Mar 2025 12:40 #324544 by Grotius
Replied by Grotius on topic scurve trajectory planner
Hi all,

Today was a lucky day. We managed to fix acceleration spikes at the 4-clothoid-spline junctions.
The problem was solved by using a new gauss legendre and minor function updates to the clothoid3d lib.
The iteration for gaussian legendre is now set for a 16 for loop.
We can expand to 32 or 64 loops to even increase accuracy.

Now i changed the back color off halscope to plot a white background as this is nicer for websites and documents
to show pictures.

Below are some halscope results, where motion is passing trough 3d-clothoids. The acceleration spikes on
joint 0 & 1 are gone. This tells us the interpolation off the clothoid is now absolute. And without any numerical errors.
So now the clothoid interpolates just as a line or arc.

This was really a bad situation. Wich is now solved.

 
 
 

Git is updated.
Attachments:
The following user(s) said Thank You: robh, akb1212, tommylight, HalaszAttila, tivoi, rodw, roland, Aciera, RDA, tiagounderground and 4 other people also said thanks.

Please Log in or Create an account to join the conversation.

  • ihavenofish
  • Away
  • Platinum Member
  • Platinum Member
More
22 Mar 2025 22:25 #324592 by ihavenofish
Replied by ihavenofish on topic scurve trajectory planner
/me feeds grotius and co more cookies and pizza

nice work
The following user(s) said Thank You: rodw

Please Log in or Create an account to join the conversation.

  • Grotius
  • Grotius's Avatar Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
23 Mar 2025 20:11 #324689 by Grotius
Replied by Grotius on topic scurve trajectory planner
@IHaveNoFish,

Thanks!

Today i started investegating something new.  experimental code

The question is, can we use a clothoid curve for motion, just like the scurve is a curve used for motion?
The idea came up a while ago. Scurve motion uses derivates, the clothoid also uses derivates.

Somehow i used the clothoid curve for the velocity profile.
The theta start of the clothoid curve is a vector, this can be transformed to acceleration start and visa versa.

1. The x axis of the clothoid is then time.
2.  The y axis of the clothoid is then velocity.

During the curve's velocity profile, we printed the acceleration values along the curve. What i didn't know is,
the acceleration profile is not a straight line as like the trapezium or scurve motion profile.

Here is a plot of acceleration stage, mention the acceleration line. It's curved. This involves less Jerk?
 
Attachments:
The following user(s) said Thank You: tommylight, rodw

Please Log in or Create an account to join the conversation.

Time to create page: 0.215 seconds
Powered by Kunena Forum