Skip to main content

CODESYS 4

CODESYS 4 Es una herramienta de desarrollo independiente de la plataforma y de bajo consumo de recursos para la automatización industrial, conforme a la norma IEC 61131-3. La interfaz de usuario se ejecuta completamente en el navegador, por lo que es compatible con una amplia gama de sistemas operativos, como Windows, Linux, macOS, iPadOS y Android. El backend (el núcleo funcional) está separado de la interfaz de usuario. Puede ejecutarse en diferentes entornos (escritorio, servidor, nube y local) en Windows o Linux, y en plataformas con procesadores x86/x64 y ARM.

Durante el desarrollo de CODESYS 4 El enfoque siempre ha estado en la calidad del software y una base de plataforma sólida. El alcance funcional de la versión 1.0.0.0 está específicamente adaptado a dos escenarios de aplicación y crecerá continuamente en ciclos de lanzamiento cortos (ver sección De cara a los futuros desarrollos).

. Las características de CODESYS 4 Se basan esencialmente en tres decisiones arquitectónicas:
  • Separación del backend y el frontend: La interfaz gráfica de usuario no es necesaria para las funciones principales. Esto significa que CODESYS 4 Puede utilizarse tanto de forma interactiva en el navegador como de forma totalmente automática a través de la línea de comandos (sin interfaz gráfica).

  • Almacenamiento de datos abierto basado en texto Un proyecto es un directorio de archivos de texto legibles en lugar de un archivo de proyecto binario.

  • Entorno de ejecución compartido con CODESYS 3 El código máquina generado es idéntico y las bibliotecas compiladas son intercambiables entre ambas herramientas.

Grupo objetivo y escenarios de aplicación

CODESYS 4 Está dirigido a usuarios que desarrollan aplicaciones de controladores IEC 61131-3 y desean utilizar métodos de TI establecidos en automatización, como el trabajo independiente de la plataforma, el control de versiones, la integración y entrega continuas (CI/CD) y el desarrollo en equipo. La norma IEC 61131-3 sigue siendo la base: los lenguajes de programación y los métodos de trabajo se mantienen sin cambios.

. La primera versión está diseñada para dos escenarios de aplicación:
  • Desarrollo de bibliotecas con CI/CD: CODESYS 4 Es ideal para desarrollar bibliotecas integradas en procesos automatizados de compilación y lanzamiento. La integración del compilador mediante línea de comandos, el almacenamiento de proyectos basado en archivos y la resolución determinista de dependencias son elementos fundamentales de la arquitectura. Esto permite compilar bibliotecas de forma reproducible y sin interfaz gráfica, en cualquier sistema operativo compatible y en cualquier canalización de CI/CD común.

  • Aplicaciones sencillas: La primera versión de CODESYS 4 Es adecuado para aplicaciones de control sencillas en un solo controlador. Esto incluye, por ejemplo, máquinas pequeñas, bancos de pruebas o aplicaciones integradas en dispositivos con un número limitado de puntos de E/S digitales y analógicos. Se utiliza el editor del dispositivo Modbus (Modbus TCP) para asignar variables de E/S y descargar la aplicación al controlador. En modo en línea, se supervisan las variables en tiempo de ejecución y se ajustan los parámetros. De esta forma, se cubre completamente el flujo de trabajo esencial de puesta en marcha. CODESYS 4.

Para proyectos que van más allá de esto, CODESYS 3 sigue siendo la herramienta preferida (véase la sección Clasificación en el CODESYS cartera).

Ventajas de CODESYS 4

Independencia de la plataforma: La interfaz de usuario de CODESYS 4 Se ejecuta en cualquier navegador convencional y, por lo tanto, es independiente del sistema operativo del entorno de trabajo. El backend funciona en Windows y Linux, incluyendo plataformas con procesadores x86/x64 y ARM. No se requiere máquina virtual para el desarrollo en Linux y macOS.

La separación del frontend y el backend hace posible que CODESYS 4 para operar en diferentes entornos:

  • Aplicación de escritorio

  • Instancia de estación de trabajo local abierta en el navegador

  • Servidor multiusuario administrado centralmente

  • Directamente en el hardware del controlador

  • En un controlador virtual (vPLC)

Almacenamiento de datos abierto y basado en texto: Una característica clave de CODESYS 4 es un sistema de almacenamiento de datos basado en texto y codificado en UTF-8. CODESYS 4 Funciona directamente a nivel de archivo. Un proyecto es un directorio de archivos legibles. El código fuente IEC se proporciona como archivos de texto UTF-8, los datos estructurados como JSON, las descripciones de dispositivos como XML y las imágenes en su formato original (JPEG, PNG o SVG). Cada elemento se almacena en su propio archivo dentro de una estructura de carpetas comprensible.

El acceso externo es un caso de uso particular en este caso. Los archivos se pueden visualizar, comparar y fusionar directamente dentro de herramientas estándar externas, incluidos editores de texto, herramientas de comparación de diferencias, clientes Git o en la vista de comparación de diferencias de GitLab y GitHub. CODESYS 4 Formatea los archivos de forma estable y determinista. Esto incluye saltos de línea consistentes, un orden fijo en los archivos JSON, sangría uniforme y la omisión de metadatos innecesarios. Como resultado, las comparaciones muestran los cambios de contenido reales sin el ruido de formato complejo. El control de versiones se gestiona mediante herramientas consolidadas como Git, SVN o Mercurial. CODESYS 4 Por lo tanto, es solo una de las muchas herramientas en el proceso de desarrollo y ya no es la "herramienta maestra" exclusiva.

