Новый заход на климатический вопрос в рамках нового климатического пояса.
Как и в прошлые разы, подход не сильно отличается целостностью, но вот технологическая составляющая значительно улучшилась. В этот раз заход произошел не с точки зрения улучшения аппаратной составляющей, а со стороны гонки за программной составляющей всего этого безобразия.
Итак, для того, чтобы рассказ был был последовательнее, имеет смысл восстановить цепочку событий, начиная с околоначала. Сначала было слово, формата, “Нафига нам термометр?”, но, неожиданно, это переросло в попытку Ардуиной мерить температуру, потом, что логично, это перешло на Raspberry PI и ESP8266. Через некоторое количество мучений произошло рождение первой версии Глупого дома.
Самая первая вервия
Немножко вторая версия
Дальше, на всю эту конструкцию стали накладываться новые требования и ограничения. Например, самописный интерфейс – это классно и замечательно, вот только поддерживать без CMS – уныло, или вот общение по http – сплошной оверхэд, да и просто некрасиво. Короче, пришло понимание, что нужно как-то все это окультуривать.
Долго ли, коротко ли, просто сказка сказывается, но непросто что-то получается сделать. В общем, пришло понимание, что нужно использовать что-то опенсорсное, чтобы и переписать и переделать. Уже стали понятны требования – нужна БД, чтобы это хранить, нужен MQTT, чтобы это соединять, нужен веб-интерфейс, чтобы всем показывать магию включения света, а также, было бы неплохо рисовать графики, дабы избежать порнографических сношений с Excel.
После того, как определились с целями, пора переходить к реализации. Как уже ранее говорилось, получился вот такой вот набор:
- Homeassistant как интерфейс и основное средство автоматизации
- ESP8266+ DHT11 как оконечные устройства
- MQTT как протокол взаимодействия
- InfluxDB/MySQL/Graphite – как БД.
- Grafana – для того, чтобы рисовать красивые картинки
Про БД путаница исключительно из-за того, что хочется технически попробовать побольше и осознать, что лучше. На текущий момент совершенно ясно, что использование TSDB отвечает требованиям данной системы, в отличие от реляционных Баз Данных. Причина в производительности, колистве операций записи-изменений, а также – из-за того, что структура TSDB гораздо более логичная для подобного рода нагрузок.
Очевидно, что подобные игрушки больше несут пользу исключительно их создателям. Поэтому вопросы целесообразности – это исключительно холивар. Из этого получается что прелестные идеи для записи-опросов нужно придумывать самому. Ну, это не в первой.
Так как было интересно понять, насколько же здесь жарко, решил нарисовать графиков про это, получились красивые хитмэпы по влажности, температуре. А дальше – больше. Пошли удивительные графики присутствия дома, время использования телефона, статистика появлений домочадцев. В общем – сказка, что можно сделать.
Пользуясь реле – получилось включать свет, но теперь через MQTT.
Но самым важным элементом мероприятия являлось получение красивых картинок в виде разнообразных индикаторов, графиков и прочих хитмэпов.
Хорошо, когда получается то, что задумалось. Конечно же надо накрутить на всю эту конструкцию еще больше чего-то автоматизированого и замечательного, но пока картинки только рисовать.
Ну и конечно же, как бы это нужно скрестить с HomeAssistant. Если абстрагироваться от глобальных задач, которые, зачастую, не очень совместимы со съемными квартирами, то даже с этим можно придумать много всего.
Конечно, терпеливый читатель спросит, а какого, собственно, бояна, мы сызнова повторяем уже избитую тему, но нет. В этот раз нужно все сделать условно-красиво, более воспроизводимо и почти надежно. Почти SRE job. Почти error budget.
В конечном итоге, получилась довольно сумбурная картина, которая, однако, дает возможность наслаждаться инструментами и технологиями.
На очереди анализ фотографий на лету, видеонаблюдение и прочий подсчёт открытий холодильника.