EasyHome - управление умным домом с iOS, Android, Windows. Управление умным домом: система управления через смартфон

С помощью современных смартфонов можно не только совершать звонки и играть в игры. Все больше эти устройства нам заменяют офис, а также могут использоваться в системе «Умный дом». Существует масса приложений, благодаря которым можно управлять отоплением, освещением, телевидением и другими устройствами в своем доме. Благодаря им можно увеличить безопасность вашего жилья и уменьшить энергозатраты.

Навигация

С помощью смартфонов, включенных в систему «Умный дом», можно узнать, не забыли ли вы закрыть окна и выключить свет. Современные системы позволяют узнать, не пробрался ли в ваш дом злоумышленник, пока вас не было. Для этого необходимо установить специальные датчики в квартире или загородном доме. Их сигнал можно вывести на свой смартфон и больше не бояться за то, что нажитое вами добро попадет в чужие руки.

Тоже самое можно сделать и с системой отопления. Достаточно настроить термостат на управление с мобильного телефона и выставлять комфортную температуру находясь за пределами своего жилья. Зачем топить дом тогда, когда вас в нем нет? Но и ждать, когда дом нагреется, придя зимой с холодной улицы тоже не резон.

Чтобы управлять своим домом на расстоянии, разработчики мобильных приложений, выпустили большое количество программ для операционных систем iOS и Android . Давайте остановимся на них подробнее.

Netatmo Welcome: Камера с технологией распознавания лиц

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

К сожалению, это приложение может работать только совместно с видеокамерой, которую можно приобрести в компании Netatmo за 20 тысяч рублей. Такое устройство может идентифицировать людей по их лицам. Но, если лицо человека не будет «знакомо» такому устройству, то оно передаст фотографию на смартфон владельца.

Кроме того, камера может вести запись людей, входящих в ваш дом. Файлы такой записи хранятся как в самой камере (на SD-карте), так и передаются по FTP на удаленный сервер.

Если вы дома, то не спешите отключать устройство. Ведь среди дополнительных функций такого девайса – информирование о задымлении, выявлении опасных звуков и т.п.

Yale ENTR: Открываем входной замок с помощью смартфона

Еще несколько лет тому назад нельзя было представить того, что дверь можно будет открыть без использования ключей. Сегодня все больше используются для этих целей смарт-карты, кодовые замки и другие устройства. Но, в наше время, когда мобильный телефон имеет столько возможностей, грех его не использовать и в этой цели. Сделать это можно с помощью приложения ENTR Smart Lock.

Это приложение работает совместно с «умным» замком ENTR. Для его открытия достаточно включить приложение и провести на экране пальцем сверху вниз. При этом, активируется защитное соединение Bluetooth Low Energy, открывая замок.

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

Кстати, купить «умный» замок ENTR можно за 30 тысяч рублей.

Gigaset Elements: Защищаем дом от злоумышленников

Хоти защитить свое жилье, потратив при этом всего 15 тысяч рублей? Сделать свой дом более безопасным можно с помощью комплекта Gigaset Elements, стартовая комплектация которого стоит вышеназванную сумму. В этот комплект входит датчик взлома двери, датчик движения и центральный пункт управления.

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

Можно включить в такую систему датчики открытия окон, сирену и камеры слежения. Но, тогда цена комплекта существенно увеличиться.

Panasonic Home Network: Управление системами на расстоянии

Известная компания Panasonic тоже не стоит на месте. Этот японский разработчик предложил своим клиентам систему безопасности Smart Home. Эта система объединяет несколько датчиков (двери, окна, протечки воды, разбития стекла и т.п.). Их главная обязанность оповестить владельца дома о форсмажорных обстоятельствах. Датчики синхронизируются со смартфоном по средствам мобильного приложения Network System и интернет-соединения.

Стоимость набора датчиков Starter Kit Plus (около 20 тысяч рублей). В систему от Panasonic можно включить и другие модули. С их помощью можно не только «ждать» сигнала, но и самому наблюдать за тем, что происходит в вашем доме. При этом «картинка» будет выводиться на смартфон владельца «умного» дома.

eQ-3 Homematic IP: Регулируем температуру в доме на расстоянии

Еще одна известная компания, работающая в сегменте «умный» дом, eQ-3 предложила пользователям возможность удаленного управления температурой. Для этого она выпустила приложение, с помощью которого можно регулировать радиаторными термостатами находясь на работе, в гостях или в другом месте, далеко от своего дома.

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

NooLite: Умный дом

Еще одно приложение, которое можно включить в свою систему «умный» дом. Ее главная задача — это управление светом на расстоянии. Для этого, все осветительные приборы должны быть снабжены радиоуправляемые выключатели системы nooLite и объединены в единую систему через Ethernet-шлюз PR1132. После чего можно включать и отключать свет с помощью смартфона и установленного приложения NooLite: Умный дом.

Также, это приложение можно синхронизировать и с другими датчиками, установленными в доме. Например, датчиками влажности, температуры и т.п. Их данные также будут поступать на смартфон с помощью описываемого приложения.

Philips Hue: Регулировка освещения на расстоянии

Это приложение, как и предыдущее, поможет «разобраться» с освещением. С помощью Philips Hue можно менять цвет испускаемого света, настраивать автоматическое включение и выключение света. При наличии соответствующих датчиков можно запрограммировать освещения так, чтобы оно выключалось после того, как дом покинут его владельцы.

