Automatización · Publicación técnica

Introducción a los Controladores Lógicos Programables (PLC)

Qué es un PLC, de dónde viene y cómo funciona por dentro: su hardware, sus entradas y salidas, el ciclo de scan, la memoria, los lenguajes de la norma IEC 61131-3 y las instrucciones básicas. El tema termina con la forma de llevar un problema real a un programa, un caso de estudio y los criterios para elegir un controlador y usarlo con seguridad.

¿Qué es un PLC?

Un controlador lógico programable (PLC, Programmable Logic Controller), también llamado autómata programable industrial (API), es un equipo electrónico digital diseñado para controlar máquinas y procesos en tiempo real dentro de un ambiente industrial. Lee el estado del proceso por medio de sus entradas, ejecuta un programa escrito por el usuario y actúa sobre el proceso a través de sus salidas.

La norma IEC 61131-1 lo describe como un sistema electrónico de operación digital para uso industrial que guarda en una memoria programable instrucciones orientadas al usuario. Con ellas realiza funciones de lógica, secuencia, temporización, conteo y aritmética para controlar máquinas o procesos mediante entradas y salidas digitales o analógicas. Tres ideas de esa definición importan en la práctica:

  • Programable por el usuario: la función de la máquina se cambia editando el programa, no el cableado.
  • Orientado al usuario: sus lenguajes se parecen a los esquemas eléctricos y diagramas que ya usan electricistas y técnicos de mantenimiento, no a un lenguaje informático general.
  • Industrial: soporta ruido eléctrico, vibración, temperatura y polvo, y ejecuta su programa de forma indefinida y determinista.
PLCprograma de usuario+ sistema operativoCaptadoresfinales de carrera, botones,sensores, transmisoresAccionadorescontactores, válvulas,variadores, lámparasProcesomáquina o procesofísicoOperador · HMIconsignas e indicaciónPC de programaciónedición y diagnósticoseñales de entradaseñales de salidaacción físicamedición
Figura 1. El PLC en un sistema automatizado. Los captadores (sensores) informan el estado del proceso, el programa decide y los accionadores (actuadores) ejecutan la acción. El operador interviene a través de una interfaz hombre-máquina (HMI) y el programa se edita y diagnostica desde una PC.

Esta forma de trabajar (medir, decidir y actuar) es la de cualquier sistema de control. Lo que distingue al PLC es cómo lo hace. La Tabla 1.1 lo compara con las alternativas que un ingeniero en Electrónica o Mecatrónica tiene a la mano.

CriterioLógica cableada (relés)MicrocontroladorPC industrialPLC
Cambiar la funciónRecablearReprogramar y a veces rediseñar la tarjetaReprogramarReprogramar, incluso en línea
Interfaz con la plantaDirecta a 24 V o 120 VRequiere acondicionamiento (3.3/5 V)Requiere tarjetas de E/SE/S industriales integradas
RobustezAlta, con desgaste mecánicoDepende del diseñoMediaAlta y certificada
DeterminismoInmediatoAltoDepende del sistema operativoAlto (ciclo de scan acotado)
DiagnósticoManualLo que se programeAmplioIntegrado y en línea
Costo por unidadBajo en tareas pequeñasMuy bajo en volumenAltoMedio
Uso típicoMandos simples y seguridadProductos en serieVisión, datos, control avanzadoMáquinas y procesos industriales

Tabla 1.1. El PLC frente a otras formas de implementar control.

El microcontrolador es la mejor opción para un producto que se fabricará por miles con una función fija. El PLC lo es para una máquina única o de serie corta que debe funcionar años en planta y que personal de mantenimiento, no solo el diseñador, debe poder diagnosticar y modificar.

Breve historia

A finales de los años sesenta la industria automotriz controlaba sus líneas con tableros de cientos de relés, temporizadores y contadores electromecánicos. Cada cambio de modelo obligaba a recablear tableros completos, y localizar una falla en ellos era lento y costoso.

En 1968 la división Hydra-Matic de General Motors publicó una solicitud de propuestas para un controlador estándar de máquina electrónico que sustituyera a los sistemas de relés. Tenía que ser reprogramable, resistente al ambiente de planta, más pequeño que los tableros de relés y programable con una lógica parecida a la de los esquemas eléctricos. La propuesta ganadora fue de Bedford Associates, la empresa de Dick Morley, a quien se considera el padre del PLC. Su controlador, el Modicon 084 (MOdular DIgital CONtroller, proyecto número 84), se presentó a GM en 1969. Allen-Bradley trabajó al mismo tiempo en un equipo propio y popularizó el nombre programmable logic controller.

1968GM Hydra-Matic«controlador estándar»1969Modicon 084primer PLC instalado en GM1973Modicon 184despegue comercial1979Modbusprotocolo serie de Modicon1980sMicroprocesadorprogramación desde PC1993IEC 1131-3lenguajes normalizados1990sBuses de campoPROFIBUS, DeviceNet2000sEthernet industrialPROFINET, EtherNet/IP2013IEC 61131-3 ed. 3programación orientada a objetos2025IEC 61131-3 ed. 4se retira la lista de instrucciones
Figura 2. Hitos en la evolución del PLC: de sustituto de relés a controlador programable con lenguajes normalizados y comunicación Ethernet.

En los años setenta y ochenta llegaron los microprocesadores, las operaciones aritméticas, las comunicaciones serie (Modbus, 1979) y la programación desde PC. En los noventa aparecieron los buses de campo y en 1993 se publicó la norma de lenguajes IEC 1131-3, hoy IEC 61131-3. La edición de 2013 incorporó la programación orientada a objetos. La cuarta edición, publicada en mayo de 2025, eliminó el lenguaje de lista de instrucciones (IL) y añadió cadenas UTF-8.

De la lógica cableada al PLC

La forma más fácil de entender un PLC es compararlo con el circuito de relés que sustituye. El ejemplo clásico es el arranque y paro de un motor con enclavamiento, también llamado sello o autorretención. Al pulsar marcha, el relé K1 se energiza y uno de sus contactos se cierra en paralelo con el botón para mantenerse energizado. El botón de paro, normalmente cerrado, rompe esa retención.

