Найти тему
MySmartHome

Подключение водяных счетчиков к умному дому

Мой проект начался с телеметрии водяных счетчиков, но изначально они были подключены к контроллеру Laurent, который размещался в электрощите. Позже, для дополнительных датчиков с ним стал соседствовать MegaD с исполнительными модулями. Особого смысла держать два контроллера в щите смысла нет, а Laurent не предусматривает крепления на DIN-рейку, поэтому я перенес функционал Laurent на MegaD. Серьезным недостатком MegaD является невозможность сохранять значения счетчиков при перезагрузке, а также неверный их учет при отсутствии соединения с сервером, но водомеры не самые быстрые счетчики, и, этим недостатком пришлось пренебречь.

Домашние водяные счетчики от застройщика имеют обычные сухие контакты под счетчик импульсов, каждые 10л воды происходит замыкание контакта, таким образом, нам нужно просто считать замыкания. Для этого на MegaD можно использовать любой простой вход, настроив его следующим образом:

При замыкании порта с землей (Mode P) на сервер отправляется сообщение вида: 02.04 08:54:37.570 megad2: 10.255.255.60 => localhost:8081 HTTP GET /md.php?pt=21&m=2&cnt=172 его отслеживает intraHouse и принимает решение о последующих действиях.

Для добавления счетчика в intraHouse, добавляем устройство типа "Счетчик":

-2

В разделе БД выбираем Consumption для возможности построения графика расхода:

-3

Далее в плагине MegaD необходимо создать канал с числовым именем, который будет привязан к данному устройству:

-4

Вес импульса указываем в единицах измерения, которые собираемся считать. В данном случае кубометры.

В разделе "Расширения" добавляем обработчик событий канала:

-5

Таким образом создаем устройства на каждый счетчик и привязываем их к каналам. После этого можно добавить устройство на мнемосхему и ввести начальные значения:

-6
-7

При желании и наличии лицензии PRO можно построить график расхода в различных масштабах:

-8

Этот штатный способ использования счетчиков, программно он значительно проще, чем тот, который был задействован для подсчета электроэнергии, хотя на аппаратном уровне они идентичны.

Оригинал статьи опубликован здесь: https://vk.com/my_smart_home