Минимальный набор из трех цветных ламп Е27 и хаба Hue Bridge для создания такой систему обойдется в 17 тысяч рублей.

Создать систему «умного» дома очень просто

Для того, чтобы создать систему «умного дома» нет нужды в штроблении, сверлении и прокладки новой проводки в доме. Ведь, большинство приборов, которые будут включены в такую систему достаточно оснастить Wi-Fi или Bluetooth-модулем.

По средствам радиосигнала, они будут передавать данные на центральный пульт, который снабжен роутером. А уже он передаст всю интересующую владельца такого дома информацию на его смартфоны или планшет.

Видео. Настоящий умный дом. Гаджеты, устройства и новые технологии

Здравствуйте, дорогие читатели! Очередная история о том, как менеджер самого среднего звена, сдувая пыль с залежавшихся железок на полке, творит такое, от чего у профессионалов всех мастей боль в глазах. ¡Но, это работает, amigo!

Признаюсь, в этот раз я все хотел сделать правильно. Взял Raspbery Pi с полки. Пирожок тот самый, что я уже использовал в своем роботе-газонокосилке: ссылка на пост и ссылка на другой пост . Взял mosquitto, все должно было работать на mqtt, но от себя никуда не убежишь. Под катом море граблей, велосипедов, плохой пайки, сплошной ад для перфекциониста.


Все началось с желания дополнить мой проект Noorik , который я поставил себе на ворота. Если коротко - это DIY решение для GSM блока открытия ворот.
Для открытия ворот достаточно замкнуть определенные контакты на плате.

Заменил arduino на esp8266 и сделал веб-интерфейс с кнопкой открытия. Это оказалось интересно, но дальше я захотел единый интерфейс для открытия откатных ворот, гаражных секционных ворот и калитки.

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

  1. система управления котельной
  2. охранная система
  3. мобильный интерфейс к камерам видеонаблюдения
  4. данные о температуре в доме и на улице

Бэкенд

Малинка работала нормально, но при очередном включении просто перестала включаться. Светодиод питания сначала загорается, затем плавно за 3-5 секунд гаснет, сильно греется элемент (polyfuse T075) около гнезда питания. А тут уже руки чесались применить mqtt, блэкджер, пригласить куртизанок и прочие прелести.

Не беда, благо своей участи ждал другой пациент. Orange pi zero в студию. Сколько я не мучился с этим чудом китайской мысли - вдохнуть жизнь в такой маленький пирожок оказалось делом выше моих сил. Я скачивал прошивки на официальном и левых сайтах, я покупал прошивки с рук и обменивал на криптовалюту. Думаю, мне просто попался бракованный образец.

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

Первым делом я решил использовать как головное устройство (брокер, сервер) видавший виды смартфон. Знаете эти старые вещи просто так не уходят. Им пользовался я, жена, дочь, потом я управлял с этого смартфона своим роботом-снегоуборщиком , я пытался утопить его в реке (до Москвы-реки я так и не добрался, но в родной Пахре эта труба навела шороху). И вот она - новая жизнь для Samsung Galaxy S3.

Установил на смартфон Palapa Web Server и Ftp-сервер. Идея простая в базе данных MySQL всего три таблицы: values, logs, rules.

  • В таблице values пары ключ/значение.
  • В таблице logs история изменений значений.
  • В таблице rules правила изменения одних ячеек в зависимости от значения в других.
Все это хозяйство обслуживает один скрипт php, который по http запросу записывает или выдает данные из базы, а так же обслуживает правила по расписанию.
Я даже не понимаю какой должен быть уровень программирования, чтобы человек захотел это увидеть, но я готов показать Вам код - пишите в ЛС.

Фронтенд

Не кидайте в меня камни, я признаюсь сам. Я использовал Bootstrap. Да, грешен.
Первоначальной мыслью было обернуть все это через Phonegap и получить полноценное приложение. Скажу больше я так и сделал, но в итоге более работоспособной оказалась online-версия. Себе и жене на телефоне просто сделал ярлык на рабочем столе для открытия нужной странице по внутреннему ip.

Каждый элемент реагирует на событие нажатие + проверяется состояние ajax запросами на сервер и изменяется в случае необходимости. Очень удобно, так как видишь все изменения, которые вступили в силу по правилу или сделаны другим пользователем.
Собственно, код по запросу без проблем.

ESP-8266


Я пробовал разные модули и чистый ESP-8266. В итоге самым удобным вариантом оказался модуль LOLIN V3.

Питание с помощью импульсных блоков питания.

Модули для ворота требовали реле и у меня были опасения, что контактные реле будут срабатывать. В итоге работют и твердотельные и контактные. Проблема с тем, что большое количество модулей даже без маркировки об этом являются low-triggered.

При включении модуля происходит кратковременное открытие, которые приводит к непроизвольному открытию при включении питания. Решается подтяжкой к нулю и объявлением состояния до объявления типа выхода.

DigitalWrite(rele, 1); digitalWrite(rele2, 1); pinMode(rele, OUTPUT); pinMode(rele2, OUTPUT);
В итоге модуль для гаража в сборе выглядит так. PIR-датчик для определения движения аккуратно вгрызан в родную обшивку.

В котельной у меня котел очень простой и ни о какой сложной автоматике и речи не идет.

При этом каждый контур обслуживает отдельный насос.

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

Аккуратно впихивает все хозяйство в щиток.

Прошивка

