obligatoryjne. W układach sterowania HAAS zamieszczanie operatorów logicznych w wyrażeniach warunkowych nie jest konieczne. Np.
rF [^1 NE 0 0] GOT05; można napisać w sposób następujący TF [iii] GOT05;
Instrukcja ta spowoduje skok do bloku 5 jeżeli iii jest różna od zera lub jest wartością niezdefiniowaną.#0 W każdym innym przypadku wykonany zostanie następny blok. W przypadku przenoszenia do innych układów sterowania niz HAAS zaleca się stosowanie operatorów warunkowych
Wyrażenia warunkowe można również wprowadzać przy pomocy formuły M99 Pnnnn, pod warunkiem, ze dostępne są makra. Np.:
GO X0 Y0 [£l EQ #2] M99 P5,
Warunek dotyczy części instrukcji z komendą \199. Narzędzie przesuwa się do punktu X0 Y0 bez względu na wartość wyrażenia warunkowego (TRUE lub FALSE). Tylko wykonanie skoku zalezy od wartości tego wyrażenia. Zaleca się stosowanie wersji IF GOTO, kiedy wymagana jest przenośność do innych układów sterowania.
WYKONANIE WARUNKOWE (rF THEN - jeśli to)
Wykonanie instrukcji sterowania można również dokonać za pomocą konstrukcji IF THEN Składnia tej konstrukcji jest następująca.
IF [<wyrazenie warunkcwe>] THEN <instrukcja>.
Tego rodzaju konstrukcje są używane w warunkowych instrukcjach przypisania, takich jak np
[F [£590 GT 100] THEN #590-0 0;
Zmienna £590 jest ustawiana jako zero kiedy wartość £590 przewyższa 100.0. Jeśli wyrażenie warunkowe ma wartość FALSE (0.0) reszta bloku EF jest ignorowana. Oznacza to, ze instrukcje sterowania również mogą być warunkowe np :
TF [#! NE £0] THENG1 X£24 Y£26 F£9;
Ta instrukcja powoduje ruchy liniowe jeśli tylko zmiennej £1 zostanie przypisana wartość
Można również spróbować napisać tego rodzaju instrukcję:
Oznacza ona, ze jeśli zmienna £i (adres A) jest większa lub równa 180. zmiennej £101 przypisuje się zero i wraca z podprogramu
Poniżej pokazany jest przykład instrukcji IF, gdzie skok ma miejsce bez względu na wartość jaka została przypisana zmiennej (ale jakakolwiek wartość musi być przypisana.) W innym przypadku proces będzie kontynuowany i zostanie wygenerowany alarm Należy pamiętać, że kiedy alarm jest generowany wykonanie programu zostaje zatrzymane.
NI [F [£90 NE £0] GOT03 N2 £3000 =11
(TEST WARTOŚCI F);
180