- Posts: 4819
- Thank you received: 0
Trajectory Planner using Ruckig Lib
2 years 2 months ago #306608
by Aciera
Replied by Aciera on topic Trajectory Planner using Ruckig Lib
Looks _very_ good!
Is this all happening in user-space so far (including the velocity planning)? If so does this output a GCODE file?
Is this all happening in user-space so far (including the velocity planning)? If so does this output a GCODE file?
Please Log in to join the conversation.
2 years 2 months ago #306613
by Grotius
Replied by Grotius on topic Trajectory Planner using Ruckig Lib
This file has ~12500 lines of gcode.Used G64 P0.5 Q0.5
red=3d velocity profile
white=line
purple=clothoid fillet
cyan=spline fillet
It's now almost time to test the results on a realtime kernel.
Let's work on to that.
For a letter test:
Original input G64 P0 Q0.5
Input G64 P5 Q0.5
The spikes from the velocity profile are gone !
red=3d velocity profile
white=line
purple=clothoid fillet
cyan=spline fillet
Attachment not found
It's now almost time to test the results on a realtime kernel.
Let's work on to that.
For a letter test:
Original input G64 P0 Q0.5
Attachment not found
Input G64 P5 Q0.5
The spikes from the velocity profile are gone !
Attachment not found
Please Log in to join the conversation.
2 years 2 months ago #306614
by Grotius
Replied by Grotius on topic Trajectory Planner using Ruckig Lib
Hi Arciera,
Is this all happening in user-space so far (including the velocity planning)? If so does this output a GCODE file?
Yes, this is all done on a non realtime kernel at the moment. Including the velocity planning indeed.
Currently i have no logic to output a optimized gcode file, but it is certainly possible.
How relevant is this option at the moment?
We could also add a scurve path simulator to the user side.
Then the kernel motion code, can be centralized in a c++ class, then both the user side and kernel side can use
this code to run the program. This is just an idea.
Is this all happening in user-space so far (including the velocity planning)? If so does this output a GCODE file?
Yes, this is all done on a non realtime kernel at the moment. Including the velocity planning indeed.
Currently i have no logic to output a optimized gcode file, but it is certainly possible.
How relevant is this option at the moment?
We could also add a scurve path simulator to the user side.
Then the kernel motion code, can be centralized in a c++ class, then both the user side and kernel side can use
this code to run the program. This is just an idea.
Please Log in to join the conversation.
2 years 2 months ago #306624
by Aciera
Replied by Aciera on topic Trajectory Planner using Ruckig Lib
Not relevant, I was just wondering if I could run the output on a simulator.How relevant is this option at the moment?
Please Log in to join the conversation.
2 years 2 months ago #306640
by Grotius
Replied by Grotius on topic Trajectory Planner using Ruckig Lib
Hi Arciera,
I can write gcode file output tomorrow, but clothoids & splines must then be converted to a G1 linestrip.
Then the overall output is G1,G2 or G3.
Is this ok for you?
I can write gcode file output tomorrow, but clothoids & splines must then be converted to a G1 linestrip.
Then the overall output is G1,G2 or G3.
Is this ok for you?
Please Log in to join the conversation.
2 years 2 months ago #306643
by Aciera
Replied by Aciera on topic Trajectory Planner using Ruckig Lib
Don't worry about it, it's really not important.
Please Log in to join the conversation.
2 years 2 months ago #306645
by Grotius
Replied by Grotius on topic Trajectory Planner using Ruckig Lib
Hi Arciera,
Ok, I will not worry about it.
I tried a free gcode file, a griffins logo. File about 14000 lines.
www.cnccookbook.com/g-code-examples-file...for_Milling_Machines
In the file no G64 P.. Q.. was given. Raw output :
Then i added G64 P0.1 Q0.1
The output :
Then without the velocity display :
The purple are all clothoids. Cyan is spline, White is line.
File specs :
items G64 P.. Q.. before:14151 after:28292 diff:-14141
So the gcode file is increased by 14141 segments.
Maybe test some more files?
Ok, I will not worry about it.
I tried a free gcode file, a griffins logo. File about 14000 lines.
www.cnccookbook.com/g-code-examples-file...for_Milling_Machines
In the file no G64 P.. Q.. was given. Raw output :
Attachment not found
Then i added G64 P0.1 Q0.1
The output :
Attachment not found
Then without the velocity display :
Attachment not found
The purple are all clothoids. Cyan is spline, White is line.
File specs :
items G64 P.. Q.. before:14151 after:28292 diff:-14141
So the gcode file is increased by 14141 segments.
Maybe test some more files?
Please Log in to join the conversation.
2 years 2 months ago #306651
by Aciera
Replied by Aciera on topic Trajectory Planner using Ruckig Lib
Hm, as usual I'm concerned about unwanted path distortion:
I presume these splines were added by the algorithm, if so it seems like a lot of distortion for 'G64 P0.1 Q0.1'?
Attachment not found
I presume these splines were added by the algorithm, if so it seems like a lot of distortion for 'G64 P0.1 Q0.1'?
Please Log in to join the conversation.
2 years 2 months ago #306657
by Grotius
Replied by Grotius on topic Trajectory Planner using Ruckig Lib
Hi Arciera,
That is the result of using a 0.1 fillet.
Here is a 0.01 fillet for comparishment.
That is the result of using a 0.1 fillet.
Here is a 0.01 fillet for comparishment.
Attachment not found
Please Log in to join the conversation.
2 years 2 months ago #306662
by Aciera
Replied by Aciera on topic Trajectory Planner using Ruckig Lib
I understand that lowering the value will create smaller deviations. What I'm concerned about is the predictability of the maximum deviation a certain G64 Pn Qn command is going to produce as knowing this is crucial for CNC application.
I know we've had this discussion before but if 'G64 P0.1 Q0.1' means a maximum path deviation of 0.1 mm then those white GCode lines would have to be 0.1mm apart which seems a bit hard to believe (but of course I do not know for sure).
I know we've had this discussion before but if 'G64 P0.1 Q0.1' means a maximum path deviation of 0.1 mm then those white GCode lines would have to be 0.1mm apart which seems a bit hard to believe (but of course I do not know for sure).
Please Log in to join the conversation.
Time to create page: 0.388 seconds