Решил использовать для прошивки Arduino IDE, чтобы не связываться с nodemcu и lua. В интернете и на GT в частности огромное количество информации для начинающих.
Из интересного, мне кажется, функция соединения с wifi. Дело в том, что у меня в доме 4 сети wifi и может добавиться. Чтобы жестко не задавать название сети предварительно проводим сканирование доступных сетей.

Код setupWiFi()

void setupWiFi() { WiFi.mode(WIFI_STA); WiFi.disconnect(); delay(100); while(WiFi.status() != WL_CONNECTED) { int n = WiFi.scanNetworks(); Serial.println("scan done"); if (n == 0) Serial.println("no networks found"); else { Serial.print(n); Serial.println(" networks found"); for (int i = 0; i < n; ++i) { Serial.println(""); Serial.print(i + 1); Serial.print(": "); Serial.print(WiFi.SSID(i)); Serial.print(" ("); Serial.print(WiFi.RSSI(i)); Serial.print(")"); Serial.println((WiFi.encryptionType(i) == ENC_TYPE_NONE)?" ":"*"); j=0; ssid=WiFi.SSID(i); Serial.print("Connecting"); ssid.toCharArray(charBuf, 50); WiFi.begin(charBuf,WIFI_PASS); while(WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); j++; if(j>20){ break; } } if((WiFi.status() == WL_CONNECTED)){ break; } } } } Serial.println("Connected"); Serial.println(WiFi.localIP()); }


При включенном автоматическом режиме котельной по расписанию проверяется температура на улице и температура теплоносителя.
  • При температуре ниже 14*С включается теплый пол первого этажа.
  • При температуре ниже 4*С включаются все контуры.
Температура теплоносителя выбирается по таблице в зависимости от сечения труб и уличной температуры. При достижении необходимой комнатной температуры котел выключается. Ко всему применен некий гестерезис для сглаживания переходных значений.

Система охраны работает еще проще. В таблице есть правило о том, что при включенной системе охраны, если обнаружено движение у одного из PIR-датчиков происходит отправка SMS через API одного из сервисов.

Планы

  • создание online-версии на удаленном сервере и синхронизация изменений для возможности удаленного управления.
  • Отображения данных с GSM/GPS маячков в машине;
  • Открытие ворот при появлении наших машин в определенной зоне;
  • Подключение к системе пультовой охраны;
Голосование по фото. Какой проект делать следующим?

Вадим Балашов, iOS-разработчик из команды мобильной «Почты Mail.Ru», рассказал сайт, как он создал в своей квартире «умный дом» и разработал приложение для часов и бота для Telegram, чтобы управлять системой устройств.

Немного о розетках

Моя жена очень любит выключать всё из розеток. Уходя, она всё выдергивает, а я потом возвращаюсь домой и вставляю обратно. Мне это не нравится. Я пробовал разное: просил, уговаривал, убеждал, угрожал - ничто не помогло. И тогда я решил, что надо найти высокотехнологичный способ уладить конфликт - каким-то образом коммутировать розетки, чтобы не нужно было физически вытаскивать штекеры по всей квартире.

Ну что ж, паяльник есть, руки тоже. Начал думать над реализацией, но сразу возникло очень много вопросов. Например, какой контроллер использовать для управления? У меня был опыт программирования контроллеров линейки AVR от Atmel. Выглядит всё довольно просто: реле, транзистор для развязки и управление одним пином контроллера.

Задачи встало две. Во-первых, контроллер и реле надо питать, а во-вторых, контроллером нужно управлять. С питанием представилось три варианта.

  • Самый простой - запитать от батареек. Но батарейки будут садиться, их придётся менять, а это неудобно.
  • Размещать преобразователи из 220 в 5 вольт прямо рядом с контроллером в каждой розетке. Способ отличный, но готовых компактных преобразователей я не нашёл, а самому возиться с преобразователем не хотелось. Да и боялся накосячить и спалить квартиру.
  • Подвести питание извне к каждой розетке.

Задача управления контроллером распалась на два принципиальных пути: управление по радио и управление по проводу. Вариант с проводом выглядит проще, но опять же требует подведения шнура к каждой розетке. Решил, что когда буду делать следующий ремонт, то заранее предусмотрю это и подведу к каждой розетке провод, например UTP 5-й категории. Но пока нужно было разбираться с имеющимися несвязанными розетками.

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

Я начал изучать имеющиеся готовые системы, на которых можно было бы построить «умный дом». Сразу решил, что связь модулей должна быть беспроводная. Осталось выбрать технологию. Сначала варианта было два - Wi-Fi и Bluetooth. Они очень распространены, под них много готовых решений.

Но Wi-Fi, работающий на 2,4 ГГц, не слишком удобен с точки зрения организации сети. Высокое распространение и отсутствие регулирования при установке точек доступа делает эту частоту сильно зашумлённой. Хочется иметь более или менее стабильную систему, чтобы у меня не подвисало переключение розеток, когда работает соседский роутер.

Это оказалось не самой серьёзной проблемой. Гораздо более страшный враг Wi-Fi - микроволновая печь. Магнетрон моей микроволновки излучает волны на частоте 2,45 ГГц - когда она включается, вокруг не работает ничего. Гаснет стриминг Bluetooth аудио, гаснет стриминг видео по Wi-Fi, файлы не качаются, страницы не открываются. Причём неважно, какой конструкции у вас микроволновка, встроенная или отдельно стоящая - она по-любому будет вносить помехи. Поэтому от использования Wi-Fi и Bluetooth я тоже отказался.

