Categories
DIY

Home Climate

Новый заход на климатический вопрос в рамках нового климатического пояса.

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

wtf our fridge just emailed us to say we opened its door too many times in the past month

@hondanhon

Новый заход на климатический вопрос в рамках нового климатического пояса.

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

Итак, для того, чтобы рассказ был был последовательнее, имеет смысл восстановить цепочку событий, начиная с околоначала. Сначала было слово, формата, “Нафига нам термометр?”, но, неожиданно, это переросло в попытку Ардуиной мерить температуру, потом, что логично, это перешло на Raspberry PI и ESP8266. Через некоторое количество мучений произошло рождение первой версии Глупого дома.

ESP

Самая первая верcия

Немножко вторая версия

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

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

Изврашения в стиле проджект менеджера

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

  • Homeassistant как интерфейс и основное средство автоматизации
  • ESP8266+ DHT11 как конечные устройства
  • MQTT как протокол взаимодействия
  • InfluxDB/MySQL/Graphite – как БД.
  • Grafana – для того, чтобы рисовать красивые картинки

Про БД путаница исключительно из-за того, что хочется технически попробовать побольше и осознать, что лучше. На текущий момент совершенно ясно, что использование TSDB отвечает требованиям данной системы, в отличие от реляционных Баз Данных. Причина в производительности, колистве операций записи-изменений, а также – из-за того, что структура TSDB гораздо более логичная для подобного рода нагрузок.

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

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

Пользуясь реле – получилось включать свет, но теперь через MQTT.

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

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

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

Конечно, терпеливый читатель спросит, а какого, собственно, бояна, мы сызнова повторяем уже избитую тему, но нет. В этот раз нужно все сделать условно-красиво, более воспроизводимо и почти надежно. Почти SRE job. Почти error budget.

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

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

What’s your Reaction?
+1
0
+1
0
+1
0

By root

In Unix-like computer OSes (such as Linux), root is the conventional name of the user who has all rights or permissions (to all files and programs) in all modes (single- or multi-user). Alternative names include baron in BeOS and avatar on some Unix variants. BSD often provides a toor ("root" written backward) account in addition to a root account.
Regardless of the name, the superuser always has a user ID of 0. The root user can do many things an ordinary user cannot, such as changing the ownership of files and binding to network ports numbered below 1024.

One reply on “Home Climate”

[…] far intentions is to create family-oriented helper for HomeAssistant. Since then many different approaches was applied on this setup, one day, I might document it, but […]