• Skip to primary navigation
  • Skip to main content

ProgramaciónSiemens

Cursos online de automatización industrial con PLC Siemens

  • Cursos
  • Mi cuenta
    • Mi cuenta
    • Blog
    • Foros
    • Curso HMI con Python y Qt-Designer
    • Curso de AWL
    • Curso de iniciación a la Industria 4.0
    • Curso Express de TIA Portal
    • Curso de WinCC Flexible 2008
    • Crear HMI con OPC y VB.NET
    • Crear HMI con Snap7 y VB.NET
    • Curso ViSnap7
    • Curso de TIA Portal para CPU 1200
    • Curso de Step 7 V5.x
    • Curso de comunicaciones IE y Profinet
  • Contacto & Faq

Tiempo de reacción de un PLC Siemens

Tiempo de reacción de un PLC Siemens

por Iñigo Gútiez · 8 Comments

Una de las cosas que hay que tener claro al aprender a programar los PLC de Siemens,  es el tiempo de reacción.

Es un concepto básico para poder realizar bien los programas y entender el comportamiento de los autómatas de Siemens tanto en TIA Portal como en Step 7 tradicional.

Pero para ahondar en lo que implica el tiempo de reacción, necesitamos definir los conceptos.

Contenido

  • 1 Tiempos de ciclo y tiempos de reacción
    • 1.1 Tiempo de ciclo de un PLC Siemens
    • 1.2 Tiempo de reacción de un PLC Siemens
    • 1.3 ¿Tiene importancia el tiempo de reacción?
  • 2 Mejorar el tiempo de reacción
    • 2.1 Interrupciones de hardware.
  • 3 ¿Que te ha parecido?

Tiempos de ciclo y tiempos de reacción

Como primera aproximación, definiremos el tiempo de ciclo como el tiempo que tarda el PLC en ejecutar 1 vez todas las operaciones del programa de usuario (tu programa) además de las tareas adicionales que realiza el propio PLC (tareas de comunicaciones, actualización de I/O, etc)

Por su parte, el tiempo de reacción será el tiempo transcurrido desde una señal cambia de estado, hasta que las salidas se actualizan debido a este cambio en las entradas físicas.

Estas dos definiciones, nos ayudarán a entender cómo funcionan en general los PLC de Siemens (independientemente de la serie) y así, no tener problemas que puedas tener por no entender estos dos conceptos.

Tiempo de ciclo de un PLC Siemens

Para entender bien cómo se produce el tiempo de reacción de los autómatas de Siemens, previamente tenemos que tener claro cómo se produce el ciclo de Siemens y qué está incluido en este tiempo de ciclo.

He extraído del Curso de TIA Portal parte de una de las infografías en las que se explica el funcionamiento de los PLC de Siemens de una forma más exhaustiva:

Tiempo de ciclo

Nos vamos a fijar, que al inicio del ciclo (OB1), se realiza un volcado de la imagen de salidas de proceso sobre las  salidas físicas. Es decir, AW –>PAW.

Además, tomaremos las entradas físicas y actualizaremos la imagen de entradas de proceso. Es decir, las PEW–>EW

Nada nuevo bajo el sol (aunque en Bilbao lo veamos poco).

Posteriormente se ejecuta el programa de usuario y finalmente las actividades del SO.

Veamos como influye esta forma en la que se ejecuta el programa, para determinar el tiempo de reacción.

Tiempo de reacción de un PLC Siemens

Veamos ahora otra infografía del curso de TIA Portal:

Tiempo de reacción

Imaginemos un programa tan sencillo como:

U E0.0 (un final de carrera, por ejemplo)
= A0.0

Una señal física (un final de carrera), se activará en un momento determinado cualquiera, en principio a mitad del ciclo del OB1.

Nuestro programa, al finalizar el OB1, actualizará la salida física, según nuestro programa.

Independientemente de si el final de carrera se activó antes o después de ejecutarse la línea del programa arriba expuesto, la salida se actualizará con un cero ya que la entrada aún está sin actualizar.

En el siguiente ciclo, ahora sí, la entrada estará a 1 debido a que la imagen de entradas de proceso, habrá tomado cuenta del cambio en el final de carrera, y por tanto, actualizará a 1 la salida A0.o al finalizar la ejecución de este segundo ciclo del programa principal.

