УМНЫЙ ДОМ Arduino Safe Home

saippuakauppias

✩✩✩✩✩✩✩
9 Янв 2021
4
0
Цель: собрать из доступных датчиков, модулей и ядрёной матери систему немного глупого, но безопасного дома, чтобы иметь возможность раннего реагирования на случившийся инцидент. Управление светом/чайником/кондиционером – это, конечно, весело, но не нужно. Главная идея в том, чтоб была возможность уехать из квартиры и не переживать за её состояние, т.к. в случае беды молниеносно прилетит алерт (sms/telegram), для решения которого можно попросить тех, кто остался в городе (родители/друзья/кот?..). Данный проект не будет коммерциализироваться, а наоборот хочется на примере своей квартиры протестировать всё и заопенсорсить на гитхабе.

Приоритеты:
  • максимальная воспроизводимость для тех, кто захочет повторить;
  • простота монтажа;
  • дешевизна решения (однозначно должно выйти дешевле брендовых устройств);
  • использование готовых датчиков/web-компонентов, без необходимости лудить платы или писать свой велосипеды по отображению графиков / отправке нотификаций.

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

Идеализированная схема
1.jpg

Подробнее о содержимом схемы
Датчики (на схеме только 100% необходимые):
  1. Датчик протечки воды (али) – т.к. у меня в квартире 2 стояка (ванна и кухня), то нужно как минимум разместить их там. В идеале хотелось бы положить под каждую из батарей или рядом со стояками отопления, чтобы быть уверенным что не рванёт где-то там (или не потечёт от соседей сверху). Выбрал именно его, т.к. где-то читал что он не окисляется (хотя скорее всего смысла в этом не особо много, т.к. он же не постоянно в воде будет).
  2. Датчик дыма MQ-2 (али) – размещение по одному на комнату + кухня.
  3. Датчик движения (али) – прихожая (над или напротив входной двери) + по одному на комнаты с окнами, в идеале как делают в охранных системах (в углу у потолка, чтобы был обзор всей комнаты и желательно напротив входных дверей/окон, чтобы не было возможности отключить его не заходя в комнату).
Arduino:
  1. NANO (для чекеров) – в идеале хочется и сэкономить, и ежа съесть, поэтому большой запас из пинов не планируется (все датчики вроде бы влезут и сюда). Но если учесть, что UNO стоит всего на 50-100р дороже – проще взять её. Опрос датчиков раз в N секунд и отправка значений массивом на коллектор не должны скушать много памяти, разница в энергопотреблении между UNO и NANO вроде бы не такая большая, поэтому я всё ещё в муках выбора.
  2. UNO (для коллектора) – возможно, на коллекторе тоже стоит задуматься о NANO если он будет выбран для чекеров, тоже пока не ясно и спорно.
  3. Ethernet шильд (али) – подключить ардуинку по проводу кажется затеей надежнее, чем работать с WiFi, поэтому выбор пал на него. Тем более раз роутер запитан через ИБП, то нахождение коллектора (который будет запитан от розетки) тоже подразумевает работу оттуда же, чтоб было стабильно и по-красоте.
Приёмо-передача:
  1. NRF24L01 (али) – тянуть гирлянду проводов по всей квартире точно не вариант, устраивать себе облучение как в микроволновке (сарказм) если ставить везде модули WiFi тоже не хочется, поэтому мысль пала на радио приемопередатчик. Смущает только тот факт, что нигде нет примеров с подключением нескольких передатчиков на один приемник, плюс где-то на просторах видел что в даташитах есть строки о том, что можно максимум 6 передатчиков на 1 приемник. Для квартиры это ок, но заведомо проигрышную технологию брать тоже не хочется.
Питание коллектора и чекера:
Пока что не прорабатывалось, но в идеале коллектор посадить через БП от 220V, а вот с чекерами есть логичная хотелка запитать их от чего-то более-менее автономного вроде PowerBank. Конечно, хочется как-то сигнализировать об низком уровне заряда оного, чтоб вовремя их дозаряжать, но если это сильно усложнит всю схему, то пока что отложу на будущие апгрейды. Безусловно тут нужно сразу же подумать о том сколько пожрут каждый из датчиков, но как это правильно перевести в количество дней на одном повербанке (например, 5 mAh) – я не знаю.​

