CNC-Scheduling
Der Echtzeit-Teil der CNC-Steuerung läuft im GEO-Task. In jedem CNC-Takt führt der GEO-Task unter anderem folgende Aufgaben aus:
Bezeichner | Aufgabe |
Input | Auslesen von Achs-Istwerten/Status/… vom Feldbus |
Output | Ausgabe neuer Achs-Sollwerte/Status/… auf den Feldbus |
IPO | Interpolation, Berechnung neuer Achs-Sollwerte, kanalspezifisch |
CHAN | Anzeige, kanalspezifisch |
Mit dem CNC-Scheduling kann die Reihenfolge festgelegt werden, in der diese Aufgaben erfolgen sollen. Die Festlegung der geeigneten Reihenfolge ist abhängig von vorhandener Hardware (Antriebe, Feldbus usw.).
Es stehen folgende Reihenfolgen der Aufgaben zur Verfügung:
- STANDARD
- COMPLETE
- SWITCHED
STANDARD
Insbesondere für konventionelle +-10V Antriebe ist es wichtig, Sollwerte in einem zeitlich möglichst konstanten Takt auszugeben. Um Schwankungen zu vermeiden, werden in STANDARD direkt zu Taktbeginn die Sollwerte ausgegeben, die im vorherigen Takt berechnet wurden. Danach werden Istwerte eingelesen, Kompensationen gerechnet und von IPO neue Sollwerte für den nächsten Takt berechnet.
Diese Reihenfolge führt zu einer Verzögerung zwischen Interpolation und Ausgabe der Sollwerte.
COMPLETE
Falls der Achsparameter P-AXIS-00276 „field_bus_allows_optimized_schedule” für alle Achsen gesetzt ist, dann werden zuerst Istwerte/Kompensationen abgehandelt und erst danach die neuen Sollwerte ausgegeben. Das verhindert die Verzögerung zwischen Interpolation und Ausgabe.
Ist der Parameter P-AXIS-00276 nicht für alle Achsen gesetzt, so entspricht das Scheduling dem Fall STANDARD.
SWITCHED
Für digitale Antriebe kann die Reihenfolge weiter optimiert werden, um jegliche Verzögerung zu vermeiden. Im Modus SWITCHED wird
- Interpoliert
- Istwerte eingelesen
- Kompensationen gerechnet und Sollwerte ausgegeben
Konfiguration
Unter TwinCAT wird das Scheduling im „Kontext“-Reiter des „CNC“-Knotens eingestellt:
Im Realtime-Linux oder der Windows-Simulation wird dafür der Parameter P-RTCF-00018 benutzt.