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

Advertising
background image

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.

Advertising
Este manual se refiere a los siguientes productos: