Hay veces que una señal digital de un final de carrera, fotocélula o cualquier otro tipo de sensor debe realizar interrupciones de hardware en TIA Portal.
¿Por qué?
Porque necesitamos que cuando esta señal se produzca, necesitamos que rápidamente se ejecute una parte del código de nuestra máquina para realizar una parada rápida a la par que controlada o porque se tiene que desencadenar cualquier tipo de secuencia.
Eso dependerá de las necesidades y del proyecto.
Contenido
Qué son las interrupciones de hardware
Una interrupción de hardware no es nada más que la iterrupción del programa principal (OB1) demandada por una parte del hardware.
Se deja lo que se esté haciendo (en función de la prioridad con otras interrupciones que estén en curso), y se ejecuta este pedazo de software.
¿Cómo se indica qué parte de software hay que ejecutar?
Mediante los OB de interrupciones de hardware.
En este OB podrás colocar el programa que quieres que se ejecute, bien con el flanco positivo de la detección de la señal, o bien con el flanco descendente.
Ambas interrupciones de hardware en TIA Portal podremos usarlas para la misma señal. Es decir, podrás ejecutar un OB con el flanco ascendente y con la misma señal, el OB correspodiente con el flanco negativo.
Ni que decir tiene que puedes mezclar la ejecución de dichas interrupciones con diferentes señales.
¿Cómo se configuran las interrupciones de hardware en TIA Portal?
De alguna forma tienes que enlazar la señal física con el OB que quieres que se ejecute ¿verdad?
Pues esto se realiza en la propia configuración de hardware.
Lo veremos en el ejemplo a continuación.
Ejemplo de interrupciones de hardware en TIA Portal
Hace unas semanas se planteó en el foro de infoplc.net la siguiente cuestión: se quiere saber cual es el tiempo máximo que una señal que cambia entre 0 y 1 en intervalos de 20 segundos.
Para ello, lo que haremos será:
- Calcular el tiempo transcurrido entre el flanco positivo y negativo. Es decir, calculamos el tiempo que la señal está a 1.
- Decidimos si este tiempo es un nuevo máximo o no dentro de los 20 segundos.
- Guardamos el máximo del ciclo de 20 segundos, y comenzamos de nuevo.
Por tanto, en este ejemplo, sólo vamos a usar dos tipos de OB:
- OB para realizar las interrupciones de hardware en TIA Portal
- OB para realizar las interrupciones ciclicas a 20 segundos.
El vídeo de interrupciones de hardware en TIA Portal
Como es más fácil enseñar en un vídeo las interrupciones de hardware en TIA Portal que explicarlo en un texto, te dejo con el siguiente vídeo donde te explico la resolución del problema planteado:
¿Qué te ha parecido?
¿Sabías cómo se usaban las interrupciones de hardware en TIA Portal? ¿Le ves utilidad?
Como otras veces, el ejemplo lo subiré al anexo del bloque 2 del curso de TIA Portal.
¡Espero tus comentarios!
Recuerda que puedes apuntarte en Guorker.com donde por una cuota mensual, tendrás tarifa plana en todos los cursos disponibles en la plataforma.
Enseño a programar PLC de Siemens a través de mis cursos.
Más información sobre mi aquí
Puedes seguirme en cualquiera de las siguientes redes sociales.
7 Comentarios
Excelente video, bastante útil.
Gracias. Ojalá puedas subir algún vídeo acerca de la configuración del 1200 safety por favor.
Saludos
Muy buena la explicación!,
Qué gracia me ha hecho lo de «hacer el cabra». Porque lo que comentas al final del video sobre la pega del reloj, no se soluciona poniendo una linea más de programa haciendo move a 0 del reloj?
No sé vaya es nada más un comentario
Hola,
Lo he dejado así porque no se mas detalles. Y no, no se soluciona poniendo a cero los relojes ya que la diferencia seguiría existiendo. E iría a peor ya que restarías el valor del flanco negativo un cero
Para solucionar el problema habría que hacerlo con una booleana que se ponga a cero y con el flanco positivo se ponga a 1 y luego se use de control de cuando se puede hacer el cálculo de máximo o mínimo.
Pero como no se mas detalles, y para ele ejemplo da igual, no lo he complicado más.
Saludos
Muy interesante video Iñigo,
Quisiera saber si los PLC de las series S7-300 y S7-400 permiten las interrupciones de hardware, además de las interrupciones por fallos.
Muchas gracias por tus valiosas explicaciones.
Sí, tienen también a través del OB40 si no recuerdo mal.
Saludos
Un ejemplo muy clarificador de como se utilizan este tipo de OB.
Muchas gracias.
Muy bueno y claro.
Saludos