Comunicación LoRa entre dos Raspberry Pi PLC

Configura la comunicación por radio LoRa con el módulo RN2483A
15 de junio de 2026 por
Comunicación LoRa entre dos Raspberry Pi PLC
Boot & Work Corp. S.L, Queralt del Águila Munté

El Raspberry PLC admite módulos click opcionales para comunicaciones especializadas. Este artículo muestra cómo configurar la comunicación por radio LoRa entre dos Raspberry PLC usando el módulo RN2483A. LoRa (Long Range) es una técnica de modulación de espectro disperso que permite comunicaciones inalámbricas de bajo consumo a larga distancia, lo que la hace adecuada para aplicaciones de IoT industrial.

Configuración del hardware

Cada Raspberry PLC dispone de dos ranuras para módulos click. Las dos ranuras tienen un cableado diferente, por lo que es importante conocer a qué dispositivo serie corresponde cada una.

Click 1

  • Inserta el módulo LoRa en la ranura click 1 con su antena RFH conectada.
  • Dispositivo serie: /dev/ttySC0

Click 2

  • Inserta el módulo LoRa en la ranura click 2 con su antena RFH conectada.
  • Dispositivo serie: /dev/ttySC1
  • Verifica que los resistores de la placa coincidan con las posiciones indicadas en la imagen antes de usarlo.



Configuración del software

Antes de continuar, verifica que /boot/config.txt contenga las siguientes líneas. Si falta alguna, edita el archivo con sudo nano /boot/config.txt, guarda y reinicia.

[all]
dtparam=spi=on
gpio=8=pd
dtoverlay=spi0-1cs,cs0_pin=7
dtoverlay=w5500,cs=0,int_pin=6
dtparam=i2c_arm=on
dtoverlay=i2c-rtc,ds3231
dtoverlay=sc16is752-spi1-rpiplc-v4,xtal=14745600
enable_uart=1

A continuación, pon el pin de reset del módulo click en nivel alto. Para ello se necesita la librería librpiplc:

  1. Clona e instala librpiplc desde GitHub: git clone https://github.com/Industrial-Shields/librpiplc.git && cd librpiplc && make && sudo make install
  2. Dentro del directorio /test, compila el helper set-digital-output sustituyendo DEVICE por tu modelo de PLC (por ejemplo RPIPLC_58):
    g++ -o set-digital-output set-digital-output.cpp -L /usr/local/lib -l rpiplc -I /usr/local/include/rpiplc -D DEVICE
  3. Pon el pin de reset en alto para la ranura click correspondiente:
    sudo ./set-digital-output EXP1_RST 1    # para click 1
    sudo ./set-digital-output EXP1_RST_2 1  # para click 2

Prueba de comunicación LoRa

Esta prueba usa dos Raspberry PLC con el módulo RN2483A en la ranura click 2 (/dev/ttySC1). Abre dos terminales en cada PLC (cuatro en total).

En el primer Raspberry PLC, abre y configura el puerto, luego pon el módulo en modo recepción:

# Terminal 1 - abre el puerto a la velocidad por defecto y escucha
stty 57600 -F /dev/ttySC1
cat /dev/ttySC1

# Terminal 2 - solicita la versión de firmware
echo -e "sys get ver\r" > /dev/ttySC1

Si la versión del firmware aparece en el terminal 1 (por ejemplo: RN2483 1.0.5 Oct 31 2018 15:06:52), configura el módulo en modo recepción desde el terminal 2:

echo -e "mac pause\r" > /dev/ttySC1
echo -e "radio rx 0\r" > /dev/ttySC1

En el segundo Raspberry PLC, abre el puerto y envía un mensaje de prueba:

stty 57600 -F /dev/ttySC1
cat /dev/ttySC1

echo -e "sys get ver\r" > /dev/ttySC1
echo -e "mac pause\r" > /dev/ttySC1
echo -e "radio tx abc\r" > /dev/ttySC1

Si la transmisión tiene éxito, el PLC emisor mostrará radio_tx_ok y el PLC receptor mostrará radio_rx 0ABC. Esto confirma que la comunicación LoRa funciona correctamente entre los dos dispositivos.

Nota: el módulo RN2483A requiere que los comandos terminen con \r\n. Con echo -e se añade \r explícitamente porque al pulsar Enter solo se envía \n.

Buscar en nuestro blog

Comunicación LoRa entre dos Raspberry Pi PLC
Boot & Work Corp. S.L, Queralt del Águila Munté 15 de junio de 2026
Compartir esta publicación
Etiquetas

¿Estás buscando tu Controlador Lógico Programable ideal?

Echa un vistazo a esta comparativa de producto de varios controladores industriales basados en Arduino.

Comparamos entradas, salidas, comunicaciones y otras especificaciones con las de los equipos de otras marcas destacadas.

Comparativa de PLCs