This is topic Проблема с адресом канала Float для модуля Овен МВ110-8А in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.
Добрый день, я работаю с данным модулем по Modbus-RTU. Согласно документации на модуль, каждый аналоговый вход занимает адреса 0x0 - 0x5 включительно, причем адреса 0x4,0x5 - значение канала измеренного значения типа float. Все регистры с 0 по 3 читаются корректно, при использовании функции Rin_Word(4). При обращении к каналу Modbus через Rin_Float(4) с адресом 0x4 - читается некорректное значение. Но если установить адрес 0x3 - показания верны. Тоже самое происходит и с любым другим каналом данного модуля, нужно устанавливать адрес на единицу меньше. В чем может быть проблема?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Считайте, пожалуйста (при неизменном значении измеренного значения): - Rin_Word(4) с адресами 0, 1, 2, 3, 4 и 5, - Rin_Float(4) с адресами 3 и 4.
Покажите все 4 значения и вместе с проектом пришлите на адрес техподдержки hotline@adastra.ru.
Posted by ivved (Участник № / Member № 6874) on :
Спасибо, тестовый пример со скриншотом измеренных значений и проектом отправил на почту
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
В стандарте Modbus не оговорен порядок размещения FLOAT-числа в памяти. Во встроенном драйвере Trace Mode 6 по умолчанию предполагается, что в младшем регистре хранится младшая часть мантиссы, а в старшем – старшая часть мантиссы и порядок числа.
Судя по присланным Вами данным, в модуле ОВЕН МВ110-8А принят другой порядок размещения: в старшем регистре хранится младшая часть мантиссы, а в младшем – старшая часть мантиссы и порядок числа.
Для адаптации к подобным особенностям в Trace Mode 6 предусмотрены специальные настроечные средства (см. раздел документации “Обмен с контроллерами и УСО/Обмен по встроенным протоколам/Обмен по Modbus”).
Вам выслан файл конфигурирования запуска узла, который следует поместить в папку узла (см. раздел “Приложения/Задание параметров работы мониторов). Это должно исправить ситуацию.