Я пытаюсь установить связь с ведомым устройством Modbus через ModbusTCP или последовательный порт Modbus. Производитель. (partlow) имеет руководство по связи ASCII (http://www.partlow.com/uploadedFiles/Downloads/1160%20ASCII%20Comms%20Manual.pdf), которое, похоже, отличается от стандартных методов связи (http://en.wikipedia.org/wiki/Modbus).). Существует много существующего кода, настроенного для работы с обычной адресацией катушек Modbus. и такие, где, кажется (по крайней мере, мне), с этими парнями все по-другому.
Итак, как я могу отправить шестнадцатеричные данные через ruby или perl? Я могу делать все хорошо, но, если я пишу "0DFA" на последовательный порт ... это нормально? или мне нужно сначала преобразовать его в нижний слой или как-то обозначить?
Я много работал над этим и, возможно, сам запутался (делая вещи более сложными, чем они), но я пытаюсь установить связь с этим измерителем, и я вижу, что индикатор активности TX мигает, но нет RX, что означает, что мой формат данных неправильный ...
В основном мы работали над этим (и несколько фрагментов perl тут и там, пытаясь найти что-то, что работает):
http://www.messen -und-deuten.de / modbus.html
Я общаюсь через терминальный сервер, который принимает modbusTCP (который использует этот скрипт), но у меня возникают проблемы с применением того, что в руководстве по коммюнике к приведенному выше коду, для правильного форматирования пакета.