confusion about 9 AXIS display
I am testing with sim/axis/axis_9axis.ini
When I manually jog X,Y,Z,A,B the cone moves as expected.
Jogging C shows no movement no matter the position.
U,V and W always move parallel to X, Y and Z no matter the values of A, B and C
I understood the U,V,W coordinates to be a translated and rotated system.
Am I missing something?
GEOMETRY = XYZABCUVW - Controls the preview and backplot of rotary motion. This item consists of a sequence of axis letters, optionally preceded by a "-" sign. This sequence specifies the order in which the effect of each axis is applied, with a "-" inverting the sense of the rotation. The proper GEOMETRY string depends on the machine configuration and the kinematics used to control it. The example string GEOMETRY=XYZBCUVW is for a 5-axis machine where kinematics causes UVW to move in the coordinate system of the tool and XYZ to move in the coordinate system of the material. The order of the letters is important, because it expresses the order in which the different transformations are applied. For example rotating around C then B is different than rotating around B then C. Geometry has no effect without a rotary axis. Foam-cutting machines (FOAM = 1) should specify "XY;UV" or leave the value blank even though this value is presently ignored in foam-cutter mode. A future version may define what ";" means, but if it does "XY;UV" will mean the same as the current foam default.
GEOMETRY = XYZCBAUVW
And see if that fixes the c-rotation for you.
I'm sorry the rest I wrote here before was a bunch of nonsense as I could not remember it working in version 2.8 but it actually did as I just verified on my machine in the shop.
Something clearly changed since version 2.8 as now the U,V,W moves are not rotated anymore.
docs for master:
Note I cannot get rotated UVW moves to work on my master installation dating from march but I cannot test the current source or version 2.9 at the moment. If you are seeing this issue using 2.9 or a current master build then open an issue on the github site:
- Controls the preview and backplot of motion. This item consists of a sequence of axis letters and control characters, optionally preceded with a "-" sign:GEOMETRY = XYZABCUVW
- The letters X, Y, Z specify translation along the named coordinate.
- The letters A, B, C specify rotation about the corresponding axes X, Y, Z.
- The letters U, V, W specify translation along the related axes X, Y, Z.
- Each letter specified must occur into have an effect.[TRAJ]COORDINATES
- A "-" character preceding any letter inverts the direction of the operation.
- The translation and rotation operations are evaluated right-to-left. So usingspecifies a C rotation followed by a B rotation followed by Z, Y, X translations. The ordering of consecutive translation letters is immaterial.GEOMETRY=XYZBC
- The proper GEOMETRY string depends on the machine configuration and the kinematics used to control it. The order of the letters is important. For example, rotating around C then B is different than rotating around B then C.
- Rotations are by default applied with respect to the machine origin. Example:first translates the control point to X, Y, Z and then performs a C rotation about the Z axis centered at the machine origin.GEOMETRY=CXYZ
- UVW translation example:causes UVW to move in the coordinate system of the tool and XYZ to move in the coordinate system of the material.GEOMETRY=XYZUVW
- Foam-cutting machines () should specify "XY;UV" or leave the value blank even though this value is presently ignored in foam-cutter mode. A future version may define what ";" means, but if it does "XY;UV" will mean the same as the current foam default.FOAM = 1
- Experimental: If the exclamation mark () character is included in the GEOMETRY string, display points for A, B, C rotations respect the X, Y, Z offsets set by G5x, G92 codes. Example: Using!for a machine withGEOMETRY = !CXZ. This provision applies for liveplots only — G-code previews should be done with zero G5x, G92 offsets. This can be facilitated by setting offsets in programs only when task is running as indicated by #<_task> == 1. If nonzero offsets exist at startup due to persistence, offsets should be zeroed and preview reloaded.[TRAJ]COORDINATES=XZC
OK, after reading the previous detailed explanation I see that the ! character in the GEOMETRY causes UVW to include rotations ABC. I was unaware of the ! operator. So I think my question is answered. Thanks