5813
правок
Kilpio (обсуждение | вклад) |
Kilpio (обсуждение | вклад) |
||
Строка 861: | Строка 861: | ||
</div> | </div> | ||
На что следует обратить внимание в этом шаблоне? В первую очередь в параметрах устройства мы указываем, что одновременно следует считывать не более 60 регистров, чтобы не останавливать надолго опрос остальных устройств: '''"max_read_registers": 60'''. | |||
Также показательным является параметр, описывающий накопленную реактивную энергию по фазе L1: | |||
<pre> | |||
{ | |||
"name": "RP energy L1", | |||
"reg_type": "input", | |||
"address": "0x1224", | |||
"type": "value", | |||
"format": "u64", | |||
"scale": 3.125e-05, | |||
"round_to": 0.0001, | |||
"word_order": "little_endian" | |||
}, | |||
</pre> | |||
Здесь стоит обратить внимание на то, что адрес регистра может задаваться и в шестнадцатеричном виде: '''"address": "0x1224"''', вещественный коэффициент масштабирования можно задавать в экспоненциальной записи: '''"scale": 3.125e-05''', при считывании значения округлять его до нужного порядка: '''"round_to": 0.0001''', а также учитывать, что число в Modbus-регистрах хранится в порядке байтов от младшего к старшему: '''"word_order": "little_endian"'''. | |||
Форматы хранения описываются следующим образом: | |||
<pre> | |||
big-endian : ( [0xAA 0xBB] [0xCC 0xDD] => 0xAABBCCDD)" | |||
little-endian : ( [0xAA 0xBB] [0xCC 0xDD] => 0xCCDDAABB)" | |||
</pre> | |||
====MSU34+TLP, MSU24 и MSU21 и подобные устройства==== | ====MSU34+TLP, MSU24 и MSU21 и подобные устройства==== |
правок