Hi,
To jog a robot without a gui and just using the kinematics, you could look at
this
project.
It will work by using halcmd to jog. Using a graphical interface would be easyer for debugging.
The workflow you suggested is correct. Looking at the ./runtest file's will give you the tested workflow.
The euler angles is the 3d rotation of the toolposition or last joint position of the machine or robot kinematic chain.
It is the same as jaw,pitch,roll but then defined as euler xyz.
Euler xyz is for me easyer to use then jaw,pitch,roll because in the graphics you can directly see by the colored axis origin on wich axis the
tool will rotate. Then related to lcnc, there are no euler xyz gode names. For the euler xyz we use the gcode a,b,c letters.
So a 3d gcode in hal-core will look like : G1 X0 Y0 Z0 A0 B0 C0 U100 F1400 S100 M300 P45 M301 P11
- g1 (lineair movment)
- xyz (toolcenterrpoint tcp).
- abc (euler xyz toolposittion in degrees).
- u (can be a gripper or exernal axis position).
- f (feedrate).
- s (spindlespeed).
- m (macro).
- p (marco value of type double, for example set output 300 to value 45).
The hal trajectory component can read gcode and perform a motion. It is connected to the hal-kinematic component. It's a basic example
how to perform motion. .
If you look at my current work, /opt/hal-core/src/hal/components/matrix, this is a all in one component. Currently in development stage.
It has benefits like using dynamic memory in c. Correct memory release for opencascade when closing drawings.
Fail safe double[4][4] rotation-translation matrixes connection between kinematics and graphics for each joint.
It has improved algo's, but still working on it every day. The graphics are just amazing. I hope the result of the trajectory planner will be
amazing to.
If you have any questions or problems, just ask.