Z-Wave

Начал изучать, какие ещё существуют решения. Например, у ZigBee несколько стандартов частоты: есть 2,4 ГГц, а есть в районе 1 МГц. Но тут я наткнулся на статью на «Хабрахабре», где рассказывалось про Z-Wave. Впечатлился. Базовые модули Z-Wave сейчас выпускают всего две компании в мире - Sigma и Mitsumi. Его размеры - примерно сантиметр на сантиметр. По сути, это микроконтроллер с приёмопередатчиком. Его даже можно перепрошивать, но чаще всего в готовом виде монтируют сверху на плату, подключают к нему UART, и он работает как приёмопередатчик.

Все устройства, которые хотят получить значок «Совместимо с Z-Wave», должны пройти сертификацию. Платформа закрытая, что даёт некоторое преимущество с точки зрения совместимости. Для сравнения: в продаже очень много Bluetooth-решений для домов, и почти все они не совместимы между собой. А все устройства Z-Wave совместимы - благодаря единому закрытому стандарту, который тем не менее эволюционирует. Доступна платная SDK, стоит примерно $2 тысячи. Если вы собираетесь одну штучку дома спаять - это дорого. А если намереваетесь наладить производство 2 тысяч устройств, то получите всего доллар разницы на каждое - вполне неплохо.

Дальность связи у стандарта Z-Wave около 30 метров. Одно из его преимуществ в том, что устройства выстраиваются в ячеистую сеть (mesh) и практически в каждом модуле есть таблица маршрутизации. Поймав сигнал, любой модуль знает, надо передать его дальше или нет. То есть почти каждый модуль является ещё и ретранслятором. «Почти» - потому что в Z-Wave существуют «спящие» устройства, которые не участвуют в ретрансляции. Такие устройства обычно работают от батареек и выходят на связь при необходимости.

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

На Amazon продаётся масса Z-Wave-устройств. Есть модули, встраиваемые в розетку и выключатели, есть модули для построения системы безопасности. Замки, сирены, освещение, датчики дыма, датчики протечки воды - что угодно. Я нашёл даже автоматическую кормушку для котов.

Что касается рабочей частоты, то она находится в районе 900 кГц. Эта частота не является открытой для всех стран в мире, для каждой страны нужно проходить сертификацию и получать разрешение на использование этой технологии, поэтому в разных странах несущие частоты немного отличаются. В Европе частота 868,42 МГц, в России - 869,0 МГц, в США и Канаде - 908,42 МГц, в Гонконге - 919,82 МГц, в Австралии - 921,42 МГц.

Если вы купите модуль, который сделан для Европы, то программно его можно перевести на российскую частоту. Точно так же можно программно переключать частоты устройств, сделанных для Гонконга и Австралии. А вот американские устройства не переключаются. Поэтому существует три категории одинаковых устройств, и нужно обращать внимание на то, для какого региона они изготовлены. Гонконг и Австралию вы вряд ли встретите, так что смотрите только на США, Россию и Европу.

При выстраивании ячеистой сети используется режим Explorer Frame: все устройства «затихают», контроллер запускает сканирование сети, и устройства начинают по очереди отвечать. Происходит своеобразная перекличка, когда каждое устройство выстраивает свою таблицу маршрутизации. Например, этот режим рекомендуется включать после перестановки мебели: есть вероятность, что передвинутый шкаф начал экранировать сигнал между какими-то устройствами, но открыл пространство между другими.

Считается, что стандарт обеспечивает устойчивую работу на расстоянии 30 метров на открытых пространствах и до 10 метров - в квартирах. Конечно, расстояние устойчивой связи между модулями, размещёнными в розеточных нишах, будет ещё меньше, но за счёт маршрутизации всё работает достаточно стабильно.

Теперь поговорим о коммерческих контроллерах. Наиболее распространены две марки: Fibaro и Vera. У Fibaro есть серии - Home Center и Home Center Light. У Vera тоже две серии контроллеров, одна подороже, вторая подешевле. Все они поддерживают базовые наборы правил, и вы вполне сможете сделать так, чтобы при включении одного устройства активировалось другое, а через какое-то время выключалось или делало что-нибудь ещё. Но если вам нужно реализовать более сложное поведение, то придётся программировать самостоятельно. В качестве языка используется Lua.

Есть и третья, менее распространённая марка - Zipabox, но эти контроллеры, судя по описанию, не поддерживают расширенную автоматизацию. Тем не менее Zipabox интересен тем, что у него есть модули расширения, которые стыкуются, как конструктор.

Но мы сейчас поговорим о другом проекте, имеющем отношение к Raspberry Pi. Это проект сообщества, которое решило сделать максимально дешёвое «железо». Сегодня Raspberry Pi в розницу стоит около 4000 рублей. На Amazon можно купить за $50, при текущем курсе это почти в полтора раза дешевле. На Raspberry Pi поднимается веб-сервер с пользовательским интерфейсом, для которого можно писать автоматизацию на JS. В качестве «железа» используется плата расширения, которую назвали RaZberry, выглядит она так:


А вот пример интерфейса панели управления, которая называется Z-Way. Он отображается в браузере, неплохо работает и на планшетах.


Вот пример настроек. Можно посмотреть, где в какой момент работают все устройства, проверить подключаемость, посмотреть таблицу маршрутизации и так далее.



