# Ein / Aus-Handshake mit PLC

Während aktivem Satzvorlauf wird die PLC über jede Technologie-M-Funktion informiert (z.B. Brenner Ein/Aus). Im Gegensatz zum Normalbetrieb werden diese jedoch nicht ausgeführt, sondern in der PLC durch einen speziellen Baustein behandelt. Dazu wird die PLC über jeden Wechsel des Status der Betriebsart Satzvorlauf (Ein/Aus) informiert. Die PLC quittiert dann diesen Wechsel an die NC. Die NC wartet auf die Quittierung der PLC, in gleicher Weise wie bei synchronisierten M-Funktionen.

Ist während des NC-Resets der Satzvorlauf aktiv, so wird der Satzvorlauf ohne Handshake abgewählt (die PLC sollte dann über die Reset-spezifische Control Unit über den Reset informiert werden).

Satzvorlauf an/aus an PLC
Beschreibung | Bei jeder Ein/Aus-Anforderung des Satzvorlaufes veranlasst die CNC einen Handshake mit der PLC: Solange das Anforderungselement den Wert TRUE besitzt, wird die PLC über jeden Wechsel des Satzvorlaufbetriebs informiert.
Zugriff | Wird ein NC-Programm mit aktiviertem Satzvorlaufmodus gestartet, setzt die CNC das Signal der CNC auf TRUE und wartet auf das Signal der PLC, das zeigt, dass die PLC bereit für den Satzvorlauf ist. Wenn die PLC die notwendigen Aktionen zur Vorbereitung des Satzvorlaufs durchgeführt hat, meldet sie dies an die CNC, indem sie das Signal der PLC auf TRUE setzt.

Nach diesem Signal kann das NC-Programm im Satzvorlaufmodus abgearbeitet werden. Dies wird entweder durch "Bewegung fortsetzen"- oder "Programmstart"-Kommandos ausgelöst.

Wird bei der Abarbeitung des NC-Programms die Wiederaufsetzposition erreicht, signalisiert dies die CNC, indem sie nun das Signal der CNC auf FALSE setzt.

Dies detektiert die PLC, trifft ihre Vorbereitungen für den Betrieb mit realen Achsbewegungen und setzt dann das Signal der PLC auf FALSE.

ST-Pfad, ST-Element für CNC build >= 2800
ST-Pfad | gpCh[channel_idx]^.bahn_lc_control.block_search mit channel_idx = [0, HLI_SYS_CH_MAXIDX]
Datentyp | LC_CONTROL_BOOL_UNIT
Signal der CNC |
ST-Element | .command_r
Datentyp | BOOL
Wertebereich | [TRUE = NC-Programm wurde im Satzvorlaufmodus gestartet, FALSE = Satzvorlauf AUS]
Signal der PLC |
ST element | .state_r
Datentyp | BOOL
Wertebereich | [TRUE = PLC hat die Benachrichtigung über das Einschalten des Satzvorlaufs quittiert, FALSE = PLC hat die Benachrichtigung über das Ausschalten des Satzvorlaufs quittiert]
Anforderung |
ST-Element | .enable_w
Datentyp | BOOL
Wertebereich | [TRUE = PLC will über die Aktivierung des Satzvorlaufes informiert werden, FALSE]

ST-Pfad, ST-Element für CNC build < 2800
ST-Pfad | pMC[channel_idx]^.addr^.LCControlBahn_Data.LCControlBoolUnit_BlockSearch mit channel_idx = [1, HLI_SYS_CHNMAX]
Datentyp | LCControlBoolUnit
Signal der CNC |
ST-Element | .X_Command
Signal der PLC |
ST element | .X_State
Anforderung |
ST-Element | .X_Enable

Abb.: Interaktion BOOLEAN-LC-Control Unit und PLC

## Hinweis

Im Falle eines CNC-Reset werden Signal der CNC und Signal der PLC durch die CNC zurückgesetzt.