Beispiele
Zwei Beispiele für den Aufbau eines anwenderspezifischen SERUPRO-Ende ASUPs.
Beispiel 1: Löschen von Hilfsfunktionen und Erzeugen der Hilfsfunktionsausgabe mit
AUXFUSYNC(...)
Programmcode
N10 DEF STRING[400] ASSEMBLED=""
N20 DEF STRING[31] FILENAME="/_N_CST_DIR/_N_AUXFU_SPF"
N30 DEF INT GROUPINDEX[10]
N40 DEF INT NUM
N60 DEF INT ERROR
N90
N140 AUXFUDEL("M",2,3,5)
N150
N170 AUXFUDELG(6)
N180
N190 IF ISFILE(FILENAME)
N210 DELETE(ERROR,FILENAME)
N220 IF (ERROR<>0)
N230 SETAL(61000+ERROR)
N240 ENDIF
N250 ENDIF
; VORSICHT!
; Werden bei einem mehrkanaligen Satzsuchlauf Hilfsfunktionen mit AUXFUDEL/AUXFUDELG
; aus der globalen Liste der Hilfsfunktionen gelöscht, muss vor der Schleife zum
; Erzeugen des Unterprogramms FILENAME mit AUXFUSYNC eine Synchronisation der Kanäle
; erfolgen. Durch die Synchronisation wird sicher gestellt, dass alle Löschaufträge
; in allen Kanälen bearbeitet wurden und eine konsistente Liste vorliegt.
; Beispiel: WAITM(99,1,2,3)
N270 LOOP
N300 AUXFUSYNC(NUM,GROUPINDEX,ASSEMBLED)
N310
N320 IF (NUM==-1)
N340 GOTOF LABEL1
N350 ENDIF
N380 WRITE(ERROR,FILENAME,ASSEMBLED)
N390 IF (ERROR<>0)
N400 SETAL(61000+ERROR)
N410 ENDIF
N430 ENDLOOP
Grundfunktionen
Funktionshandbuch, 03/2013, 6FC5397-0BP40-3AA1
H2: Hilfsfunktionsausgaben an PLC
Kommentar
; M2=3 (5. Hilfsfunktionsgruppe) löschen
;
die aufgesammelte Hilfsfunktion der
;
6. Gruppe löschen.
; Datei FILENAME löschen
; Fehlerauswertung
; Teileprogrammsatz erzeugen lassen
;
Alle Hilfsfunktionen des Kanals
;
sind abgearbeitet.
; Teileprogrammsatz in Datei FILENAME schreiben.
; Fehlerauswertung
7.13 Verhalten bei Satzsuchlauf
429