P5: Pendeln
13.5 Beispiele
Programmcode
;
; dann
;
WHENEVER $AA_DTEPW[X]==0 DO $AC_MARKER[0]=1 $AC_MARKER[1]=1
;
; Immer, wenn
; dann
;
;
WHENEVER $AC_MARKER[0]==1 DO $AA_OVR[X]=0
;
; Immer wenn
; dann
;
;
;
;
;
WHENEVER $AC_MARKER[1]==1 DO $AA_OVR[X]=0 $AA_OVR[Z]=100
;
; Wenn
;
; dann
;
;
;
WHEN $AA_IW[Z]==$SA_OSCILL_REVERSE_POS1[Z] DO $AC_MARKER[2]=0
;
;----------------------------------
N750 OSCILL[Z]=(X) POSP[X]=(5,1,1)
; Ordne der Pendelachse Z die Achse X als Zustellachse zu,
; diese soll bis Endposition 5 zustellen
; in Teilschritten von 1 und die Summe aller Teillängen
; soll genau die Endposition ergeben.
;
N780 WAITP(Z)
;
N790 X0 Z0
N799 M30
Erläuterungen
Die Startposition stimmt mit der Umkehrposition 1 überein. Mit den Synchronaktionen
WHEN .... (siehe oben) wird eine Zustellung bei Erreichen der Startposition verhindert.
770
Kommentar
ist,
setze den Merker mit dem Index 0 auf 1 und
setze den Merker mit dem Index 1 auf 1
der Merker mit Index 0 gleich 1 ist,
setze den axialen Override der Zustellachse
auf 0, damit wird eine zu frühe erneute
Zustellung verhindert!
der Merker mit Index 1 gleich 1 ist,
setze den axialen Override der Zustellachse
auf 0, (damit wird eine zu frühe erneute
Zustellung verhindert!) und setze den
axialen Override der Pendelachse auf 100%
(damit wird die vorhergehende
Synchronaktion aufgehoben!)
die aktuelle Position der Pendelachse
gleich der Umkehrposition 1 ist,
setze den Merker mit Index 2 zurück,
schalte 1. Synchronaktion frei (keine
Zustellung bei Erreichen der Startposition
== Umkehrposition 1)
; Z - Achse wieder freigeben
; Programmende
Funktionshandbuch, 08/2018, 6FC5397-1BP40-6AA2
Erweiterungsfunktionen