Подключение водосчетчика к передаче данных через wifi. Умные счетчики воды Wi-Fi

На один WiFi модем можно закрепить до шести рядом стоящих датчиков, что значительно упрощает монтаж и внедрения решения.

Для работы комплекта потребуется FTP сервер который можно легко поднять как локально так и на внешнем ресурсе, с этим легко справится любой администратор.

Поддерживается работа в WiFi сетях с шифрованием WPA, WPA2, WEB64, WEB128.
Радиомодем принимает данные от счетчика по радиоканалу 430 мгц и через сеть WiFi отправляет логи на FTP сервер в TXT или XML виде

Модем может работать параллельно с портом Ethernet, к примеру его можно подключить как через WiFi так и через сетевой порт.
Система обеспечивает гарантию доставки данных, если FTP был отключен длительное время, система восстановит недополученные данные в полном объеме.
Схема подключения очень понятная и легкая для настройки, все сделано для людей.
Самое лучшее решение для торговых точек где присутствует сеть WiFi, решение полностью беспроводное и идеально подходит для сетевых магазинов с большим количеством точек.
На объекте подсчета не используется компьютер, данные сразу уходят на FTP сервер.

14 февраля 2013 в 00:06

Выводим счетчик электроэнергии в интернет

  • Программирование микроконтроллеров ,
  • DIY или Сделай сам ,
  • Электроника для начинающих

В статье я расскажу о том, как получить данные о мощности с электросчетчика и вывести их в интернет.
Сразу скажу, что несмотря на то, что счетчик цифровой, и имеет цифровые интерфейсы для связи с внешним контрольным оборудованием, я не использую их (почему - ниже).

С чего все началось
В определенный момент энергетики поменяли наш обычный механический электросчетчик на цифровой. Сразу бросилась в глаза возможность счетчика отображать текущую мощность. Появилось желание как-нибудь получить эту величину со счетчика. Кроме того, новый счетчик имеет порог максимальной допустимой мощности (5 КВт), при достижении которого он отключает электроэнергию в квартире, и происходит это обычно совершенно внезапно. Так что хотелось сделать устройство, способное обнаруживать, что мощность близка к пороговой, и сигнализировать об этом, для того чтобы можно было отключить часть нагрузок.
Как можно получить данные о мощности
  • Поскольку счетчик цифровой, то первое, что приходит в голову - использовать имеющиеся в нем интерфейсы. Из инструкции к счетчику следует, что в нем есть интерфейс RS-485, поверочный выход и оптопорт на передней панели. Однако воспользоваться ими не удастся - проводные интерфейсы находятся под опломбированной крышкой, и попасть туда нельзя, оптопорт активности не проявляет. Если поверочный выход еще и можно было бы использовать, то цифровые интерфейсы нигде не документированы, и скорее всего защищены паролем.
  • Вообще не использовать счетчик, и измерять величину тока в фазовом проводе. Такой метод используется здесь: habrahabr.ru/post/168783 . Однако для таких измерений нужен специальный датчик, который еще нужно где-то взять. Кроме того датчик - аналоговый, а где аналоговый сигнал, там и наводки, которых в электрощите можно наловить немало. Для точного измерения мощности нужно знать значение напряжения в сети, что тоже создает определенные проблемы.
  • Еще один метод, которым я и воспользовался - измерять период вспышек светодиода, находящегося на передней панели счетчика. Этот светодиод напрямую связан с микросхемой, измеряющей ток, протекающей через счетчик. Как я понимаю, этот светодиод связан с вышеупомянутым поверочным выходом. Рядом со светодиодом написано так называемое передаточное число : 2000 имп/кВт*ч, зная которое при достаточно точном измерении периода вспышек можно легко определить потребляемую мощность.
Техническая реализация
Вся обработка сигнала от фотодатчика ведется очень простым устройством на микроконтроллере STM8S105. STM8 был выбран по причине его наличия, а также поскольку для его программирования достаточно 3 выводов.

Обнаружить вспышки светодиода легко - достаточно в качестве фотодатчика использовать фототранзистор, причем за счет того, что вспышки яркие, а фототранзистор довольно чувствителен, сигнал с него можно подавать прямо на цифровые выводы контроллера - амплитуда сигнала во время вспышки близка к 0, а в остальное время близка в напряжению питания. Фототранзистор для защиты от внешней засветки должен быть закрыт светонепроницаемым кожухом и плотно прижат к счетчику.

