Умный дом: делаем на arduino умную лампу своими руками

​Arduino Home, умный дом на Arduino, Часть #2

Делаем умный дом на Arduino: с чего начать?

Создание умного дома своей головой и своими руками – это очень занимательный процесс. Пока вы будете заниматься его разработкой и настройкой, вам предстоит пополнить свою копилку знаний во многих областях: электронике, схемотехнике, программировании и многих других.

Первую часть из цикла статей читайте здесь

Если вы мастер на все руки и отличный самоучка, то процесс пойдет быстрее, если же нет – то придется немножко попотеть.

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

Все существующие системы умного дома имеют собственные контроллеры и собственные функции, подчеркивающие их отличие от конкурентов, но принцип работы всегда остается примерно одинаковым.

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

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

Официально самые первые умные дома появились еще в 1978 году и самой первой их функцией была возможность управлять освещением: плавно менять уровень освещенности в лампочках в зависимости от времени суток или рода деятельности. Все это производилось при помощи регуляторов напряжения – диммеров. Благодаря их повсеместному использованию росла энергоэффективность в домах (экономия электроэнергии достигала уровня в 20-30%).

Уже в дальнейшем появилось множество датчиков, которые позволяли контролировать различные величины и процессы в доме, например, температуру, влажность, содержание вредных веществ (пыли или углекислого газа).

Датчики выполняют роль мониторинга. Сигналы с них передаются на контроллер, где происходит обработка полученной информации и отправка соответствующих команд исполнительным устройствам (клапаны, таймеры, модули реле, приводы).

Простым примером здесь служит система “климат-контроль”: датчик температуры зафиксировал, что показатель температуры и влажности воздуха в помещении превышает допустимое значение – сигнал с этой информацией передается на контроллер, который решает включить исполнительное устройство, отвечающее за включение/выключение вентилятора. Вентилятор будет работать до тех пор, пока данные с датчика температуры не будут приведены в норму.

Умный дом имеет очень много возможностей и функций, и только от вас зависит, что именно будет в вашей собственной системе.

Отвечая на вопрос “С чего начать?” нужно определиться с тем, каков набор функций, который вы будете использовать для своих нужд и целей.

После этого нужно составить список компонентов, которые необходимо приобрести.

Для удобства разделим их на несколько групп:

1. Контроллер

С этим мы уже определились – будем использовать Arduino. Для новичков это идеальный вариант: открытая среда разработки, множество примеров и исходников в открытом доступе, библиотеки, упрощающие разработку, и несложный язык программирования (в Arduino используется wiring, представляющий собой упрощенный C++ . О том, насколько легко его понять говорит тот факт, что Arduino занимаются даже ученики начальных классов в школах робототехники).

2. Сервер

О том, что это такое уже рассказывалось в первой части цикла. Повторимся – сервер связывает контроллер с исполнительными устройствами, обеспечивая обмен сигналами между ними. Конечно, сервер может и не понадобиться, если вы используете проводной способ связи между всеми модулями системы.

Сервер необходим для управления умным домом посредством удаленного доступа.

Платформа Arduino напрямую работать удаленно с другими устройствами не может (иными словами не может передавать информацию на расстоянии), поэтому ей необходимо дополнение, работающее с интернетом.

Отличный вариант – подключение к плате Arduino платы расширения Ethernet Shield (интернет шилд). Подключение происходит через UART интерфейс. Начинающим с ним будет работать довольно просто, поскольку в него встроена библиотека, упрощающая написание кода и работу с шилдом. Другим, но чуть более сложным вариантом будет взаимодействие Arduino с отдельным Wi-Fi модулем на базе ESP8266.

3. Устройства мониторинга и анализа

Как уже было сказано ранее, количество данного типа устройств зависит от того, какие именно задачи будет выполнять ваш умный дом. Разберем несколько примеров.

  • Контроль за оптимальным режимом температуры

Для этой цели вам понадобятся хорошие датчики температуры. Могу порекомендовать датчики Dallas DS18B20. Они обладают достаточной для комнатных условий точностью (точнее, чем датчики семейства DHT), быстродействием и способны показывать температуру как в фаренгейтах, так и в цельсиях. Они будут считывать информацию о текущей температуре и передавать данные на Arduino.

  • Содержание углекислого газа в помещении.

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

4. Исполнительные устройства

Название говорит само за себя. В умных домах они предназначаются для выполнения полученных от контроллера команд. Пример также приводил на страницах этой статьи: если температура превысит норму, то Arduino (в нашем случае) отдает команду исполнительному устройству (в данном случае им может быть твердотельное реле) включить кондиционер или вентилятор для ее установления на заданном уровне.

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

5. Компоненты для коммутации (обеспечивают взаимодействие всех составляющих умного дома)

К таковым можно отнести различные провода, перемычки, предохранители, выключатели и многое другое.

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

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

Умная лампа с помощью Arduino

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

1. Что нам нужно

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

Итак, для начала нам потребуются два микроконтроллера, которые мы будем использовать: Arduino UNO и ESP8266.

Arduino UNO

Я думаю не надо знакомить вас с этой платой, она очень популярна среди начинающих и поклонников DIY. Скажу только то, что способности этой платы ограничены и UNO не может работать с протоколом https, не хватает вычислительной мощности микроконтроллера ATmega328P, поэтому, когда нам придется работать с микроконтроллером и протоколом https, то мы будем программировать ESP8266.

ESP8266

Я буду работать с Troyka-модулем ESP8266 от компании “Амперка”, но можно спокойно использовать и обычный модуль ESP 8266, они практически не имеют отличий, главное при подключении посмотреть значение пинов и запомнить, что ESP работает по 3,3 вольтовой логике, поэтому нужно либо подключать через 5 вольт, но подключить в схему стабилизатор напряжения, либо просто использовать пин со подачей напряжения в 3,3 вольта.

Данный микроконтроллер не самый мощный в серии компании Espressif на общем рынке, но он один из самых дешевых и распространенных. Он будет основой наших IoT разработок.

Дополнительные детали

Также нам потребуется для создания всех опытов:

  1. Светодиоды
  2. Фоторезистор
  3. Термистор
  4. Ультразвуковой дальномер
  5. Реле
  6. Пьезодинамик
  7. Мини Сервопривод
  8. ИК – датчик
  9. ИК – пульт

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

Программы и библиотеки

Первое – скачайте библиотеку, которая поможет вам намного проще работать в Arduino IDE, если вы используйте ESP8266 – http://wiki.amperka.ru/_media/iot-m:iot-m-libs.zip

Второе – для лучшего ознакомления с IoT нам потребуется веб-сайты, которые предоставят нам возможность отправлять на них данные.

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

Подробно со всеми способами, программами и сайтами мы познакомимся уже в ближайших проектах.

2. Делаем “умную лампу”

Я уже заставил вас скучать? Сделаем самую простую умную лампу, которая будет включатся, если в комнате темно.

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

Если вы не уверены в том, что готовы работать с электричеством в 220 вольт, то используйте вместо фонаря обычный светодиод. В начале я взял свою старую лампу TLI – 204, такие есть практически в любом магазине (отключил заранее от сети).

У лампы два вида работы (светит/не светит), что хочу сделать я, я хочу увеличить ее функциональность, оставить возможность полностью включить и полностью выключить лампу.

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

Общая электрическая схема должны будет выглядеть так:

Если все сделать правильно, то на третьей позиции переключателя вы сможете, подавая с микроконтроллера ток на реле, включать лампу.

Подключим к ардуино фоторезистор. Схема выглядит так:

3. Код для “умной лампы”

Теперь напишем код, по которому будем передавать ток на реле, если в комнате будет темно.

Когда будете все подключать, не забудьте убрать фотодатчик от ламы, иначе вас будет ждать световое представление. Все должно заработать. В следующий раз мы попробуем усложнить код и добавить еще пару функций.

«Умный» дом на платформе Arduino – как сделать своими руками?

Arduino — популярная платформа для создания автоматики своими руками. Она подходит для изготовления автоматики в сельском хозяйстве, в рекламной деятельности, в сфере игровых развлечений и других видах деятельности.

Можно ли изготовить на платформе Arduino систему «умного» дома своими руками? Стоит рассмотреть и этот вопрос подробно, на примере одного проекта.

Начальные условия

Умный дом на Ардуино

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

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

Составление проекта Arduino

  • Крыльцо. Здесь необходимо сделать включение света при приближении хозяина к дому в тёмное время суток. Также необходимо сделать автоматическое включение света при открывании входной двери при выходе из дома.
  • Прихожая. Автоматическое включение света при наступлении тёмного времени суток и обнаружения движения. В ночное время включаться должна маломощная лампочка, чтобы резким светом не будить других проживающих.
  • Санузел. Нагревание воды в бойлере происходит в зависимости от того, обнаруживает ли автоматика нахождение в доме хозяина. Сам бойлер снабжён внутренним выключателем электричества — при достижении водой предельной температуры он отключается. Когда заходит человек в санузел, то необходимо автоматически включать вытяжку и свет.
  • Кухня. Свет на кухне включается и выключается вручную. Но имеется возможность выключения света при фиксации длительного отсутствия движения. При готовке пищи автоматически включается вытяжка.
  • Комната. В комнате, как и на кухне свет включается вручную, но при фиксации отсутствия движения есть возможность автоматического выключения света.

Отопительные приборы и рекуперация воздуха. Отопительные приборы работают на поддержание заданной температуры в доме. При фиксации отсутствия хозяина, минимальная поддерживаемая температура снижается на определённое количество градусов. Как только происходит фиксация присутствия хозяина в доме, автоматически нижний порог переключается в нормальный режим поддержки температуры. Рекуперация воздуха происходит при фиксации присутствия хозяина, но не реже чем 10 минут в час.

Какие решения предлагает Arduino

Как видно из данной постановки задач нам, кроме платы Arduino, понадобятся: датчики движения, датчики открывания двери, датчики температуры и освещённости. Для включения электрических приборов нам могут понадобиться реле. В качестве датчика фиксации открытия двери может быть применён обычный геркон. Все датчики можно купить для платы Arduino.

Так как количество датчиков достаточно большое для такого маленького дома, то для платформы Arduino существуют платы расширения. Всё, что необходимо, это правильно подключить датчики к прибору и написать программу, которая будет являться «сердцем» «умного» дома.

Прошить плату Arduino легко с помощью специальной программы, которая выпускается для любой операционной системы, а также кабеля USB. Не нужно никаких программаторов, как в случае разработки автоматики на микроконтроллерах.

Программа, которая прошивается в Arduino, пишется на языке Си. Безусловно, есть ограничения на количество байт этой программы. Для реализации поставленной задачи объёма памяти вполне хватит.

Визуализация «умного дома» и расширение возможностей на Ардуино

Безусловно, для визуализации процессов «умного» дома можно было бы использовать ЖК-дисплей, любые цифровые табло. Но всё-таки, для «умного» дома это не является хорошим решением.

Для визуализации процессов и состояний автоматики на платформе Arduino лучше всего использовать отдельный сервер обработки состояний. Этот сервер может быть реализован на программной технологии Node.js, позволяющей реализовать любой сервер, в том числе и для обработки состояний платы Arduino.

Node.js используется для решения задач Интернета вещей, поэтому для визуализации автоматики «умного» дома он точно подойдёт. Достаточно создать сервер и обработчик на языке JavaScript, и можно будет отображать результат в браузере компьютера или планшета.

Микрокомпьютер одноплатный Raspberry Pi

В качестве «железа» сервера можно использовать микрокомпьютер Raspberry Pi или обычный стационарный компьютер или ноутбук. При этом расширяются возможности самой системы автоматизации.

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

Например, можно расширить функционал нашего «умного» дома и приблизить его к умному дому без кавычек. Есть возможность написать такой алгоритм, который будет вести статистику нахождения хозяина в доме и его возвращение домой. Если хозяин обычно возвращается домой в районе 17:30, то за час можно включить бойлер для нагрева воды. Также, ориентируясь на это время, можно заранее включить отопительные приборы, чтобы возвращение было уже в тёплый дом, а не в тот, где температура ниже на 10 градусов из-за экономии электричества в отсутствии хозяев. Программа может понять когда хозяева обычно ложатся спать и заранее переставать греть воду, так как ею уже никто не будет пользоваться до утра. И таких нюансов может быть множество. Именно внешний компьютер может дать продвинутые «мозги» контроллеру на Arduino, который превратится больше в исполнительный механизм.

Дистанционное управление «умным» домом

Как уже упоминалось выше, с помощью сервера на Node.js можно связать вещи друг с другом. Это касается и визуализации процессов автоматики дома в Интернете через облачные сервисы. Это один способ управления своим домом через Интернет. Можно включить бойлер или отопительные приборы вручную заранее перед приездом в дом.

Другой способ — это получение данных и управление «умным» домом на платформе Arduino с помощью SMS и MMS сообщений. Ведь далеко не всегда может быть Интернет под рукой. И, если включение какого-либо прибора может быть не критичным, то получение сообщения о протечке воды может оказаться просто необходимым. И здесь, на помощь в разработке своими руками полнофункционального «умного» дома на платформе Arduino может прийти плата Edison компании Intel.