Debido a que los cambios externos son posibles en cualquier momento, CODESYS 4 está diseñado para manejar inconsistencias de manera controlada. Por ejemplo, después de una fusión o un checkout, CODESYS 4 Detecta los archivos modificados mediante la monitorización del sistema de archivos, y cualquier error en el almacenamiento del proyecto se notifica.

Concepto de espacio de trabajo: Proyectos en CODESYS 4 Se organizan en espacios de trabajo. Un espacio de trabajo combina varios proyectos de dispositivos y bibliotecas, que se cargan y editan simultáneamente en igualdad de condiciones, de forma similar a una solución en un entorno de desarrollo moderno. No existe un proyecto principal: todos los proyectos del espacio de trabajo se pueden editar al mismo nivel.

En la práctica, esto significa que desarrollas un proyecto Modbus compuesto por un servidor, un cliente y una biblioteca compartida, todo ello en paralelo en un único espacio de trabajo. Si modificas la estructura de la biblioteca, puedes continuar trabajando inmediatamente en las aplicaciones del servidor y del cliente. El código compartido se almacena en una biblioteca a la que hacen referencia todas las aplicaciones. Dado que los proyectos de biblioteca se abren y editan en el mismo espacio de trabajo, desarrollas la biblioteca y la aplicación en un único proceso.

Automatización y CI/CD desde cero: Desde el principio, CODESYS 4 Está diseñado para la integración continua y la entrega continua (CI/CD). El uso de la interfaz de línea de comandos (CLI) es una opción válida tanto para aplicaciones de escritorio como para servidores multiusuario, y no se trata de una herramienta adicional. Dado que el compilador se ejecuta sin interfaz gráfica y genera código máquina idéntico independientemente de la herramienta utilizada, la compilación se realiza de forma reproducible con cada confirmación.

Las dependencias se gestionan según un patrón bien conocido en el desarrollo de software moderno (comparable a npm o NuGet): un archivo de manifiesto (Libraries.json ) describe las referencias de biblioteca deseadas y un archivo de bloqueo (Libraries.lock.json ) registra la resolución específica de todas las dependencias directas e indirectas con la versión y una suma de verificación SHA384. Junto con el versionado semántico (semver), se pueden crear versiones idénticas del código fuente de forma reproducible.

Sistema de tiempo de ejecución compartido con CODESYS 3: CODESYS 4 comparte el mismo sistema de tiempo de ejecución con CODESYS 3 El compilador genera código máquina idéntico en ambas herramientas, y las bibliotecas compiladas son intercambiables en ambas direcciones. El código que se ha compilado en CODESYS 4 funciona en cualquier controlador donde CODESYS 3 El código se está ejecutando actualmente, sin nuevo hardware de destino y sin recertificación del entorno de ejecución. El requisito es un sistema de tiempo de ejecución. CODESYS Versión 3.5 SP16 o superior.

La seguridad como parte de la arquitectura: Seguridad en CODESYS 4 Se tiene en cuenta desde el principio (Seguridad por Diseño). Esto incluye métodos de autenticación convencionales, limitación de velocidad y aislamiento de procesos, lo cual es especialmente relevante para su funcionamiento como servidor multiusuario.

Funcionamiento y herramientas

En la versión 1.0.0.0, se incluyen el editor ST y el editor de escalera (LD) para la programación. El editor de escalera ha sido completamente rediseñado y está basado en una arquitectura web.

No se proporciona una interfaz de scripting específica, ya que los archivos del proyecto son directamente accesibles y editables. Para las tareas de automatización e integración, se dispone de un completo panel de control de línea de comandos (CLI).

Clasificación en el CODESYS cartera

El CODESYS 4 La aplicación es un desarrollo completamente nuevo, destinado a complementar CODESYS 3 No la reemplazará. Ambas generaciones coexistirán en el futuro previsible y compartirán el mismo sistema de ejecución y las mismas bibliotecas.

. CODESYS 4 es la herramienta adecuada para:
  • Desarrollo de bibliotecas en procesos de compilación y lanzamiento automatizados.

  • Aplicaciones de controlador sencillas en un solo controlador.

  • Desarrollo en Linux o macOS, así como operación multiusuario administrada centralmente.

. CODESYS 3 es la herramienta adecuada para:
  • Proyectos complejos con un alcance funcional completo, por ejemplo, con visualización, movimiento o buses de campo adicionales.

  • Proyectos que requieren la CODESYS Test Manager o el depurador

Sugerencia

Si ya está familiarizado con CODESYS 3, luego vea el capítulo Cambiar de CODESYS 3 para las diferencias conceptuales y un mapeo de las funciones habituales.

De cara a los futuros desarrollos

CODESYS 4 Sigue un ciclo de lanzamiento corto, con el objetivo de ofrecer una nueva versión principal aproximadamente cada dos meses, lo cual es posible gracias a una base tecnológica moderna y una cobertura de pruebas automatizadas exhaustiva. En lugar de parches individuales, se proporcionarán actualizaciones completas.

. El alcance funcional aumentará con cada nueva versión.
  • Las versiones posteriores incluirán características como cambios en línea, comandos adicionales de la biblioteca de línea de comandos, la posibilidad de excluir elementos de la compilación, extensiones instalables por el usuario y correcciones de errores permanentes.

  • Editores gráficos adicionales: La implementación de CFC ha comenzado y el editor de escalera se está ampliando para incluir funciones prácticas. Estas incluyen soporte para código inteligente, funciones avanzadas de edición y refactorización, arrastrar y soltar, monitorización de la escalera y subrayado de errores.

  • Más buses de campo, como EtherCAT y PROFINET

Un enfoque estratégico para el desarrollo futuro es la Plataforma de Extensión. Permitirá una extensión modular de CODESYS 4 con funciones adicionales proporcionadas e instaladas como extensiones.