bg

Consulta y registro de dispositivos MODBUS RTU en PostgreSQL

Una guía completa para leer datos de dispositivos serie MODBUS RTU y exportar los valores analizados directamente a una base de datos PostgreSQL con su estructura de base de datos.

1. Configuración del protocolo: MODBUS RTU

Tipo de comunicación: Sondeo activo (Maestro/Esclavo sobre RS485/COM)

Dado que MODBUS transmite datos en binario, el analizador debe extraer registros de retención específicos (p. ej., 40001) o registros de entrada. Si su sensor utiliza números de coma flotante de 32 bits, configure el analizador para leer dos registros adyacentes de 16 bits y aplicar el intercambio de bytes (endianness) correcto para reconstruir el valor flotante.

Aplique esta configuración base para la conexión serie:

{
  "port": "COM3",
  "baud_rate": 9600,
  "data_bits": 8,
  "stop_bits": 1,
  "parity": "none",
  "protocol": "modbus_rtu_serial",
  "poll_interval_ms": 1000
}
Selección del complemento MODBUS RTU para consultar y analizar datos.

Selección del complemento MODBUS RTU para consultar y analizar datos.

Cola de consultas MODBUS RTU: configuración personalizada para leer diferentes registros.

Cola de consultas MODBUS RTU: configuración personalizada para leer diferentes registros.

¿Listo para conectar MODBUS RTU a PostgreSQL?

2. Configuración de la base de datos: PostgreSQL

Instale el controlador ODBC de PostgreSQL (psqlODBC) en el servidor que ejecuta Advanced Serial Data Logger. Cree un DSN de sistema o utilice una cadena de conexión directa en el complemento SQL Database Professional como 192.168.1.100:mibasededatos.

Utilice el siguiente script SQL para crear su tabla de destino. Asegúrese de que su rol de usuario tenga privilegios INSERT para el esquema de destino. Utilice el tipo de datos NUMERIC para evitar la pérdida de precisión de punto flotante en los datos brutos de los sensores.

CREATE TABLE rs232_logs (
  id SERIAL PRIMARY KEY,
  log_timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  device_name VARCHAR(50),
  extracted_value NUMERIC(10, 2)
);
Selección del conector de base de datos PostgreSQL.

Selección del conector de base de datos PostgreSQL.

Configuración de conexión de la base de datos PgSQL.

Configuración de conexión de la base de datos PgSQL.

Cola SQL para insertar datos en su tabla.

Cola SQL para insertar datos en su tabla.

3. Solución de problemas específicos del protocolo

  • Errores de tiempo de espera o CRC: A diferencia de TCP, MODBUS RTU serie depende de una temporización estricta. Verifique que los cables RS485 A/B no estén invertidos y que la velocidad en baudios y el ID del dispositivo en el software coincidan exactamente con el dispositivo esclavo.
  • El dispositivo devuelve el código de error «Illegal address»: Intente usar la función #3 en lugar de la función #4 en su solicitud MODBUS. De lo contrario, verifique que esté utilizando la dirección de registro correcta. Intente especificar un offset absoluto (no una dirección lógica como 40001).
  • Tengo varios valores que deseo exportar en una sola fila de datos. Ahora el registrador escribe un valor por fila: Debe habilitar la opción «Exportar todos los datos a la vez» en la configuración del complemento MODBUS.

4. Solución de problemas específicos de la base de datos

  • FATAL: falló la autenticación de contraseña: Verifique que su archivo pg_hba.conf permita conexiones desde la dirección IP del Data Logger (si es remoto) y que el método de autenticación esté configurado como md5 o scram-sha-256.
  • Tengo dos registros similares con la misma marca de tiempo en mi base de datos para cada registro: Verifique que no esté utilizando dos complementos de exportación de datos al mismo tiempo. Por ejemplo, ODBC Database y SQL Database Pro, ya que pueden exportar sus datos en paralelo.
  • He instalado los controladores ODBC y he creado un DSN, pero su software no me permite seleccionarlo.: Nuestro software requiere controladores ODBC de 32 bits. Por lo tanto, debe instalar esta versión de controladores para crear un DSN en el Administrador ODBC de 32 bits. Puede usar el botón 'Setup' en el complemento 'ODBC Database' para hacerlo.

¿Listo para conectar MODBUS RTU a PostgreSQL?

Producto Comprar Descargar Soporte Contactos Mapa del sitio
Derechos de autor © 1999 - 2026, AGG Software.
Todos los derechos reservados.. Términos de uso | Política de privacidad