Beschreibung
Bedienung
Die Bedienung während des Syntaxcheck erfolgt entsprechend zur realen Programmbearbeitung über die Betriebsartenschnittstelle. Es können ausgewertet werden:
- Kommandos START, STOP, FORTSETZEN, RESET
- Anzeigestati ERROR, HOLD
Anzeige
In der realen Programmbearbeitung wird die Dateiposition (Dateiname und Dateioffset, mc_active_file_offset_r und mc_active_file_name_r) synchron zur realen Achsbewegung angezeigt. Diese hat keinen zeitlichen Bezug mehr zur Programmdecodierung.
Bei aktivem Syntaxcheck wird die Dateiposition automatisch synchron zur Decodierung angezeigt.
Eine Bedienung muss für die Anzeige der Datei somit keine Unterscheidung berücksichtigen.
In der folgenden Tabelle sind die verschiedenen Fehlerszenarien und die mögliche Fehlerreaktion im Syntaxcheckbetrieb dargestellt:
Fehlerart | Fehlerkategorie | Fehlerreaktion |
Verhalten bei Ressourcenfehler | z.B. Stacküberlauf | Verwerfen der NC-Zeile |
Verhalten bei Syntaxfehler | Fehler innerhalb $- und #-Befehlen | Verwerfen der NC-Zeile |
Unerwartetes Zeichen/ Term | Nutzen von Infos der aktuellen NC-Zeile | |
Unerwartete/ falsche Zeichen/ Terme | Nutzen von Infos der aktuellen NC-Zeile | |
Verhalten bei Semantikfehler | Linksseitiger Fehler in einer | Neupositionieren hinter Zuweisung |
| Anwahl von gleichzeitig nicht | Weiterdecodieren ohne Neupositionieren |
Über-/ Unterschreiten eines | Weiterdecodieren ohne Neupositionieren | |
Programmierter Wert nicht | Weiterdecodieren ohne Neupositionieren | |
Unvollständige Information | Weiterdecodieren ohne Neupositionieren |
Programmierbeispiel
NC-Programm mit Syntaxfehlern
Im Beispiel sind verschiedene Syntaxfehler enthalten, bei denen weiterdecodiert werden kann. Das Programm kann im Syntaxcheck abgearbeitet werden, wobei die einzelnen Fehler gemeldet werden.
;Test syntax check of decoder)
%check_syntax
;-> overflow error
N40 G01 X10 F111111111111111
(-> syntax error
N50 #COMMAND UNKNOWN [...]
(-> syntax error
N60 V.E.not_present = 1
(-> syntax error
N70 #CALL AX [X2, 11, 0]
(-> semantic error
N80 G00 G01 X100 F1000
N130 M30
Einzelschrittbetrieb /Decodierung anhalten
- Bei entsprechender Konfiguration (P-CHAN-00028) wirkt während des
Syntaxchecks der Einzelschrittbetrieb auf Decodierebene. - Nach jeder NC-Zeile wird angehalten, was durch den Betriebsartenzustand HOLD angezeigt wird.
- Durch Kommandieren der START-Transition an die aktive Betriebsart wird um eine NC-Zeile weiterdecodiert. Somit kann die Decodierung der NC-Befehle (Parameterzuweisungen, Verzweigungen, Schleifen, etc.) einzeln ausgeführt werden, wodurch der Programmablauf während der Decodierung einsehbar ist.
- Entsprechend dem Einzelschritt wirkt im Syntaxcheck auch das STOP / RESUME-Kommando auf Decodierebene.
- Durch Kommandierung der STOP-Transition an die aktive Betriebsart wird die Decodierung unterbrochen.
- Über RESUME kann die Decodierung wieder fortgesetzt werden.
Automatikbetrieb
- Bei entsprechender Konfiguration (P-CHAN-00028) wirkt während des Syntaxchecks der Automatikbetrieb.
- Das NC-Programm wird ohne Anhalten durchlaufen.
- Detektierte Fehler werden angezeigt.
Syntaxcheck ohne Antriebe (MACHINE_LOCK)
- Der Syntaxcheck muss immer in Kombination mit MACHINE_LOCK angewählt werden. Hierbei gelten folgende Eigenschaften:
- Das NC-Programm wird normal decodiert.
- Um eine schnelle Ausführung des Syntaxchecks zu gewährleisten, werden Achsen bzw. Antriebe nicht bewegt ("Dry run"). Die Interpolation beschränkt sich auf die Ausgabe der Zielpunkte der Bewegungssätze.
- Technoinformationen, Spindelbeauftragungen oder Verweilzeiten werden nicht ausgeführt.
- Bestimmte Echtzeiteinflüsse wie z.B. Feedhold, Override oder achsspezifische Vorschubfreigaben werden nicht berücksichtigt.
- Ist MACHINE_LOCK nicht gesetzt, erfolgt die Ausgabe der Meldung P-ERR-21309. MACHINE_LOCK wird implizit gesetzt und der Syntaxcheck gestartet.