Comunicar 2 Raspberry Pi via Modbus TCP (Master/Slave)

hace 3 años · Actualizado hace 2 años

Comunicar 2 Raspberry Pi via Modbus TCP
📋Aquí podrás Encontrar✍
  1. MODBUS
  2. Tipos de Registros en MODBUS
    1. Códigos de Función de Modbus
  3. MODBUS TCP Master en Raspberry Pi
  4. MODBUS TCP SLAVE en Raspberry PI
  5. Enlace para visualizar el procedimiento paso a paso
  6. Descarga de programas

MODBUS

Modbus es un protocolo de comunicaciones, basado en la arquitectura Maestro / Esclavo o Cliente / Servidor, diseñado para trabajar con controladores lógicos programables (PLCs).

Convertido en un protocolo de comunicaciones estándar en la industria es el que goza de mayor disponibilidad para la conexión de dispositivos electrónicos industriales. Las razones por las cuales el uso de Modbus es superior a otros protocolos de comunicaciones son:

  • Es público
  • Su implementación es fácil y requiere poco desarrollo
  • Maneja bloques de datos sin suponer restricciones

Cada intercambio de datos consiste en una solicitud del maestro, seguida de una respuesta del esclavo. Cada paquete de datos, ya sea una solicitud o una respuesta, comienza con la dirección del dispositivo o la dirección del esclavo, seguida del código de función, seguido de los parámetros que definen lo que se solicita o se proporciona. Los formatos exactos de la solicitud y la respuesta se documentan en detalle en la especificación del protocolo Modbus. 

⭐️ Antes de continuar suscríbete a nuestras Redes Sociales ⭐️

Tipos de Registros en MODBUS

Los tipos de registros o parámetros a los que se hace referencia en los dispositivos Modbus incluyen los siguientes: 

• Bobina (salida discreta) 
• Entrada discreta (o entrada de estado)
• Registro de entrada
• Registro de tenencia

Códigos de Función de Modbus

El protocolo Modbus define varios códigos de función para acceder a los registros Modbus. Hay cuatro bloques de datos diferentes definidos por Modbus, y las direcciones o números de registro en cada uno de ellos se superponen. Por lo tanto, una definición completa de dónde encontrar un dato requiere tanto la dirección (o número de registro) como el código de función (o tipo de registro). Los códigos de función más comúnmente reconocidos por los dispositivos Modbus se indican en la siguiente tabla. Este es solo un subconjunto de los códigos disponibles; varios de los códigos tienen aplicaciones especiales que la mayoría de las veces no se aplican.

Aplicaciones Premium

Suscríbete a nuestro boletín de noticias

🤖 Antes de suscribirte acepta nuestros términos y condiciones.


✅ Recuerda que al Suscríbete a nuestro boletín de noticias, recibirás por correo electrónico cada nueva publicación y también las actualizaciones de los mismos.

Códigos de Función Modbus

MODBUS TCP Master en Raspberry Pi

La Raspberry Pi 3B+ soporta el protocolo de MODBUS TCP, pudiendo configurarse con ayuda de CODESYS 3.5.16, es posible trabajar en modo maestro o esclavo. Para lograr una comunicación exitosa es importante saber que la configuración de los canales debe ser idéntica en ambos proyectos.
Después de crear un proyecto en Codesys y elegir el dispositivo CODESYS Control for Raspberry Pi se debe de agregar un dispositivo Ethernet-->Modbus_TCP_Master-->Modbus_TCP_Slave.

Codesys Modbus TCP Master

Los puntos mas importante en la configuración es la dirección IP del esclavo además de la creación de los canales, los cuales corresponden a los registros o coils que deseamos enviar/recibir con el dispositivo Slave.

Como se puede apreciar en la imagen, se utilizan los códigos de función 16, 04, 15 y 02.

Códigos de Función Modbus en Codesys

MODBUS TCP SLAVE en Raspberry PI

Ahora hay que crear un nuevo proyecto, seleccionar el dispositivo CODESYS Control for Raspberry Pi y agregar un dispositivo Ethernet-->Modbus_TCP_Slave.

Los puntos mas importantes dentro de la configuración del "Slave" es definir la cantidad correcta de Registros Holding, Registros Input, Bobinas y Entradas Discretas.

Configuración Modbus TCP Slave en Codesys

Enlace para visualizar el procedimiento paso a paso

En el siguiente video se muestra paso a paso como realizar la configuración para poder establecer una comunicación entre 2 dispositivos Raspberry Pi 3B+, lo interesante es que realizando los mismos pasos es posible establecer la comunicación con cualquier otro dispositivos que soporte este protocolo.

Comunicar 2 Raspberry Pi via Modbus TCP

Descarga de programas

Les comparto el link para poder descargar los proyectos creados durante esta práctica:

⭐️ Si quieres saber más de otros artículos parecidos a Comunicar 2 Raspberry Pi via Modbus TCP (Master/Slave) puedes visitar nuestra categoría Raspberry PI. Te esperamos dentro 👍

Entradas de Interes

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Tu puntuación: Útil

Subir