Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

ABC angles in gcode for robot orientation

#1
Screenshot 2025-09-21 230420.png   
Angle of B axis
Screenshot 2025-09-21 230446.png   
Angle of C axis

Screenshot 2025-09-21 231228.png   
This is what the imported gcode get in Robodk. Angles for B axis is correct, but I am not able to get C axis to work correctly. Cad shows this angle as 31 degree, I can force this to aprox. 10degree and it will be correct in robodk, but I am unable to figure out where I go wrong. 
I know the robot crashes in the table as is. I will flip everything 90 degree before welding.


Attached Files
.rdk   curveerror.rdk (Size: 2.89 MB / Downloads: 7)
.nc   curveerror.nc (Size: 5.48 KB / Downloads: 9)
#2
What CAM software are you using? And what post processor? You should use a generic 5-axis machine if you export orientations as ABC angles. Alternatively, if you want to avoid confusion it is better if you use IJK vector or an APT post processor instead.

For your information, we also have post processors for many CAM software.
#3
(09-22-2025, 06:33 AM)Albert Wrote: What CAM software are you using? And what post processor? You should use a generic 5-axis machine if you export orientations as ABC angles. Alternatively, if you want to avoid confusion it is better if you use IJK vector or an APT post processor instead.

For your information, we also have post processors for many CAM software.
I am using Grasshopper (Rhino that is), and I write out the programs within that environment creating gcode from point to point. XYZ and mostly BC. I use A whenever I have to tilt and rotate the workpiece and weld radial welds
I took a timeout and flipped /rotated the workpiece around in grasshopper, and at a certain rotation I get the correct results. I learned something useful today!

IJK vectors does not translate into gcode nor apt post. But would love some more information about this topic and how to go about it.

I don't use the plugins for rhino/robodk as these do not transfer commands other than movement. And the file2robot plugin needs resetting to update all the time anyway and more important, I feel like I have more control if I do this load nc file manually.
#4
If you can customize program generation using Rhino/Grasshopper then you should not have issues to generate the IJK vector. The IJK vector is simply the Z axis of the tool (what should be the cutting axis). This is a unit vector. You can add the IJK parameters with the current Gcode. The IJK vector is the equivalent of the VZ values you can extract from your pose when using the RoboDK API:
https://robodk.com/doc/en/PythonAPI/robo...ath.Mat.VZ

Alternatively, you can use APT format which should be easier to implement and avoid confusions. You can find some example APT commands supported by RoboDK here:
https://robodk.com/forum/Thread-Program-...59#pid3959

In short, the movement commands are:
GOTO X Y Z i j k
  




Users browsing this thread:
1 Guest(s)