Простое создание системы "умного дома"

Вот решил показать вам простую систему "умного дома", без всяких дорогих датчиков и заморочек (только если чуть-чуть). На платформе arduino. Покажу комнату, но можно хоть квартиру всю так "обвешать".

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

Покажу несколько вариантов которые я пробовал.

Все, что нам понадобится - это:

arduino, можно любую, но желательно с поддержкой вай фай или интернет шилдом. Я пробовал на uno, esp8266, nodeMCU. Все показали себя хорошо, но у каждой платы есть нюансы. Самая оптимальная плата, на которой я остановился и менять не планирую - это UNO + WiFi R3 ATmega328P + ESP8266 (32 Мб памяти) (на али заказывал) стоит дороже других, но потенциал у нее большой. Ниже расскажу про это.

Далее необходимо накупить датчиков и реле. Тут уже по желанию. Я использую на постоянное напряжение электромагнитное реле, а на переменку твердотельное. Учтите, что твердотельное реле не имеет задержек при включении и выключении, так же бесшумно, но "рубит" только переменное напряжение. Электромагнитному реле без разницы что включать, тут главное подобрать реле по силе тока прибора, который вы желаете подключить.

Датчик температуры и влажности я использую DHT11, стоит он копейки. Но лучше купить DHT22 или AM2302, AM2321, DHT 21, AM2301. Эти датчики можно поставить и не адаптировать прошивку.

Это то, что я использую. Все это работает на платформе Blynk. Приложение бесплатное и вам дается часть энергии на реализацию ваших желаний. Если не хватает, можно навсегда докупить (1000 энергии за 150р хватит вполне на подключение досточно большого количества модулей).

Я к примеру не покупал и мне хватило установить 6 кнопок для устройств и график изменения температуры/влажности.

Итог. Мы имеем возможность мониторить за изменением температуры и влажности в комнате, а так же включать/выключать приборы в любой точке мира, где есть интернет.

Подготовка.

Нужно определиться с тем, что будет управляться. Если просто свет, подсветка и температура, то вполне пойдет и обычная дешевая плата на основе esp8266 или тому подобная. Но если нужно будет подключить большое количество датчиков, реле, а так же мосфеты для управления RGB лентой, то лучше будет чуть потратиться и купить UNO с wifi (только главное не ошибиться. Есть полно похожих). дело в том, что для управления RGB подсветкой нужны мосфеты, которым нужно 5 вольт для полного открытия. Если подключить это все на nodeMCU или подобную плату, где выход на шилде 3.3 вольта, то мосфет будет не полностью "открываться" и лента будет гореть не на всю яркость.

Кстати, интересно. Есть ли какая нибудь возможность управления лентой с выходом на 3.3. вольта?

Простое создание системы "умного дома" Умный дом, Длиннопост, Arduino, Esp8266, Blynk

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

Теперь к прошивке и настройке.

Заходим на сайт Blynk, там подробно описан процесс подключения и даже есть видео, где показано что и как подключать. Там же есть генератор, который выдает вам прошивку для платы и того, что вам нужно подключить. Там все просто, выбираем вашу плату, вставляем код идентификации, который придет вам после того, как вы скачали приложение на телефон, зарегистрировались, выбрали нужную вам плату arduino и создали проект. Если просто нужно подключить датчик температуры, то выбираем DHT11 (это дополнение к прошивке. Реле, мосфеты будут работать, ничего дополнять не нужно). В прошивке указан порт подключения модуля (можно изменить под свой) и виртуальные пины, которые потом выбираются в приложении. Все очень просто на мой взгляд.

Далее видим в прошивке две строки, где нужно в кавычках вписать свой пароль и логин от вай фая.

Скачиваем ардуино на компьютер, в прошивке в самом начале есть ссылки на библиотеки, которые необходимо установить. Думаю процесс добавления библиотеки и прочего описывать не стоит. На сайте и в интернете полно видеоуроков где подробно описан процесс. Прошиваемся, открываем консоль в программе на компьютере и ставим скорость 9600. Она по идеи по умолчанию стоит. Если все получилось. То мы видим логотип Blynk и удачное подключение. Отсоединяемся. Паяемся или вставляем в перемычки проводки от модулей. Главное делать это с отключенным питанием. На мой счет спалено не менее 4 плат. Сначала думал, что не глупый и не смогу перепутать что то или замкнуть. Но банальное отвлечение или какое либо лишнее движение замыкает контакты и сжигает плату. Не хотелось бы, чтоб вы спалили дорогую или  дешевую плату. Лучше все подключить, проверить, а потом уже включать питание.

Если все запустилось, то заходим в приложение на телефон. Там видим, что плата в сети. Открываем редактор (плюсик вверху), перетаскиваем кнопки, ползунки или то, что вам нужно. Жмем на вытащенные кнопки и выставляем пины подключения реле (можно и наоборот. Сначала выставить, а потом паять по пинам). Когда выставили, опять сверху жмем на кнопку "плей" и можно проверять. Если все правильно подключено, то уже можно будет пользоваться.

Работать можно и на обычной UNO. Минус в том, что постоянно должен работать компьютер с сервером. Он идет вместе с библиотекой. Открываем папку с библиотекой и переходим по пути "libraries\Blynk\scripts" там будем батник, открываем его. Он должен сам определить порт. Если не выходит, закрываем, жмем правой кнопкой, изменить и прописываем там порт, который можно увидеть в приложении ардуино или в устройствах компьютера. Можно снова запускать и сервер должен запустится. Но ардуино всегда должна быть подключена к компьютеру и сервер должен постоянно быть открытым. Я на этот случай скинул сервер в автозапуск, просто создав другой батник и прописал путь к серверу в библиотеке. Можно конечно еще сделать так, чтоб в панели не маячилась консоль. Опять таки, точно уже не вспомню. Но можно загуглить как скрыть бат файл.

