У меня ваша программа работает корректно.
Замкнул у себя на СПК порт RS-485-2 на RS-485-1, на RS-485-1 поднял Modbus Slave стандартными средствами CODESYS - и получил в нем значение от вашего блока.
23-07-2019 12-13-46.jpg
Что может быть (сразу насчет осциллографа - возможно, вы подключили его не к тем пинам?..):
1. На слэйве неправильные сетевые настройки (например, не та четность и т.д.) или указывается не тот адрес регистра и т.д.
2. Проблемы с подключением (перепутаны A и B, разрыв на линии связи).
Я рекомендую сначала повторить мой эксперимент (опросить с одного порта СПК другой - проще будет через конфигурацию) - чтобы убедиться в исправности портов.
Потом подключить ваше slave-устройство к ПК и опросить его каким-нибудь модбас мастером (например, OPC-сервером) - чтобы убедиться в корректности используемых сетевых настроек.
Если по отдельности все работает - то должно работать и в связке.




Ответить с цитированием