Configurar un dispositivo RS485 puede ser todo un reto. La compatibilidad entre los protocolos Modbus y RS-485 suele ser un problema. Es posible que te enfrentes a una larga sesión de depuración, ya que estos dos protocolos operan en diferentes capas de la pila de comunicaciones.
El protocolo RS485 es un estándar eléctrico que opera en la capa física de la pila. Define aspectos como la longitud del cable, los niveles de tensión aceptables y el número de dispositivos que pueden compartir un único bus.
El protocolo Modbus opera en la capa de aplicación y se centra en cómo se estructuran los mensajes, cómo se direccionan y cómo los interpreta el receptor. Necesitas saber qué capa está causando el problema para resolverlo de forma eficaz.
Diferencias entre Modbus y RS485
La siguiente tabla compara los parámetros más importantes de estos dos protocolos cruciales que afectan a su compatibilidad.
| RS485 | Modbus | |
| Capa | Física (capa 1 del modelo OSI) | Aplicación (capa 7 del modelo OSI) |
| Definido por | EIA/TIA-485 | Modicon en 1979; ahora abierto |
| Tipo | Norma eléctrica | Protocolo de comunicación |
| Topología | Bus multidrop admite hasta 32 nodos sin repetidores | Maestro/esclavo con 1 maestro y hasta 247 esclavos |
| Función | Define el cableado, los niveles de señal y otras características eléctricas | Define el mensaje, el trameado de datos y los códigos de función |
| Formato de datos | Señales de tensión diferencial | Tramas RTU (binarias) o ASCII |
| Detección de errores | No especificado | CRC (RTU) o LRC (ASCII) |
| Velocidad máx. | Hasta 10 Mbps en distancias cortas | Normalmente 9.600 – 115.200 bps con RTU/ASCII sobre RS485 |
| Distancia máx. | 1.200 m a 100 kbps | Depende de la capa física |
| Variantes | RS422 (punto a punto), RS232 (corto alcance) | Modbus RTU, Modbus ASCII, Modbus TCP/IP |
¿Qué es Modbus?
Modbus es un protocolo de comunicación de la capa de aplicación desarrollado por Modicon en 1979. Es un protocolo abierto y gratuito que define cómo se estructuran los mensajes cuando se envían entre un dispositivo maestro y uno o más esclavos. Modbus funciona sobre diversas soluciones de transporte, incluidas RS485, RS232, RS422 o Ethernet (TCP/IP).
Características clave
• Arquitectura: Un maestro se comunica con hasta 247 esclavos direccionables, numerados del 1 al 247, con el ID 0 reservado para difusión.
• Modelo de comunicación: El maestro inicia toda la comunicación enviando solicitudes a los esclavos, que solo pueden responder.
• Direccionamiento: Todas las solicitudes incluyen el ID del esclavo de destino, que es repetido por cada respuesta.
• Tipos de datos: Bobinas e entradas discretas de 1 bit, registros de entrada y de retención de 16 bits.
• Detección de errores: LRC en modo ASCII y CRC-16 en modo RTU.
Modelo de datos
• Las bobinas (1 bit, lectura/escritura) proporcionan el estado de salida discreto.
• Las entradas discretas (1 bit, solo lectura) para el estado de entrada discreto.
• Los registros de entrada (16 bits, solo lectura) almacenan los valores de entrada medidos.
• Los registros de retención (16 bits, lectura/escritura) contienen valores de configuración y de salida.
Variantes: RTU, ASCII, TCP/IP
• Modbus RTU es el estándar para su uso con RS485 debido a su velocidad y tamaño compacto. Presenta codificación binaria y comprobación de errores CRC-16.
• Modbus TCP/IP se utiliza sobre Ethernet y no necesita CRC/LRC porque TCP gestiona la integridad de la comunicación.
• Modbus ASCII utiliza codificación de caracteres hexadecimales y comprobación de errores LRC. La variante se utiliza normalmente en RS232 y es legible para los humanos.
¿Qué es RS485?
RS485 (EIA-485) es un estándar eléctrico que opera en la capa física y define cómo se transmiten las señales a través de cables. El protocolo especifica aspectos como la impedancia del cable, los niveles de tensión, la longitud máxima del cable y la topología del bus. RS485 no tiene conocimiento de los protocolos de capas superiores, los formatos de mensaje ni el contenido de los datos.
Características clave
• Señalización: La señal diferencial, o diferencia de voltaje entre los cables A y B, es altamente resistente al ruido eléctrico.
• Topología: Admite un bus multidrop con hasta 32 cargas unitarias en un único par de cables sin repetidores.
• Distancia máxima: Aproximadamente 1.200 m a 100 kbps, con alcances más cortos a mayores velocidades de transmisión de datos.
• Velocidad máxima de datos: Admite hasta 10 Mbps en distancias cortas inferiores a 15 m.
• Dúplex: El valor predeterminado es semidúplex con un par trenzado. El dúplex completo puede implementarse con dos pares.
Normas relacionadas: RS232 y RS422
• RS232 es un protocolo de un solo extremo, punto a punto, con un alcance máximo de unos 15 m. Las señales no son compatibles con RS485. Normalmente se utilizan adaptadores directos para implementaciones de RS485 a USB o de RS-485 a Ethernet.
• RS422 proporciona señalización diferencial como RS485, pero está limitado a un controlador por línea para comunicación punto a punto sin compatibilidad con multidrop.
Herramienta para supervisar y analizar datos Modbus
La resolución de problemas de comunicación requiere comprender la diferencia entre RS485 y Modbus y obtener visibilidad sobre lo que se transmite en el bus. La forma más eficaz de lograr esta visibilidad es analizar el tráfico en bruto del puerto serie. Este análisis le permite depurar problemas de forma eficiente verificando los valores de los registros y descubriendo errores de direccionamiento. Serial Port Monitor (SPM) es una solución de software que proporciona esta información.
El software de prueba Modbus es un analizador de protocolos que proporciona información sobre la comunicación Modbus a través de interfaces RS232/RS422/RS485. El software permite a los usuarios detectar y resolver fácilmente problemas al probar y depurar la comunicación Modbus. Una de sus funciones más valiosas es su capacidad para mostrar y registrar los datos que circulan a través del puerto serie de un sistema.
Software de prueba de Modbus
Modbus Analyzer permite a los usuarios visualizar, registrar y depurar datos serie Modbus RTU y ASCII a medida que se transmiten a través de los puertos RS485 de un sistema.
Este software profesional de prueba de Modbus permite a los usuarios:
• Conectarse a y supervisar puertos serie que ya están siendo utilizados por otro programa. La visualización en tiempo real de todos los datos recibidos por el puerto está disponible para la supervisión y depuración inmediatas.
• Supervisar varios puertos serie simultáneamente. Puede analizar de forma sincronizada la actividad de varios puertos serie en una sola sesión. Los datos que fluyen en ambas direcciones se presentan en un registro único en orden de primero en entrar, primero en salir para facilitar la visualización.
• Ver sus datos en varios formatos, incluidos vista de tabla, terminal, línea y volcado. Se pueden ver varias vistas al mismo tiempo, y puede usar filtros para ajustar su supervisión.
• Realizar la emulación de los datos transferidos a un dispositivo serie para supervisar la actividad cuando se expone a comandos específicos.
Preguntas frecuentes
No, son protocolos diferentes y complementarios. Modbus es un protocolo de mensajería, mientras que RS485 define la interfaz eléctrica física. RS485 es el medio por el que Modbus transmite un mensaje.
El estándar RS485 admite hasta 32 cargas unitarias en un bus sin repetidores, mientras que Modbus permite hasta 247 esclavos. Normalmente, el límite físico de 32 nodos es el estándar, con repetidores desplegados para ampliar el número de dispositivos compatibles.
Modbus RTU es un protocolo compacto y eficiente que transmite datos en binario con comprobación de errores CRC. Es el protocolo preferido para su uso con RS485. Modbus ASCII transmite datos como caracteres hexadecimales legibles por humanos y emplea comprobación de errores LRC. Es una solución menos eficiente, pero facilita una depuración optimizada en enlaces RS232.
Sí. Modbus también puede funcionar a través de conexiones RS232, RS422 o Ethernet (Modbus TCP/IP). RS485 es la capa física preferida para Modbus en entornos industriales debido a sus capacidades multidrop y su inmunidad al ruido.