Diferencia entre PuTTY Serial y Modbus

0

Estoy intentando comunicarme con un PM810 medidor de potencia usando el protocolo Modbus-RTU con el estándar RS-485 sobre 175 metros de cable CAT5e STP. No es ideal, pero es la situación con la que estoy trabajando.

Para facilitar las pruebas, instalé dos computadoras portátiles en cada extremo del cable de transmisión. La idea es que uno esté configurado como un maestro Modbus, el otro ejecute un servidor esclavo para emular la comunicación con el PM810. Quería publicar un diagrama de bloques para mayor claridad aquí, pero solo se me permiten dos enlaces.

  

Ordenador portátil - > Convertidor de USB a RS-485 - > 175 m de CAT5e STP - > Convertidor de USB a RS-485 - > Laptop

El problema al que me enfrento y no puedo envolver mi cabeza es el siguiente:

  1. Laptop_PuTTY - > 175m CAT5e - > La comunicación serial Laptop_PuTTY (9600 baudios, 8 bits, sin paridad, 1 parada) está bien. funciona en ambas direcciones sin ningún problema.
  2. Modbus Master - > 175m CAT5e - > Modbus Slave (9600 baudios, 8 bits, paridad par, 1 parada) falla .
  3. Modbus Master - > 1m CAT5e - > Modbus Slave (9600 baudios, 8 bits, paridad par, 1 parada) funciona bien.

Así que aquí está mi pregunta. ¿Cuál es la diferencia entre el protocolo de comunicación serial de PuTTY y el protocolo Modbus que podría estar causando que Modbus falle y que PuTTY funcione bien en los 175 metros de longitud? Ambos trabajan en la distancia más corta, el medio físico es el mismo para ambos en la distancia más larga, aunque solo funciona la serie PuTTY. Intenté buscar en Google información sobre qué es exactamente el protocolo de comunicación serial de PuTTY, pero no pude encontrar ninguna respuesta satisfactoria. Esto es del manual de PuTTY , pero realmente no entiendo lo que significa .

  

En este modo [serie], el texto escrito en la ventana de PuTTY se enviará directamente desde el puerto en serie de su computadora, y los datos recibidos a través de ese puerto se mostrarán en la ventana de PuTTY.

¿Algún consejo sobre cómo abordar este problema, o la comunicación Modbus está fuera de la cuestión?

    
pregunta Otto

2 respuestas

3

¿Ha revisado su terminación y conexión a tierra? Teóricamente a 9600 baudios no debería importar. Si utiliza masilla, probablemente escriba letra por letra. Si no hay terminación, sonará el timbre en el receptor. Puede ser que solo se reciba un carácter / segundo correctamente, pero un marco Modbus más largo no lo hace porque "choca con su reflejo".

Algunos recursos útiles:

respondido por el filo
0

PUTTY es solo una interfaz de usuario. Aplica la configuración (velocidad en baudios, etc.) a la interfaz física, y luego envía cada carácter que escriba a esta interfaz para su transmisión.

Los programas MODBus hacen exactamente lo mismo, excepto que envían un mensaje de agujero a la vez, lo más rápido posible.

Le recomendaría que probara HTerm , que es un programa para la comunicación en serie mucho mejor que PUTTY. (El sitio es alemán, pero la herramienta es en inglés, también vea las capturas de pantalla allí). Este programa no solo permite mostrar y escribir datos en hexadecimal, decimal, ascii y binario simultáneamente, sino que también requiere toda una línea de entrada para enviar a la vez. También puede ensamblar fácilmente un mensaje MODBus con HTerm, que es difícil con PUTTY. Esto también le permitiría solicitar algo al cliente MODBus a mano y verificar el mensaje recibido.

Si también recibe errores de transmisión con HTerm, seguramente tiene un problema de integridad de la señal. Por ejemplo, sin la terminación adecuada, las señales se reflejan en el otro extremo del cable e interfieren con las nuevas señales enviadas.

    
respondido por el sweber

Lea otras preguntas en las etiquetas