Kombination $IF-Bedingungen mit und ohne Häufigkeit
![]() | $IF-Bedingungen mit und ohne Häufigkeitsangabe können ineinander geschachtelt werden. Dabei ist aber zu beachten, dass Anweisungen nur ausgeführt werden, wenn sie auch erreicht werden. |
Beispielsweise führt ein einmaliges Aktivieren eines ALWAYS-Blocks nicht dazu, dass seine Anweisungen in allen folgenden CNC-Takten ausgeführt werden. Sie können durch eine übergeordnete $IF-Bedingung verhindert werden, falls diese ein negatives Ergebnis hat.
Wird im folgenden NC-Programm V.E.CONDITION wahr und anschließend V.E.VALUE > 100, wird der ALWAYS-Block durchlaufen. Dies gilt allerdings nur solange V.E.CONDITION den Wert 1 hat.
Programmierbeispiel
Geschachtelte $IF-Bedingungen
; Echtzeit-Zyklus definieren
#RT CYCLE [SCOPE = PROG]
; externe Bedingung
$IF V.E.CONDITION == 1
; ALWAYS-Block
$IF ALWAYS V.E.VALUE > 100
; ALWAYS-Anweisungen
; ...
$ENDIF
$ENDIF
#RT CYCLE END
; ...
; Hauptprogramm beenden
M30