PowerGraph Описание PowerGraph
English ENG
Russian РУС
 Программное обеспечение  |  АЦП  |  Загрузка файлов  |  Цены  |  Конференция  |  Контакты 
Главная
Новости*

 ПО «PowerGraph»
О программе
Описание
Видеозаписи
Публикации
Применение
Сертификаты
Загрузка файлов

 Поддержка
Обновление ПО
Обучение
Конференция
Вопросы и ответы
Отправить письмо

 Аппаратура
АЦП
Мультиметры
Приборы
Хемилюминометры
Биожезл
Пульсоксиграф
Производители

 Информация
  Цены и услуги
  Контакты

 Телефон:
 +7 (495) 961-47-30
 E-Mail:
 soft@powergraph.ru

Конференция

Тема: «Чтение регистров по Modbus RTU»
[Вернуться в "Список тем"] [Создать новую тему]
Дмитрий
13.04.2023
12:36
Добрый день. Планирую считывать с помощью PG по Modbus RTU значения параметров с устройства измерения PZEM-014 Ссылка на описание: https://images-na.ssl-images-amazon.com/images/I/81GtkIOyZaL.pdf
Но у него, исходя из разрядности значения, некоторые параметры сохраняются сразу в двух 16-битных регистрах. Получится ли у меня в этом случае корректно считывать показания сразу с двух регистров для одного параметра и выводить их в виде графика?
Дмитрий (PG)
15.04.2023
11:32
В текущей версии универсального PowerGraph-драйвера "Modbus-RTU" реализовано только стандартное чтение отдельных 16-битных регистров. Если устройство, работающее по протоколу Modbus-RTU, использует специфические комбинации 16-битных регистров для формирования значений большего диапазона, то для таких устройств необходимо разрабатывать индивидуальный PowerGraph-драйвер.

Что касается PZEM-014, то там некоторые измерительные каналы (1, 5 и 6) используют только один 16-битный регистр, а другие (2, 3 и 4) - два регистра. Поскольку PowerGraph-драйвер "Modbus-RTU" использует для каждого канала только один регистр, то в PowerGraph будут регистрироваться не 6, а 9 каналов (регистристры 0x0000-0x0008). С этим в принципе можно работать, если для каналов 2-4 достаточно диапазонов младшего регистра, т.е. 16-битного значения. В этом случае каналы со старшими регистрами (в PowerGraph 3, 5 и 7) можно отключить и не регистировать (игнорировать).
Вот диапазоны измеряемых значений для младших регистров:
- Сила тока (канал 2) - до 32 Ампер
- Мощность (канал 4) - до 3 200 Ватт
- Энергия (канал 6) - до 32 000 Ватт в час

Этих диапазонов измерения Вам достаточно?
Дмитрий
17.04.2023
07:11
Да, получается, что для PZEM-014 старшие регистры для тока, мощности и энергии не нужны, так как диапазон измерения укладывается в младший 16-битный регистр. Значит можно в реалтайме делить полученное значение на константу и выводить на графике реальные значения измерений. Скорее всего эти регистры нужны только для PZEM-016 с его большими диапазонами измерений. Но в случае с PZEM-016, как я понимаю, можно было бы сдвинуть старший регистр командой ShiftLeft на 16 значений и сложить с младшим регистром, единственное, что не в реалтайме. Можно ли так сделать?
Дмитрий (PG)
17.04.2023
11:11
Зачем делить на константу?
LSB указан именно для младшего бита младшего регистра, таким образом значения младшего регистра уже регистрируются в реальных единицах. Если сигнал укладывается в диапазон младшего регистра, то старший регистр нужно просто игнорировать (не регистрировать в PowerGraph).

ShiftLeft - смещает сигнал по времени (а не цифровые биты).
Дмитрий
17.04.2023
11:37
Зачем делить на константу? Ну там же целое 16-битное значение передаётся, например по току, а разрешение датчика 0,001А.
Дмитрий (PG)
18.04.2023
09:05
Ну так ведь PowerGraph сразу регистрирует сигналы в реальных единицах измерения, а не в дискретных битах.

В PowerGraph в настройках канала необходимо установить правильный диапазон измерения - в вашем случае "LSB=0.001", т.е. цена младшего бита должна быть равна 0,001 А.
Об этом написано в справке к драйверу "Modbus-RTU".
Дмитрий
19.04.2023
14:07
Понял, большое спасибо. Заказал модули PZEM, буду пробовать.
[Вернуться в "Список тем"] [Создать новую тему]

Новое сообщение по теме «Чтение регистров по Modbus RTU»

 

*Ваше имя:
Email:
*Сообщение:
   

В начало страницы  



 
 Copyright© Dmitry Yu. Izmailov, 2003-2023. All right reserved.