Caso de estudio · Acceso a un parking · PLC M-Duino
Una tarjeta en la barrera. El PLC conoce a cada usuario.
Tarjetas RFID en el parking de una empresa, con la lista en el propio PLC.
La barrera de un parking tiene que responder delante del coche, siempre.
Por eso la comprobación se hace en la barrera: el PLC busca la tarjeta en su propia copia de la lista de usuarios.
Este caso describe un proyecto real para el parking de una empresa. No se cita al cliente. El material original da la arquitectura: un lector RFID RC522, un PLC M-Duino 19R con Ethernet y la lista de usuarios en su tarjeta SD, un panel TouchBerry Pi de 10,1" en un enlace serie, un servidor con la lista maestra y el motor de la barrera. No publica el programa, el número de usuarios ni el protocolo con el servidor. Los paneles, números de tarjeta, tiempos y mensajes de esta página son ejemplos de una forma típica de hacerlo.
El reto
Un solo controlador en la barrera. Una lista de usuarios que cambia en la oficina.
La empresa quería controlar el acceso a su parking con tecnología Open Source y un solo PLC. Ese PLC debe conocer a todos los usuarios registrados, aceptar cambios en la lista a distancia, actuar sobre la barrera y permitir seguir todo el proceso.
Leer la tarjeta
Cada usuario tiene una tarjeta personal con una referencia única. El lector debe detectarla cada vez que un conductor la acerca.
Comprobarla en la lista
El PLC decide si la referencia es de un usuario registrado. Solo entonces se abre la barrera.
Cambiar la lista desde la oficina
Los usuarios se dan de alta y de baja en un servidor. Cada cambio debe llegar al PLC sin ir a la barrera.
Mostrar al conductor qué pasa
Un panel junto al lector muestra el proceso de lectura mientras el conductor espera en la barrera.
Open Source y un solo controlador
El cliente pidió tecnología Open Source y un PLC que conociera a todos los usuarios, se pudiera modificar a distancia, moviera la barrera y permitiera supervisar el proceso. La respuesta fue un PLC M-Duino con Ethernet basado en Arduino, con el lector RFID, el panel y el servidor a su alrededor.
Cómo funciona
Tres pasos: leer y decidir, mantener la lista al día, mostrar y registrar.
Cada panel muestra un paso. Pulsa los botones. Los paneles son simulaciones ilustrativas: los números de tarjeta, las versiones de la lista, los tiempos y los mensajes son ejemplos, no datos de la instalación.
Una tarjeta en el lector. Un sí o un no del PLC, delante del coche.
El lector RC522 envía al PLC por SPI la referencia única de la tarjeta, su UID. El PLC la busca en la lista de usuarios de su tarjeta microSD. Si la tarjeta está, el PLC activa su salida al motor de la barrera hasta que la barrera está abierta del todo, y después la cierra. Si no está, la barrera sigue cerrada. Elige una tarjeta y acércala.
- UID leído por SPI desde el RC522
- Búsqueda en la lista local, sin consultar al servidor
- Salida al motor solo con una tarjeta registrada
Pasos del PLC (ejemplo)
Simulación ilustrativa. Valores de ejemplo, no datos de la instalación. Tiempos de ejemplo, más rápidos que en la realidad. Una forma típica de hacerlo: la salida al motor sigue activa hasta que un final de carrera indica que la barrera está abierta del todo; la barrera se cierra tras un tiempo fijado.
La oficina cambia la lista. El PLC actualiza su tarjeta SD.
La lista maestra de usuarios está en un servidor. Cuando alguien da de alta o de baja a un usuario, el servidor avisa al PLC, y el PLC actualiza la lista local de su tarjeta microSD. Como la lista es local, un corte de red no para la barrera: en un diseño típico el PLC sigue con su última lista y recoge los cambios cuando vuelve el enlace. Da de alta a un usuario, da de baja a otro, corta la red y prueba las tarjetas. Para ver un PLC que recibe órdenes de una tabla de base de datos, y qué hace cuando se pierde el enlace, abre el simulador de control de compuertas.
- Lista maestra en el servidor, copia local en la tarjeta SD
- El servidor avisa al PLC cuando cambia la lista
- Última lista en uso mientras no hay red
Cambios en la lista (ejemplo)
Simulación ilustrativa. Valores de ejemplo, no datos de la instalación. Lista y versiones de ejemplo. El caso no publica cómo avisa el servidor al PLC. Una forma típica de hacerlo: un mensaje con la nueva versión de la lista; el PLC descarga la lista y sustituye su archivo en la SD solo cuando el archivo nuevo está completo.
El conductor ve cada paso. La oficina puede ver cada lectura.
Un Panel PC junto al lector está conectado al PLC por un puerto serie (UART). Muestra el proceso de lectura: tarjeta leída, usuario encontrado o no, barrera abriéndose. Un añadido típico: el PLC envía además cada lectura al servidor con la hora de su reloj de tiempo real, y guarda las lecturas en la tarjeta SD mientras no hay red. Acerca una tarjeta, corta la red y vuelve a acercarla.
- Panel PC en el puerto serie del PLC
- Un mensaje para cada paso de la lectura
- Ejemplo: cada lectura al servidor, guardada en la SD sin red
Lecturas (ejemplo)
Simulación ilustrativa. Valores de ejemplo, no datos de la instalación. Mensajes y horas de ejemplo. El caso dice que el panel muestra el proceso de lectura. Registrar cada lectura en el servidor es un añadido típico, no un dato publicado.
Arquitectura del sistema
¿Cómo funciona un control de acceso RFID a un parking con un PLC?
El esquema original marca el enlace del lector como SPI/I2C/Wiegand 26 (mira las preguntas más abajo) y el accionamiento de la barrera como un servomotor con una señal ON/OFF. En el M-Duino, SPI es también el bus de la tarjeta microSD. El Panel PC está en un puerto serie (UART). Ethernet va por un router al servidor con la lista maestra. Un añadido típico, que no está en el esquema: un final de carrera que indica al PLC que la barrera está abierta del todo.
| Señal | Entre | Tipo | Para qué |
|---|---|---|---|
| Referencia de la tarjeta (UID) | EntreLector RC522 → PLC | TipoSPI | Para quéQuién está en la barrera |
| Lista de usuarios | EntreTarjeta microSD ↔ PLC | TipoSPI, en el PLC | Para quéCopia local de las tarjetas registradas |
| Abrir la barrera | EntrePLC → motor de la barrera | TipoSalida digital (ON/OFF) | Para quéAbrir con una tarjeta registrada y después cerrar |
| Barrera abierta del todo (ejemplo) | EntreFinal de carrera → PLC | TipoEntrada digital | Para quéCorta la orden de abrir. El caso no publica esta señal |
| Estado de la lectura | EntrePLC → Panel PC | TipoSerie (UART) | Para quéMensajes para el conductor en la barrera |
| Cambios en la lista | EntreServidor → PLC | TipoEthernet | Para quéAltas y bajas de usuarios desde la oficina |
| Lecturas (ejemplo) | EntrePLC → servidor | TipoEthernet | Para quéUn registro de cada lectura con su hora |
Por qué funciona
La decisión en la barrera. La lista en un solo sitio.
La comprobación es local
El PLC tiene toda la lista de usuarios en su tarjeta microSD. No pregunta a un servidor cada vez que llega un coche, así que la respuesta no depende de la red.
Una sola lista maestra
Los usuarios se gestionan en el servidor. El PLC solo guarda una copia y la actualiza cuando el servidor le avisa de que la lista ha cambiado.
Un lector habitual en un bus estándar
El RC522 se comunica por SPI, y una librería Open Source lee sus tarjetas desde el Arduino IDE. Mira cómo leer etiquetas RFID con el RC522 y un PLC M-Duino.
Relés para la orden de la barrera
El M-Duino 19R tiene 8 salidas de relé, de 4 A a 230 Vac o 2 A a 24 Vdc con carga resistiva. Un contacto de relé puede dar la orden de abrir al controlador de la barrera. Sus 6 entradas dejan sitio para un final de carrera o un detector de vehículos.
Cada evento con su hora
El M-Duino tiene reloj de tiempo real y ranura microSD, así que puede poner hora a cada lectura y guardarla en local.
Open Source que el equipo puede cambiar
El programa se escribe en el Arduino IDE. El cliente pidió tecnología Open Source, así que su propio equipo puede leer y cambiar la lógica.
Hardware utilizado
Un PLC Ethernet en la barrera y un panel para el conductor.
M-DUINO ETHERNET PLC ARDUINO 19R
Un PLC basado en Arduino Mega 2560 para carril DIN con 17 E/S, 8 de ellas de relé, Ethernet, SPI, RS-485 y RS-232, reloj de tiempo real y ranura microSD. En este caso lee el lector RFID, guarda la lista de usuarios en su tarjeta SD, habla con el panel por un puerto serie y con el servidor por Ethernet, y da la orden de abrir al motor de la barrera.
- Función
- Comprobar la tarjeta, lista de usuarios, orden a la barrera, enlace con panel y servidor
- Entradas
- 6: 4 analógicas/digitales (0-10 V, 10 bits), 2 digitales optoaisladas (5 a 24 Vdc), 2 con interrupción
- Salidas
- 11: 8 relés (4 A a 230 Vac, 2 A a 24 Vdc, carga resistiva), 3 analógicas/digitales/PWM (0-10 V)
- Comunicaciones
- Ethernet (W5500, 10/100), RS-485, RS-232, serie TTL, I2C, SPI
- Integrado
- Reloj de tiempo real, ranura microSD, USB
- Alimentación y montaje
- 12 a 24 Vdc, carril DIN TS35, IP20, 0 a 60 °C
La página original cita el M-Duino 19R (salidas de relé) entre los productos de este caso, y su imagen principal muestra un M-Duino 58. La imagen y el enlace muestran el M-DUINO ETHERNET PLC ARDUINO 19R, la versión actual de ese modelo. Para una carga inductiva, como la bobina de un contactor, añade un filtro RC adecuado a la carga.
TouchBerry Pi Panel PC 10.1" FLEX
La página original cita un TouchBerry Pi de 10,1" con Raspberry Pi 4B, en el puerto serie del PLC. El TouchBerry Pi Panel PC 10.1" FLEX es la versión actual: una Raspberry Pi 4 detrás de una pantalla táctil de 10,1", con un puerto serie y Ethernet Gigabit.
- Función
- Mensajes para el conductor en la barrera
- Pantalla
- 10,1" IPS, 1280 x 800, capacitiva, 900 nits
- Puerto serie
- Uno: RS-485, RS-232 o TTL, a elegir en el pedido
- Frontal
- IP20, o IP65 en la versión FLEX
- Comunicaciones
- Ethernet Gigabit, 4 USB, I2C, SPI
- Alimentación
- 12 a 24 Vdc, SAI para un apagado seguro, 0 a 45 °C
La imagen muestra el TouchBerry Pi Panel PC 10.1" FLEX, no el equipo de la instalación. Para un panel en una barrera exterior, revisa la protección del frontal y el rango de temperatura en la ficha técnica.
Preguntas sobre este caso
¿Cómo lee un PLC una tarjeta RFID para el acceso a un parking?
En este caso un lector RC522 envía al PLC la referencia única de la tarjeta (su UID), y el PLC la compara con su lista de usuarios registrados. En un M-Duino, el RC522 se conecta a los pines SPI y se alimenta a 3,3 V, y la librería Open Source MFRC522 lee el UID desde el Arduino IDE. Tienes la tabla de conexiones y el código en Detectar etiquetas RFID con el lector RC522 y un PLC M-Duino.
¿Dónde está la lista de usuarios y qué pasa si cae la red?
La lista con todas las referencias de usuario está en la tarjeta microSD del PLC, y la lista maestra está en un servidor. El PLC comprueba cada tarjeta en su lista local, así que la comprobación no necesita la red. En un diseño típico, mientras no hay red el PLC sigue con su última lista y pide la más reciente cuando vuelve el enlace. Prueba un PLC que recibe órdenes de una base de datos y pierde el enlace en el simulador de control de compuertas, y mira el registro de datos sin conexión en tarjeta SD (el ejemplo es con un ESP32 PLC; la idea es la misma).
¿Cómo llega al PLC un cambio hecho en el servidor?
En este caso, cuando cambia la base de datos del servidor, se avisa al PLC y este actualiza la lista de su tarjeta SD. El caso no publica el protocolo. Una forma típica de hacerlo: el servidor envía un mensaje corto con la nueva versión de la lista, por ejemplo por MQTT; el PLC descarga la lista, la escribe en un archivo nuevo y solo la usa cuando el archivo está completo. Así, un corte a mitad nunca deja media lista. Mira órdenes remotas por MQTT con topic de respuesta (ejemplo con ESP32 PLC) y lo básico de la tarjeta SD en un PLC industrial.
¿RC522 o un lector Wiegand: cuál para una barrera?
El material original cita un RC522 y el formato Wiegand 26. Son dos cosas distintas. El RC522 es un módulo lector de 13,56 MHz que se comunica por SPI, un bus para distancias cortas dentro de un armario, así que el lector debe estar cerca del PLC. Wiegand 26 es la salida de muchos lectores de acceso autónomos: 26 bits en dos líneas de datos, pensada para un cable hasta un controlador. Si el lector está lejos del armario, elige un lector con una interfaz pensada para esa distancia y comprueba sus niveles de señal y su ancho de pulso con las entradas de la ficha técnica del PLC.
¿Qué dispositivos de seguridad trabajan junto al PLC en una barrera de parking?
El PLC da la orden de abrir y lee el estado de la barrera. A su alrededor, la barrera y su propio controlador protegen a personas y coches: fotocélulas, bandas de seguridad, detección de vehículos y limitación de fuerza, instalados según el fabricante de la barrera y las normas de tu país. Estos dispositivos siguen en el circuito de la barrera.
¿Qué partes de este caso son hechos y cuáles son ejemplos?
Hechos: el parking de una empresa, tecnología Open Source, una tarjeta personal con referencia única para cada usuario, un lector RC522, un PLC con Ethernet, una lista local de todos los usuarios en su tarjeta SD, la lista maestra en un servidor externo, el PLC actualizado cuando cambia la lista, el motor de la barrera activo hasta que la barrera está abierta del todo y después cerrada, y un Panel PC en un puerto serie que muestra el proceso de lectura. Productos que cita la página original: el M-Duino 19R y el TouchBerry Pi de 10,1"; su imagen principal muestra un M-Duino 58. Ejemplos: los números de tarjeta, los tiempos, las versiones de la lista, los mensajes, el protocolo con el servidor, el final de carrera y el registro de lecturas.
Descarga el caso de estudio
PDF de 4 páginas con el reto, la lógica, la arquitectura y el hardware. Sin formularios.
¿Controlas una barrera o una puerta?
Cuéntanos tu barrera y tus usuarios. Te responde un ingeniero.
Dinos qué lector usas o quieres usar, cuántas barreras y usuarios tienes, dónde está la lista de usuarios y qué debe hacer la barrera cuando no hay red. Te proponemos un controlador y una arquitectura.
- Te responde nuestro equipo técnico
- Lector, PLC y panel para tu barrera
- PLC basados en Arduino, ESP32 o Raspberry Pi