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

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

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

Дальше, на всю эту конструкцию стали накладываться новые требования и ограничения. Например, самописный интерфейс – это классно и замечательно, вот только поддерживать без 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.