(a) Control con relés (lógica cableada)L1 · 24 VN · 0 VS0 paroS1 marchaK1K1 (sello)K1KM1contactor del motor(b) El mismo control en diagrama de escalera (LD)%I0.1 Marcha%I0.0 Paro%Q0.0%Q0.0%Q0.0 energiza la bobina de KM1 desde el módulo de salidas.El botón de paro se cablea NC: en el programa se lee con contacto NA.
Figura 3. (a) Circuito de arranque y paro con relés. (b) El mismo control en diagrama de escalera (LD): los contactos y bobinas ya no son piezas físicas sino instrucciones que leen y escriben bits de memoria. Las direcciones siguen la convención IEC (%I entradas, %Q salidas).

En el PLC desaparecen los contactos y bobinas internos del tablero: quedan solo los botones, sensores y contactores conectados a sus terminales. Toda la lógica intermedia se convierte en un programa. De ahí salen sus ventajas y desventajas frente a la lógica cableada:

VentajasDesventajas o costos
Se modifica la función sin recablear ni añadir aparatosRequiere personal capacitado en programación y en el software del fabricante
Menos espacio y menos mano de obra de instalaciónCosto inicial mayor en máquinas muy sencillas
Mayor fiabilidad: no hay contactos móviles en la lógica internaDependencia de licencias, versiones y repuestos de un fabricante
Autodiagnóstico y monitoreo en línea que acortan las paradasEl programa es un activo que hay que respaldar, versionar y proteger
Temporizadores y contadores casi ilimitados, aritmética, comunicaciónLas funciones de seguridad exigen equipo y métodos certificados (Sección 1.14)
Un mismo controlador puede gobernar varias máquinas y reutilizarse en otraExpuesto a riesgos de ciberseguridad al conectarse a redes

Tabla 1.2. Ventajas y desventajas del PLC frente a la lógica cableada.

Por estas características el PLC se usa donde hay que maniobrar, secuenciar, señalizar o regular:

  • Manufactura discreta: inyectoras de plástico, máquinas transfer, embalaje, ensamble, estaciones de prueba eléctrica.
  • Procesos: tratamiento de agua, alimentos y bebidas, dosificación por lotes.
  • Instalaciones: climatización (HVAC), bombeo, elevadores, alumbrado, sistemas de seguridad.
  • Manejo de materiales: bandas transportadoras, almacenes automáticos y celdas robotizadas.

Arquitectura del hardware

Por dentro, un PLC es una computadora especializada. La Figura 4 muestra sus bloques.

PLCFuente24 V DCpara CPUy módulosCPUProcesador + sistema operativoProgramade usuarioDatos ymarcasImagen E/SRetentivaPuertos: USB · Ethernet · serieDIEDOSAIEAOSbus interno (backplane)sensores,transmisoresactuadores,variadoresPC deprogramaciónHMI · SCADAred industrialE/S remotas120/230 V AC o 24 V DC
Figura 4. Arquitectura de un PLC. La CPU se comunica con los módulos de entradas y salidas a través del bus interno. La fuente alimenta la electrónica y, con frecuencia, también los sensores.
  • Fuente de alimentación (PS): convierte 120/230 V AC, o recibe 24 V DC, y alimenta la CPU y los módulos. En la mayoría de los sistemas modernos los sensores y actuadores también trabajan a 24 V DC.
  • CPU: contiene el procesador, el sistema operativo (firmware) que administra el ciclo de scan y las comunicaciones, y la memoria. Esta se divide en memoria de programa, memoria de datos (marcas, temporizadores, contadores, bloques de datos), la imagen de proceso de entradas y salidas y una zona retentiva que conserva valores al cortar la energía.
  • Módulos de entradas y salidas: adaptan las señales de campo a niveles lógicos con aislamiento galvánico. Pueden ser digitales (DI, DO), analógicos (AI, AO) o especiales: contadores rápidos, control de posición, pesaje, termopares.
  • Interfaces de comunicación: para programar, conectar HMI y SCADA, intercambiar datos con otros PLC y manejar E/S remotas.

Formatos

Relé programable8–40 E/SCPUCompactoCPU + E/S integradasPSCPUModularmódulos sobre riel DINPSCPURack o chasiscientos a miles de E/Smás E/S, memoria, velocidad y redundancia →
Figura 5. Formatos de PLC. El relé programable resuelve tareas de unas cuantas E/S. El compacto integra CPU y E/S en una sola caja ampliable. El modular se arma con módulos sobre riel DIN. El de rack o chasis aloja procesadores de alto desempeño, a veces redundantes, para plantas completas.
Conjunto de PLC compactos y modulares de distintos fabricantes PLC modular de Omron con fuente, CPU y módulos de E/S
Figura 6. Equipos reales. Izquierda: PLC modulares y compactos de distintos fabricantes. Derecha: PLC modular Omron con fuente, CPU y módulos de E/S. Imágenes del material original del autor, ampliadas al doble de resolución y con nitidez mejorada.

Entradas y salidas

Los módulos de E/S son la frontera entre el mundo eléctrico de la planta y la lógica de la CPU. Su elección y su cableado causan buena parte de las fallas de puesta en marcha, así que vale la pena entender bien lo básico.

Entradas digitales

Una entrada digital informa un estado de dos valores: botón pulsado o no, pieza presente o ausente, cilindro extendido o retraído. El estándar industrial es 24 V DC. La norma IEC 61131-2 fija los umbrales: una entrada tipo 1 lee ON a partir de 15 V y las tipo 2 y 3 a partir de 11 V; por debajo de 5 V la entrada es OFF. La banda intermedia no está definida, y una entrada con voltaje en esa zona por una caída en el cable puede leer un valor aleatorio.

Cada entrada tiene un optoacoplador que aísla la CPU del campo y un filtro de entrada de unos milisegundos que rechaza el ruido y el rebote de contactos. Con los sensores electrónicos de tres hilos importa la dirección de la corriente:

