Coordinate systems and offsets
The programming coordinate system in an NC program can be adapted to the given requirements by NC commands, e.g. by rotating or shifting the coordinate system. The NC commands used here include #CS DEF/#CS ON or #ACS DEF/#ACS ON. For details please see the Programming Manual, Section ‘Coordinate systems’.
Coordinate systems can also be concatenated by the repeated used of these commands. The resulting coordinate system is then formed by a stack of subordinate coordinate systems.
Other coordinate systems can be added to this coordinate system stack by other NC commands (#CS ADD*) without them having any effect, i.e. influencing the resulting coordinate system. The command #CS SELECT* defines the coordinate system to be used.
Within each coordinate system, offsets can be defined for each of the axes in the channel, e.g. by the commands G54 … G59 (zero offset) or G92 (reference point offset).
The following information is read out by the API functions provided:
Number of defined coordinate systems
Index of the active coordinate system in the coordinate system stack
Information about a coordinate system at a specific index in the stack
Information about axis-specific offsets within a coordinate system in the stack
*This NC command is not available in all versions.
Additional information
- kernelv_ch_get_cs_name()
- kernelv_ch_get_cs_rot_matrix()
- kernelv_ch_get_cs_shift_vector()
- kernelv_ch_get_cs_count()
- kernelv_ch_get_active_cs_index()
- kernelv_ch_axis_get_offsets()
- kernelv_ch_get_total_cs_rot_matrix()
- kernelv_ch_get_total_cs_offset
- kernelv_ch_get_total_cs_def()
- kernelv_ch_get_coord_sys_active()