VPS:
Сразу оговорюсь, что у меня как и у многих дома серый IP адрес (за NAT), поэтому выбор в плане аренды дешевого VPS (около ~3$/месяц) кажется весьма разумным и не требующим отращивания бороды и покупки дополнительного бубна (их и так у меня 2).​
Как и писал выше: коллектор будет получать данные от чекеров, и посредствам POST-запроса отправлять их в виде метрик на PushGateway, который в свою очередь отдаст их в Prometheus, а оттуда их заберёт Grafana, чтобы мне смотреть в ней прекрасные графики. По соседству будет жить Alertmanager, который может через WebHook сделать запрос на отправку SMS через какой-нибудь сервис или отправить сообщение в Telegram всем заинтересованным.​
Всё это планируется завернуть в docker compose, чтобы ху... было проще воспроизводить заинтересованным 😃

Список нерешённых пробелов и вопросы
  • Не фигню ли я делаю? Предварительно я искал проекты "умных домов", чтобы как минимум посмотреть на архитектурную реализацию, но в большинстве там или проводное соединение всех датчиков (т.к. проект разрабатывается до ремонта в квартире/доме) или управление электроникой вплоть до слива в унитазе (что мне не интересно, т.к. во всей затее главная мысль – безопасность квартиры в отсутствии там хозяев).
  • Какие ещё можно использовать полезные датчики/модули для реагирования на инциденты?
    Видел ещё вот такую штуку, чтобы закрывать вводные краны ГВС/ХВС, но пока что не уверен в том что стоит так усложнять всю систему только из-за них. Газа в квартире нет, поэтому необходимость в ней уменьшается ещё в 2 раза.
    Ещё друг советовал реле напряжения (с защитой от перенапряжения), его ставят и без ардуинки и всех этих приблуд. В целом, идея поставить его на вводе в квартиру кажется весьма разумной. Но может кто-то знает минусы или есть опыт с другими фирмами?
  • Использование Prometheus+Grafana+AlertManager кажется весьма разумным решением, т.к. хорошо конфигурируемо как со стороны отображения графиков, так и нотификаций. Но возможно есть какие-то неочевидные вещи в связке с Arduino?
  • Приёмо-передача. Очень много сомнений по выбранному способу и модулям. Всё таки отправлять нужно со многих чекеров, сигнал которых может перекрывать друг друга. В NRF24L01 хоть и есть подтверждение о доставке, но как оно работает – я нигде не нашел (в особенности сколько раз будет пытаться отправить сигнал передатчик). Может быть сразу стоит думать о чем-то другом (BT/WiFi/5G...)?
  • Питание чекеров. Может стоит питаться от обычных батареек и переключить ардуино в 3V? Энергоэффективность очень важна, т.к. каждый чекер подключить в розетку не выйдет 100% (розетки дома кончатся, а штробить стены не умею, у меня лапки).
  • Как располагать датчик протечки, чтобы его не сожрал робот-пылесос?
  • Как располагать датичик дыма – рядом с вытяжкой или просто посреди кухни?
  • Выбор Arduino: UNO или NANO? А может вообще для чекера нужно что-то другое (простенький МК, который сам и датчики спросит и сигнал отправит)?
  • Хороша ли пожаро-безопасность использования всех перечисленных компонент? Никогда не слышал чтобы ардуинки или датчики в прямом смысле горели, но вдруг? Конечно, при условии монтажа и пайки средне статистически прямыми руками.

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

В любом случае, хочется реализовать всё задуманное, т.к. с появлением 20-летней "кабалы" хочется избежать любых неприятных инцидентов (от которых есть навязанная страховка, но все же мы понимаем...). Поэтому проекту в любом случае – быть 👹
 
Изменено:

Un_ka