(a) Sensor PNP → entrada sumidero (sinking)+24 V0 VSensor PNPcaféazulnegroIMódulo DIRoptoM (común)(b) Sensor NPN → entrada fuente (sourcing)+24 V0 VSensor NPNcaféazulnegroIMódulo DIRoptoL+ (común)La corriente entra al módulo en (a) y sale del módulo en (b). Las entradas tipo 1 y 3 de la IEC 61131-2 toman ON a partir de 15 V y 11 V, respectivamente.
Figura 7. (a) Un sensor PNP entrega +24 V a la entrada, que hace de sumidero (sinking) hacia 0 V. (b) Un sensor NPN conecta la entrada a 0 V, y la entrada hace de fuente (sourcing). Los colores de cable corresponden al código habitual de los sensores de tres hilos.
Error frecuente · PNP contra NPN

Un sensor NPN conectado a un módulo que espera PNP no daña nada, pero nunca enciende la entrada. El LED del sensor indica detección y el del PLC no, lo que desconcierta en la puesta en marcha. En América y Europa domina PNP; en equipo de origen asiático todavía es común NPN. Muchos módulos aceptan las dos lógicas según cómo se conecte su terminal común.

Salidas digitales

Las salidas digitales encienden y apagan cargas. Hay tres tecnologías:

(a) Salida a relé → bobina de contactor ACMódulo DOKQCA1KM1RC120 V ACAísla galvánicamente; ~1 Hz máx. y vida de 10⁵–10⁶ ciclos(b) Salida a transistor PNP → electroválvula DC+24 V (L+)0 V (M)Módulo DOQY1DRápida y sin desgaste; el diodo absorbe la energía de la bobina al apagar
Figura 8. (a) La salida a relé conmuta cargas AC o DC con aislamiento total; la red RC protege el contacto al abrir una bobina de AC. (b) La salida a transistor conmuta cargas de DC sin desgaste; el diodo de rueda libre limita la sobretensión de la bobina al apagarse.
TipoCargasCorriente típicaVelocidadVida
ReléAC o DC, voltajes mixtos2 A por punto≈ 1 Hz, 5–15 ms de retardo10⁵–10⁶ maniobras con carga
Transistor (MOSFET)Solo DC (24 V)0.5 A por puntokHz, < 1 ms; permite tren de pulsosPrácticamente ilimitada
TriacSolo AC0.5–1 A por puntoSe apaga en el cruce por ceroPrácticamente ilimitada; tiene corriente de fuga

Tabla 1.3. Comparación de las salidas digitales. Valores típicos; los reales están en la hoja de datos de cada módulo.

Entradas y salidas analógicas

Las variables continuas, como presión, temperatura, nivel, velocidad o posición de una válvula, se manejan con señales normalizadas. Las más comunes son 4–20 mA y 0–10 V. El lazo de corriente es preferible en planta por dos razones: la corriente no cambia con la resistencia del cable y el rango no empieza en cero, así que una corriente cercana a 0 mA indica un cable roto y no una medición de cero. La recomendación NAMUR NE 43 trata como falla las corrientes menores de 3.6 mA o mayores de 21 mA.

El módulo convierte la señal con un ADC y la entrega como un número entero. Para obtener unidades de ingeniería se aplica una recta:

Ving = Vmín + (N − Nmín) · Vmáx − VmínNmáx − Nmín(1.1)

donde N es el valor leído y Nmín, Nmáx son los valores que el módulo asigna a los extremos del rango. Dependen del fabricante: por ejemplo, 0–27 648 en Siemens, 0–32 000 en algunos Omron, o un rango configurable.

048121620Corriente del transmisor (mA)02.557.510Presión (bar)< 3.6 mAfalla:cable roto> 21 mAValor digital(rango nominal S7)4 mA00 bar8 mA6 9122.5 bar12 mA13 8245 bar16 mA20 7367.5 bar20 mA27 64810 bar
Figura 9. Escalado de un transmisor de presión de 0–10 bar con salida de 4–20 mA. Las zonas sombreadas indican falla del lazo.
Ejemplo 1.1 · Escalado de una entrada de 4–20 mA

Un transmisor de 0–10 bar se conecta a una entrada analógica con rango nominal de 0 a 27 648 para 4–20 mA. (a) ¿Qué valor lee el PLC con 12 mA? (b) ¿Qué presión corresponde a una lectura de 15 000? (c) ¿Qué resolución tiene la lectura?

(a) N = (12 − 4)/(20 − 4) · 27 648 = 0.5 · 27 648 = 13 824 (b) P = 0 + (15 000 − 0) · (10 − 0)/(27 648 − 0) = 5.425 bar (c) ΔP = 10 bar / 27 648 = 0.36 mbar por cuenta

La resolución de 0.36 mbar es la del formato numérico. La resolución real la fija el convertidor: con un ADC de 12 bits es 10/4096 ≈ 2.4 mbar. Además, la exactitud del sistema está limitada por la del transmisor, típicamente ±0.25 % del rango, es decir ±25 mbar. Mostrar cinco decimales en la HMI no aumenta la exactitud.

En el banco de pruebas

Para verificar un lazo analógico se inyecta corriente con un calibrador de lazo en 4, 8, 12, 16 y 20 mA y se registra el valor en el PLC y en la HMI. Una pendiente incorrecta indica escalado mal configurado. Un error constante indica desfase. Si la lectura no cambia, el problema suele estar en la polaridad del lazo, en la alimentación del transmisor (dos o cuatro hilos) o en un canal configurado como 0–10 V.

El ciclo de scan

Todos los PLC trabajan con el mismo principio de ejecución cíclica. El sistema operativo repite indefinidamente cuatro fases: lee todas las entradas, ejecuta el programa de usuario de principio a fin, escribe todas las salidas y atiende el diagnóstico y las comunicaciones. Una vuelta completa es un scan, y su duración es el tiempo de scan o tiempo de ciclo.

