Перейти к содержанию

Навигация

Power Meter Measuring Registers: различия между версиями

Нет описания правки
Строка 1: Строка 1:
{{DISPLAYTITLE:Счётчики электроэнергии серии MAP: таблица Modbus-регистров измеряемых и вычисляемых величин}}
{{DISPLAYTITLE:Счётчики электроэнергии серии MAP: таблица Modbus-регистров измеряемых и вычисляемых величин}}
 
{{Wbincludes:MAP Data Registers Preface}}
''Детальное описание погрешностей: [[Power Meter WB-MAP12H Measuring Parameters |Счетчики WB-MAP: измеряемые параметры и погрешности, их названия в веб-интерфейсе Wiren Board]].''
 
=== Обозначения в шаблонах ===
В таблицах регистров, описывающих измеряемые величины, используются следующие обозначения.
 
Для энергий (AP, AN, RP, RN, S, NP, NN): первая буква (A, R, S, N) - тип энергии, второй - направление:
 
* '''A''' — активная;
* '''R''' — реактивная;
* '''S''' — кажущаяся, вычисляется как U<sub>RMS</sub> * I<sub>RMS</sub>;
* '''N''' — неактивная.
 
Направление:
* '''P''' - прямая (positive);
* '''N''' - обратная (negative).
 
'''В таблице описания регистров термин "Суммарная/суммарный" означает, что параметр вычисляется для всех трех фаз трехфазного канала.'''
 
В случае с расхождением данных в таблице с шаблоном устройства, верным значением регистра считайте соответствующее значение из шаблона. Текущие версии шаблонов находятся [https://github.com/contactless/wb-mqtt-serial/tree/master/wb-mqtt-serial-templates по этой ссылке].
 
==== Примечания к названиям таблиц регистров ====
Таблицы регистров соответствуют шаблонам для счетчиков.
 
<!--Дополнительные обозначения:
* + ALL HARMONICS  — шаблон со всеми регистрами, хранящими значения гармоник тока и напряжения
* + HARMONICS — шаблон со первыми 15 регистрами, хранящими значения гармоник тока и напряжения
* BASIC — шаблон с основными параметрами
* BASIC DIV 2/4/8 — шаблон с основными параметрами для счетчиков коэффициентами деления для токовых трансформаторов, рассчитанных на большие токи. (8 — трансформаторы 400 А, 4 — 200 А). Предполагается, что на всех каналах устанавливаются одинаковые трансформаторы. -->
 
Версию прошивки счетчика можно проверить командой
<pre>
echo  -e `modbus_client --debug -mrtu -pnone -s2 /dev/ttyRS485-1 -a$mbusaddr -t0x03 -r250 -c 16 | grep Data | sed -e 's/0x00/\x/g' -e 's/Data://' -e 's/s//g'`|  xxd -r -p && echo ''
</pre>
Здесь $mbusaddr -- Modbus-адрес счетчика.
 
==== Порядок байт, широкие регистры, вычисление значения ====
Некоторые значения, измеряемые счётчиками, занимают больше 16 бит - размера одного регистра Modbus. Такие значения записываются в нескольких подряд расположенных регистрах: 32-битные в двух регистрах, а 64-битные - в четырёх.
 
В таблицах ниже для таких регистров указаны типы u32, u64 (без знака), s32 и s64 (со знаком). В качестве адреса в таблице указан адрес первого из подряд идущих регистров.
 
Порядок '''регистров''' при декодировании может быть прямой (big-endian) и обратный (little-endian). При этом порядок двух '''байт''' внутри одного 16-битного регистра всегда прямой в соответствии со стандартом.
 
Пример: считываем четыре регистра 0x2200 - 0x2203:
{| class="wikitable"
|-
! Номер регистра<br />
! 0x2200
! 0x2201
! 0x2202
! 0x2203
|-
| Содержимое регистра
| 0хb4df
| 0x0dff
| 0x0000
| 0x0000
|}
Смотрим в таблицу регистров:
{|border="1" class="wikitable" style="text-align:center; width:1000px;" 
|+ style="text-align:left;" |
!Регистр / адрес (hex)
!Тип
!Разрядность
!Порядок регистров
!Формат
!Множитель
!Параметр
!Назначение
!Единицы измерения
!Прошивка
|-
| 0x2200 || input || u64 || little endian || (power_consumption) || 1e-05 || Ch 2 Total AP energy || Суммарная прямая активная энергия для канала 2 || кВт·ч || 2.1
|-
|}
Порядок регистров little-endian - значит, регистры идут от младшего к старшему. Поэтому регистры объединяются в итоговое число 0x0000 0000 0dff b4df, оно же 234861791. Для вычисления энергии нужно умножить его на 10<sup>-5</sup>, поэтому в итоге получаем 2348.61791 кВт·ч.
 
=== WB-MAP12E ===
=== WB-MAP12E ===