Одно из преимуществ Z-Way - проект открытый, вот ссылка на GitHub. Команда разработчиков «с офисом в интернете», как пишут они сами, раскидана по разным странам: Россия, Германия, Швейцария. Интерфейс можно бесплатно скачать с GitHub, при желании - пересобрать что-то самому. И всё это прекрасно управляется из админки.

Управление

Я начал думать, как реализовать более удобное управление системой, чем с компьютера через админку. Это сегодня есть приложения для Android и iOS, а два года назад официальный клиент под Android оставлял желать лучшего: я так и не понял, как им пользоваться. Нашёл, настроил, подключился, но пользоваться не смог. В то время я был адептом Windows Phone, под который не было клиента. «На коленке» написал клиент для себя - когда выключатели рассинхронизировались, жена обращалась ко мне за помощью.

Год назад, в феврале-марте 2015 года, компания Pebble запустила сбор средств на создание новой версии часов - Pebble Time. Я поддержал проект, и к октябрю часы уже были в моём распоряжении. Я подумал, что это прекрасная штука для управления «умным домом». Ведь телефон не лежит всегда в кармане, дома я просто кладу его куда-нибудь, а часы обычно на руке. К тому же Pebble, в отличие от часов на Android Wear или Apple Watch, подключается и к iPhone (которым я к тому времени пользовался) и к телефонам на базе Android.

Pebble


У Pebble довольно много достоинств. Во-первых, они целую неделю работают на одном заряде. Пользователи Apple Watch знают эту боль, когда уже к вечеру нужно искать зарядку. Кроме того, у Pebble экран всегда показывает время, потому что сделан на базе цветных электронных чернил. Есть поддержка двух основных операционных систем. Часы водоустойчивы. А ещё они имеют аппаратный порт. Подключаются «умные» ремешки, которые можно делать самому (на сайте Pebble есть подробное описание).

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

Работу Pebble обеспечивает операционная система на базе OpenRTOS. Приложения для часов напоминают веб-приложения. Фронтенд исполняется на часах и пишется на C, а бэкенд работает в телефоне и пишется на JavaScript. Разработчики веб-приложений сейчас пришли в ужас: где это видано, фронтенд на С, а бэкенд на JS?

Но это легко объяснимо: C как наиболее компактный для компиляции язык очень удобен для создания встраиваемых приложений, а плюс JS в том, что он одинаково хорошо исполняется на iPhone и Android. JS работает внутри телефона и обеспечивает интерфейс для выхода в интернет и доступа к GPS. Сами часы имеют встроенный акселерометр, гироскоп и магнитный компас, то есть базовый набор «железа».

В итоге я написал приложение для управления своей системой «умного дома». Сначала для последней версии часов, а потом реализовал поддержку самой первой модели Pebble - с чёрно-белым экраном.


Настройки делаются в виде HTML-страницы. Для разработки Pebble советуют использовать Slate Frontend Framework. Страница должна быть расположена в вебе, что само по себе странно, потому что без подключения к интернету вы ничего не настроите.

После того как я написал приложение, я выложил его в официальный магазин приложений и забыл о нём. Его установили 40 человек, и я начал получать отзывы. Я давно не программировал на С и с ужасом вспомнил, что с выделением памяти - и, что ещё страшнее, с её высвобождением - нужно работать вручную. Поэтому в первой версии я сделал статический массив для восьми устройств, которые у меня были, и всё это прекрасно работало у меня дома.

Но в сетях, где больше восьми устройств, понятное дело, не работало. И первый отклик был из Дании: «А можно ли сделать больше?» Я, конечно, сказал, что можно, и ещё за один вечер перевел приложение на динамические массивы. Товарищ был счастлив, но не очень долго.

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

Я подумал ровно вечер и придумал одну штуку. В админке Z-Way можно вешать на устройство теги, и я решил просто добавить тег Pebble, а в настройках часов ввести режим, когда на экране отображаются только помеченные этим тегом устройства. Пользователь сам выбирает, какие устройства он хочет видеть. Товарищ написал, что это просто великолепно: теперь у него пять устройств, которыми он управляет прямо из часов.

Потом мне написал о проблеме другой пользователь моей программы. Приложение умело отображать датчики, а управлять могло только выключателями, причём выключателями типа «Вкл» / «Выкл». Но существует много других управляемых устройств - например, диммеры, для которых можно устанавливать значения от 0% до 100%. Или RGB-модули, на которых можно выставлять любой цвет.

Я согласился добавить поддержку подобных устройств, но попросил прислать структуру его сети, чтобы посмотреть, как они выглядят живьём. Он прислал, я посмотрел - выглядят классно, но непонятно, что с этим делать. Я полез в настройки и выяснил, что в Z-Way есть виртуальные устройства. Такому устройству можно выставить тип, например, Multilevel Switch, и оно превращается в виртуальный диммер.


Ничем не управляет, но делает вид, что он диммер. Хотя почему «ничем»? Управляет сам собой. Я могу с часов выставить значение, и он покажет мне его в дашборде. Этого мне хватило для реализации поддержки диммеров.

Потом я взялся за RGB. Это управление светодиодными полосами, которые могут отображать любой цвет. RGB-освещение появилось в стандарте Z-Wave не так давно, поэтому изначально оно выглядело в системе как три диммера. То есть все устройства рапортовали, что они три диммера, и можно было отдельно управлять красным, зелёным и синим каналом. Для удобной работы со старыми устройствами в современных системах управления сделали виртуальное устройство RGB-освещения, в котором можно задать три диммера.


