Lenguajes de programación de PLC: vaya más allá de la lógica de escalera
Probablemente haya oído hablar de Ladder Logic, el omnipresente lenguaje de programación de PLC preferido por muchos profesionales industriales. Pero, ¿cuánto sabe acerca de los otros cuatro lenguajes de programación de PLC comunes? La realidad es que la mayoría de las organizaciones industriales tienen PLC programados en diferentes idiomas. Al aprender más sobre todos estos lenguajes, podrá ampliar sus habilidades de programación de PLC y obtendrá una ventaja sobre los programadores que son menos flexibles.
Esta publicación de blog ofrece una descripción general de los cinco lenguajes de programación definidos en el estándar de la Comisión Electrotécnica Internacional (IEC), IEC 61131-3.
¿Cuáles son los 5 tipos de lenguajes de programación de PLC?
Los cinco lenguajes de programación de PLC definidos en el estándar IEC son:
- Lógica de escalera
- Diagrama de bloques de funciones
- Gráficos de funciones secuenciales
- Texto estructurado
- Lista de instrucciones
Cada uno de estos lenguajes cae en una de dos categorías: gráfico o textual. Los lenguajes gráficos están elaborados con elementos visuales, mientras que los lenguajes textuales usan cadenas de texto.
Para cada idioma, repasaremos su arquitectura básica, los beneficios de usarlo y algunos casos de uso que se adaptan mejor a él. Comencemos con el popular Ladder Logic.
Lógica de escalera
Ladder Logic, también conocido como Ladder Diagram, es un lenguaje de programación gráfico de PLC basado en los diagramas de circuito de la lógica de relés. Ladder Logic consta de dos barras paralelas conectadas por una serie de peldaños, que se asemejan a una escalera en apariencia (de ahí el nombre). Hay contactos y bobinas en estos peldaños, que simbolizan entradas (como un valor de sensor) y salidas (como un comando de marcha del motor) respectivamente.
La gran mayoría de la programación de sistemas de control en América del Norte utiliza Ladder Logic, y por una buena razón. Es flexible, versátil, fácil de solucionar y fácil de aprender. Sin embargo, una desventaja es que una vez que una escalera llega a una cierta cantidad de peldaños, puede volverse difícil de manejar y debe dividirse en varias escaleras para mantenerla.
Las máquinas de estado, el control PID y los sistemas con gran cantidad de álgebra booleana son algunos casos de uso que se adaptan bien a Ladder Logic.
Diagrama de bloques de funciones
El diagrama de bloques de funciones (FBD) es otro lenguaje de programación de PLC gráfico popular. Consiste en varios tipos de bloques que tienen entradas y salidas. Los dispositivos conectados al PLC se pueden vincular a una entrada y las variables se pueden enviar a una salida. Además, los bloques se conectan entre sí: la salida de un bloque puede alimentar la entrada de otro bloque. Estos bloques son los que definen las funciones de un sistema.
El lenguaje FBD es relativamente simple, aunque requiere algo de entrenamiento para usarlo. Es una excelente opción para PLC de seguridad, bucles PID y cuando necesita encapsular, reutilizar código con frecuencia, ocultar o conservar datos o filtrar entradas analógicas.
Gráficos de funciones secuenciales
Los gráficos de funciones secuenciales (SFC) son un lenguaje de programación de PLC gráfico basado en GRAFCET y se asemejan a los diagramas de flujo de algoritmos informáticos. SFC consta de pasos y transiciones. Los pasos son las acciones a realizar y las transiciones son las condiciones lógicas que deben cumplirse antes de pasar al siguiente paso. Debido a la naturaleza de esta arquitectura, SFC controla el flujo operativo de un programa.
Un beneficio importante de usar SFC es cómo puede simplificar un proceso complicado al dividirlo en partes más manejables. También puede ser más fácil de probar y solucionar problemas que algunos de los otros idiomas aquí. SFC es ideal para procesos complejos de múltiples estados, procesos vinculados, cuando hay múltiples procesos para ejecutarse en paralelo o secuencialmente y producción por lotes.
Si busca crear SFC fuera de los PLC y desea ejecutarlos en su software Ignition, el módulo SFC de Inductive Automation agiliza el SFC con características como monitoreo de gráficos, capacidad de edición en caliente y una herramienta de programación de arrastrar y soltar que le permite crear gráficos complejos.
Texto estructurado
El texto estructurado (ST) es un lenguaje de programación de PLC de alto nivel. Es un lenguaje textual, con una sintaxis comparable a C o C ++, por lo que aquellos que hayan estudiado este tipo de lenguajes de programación de computadoras lo tendrán más fácil. En ST, las declaraciones (como IF, por ejemplo) se utilizan para realizar funciones.
ST es un lenguaje conciso que se ejecuta rápidamente y se puede leer sin mucha dificultad. Solucionarlo, por otro lado, puede ser un proceso más complicado, ya que los estados de las variables no son fácilmente discernibles. Este lenguaje es mejor para hacer cosas como el análisis de códigos de barras, bucles, manipular datos, cerrar la brecha con el código de máquina, operaciones matemáticas complicadas o buscar datos.
Lista de instrucciones
La lista de instrucciones (IL) es un lenguaje de programación de PLC textual de bajo nivel. La lista de instrucciones quedó obsoleta en el estándar de IEC, lo que significa que es dudoso que los nuevos PLC se programen con ella. Sin embargo, dado que algunos PLC actuales aún pueden usar IL, es útil saber de qué se trata.
IL consiste en una serie simple de instrucciones y es similar al lenguaje ensamblador. "Saltar" o "almacenar" son ejemplos de algunos de los comandos comunes que usaría en la Lista de instrucciones. Debido a la desaprobación de IL, si está considerando usarlo para nuevos programas, debe optar por Texto estructurado en su lugar.
Algunas notas
Hemos resaltado algunos casos de uso comunes para lenguajes de programación de PLC arriba. Sin embargo, tenga en cuenta que estos casos de uso también se realizan en otros idiomas. Tome los bucles PID como ejemplo: aunque solo los destacamos en el Diagrama de bloques de funciones, se usan en los cinco idiomas.
Otra cosa a tener en cuenta es que algunos software de programación tienen restricciones de licencia que pueden limitar el acceso a los gráficos de funciones secuenciales, diagramas de bloques de funciones y/o texto estructurado.
Entonces, ¿cómo determina qué idioma es mejor para su proyecto? Al final del día, todos los lenguajes anteriores pueden lograr todo lo que un PLC es capaz de hacer. Debido a esto, la elección del idioma a utilizar a menudo depende de consideraciones prácticas para la implementación y el mantenimiento. Es importante tener en cuenta quién mantendrá el programa, las preferencias del cliente y el conjunto de habilidades de los programadores, ingenieros y personal de mantenimiento.
Ignition lo ayuda a hacer más con los PLC
La plataforma de aplicaciones industriales Ignition puede trabajar con cualquier tipo de PLC programado en cualquiera de los lenguajes de programación de PLC. También permite conexiones y comunicaciones entre diferentes marcas de PLC sin problemas. Esta libertad le permite salir de la caja de Ladder Logic y elegir los mejores lenguajes y hardware para su proyecto.
El uso de PLC con bases de datos SQL es otra forma de mejorar sus habilidades de programación de PLC. Para obtener más información sobre esto, consulte la publicación de blog informativa de dos partes: 12 formas poderosas de usar PLC con bases de datos SQL.
Publicado en español el 03 de Noviembre del 2022.
Originalmente publicado el 30 de Agosto del 2022.
Fuente original: https://inductiveautomation.com/blog/plc-programming-languages-go-beyond-ladder-logic
Últimas publicaciones del blog