32 ejecución condicional de bloque, Bifurcación de programa "if..then..else..endif – HEIDENHAIN SW 548328-05 DIN Programming Manual del usuario
Página 412

412
Programación DIN
4.32 Ejecución condicional de bloque
4.32 Ejecución condicional de bloque
Bifurcación de programa "IF..THEN..ELSE..ENDIF"
La "bifurcación condicional" está formada por los elementos:
IF (Si), seguido de la condición. En la "condición", a la izquierda y a la
derecha del "operador de comparación" aparecen variables o
expresiones matemáticas.
THEN (entonces), si se cumple la condición, se ejecuta la bifurcación
THEN
ELSE (en otro caso). si no se cumple la condición, se ejecuta la
bifurcación ELSE
ENDIF finaliza la "bifurcación condicionada del programa".
Consultar Bitset: Como condción, también se puede utilizar la
función BITSET. La función da como resultado "1" si el bit solicitado
está contenido en el valor numérico. La función da como resultado "0"
si el bit solicitado no está contenido en el valor numérico.
Sintaxis: BITSET (x,y)
x: n° Bit (0..15)
y: valor numérico (0..65535)
En la tabla a la derecha se muestra l contexto entre el n° de Bit y el
valor numérico. Para x, y también se pueden utilizar variables.
Programación
Seleccionar "Avanzadas > Palabra DINplus...". El Control numérico
abre la lista de opciones "Insertar palabra DIN PLUS".
Seleccionar "IF"
Introducir "condición"
Inserción de frases NC de la bifurcación THEN.
Si es preciso: insertar bloques NC de la bifurcación ELSE.
Operadores de comparación
<
menor
<=
menor o igual
<>
Distinto de
>
mayor
>=
mayor o igual
==
igual
Enlazar condiciones mediante funciones lógicas:
AND
Función lógica Y
OR
Función lógica O
bit
corresponde al
valor numérico
bit
corresponde al
valor numérico
0
1
8
256
1
2
9
512
2
4
10
1024
3
8
11
2048
4
16
12
4096
5
32
13
8192
6
64
14
16384
7
128
15
32768
Ejemplo: „IF..THEN..ELSE..ENDIF“
N.. IF (#l1==1) AND (#g250>50)
N.. THEN
N..
G0 X100 Z100
N.. ELSE
N..
G0 X0 Z0
N.. ENDIF
. . .
N.. IF 1==BITSET(0,#l1)
N.. THEN
N.. PRINT(„Bit 0: OK“)
. . .
Los bloques NC con IF, THEN, ELSE, ENDIF no deben
contener ninguna otra orden.
Puede enlazarse un máximo de dos condiciones.