Los conversores Dragino RS485-LB y RS485-LN leen un medidor o equipo Modbus RTU por RS485 y envían sus datos por LoRaWAN. Sirven cuando el medidor de energía, el variador o el controlador está lejos de cualquier punto de red. El MS48-LR hace el camino inverso y entrega los datos de sensores LoRaWAN a un PLC como esclavo Modbus.
Los datos técnicos salen del wiki oficial de Dragino. La disponibilidad de cada modelo aparece en su ficha.
Dos direcciones distintas
Leer un equipo Modbus y mandarlo por LoRaWAN lo hacen el RS485-LB y el RS485-LN. El conversor actúa como maestro del bus RS485. Consulta al equipo, toma los bytes que interesan y los envía como uplink. El MS48-LR cumple la función contraria. Es un gateway LoRaWAN con servidor ChirpStack integrado que escribe los uplinks de sensores LoRaWAN en registros Modbus, para que un PLC los lea como si fuera un esclavo Modbus RTU o TCP. Antes de elegir, define de qué lado está tu equipo Modbus. Si es un medidor o un variador que quieres monitorear a distancia, necesitas un conversor. Si es un PLC que quiere leer sensores inalámbricos, necesitas el MS48-LR.
Qué hay que saber del equipo Modbus
Para configurar la consulta necesitas tres datos que salen del manual del equipo. El primero es la dirección del esclavo. El segundo es el código de función y los registros que quieres leer, por ejemplo la función 03 para registros de retención. El tercero son los parámetros del puerto serie, que suelen ser velocidad, paridad y bits de parada. El conversor trae por defecto 9600 baudios, sin paridad, 8 bits de datos y 1 bit de parada. Si el equipo usa otros valores, se cambian con AT+BAUDR, AT+PARITY, AT+STOPBIT y AT+DATABIT. Si necesitas repasar cómo se cablea el bus A/B, la guía de RS485 lo explica.
RS485-LB y RS485-LN: cuál elegir
Los dos son conversores de RS485 a LoRaWAN, soportan Modbus, admiten varios equipos en el bus mediante reglas flexibles y están disponibles en la banda AU915 según el wiki. Cambian en la alimentación y la clase. El RS485-LB funciona con una batería de litio Li-SOCl2 de 8.500 mAh, usa LoRaWAN 1.0.3 Clase A y se configura por Bluetooth. Tiene salidas de 3,3 V y 5 V para alimentar el sensor. De fábrica la de 3,3 V queda siempre encendida (AT+3V3T=0) y la de 5 V se enciende solo durante la lectura (AT+5VT=0). Si configuras la de 3,3 V para encenderse solo antes de cada lectura, ahorras batería en reposo. El RS485-LN se alimenta con una fuente de 7 a 24 V DC y trabaja por defecto en Clase C, con lo que recibe los comandos de bajada en cualquier momento. Si el equipo está en un tablero con alimentación, el LN permite comandos de control sin esperar a la siguiente transmisión. Si el punto no tiene energía, el LB opera con batería.
Cómo se configura la lectura Modbus
El conversor guarda hasta 15 comandos de consulta, de AT+COMMAND1 a AT+COMMANDF. Cada comando tiene hasta 14 bytes y se escribe en hexadecimal, con un indicador al final para que el conversor agregue el CRC Modbus. El wiki da este ejemplo: AT+COMMAND1=01 03 0B B8 00 02,1 consulta al esclavo 01, función 03, desde el registro 0BB8, dos registros, y agrega el CRC. Con AT+MOD=1 el conversor trabaja en modo RS485 Modbus. Dragino recomienda su herramienta de configuración RS485, y también se puede hacer por comandos AT o por downlink.
Qué viaja en el uplink
La respuesta del equipo puede ser más larga de lo que cabe en un uplink LoRaWAN, así que hay que recortarla. Para respuestas de largo fijo, AT+DATACUT toma los bytes de las posiciones que indiques. Para respuestas de largo variable, AT+SEARCH busca un prefijo, y opcionalmente un sufijo, y toma lo que viene después. Desde la versión 1.3 del firmware del RS485-LB, AT+MBFUN=1 lee las respuestas Modbus de las funciones 01, 02, 03 y 04 sin configurar DATACUT. AT+DATAUP define cómo se juntan las respuestas de los distintos comandos, en un solo uplink o en varios. El uplink lleva además la batería y un número de versión de payload (PAYVER) que tú defines, para que el servidor sepa cómo decodificar cada formato. El largo máximo del uplink depende de la velocidad de datos (data rate): con el equipo lejos del gateway caben pocos bytes, así que pide solo los registros que vas a usar.
Frecuencia de lectura y batería
El RS485-LB duerme entre lecturas y despierta en cada periodo. Según el wiki, el periodo por defecto de transmisión es de 20 minutos y se cambia con AT+TDC. Un periodo más corto gasta más batería, y un equipo que necesita alimentación antes de responder aumenta el consumo. En el RS485-LB, AT+3V3T y AT+5VT fijan en milisegundos cuánto tiempo antes de la lectura se enciende cada salida (por ejemplo AT+3V3T=1000), útil si el sensor tarda en estabilizarse. Con el valor de fábrica, 0, la salida de 3,3 V queda encendida todo el tiempo y consume batería. Para un medidor que ya tiene su propia fuente, el consumo del conversor es la transmisión LoRa y la lectura del bus.
Qué pasa si se cae la red
El RS485-LB tiene datalog desde el firmware 1.3.0. Guarda cada lectura y, cuando vuelve la red, reenvía las que quedaron sin confirmar. Requiere PNACKMD=1 y la sincronización de hora por LoRaWAN (SYNCMOD=1). La capacidad depende del tamaño de cada lectura. El wiki indica hasta 3.072 registros con lecturas de hasta 10 bytes, 1.536 con lecturas de 11 a 25 bytes y 1.024 con lecturas de 26 a 40 bytes. Con una lectura de 20 bytes y el periodo por defecto de 20 minutos, el wiki calcula unos 21 días de autonomía de registro.
Cuando el PLC debe leer sensores LoRaWAN: MS48-LR
El MS48-LR integra un gateway LoRaWAN multicanal, un servidor ChirpStack y un esclavo Modbus. Recibe uplinks de los sensores, y por cada sensor que registres le asignas un rango de registros donde se escriben los datos. El PLC los lee con la función 03 por el puerto RS485 de la propia unidad (RTU) o por la red (TCP). Cada sensor ocupa su propio rango de registros, y el wiki recomienda un largo de 12 registros o más, porque el gateway agrega la dirección del dispositivo, el contador, el RSSI y la fecha al dato del sensor. Los valores con decimales o negativos se entregan en formato IEEE 754. Se alimenta con 12 a 24 V DC. La conexión a internet es por Ethernet o WiFi, y existe una variante con módem 4G.
Cómo llega el dato al servidor
Con el RS485-LB o el RS485-LN, el uplink llega a un gateway LoRaWAN dentro del alcance, de ahí al servidor de red y a tu plataforma. Chile usa el plan AU915-928, así que conversor y gateway deben compartir plan y sub-banda. Para ver los valores legibles en The Things Network, se agrega el decodificador que Dragino publica en GitHub, adaptado al formato de payload que definiste. Para elegir el gateway, revisa la guía sobre cómo elegir el gateway LoRaWAN, y si la red es nueva para ti, la de qué es LoRaWAN.
¿Puedo leer cualquier equipo Modbus?
El conversor trabaja con equipos Modbus RTU por RS485. Un equipo que solo habla Modbus TCP por Ethernet queda fuera de este montaje. Para cada equipo necesitas su tabla de registros, porque la consulta se arma a mano. Si el equipo entrega un dato en dos o más registros (por ejemplo un valor de 32 bits), recórtalo completo con DATACUT y decodifícalo en el servidor.
¿Sirve en Chile?
Existe variante AU915, el plan que usa Chile. Los wikis del RS485-LB, del RS485-LN y del MS48-LR la listan entre sus bandas. Confirma en la ficha que el modelo sea AU915 y que el gateway use el mismo plan de canales.
Antes de cotizar
Para cotizar conversores o un gateway, ten a mano la marca y el modelo del equipo Modbus, su tabla de registros, cuántos equipos van en el bus y si el punto tiene alimentación. El enlace «Cotiza tu proyecto» está en los productos relacionados, aquí abajo.