Condición
La ejecución de una acción puede hacerse dependiente de una condición (expresión lógica).
Las condiciones se comprueban en el ciclo IPO.
Estruct. de una condición: Comparación <operador booleano> comparación
Comparación:
Expresión:
Operadores booleanos:
Operador de comparación: p. ej., ==
Operando:
Variable de sistema:
La funcionalidad disponible se resume en las tablas 10-10 y 10-11.
Nota
La parte de la izquierda de una comparación se vuelve a leer en cada ciclo IPO.
La parte de la derecha se elabora una vez durante el preprocesamiento de la sentencia.
Si la condición situada a la derecha también se debe leer cíclicamente en el ciclo IPO, se
debe insertar un signo $ adicional antes de la variable de sistema.
Ejemplo:
Comparación entre el valor cíclico actual del eje X y la expresión calculada durante el
preprocesamiento de la sentencia:
N10 ... $AA_IW[X]>R5+100
Comparación entre el valor cíclico actual del eje X y el valor cíclico actual del eje Y:
N10 ... $AA_IW[X]>$$AA_IW[Y]
Operaciones lógicas dentro de las comparaciones:
N10 ... ($AA_IW[X]>100) OR ($AA_IW[X]<COS ($$AA_IW[Y]))
Para más detalles, véase el apartado "Operaciones aritméticas en acciones síncronas".
Acción DO
Cuando se cumple la condición se ejecutan las acciones programadas (máx. 16) después
de DO.
Las variables de sistema se pueden también leer y escribir como parte de la acción.
Ejemplo:
Escribir el valor de la MARKER1 en la salida digital 11:
... DO $A_OUT[11]=$AC_MARKER[1]
Cambiar la velocidad del eje X en función de la posición actual del eje Y:
... DO $AA_OVR[X]=$R10*$AA_IM[Y]–$R11
Módulo de posicionamiento multieje FM 357-2 para servoaccionamientos y motores paso a paso
A5E00176151-01
Expresión <operador comparación> expresión
Operando <operador> operando ...
p. ej., NOT
Variable de sistema o valor
p. ej., $AA_IW[X] (valor actual del eje X)
Programación CN
10-131