Codesys ®: IL, SFC, LD, FBD o ST, ¿Cuál elijo?

Como ya comentamos en el último post, hay 5 lenguajes de programación diferentes de Codesys ® para el programador, que son IL, SFC, LD, CFC y ST. ¿Cuál elegir? Cada uno tienes sus ventajas e inconvenientes y tratamos de desgranarlo en este artículo:

Contenidos

Instruction List

Es un lenguaje de programación que resultará cómodo a aquellos que vengan de programar microcontroladores en ensamblador. Abreviado lo encontraremos como IL, de Instruction List. Seguramente es el lenguaje apropiado si buscamos funciones que se ejecuten lo más rápido posible. Sin embargo, IL tiene la desventaja de ser poco habitual en la automatización, lo que implica que sea difícil de mantener y compartir.

 

Function Block Diagram

Este lenguaje de programación se asemeja al lenguaje ladder, y es que visualmente consiste en un conjunto de bloques conectados que se pueden leer de izquierda a derecha. Abreviado lo encontraremos como FBD, de Function Block Diagram. Es un lenguaje ideal para programas simples para leer entradas de sensores pero no lo es tanto para programas complejos.

codesys
IL y CFC en Codesys ®

Diagrama Ladder

Es un lenguaje de programación muy habitual en automatización de PLC’s. Abreviado lo encontraremos como LD, de Diagrama Ladder. Visualmente, lo vemos como un diagrama de contactos eléctricos, ya que justamente sus orígenes se relacionan con la lógica de contactos previa al mundo de los PLC’s, muy habitual y comprensible para el personal de aquellas epocas. Hoy en día más del 95% de las aplicaciones del mundo son Ladder, lo que lo convierte en el lenguaje más universal y por lo tanto mantenible de todos (incluso para personal sin experiencia en programación, pero con conocimientos eléctricos).

codesys
Ladder en Codesys ®

Sequential Function Chart

Es un lenguaje de programación muy habitual en automatización y tiene su origen en los diagramas Grafcet.
Abreviado lo encontraremos como SFC , de Sequential Function Chart. Es ideal para hacer secuencias, pero poco apropiado para programas con cálculos.

CoDeSys
SFC y ST en Codesys ®

 Texto estructurado

La principal ventaja es que seguramente es el lenguaje más apropiado para realizar algoritmos complejos que se deben hacer en automatización, combinando cálculos trigonométricos con secuencias, condiciones ,etc. Sin embargo, puede que no sea muy fácil de mantener, sobretodo para personal poco habituado con este tipo de programación. Por todo esto, la tendencia con texto estructurado es hacer funciones complejas específicas que se puedan encapsular en una sola función y usarla como un sólo bloque en Ladder. En Codesys ®, abreviado lo encontraremos como ST, de Structured Text.

En cuestiones de universalidad, el lenguaje Ladder es sin duda el mejor. Sin embargo, por cuestiones de velocidad de procesamiento ST o IL son mejores. SFC es el lenguaje para secuencias.

Conclusión

La elección del lenguaje de programación depende de varios factores.En un primer lugar, nuestro background y experiencia nos pueden hacer decantar por uno u otro. En segundo lugar, si el cliente final va a hacer el mantenimiento en la instalación, debemos considerar sus conocimientos para que pueda entender el programa.

Por cierto, no os perdáis la nota que hemos publicado esta misma semana en InfoPLC sobre los 7 tips para empezar a programar en Codesys ®


Error: Your Requested widget " newsletterwidgetminimal-4" is not in the widget list.
  • [do_widget_area ct-footer-sidebar-1]
    • [do_widget id="text-2"]
  • [do_widget_area ct-footer-sidebar-2]
    • [do_widget id="text-3"]
  • [do_widget_area ct-footer-sidebar-3]
    • [do_widget id="text-4"]
  • [do_widget_area ct-footer-sidebar-4]
    • [do_widget id="blocksy_ct_contact_info-1"]
  • [do_widget_area ct-footer-sidebar-5]
    • [do_widget_area ct-footer-sidebar-6]
      • [do_widget_area sidebar-1]
        • [do_widget id="blocksy_ct_posts-1"]
        • [do_widget id="categories-1"]
        • [do_widget id="blocksy_ct_posts-2"]
        • [do_widget id="meta-1"]
        • [do_widget id="tag_cloud-1"]
      • [do_widget_area widgets_for_shortcodes]
        • [do_widget id="widget_sp_image-6"]
        • [do_widget id="widget_sp_image-5"]
        • [do_widget id="newsletterwidgetminimal-4"]
      • [do_widget_area wp_inactive_widgets]

        4 comentarios

        1. Según el articulo, no existe el lenguaje de programación de PLCs que sea el mejor en comparación a los otros lenguajes, ya que cada lenguaje tiene sus ventajas y desventajas.

        2. Exclente analisis, en conclucion seguimos con LD, por das el mejor a mi parecer por todas las razones expuestas, mientras algo sea mas universal mucho mejor, lo exclusivo paso de moda hace rato!

        Deja un comentario

        Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

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