Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия | |||
sw:openhab:examples:dds238-1-zn [2023/05/23 10:57] – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1 | sw:openhab:examples:dds238-1-zn [2023/05/23 10:57] (текущий) – ↷ Страница перемещена из sw:openhab:binding:examples:dds238-1-zn в sw:openhab:examples:dds238-1-zn lazygatto | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== Опрос счетчика DDS238-1 ZN ====== | ||
+ | <sxh> | ||
+ | rule "POWER Опросить электросчетчики и считать показатели" | ||
+ | when | ||
+ | Time cron "*/3 * * * * ?" | ||
+ | then | ||
+ | if (alarmPowerOff.state == ON) return; | ||
+ | var String[] bytes | ||
+ | var String output = sendHttpGetRequest(" | ||
+ | Thread.sleep(100) | ||
+ | if (output == " | ||
+ | output = sendHttpGetRequest(" | ||
+ | if (output.indexOf(" | ||
+ | // | ||
+ | // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | ||
+ | bytes = output.split(" | ||
+ | sysSens_PowMeterCounter.postUpdate(Integer.parseInt(bytes.get(3) + bytes.get(4) + bytes.get(5) + bytes.get(6), | ||
+ | sysSens_PowMeterVoltage.postUpdate(Integer.parseInt(bytes.get(27) + bytes.get(28), | ||
+ | sysSens_PowMeterCurrent.postUpdate(Integer.parseInt(bytes.get(29) + bytes.get(30), | ||
+ | sysSens_PowMeterPowerLoad.postUpdate(Math.abs(Integer.parseInt(bytes.get(31) + bytes.get(32), | ||
+ | sysSens_PowMeterReactPowerLoad.postUpdate(Integer.parseInt(bytes.get(33) + bytes.get(34), | ||
+ | sysSens_PowMeterPFactor.postUpdate(Integer.parseInt(bytes.get(35) + bytes.get(36), | ||
+ | sysSens_PowMeterFreq.postUpdate(Integer.parseInt(bytes.get(37) + bytes.get(38), | ||
+ | } //else {logError(" | ||
+ | } else { logError(" | ||
+ | |||
+ | // | ||
+ | // | ||
+ | output = sendHttpGetRequest(" | ||
+ | Thread.sleep(100) | ||
+ | if (output == " | ||
+ | output = sendHttpGetRequest(" | ||
+ | if (output.indexOf(" | ||
+ | bytes = output.split(" | ||
+ | sysSens_WashPowMeterCnt.postUpdate(Integer.parseInt(bytes.get(3) + bytes.get(4) + bytes.get(5) + bytes.get(6), | ||
+ | sysSens_WashPowMeterW.postUpdate(Math.abs(Integer.parseInt(bytes.get(31) + bytes.get(32), | ||
+ | } //else { logError(" | ||
+ | } else { logError(" | ||
+ | | ||
+ | // | ||
+ | // | ||
+ | output = sendHttpGetRequest(" | ||
+ | Thread.sleep(100) | ||
+ | if (output == " | ||
+ | output = sendHttpGetRequest(" | ||
+ | if (output.indexOf(" | ||
+ | bytes = output.split(" | ||
+ | sysSens_DishPowMeterCnt.postUpdate(Integer.parseInt(bytes.get(3) + bytes.get(4) + bytes.get(5) + bytes.get(6), | ||
+ | sysSens_DishPowMeterW.postUpdate(Math.abs(Integer.parseInt(bytes.get(31) + bytes.get(32), | ||
+ | } //else {logError(" | ||
+ | } else { logError(" | ||
+ | | ||
+ | // | ||
+ | // | ||
+ | output = sendHttpGetRequest(" | ||
+ | Thread.sleep(100) | ||
+ | if (output == " | ||
+ | output = sendHttpGetRequest(" | ||
+ | Thread.sleep(20) | ||
+ | if (output.indexOf(" | ||
+ | bytes = output.split(" | ||
+ | sysSens_OvenPowMeterCnt.postUpdate(Integer.parseInt(bytes.get(3) + bytes.get(4) + bytes.get(5) + bytes.get(6), | ||
+ | sysSens_OvenPowMeterW.postUpdate(Math.abs(Integer.parseInt(bytes.get(31) + bytes.get(32), | ||
+ | } //else {logError(" | ||
+ | } else { logError(" | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | Источник: |