Поскольку мы уже умеем задавать Dummy Dimmer, то можем сделать Dummy RGB. Это тоже хорошо работало, но поддержку управления цветом я пока ещё не реализовал - отправил «заказчику» только управление диммерами. И для него я как раз настраивал поддержку чёрно-белых часов.

Виртуальные устройства

В чём ещё мощь виртуальных устройств в Z-Wave? Возьмём виртуальное HTTP-устройство, и пусть у вас есть любое другое устройство, которое несовместимо со стандартом Z-Wave, но управляется с помощью HTTP-запросов.


Тогда мы пишем HTTP-запрос на включение: адрес, который нужно дёрнуть, запрос на выключение и запрос на получение статуса устройства. Вероятнее всего, устройство, которое не поддерживает Z-Wave, не поддерживает и ответ в формате On / Off.

Для его поддержки можно ввести Inline JavaScript, который будет преобразовывать ответ с вашего устройства в On или Off. А имея виртуальное устройство, дальше мы можем делать всё, что угодно. Например, интегрировать в эту систему любое устройство на базе контроллеров ESP8266. То есть мы делаем три конца, на которые устройство умеет реагировать, а дальше любую обвязку.

Сцены

Это набор состояний логических устройств. Сцену нельзя включить или выключить - её можно только активировать. У меня, например, сделана сцена Away, которую я активирую, выходя из дома. Она выключает свет в ванной и туалете, выключает розетки в ванной и на кухне. Активация сцены Away выключает всё, что есть управляемого у меня дома. Также у меня есть сцена Back. Она включает обратно две розетки, но не свет: вернувшись, вы включите его тогда, когда он будет нужен.

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

И последнее. Z-Way на часах хорош, но управлять можно только дома. Если хочется управлять извне, то можно сделать бота для Telegram. Он у меня простенький: ему посылают команду Light, он спрашивает: «Где?» - и показывает пиктограммки туалета и ванной. Выбираешь место, он спрашивает: «Что сделать?» - и показывает светящуюся лампочку и чёрную. Выбираешь чёрную, и он говорит: «Ок, свет в ванной выключен».

Заключение

Это увлечение «умным домом» у меня происходило наплывами. Я в какой-то момент загорелся идеей, заказал модули, встроил один, который управлял только светом в туалете и ванной. Ещё заказал датчик движения, температуры и влажности. Повесил в ванной и сделал классную автоматизацию: свет в туалете автоматически отключается через 15 минут, если забыли выключить, а свет в ванной включается при входе, по датчику движения, а выключается через 15 минут. Всё классно - кроме того, что жить с этим невозможно. Оказалось, что 15 минут в туалете - это на самом деле мало, особенно если там хорошо ловится Wi-Fi. А он ловится хорошо. Увеличение периода ожидания не помогло, так что эту автоматику я пока отключил и заказал ещё один датчик движения.

Автоматика в ванной простая: входишь - свет включается, выходишь - выключается. Удобно. Но сперва я настроил её не очень удачно: датчик движения стоял на входе, а когда ты заходишь в душ и задёргиваешь шторку, он тебя не видит, и через 15 минут свет гаснет. Нужно открыть шторку, махнуть рукой и задёрнуть шторку обратно. Проблема решилась переносом датчика в середину ванной, чтобы он реагировал на движение по обе стороны от шторки.

О разработке своей собственной шины «CLUNET» для соединения устройств в «умном доме». Многие просят рассказать о том, что же у меня получилось в итоге, что я сейчас и попытаюсь сделать.

Попытался начертить схему моей комнаты со всеми устройствами объединёнными в сеть, картинка кликабельна:

Вся идея держится на трёх китах:

  • Децентрализация - вся система функционирует без какого-либо главного модуля;
  • Простота - минимум компонентов и лёгкость подключения;
  • Дешевизна - себестоимость устройства легко уложить в 100 рублей.
При таком подходе можно легко создавать и добавлять в CLUNET-сеть устройства, каждое из которых отвечает за какую-то простую функцию. У всех устройств есть свой адрес, при этом они могут обмениваться между собой пакетами напрямую, без участия какого-либо главного модуля, и это очень активно используется:
  • Пакеты от ДУ-приёмника получают выключатель и открыватель окна, что позволяет управлять светом и открывать окно с любого пульта или Nintendo Wii U;
  • Датчики движения информируют выключатель о том, что в комнате никого нет, и можно выключить свет;
  • Дисплей в коридоре выводит всегда актуальную температуру на улице, получаемую от датчиков температуры;
  • По команде от кодовой панели открывается дверной замок;
  • Устройство с пищалкой издаёт звуки, когда узнаёт об открытии замка, нажатии кнопки или звонке в домофон.
Этот список легко меняется и дополняется с учётом того, что прошивку каждого устройства можно обновлять прямо по сети. И нет, у меня не возникает проблем с непониманием своих исходников. Код всех прошивок получается предельно простым.

Единственным главным устройством, пожалуй, можно назвать только блок питания. В данный момент он у меня один почти на все самодельные устройства, и отлично с этим справляется. Многие скорее всего скажут: «Да у тебя же наверное всюду провода!», - отчасти это правда, но у меня нет никакой фобии по отношению к проводам. К тому же маленький шлейф с питанием и линией данных почти незаметен на фоне остальных кабелей.

Роутер с CLUNET-адаптером

Мой роутер помимо маршрутизации трафика выполняет ещё одну роль - маршрутизация трафика он является «окном» для устройств CLUNET сети в Интернет. Или скорее наоборот - позволяет из Интернета и локальной сети командовать всеми устройствами. Для этого в его USB порт включено специальное устройство.