Сигнализация о превышении допустимого порога мощности так же реализована довольно просто: рядом с устройством расположена кнопка-передатчик от беспроводного звонка, соединенная с контроллером через оптрон. Сам звонок-приемник лежит в комнате рядом со щитом, и при превышении мощности звонок начинает пищать.

Данные от контроллера нужно каким-то образом передать на устройство, которое будет их обрабатывать, в данном случае это роутер WL-500gp. Можно было бы использовать беспроводные соединения, однако между роутером и контроллером несколько бетонных стен и стальная дверь. Также в таком случае контроллеру нужно будет обеспечить питание, а пытаться подключать блок питания к силовой проводке в щите не хотелось.
Более простым является проводное подключение. Поскольку данные должны передаваться на роутер, то можно воспользоваться уже проложенным кабелем, соединяющем роутер с провайдером - этот кабель проходит через электрощит. В кабеле для организации сети используются только 4 жилы из 8, так что оставшиеся 4 можно использовать для своих нужд.
Одну пару проводов можно использовать для передачи питания на контроллер, другую - для передачи данных на роутер. Однако мне захотелось реализовать передачу данных и питания только по одной паре проводов. Для этого я использовал цифровую токовую петлю.

Про токовую петлю можно почитать в википедии , а также .
В данном случае устройство состоит из двух частей - приемника, расположенного рядом с роутером, и передатчика, содержащего в себе микроконтроллер. Передатчик содержит источник тока (я использую NSI45020, предназначенный для питания светодиодов) и последовательно соединенный с ним транзистор.


Схема организации токовой петли.

При подаче на базу транзистора напряжения высокого уровня он открывается, и через линию связи начинает идти определенный ток. В результате этого на токоизмерительном резисторе (3 Ом) возникает падение напряжения, которое усиливается операционным усилителем. Усиленное напряжение подается на компаратор, и если оно больше определенного порога (Vref), то на выходе компаратора устанавливается высокий уровень напряжения. При отсутствии тока (точнее при малой его величине, так как контроллер всегда потребляет ток) падение напряжения на резисторе мало, и на выходе компаратора устанавливается низкий уровень напряжения.
Источником питания всей конструкции является роутер, напряжение 5 В с которого подается на приемник (входы слева на схеме) и проходит через линию практически без изменений - поскольку токи низкие, а линия короткая, то падение напряжение на резисторе и проводах достаточно мало. Далее это напряжение можно использовать для питания микроконтроллера (выходы справа на схеме).
Для передачи данных с микроконтроллера выход его UART соединен с базой транзистора, а выход компаратора соединен со входом преобразователя UART - USB. Скорость передачи данных - 1200 бит/сек. Это обеспечивает надежную передачу данных, а также при такой маленькой скорости передача даже короткой посылки видна по миганию светодиода.

Платы приемника и передатчика были изготовлены методом ЛУТ на одной плате, после сборки и отладки плата была разрезана:

Приемник установлен внутри обычной розетки RJ-45, в розетку вставляется идущий в щит кабель, кабель из розетки вставляется в роутер.

Передатчик установлен в небольшой коробке и положен в щит вместе с кнопкой звонка:

Обработка данных
Микроконтроллер, установленный в приемнике, измеряет период вспышек светодиода на электросчетчике и по нему вычисляет мощность. Эта величина постоянно сравнивается с порогом максимально допустимой мощности, и при ее превышении контроллер включает звонок.
Каждые 10 секунд контроллер передает последнюю измеренную величину мощности по UART на роутер. Тут возникает определенная проблема - при малых потребляемых мощностях светодиод на счетчике вспыхивает с периодом большим 10 секунд. В таком случае на роутер отправляется значение мощности - 0.
На роутер я установил интерпретатор Python, и написал скрипт, который обрабатывает данные от приемника, организует простейший локальный web-сервер и каждые 2 минуты передает среднее значение мощности на сайт cosm.com.
Данные на web-сервере обновляются при получении данных от приемника - каждые 10 секунд. При вычислении средней мощности в скрипте учитывается то, что реальная мощность не может быть равна 0 - при получении новой величины мощности, не равной нулю, все предыдущие нулевые значения замещаются новым значением.