Por tanto, el tiempo de reacción estará comprendido entre 1 tiempo de ciclo (si justo cambia antes de actualizarse las entradas) y 2 tiempos de ciclo si el final de carrera cambia justo después de actualizarse la imagen de entradas de proceso.

Además, deberás añadir a este tiempo, el tiempo de conmutación de la entrada física en la tarjeta, y el tiempo de conmutación de la salida física.

Pero lo importante es el concepto que hemos explicado.

¿Tiene importancia el tiempo de reacción?

En general, no.

Pero si necesitas mucha precisión, puede ser un problema.

Imaginemos que un transportador se mueve a 100m/min (6Km/h).

Imaginemos a su vez, que los tiempos de ciclo, son entorno a 20ms.

Esto implica, que el espacio recorrido desde que el final de carrera del ejemplo será:

Mejor tiempo de reacción: 0’020s x 1min/60 s x 100 m/min x 1000 mm/m = 33,33 mm

Peor tiempo de reacción: 2 x 0’020s x 1min/60 s x 100 m/min x 1000 mm/m = 66,66 mm

Como ves, dependiendo de la situación, puede ser irrelevante, o extremadamente importante.

Mejorar el tiempo de reacción

Debido a estos pequeños problemas, tienes herramientas para paliar los efectos:

  • Interrupciones de hardware
  • Interrupciones cíclicas

Interrupciones de hardware.

Si la detección de un detector es determinante, puedes optar a detectar cuando la señal se activa o desactiva y ejecutar el código que desees en ese momento.

Puedes echar un vistazo a este ejemplo donde hablamos en su día de las interrupciones de hardware.

Interrupciones ciclicas.

También puedes ejecutar una parte del programa a tiempo fijo, y que sea muy rápido (usando el OB35 por ejemplo) y leer las periferia directamente y escribir directamente en periferia.

Por ejemplo, podrías ejecutar el OB35 cada 5ms, de tal forma que el espacio recorrido en el ejemplo anterior, sería de solo 8,33 mm frente a los 33 del mejor de los casos ejecutándose en el OB1.

¿Que te ha parecido?

¿Tenías claro estos conceptos?

Espero que ahora, un poco más claro, al menos.

Evidentemente, en general no tiene mucha importancia, pero saberlo, ¡deberías!

Puede echar un vistazo a este PDF de Siemens donde encontrarás más información

 

 

Iñigo Gútiez
Iñigo Gútiez

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.

Filed Under: blog

Reader Interactions

    Deja un comentario Cancelar

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

    8 Comentarios

  1. Jose Antonio says

    27 marzo, 2018 at 22:44

    Estupendo y claro como siempre!

    Hacía tiempo que no miraba los videos pero en este último el de las interrupcione hardware se entiende a la perfección. Lo explicas de una manera amena y clara que dudo que nadie no lo pueda poner en práctica.

    Buena semana santa!

    Responder
  2. Alberto says

    28 marzo, 2018 at 3:19

    La verdad no me parecía tan relevante el tema hasta que leí el ejemplo y se me vinieron a la mente Miles de situaciónes donde el tiempo de respuesta es muy importante! Oí alguna vez hablar del red lion (nose si está bien escrito) pero ese término que dije , tiene algo que ver con el tiempo de respuesta???

    Responder
  3. Inma says

    29 marzo, 2018 at 10:25

    Perfecto y claro, como nos tienes acostumbrados.
    Tus aportaciones son siempre excelentes.
    Paso el enlace de tu página a mi nuevo grupo de alumnos de mi curso de Certificación Profesional.
    Buena Semana Santa.

    Responder
    • Iñigo Gútiez says

      10 abril, 2018 at 7:12

      Muchas gracias Inma!

      Responder
  4. Robin Marin says

    3 abril, 2018 at 17:37

    Exelente gracias

    Responder
    • Iñigo Gútiez says

      10 abril, 2018 at 7:11

      A ti Robin!

      Responder
  5. jonas arjona torres says

    9 abril, 2018 at 23:20

    gracias y muy buena esplicacion es clara y sencilla. saludos

    Responder
    • Iñigo Gútiez says

      10 abril, 2018 at 7:11

      Gracias Jonas!

      Responder
  • Aviso Legal y Política de Privacidad
  • Condiciones de Venta
  • Política de cookies
  • Contacto & Faq
  • Blog

Copyright © 2023 · Programación Siemens · Todos los derechos reservados

· ¿Quién soy? · Misión, Visión y valores