Lectura deentradas1Ejecución delprograma2Escritura desalidas3Diagnóstico ycomunicaciones4Tscantípico 1–50 msMemoria imagen de procesoterminalesde entradaPII · imagende entradasPIQ · imagende salidasterminalesde salidaprogramalee PIIescribe PIQ13Durante la fase 2 el programa no ve los terminales:trabaja con una «fotografía» congelada de las entradas.
Figura 10. Izquierda: las cuatro fases del ciclo de scan. Derecha: la memoria imagen de proceso. Las entradas se copian a la imagen de entradas (PII) al inicio del ciclo, el programa trabaja solo con las imágenes y la imagen de salidas (PIQ) se copia a los terminales al final.

La memoria imagen tiene una consecuencia práctica: durante la ejecución, el programa ve una «fotografía» de las entradas tomada al inicio del ciclo, y las salidas no cambian físicamente hasta que termina el ciclo. Así todas las instrucciones trabajan con datos coherentes, pero se introduce un retardo. El tiempo de scan depende del tamaño del programa, de la velocidad de la CPU y de la carga de comunicaciones; en máquinas típicas va de 1 a 50 ms.

Tscan ≈ tlectura + tprograma + tescritura + tcomunicación(1.2)

El peor caso ocurre cuando una entrada cambia justo después de que el PLC la leyó. El cambio pasa el filtro de entrada, espera al siguiente ciclo para ser leído, se procesa en ese ciclo y solo al final llega a la salida, que a su vez tiene su propio retardo:

tresp,máx ≈ tfiltro + 2 Tscan + tsalida(1.3)
Entrada físicaScanSalida físicacambiaprograma (scan 1)programa (scan 2)programa (scan 3)programa (scan 4)LEfiltro 3 msla lee el scan 2cambia la salidatiempo de respuesta ≈ t_filtro + 2·T_scan + t_salida (peor caso)0481216202428323640ms
Figura 11. Tiempo de respuesta en el peor caso con Tscan = 8 ms. La entrada cambia justo después de la fase de lectura (L) del primer scan; se lee en el segundo scan y la salida se escribe (E) al final de este.

Por la misma razón, una entrada solo se detecta con seguridad si dura más que el filtro más un ciclo completo:

tpulso,mín > tfiltro + Tscan(1.4)
Ejemplo 1.2 · ¿Alcanza el PLC a detectar la pieza?

Un sensor detecta piezas de 20 mm de largo en una banda. El PLC tiene Tscan = 8 ms, filtro de entrada de 3 ms y salida a transistor de 0.5 ms. (a) Calcule el tiempo de respuesta en el peor caso y cuánto avanza la pieza en ese tiempo a 1.5 m/s. (b) ¿Hasta qué velocidad se detecta cada pieza con seguridad?

(a) t_resp = 3 + 2·8 + 0.5 = 19.5 ms → d = 1.5 m/s · 0.0195 s = 29 mm (con salida a relé de 10 ms: t_resp = 29 ms → d = 44 mm) (b) t_pulso,mín = 3 + 8 = 11 ms → v_máx = 0.020 m / 0.011 s ≈ 1.8 m/s

A 1.5 m/s el pulso dura 13.3 ms: se detecta, pero con poco margen. Si la línea se acelera a 2 m/s el pulso baja a 10 ms y se perderán piezas de forma aleatoria. La solución no es «un PLC más rápido», sino una entrada rápida con interrupción o un contador de alta velocidad, que funcionan fuera del ciclo de scan.

El sistema operativo también vigila el ciclo con un perro guardián (watchdog). Si el programa tarda más de lo permitido, por ejemplo por un lazo que no termina, la CPU pasa a STOP y lleva las salidas a un estado definido. Por eso un programa de PLC nunca debe esperar dentro de un lazo a que ocurra algo: debe evaluar las condiciones en cada ciclo y seguir adelante. Además del modo RUN, la CPU tiene un modo STOP (programa detenido, salidas apagadas o en un valor configurado) y, en muchos equipos, permite modificar el programa en línea mientras la máquina opera.

Memoria y direccionamiento

El programa no maneja «cables» sino posiciones de memoria. La memoria de datos se organiza en áreas, cada una con un propósito:

ÁreaContenidoIEC / SiemensOmron (CQM1)Moeller (PS3/PS4)Keyence (KV)
EntradasImagen de las entradas físicas%I0.0000.00I0.00000
SalidasImagen de las salidas físicas%Q0.0100.00Q0.00500
MarcasRelés internos de trabajo%M0.0IR / canales de trabajoM0.01000
RetentivasValores que sobreviven a un corteConfigurableHR00Marcas retentivasConfigurable
DatosPalabras para cálculos y recetasDB, %MWDMMWDM
Temporizadores y contadoresEstado y valor actualInstancias IECTIM/CNT 000–511Módulos TR, CT/C

Tabla 1.4. Áreas de memoria y su notación en distintos fabricantes, incluidos los PLC del material original de este tema.

Una misma zona de memoria puede leerse como bits, bytes (8 bits) o palabras (16 bits). En la convención IEC el bit se indica con un punto: %I0.3 es el bit 3 del byte 0 de entradas, %IB0 es el byte completo y %IW0 la palabra formada por los bytes 0 y 1. Los PLC Moeller PS3/PS4 del caso de estudio usan casi la misma notación: I0.0…I0.15, IB0.0 e IW0.

Una misma zona de memoria vista como bits, bytes o palabra7654321076543210IB0 (byte 0): I0.7 … I0.0IB1 (byte 1): I1.7 … I1.0IW0 (palabra de 16 bits)Ejemplo con la convención IEC/Siemens: %I0.3 es el bit 3 del byte 0 de entradas
Figura 12. Direccionamiento por bit, byte y palabra de una misma zona de la imagen de entradas.

Los PLC modernos trabajan además con variables simbólicas (tags): el programa usa nombres como Banda_Marcha o Presion_Tanque con tipos de datos de la IEC 61131-3 (BOOL, INT, DINT, REAL, TIME, STRING). La dirección física se asigna una sola vez en la configuración del hardware. Un programa con nombres claros se documenta solo y se puede trasladar a otro hardware.

Lenguajes de programación IEC 61131-3

Antes de la normalización cada fabricante tenía su propio lenguaje, y un programa no se podía trasladar ni siquiera conceptualmente. La IEC 61131-3 unificó los lenguajes, los tipos de datos y la organización del software en unidades de programa (POU): funciones, bloques de función y programas. La Figura 13 muestra la misma lógica de arranque y paro en cada lenguaje.

