Interrupciones |
Top |
Descripción
Porciones de programa que pueden ejecutarse inmediatamente ante un evento, sin alterar el curso del programa principal. Estas porciones corresponden a pestañas, que pueden ser en lista de instrucciones (IL) o en Ladder (LD).
El procedimiento consiste en escribir el programa y luego asignarlo a la interrupción deseada. Las instrucciones dedicadas a interrupciones son: DISI, ENI, RESI, LDI y STI.
Programa principal
Porciones de programa / Pestañas / Subrutinas asignadas a interrupciones
Variables
La asignación comienza con un clic derecho sobre la pestaña (2) a asignar a una interrupción para cambiar la función.
Se agrupan por tipo, y la mas compleja es la del encoder, como se ve en la imagen. Excepto el eje Z cada interrupción por comparación requiere:
Forma de comparación (cuando la lectura del encoder es mayor o igual, menor o igual).
Una subrutina con el código de lo que se debe hacer cuando se cumpla la condición de comparación.
Para quitar una interrupción simplemente se usa el botón correspondiente de la derecha.
Las interrupciones pueden globalmente desactivarse (DISI) o activarse (ENI), pero no se pueden crear/asignar desde el mismo programa de PLC.
Algunas necesitan reactivarse después de ejecutarse (RESI).
Acceso inmediato a entradas y salidas con LDI y STI respectivamente.
Reglas de uso
Cada subrutina debe ser lo mas corta posible.
Procure evitar el uso de temporizadores (porque podría resultar demasiado complejo).
Hay instrucciones dedicadas a las interrupciones: DISI, ENI, RESI, LDI y STI.
Inicializar aquellas variables relacionadas con interrupciones que lo requieran.
Ejecutar RESI para iniciar estado de las interrupciones.
Ejecutar ENI para habilitar interrupciones.
Para volver a habilitar el/las interrupciones ejecutar RESI.
Cuando una interrupción asociada al encoder es ejecutada, esta no puede repetirse hasta que sea desbloqueada. Use la instrucción RESI en el lugar apropiado del programa para evitar falsos disparos, pues la posición del encoder debe ser asegurada antes de comenzar.
Además de la comparación también se tiene en cuenta el sentido de giro. Entonces la interrupción se disparará en mayor o igual solo si está avanzando, y en menor o igual si está retrocediendo. Pero si el giro es errático (oscilante o con revotes) entonces puede acontecer una falsa condición de disparo.
En los PLCs
Interrupciones en CP121, CP122, CP124:
Dos entradas (E4 y E5).
Dos comparaciones y eje Z del encoder
Interrupciones en CP123:
Dos entradas (E3 y E4).
Dos comparaciones y eje Z del encoder
Interrupciones en CP220:
Cuatro entradas (0 a la 3)
Cuatro comparaciones y eje Z del encoder
Las interrupciones por entrada digital son las mas simples. Se disparan por flanco ascendente, es decir cada vez que la entrada es activada.
Cuando una interrupción asociada al encoder es ejecutada, esta no puede repetirse hasta que sea desbloqueada. Use la instrucción RESI en el lugar apropiado del programa para evitar falsos disparos, pues la posición del encoder debe ser asegurada antes de comenzar.
Además de la comparación también se tiene en cuenta el sentido de giro. Entonces la interrupción se disparará en mayor o igual solo si está avanzando, y en menor o igual si está retrocediendo. Pero si el giro es errático (oscilante o con revotes) entonces puede acontecer una falsa condición de disparo.