VISIÓN GENERAL
IEC 61131-3 es el primer lenguaje de programación estandarizado independiente del proveedor para la automatización industrial, Establecido por la Comisión Electrotécnica Internacional (IEC), una organización estándar mundial fundada en 1906 y reconocida mundialmente por estándares en la industria de controles en más de 50 países, El estándar ya está bien establecido en Europa y está ganando popularidad rápidamente en América del Norte y Asia como el estándar de programación para control industrial y de procesos.
La adopción de IEC 61131-3 por parte de la industria se debe a la creciente complejidad de los requisitos de control y automatización del software, El tiempo para crear, el costo de mano de obra y la capacidad de mantenimiento del software de control tiene un gran impacto en los proyectos de control que se pueden mejorar utilizando el estándar de lenguaje de programación independiente IEC 61131-3, La aplicación de un lenguaje de programación estándar tiene un impacto positivo en el ciclo de vida del software que incluye análisis de requisitos, diseño, construcción, pruebas (validación), instalación, operación y mantenimiento, El impacto en el mantenimiento es importante ya que el mantenimiento del software de control, incluidas las actualizaciones, es generalmente de 2 a 4 veces el trabajo de la programación inicial.
El estándar IEC 61131-3 combinado con las nuevas y potentes arquitecturas de chips Freescale permite que se entregue un controlador completo en un dispositivo integrado, Los programas de control pueden ejecutarse distribuidos e independientemente en lugar de concentrarse en grandes controladores, Ya no se requieren miles de líneas de programas de control ejecutándose en un controlador para aplicaciones de automatización complejas, Esto aumenta el rendimiento, mejora la confiabilidad y simplifica los programas.
IEC 61131-3 proporciona soporte en múltiples idiomas dentro de un programa de control, El desarrollador del programa de control puede seleccionar el idioma que mejor se adapte a una tarea en particular, lo que aumenta considerablemente su productividad, Además, con una interfaz de programación estandarizada que es completamente independiente de la plataforma de hardware, los usuarios pueden reducir considerablemente el costo del mantenimiento y la capacitación del programa en todas las aplicaciones de automatización de toda la empresa.
IEC 61131-3 es hardware independiente, La capacidad de transportar soluciones de automatización a otras plataformas se ha mejorado enormemente con respecto a las aplicaciones de PLC que ofrecen a los usuarios e integradores de sistemas un nivel de reutilización nunca antes disponible, IEC 61131 aumenta la eficiencia y la velocidad de implementación de nuevas soluciones de automatización al utilizar componentes de control fácilmente disponibles desarrollados en otros proyectos y por desarrolladores externos.
Las empresas que han optado por implementar IEC 61131-3 encuentran que reducen los costos de recursos humanos en capacitación, depuración y mantenimiento, y mejoran la productividad a partir de la mayor reutilización.
DESCRIPCIÓN GENERAL DE LA TECNOLOGÍA
IEC 61131-3 es el estándar internacional para lenguajes de programación de controladores programables, Como tal, especifica la sintaxis, la semántica y la pantalla para el siguiente conjunto de lenguajes de programación de PLC:
Diagrama de escalera (LD)
Diagramas de funciones secuenciales (SFC)
Diagrama de bloques de función (FBD) Lista de instrucciones de
texto estructurado (ST)
(IL)
IEC 61131-3 es el tercer componente (Parte 3) de la familia IEC 61131 que consta de
Parte 1 Descripción general
Parte 2 Hardware
Parte 3 Lenguajes de programación
Parte 4 Pautas para el usuario
Parte 5 Comunicación
La forma más fácil de ver el estándar es dividirlo en dos partes, Elementos comunes y Lenguajes de programación.
Tipo de datos
La tipificación de datos es un elemento común de la norma con el propósito de evitar errores al inicio del desarrollo, Define el tipo de parámetros que se utilizarán e intenta evitar errores como dividir una fecha por un entero, Los diferentes tipos de datos admitidos son Boolean, Integer, Real, Byte, Word, Date, Time-of-Day y String, El estándar también permite a los usuarios definir sus propias variables, Estos son conocidos como tipos de datos derivados, De esta manera, un ingeniero podría definir un canal de entrada analógica como un tipo de datos y reutilizarlo una y otra vez.
Las variables se asignan solo a direcciones de hardware explícitas o entradas y salidas explícitas, Estos pueden ser asignados en configuraciones personalizadas y programas, Un sistema IEC 61131 es altamente independiente y puede funcionar con poco o ningún mensaje desde una red externa.
El alcance de la variable se limita a la unidad organizativa en la que se declaran, El gran beneficio de esta característica es que sus nombres pueden reutilizarse en otras partes sin ningún conflicto, eliminando otra fuente de errores, Si las variables tienen alcance global pueden declararse como globales, A los parámetros se les puede asignar su valor inicial al iniciar y reiniciar.
Configuración, recursos y tareas
En el nivel más alto, todo el software requerido para resolver un problema de control particular puede formularse como una Configuración, Una configuración es específica de un tipo particular de sistema de control, incluida la disposición del hardware, es decir, recursos de procesamiento, direcciones de memoria para canales de E / S y capacidades del sistema.
Dentro de una configuración se pueden definir recursos, Se puede pensar en un recurso como una facilidad de procesamiento que puede ejecutar programas IEC, Dentro de un recurso, se pueden definir una o más tareas, Las tareas controlan la ejecución de un conjunto de programas y / o bloques de funciones, Estos pueden ejecutarse periódicamente o al ocurrir un desencadenante específico.
Por ejemplo, en una unidad habilitada para IEC 61131, se podría establecer un disparador cuando los RPM caen por debajo de un valor predefinido, El disparador podría iniciar una tarea para aumentar la velocidad, Estos resultados son instantáneos y vienen directamente de la unidad, No hay demora o handshaking por un PLC externo, Esto significa que prácticamente no hay riesgo de perder un mensaje o falta de comunicación, La retroalimentación es casi instantánea en comparación con un controlador programable con E / S y tiempo de exploración del programa.
Los programas se crean a partir de varios elementos de software diferentes escritos en cualquiera de los idiomas definidos por IEC; Diagramas de escalera, diagramas de funciones secuenciales, diagramas de bloques de funciones, texto estructurado o lista de instrucciones, Es típico que un programa consista en una serie de bloques de funciones de alto nivel escritos en uno o más de estos idiomas.
Programa de Unidades de Organizaciones
Dentro de IEC 61131-3, los programas, bloques de funciones y funciones se denominan unidades de organización de programas o POU.
IEC 61131-3 incluye instancias de funciones estándar definidas, ADD, ABS, SQRT, SIN y COS, o el usuario puede crear un bloque de funciones personalizado y usar ese bloque de funciones varias veces.
Los bloques de funciones son objetos de software que representan un nivel de control más detallado, Pueden contener datos así como un algoritmo, Como objetos de software tienen una interfaz bien definida y elementos internos ocultos, Esto crea una línea clara entre los diferentes niveles de los programas, Con estas características, funciones y bloques de funciones refleja las mejores prácticas según los principios de programación orientados a objetos
Los bloques de funciones se pueden escribir en cualquiera de los lenguajes IEC en la mayoría de las casillas, incluso en “C”, Los programas se pueden escribir utilizando cualquiera de los bloques de construcción básicos mencionados anteriormente.
Los gráficos de funciones secuenciales o SFC se utilizan para controlar el comportamiento secuencial de un programa de control y admiten la sincronización y la concurrencia.
LENGUAJES DE PROGRAMACIÓN
Dentro de IEC 61131-3, la sintaxis y la semántica se definen para cinco lenguajes de programación estándar, sin dejar espacio para los dialectos, Una vez que los haya aprendido, puede utilizar una amplia variedad de sistemas basados en este estándar.
El usuario final puede elegir un lenguaje de programación según su conocimiento, el problema en cuestión, los componentes externos, las interfaces o las preferencias simples, Todos los idiomas están vinculados y se proporciona una suite común, con un enlace a la experiencia existente, De esta manera, también proporcionan una herramienta de comunicación, que combina personas de diferentes orígenes, Debido a la estructura de estándares basada en funciones y bloques de funciones, los usuarios pueden adoptar una estrategia descendente o ascendente para desarrollar sus programas.
CoDeSys (www.3s-software.com)
CoDeSys es una de las herramientas de programación IEC 61131-3 más potentes para los controladores, CoDeSys es compatible con los cinco lenguajes de programación del estándar, combinando la potencia de los lenguajes de programación avanzados como C o Pascal con las funciones de fácil manejo y operación de los sistemas de programación PLC.
A diferencia de algunas ofertas competitivas de IEC 61131-3, CoDeSys produce código de máquina nativo para una gran cantidad de procesadores comunes, El código de máquina nativo es inherentemente más rápido y más confiable que las soluciones interpretadas.
El kit de programación completo, que incluye un manual y asistencia en línea, está disponible en alemán, inglés o francés, Algunas partes de la herramienta, por ejemplo, la ayuda en línea, están disponibles en otros idiomas, como ruso, chino o español.
CoDeSys ofrece ventajas competitivas:
3S puede realizar una adaptación completa de prueba (incluida la funcionalidad en línea) en cualquier hardware de procesador estándar dentro de dos días, CoDeSys tiene backends listos para todos los procesadores actuales, Para mantener al mínimo el tiempo de personalización y los gastos resultantes, el sistema de tiempo de ejecución, el sistema de programación y la generación de código están perfectamente coordinados, ahorrando así su tiempo y asegurando que sus productos lleguen al mercado rápidamente.
Un enfoque práctico y fácil de usar
Las funciones como Autodeclare, Autoformat y una ayuda de entrada sensible al contexto simplifican enormemente el uso de CoDeSys, Todas las funciones son accesibles mediante el uso del teclado, Lo que además garantiza un trabajo rápido y eficiente es el número excepcionalmente bajo de recursos que requiere CoDeSys.
Los generadores de código nativo de alto rendimiento para todos los procesadores comunes garantizan el uso óptimo de su sistema de control, Debido a los algoritmos inteligentes, como los proyectos grandes de ‘compilación incremental’ con miles de variables globales y cientos de componentes, pueden realizarse en tiempos de compilación sorprendentemente cortos, CoDeSys proporciona a los usuarios una amplia gama de funcionalidades de desarrollo de programas de alto rendimiento, p. Ej., Casi todos los tipos de datos especificados en IEC 61131-3, simulación fuera de línea así como funciones en línea potentes como puntos de interrupción, pasos individuales, flujo de potencia, seguimiento de muestreo y en línea cambio.
HISTORIA DE APLICACIÓN DE BANNER ENGINEERING
Real Time AUtomation recientemente creó la solución para Banner Engineering Corp., Minneapolis y su desarrollador de productos inalámbricos, Seasonix Inc., Plymouth Minn., Utilizando el software de control abierto CoDeSys 1131-3, A través de una interfaz HMI basada en navegador personalizable, los usuarios pueden acceder y manipular datos desde múltiples sensores inalámbricos.
La colocación de la funcionalidad del PLC en la puerta de enlace reduce el tráfico de red y puede eliminar la necesidad de un PLC en algunas aplicaciones, Esto reduce la huella y el costo de automatizar aplicaciones, Además, la funcionalidad basada en el navegador permite a los usuarios acceder a los datos desde cualquier conexión a Internet.
Para obtener información sobre nuestros productos, por favor visita nuestra pagina web Logicbus