★★✩✩✩✩✩
13 Июл 2020
241
71
других форумов.
Как располагать датичик дыма – рядом с вытяжкой или просто посреди кухни?
А может у окна? Надо выяснять экспериментальным путём с учётом всех вариантов: закрытое/открытое окно, закрытая/открытая дверь. Где и что может гореть?

я нигде не нашел (в особенности сколько раз будет пытаться отправить сигнал передатчик).
Для библиотеки RF24 вот.
устраивать себе облучение как в микроволновке (сарказм) если ставить везде модули WiFi тоже не хочется,
nrf24l01 имеет ту же мощность, что и один передатчик в роутере. Мне кажется, esp8266, имеющая на борту WiFi будет дешевле чем Ардуино нано с nrf24l01.
 
  • Лойс +1
Реакции: saippuakauppias

saippuakauppias

✩✩✩✩✩✩✩
9 Янв 2021
4
0
А может у окна? Надо выяснять экспериментальным путём с учётом всех вариантов: закрытое/открытое окно, закрытая/открытая дверь. Где и что может гореть?
Вероятнее всего окна будут закрыты в тот момент, когда дома никого не будет)
Но вообще я тут подумал, что обычно просто в середине комнаты вешают датчик дыма везде. Хотя (скорее всего) и на это есть какие-то госты.

nrf24l01 имеет ту же мощность, что и один передатчик в роутере. Мне кажется, esp8266, имеющая на борту WiFi будет дешевле чем Ардуино нано с nrf24l01.
Любопытная мысль, спасибо! В целом тогда можно было бы отказаться от коллектора и просто по всей квартире напихать чекеров, которые сами бы слали метрики на VPS.
Только смущает что вся квартира будет пронизана WiFi, я бы хотел себе как минимум 6 чекеров в квартире наставить :)) Не пострадают ли от такого шума (хотя соединения же не постоянные будут) другие устройства (ноут/тв-приставка)?

Может у вас есть опыт с esp и его wifi? Не встречу ли я какие-то неочевидные грабли (вроде повышенного потребления энергии или постоянных дисконнектов)?
 

saippuakauppias

✩✩✩✩✩✩✩
9 Янв 2021
4
0
Донастраивал сейчас роутер, чтоб он лучше работал и наткнулся на следующую цитату:
Тут стоит упомянуть о большой проблеме самой технологии WiFi – все устройства WiFi всегда работают на скорости самого медленного из устройств, подключенных к данной сети, т.е. если у вас в сети 3 новых ноутбука, подключенных на скорости 54 Мбит/с и вы решили реанимировать старого мамонта из 90-х или начала 00-х годов и подключите его к WiFi на скорости в 5 Мбит/с, то все ноутбуки будут фактически работать на данной скорости.
(пруф)

Грустненько, если это так. Не думаю что эти платы потянут хотя бы 80-100Мбит/с как у меня ноут на минимуме подключается.
 

Un_ka

★★✩✩✩✩✩
13 Июл 2020
241
71
других форумов.
nrf24l01 и хорош тем что на него есть библиотеки, у него есть режим пониженного энергопотребления и и можно использовать никем не занятые частоты вне диапазона wifi.
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
В личку советовал разработать модель угроз... Как вариант, при отключении света вся система должна оставаться дееспособной. Если речь идёт о системе сохранения дома, то всё же я бы уходил от беспроводных сетей и делал резервирование электропитания.... Если же этого не делать, то мне кажется эта система никак не тянет на систему сохранения дома, просто как очередной умный дом...
 

saippuakauppias

✩✩✩✩✩✩✩
9 Янв 2021
4
0
nrf24l01 и хорош тем что на него есть библиотеки, у него есть режим пониженного энергопотребления и и можно использовать никем не занятые частоты вне диапазона wifi.
На сколько меньше он будет жрать в паре с ардуино против esp8266?

Как вариант, при отключении света вся система должна оставаться дееспособной
В стартпосте я писал о том что коллектор будет от ИБП (вместе с роутером), а чекеры априори НЕ от розеток питаться будут, т.к. у меня столько розеток нету в нужных местах, поэтому скорее всего от power bank будут запитаны
 

Fleshdeck