И что же мы получаем?

Как видно, Arduino — это не просто плата для разработки каких-то простых устройств автоматики. На платформе Arduino можно легко создать своими руками даже автоматику «умного» дома. При этом нет необходимости переплачивать деньги за устройства от компании Simens, которые дороги и обойдутся в 5-10 раз дороже Arduino.

Arduino можно подключить к компьютеру и получить визуализацию процессов на экране монитора или планшета. Автоматикой «умного» дома на платформе Arduino можно управлять через Интернет или с помощью SMS и MMS сообщений. На Arduino можно создавать своими руками достаточно сложные устройства.

Умный светильник на Ардуино

Умный светильник на Ардуино с Bluethooh управлением ► в статье вы найдете список необходимых деталей и подробное описание проекта с готовой программой.

Представляем очередной проект на микроконтроллере Ардуино — «Умный светильник с Bluethooh управлением». Для изготовления проекта потребуется плата Arduino, Bluethooh модуль, датчик движения, реле, блок питания на 12В и светодиодная лента, а также смартфон или планшет с ОС Android для которого мы напишем приложение. В статье вы найдете список всех необходимых деталей и подробное описание проекта.

Как сделать на Ардуино светильник с Блютуз

Для данного проекта потребуется светодиодная лента, которая включается за счет реле SRD-05VDC-SL-C — это релейный модуль для Arduino с током питания 5 Вольт, максимальное коммутируемое напряжение до 250 Вольт. Плата Arduino UNO и LED-лента запитаны от блока питания 12 В. Переключение режимов работы светильника осуществляется по Bluethooh каналу с любого гаджета с установленной ОС Android.

Цель проекта – снизить расходы на электроэнергию за счет автоматического отключения освещения при длительном отсутствии человека в помещении. Разработанное устройство может использоваться не только в подъездах и коридорах, но и в жилых комнатах, поскольку отключает освещение не сразу, а при длительном отсутствии движения. Переключение режима работы производится дистанционно.

Схема светильника повторяет схему Светильника с пультом ДУ. Но в схему добавлен PIR датчик движения, который позволяет работать устройству в автоматическом режиме — включать и выключать свет в зависимости от наличия движения в помещения. При включении светильника или срабатывании датчика движения, на Pin8 подается напряжение и реле замыкает электрическую цепь с лампой.

Светильник на Arduino с Bluethooh управлением

Для этого проекта нам потребуется:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • Bluethooh модуль;
  • PIR датчик движения;
  • реле SRD-05VDC-SL-C;
  • блок питания на 12 В;
  • LED-лента или LED-лампа;
  • мультиметр, провода, паяльник и т.д.

Схема светильника на Arduino с Bluethooh управлением

Скачайте готовый скетч светильника с Bluethooh управлением или скопируйте код ниже. Для включения и переключения режимов работы умного светильника необходимо установить приложение на смартфон или планшет. На нашем сайте вы сможете узнать, как программировать приложения самому. Все файлы — скетч для Ардуино и приложение для Android вы можете скачать одним архивом — здесь.

Скетч для Блютуз светильника на Arduino

В отличии от стандартных светильников с датчиком движения, которые сегодня устанавливают во многих домах. Наш светильник с Bluethooh управлением выключает освещение не сразу. Когда датчик перестает регистрировать движение, программа запускает счетчик времени в 3 минуты (интервал можно изменить), в течении которого свет не выключается, а если обнаружено движение — счетчик обнуляется.

Как обычно, все вопросы и предложения вы можете оставить в комментариях к этой записи или в комментариях к видео на нашем официальном канале YouTube.

Источники:

http://arduinoplus.ru/umnaya-lampa-arduino/

http://umniedoma.ru/umnyj-dom-na-platforme-arduino-kak-sdelat-svoimi-rukami/

http://xn--18-6kcdusowgbt1a4b.xn--p1ai/%D1%83%D0%BC%D0%BD%D1%8B%D0%B9-%D1%81%D0%B2%D0%B5%D1%82%D0%B8%D0%BB%D1%8C%D0%BD%D0%B8%D0%BA-%D0%BD%D0%B0-%D0%B0%D1%80%D0%B4%D1%83%D0%B8%D0%BD%D0%BE/

http://m.habr.com/ru/post/219107/

Ссылка на основную публикацию