¿Qué es Codesys?
Codesys (Controller Development System) es un entorno de desarrollo de software para programación de PLCs y sistemas de automatización, desarrollado por la empresa alemana 3S-Smart Software Solutions. Es el runtime y entorno de programación IEC 61131-3 más extendido del mundo: más de 500 fabricantes de hardware lo utilizan como base de sus controladores, desde PLCs industriales hasta sistemas embebidos y controladores de movimiento.
A diferencia de entornos propietarios como TIA Portal (Siemens) o Studio 5000 (Rockwell), Codesys es independiente de fabricante: una vez que dominas la plataforma, puedes programar controladores de Wago, Schneider, Pilz, Festo, IFM, Phoenix Contact, Beckhoff (en su variante TwinCAT) y cientos de fabricantes más sin necesidad de aprender un entorno completamente nuevo para cada marca.
Estándar IEC 61131-3: los 5 lenguajes de programación
Codesys implementa completamente el estándar IEC 61131-3, que define cinco lenguajes de programación para PLCs:
- LD (Ladder Diagram): representación gráfica de circuitos de relés. Intuitivo para ingenieros con background en electricidad.
- FBD (Function Block Diagram): programación orientada a bloques funcionales conectados entre sí. Muy usado para lazos de control y proceso.
- ST (Structured Text): lenguaje textual similar a Pascal o C. Potente para lógica compleja, algoritmos y manipulación de datos.
- IL (Instruction List): lenguaje ensamblador de bajo nivel. En desuso en Codesys 3, sustituido por ST.
- SFC (Sequential Function Chart): representación gráfica de máquinas de estados y secuencias. Ideal para procesos por etapas.
En un mismo proyecto Codesys puedes mezclar todos los lenguajes, eligiendo el más adecuado para cada parte del programa. Un POU (Program Organization Unit) puede estar en LD, llamar a un FB escrito en ST y ser orquestado por un SFC.
¿Qué fabricantes usan Codesys?
La lista de fabricantes que usan Codesys como base de su runtime es enorme. Los más relevantes en el mercado español e internacional:
- Wago: toda la gama de controladores PFC100 y PFC200 usa Codesys 3. Muy populares en automatización de edificios, energía y ciclo del agua.
- Schneider Electric: los PLCs Modicon M241/M251/M262 programan con EcoStruxure Machine Expert, basado en Codesys 3.
- Pilz: el controlador de seguridad PSS 4000 usa Codesys Safety.
- IFM: los controladores CR y AL de IFM usan Codesys 3.
- Phoenix Contact: gama RFC 470 y controllers PLCnext (con extensiones propias).
- Festo: controladores CPX-E.
- Bosch Rexroth: IndraControl basado en Codesys.
- Beckhoff: TwinCAT comparte base con Codesys aunque es una rama independiente con extensiones propias (C/C++, Motion Control avanzado).
Codesys vs TIA Portal (Siemens): diferencias clave
| Característica | Codesys | TIA Portal (Siemens) |
|---|---|---|
| Independencia de fabricante | ✅ +500 fabricantes | ❌ Solo Siemens |
| Licencia de programación | Gratuita (Codesys Development System) | Gratuita (TIA Portal Basic limitado) |
| Estándar IEC 61131-3 | ✅ Completo | ✅ Completo |
| Lenguaje ST avanzado | ✅ Muy potente | ✅ SCL equivalente |
| Visualización integrada | ✅ WebVisu nativo | ✅ WinCC (licencia aparte) |
| Motion Control | ✅ CNC y robótica | ✅ (requiere Technology CPU) |
| Ecosistema y soporte | Amplio pero fragmentado | Muy maduro y unificado |
| Base de técnicos formados | Alta (multimarca) | Muy alta en España |
Ventajas de Codesys para proyectos de automatización
- Portabilidad del código: un programa Codesys puede migrarse entre controladores de distintos fabricantes con mínimos cambios, siempre que compartan la misma versión de runtime. Esto reduce el riesgo de obsolescencia y la dependencia de un único proveedor de hardware.
- Coste de herramientas nulo: Codesys Development System se descarga gratuitamente desde codesys.com. No hay licencia de programación (sí puede haberla de runtime en algunos fabricantes).
- Visualización integrada sin SCADA externo: Codesys incluye WebVisu, que permite crear pantallas de supervisión accesibles desde cualquier navegador sin necesidad de software SCADA adicional. Ver artículo: WebVisu: visualización sin SCADA externo.
- Librería de funciones enorme: el Codesys Store ofrece librerías certificadas para Motion Control, comunicaciones, seguridad funcional, Building Automation y más.
- OOP en PLC: Codesys 3 soporta programación orientada a objetos (clases, herencia, interfaces, métodos) en los lenguajes IEC 61131-3, lo que permite estructuras de código más mantenibles y reutilizables en proyectos complejos.
¿Cuándo elegir Codesys?
- Cuando no quieres depender de un único fabricante de hardware y buscas flexibilidad a largo plazo
- Proyectos con hardware Wago, Schneider M2xx o IFM donde Codesys es el runtime nativo
- Aplicaciones que necesitan visualización web sin inversión en licencias SCADA (WebVisu)
- Equipos de ingeniería que ya dominan Codesys y quieren aprovechar ese conocimiento
- Máquinas que se van a comercializar a clientes con distintos estándares de PLC
- Proyectos con Motion Control complejo sobre hardware Codesys compatible
En Bluemation programamos Codesys
En Bluemation tenemos experiencia real programando Codesys en proyectos industriales: instalaciones de telegestión de silos con Wago PFC200, sistemas de control de procesos con Schneider M251/M262 y automatización de máquinas especiales. Si tu proyecto usa hardware compatible con Codesys, podemos ayudarte. Contáctanos.