Система автоматизации умного дома — схема и исходный код
Проект системы автоматизации умного дома с использованием Arduino
Автоматизация (например, домашняя автоматизация, промышленная автоматизация и т. д.) приобрела важное значение в современном мире, поскольку она помогает выполнять задачу с меньшим участием человека и более рациональным способом. Дома становятся умнее и совершенствуются в наши дни с помощью устройств автоматизации. В домашних электроприборах используются переключатели с дистанционным управлением, а не обычные переключатели. В современном мире у большинства людей есть доступ к смартфонам, и их использование стало очень популярным и необходимым в нашей жизни. Мы можем использовать смартфоны для управления бытовой техникой одним щелчком мыши или одним сообщением. С помощью контроллеров и устройств связи можно дистанционно управлять бытовой техникой. В этом проекте мы будем использовать плату Arduino UNO для разработки проекта автоматизации умного дома с модулем Bluetooth HC-05, который дистанционно управляется смартфоном. Это может быть очень полезно для парализованных людей, которые не могут выполнять свою работу самостоятельно, и такие устройства могут стать большим подспорьем для этих людей.
- Публикация по теме: Система домашней автоматизации на основе распознавания голоса
Необходимые компоненты
- Ардуино УНО
- Модуль Bluetooth HC-05
- Ретрансляторы
- Перемычки
- Лампочки
- Приложение Bluetooth Terminal HC-05 (загрузить из игрового магазина)
Arduino UNO
Arduino – это платформа с открытым исходным кодом, используемая для разработки проектов в области электроники. Его можно легко запрограммировать, стереть и перепрограммировать в любой момент времени. На рынке доступно множество плат Arduino, таких как Arduino UNO, Arduino Nano, Arduino Mega, Arduino lilypad и т. д., которые имеют разные спецификации в зависимости от их использования. В этом проекте мы собираемся использовать Arduino UNO для автоматического управления бытовой техникой. Он имеет микросхему микроконтроллера ATmega328, работающую на тактовой частоте 16 МГц. Это мощное устройство, которое может работать с протоколами связи USART, I2C и SPI. Эта плата обычно программируется с помощью программного обеспечения Arduino IDE с использованием кабеля micro USB. ATmega328 поставляется с предварительно запрограммированным встроенным загрузчиком, который упрощает загрузку кода без помощи внешнего оборудования. Он имеет широкое применение в создании проектов или продуктов электроники. Для программирования платы используются языки C и C++, которые очень просты в освоении и использовании. Arduino IDE значительно упрощает программирование. Он разделяет код на две части:void setup() и void loop(). Функция void setup() запускается только один раз и используется в основном для запуска какого-либо процесса, тогда как void loop() состоит из части кода, которая должна выполняться постоянно.
Эта модель состоит из 6 аналоговых входных контактов и 14 цифровых контактов GPIO, которые можно использовать как вход-выход, 6 из которых обеспечивают выход ШИМ и аналоговый сигнал с помощью pinMode(), digitalWrite( ), digitalRead() и AnalogRead(). 6 аналоговых входных каналов от контактов A0 до A5 обеспечивают 10-битное разрешение. Плата может питаться либо от USB-кабеля, работающего от 5 вольт, либо от разъема постоянного тока, работающего от 7 до 20 вольт. Имеется встроенный регулятор напряжения для выработки 3,3 вольта для работы маломощных устройств. Поскольку ATmega328 работает с протоколами связи USART, SPI и I2C, имеет контакты 0 (Rx) и 1 (Tx) для связи USART, контакты SDA (A4) и SCL (A5) для I2C и SS (10), MOSI (11) , MISO (12) и SCK (13) для протокола связи SPI. Эти характеристики делают плату Arduino Uno идеальной для проекта домашней автоматизации.
- Публикация по теме: Схема электронного глаза с использованием LDR и IC 4049 для контроля безопасности
Модуль Bluetooth HC-05
HC-05 — это модуль Bluetooth, используемый для беспроводной связи. Он используется в основном для установления последовательной двусторонней беспроводной связи между микроконтроллерами, смартфонами, компьютерами, датчиками и т. д. Радиус действия этого модуля Bluetooth составляет менее 100 метров, а также зависит от атмосферных условий. Он работает по протоколу USART (универсальный синхронный асинхронный приемник-передатчик) для связи с другими устройствами. Он может работать как в ведущем, так и в ведомом режиме с поддерживаемыми скоростями 9600, 19200, 38400, 57600, 115200, 230400 и 460800. По умолчанию он работает в ведомом режиме, а ведущий режим можно настроить с помощью AT-команд. Его можно использовать для передачи данных в обоих направлениях от микроконтроллера к любому устройству и от устройства к микроконтроллеру. Bluetooth-модуль HC-05 работает в командном режиме и режиме данных. Командный режим используется для доступа к настройкам конфигурации HC-05 с помощью некоторых AT-команд, а режим данных используется для последовательной отправки данных. Доступ к командному режиму можно получить, заземлив «ключевой» контакт, и с помощью AT-команд мы можем изменить его настройку. Существуют AT-команды, которые можно использовать для изменения имени, пароля, скорости передачи и т. д. модуля. Вот несколько AT-команд:
- AT — для проверки связи модуля или нет
- AT+NAME =hc-05 — для изменения имени устройства на «hc-05»
- AT+PSWD =1234 — для смены пароля на 1234
- AT+UART =9600, 1, 0 — для изменения скорости передачи данных на 9600, стопового бита на 1 и бита четности на 0.
Связанный проект:Автоматическая схема светодиодного аварийного освещения с использованием LDR
Вывод HC-05:
EN/Кнопка :этот контакт используется для установки модуля Bluetooth в любой из командных режимов. или режим передачи данных . Доступ к командному режиму можно получить, установив на этом выводе высокий уровень, а к режиму данных можно получить доступ, установив на нем низкий уровень. По умолчанию в режиме передачи данных установлено низкое значение.
- VCC :это контакт источника питания, который подключается либо к 5 В, либо к 3,3 В.
- Основной :это контакт заземления модуля Bluetooth.
- TXD :этот контакт используется для последовательной передачи данных.
- RXD :этот вывод используется для последовательного получения данных.
- Состояние :этот контакт указывает, подключен ли модуль к другому устройству или отключен.
Закрепить на HC-05 | Описание |
EN/ключ | Высокий — режим команд, низкий — режим данных |
ВКК | от 3,3 В до 5 В |
Земля | Земля |
TXD | Передача последовательных данных |
RXD | Получить последовательные данные |
Состояние | Показывает, подключен модуль или нет |
В этом проекте HC-05 используется для установления последовательной беспроводной связи между Arduino Uno и смартфоном. Это можно сделать, подключив Hc-05 к Arduino Uno и установив приложение на смартфон. Хотя для подключения смартфона к HC-05 доступны различные приложения. но здесь мы собираемся использовать Bluetooth-терминал HC-05, который можно загрузить из магазина игр. Подключите HC-05 к Arduino UNO, как показано на принципиальной схеме. Контакт TXD HC-05 подключается к RX (контакт 0) контакта RXD HC-05 подключается к TXD (контакт 1) Arduino Uno. EN/ключ установлен как НИЗКИЙ. Включите Bluetooth на смартфоне и выполните поиск устройств Bluetooth. Подключитесь к устройству Bluetooth с именем «HC-05». По умолчанию пароль «0000» или «1234».
Модуль Bluetooth HC-05 имеет встроенный красный светодиод, который показывает состояние соединения. Перед любым подключением он периодически периодически мигает, а после подключения скорость его мигания замедляется.
- Связанный проект: Простая схема сенсорного переключателя с использованием таймера 555 и транзистора BC547
Применение Bluetooth-модуля HC-05:
- Компьютер и периферийные устройства
- GPS-приемник
- Промышленный контроль
- Проекты микроконтроллеров
Ретрансляция
Реле – это электромагнитный переключатель, который приводится в действие слабым электрическим током и включает или выключает одну или несколько больших цепей. Он состоит из катушки электромагнита, которая превращается во временный магнит, когда через нее проходит небольшой электрический ток. Относительно небольшой ток используется для создания магнитного поля в катушке с сердечником, и он используется для срабатывания переключателя, который может управлять гораздо большим током. Ранее реле использовались в телеграфах и телефонных станциях для усиления сигналов. После изобретения компьютеров реле использовались для выполнения булевых и логических операций. Реле бывают разных размеров и разновидностей в зависимости от их использования в цепях. Основные области применения реле включают управление двигателями, автомобильные приложения, промышленные приложения, домашнюю автоматизацию и т. д.
В этом проекте мы собираемся использовать электромагнитное реле для включения и выключения бытовой техники, такой как ламповый светильник, лампочка, вентилятор или любой источник переменного тока в нашем доме. Сигналы постоянного тока от Arduino UNO. Реле имеет 6 контактов, два из которых VCC и Ground используются для подачи питания на реле. Один контакт — это контакт данных, который используется для получения сигнала «1» или «0» от микроконтроллеров. Другие 3 контакта, нормально закрытые (NC), общие, нормально открытые (NO), используются для подключения устройств с питанием от переменного тока. Это реле работает в двух состояниях:нормально разомкнутое или нормально замкнутое:
Нормально открытый:цепь замыкается всякий раз, когда реле активируется, и размыкается, когда реле деактивируется.
Нормально замкнутый:цепь размыкается всякий раз, когда реле активируется, и замыкается, когда реле деактивируется.
- Связанный проект: Автоматическая ночная лампа с использованием Arduino и LDR
Распиновка реле:
Закрепить на RELAY | Описание |
ВКК | 5 В |
Земля | Земля |
Пин-код данных | "1" или "0" от микроконтроллера |
NC | Для нормально замкнутой цепи |
COM | Общие |
НЕТ | Для нормально разомкнутой цепи |
Применения реле:
- Реле используется для обеспечения критической с точки зрения безопасности логики.
- Они используются для управления цепью высокого напряжения с помощью сигнала низкого напряжения.
- Реле также используются в целях защиты.
- Реле используются на подстанциях и в сетях при подаче электроэнергии из одной точки в другую.
Связанный проект: Автоматическая система управления уличным освещением с использованием LDR
Схема цепи
Схема разработана с использованием Arduino, Bluetooth, реле и светодиодов. Мы последовательно подключили Bluetooth к Arduino. Реле используется для управления бытовой техникой. Мы использовали четыре реле для четырех приборов. Вы можете изменить номера реле для управления различными бытовыми приборами соответственно. При переходе к оборудованию светодиоды будут заменены лампочками.
Команда для управления бытовой техникой будет отправлена через «приложение терминал Bluetooth HC-05» со смартфона на Bluetooth, подключенный к Arduino. Затем Arduino считывает данные, последовательно поступающие в Bluetooth. Следовательно, действия выполняются в соответствии с командой, поступающей от Bluetooth к Arduino.
- Связанный проект: Электронный проект управления светофором с использованием таймера IC 4017 и 555
Работа домашней автоматизации на основе Arduino
Выполните подключение для проекта домашней автоматизации, как показано на принципиальной схеме. Прежде всего, мы подключаем лампочку к источникам переменного тока и к реле, как показано на принципиальной схеме. Затем на реле подается питание постоянного тока от платы Arduino Uno. Контакты данных реле подключены к контактам 8, 9, 10 и 11 к Arduino, которые являются выходными контактами Arduino. Затем подключите модуль HC-05 к плате Arduino, как показано на схеме, и включите плату Adruino. Загрузите код, указанный в конце проекта, с помощью Arduino IDE. Включите Bluetooth на смартфоне и подключите модуль HC-05, введя пароль. По умолчанию пароль «0000» или «1234». После успешного подключения смартфона к HC-05 откройте «Приложение Bluetooth HC-05 для терминала на смартфоне». ”, и он покажет ваше устройство, подключенное к HC-05. Теперь отправьте данные «Bulb1, включите» или «Bulb2, чтобы выключить», чтобы включить или выключить любую лампочку. Вот как вы можете удаленно управлять освещением в вашем доме.
- Связанный проект: Электронный проект схемы переключателя хлопка с использованием таймера 555
Код проекта
#include
целая лампочка1 =8;
целая лампочка2 =9;
целая лампочка3 =10;
целая лампочка4 =11;
SoftwareSerial bt(0,1); /* (прием, передача) */
Строка ул;
void setup() {
bt.begin(9600);
Serial.begin(9600);
Режим контакта(лампа1,ВЫХОД);
Режим контакта(лампа2,ВЫХОД);
Режим контакта(лампа3,ВЫХОД);
Режим контакта(лампа4,ВЫХОД);
Р>
недействительный цикл() {
if (bt.available())
{
str =bt.read();
Serial.println(str);
//bulb1
if(str ==”bulb1 on”)
{
digitalWrite(bulb1,HIGH);
Serial.println(“лампочка 1 включена”);
}
else if (str==”bulb1 off”)
{
digitalWrite(bulb1,LOW);
Serial.println(“BUlb 1 is OFF”);
}
else
{
digitalWrite(bulb1,LOW);
}
//bulb2
if(str==”bulb2 on”)
{
digitalWrite(bulb2,HIGH);
Serial.println("BUlB 2 ON");
}
else if(str=="bulb2 off")
{
digitalWrite(bulb2,LOW);
Serial.println("лампочка 2 выключена");
}
else
{
digitalWrite(bulb2, НИЗКИЙ);
}
////bulb3
if(str==”bulb3 on”)
{
digitalWrite(bulb3,HIGH);
>Serial.println("лампочка 3 включена");
}
else if(str=="лампочка 3 выключена")
{
digitalWrite(лампочка 3,LOW);
Serial.println("Лампочка 3 выключена");
}
else
{
digitalWrite(bulb3,LOW);
}
//bulb4
if(str==”bulb4 on”)
{
digitalWrite (bulb4,HIGH);
Serial.println("Лампочка 4 включена");
}
else if(str=="bulb4 off")
{
digitalWrite(bulb4,LOW);
Serial.println("лампочка 4 выключена");
}
else
{
digitalWrite(bulb4,LOW);
}
}
Объяснение кода программирования
Включите библиотеки, необходимые для проекта, библиотека SoftwareSerial.h импортирована для последовательной связи с модулем Bluetooth HC-05.
#include
Объявление переменных выходных контактов Arduino на 8, 9, 10 и 11, которые идут на контакт данных каждого из четырех реле. Переменная строка «str» хранит данные, которые мы получаем от смартфона с помощью Bluetooth-модуля HC-05.
int bulb1 =8;
int bulb2 =9;
int bulb3 =10;
int bulb4 =11;
String str;
pinMode(bulb1,OUTPUT);
pinMode(bulb2,OUTPUT);
pinMode(bulb3,OUTPUT);
pinMode(bulb4,OUTPUT);
Последовательная связь Bluetooth и монитор последовательного порта инициируются со скоростью 9600 бод.
bt.begin(9600);
Serial.begin(9600);
Если данные, полученные со смартфона с помощью Bluetooth-модуля HC-05, включают «лампочку 1», мы включаем лампочку 1, установив вывод данных реле как ВЫСОКИЙ. Если данные «лампочка 1 выключена», мы выключаем лампочку, установив контакт данных реле как НИЗКИЙ. Если данные для лампочки 1 не получены, мы устанавливаем для нашей лампочки 1 значение LOW. То же самое делается для лампочки 2, лампочки 3, лампочки 4.
if(str==”bulb1 on”)
{
digitalWrite(bulb1,HIGH);
Serial.println("Лампочка 1 включена");
}
else if(str==”bulb1 off”)
{
digitalWrite(bulb1,LOW);
Serial.println("Лампочка 1 выключена");
}
else
{
digitalWrite(bulb1,LOW);
}
Следовательно, вы можете управлять любой бытовой техникой в вашем доме с помощью Arduino UNO, Bluetooth и реле. Мы также предоставили техническую информацию о компонентах, необходимых для создания этого проекта. Принципиальная схема состоит из светодиодов, которые будут заменены лампочками переменного тока, используемыми в доме.
Связанные проекты:
- Автоматическая система полива и орошения растений — схема, код и отчет о проекте
- Схема оповещения о дожде — проект детектора снега, воды и дождя
- Схема индикатора уровня воды — два простых проекта
- Другие проекты в области электротехники и электроники
Промышленные технологии
- Приложения домашней автоматизации
- Silicon Labs для демонстрации решений для умного дома и автоматизации зданий
- Интеллектуальная защита цепей и проектирование датчиков для замков и контроля доступа в умном доме
- Пять препятствий для доставки в домашний офис - и как их преодолеть
- Система сигнализации Arduino:SERENA
- Система автоматизации и безопасности умного дома с использованием 1Sheeld
- Связь Python3 и Arduino
- Система посещаемости на основе Arduino и Google Spreadsheet
- Octopod:Smart IoT Home / Проект автоматизации промышленности
- WARAN - Домашняя автоматизация