LD · Diagrama de escaleraMarchaParoMotorMotorFBD · Diagrama de bloques de funciónOR≥1AND&MarchaMotorParoMotor(el círculo indica negación)ST · Texto estructuradoMotor := (Marcha OR Motor) AND NOT Paro;IL · Lista de instrucciones (retirada en 2025)LD MarchaOR MotorANDN ParoST MotorSFC · Diagrama de funciones secuenciales (estructura de secuencias)S0ReposoInicioS1LlenarNivel altoS2Mezclart ≥ 30 sS3Vaciar
Figura 13. La función Motor = (Marcha OR Motor) AND NOT Paro escrita en escalera (LD), bloques de función (FBD), texto estructurado (ST) y lista de instrucciones (IL). Abajo, una secuencia en SFC: cada etapa activa sus acciones y avanza cuando se cumple su transición.
LenguajeTipoSe parece aUso recomendado
LD · Diagrama de escaleraGráficoEsquema eléctrico de relésLógica booleana, enclavamientos, diagnóstico por mantenimiento
FBD · Bloques de funciónGráficoCircuito de compuertas y diagramas de bloquesControl de procesos, lazos PID, lógica combinacional
ST · Texto estructuradoTextualPascalCálculos, manejo de datos, algoritmos y bloques reutilizables
SFC · Funciones secuencialesGráficoGRAFCET (IEC 60848)Secuencias por etapas, modos de operación, procesos por lotes
IL · Lista de instruccionesTextualEnsambladorSolo programas heredados: obsoleto desde 2013 y retirado en 2025

Tabla 1.5. Lenguajes de la familia IEC 61131-3.

Un proyecto real combina lenguajes: SFC para la secuencia de la máquina, LD para los enclavamientos que el personal de mantenimiento revisará con el equipo en línea, y ST para los cálculos. El lenguaje IL merece mención porque abunda en equipos antiguos; el proyecto del robot de la Sección 1.11, por ejemplo, se programó en lista de instrucciones con SUCOSOFT. Para sistemas distribuidos existe además la norma IEC 61499, basada en bloques de función activados por eventos.

Instrucciones básicas

Con un puñado de instrucciones se resuelve la mayor parte de la lógica de una máquina:

InstrucciónSímbolo LDFunción
Contacto normalmente abierto─| |─Pasa la condición si el bit vale 1
Contacto normalmente cerrado─|/|─Pasa la condición si el bit vale 0
Bobina─( )─Escribe en el bit el resultado del escalón
Set / Reset─(S)─ ─(R)─Pone el bit en 1 o en 0 y lo mantiene (memoria)
Flanco de subida / bajada─|P|─ ─|N|─Es verdadero un solo scan cuando el bit cambia
TemporizadoresTON, TOF, TPRetardo a la conexión, a la desconexión y pulso de duración fija
ContadoresCTU, CTD, CTUDCuentan flancos hacia arriba, hacia abajo o en ambos sentidos
Comparación y movimiento=, <, >, MOVEComparan y copian valores numéricos

Tabla 1.6. Instrucciones básicas.

En lógica de contactos, los contactos en serie forman un AND y en paralelo forman un OR. Un mismo bit puede usarse como contacto todas las veces que se necesite, pero cada bobina debe escribirse una sola vez en el programa. Si dos escalones escriben la misma salida, gana el último que se ejecuta en el ciclo, y el resultado parece aleatorio a quien depura el programa.

INTON QTOF QTP QPTPTPTTiempo programado PT = 4 unidadespulso corto: TON no responde
Figura 14. Comportamiento de los tres temporizadores IEC ante la misma entrada. TON activa su salida si IN se mantiene durante PT; TOF la mantiene activa durante PT después de que IN cae; TP genera un pulso de duración PT en cada flanco de subida, sin importar cuánto dure IN.
Ejemplo 1.3 · Arranque y paro a prueba de fallas

El botón de paro de la Figura 3 se cablea con su contacto normalmente cerrado a la entrada %I0.0. Con el botón en reposo la entrada vale 1, así que en el programa se usa un contacto NA de %I0.0: el escalón conduce mientras el botón no se pulse.

Botón en reposo → circuito cerrado → %I0.0 = 1 → el motor puede operar Botón pulsado → circuito abierto → %I0.0 = 0 → el motor se detiene Cable cortado o flojo → circuito abierto → %I0.0 = 0 → el motor se detiene

Si el paro se cableara con un contacto NA, un cable roto dejaría la máquina sin forma de detenerla con ese botón, y nadie lo notaría hasta necesitarlo. Este principio, que una falla del cableado lleve al estado seguro, es la base del diseño a prueba de fallas. El paro de emergencia, sin embargo, no debe depender solo del programa (Sección 1.14).

Del problema al programa

El error más común del principiante es abrir el software y empezar a dibujar escalones. Un programa de PLC confiable sale de un método, sobre todo cuando lo heredará otra persona.

Especificaciónqué debe hacery qué no1Lista de E/Sdirecciones,tipo, rango2SecuenciaGRAFCET / SFCestados3ProgramaLD · ST · FBDcomentado4SimulaciónPLC virtualpruebas en vacío5FAT · SATpruebas enfábrica y sitio6Arranquedocumentacióny respaldo7las fallas encontradas regresan al programa
Figura 15. Flujo de desarrollo de una aplicación. Las pruebas de aceptación en fábrica (FAT) y en sitio (SAT) cierran el ciclo antes de la entrega.
Ejemplo 1.4 · Estación de marcado sobre una banda

Especificación. Una banda transporta cajas. Cuando una caja llega bajo el marcador, la banda se detiene, un cilindro baja durante 1 s para marcarla, sube y la banda reanuda. Un botón de marcha y uno de paro gobiernan el ciclo.

Lista de E/S.

