ESP-12F

Home Automation Framework

Умный дом, или как программисту (и не только) добавить автоматики в своё жильё. Начну делиться своим опытом начального внедрения Z-Wave, а потом и самодельных девайсов в квартире.

В настоящее время для создания умного дома есть огромное количество различных решений. Если вы любитель DIY, или хотите сэкономить, а может и то, и другое – рекомендую обратить внимание на микросхемы ESP8266, или Arduino + nRF24. На базе ESP можно построить систему используя существующую домашнюю сеть Wi-Fi, на базе nRF можно построить систему по своей беспроводной сети, тоже работающией 2.4 ГГц, но не Wi-Fi, зато с преимуществом в виде возможности ретрансляции сигнала, т.е. каждая единица сети (нода) может общаться не только с контроллером, но и с другими нодами. Фактически mesh-сеть.

ESP-12F
Это “ядро” умного устройства на базе ESP-12F (8266)

С экономической точки зрения ESP-12F стоит на алиэкспрессе 1.80USD за штуку, ардуино стоит 1.60USD, но к ней ещё надо дополнительно покупать трансмиттер NRF24L01+, который стоит порядка 0.9USD.

При этом у ардуины 16-32КБ памяти и слабенький 16MHz Atmel процессор, в то время, как у ESP до 4 мегабайт флеша, аппаратный Wi-Fi с шифрованием и довольно мощный 32 битный RISC процессор, работающий на 80MHz. Выливается это всё в то, что по факту в ESP можно, не сильно напрягаясь, прикрутить OTA обновления и накрутить много всякой автономной логики, например целый веб-сервер, с помощью которого управлять нодой (т.е. обходиться вообще без контроллера). Тут можно посмотреть в сторону проекта NodeMCU, ребята запилили в прошивку интерпретатор LUA с помощью которого можно накручивать весьма сложную логику прямо на устройстве, не задействуя центральный сервер – т.е. создавать автономные системы.

esp-nrf-arduino
nRF24 + Arduino Pro Mini на фоне ESP-12

Z-Wave

В случае же, если есть много денег, или неохота заморачиваться с паяльником, прошивками и разного рода экспериментами – можно посмотреть на Z-Wave:
это уже вполне mature, production решение. В наличии обилие устройств самого разного назначения – и выключатели, и реле, и термостаты с датчиками – бери и образумливай дом хоть сейчас. Стоимость, при этом, немаленькая. Самое простое реле будет стоить порядка 25-30 евро, а контроллер вообще под две сотни тянет.

z-wave promo

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

Чтобы всё это разнообразие взлетело, я использую в качестве контроллера Raspberry PI, к которой добавлена плата расширения RaZberry, позволяющая связываться с Z-Wave устройствами. Рядом с ней добавлена плата для связи с nRF24 устройствами, а связь с ESP осуществляется через локальную сеть.

До тех пор, пока я использовал только Z-Wave – в качестве контроллера мне хватало софта от RaZBerry, под названием Z-Way, но после того, как началась экспансия на DIY устройства – пришлось искать систему, которая сможет общаться со всем этим “зоопарком”. Мой выбор пал на Domoticz. Он умеет работать и с z-wave посредством OpenZWave, и с Arduino + nRF при помощи MySensors сборки для RPi, и с ESP через MQTT, который оказался настолько мощным и удобным протоколом, что появились даже мысли попробовать, когда-то адаптировать MySensors (или как-то написать свою прошивку) на работу через него.

Similar Posts

  • Типо переезд

    Подумал я, что надо бы иметь свой блог под своим контролем, а livejournal, в последнее время, что-то начинает мутить с какими-то монетизациями, рекламами и прочей ерундой. В общем создал я себе свой блог с блекджеком на базе wordpress у себя на хостинге. Поэтому, в теории, у меня не должно быть теперь проблем со вставкой разных…

  • Флюс

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

  • starcraft II beta

    Вчера утром в почте я обнаружил инвайт на бета-тест второго старкрафта. Очень приятная неожиданность, ну очень! 🙂 Вечером я до него наконец-то добрался и сел чуток “потестить”. Итак, в бете доступен только мультиплеер, работает автоматическая система подбора противника по уровню профессионализма, можно обойтись без неё, но я до этого пока не добрался, поставил себе новичка…

  • Игра из бек :-)

    Я снова вернулся к написанию игры – подтолкнула меня к этому необходимость делать курсовую работу, в которой надо написать генератор облаков, но как только я прикоснулся, стало ясно, что писать буду снова и много. Сегодня переделал механизм рассылки сообщений о пользовательском вводе, теперь он такой же как в С#, есть эвент (boost::signal), к которому посредством…

  • ЕДАПС и люди

    Побывал я сегодня в таком замечательном месте, как “межрегиональный центр бла-бла-бла по оформлению загранпаспортов”, который находится на территории концерна ЕДАПС – крутых производителей всяческих защищённых бланков, даже для интерпола документы изготавливают. Ездил я туда оформлять новый загранпаспорт, потому что старому осталось полгода жизни и всего 3 чистых странички. По древней советской традиции занимать очереди задолго…

  • Скриптование

    Сегодня я начал прикручивать к движку механизм скриптов (Lua+Luabind) просто подключение и вывод в лог hello world прошел на удивление безоблачно 🙂 Проблемы начались, когда я начал подкручивать экспорт/импорт классов из движка в скрипты, почему-то напрочь отказались работать пропертисы, двиг вываливается на ассертах, пришлось оставить старые добрые геттеры и сеттеры. В принципе после многих часов…