PDA

Просмотр полной версии : МВ110-16Д Modbus ASCII



OHara
01.12.2014, 11:07
Здравствуйте!
Есть МВ110-16Д. Чтение из счетчиков командой 0x03 проходит на Ура, например посылаем ":100300400001AC" для чтения значения счетчика 1 (по адресу 0x40), а получаем ":1003020018D3".
А вот для того, чтобы этот счетчик сбросить, как написано в инструкции, надо записать (используется команда 0x10) в него 0, то есть, например, так ":101000400000A0", но увы - ":1090025E" -ошибка.
Опытным путем выяснил, что записать в счетчик можно любое значение, кроме 0, но реально в счетчике установится значение 0x0V00, где V- индекс счетчика, если считать с 0.
Например, ":1010004300019C" (записываем 1 в счетчик 67), получаем ":1003020300E8", то есть (0x43) 67 - это четвертый счетчик, и индекс у него 3, если считать с 0.
Кто может прояснить ситуацию? Разработчики есть бывают? Мне главное, как можно сбросить счетчик?
Спасибо

Евгений Дударев
01.12.2014, 12:17
У Вас неверная посылка запроса. Должна быть следующая :
Request
:1010004000010200009D

Response
:1010004000019F

Проверяли при помощи modbus tester

OHara
01.12.2014, 14:23
Ок, спасибо. Это мой косяк - использовал формат команды 0x03 для 0x10