Так выглядит web-страница сервера, открытая на телефоне.

  • Типы водосчетчиков
  • Принцип работы импульсных выходов на счетчиках
  • Cпособы автоматического получения показаний расхода воды со счетчиков
  • Устройство для считывания показаний с использованием 1-wire
  • Сохранение показаний в базе данных и графическое отображение данных о расходе воды
  • Передача показаний в управляющую компанию (теория)

Введение

В настоящее время широкое распространение получили универсальные квартирные водосчетчики. Если отойти от темы домашней автоматизации, я считаю это очень хорошей тенденцией — ведь ведение учета расхода воды (да и не только воды) достаточно эффективная мера, способствующая сбережению ресурсов. Конечно, в современных Российских реалиях (низкая стоимость воды, электричества, наш менталитет) это звучит весьма странно, но где-то в душе я убежден, что обращать внимание на сбережение ресурсов нужно начинать уже сегодня. А если мыслить не так глобально, то сегодня счетчики, как минимум, позволяют экономить на счетах за коммунальные услуги. Что-то я отвлекся…

Типы бытовых счетчиков воды

Современные счетчики воды, по показаниям которых мы затем оплачиваем счет за ЖКУ, бывают в основном двух видов (с точки зрения домашней автоматизации):

  • Без выходов
  • С импульсным выходом
  • Цифровой выход RS 485 (в рамках этой статьи не рассматриваются)
  • С радиовыходом (в рамках этой статьи не рассматриваются)

С первыми все понятно: посмотрел, записал, отправил в управляющую компанию. Никакой автоматизации. Хотя есть народные умельцы, которые умудряются снимать показания с таких счетчиков с помощью веб-камер («сфотографировать» и затем с помощью специальных алгоритмов распознать цифры — пример реализации) или устанавливают специальные оптические считыватели скорости вращения гребенки на счетчике (чаще всего это та самая «светящаяся красная лампочка» со старых оптических компьютерных мышей — да да, это камера с очень низким разрешением) с последующей обработкой и преобразованием в конкретные цифры расхода воды. Если у вас счетчик без выходов и вы не хотите тратить деньги на установку новых счетчиков, то можете погуглить подобные решения — их достаточно много и почти все можно сделать «своими руками». Но, на мой взгляд, подобный подход носит скорее исследовательский характер, нежели стабильно работающее простое решение с использованием специально разработанных для этих целей импульсных выходов в водосчетчиках.

Рассмотрим подробнее счетчики с импульсным выходом. Общий принцип работы очень прост: датчик отдает один полный импульс при прохождении определенного количества жидкости (зависит от характеристик конкретного счетчика).

Импульсный выход основан на воздействии магнитного поля постоянного магнита на геркон, при котором происходит чередующееся замыкание и размыкание контактов геркона. Геркон формирует пассивный выходной сигнал («сухой контакт»), который может считываться любым счетчиком импульсом.

Задача сводится к подсчету импульсов в единицу времени и умножению их на «цену» одного импульса. Как правило 1 импульс = 10 литров, в некоторых счетчиках это значение равно 1 литру. Какая цена импульса у вашего счетчика можно посмотреть в техническом паспорте. Такая информация иногда бывает на самом счетчике.

Оборудование для считывания импульсов со счетчика воды

В моей реализации Умного дома почти все сенсоры подключены к шине 1-wire и счетчики импульсов для учета расхода воды не стали исключением. Я использовал готовое устройство от магазина radioseti — «Модуль счетчик с буферной памятью 2 канала» . Как видно из названия, устройство позволит считывать показания с двух счетчиков. Устройство основано на чипе Maxim DS2423 и при наличии определенных умений, не составит труда спаять такое устройство самостоятельно.

Во встроенной памяти устройства есть две целочисленные переменные Counters.A и Counters.B , в которых хранится количество «подсчитанных» импульсов на каждом входе (горячая и холодная вода). Каждой переменной выделено 32 байта — этого хватит с огромным запасом на много лет, даже при цене импульса в 1 литр.

