This is topic RTM как сервер MODBUS TCP/IP. Нет данных от сервера. in forum Мониторы Реального Времени / Real Time Monitors at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/35/t/000496.html

Posted by vector1980 (Участник № / Member № 8211) on :
 
Здравствуйте.
Необходимо использовать RTM как MODBUS TCP сервер. Modbus-клиент связь с сервером устанавливает, но передачи данных нет.
Подробнее.
На объекте уже работает проект ТМ6.10.2 созданный подрядчиком, содержащий три узла - три рабочие станции, ARM1, ARM2, ARM3. ARM1 опрашивает контроллер в монопольном режиме, ARM2 и ARM3 берут данные по ethernet с ARM1. Мне необходимо доработать проект, забирать данные с АРМ3 по MODBUS TCP в стороннее приложение. Индивидуальный номер узла ARM3 - 3, IP адрес компьютера в рабочей сети предприятия - 192.168.250.12. Нужным каналам узла ARM3 установил флаг "регистратор", в свойствах узла установлены на нужном адаптере флаги "приём" и "посылка", в папке рабочего проекта узла ARM3 создан файл TMcom_xx.cnf:
SLVPUIP=0
SLAVE_TCPADDR=192.168.250.12
DEBUGON=400
END_OF_CNF

В итоге, клиент (тестирую с помощью Modscan32) связь с MODBUS-сервером ARM3 устанавливает, но данных нет. В логе профайлера ошибка типа WRN_TCP:SLAVE check wrong unit addr1, но ошибки в адресе быть не может, проверено многократно.
Пробовал создавать новый узел в рамках данного проекта с единственным тегом "синусоида", та же история.
Пробовал создать новый, тестовый проект, с чистого листа, связь есть и данные ожидаемо получаю! Но, нужно доработать существующий проект... В чём может быть дело, куда смотреть? [Недоумение / Confused]
 
Posted by Nico (Участник № / Member № 5342) on :
 
WRN_TCP:SLAVE check wrong unit addr1
- цифра после текста это адрес устройства для которого получен запрос как видно он явно != 3

-откорректируйте запрос
 
Posted by vector1980 (Участник № / Member № 8211) on :
 
Nico, спасибо за скорый ответ.
Но, можно поподробнее, где это корректируется? В каком месте? Очевидно на стороне клиента?
 
Posted by vector1980 (Участник № / Member № 8211) on :
 
Поправил в запросе, Device id = "номер узла в проекте" = 3
В результате:
(10:58:25) WRN_TCP:SLAVE check wrong unit addr3
 
Posted by vector1980 (Участник № / Member № 8211) on :
 
Заработало, после того как подставил id=4.
Как это объяснить? Если отсчёт с "0", тогда id для узла №3 = 2, если с "1", то id = 3. Откуда 4?
 
Posted by Nico (Участник № / Member № 5342) on :
 
в ModBus адрес устройства с 1,
поэтому (номер узла - 1) чтоб достучаться до 0 узла
 
Posted by vector1980 (Участник № / Member № 8211) on :
 
Спасибо.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2