¿Qué es un autómata programable?
Un autómata programable (AP) es un dispositivo electrónico industrial diseñado para controlar procesos y máquinas de forma automática mediante un programa almacenado en su memoria. El término "autómata programable" es la denominación técnica utilizada en Europa y en la normativa internacional (IEC 61131), mientras que en el entorno anglosajón se emplea habitualmente la sigla PLC (Programmable Logic Controller, controlador lógico programable). Ambos términos designan el mismo tipo de dispositivo.
El autómata programable nació en la industria del automóvil a finales de los años 60, cuando General Motors buscaba un sustituto flexible para los complejos paneles de relés electromecánicos que controlaban sus líneas de montaje. El primer PLC comercial, el Modicon 084, se presentó en 1969. Desde entonces, la tecnología ha evolucionado radicalmente —procesadores más rápidos, comunicaciones Ethernet, seguridad integrada, programación en software— pero el concepto esencial sigue siendo el mismo: un controlador industrial robusto, de tiempo real y programable por el usuario.
¿Autómata programable o PLC? Diferencia terminológica
La norma IEC 61131 define formalmente el dispositivo como "Programmable Controller" (controlador programable). En español, la traducción normalizada es autómata programable (AP). El término PLC (Programmable Logic Controller) proviene de la denominación original americana y se usa de forma generalizada en la industria global, incluida España y Latinoamérica.
En la práctica, autómata programable y PLC son sinónimos en el lenguaje técnico cotidiano. Algunos ingenieros y documentos técnicos reservan el término "autómata" para los dispositivos más compactos o sencillos, pero esta distinción no tiene base normativa. Lo que sí es relevante es que, independientemente del nombre comercial que use cada fabricante (SIMATIC, TwinCAT, CompactLogix, Momentum...), todos los autómatas programables modernos deben cumplir con la norma IEC 61131.
Arquitectura y componentes del autómata programable
Un autómata programable se compone de los siguientes bloques funcionales:
- CPU (Unidad Central de Proceso): ejecuta el programa de control, gestiona la memoria y coordina los módulos periféricos. Contiene el procesador, la memoria de programa (RAM + memoria flash no volátil) y el sistema operativo en tiempo real.
- Módulos de entradas digitales: leen señales discretas de sensores, pulsadores, finales de carrera, detectores fotoeléctricos... (24 VDC, 120/230 VAC).
- Módulos de salidas digitales: activan actuadores como relés, contactores, válvulas solenoides o indicadores luminosos.
- Módulos de entradas analógicas: convierten señales continuas de temperatura (PT100/PT1000), presión (4-20 mA), caudal o posición en valores numéricos que el programa puede procesar.
- Módulos de salidas analógicas: generan señales continuas (4-20 mA, 0-10 V) para controlar variadores de frecuencia, válvulas proporcionales o accionamientos.
- Módulos de comunicaciones: interfaces para protocolos industriales (Profinet, EtherNet/IP, EtherCAT, Modbus, MQTT, OPC-UA).
- Fuente de alimentación: convierte la tensión de red a la tensión de trabajo del autómata (normalmente 24 VDC).
El ciclo de scan: cómo funciona el autómata en tiempo real
El autómata programable opera en un ciclo de scan continuo, que se repite miles de veces por segundo:
- Lectura de entradas (Input Scan): el autómata lee el estado actual de todas las entradas físicas y actualiza la tabla de imagen de proceso de entradas (IPE). Esta imagen se mantiene estable durante toda la ejecución del programa, lo que garantiza la coherencia de los datos.
- Ejecución del programa (Program Scan): la CPU ejecuta el programa de usuario de forma secuencial, desde la primera hasta la última instrucción. Accede a la imagen de entradas, calcula la lógica y escribe los resultados en la imagen de proceso de salidas (IPS).
- Escritura de salidas (Output Scan): los valores calculados en la IPS se transfieren a los módulos de salidas físicas, actuando sobre los actuadores del proceso.
- Comunicaciones y diagnóstico: el autómata atiende las comunicaciones pendientes (peticiones SCADA, maestros de bus de campo) y actualiza los registros de diagnóstico.
El tiempo total de un ciclo de scan típico es de 1 a 50 ms, dependiendo de la complejidad del programa y la plataforma. Las aplicaciones de control de movimiento requieren tiempos de ciclo inferiores a 1 ms, lo que exige CPUs específicas o buses de campo deterministas como EtherCAT.
Lenguajes de programación IEC 61131-3
La norma IEC 61131-3 estandariza cinco lenguajes de programación para autómatas programables, permitiendo que el mismo programa sea comprensible por cualquier ingeniero formado en el estándar, independientemente del fabricante del autómata:
- Ladder Diagram (LD) — Diagrama de contactos: lenguaje gráfico que emula los esquemas de relés tradicionales. Es el más extendido en la industria, especialmente en autómatas Siemens y Rockwell. Ideal para lógica combinacional y secuencial discreta.
- Function Block Diagram (FBD) — Diagrama de bloques de función: lenguaje gráfico orientado a la interconexión de bloques funcionales (PID, contadores, temporizadores, bloques de comunicación). Habitual en aplicaciones de proceso continuo.
- Structured Text (ST) — Texto estructurado: lenguaje de alto nivel similar a Pascal o C. Permite implementar algoritmos complejos, cálculos matemáticos, gestión de arrays y estructuras de datos. Muy utilizado en Beckhoff TwinCAT y Codesys.
- Sequential Function Chart (SFC) — Grafcet: lenguaje gráfico para describir secuencias de etapas y transiciones. Es el estándar para el control de procesos secuenciales complejos como líneas de envasado o plantas de tratamiento.
- Instruction List (IL): lenguaje de bajo nivel similar al ensamblador. En desuso en la industria moderna, reemplazado por Structured Text.
Tipos de autómata programable
- Autómata compacto: CPU, E/S y comunicaciones integradas en un único módulo. Ideal para máquinas pequeñas y medianas. Ejemplos: Siemens S7-1200, Schneider M221, Wago PFC100.
- Autómata modular: arquitectura expandible con rack y módulos independientes. Permite configuraciones de cientos de E/S y módulos de función especial. Ejemplos: Siemens S7-1500, Rockwell ControlLogix, Beckhoff CX.
- Autómata de seguridad (Safety PLC): diseñado para funciones de seguridad según IEC 62061/IEC 61508. Ejecuta el programa de seguridad de forma redundante y con autodiagnóstico. Ejemplos: Siemens S7-1500F, Pilz PSS4000, Rockwell GuardLogix.
- Soft PLC / PC-based control: el software de PLC se ejecuta sobre un PC industrial en tiempo real. Permite integrar control de movimiento, visión artificial y programación en lenguajes de alto nivel en una sola plataforma. Ejemplos: Beckhoff TwinCAT 3, Codesys Runtime.
- Micro-autómata / Nano PLC: para aplicaciones muy sencillas con pocas E/S y bajo coste. Ejemplos: Siemens LOGO!, Schneider Zelio.
Autómatas programables en Bluemation
En Bluemation programamos autómatas programables de todos los fabricantes principales: Siemens (S7-1200, S7-1500, S7-300), Beckhoff (TwinCAT 3, EtherCAT), Rockwell (ControlLogix, CompactLogix), Schneider (M340, M580) y Wago (PFC100/PFC200, Codesys). Conoce más sobre nuestros servicios de programación de PLC y autómatas programables o explora la guía sobre qué es un PLC para ampliar conceptos.
Preguntas frecuentes sobre autómatas programables
¿Cuál es la diferencia entre autómata programable y PLC?
Ninguna en la práctica: son el mismo dispositivo. "Autómata programable" (AP) es el término normalizado en español por la IEC 61131, mientras que PLC (Programmable Logic Controller) es la denominación anglosajona extendida globalmente. En España se usan ambos términos indistintamente en el ámbito técnico.
¿Qué diferencia hay entre un autómata programable y un microcontrolador?
Un microcontrolador (Arduino, STM32...) es un chip programable de propósito general diseñado para productos electrónicos. Un autómata programable está diseñado específicamente para entornos industriales: soporta temperaturas extremas, vibraciones e interferencias electromagnéticas; tiene entradas/salidas industriales estandarizadas (24 VDC, 4-20 mA); opera con un sistema operativo de tiempo real garantizado; y está diseñado para funcionar 24/7 durante décadas con mínimo mantenimiento.
¿Cuánto cuesta un autómata programable?
El precio varía enormemente según la familia y el fabricante. Un micro-autómata básico (Siemens S7-1200 CPU 1211C) cuesta desde unos 200-300 €. Un autómata modular de gama alta (Siemens S7-1500 CPU 1516) puede superar los 2.000 € solo la CPU, sin contar módulos de E/S, comunicaciones y licencias de software. A eso hay que añadir el coste de la ingeniería de programación, que suele ser el componente más significativo del proyecto.
¿Se puede reprogramar un autómata programable sin parar la producción?
Depende del fabricante y del tipo de cambio. Los autómatas modernos (Siemens S7-1500, Beckhoff TwinCAT) permiten descargar ciertos cambios "en caliente" sin parar el ciclo de ejecución. Sin embargo, los cambios que afectan a la estructura del programa o a la configuración del hardware requieren habitualmente una parada controlada. Siempre se recomienda probar los cambios en un entorno de simulación antes de aplicarlos en producción.