Встроенный внутренний элемент питания позволяет хранить результаты работы не зависимо от внешнего питания, а так же устройство будет считать импульсы и сохранять информацию во внутреннюю память, даже если оно отключено от сети 1-wire и от питания. На мой взгляд данное решение идеально подходит для наших задач.

К общей 1-wire шине наше устройство подключается стандартным образом через коннектор типа RG-11 (6p4c): DATA, GND, +12V (в схеме датчика встроен стабилизатор напряжения с 12В).

Счетчики подключаются тоже достаточно просто, но крепление уже «под винт» (советую обзавестись комплектом хороших маленьких отверток, чтобы не повредить разъем устройства). Один разъем общий (GND), в него нужно подключить контакты от обоих счетчиков. И два входных для каждого из счетчиков раздельно.

Стабильность работы, пропуски импульсов и ложные срабатывания

Устройство работает на удивление стабильно. За более чем пол года эксплуатации расхождение «считанных» фактических показаний составило порядка 20 литров на горячую и 40 литров на холодную воду в меньшую сторону. При среднем расходе воды в месяц 4 и 6 кубометров соответственно это всего около 0,1% — не много. Раз в пару лет можно «откорректировать» значения в памяти устройства вручную.

На стабильность работы могут влиять следующие факторы:

  • Качество самих счетчиков воды (в моем случае со счетчиками Valtec повезло)
  • Наличие неподалеку источника сильных магнитных полей (силовая проводка, всевозможные источники электромагнитных помех)
  • Надежность фиксации выходов счетчика в разъеме устройства
  • Качество установленной батарейки (и нужно следить за ее напряжением)

Аналоги устройству от Radioseti можно найти в интернете (например от HobbyBoards за 30$ без учета доставки из США) или спаять самому, но, если честно, то по соотношению цена/качество лучшего устройства я не пока видел.

Сохранение показаний со счетчика в базу данных

На сервере Умного дома (я использую Raspberry Pi с ОС Raspbian и USB мастером 1-wire сети DS9490R) по расписанию каждые N-минут (задается по желанию) запускается скрипт, который с помощью библиотеки OWFS считывает показания с 1-wire счетчика импульсов и сохраняет их в СУБД.

Общая схема подключения представлена ниже:

Более подробно про считывание значений с устройств 1-wire и управление ими при помощи библиотеки OWFS будет посвящена отдельная статья.

В консоли Linux считывание показаний выглядит примерно так:

А графики, полученные на основе данных с 1-wire счетчика импульсов выглядят примерно так:

Один день из жизни: показания расхода воды за сутки.
Для построения графиков используется библиотека Highcharts .

Автоматическая передача показаний со счетчиков воды в управляющую компанию

При наличии в БД актуальных данных о расходе воды, можно подсчитать ее расход за месяц и передать в управляющую компанию.

На сегодняшний день (по крайней мере в Москве) многие УК принимают показания с помощью:

  • Смс сообщения (реализуемо)
  • E-mail (реализуемо и очень просто)
  • Через сайт УК (реализуемо, но придется разобраться как устроен их сайт и научиться эмулировать с помощью скрипта «ручную» передачу показаний)
  • API сервисов ЖКХ (пока не реализуемо, но чувствую что скоро они появятся)

Но это тема следующих статей.

Выводы

С доступными на сегодняшний день решениями (как аппаратными, так и софтовыми) считать показания со счетчика воды, сохранить их в БД, а затем визуализировать, использовать для статистических расчетов, передать в управляющую компанию очень просто — даже если вы не умеете пользоваться паяльником и не являетесь гуру-программирстом. Нужно лишь немного терпения, желание и не бояться нового 🙂

Товар в наличии! Цены 2019 г.

Условия заказа и доставки адаптеров для связи со счетчиками Меркурий
(запросы на электронку [email protected] или по телефону 8-909-283-34-16 )


1) Узел автоматики - WiFi роутер (модель VR-007.4) Стоимость 5000 рублей. Купить. Миниатюрное УСПД для опроса списков счетчиков Меркурий по любому из подключенных интерфесов USB-RS485/CAN/IRDA/оптопорт. Может самостоятельно опрашивать 10 трехфазных счетчиков Меркурий, либо создавать через себя сквозной тунель для опроса внешними программами неограниченного списка счетчиков.

2) Стоимость 3300 рублей. Купить. Законченное аппаратное устройство передачи данных между локальной сетью Ethernet и проводным интерфейсом RS485. Широко используется для автоматизации снятия показаний с измерительных приборов учета, в том числе электросчетчиков Меркурий. Работает со всеми видами протоколов TCP/IP в режимах сервера и клиента. Может выводиться в сеть интернет для удаленного мониторинга объектов учета АСКУЭ.

3) Стоимость 1950 рублей. Купить. Преобразователь интерфейсов для электросчетчиков Меркурий-230, 231, СЕ-102, содержащих IRDA интерфейсы. Для подключения к электросчетчику не требует вскрытия клеммной коробки.

(VALTEC VT.USPD.R1) Устройство сбора и передачи данных (УСПД) предназначено для получения информации о расходе ресурсов от приборов учета с импульсным выходом (водо-, тепло-, газовые счетчики), сигналов от датчиков с выходом типа «сухой контакт» (датчик протечки, температуры, давления и т.п.), приводов трубопроводной арматуры, передачи полученных данных по радиоканалу на сервер для дальнейшей обработки и использования.

VT.USPD представляет собой электронный блок со встроенным Wi-Fi модулем (протокол 802,11 b/g/n) и элементами питания (три батарейки стандарта AA), имеющий пылевлагозащитный корпус, имеет восемь пар входов с пружинными клеммными колодками для подключения счетчиков и датчиков.

Устройство опрашивает состояние счетчиков с заданной периодичностью и передает полученные сигналы на сервер. Сигналы от датчиков инициируют мгновенную передачу сообщения на сервер. Если канал передачи данных не доступен, устройство накапливает данные (максимальная глубина архива – один месяц), а при появлении связи, передает их на сервер. Для защиты от несанкционированного воздействия предусмотрен детектор вскрытия, при активизации которого на сервер передается соответствующий сигнал.

Устройство передачи данных соответствует требованиям Государственного Комитета по радиочастотам, изложенным в Решении от 07.05.2007 г. № 07-20-03-001.

    Основные преимущества использования VT.USPD:
  • Квартира под контролем, когда вы на даче, в отпуске или на работе.
  • Сбор показаний и контроль расходов арендаторов.
  • Автоматическая передача показаний с приборов в УК/ТСЖ и др.
  • Независимый источник питания.
  • Простота установки и настройки.

Пользователем устройства сбора и передачи данных VT.USPD может стать как управляющая компания многоквартирного дома, так и владелец либо арендатор отдельно взятой квартиры, индивидуального дома.

Приобретая прибор, покупатель получает бесплатный доступ к пользованию системой автоматического контроля и учета ресурсов SAURES (www.saures.ru) с предоставлением личного кабинета, возможностью персональных настроек и получения информации на мобильный телефон или компьютер.

Для подключения УСПД не требуется отдельной сети Wi-Fi – можно использовать существующую домашнюю либо общественную сеть.

Абонентская плата не взимается. Для мобильных устройств на платформах Android и Apple предлагается бесплатное приложение SAURES, доступное в Play Market и Apple Store.

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

Установив устройство сбора и передачи данных VT.USPD владелец или арендатор недвижимости сможет получать в электронном виде показания приборов учета, аналитические отчеты, информацию об ошибках в работе домашнего оборудования. Например, пользователь будет предупрежден об аномальном расходе воды из-за протечки сантехники или оставленного открытым крана.

При оснащении модулями VT.USPD многоквартирного дома ТСЖ или управляющая компания получает автоматически считываемые показания приборов учета, информацию о возможных авариях и злоупотреблениях недобросовестных жильцов.

Контроль протечек может осуществляться по показаниям счетчиков и датчиками протечки. Информация о протечке поступает владельцу квартиры и в ТСЖ. Перекрытие воды может осуществляться автоматически или дистанционно управляемым краном.

К одному модулю VT.USPD можно подключить до восьми счетчиков или датчиков.

Питание прибора – от трех батареек AA (возможно и от внешнего блока). Заряда батареек хватает на не менее четырех лет его работы.

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

Похожие статьи