Как пережить отключение света в умном доме
Вчера у меня в квартире моргнул свет, часть устройств это нормально пережили часть конечно не смогли нормально пережить и возникли разные проблемы.
У меня умный дом построен на базе микрокомпьютера Raspberry Pi версии 4, в принципе у него используется довольно хороший блок питания и разные кратковременные выключения он конечно может и пережить, потому что потребление не очень большое где-то 1 ампер, но если немножко дольше, то конечно перезагрузится все равно и через некоторое время прогружается. Но при старте есть некоторые сложности иногда они все сценарии и скрипты сразу прогружаются, у меня сделано так что при загрузке идет проверка все ли скрипты работают соответственно если какой-то скрипт или какая-то система умного дома не перезапустилась, то у меня также делается оповещение в телеграм об этом и система пытается перезапустить этот компонент или какой-то скрипт определенный. Это может быть скрипт который раз пять минут проверяет погоду или каждую минуту есть скрипт, который делает снимок камеры, сохраняет его, ну и также есть скрипт, который по сути является сердцем умного дома, то есть это фактически веб-сервер, который поднят на этом микрокомпьютере, в котором хранятся все датчики, который умеет обрабатывать разные веб запросы, от дашбордов, от других устройств, он тоже может по какой-нибудь причине не стартануть сразу и тогда конечно умного система дома некоторое время будет не работать. Но я не все скрытые проверяю часто, у меня сделано так, чтобы в случае чего не возникло постоянного какого-то запуска скриптов, то есть у меня раз пять минут проверяется если скрипты какие-то или сервисы и службы не работают, то как раз, раз в пять минут пытается все перезапустить, те которые не работают.
Еще у меня на компьютере Orange Pi версия 3 поднят медиа сервер на котором крутится соответственно медиа сервер mpd и он соответственно может транслировать на разные bluetooth колонки музыку, и там оказалось, что после этой перезагрузки просто не смог вообще включиться, то есть он светился, но реально у него не было загрузки и фактически конечно это тоже плохо. Если какой-то сервер компьютер таком состоянии, то конечно систему дома будет довольно сложно поднять.
Я также делал так, чтобы этот микрокомпьютер был воткнут в розетку wi-fi то есть к ней я могу иметь доступ через родное приложение также, например, розетка туя у меня использовалась и тогда конечно я могу зайти и удаленно выключить розетку и снова включить, и таким образом перезагрузить этот сервер.
Была ситуация у меня тоже когда я был вне дома у меня по какой-то причине потеряла связь со всеми системами и работал только фактически телеграм, то есть система обрабатывал Telegram но не обрабатывала ничего другого и мне приходилось ее реанимировать даже использую то, что у меня позволяет делать телеграм-бот, но и также была ситуация когда мне вообще ничего не отвечало я вообще не мог понять что происходит, ну думаю ладно уже не работать и не работает ничего страшного наверное не случится, я так надеялся, и фактически получается пришлось дождаться очередного выключения света, был период по-моемому это было лето, когда очень часто что-то выключалось электричество и где-то через пару дней оно снова видимо моргнуло и после этого микрокомпьютер ожил и соответственно подключился к интернет я уже смог удаленно управлять и проверить, что там происходило.
Вообще такие перезагрузки я конечно могу отслеживать в системе умного дома, то есть у меня например поскольку я использую как базовую систему удаленного доступа Open HAB, то туда я вывел все датчики разные, я мониторю работу микрокомпьютеров и соответственно я там вижу сколько у них памяти, сколько загрузка и сколько места на диске и соответственно температуру также отслеживаю потому что ты очень критичный параметр для микрокомпьютера, и конечно я туда вывожу эти все параметры, но так оказалось что у меня не выведен туда uptime, у меня раньше был отдельный параметр который записывался и обновлялся когда микрокомпьютер перезагружался, но в последний момент когда это произошло я не смог отследить и естественно увидеть была ли реальная перезагрузка его или нет. Но в целом в принципе это не сложно сделать и я все равно это конечно настрою и буду это видеть.
Очень многие другие датчики и устройства плохо переживает выключение потому что во-первых конечно если выключается свет, то включается роутер wi-fi, который используется для подключения веб-камер, подключения дашбордов, сами дашборды конечно продолжают работать, и них батарейки работают и в этом проблем нету, это наверное самая надежная часть этих устройств, но wi-fi все равно нужен и конечно если роутер по какой-то причине может не стартануть, то конечно вообще возникает большая проблема с этим и я в принципе планирую ближе к лету когда мне потребуется уже какой-то вариант удаленного управления более надежный, когда не будет возможности прийти и перезагрузить вручную, чтобы контур который у меня не зависит от wi-fi, то есть по сути основная сама сеть ethernet и Raspberry подключен тоже к этой сети напрямую без этого роутера wi-fi без самого wi-fi соединения и он может управлять розетками zigbee даже если вдруг роутер wi-fi не работает, и таким образом конечно нужно будет сделать правило, которое позволит перезагрузить этот роутер и соответственно просто выключить и включить его, он перезагрузится и таким образом вайфай может восстановиться. Собственно так и пришлось сделать потому что роутер не прогрузился, по какой-то причине он просто завис и тоже соответственно мне пришлось его вручную перезагружать.
Вообще разные устройства которые работают по wi-fi по разному переносят потерю wifi соединения, например дашборды это у меня iPad иногда они без проблем устанавливливают соединение с роутером, ну и вообще на них использую 5 Ггц частоту соединения, потому что она по свободнее по надежнее в этом плане, по-быстрее работает хотя там скорость не особо и не нужна, и они иногда просто не устанавливаются соединения, но если соединение установилось, то сам дашборд конечно у меня подключается к серверу умного дома и в принципе без проблем все восстанавливается. Есть веб-камеры некоторые, которые у меня довольно дешевые это ESP 32 cam используется, такой модуль, эти камеры они плохо переносят потерю wi-fi и хотя там есть специальные алгоритмы функции, которые позволяют проверять и перезагружать и даже как выполнять почти reset этих модулей, но на самом деле сам модуль wi-fi он как-то остается все равно активен и только полное выключение позволяет эти камеры обратно вернуть в подключенное состояние. Также у меня еще используется несколько датчиков таких шлюзов самодельных, которые работают на esp8266 и один на esp32, эти конечно перезагружаются в принципе для них это не критично и они подключаются дальше к wi-fi и дальше к mqtt и в принципе в большей части они вполне корректно это делают, никаких больших проблем не возникает, единственно датчик, который у меня считает, является счетчиком электроэнергии, при потере электричества он перезагружается поскольку я значения сами не сохраняю в этом контроллере, то значение сбрасывается и отчет начинает с нуля. Дела я несколько раз, чтобы он просто считывал значение с сервера умного дома последние и на базе этого значения уже начинал отчитывать, но по большому счету были разные сложности с запросом с этого микроконтроллера данных, поэтому пока эту функцию не использую, но если мне это уже допустим будет часто выключение, то конечно я снова реанимирую и в принципе настрою.
Например раньше у меня также счетчик воды работал тоже по wi-fi и даже когда я его переделал уже на Arduino все равно работал в сети и конечно он не сохранял значение при потере питания, иногда хватало блока питания продержаться какие-то кратковременные выключения, но когда оно было чуть длиннее, то конечно выключался и информация терялась, но она сохраняется уже на самом сервере в системе умного дома и тоже отсчет начинался с нуля. Когда я переделал уже на питание от батарейки, то это проблема ушла и как раз последнее отключение оно очень удачно показала, что действительно это хорошее решение, работать батарейки, и оно действительно может гарантировать, что на протяжении полутора лет никаких вопросов вообще с этим датчиком не возникнет и соответственно я могу его значение всегда использовать не глядя на настоящие живые счетчики, которые установлены там на входе в квартиру воды и соответственно подавать эти значение куда нужно своевременно и быть уверенным, что эти значения точные.
Но больше всех проблем не создала лампочка умная Yeelight, она конечно вообще просто потеряла сеть wi-fi, не устанавливалась, не подключалась, она отвалилась от системы приложения собственного, от системы умного дома, мне её пришлось полностью переподключать, но это совсем было не просто сделать, потому что их пришлось физически доставать из светильника и очень сложным и хитрым способом заново переключать к системе умного дома.
Автоматизация в умном доме должна быть полезной и создавать дополнительный комфорт, но иногда всё идет не так… Причины этого, и как всё настроить смотри на моём канале.
Discuss about post