Koordinatensysteme und Versätze
Innerhalb eines NC-Programmes kann das Programmierkoordinatensystem durch NC-Befehle an die jeweiligen Anforderungen angepasst werden, indem es z.B. gedreht oder verschoben wird. Die hierzu verwendeten NC-Befehle lauten unter anderem #CS DEF/#CS ON oder #ACS DEF/#ACS ON. Einzelheiten hierzu können der Programmieranleitung Kapitel 'Koordinatenssysteme' entnommen werden.
Durch die wiederholte Anwendung dieser Befehle können Koordinatensysteme auch verkettet werden. Das resultierende Koordinatensystem wird dabei durch einen Stapel von unterlagerten Koordinatensystemen gebildet.
Durch weitere NC-Befehle (#CS ADD*) können diesem Koordinatensystem-Stapel weitere Koordinatensysteme hinzugefügt werden, ohne dass diese wirksam werden, also das resultierende Koordinatensystem beeinflussen. Durch den Befehl #CS SELECT* kann das zu verwendende Koordinatensystem festgelegt werden.
Innerhalb jedes Koordinatensystems können für jede im Kanal vorhandene Achse Versätze definiert werden, z.B. durch die Befehle G54 … G59 (Nullpunktverschiebung) oder G92 (Bezugspunktverschiebung).
Durch die bereitgestellten API-Funktionen können die folgenden Informationen ausgelesen werden:
Anzahl der definierten Koordinatensysteme
Index des aktiven Koordinatensystems im Koordinatensystem-Stack
Informationen über ein Koordinatensystems an einem bestimmten Index im Stack
Informationen über achsweisen Versätze innerhalb eines Koordinatensystems im Stack
*Dieser NC-Befehl ist nicht in allen Versionen verfügbar.
Weiterführende Informationen
- 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()