На мой взгляд лучше купить все таки esp и не заморачиваться. Она не зависит от компьютера.

Если нужно параллельно без телефона пользоваться светом или другим устройством. Можно поставить проходной выключатель. Схема подключения простая и трудностей не вызовет. Чтоб не тянуть к плате 220 вольт. Я от платы к распаечной коробки кинул связку из двух интернетовских проводов. вышло метров 5 и помех никаких нет. В итоге сэкономил 5 метров кабеля 1.5 квадрата и обезопасил себя и плату от напряжения.

Как это все развесить и подключить грамотно?

Т.к. я постепенно что то менял, то все "кишки" от платы у меня под столом прикрученные на саморезы. Да, колхоз. Но я планирую ремонт в ближайшее время и уже готовый проект можно будет масштабно перенести и забыть. А пока провод в распаечную коробку я спрятал за плинтусом и ее не видно. Все провода спрятал за стол и ничего не отвалилось пока. Если планируется делать все грамотно и в комнате есть щит, то можно аккуратно все туда завести, просто поставив клему после автомата и от нее уже разводить по реле, а от реле на устройства.

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

Кстати с помощью этой же платформы можно управлять камерой. Не особо удобный способ, но без задержек и вполне рабочий. В прошивке выбрать "servo", установить нужные библиотеки и подключить сервомотор. Обязательно питание берем от блока питания, а не от платы. Ибо могут быть помехи и серво будет дергаться. Скачиваем какое нибудь приложение для удаленного доступа к ПК, крепим камеру на сервопривод, подключаемся к камере. На новых телефонах есть функция разделения дисплея. Во втором окне выбираем приложений Blynk и можем свободно вращать камеру. Способ мне понравился, но при смене стола, я заодно поменял плату и все перепаял. А про камеру забыл.

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

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

P.s. Почему именно blynk? Не знаю. Я начал этим увлекаться лет с 14 и еще с детства мечтал о какой нибудь подобной теме. А к 16 постепенно начал увлекаться ардуино, заказал тогда еще набор для начинающих, где множество различных датчиков (кстати советую для начинающих. До сих пор бывает черпаю оттуда какую нибудь нужную штуковину) и начал изучение этого шайтан устройства. Но это было как хобби и заморачиваться в создании своего сайта и вручную писать прошивку для каждого модуля не хотелось. В интернете находил готовые сайты для управления всем этим. Но они были довольно скучны. Просто на экране надпись вкл и выкл не была интересна. Да и не хотелось каждый раз заходить в браузер и открывать сайт для включения света. А этот сервис постепенно улучшается. Раньше при отключении света или каком либо зависании, то значения сбрасывались. Т.е. какой либо включенный прибор выключался, а приложение не показывало это. Теперь даже при отключении платы от сети и подключению снова. Она запускалась и включала все так, как было.

Бонусом говорят, что можно так же управлять с часов от самсунга. Но работает это только если есть телефон самсунг и часы gear s3 или galaxy. Точно не могу сказать ибо видел это только в интернете. Буду благодарен, если кто то подтвердит эту информацию. Сам планирую в будущем купить часы.

Если есть какие либо вопросы - пишите. Постараюсь в свободное время отвечать на каждый.

Вышло довольно много информации. Но я не смог написать коротко. Тяну за одно, а в голове еще пару мыслей крутится и понеслось. Думаю запилить еще один пост и подробным описании о том, как прошить плату которая у меня сейчас и возможные проблемы, которые могут вылезти и фиг ты найдешь эту информацию. Там есть нюансы. Получается, что в одной плате три платы (UNO esp atmega) и нужно прошить так, чтоб объединить вместе esp с uno. Я на тот момент информацию и прошивку нашел только на англоязычном форуме. Я сохранил ее на будущее. Могу еще описать процесс настройки для удаленного включения компьютера в любой точке мира. Но думаю этой информации в интернете полно.

Простое создание системы "умного дома" Умный дом, Длиннопост, Arduino, Esp8266, Blynk
Простое создание системы "умного дома" Умный дом, Длиннопост, Arduino, Esp8266, Blynk
Простое создание системы "умного дома" Умный дом, Длиннопост, Arduino, Esp8266, Blynk

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

Простое создание системы "умного дома" Умный дом, Длиннопост, Arduino, Esp8266, Blynk

А вот это было полтора года назад. Ужас. Как вспомню...

Вот и закончил рассказ. Это первый мой длинный пост. Готов выслушать замечания и в будущем исправляться)

Вы смотрите срез комментариев. Показать все
Автор поста оценил этот комментарий

Тоже скоро датчики температуры запилю себе. Задолбало только, что куча разных приложений на смартфоне. Одна видеонаблюдение, другая - умные розетки, третья будет с графиком температур. Один плюс - дешевле готового решения и как конструктор годно

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Это да. Хотелось бы объединить видеонаблюдение и датчики в одно приложение. Умные розетки и прочее не интересны что-ли. Хочется самому что то собрать, а потом радовать себя, что получилась хорошая система. Да и это куда полезнее, чем на диване лежать

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку