В рубрике DOU Проекторвсе желающие могут презентовать свой продукт (как стартап, так и ламповый pet-проект). Если вам есть о чем рассказать — приглашаем поучаствовать. Если нет — возможно, серия вдохновит на создание собственного made in Ukraine продукта. Вопросы и заявки на участие присылайте на editors@dou.ua.
Привет, я Владимир Павлов, один из авторов проекта и разработчик в smart-MAC (Measure, Analyze, Control). Это умные счетчики с облачным сервером данных и веб-инструментами для анализа и визуализации данных.
Идея
Я и еще один автор проекта Алексей Жоголев дружим со школы. Вместе ходили на радио-кружок, где паяли, и кружок программирования. С тех пор это увлечение а-ля паяльщик-программист и осталось. Нас все время привлекали «вещи из интернета-вещей», в первую очередь то, чем хотели пользоваться сами. Например, уже 12 лет назад на наших авто стояли собранные нами GPS-трекеры с нами же написанным ПО, на лодках — GPS спидометры, а в домах — теплые полы с управлением через интернет.
Когда существенно повысились тарифы на коммунальные услуги, мы начали думать, а почему бы не сделать такое решение, которое помогло бы экономить? И не только нам, но и другим. В первую очередь задумались о том, что нужно всем — электроэнергия.
Команда smart-MAC (слева-направо): Николай Потипака — поддержка, полиграфия и дизайн; Владимир Павлов — разработка программного обеспечения; Сергей Базиленко — программное обеспечение и производство; Алексей Жоголев — R&D и производство; Александр Бибиксаров (не присутствовал, когда делали фото:)) — продажи.
В мире много счетчиков, которые предоставляют какие-то данные. Но вопрос в том, как агрегировать, архивировать и анализировать эти данные? Вывести эти собранные данные хотя бы в один график — или очень трудоемко, или же это решения промышленного уровня, которые для простых людей никак не подходят. Одно дело — собирать информацию в масштабах завода, другое дело — увидеть в минутах, сколько ресурсов потребляет квартира, дом или небольшое кафе.
Мы все получаем платежки за электричество за месяц потребления, где видим общую сумму и все — иди и плати. А вот сколько и когда ты потратил, куда и когда уходило — совершенно не ясно. Мы задались целью увидеть потребление коммунальных услуг домохозяйством с детализацией до дней, недель, часов и даже минут.
Реализация
Поискав и изучив похожие решения, увидели, что таких решений по большому счету нет. Есть несколько таких, которые что-то похожее делают, но не предоставляют нужного нам функционала. Максимум, что нашли, — индикаторные счетчики, которые показывают, сколько сейчас квартира потребляет. Ни о каком сборе архива «в облаке» и речи не было. Либо же это можно получить, только если установить элемент системы умного дома, развернуть сервер, контроллер, подключить к нему счетчики. Но для этого необходимы немалые затраты, да и знания соответствующие нужны, так как такие элементы сложны в обслуживании для простых пользователей.
Нам же хотелось, чтобы решение было не дорогим и доступно простым людям (а не только энтузиастам-паяльщикам), а также было мобильным при необходимости. Ведь не будет же человек ставить умный дом на съемной квартире (как переезжать?). Или же малый и средний бизнес не будет ставить умный дом в своем кафе или небольшом офисе, в арендуемом помещении, но всегда захочет увидеть потребление как минимум электричеств. Снижение потребления даже на 5% — это серьезная экономия.
Умный счетчик — это устройство для мониторинга потребления электроэнергии, которое устанавливается на DIN-рейку с 1 проводом (если одна фаза) или 3 проводами (если 3 фазы) с замеряющими трансформаторами тока (в виде защелки или кольца), которые измеряют поток электричества. По Wi-Fi модулю пользователь подключает устройство (как Wi-Fi клиент) к своей сети, и счетчик передает данные на наш облачный сервер, а по web-интерфейсу пользователь может подключаться к устройству для настройки. Кроме потребленных ватт, электросчетчики измеряют текущие значения тока, напряжения, мощности и косинуса фи (power factor) электросети.
Устройство чаще всего физически крепится в коробке с автоматами на DIN-рейке. Его можно легко снимать и переносить при необходимости. Почему мы считали важными мобильность и легкость в монтаже наших устройств? Например, для представителей малого и среднего бизнеса это может быть способом выборочно измерять потребление определенной печи в пекарне, пиццерии или кофемашин в кофейне. Защелкивается трансформатор на подходящем к устройству проводе, и потребление электричества именно этим устройством измеряется с точностью до минуты.
Зайдя на свой дашборд и подключив свой энергомонитор по серийному номеру и пин-коду, пользователь увидит все характеристики своей электросети и потребление как в детализированном архиве, так и онлайн через веб-приложение в облаке, как на ПК, так и на телефоне. Данные с устройств передаются на сервер каждую минуту, а при просмотре онлайн в режиме реального времени — данные посылаются устройством каждые 5 секунд.
Все желающие могут посмотреть живое демо и поработать с дашбордом реального домохозяйства онлайн.
Дашборд можно настроить визуально так, как удобно клиенту. Все виджеты свободно перемещаются, изменяются в размере, имеют фиксированное положение и гибкие настройки для кастомизации. Например, можно настроить свою арифметику расчета, если человек хочет чтобы потребление отображалось не в ваттах, а в гривнах до копейки.
Еще есть двухсторонний мониторинг — как для потребления электроэнергии, так и ее выработки, например, если есть солнечная электростанция. Даже для дорогих инверторов СЭС функционал по мониторингу производства электричества достаточно бедный. Наше устройство подробно покажет по минутам, часам, дням — сколько и когда пришло электричества в систему, сколько потреблено, а сколько продано по «зеленому тарифу». Замер проходящей энергии производится в двух направлениях отдельно, что и позволяет мониторить выработку и собственное потребление.
На графике показано часовое потребление электричества по каждой фазе в ваттах (линии, на оси справа) и в денежном эквиваленте (бары, на оси слева). На один график можно наложить до 6 разных данных: свет, газ,вода, тепло и т. д., чтобы увидеть всю картину потребления, найти взаимосвязи и сделать соответствующие выводы.
Форма настройки параметров графиков потребления и затрат.
Какие технологии были применены в решении
Мы не переделывали косметически чьи-то решения, нацепив на него ОЕМ-лейбу. Все собрано нами. Готовые части в устройствах — это только 2 микрочипа. Все остальное разработали и собрали сами. Алексей разрабатывал аппаратную часть и программировал для нее, а я — занимался программированием клиентской и серверной части.
Как уже упоминалось, сами устройства реализованы в формате установки на DIN рейку в
Для хранения и обработки данных выбрали вариант облачного сервера и веб-приложения для клиента, чтобы универсально решить вопросы совместимости для всех платформ и всех возможных браузеров. На самих энергомониторах код написан на С, сервер — на Node.js, а клиентская часть — на HTML, СSS и JavaScript.
Все, что необходимо обеспечить пользователю для нормальной работы энергомонитора, это Wi-Fi в месте установки устройства. Протокол, по которому умные счетчики обмениваются данными с сервером (упаковка, шифрование, распаковка сервером данных) — полностью наша разработка. С самого начала мы проектировали все так, чтобы данные занимали минимум места, так как детализированных данных будет много, и хранить их в текстовом виде, например, в JSON формате, никакого сервера не хватит. В нашем решении у пользователя нет ограничений по времени хранения своих накопленных данных. Кроме хранения в облаке пользователь сможет в любое время выгрузить данные в Excel.
У пользователя есть несколько путей для анализа собранных данных. Во первых, это наш дашборд, доступ к которому предоставляется бесплатно для одного устройства. Сам дашборд разработан в виде веб-приложения. Коммуникация между сервером и клиентом осуществляется по WebSocket-протоколу, что обеспечивает двухсторонний обмен информацией в режиме реального времени. Напомню, устройства в режиме реального времени отправляют текущие данные каждые 5 секунд, и пользователь имеет возможность организовать диспетчерский пульт для мониторинга своих объектов online. Во вторых, все устройства могут выступать как MQTT клиент и отправлять данные на сторонний MQTT сервер. В третьих, устройство легко интегрировать с умным домом и сторонними системами учета данных через открытый API интерфейс, который базируется на REST запросах.
Правильность выбора нашей архитектурной платформы и модели развития подтвердилась. За 2 года разработки мы пошагово наращивали функционал, а саму платформу и архитектуру решения не переделывали. При тестировании были задействованы самые разные масштабы потребления: от квартиры до офиса и ресторана.
Результаты
С самого начала мы продумывали наше решение для массового потребления. С одной стороны хотели сделать продукт максимально простым, чтобы «включил кнопку и работает». С другой стороны, если сделать функционал ограниченным, который нравится нам, то не факт, что он понравится всем. Поэтому решение получилось и простым, и в то же время очень гибким, с большим количеством настроек для кастомизации.
Мы изначально ушли от концепции «нацепить счетчик на каждый утюг, чтобы измерять каждый чих». Во-первых, это серьезно удорожает решение, а во-вторых, когда есть детализация до минуты и временная подробная карта потребления — пользователь сам все прекрасно увидит. Например, мы поставили энергомонитор на один из корпусов Киево-Могилянской академии и после посмотрели с ответственным человеком из вуза на график потребления. Пользователь сам все прекрасно увидел: «Ага, вот это кондиционер включили, а это — включили микроволновку на кухне, а это — кофемашина по утрам». И он уже смог понять, что и куда утекает, получить данные для принятия решений по оптимизации потребления. А ведь довольно часто могут воровать электроэнергию, а хозяин об этом даже не подозревает.
Благодаря нашему решению мы добились что у нас, как у пользователей комуслуг, появляется цельная картина потребления с детализацией до минуты, карта потребления, сколько и когда потребляется, и, самое главное, инструмент для принятия решений о том, где и как можно и нужно экономить.
Но если пользователю все-таки хочется управлять своей электросетью, в устройстве есть коммутационное реле для включения или выключения внешней нагрузки. Управляется с Dashboard, Web-страницы устройства, через MQTT и API интерфейсы.
Что дальше
В разработке сейчас устройство для считывания показателей импульсных счетчиков, которое будет считать расход воды (горячей/холодной), газа, тепла. В принципе универсальность наших устройств в том, что их можно подключить к любому счетчику с импульсным выходом и считать все, что угодно.
Например в импульсном счетчике воды 1 импульс — это 100 грамм воды, 10 импульсов — 1 литр. В системе прописывается значение 1 импульса, и данные уже обрабатываются приложением. Счетчик соответствующего ресурса должен быть с импульсным выходом. Например сейчас повсеместно меняют счетчики на воду в разных городах, и обычный счетчик стоит 300 грн, а с импульсным выходом — 350 грн, поэтому особо дорогого подключаемого оборудования нашему решению не потребуется. Благодаря импульсным счетчикам можно собирать данные с чего угодно на один сервер данных.
На данном этапе развития мы хотим получить обратную связь от пользователей наших устройств, так как хотим развивать свой продукт в ту сторону, которая более востребована пользователями. Для этих целей специально создан форуми база знанийна сайте.
Список возможного к разработке функционала широк. Например, можно сделать срабатывание триггеров и уведомлений (по смс или по email), если потребление резко возрастет/упадет на N-Ватт или параметры измеряемого ресурса выйдут за нормальные пределы, к примеру, 185 вольт вместо положенных 220. Также возможны любые сложные алгоритмы сбора данных и построения графиков по желанию клиента. Клиент даже сможет сделать свои скрипты в нашем коде, благодаря которым он сможет прописать сложные расчеты потребления для разных тарифных планов. В разработке самые разные сценарии обработки данных, для разных моделей потребления.
В дальнейшем хотим развивать свой продукт аппаратно, программно и также сервисно. Сейчас облачная подписка у нас бесплатна. В будущем мы хотим развивать наш облачный сервер, но оставить минимальную цену за подписку — 10 евро в год.