/  Архив форума
   /  Оборудование производства НПО "Тепловизор"
/  Опять Modbus

Форум : Оборудование производства НПО "Тепловизор"

Название : Опять Modbus

© NegaSoft co., 2005
http://www.teplovizor.ru

URL этой темы
http://www.teplovizor.ru/forum/viewtopic.php?topic_id=534&forum=1


 DmIanovich :

6.10.17 15:59
 Добрый день, уважаемые разработчики.
У меня очередной вопрос, прочитав все статьи по форуму по опросу телосчетчиков по протоколу Modbus, я не смог найти ответы на свои вопросы.
У нас объекте используется контроллер Овен ПЛК 160 (у данного плк нет функции 20), поэтому нам остаётся чтение только 04 Read INPUT REGISTERS, чтение регистров 518, 1542, 2566 - Температура и регистров 546, 1570, 2594 - Давление, выполняем на ура)))
А вот остальные регистры: Тепловая мощность, Объём за текущий час, масса за текущий час , тепловая энергия за текущий час и время наработки, прочитать корректные данные не получается.
Я понемаю что тема много раз обсуждалась и описывалась, но вопросы остаются, что именно писать в адрес регистра и какое необходимо выполнить преобразование.
Заранее спасибо. С нетерпением жду вашего совета.

 CH :

7.10.17 16:15
 Здравствуйте.
Возможно, вы не совсем верно понимаете, что это такое - "за текущий час". Эти значения обнуляются ежечасно, в начале каждого часа, после чего в течение часа растут. Прибор эти величины в чистом виде не индицирует, поэтому проверить истинность считанных значений может быть затруднительно. Может быть читаемые вами данные вполне корректны.
Для получения же индицируемых прибором значений счётчиков-накопителей объёма, массы, тепловой энергии, для начала следует прочитать их основную, раз в час обновляемую часть из заголовка архива.
В отсутствие файловых функций чтения используется функция 04, заголовок первого архива, структура которого описана в руководстве, расположен с адреса 0x1000.
После получения данных из заголовка архива останется прибавить к ним, с преобразованием к одной размерности, значений счётчиков "за текущий час", для получения значений, отображаемых прибором в данную секунду.