DirecciónSímboloDescripciónTipo
%I0.0ParoBotón de paro (cableado NC)DI
%I0.1MarchaBotón de marcha (NA)DI
%I0.2B1_CajaSensor fotoeléctrico de caja en posiciónDI · PNP
%I0.3B2_ArribaSensor magnético de cilindro arribaDI · PNP
%Q0.0KM_BandaContactor del motor de la bandaDO
%Q0.1Y1_BajarElectroválvula monoestable del marcadorDO

Secuencia. S0 reposo → (Marcha) → S1 banda en marcha → (B1_Caja) → S2 bajar marcador y arrancar TON de 1 s → (tiempo cumplido) → S3 subir → (B2_Arriba) → S1. Paro lleva a S0 desde cualquier etapa. En texto estructurado, el núcleo queda así:

CASE Etapa OF 0: IF Marcha AND Paro THEN Etapa := 1; END_IF; 1: IF B1_Caja THEN Etapa := 2; END_IF; 2: IF T_Marca.Q THEN Etapa := 3; END_IF; 3: IF B2_Arriba AND NOT B1_Caja THEN Etapa := 1; END_IF; END_CASE; IF NOT Paro THEN Etapa := 0; END_IF; (* Paro cableado NC *) T_Marca(IN := (Etapa = 2), PT := T#1s); KM_Banda := (Etapa = 1) OR ((Etapa = 3) AND B2_Arriba); Y1_Bajar := (Etapa = 2);

Las salidas se escriben una sola vez y se calculan a partir de la etapa; las transiciones solo cambian la etapa. Esa separación hace al programa fácil de leer y de ampliar. Antes de conectar la banda, la secuencia se prueba en un simulador forzando las entradas.

Caso de estudio: un robot controlado por PLC

En la Maestría en Electrónica del Instituto Tecnológico de Mexicali, el autor y Rigoberto Casillas desarrollaron el proyecto Control de un robot manipulador de 4 grados de libertad utilizando un PLC (2003). El controlador fue un Klöckner-Moeller Sucos PS3/PS4 programado en lista de instrucciones con el software SUCOSOFT, conectado a la PC por RS-485. Hoy Moeller forma parte de Eaton. El caso ilustra bien los conceptos de este tema, porque se trata de un PLC pequeño con recursos muy limitados.

Recurso del PS3ValorConsecuencia para el diseño
CPU8031 de 8 bits; acumulador, pila de 8 bits, registro auxiliar y banderas Z y CProgramación cercana al ensamblador
Entradas digitales16 (I0.0–I0.15)Finales de carrera, botones y señales de posición
Entradas analógicas4 con ADC de 8 bitsResolución de 1/256 ≈ 0.39 % del rango
Salidas digitales8 a reléExactamente dos por motor para 4 motores
Marcas36 palabras = 576 bitsMemoria de trabajo escasa: hay que planearla
Temporizador TR32 módulos, 0.1–6553.5 s, base 0.1 sContador de 16 bits: 65 535 cuentas de 0.1 s

Tabla 1.7. Recursos del PLC usado en el proyecto, según el reporte original.

Cada motor de CD del brazo debía girar en ambos sentidos. La solución del plano original usa una fuente dividida (dos fuentes en serie con el punto medio como común) y dos salidas a relé por motor: una conecta el motor a +V y la otra a −V. La Figura 16 redibuja ese plano, que se conservó incompleto.

Módulo de salidasa relé (PS3/PS4)+V−VQ3.0Q3.1AbaseQ3.2Q3.3BhombroQ3.4Q3.5CcodoQ3.6Q3.7Dpinza0 V++Fuente dividida: el punto medio (0 V) es el común de los motoresTabla de verdadQ3.0 → A gira +Q3.1 → A gira −ambas OFF → paro¡ambas ON →cortocircuito!
Figura 16. Interfaz de potencia del robot, redibujada e interpretada a partir del plano original de 2003. Se conservan las direcciones Q3.x del plano. La asignación de los motores a cada eje es ilustrativa.
Ejemplo 1.5 · El enclavamiento que no puede faltar

Si Q3.0 y Q3.1 se cierran al mismo tiempo, +V y −V quedan unidas a través de los dos contactos: es un cortocircuito directo de la fuente completa, que suelda contactos y daña la fuente. Ocurre por un error de programa, pero también en una inversión de giro aunque el programa sea correcto, porque el relé que abre tarda unos milisegundos en separar sus contactos mientras el otro ya cierra. Se necesitan tres capas de protección:

  1. Enclavamiento en el programa: cada salida lleva en su escalón un contacto NC de la opuesta.
    Q3.0 := Avance_A AND NOT Q3.1; · Q3.1 := Retroceso_A AND NOT Q3.0;
  2. Tiempo muerto al invertir: un TON de 50–100 ms con ambas salidas apagadas. Da tiempo a que el contacto abra y a que el motor deje de girar antes de aplicarle la polaridad contraria.
  3. Protección de hardware: un fusible por fuente y, si se usan contactores, el enclavamiento eléctrico con sus contactos auxiliares NC, que funciona aunque el PLC falle.

El mismo problema aparece en cualquier puente H o en el arranque con inversión de giro de un motor trifásico con dos contactores.

El caso deja otras dos lecciones. El ADC de 8 bits limita cualquier medición analógica de posición a 256 niveles: en un eje de 270° eso es poco más de 1° por cuenta. Además, controlar posición encendiendo y apagando relés da un movimiento brusco y de baja repetibilidad. Hoy la misma tarea se resolvería con servoaccionamientos comandados por red desde el PLC, un tema que corresponde a la robótica industrial.

Comunicaciones e integración

El PLC rara vez trabaja aislado. Ocupa el nivel de control de la pirámide de automatización (ISA-95): debajo de él están los sensores y actuadores, y encima los sistemas de supervisión y de gestión.

ERPNivel 4 · EmpresaMES · historiadorNivel 3 · ManufacturaSCADA · HMINivel 2 · SupervisiónPLC · PAC · drivesNivel 1 · Controlsensores · actuadoresNivel 0 · CampoRedes típicas en cada nivelEthernet TI · OPC UA · MQTTOPC UA · bases de datosPROFINET · EtherNet/IP · Modbus TCPPROFINET · EtherNet/IP · EtherCATIO-Link · E/S cableadas · 4–20 mA · HART
Figura 17. El PLC en la pirámide de automatización y las redes más comunes en cada nivel.
Red o protocoloMedioUso típico
Modbus RTU / Modbus TCPRS-485 / EthernetAbierto y sencillo; medidores, variadores, equipos de terceros
PROFINETEthernetE/S remotas, variadores y movimiento; ecosistema Siemens y otros
EtherNet/IPEthernetE/S y variadores; ecosistema Rockwell y otros
EtherCATEthernetMovimiento sincronizado de alta velocidad
IO-LinkPunto a punto, 3 hilosSensores y actuadores inteligentes con parámetros y diagnóstico
OPC UA · MQTTEthernet, TCP/IPIntercambio de datos con SCADA, MES, bases de datos y nube

Tabla 1.8. Redes y protocolos frecuentes alrededor del PLC.

Dos ideas son útiles desde el principio. Las E/S remotas o distribuidas permiten colocar los módulos junto a la máquina y llevar un solo cable de red al tablero, en vez de cientos de conductores. Y la HMI no debe escribir directamente en las salidas: debe escribir órdenes que el programa valida antes de actuar.

Tipos de controladores y selección

Bajo el nombre genérico de PLC conviven controladores muy distintos:

  • Relé programable: 8 a 40 E/S, pantalla integrada y programación por bloques. Sirve para mandos sencillos, alumbrado y bombas.
  • PLC compacto y modular: el núcleo de la automatización de máquinas.
  • PAC (Programmable Automation Controller): PLC de alto desempeño con capacidades de PC, para movimiento, procesos y gran volumen de datos.
  • PLC basado en PC (soft PLC): el programa IEC 61131-3 corre en una PC industrial con un núcleo de tiempo real. Ejemplos: CODESYS y TwinCAT.
  • PLC de seguridad: hardware redundante y certificado para funciones de seguridad (paros de emergencia, cortinas de luz, puertas), hasta SIL 3 o PL e.
  • DCS: sistema de control distribuido, orientado a plantas de proceso continuo con miles de lazos.
FabricanteFamilias representativasSoftware
SiemensLOGO!, S7-1200 (G2 desde 2025), S7-1500TIA Portal
Rockwell Automation (Allen-Bradley)Micro800, CompactLogix, ControlLogixCCW, Studio 5000
Mitsubishi ElectricMELSEC iQ-F, iQ-RGX Works
OmronCP, NX/NJCX-Programmer, Sysmac Studio
Schneider Electric (Modicon)M221, M241/M251, M340, M580EcoStruxure Machine Expert, Control Expert
BeckhoffCX (PC embebida)TwinCAT
Keyence · Eaton · Delta · otrosSerie KV · easyE4, XC · DVP, ASPropios o basados en CODESYS

Tabla 1.9. Fabricantes y familias de referencia. La oferta cambia: confirme la vigencia de cada familia con el fabricante.

Los criterios de selección, en el orden en que suelen decidir:

  1. Número y tipo de E/S, más una reserva de 20–30 % para cambios y crecimiento.
  2. Funciones especiales: contadores rápidos, salidas de pulsos, control de ejes, PID, seguridad integrada.
  3. Comunicaciones que exigen la planta y los equipos que hay que integrar.
  4. Desempeño: memoria de programa y de datos, tiempo de ciclo requerido.
  5. Ambiente: temperatura, vibración, grado de protección del tablero, certificaciones (UL, CE, zonas peligrosas).
  6. Ecosistema: estándar de la planta, repuestos, soporte local, capacitación del personal y costo del software.
Ejemplo 1.6 · Dimensionar E/S y fuente de 24 V

Una máquina necesita 22 DI, 14 DO, 3 AI y 1 AO. Tiene 22 sensores de 30 mA y 14 electroválvulas de 4.8 W, de las que como máximo 8 operan a la vez. La CPU y los módulos consumen 0.4 A de la fuente de 24 V. Dimensione las E/S con 25 % de reserva y la fuente con 25 % de margen.

E/S con reserva: DI 22·1.25 = 27.5 → 28 DO 14·1.25 = 17.5 → 18 AI 3·1.25 = 3.75 → 4 AO 1·1.25 = 1.25 → 2 Corriente: electroválvula = 4.8 W / 24 V = 0.20 A → 8 · 0.20 = 1.60 A sensores = 22 · 0.030 = 0.66 A; CPU y módulos = 0.40 A total = 2.66 A → con margen: 2.66 · 1.25 = 3.3 A → fuente de 5 A

Una configuración posible es una CPU compacta de 14 DI/10 DO más un módulo de 16 DI, uno de 8 DO y uno mixto de 4 AI/2 AO: quedan 30 DI, 18 DO, 4 AI y 2 AO. Conviene separar la alimentación de las salidas de la de la CPU y los sensores, para que un cortocircuito en una válvula no reinicie el controlador.

Seguridad y buenas prácticas

Principio · El programa no es una protección de seguridad

Un PLC estándar puede fallar con sus salidas activadas: un transistor en corto, un contacto soldado o un error de programa. Por eso el paro de emergencia y las demás funciones de seguridad (puertas, cortinas de luz, tapetes) se implementan con un relé de seguridad o un PLC de seguridad certificado, que cortan la energía de los actuadores por cableado. El PLC estándar solo recibe el estado de la seguridad para mostrarlo y para reiniciar la secuencia en orden.

Las normas que rigen esta parte son la IEC 60204-1 (equipo eléctrico de máquinas), la ISO 13849-1 y la IEC 62061 (seguridad funcional de los sistemas de mando). A ellas se suma la ciberseguridad: un PLC conectado a la red de planta es un objetivo. La serie IEC 62443 recomienda segmentar la red, controlar el acceso con contraseñas y roles, deshabilitar servicios que no se usen y mantener el firmware actualizado.

Buenas prácticas que distinguen un programa profesional:

  • Nombres simbólicos, comentarios en cada red o bloque y una lista de E/S como documento vivo.
  • Estructura modular: un bloque por equipo (banda, cilindro, bomba) y una secuencia por estación.
  • Estado seguro definido al arrancar, al pasar a STOP y al perder comunicación.
  • Alarmas con causa clara («B2 no detecta cilindro arriba en 2 s»), no solo «falla de estación».
  • Control de versiones y respaldo del programa junto con la configuración del hardware.
  • Pruebas documentadas: cada entrada y cada salida verificadas punto por punto antes de probar la secuencia.

Resumen

  • El PLC es un controlador digital industrial que lee entradas, ejecuta un programa del usuario y actúa sobre salidas. Nació en 1968–1969 para sustituir los tableros de relés.
  • Su hardware se compone de fuente, CPU con memoria y sistema operativo, módulos de E/S y comunicaciones, en formatos compacto, modular o de rack.
  • Las entradas de 24 V se cablean como sumidero (PNP) o fuente (NPN). Las salidas pueden ser a relé, transistor o triac, y las señales analógicas de 4–20 mA se escalan con una recta.
  • El ciclo de scan trabaja con imágenes de proceso. El tiempo de respuesta en el peor caso es aproximadamente el filtro más dos ciclos más el retardo de salida.
  • La IEC 61131-3 define LD, FBD, ST y SFC; la lista de instrucciones se retiró en 2025.
  • Contactos, bobinas, set/reset, flancos, temporizadores y contadores resuelven la mayor parte de la lógica de una máquina. Cada bobina se escribe una sola vez.
  • Un buen programa sale de un método: especificación, lista de E/S, secuencia, programa, simulación y pruebas.
  • Las funciones de seguridad se implementan con equipo certificado, no con el programa estándar.

Glosario español / inglés

Controlador lógico programable · autómata programable
Programmable logic controller (PLC)
Lógica cableada
Hard-wired (relay) logic
Captador · accionador
Sensor · actuator
Entrada / salida digital
Digital input / output (DI / DO)
Entrada sumidero · entrada fuente
Sinking input · sourcing input
Diodo de rueda libre
Flyback (freewheeling) diode
Lazo de corriente de 4–20 mA
4–20 mA current loop
Ciclo de scan · tiempo de ciclo
Scan cycle · scan time
Imagen de proceso
Process image (I/O image table)
Perro guardián
Watchdog timer
Marca · relé interno
Memory bit · internal relay (flag)
Memoria retentiva
Retentive memory
Variable simbólica
Tag
Diagrama de escalera
Ladder diagram (LD)
Diagrama de bloques de función
Function block diagram (FBD)
Texto estructurado
Structured text (ST)
Diagrama de funciones secuenciales
Sequential function chart (SFC)
Enclavamiento · autorretención
Interlock · seal-in (latch) circuit
Flanco de subida · de bajada
Rising edge · falling edge
Temporizador con retardo a la conexión
On-delay timer (TON)
Temporizador con retardo a la desconexión
Off-delay timer (TOF)
Entradas y salidas remotas
Remote (distributed) I/O
Prueba de aceptación en fábrica · en sitio
Factory / site acceptance test (FAT / SAT)
Paro de emergencia
Emergency stop (E-stop)
Relé de seguridad
Safety relay

Referencias

Libros

  1. Bolton, W. Programmable Logic Controllers, 6.ª ed. Newnes, 2015.
  2. Petruzella, F. D. Programmable Logic Controllers, 5.ª ed. McGraw-Hill, 2016.
  3. John, K.-H. y Tiegelkamp, M. IEC 61131-3: Programming Industrial Automation Systems, 2.ª ed. Springer, 2010.
  4. Mandado Pérez, E., Marcos Acevedo, J., Fernández Silva, C. y Armesto Quiroga, J. I. Autómatas programables y sistemas de automatización, 2.ª ed. Marcombo, 2009.
  5. Balcells, J. y Romeral, J. L. Autómatas programables. Marcombo, 1997.
  6. Hackworth, J. R. y Hackworth, F. D. Programmable Logic Controllers: Programming Methods and Applications. Prentice Hall, 2004.

Normas

  1. IEC 61131-1. Programmable controllers — Part 1: General information.
  2. IEC 61131-2. Programmable controllers — Part 2: Equipment requirements and tests (edición vigente).
  3. IEC 61131-3:2025, ed. 4. Programmable controllers — Part 3: Programming languages.
  4. IEC 61499. Function blocks, partes 1 a 4.
  5. IEC 60204-1. Safety of machinery — Electrical equipment of machines — Part 1: General requirements.
  6. ISO 13849-1:2023. Safety of machinery — Safety-related parts of control systems.
  7. IEC 62443 (serie). Security for industrial automation and control systems.
  8. NAMUR NE 43. Standardization of the signal level for the failure information of digital transmitters.

Material original y fuentes en línea

  1. Topete, D. y Casillas, R. Control de un robot manipulador de 4 grados de libertad utilizando un PLC. Reporte de proyecto, Maestría en Electrónica, Instituto Tecnológico de Mexicali, 2003.
  2. Ortega, J. Curso de PLC's, entrega 1 (Omron CQM1, Syswin). Publicación en línea, ca. 2002.
  3. Keyence. Visual KV Series — Introductory Manual, caps. 1–5.
  4. Triangle Research International. Internet TRiLOGI — Ladder Logic and TBASIC Help, 2002.
  5. Control Engineering. How programmable logic controllers emerged from industry needs. controleng.com
  6. IEC. IEC 61131-3:2025 — Programmable controllers — Part 3: Programming languages, ficha del catálogo. webstore.iec.ch
  7. PLCopen. IEC 61131-3: a standard programming resource. plcopen.org

© David Topete. Las figuras de este tema son ilustraciones vectoriales elaboradas para esta obra; se adaptan a la pantalla y al modo claro u oscuro, y se imprimen sin pérdida de calidad. La Figura 6 usa fotografías del material original del autor, ampliadas y con nitidez mejorada. La Figura 16 redibuja el plano del proyecto de 2003. Los tiempos, consumos y rangos de los ejemplos son ilustrativos: en un proyecto real deben tomarse de las hojas de datos del fabricante y de la edición vigente de cada norma.