Trajectory Planner using Ruckig Lib

More
11 May 2024 07:53 #300373 by ihavenofish
wooooooooooo

*sends virtual pizza and ice cream*
The following user(s) said Thank You: Grotius

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

More
11 May 2024 09:34 #300378 by Grotius
Hi,

*sends virtual pizza and ice cream*
Nice !

I am now going to test the scurve trajectory planner on the production machine.
It starts up : using posix realtime.

Wish me luck, fingers crossed.
Will make a youtube video once again.
The following user(s) said Thank You: tommylight, Clive S, tivoi, rodw, DHeineck, Unlogic

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

More
11 May 2024 10:12 #300382 by tommylight

Wish me luck, fingers crossed.

Even on my feet, i have fingers crossed! :)

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

More
11 May 2024 14:54 #300391 by Grotius
Hi,

Thanks Tommy, it helped.

Just finished the test on the production machine.

In the beginning i had some problems, but after a few hours of coding and testing everything went more or less ok.
So in the end, this test is succesfull.

This test was using the tpmod_scurve_grotius.so component. This component used no look ahead and was
using low delta values for the gbrl algoritme.

The component used no back-end scurve runners. The stepgen was directly attached at the tpmod_scurve_grotius.so
output values.

A few things i learned :
- Don't press stop button when machine is moving. Better press pause button as stop can trigger a joint follow error.
- Home all axis before jogging machine, sometimes the dual x axis motors won't run together if not homed.
- The maximum values of this parport driven machine : maxjerk 7500, maxacc 1000, maxvel 10000.
- Change the jerk value when machine is not moving, if doing it while moving linuxcnc can freeze.

A few things made me happy :
- The bigger arc's in the program, the machine moved quite nice.
- The program was running quite stable, restart ok, pause ok. The linuxcnc program flow seems to work properly.

The video :

 
The following user(s) said Thank You: robh, tommylight, Clive S, tivoi, pommen, rodw, Aciera, DHeineck, spumco, hydroid7 and 5 other people also said thanks.

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

More
11 May 2024 21:30 #300402 by robh
loving the progress on this, keep up the hard work cant wait to see a version to try my self..
The following user(s) said Thank You: Grotius

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

More
14 May 2024 05:43 #300551 by hydroid7
This is a very nice result, congratulations!

Do you plan to release your code to fellow tinkerers?
The following user(s) said Thank You: Grotius, tiagounderground

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

More
14 May 2024 17:59 #300590 by Grotius
@Robh,

loving the progress on this, keep up the hard work cant wait to see a version to try my self..
It's really hard work to get this done. What kind of machine do you use yourself to try it on?

@Hydroid7
Do you plan to release your code to fellow tinkerers?
Yes, i always release my code. But currently i will wait until i think it's ready to release.
Still the coding is in progress.


Project status :
Currently coding the look ahead algo, this algo traverses forward and reverse over a "n" ammount
of gcode lines. It set's optimal vo, vm, ve for the gcode segments.
The following user(s) said Thank You: tommylight, Clive S, pommen, rodw, Alexandrion, nwallace

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

More
15 May 2024 18:53 #300691 by robh
@Grotius
i can fully understand this and the hours in debug and checking etc. it all does add up. and why my self and many others are hoping you can get to the end goal.
you need to open up a beer tab for us to tip into! :)

i my self have done many builds over the years on linuxcnc,
its all big iron stuff converted, with new AC servos etc etc.
machiens are 3+4 axis mills, 5 axis mill,
to lathes with single and twin turrets, from small 42mm spindle bore to 600mm swing over the bed.


what would be intresting is to see what the difference is on a tool path like trochoidal milling or surfacing , looks promasising in the 2D already.

many thanks for taking on such a task and getting so far along with it.
The following user(s) said Thank You: Grotius

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

More
15 May 2024 20:02 #300695 by Grotius
@Robh,

Will reply on your input in next post.

I had some problems today with coding. The scurve trajectory planner was sometimes missing the target position.
So this is now solved, but it taked a lot off time to investegate.
With solving that i lost a part look ahead code. So tomorrow i will take a new start.

Tonight i added the motion reverse. This was done in short time.
Then i thought, hey why not try :
-- jogging while in pause --

So i coded a jog in pause, for the x axis plus button, just to test it out.

The video jog in pause :


So i could do this for 9 axis. Who thinks this is a thing you should have or not have?
The following user(s) said Thank You: tommylight, Clive S, pommen, RDA, nwallace, Unlogic

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

More
15 May 2024 20:34 - 15 May 2024 20:35 #300696 by Grotius
@Robh,

i can fully understand this and the hours in debug and checking etc. it all does add up. and why my self and many others are hoping you can get to the end goal.
I have learned to supply yourself some kind off fallback for every c or c++ lib you write. For example
the grotius scurve engine is a quite complicated code. To test changes i have a test suite. Without this,
everything becomes way more difficult.

 

Off course i hope to reach the end goal for us all.

you need to open up a beer tab for us to tip into! :)
Yeahh.

i my self have done many builds over the years on linuxcnc,
its all big iron stuff converted, with new AC servos etc etc.
machiens are 3+4 axis mills, 5 axis mill,
to lathes with single and twin turrets, from small 42mm spindle bore to 600mm swing over the bed.

So very experienced !!

what would be intresting is to see what the difference is on a tool path like trochoidal milling or surfacing , looks promasising in the 2D already.
The advantage for trochoidal milling should be in the scurved velocity profile doesn't it?

Take a look at the cavaliercontours c++ lib on github. When the look ahead works, i will code a sample for this.
This lib can provide us with nice toolpath's. The procedure is as follows:

1. Input the ammount of "n" look ahead lines into the cavaliercontours lib.
2. Offset the open contour to one side with a offset value, given 0.01mm
3. Offset the the offsetted contour back onto the original path. The result is a contour with arc shaped corners.

many thanks for taking on such a task and getting so far along with it.
I had paused the project for a while. But i hope to finish it coming time.
Attachments:
Last edit: 15 May 2024 20:35 by Grotius.

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

Time to create page: 0.160 seconds
Powered by Kunena Forum