★★★✩✩✩✩
19 Янв 2019
349
174
Киев
nrf24l01 и хорош тем что на него есть библиотеки, у него есть режим пониженного энергопотребления и и можно использовать никем не занятые частоты вне диапазона wifi.
Модуль прекрасный, но диапазон WiFi 2400-2482Мгц, а это 82 канала nrf24, все что от 83 до 127 канала юзать не стоит, ибо там частоты заняты, и если твой радиомодуль будет кому-то мешать, то можно нарватся на неприятности
 

Fleshdeck

★★★✩✩✩✩
19 Янв 2019
349
174
Киев
@saippuakauppias, у меня умный дом построен на локальном сервере blynk + esp32 там где есть возможность провода тянуть, а для датчиков на акумах есть nRF52 серия МК от нордик, и для них ядро от адафрут(freertos), если все правильно запрожить можно добиться очень низкого энергопотребления менее 500мкА, не ардуино конечно, но есть и плюсы в виде Bluetooth LE.
Но что бы ты не использовал нужно делать свои печатные платы, будет красиво и компактно, всякие платы типа nano, uno или pro mini больше подходят для прототипирования.
Плюсом использования esp32, это беспроводная прошивка по локалке, очень удобно когда устройство где-то спрятано в не очень удобном месте, а насчёт засирания частоты WiFi, у меня стоит двухдиапазонный роутер xioami ax6, кроет весь дом, на 2.4Ггц умный дом, а на 5Ггц телефоны и ноутбуки которым скорость нужна, и все отлично работает без нареканий уже полтора года. Я тоже с самого начала думал использовать платки nano и модули nrf24, но в реальности ничего хорошего из этого не вышло, добиться стабильной работы на длительном промежутке времени у меня не получалось и начинал я с ESP8266, но эти модули у меня мало где прижились, они подходят разве что для умных розеток, и датчиков там где есть возможность их в розетку воткнуть, пинов юзабельных мало, АЦП можно сказать что нет, и иногда у них наглухо зависает радиочасть, но это очень редко бывало.
В целом можно купить для сервера Blynk мини ПК Orange Pi PC за 24 $, для крупных сенсор хабов использовать ESP32, для реле можно и ESP8266 использовать, у плат ардуино не хватает ОЗУ, так что про них можно забыть, но для конечных устройств они подойдут, особенно если использовать ESP как сенсорхаб с nrf24, к нему можно до 5 датчиков подключить, ну или использовать другие радиомодули на других частотах)
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
На сколько меньше он будет жрать в паре с ардуино против esp8266?


В стартпосте я писал о том что коллектор будет от ИБП (вместе с роутером), а чекеры априори НЕ от розеток питаться будут, т.к. у меня столько розеток нету в нужных местах, поэтому скорее всего от power bank будут запитаны
Я всё понимаю, но вот Вы действительно готовы регулярно лазить и менять повербанки... А что если он сядет, когда Вы будете в отпуске? Как вариант, всё ж смс информирование я б прикрутил... Ну как одна из возможных угроз, это пожар у соседей сверху, могут вырубить дом от электричества и заливать вас сверху водой, а так как зачастую оборудование прова не имеет ИБП, то Вы об этом можете и не узнать вовремя... Или просто кто то обрежет вам шнурок от провайдера и попытается взломать хату... И да, все повер банки используют горючие батарейки, как говорится при модулировании схемы питания надо это учитывать, чтоб не получилось как у Самсунга. Если получится сделать очень низкое потребление чеккеров, я бы рассматривал батарейки дюрадела... Всё же считаю, что надо сперва разработать модель угроз. Надо предпологать всё возможное из невозможного, это прям как проектирование самолёта, где некоторые системы трижды продублированы. (ну всё ж если речь о save home). Я бы навреное раскидал сигналку и доп датчики, поставил это всё на охрану. Там на пульте сидит человек и если даже что случится оперативно среагируют, даже если отвалится оборудование моментально отправят наряд и оповестят. У родителей именно так и сделано, мне это решение нравится как никогда. Да, это не бесплатно, но оно того стоит, а если дома есть нарезное оружие, то без такой системы просто не обойтись.