Не буду сильно повторяться, про это я рассказывал в статье о CLUNET протоколе . Идея проста - роутер на основе Linux, и на нём работает демон, который принимает входящие подключения из локальной сети или Интернета и предоставляет доступ к сети устройств умного дома.

Помимо этого роутер используется как простенький веб-сервер, чтобы можно было управлять устройствами через веб-интерфейс на случай… ну так, на всякий случай:

Весьма удобно использовать и cron на роутере для самых разных задач - от открытия окна или обогрева комнаты по расписанию до банального будильника. Для последнего у меня сделан простенький веб-интерфейс и скрипты:

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

В ответ на пакеты приходящие от устройств тоже выполняются различные скрипты. Так ведутся логи по самым различным событиям типа звонков в домофон, рисуются графики температуры (http://clusterrr.com/sensors/t/) и других данных, отправляется push-уведомление мне на телефон, если вдруг в комнате открыта дверь, а меня дома нет, и прочее.

Софт для Windows

На компьютере работает приложение, которое подключается к демону на роутере и позволяет полноценно управлять всем и вся. В главном окне можно отследить весь трафик между устройствами и послать им любую команду:

В нём можно наблюдать за тем, как умный дом живёт полноценной жизнью, но на практике это нужно только для отладки. Всё можно делать по клику на иконке в зоне уведомлений:

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

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

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

Помимо этого этот софт выполняет и обратную роль - получает коды кнопок от ДУ-приёмника и имитирует WinLIRC-сервер - популярную программу для работы с ДУ-пультами. Работу с ней поддерживает, например, MPC-HC, есть плагин для foobar2000. Таким образом можно делать и наоборот - управлять приложениями на компьютере при помощи любого пульта.

Софт для телефона

Ну как же без управления всем этим с телефона из любой точки мира? Приложение для Android обладает примерно такой же функциональностью. В основном активити можно переключаться между различными режимами путём горизонтального свайпа.

Планшет

Сначала у меня была мысль - спаять настенную панель управления, которая висела бы над кроватью, чтобы выполнять с неё простейшие действия - включать свет, регулировать громкость, управлять телевизором и пр. Хотелось бы добавить туда и экран для вывода основной информации.

Но скоро меня осенило, что времена уже не те. Гораздо проще купить дешёвый китайский планшет на Android и повесить его на стену. Да, подобные планшеты обычно тормознутые и весьма низкого качества, но для моих целей этого вполне достаточно. Сказано - сделано.

Пришлось накодить различные виджеты рабочего стола:

Но это всё равно было недостаточно удобно, особенно когда хотелось сделать что-то на ощупь. Через некоторое время я вспомнил, что в Android есть отличный API по распознаванию голоса. Потребовалось всего полчаса, чтобы планшет начал выполнять свои первые голосовые команды. Вскоре набор возможных команд сильно вырос.

Знакомьтесь, вот моя электронная жена:

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

Аналогичная служба была в итоге установлена и на телефон. Работает она только при подключенной зарядке. Наверное было бы здорово использовать для этого Google Glass.

Подробнее об устройствах

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

Кнопки сенсорные - одна прибавляет количество ламп, другая убавляет. Есть возможность установить таймер выключения, но его необходимость отпала с появлением настенного планшета. Дружит с ДУ-приёмником и датчиками движения.

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

Суть в том, что у меня в комнате жили мыши, а в остальной части квартиры - коты. Весь смысл устройства был в том, чтобы дико пищать, если забыли закрыть дверь, ведь коты ни в коем случае не должны проникнуть в комнату к мышам. Теперь же устройство посылает в сеть пакеты при открытии и закрытии двери. Роутер же пишет логи её открытия и посылает мне push-уведомление, если вдруг она открыта, когда меня нет дома. Моё местоположение определяется по мобильному телефону. Помимо всего этого пищалка теперь используется для самых разных звуковых уведомлений - домофон, открытие замка, нажатие кнопок на кодовой панели.

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

Датчики движения
В комнате висят два вот таких вот датчика движения.

Способствуют выключения света, когда движения долго нет, а ещё смене моего статуса на «away» в мессенджерах. Помимо них движение определяют ещё и четыре видеокамеры.

Дверной замок и кодовая панель
Когда я стал счастливым обладателем 3D принтера, мне очень захотелось поэкспериментировать с механикой. В результате я разработал и напечатал механизм дверного замка. Первый блин комом, и получился дикий колхоз, но функционирует он отлично. С внешней стороны двери я сделал кодовую панель, она уже вышла получше. Лучше просто посмотреть видео.

Теперь у меня всё как у серьёзных взрослых дядь!

Датчики температуры и освещения
Тут особо нечего рассказывать. Устройство висит под подоконником и опрашивает по 1-wire датчики температуры, помимо этого экспериментально сделан ещё датчик освещения. Сам не знаю зачем.
Открыватель окна
Его вы уже могли немного видеть на видео выше. Сам механизм покупной и представляет из себя цепь с двигателем. Приятно было узнать, что есть компании, которые делают подобные штуки.

Сам привод питается от 220В. Слева в коробке схема с двумя реле, которые подают питание. Я снял с окна одну петлю, что позволило открывать его в два раза шире, поэтому открывать можно полностью и наполовину.

Дисплей в коридоре
Однажды при выходе из дома мне захотелось видеть текущую температуру на улице и время. Вот и всё.

А ещё там бегает Pac-Man, для которого было нарисовано несколько кастомных символов.

Мышиные клетки
Мышиные клетки передают в виде ИК-сигналов информацию о том, сколько каждый мыш пробежал в колесе. Про это тоже была отдельная статья: http://habrahabr.ru/post/165269/
Увы, сейчас остался только один мышонок, и бегает он уже мало.
Видеокамеры
В комнате стоят четыре IP-камеры с механизмами поворота.

Они отправляют на удалённый сервер короткое видео, когда открывается дверь. Или длинное, если меня при этом нет дома. При наличии движения они периодически делают фотографии. Помимо всего этого камеры работают как дополнительные датчики движения. Если что-то начало двигаться, они запрашивают ссылку на роутере, а тот в свою очередь посылает широковещательный пакет в сеть.

Заключение

Надеюсь, что статья получилась не слишком нудной. Я не знал, как рассказать обо всём так, чтобы было интересно, информации достаточно много, излагать я старался кратко.

Многие люди наверняка будут спрашивать меня: «Зачем тебе столько видеокамер?», «Зачем тебе кодовая панель?», «Зачем тебе датчики движения?», «Зачем тебе всё это?»
На все подобные вопросы я отвечу одной картинкой:

Теги:

  • умный дом
  • avr
Добавить метки

Управление Умным Домом с помощью смартфонов на платформе Android

Концепция «Умного дома» уготовила особое место для мобильных технологий. До недавнего времени это перспективное направление не находило широкого применения, оно больше считалось эксклюзивным. Но сейчас ситуация изменилась коренным образом, стало возможным управление «Умным домом» с помощью смартфонов или планшетов, в которых использована платформа Android. Это дает возможность постоянно иметь при себе мобильное устройство управления, которое предназначено для организации связи с интернетом, деловых записей, звонков и прочих функций. Открытый беспроводной протокол предоставил возможность управления домом при помощи планшета с операционной системой Android, так как имеет доступ к приборам и устройствам, находящимся в доме и подключенным к электросети.

Отдельные попытки, предпринимаемые ранее, оборудовать бытовые приборы автоматикой, не смогли наделить дом или квартиру интеллектом. Сейчас обычный смартфон или планшет, может стать универсальным пультом дистанционного управления, благодаря которому можно будет как выключать в комнатах , так и включать телевизор или кофеварку. Но, перечисленные функции - это далеко не все возможности системы. Наличие мобильной консоли считается готовой платформой для любых приложений, которые могут не только вести правильный учет продуктов в вашем холодильнике, но, и эффективно управлять потреблением электрической энергией, отопления, что обязательно скажется на экономии семейного бюджета. Сам смартфон с платформой Android - это звено коммуникации между владельцем и «умным домом». Благодаря уровню покрытия мобильной связи, оставаться на связи со своей квартирой, даже находясь на большом расстоянии от нее, не составит никакого труда.

В настоящее время осуществляется выпуск специальных приборов, позволяющих осуществлять интеграцию различных «умных» элементов дома. Сам процесс управления происходит через доступный к пониманию интерфейс при помощи смартфона или планшета. Для этой цели можно использовать не только смартфон, но и консоль операционной системы Android. В интеллектуальной сети могут быть объединены совершенно разные группы приборов: системы вентиляции, отопления, водоснабжения, а также система управления шторами, дверями, электроосвещением и прочее. Приложение, установленное на телефоне, может отражать - сколько потрачено в доме электроэнергии, состояние охранной системы, климатическая обстановка в доме. Оно может распознавать конкретные аварийные ситуации в доме (утечку газа или воды, возникновение пожара, проникновение посторонних лиц в дом) и вовремя направить сигнал - в службу спасения, милицию или на электронную почту. Соблюдая меры , связь может вестись с использованием шифрованного соединения (такого же, как для транзакций при финансовых операциях). Это делается с единственной целью - во избежание подсоединения посторонних лиц к управлению домом.

Совсем недавно в свет вышла новая платформа Android Home, основным назначением которой является объединение всех устройств системы «умный дом». Данная операционная система очень интенсивно развивается и уже сегодня дает большие возможности по децентрализации управления системой «умный дом» с помощью мобильных устройств на базе ОС Android.

Теперь появилась возможность управления телевизором, спутниковым ресивером, стиральной машиной, диммерами в доме и светильниками с помощью любого устройства имеющего за основу платформу Android. Управление данными устройствами и подсистемами происходит посредством интернет соединения, что делает мобильное устройство универсальным пультом, позволяющим управлять процессами в доме из любой точки планеты. Кроме управления системами в доме, разработчик ОС Android всемирно известная компания Google предлагает интеграцию системы мультирум с развлекательными сервисами от компании Google. Это делает возможным распространение развлекательного медиа-контента с очень большой скоростью, у пользователей появляется возможность наслаждаться любимой музыкой или просмотром легендарного фильма прямо из интернета. Интеграция данных возможностей в систему мультирум делает возможным использование данных услуг практически в любом месте дома.

Концепция построения системы «умный дом» на базе платформы Android призвана облегчить управление системой посредством использования любого мобильного устройства на идентичной операционной системе. Говоря про аналоги, Z-Wave или ZigBee, хочется заметить, что они пригодны для управления системой охраны или климат-контроля, но при децентрализованном управлении развлекательными системами операционной системе Android пока нет достойных конкурентов.




Top