亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 工业技术

智能家居自动化系统 - 电路和源代码

使用 Arduino 的智能家居自动化系统项目

自动化(如家庭自动化和工业自动化等)在当今世界变得很重要,因为它有助于以更少的人工协助和更智能的方式完成任务。如今,在自动化设备的帮助下,房屋变得更加智能和发展。家用电器正在使用遥控开关,而不是传统的开关。在当今世界,大多数人都可以使用智能手机,它的使用在我们的生活中变得非常流行和必不可少。我们可以用智能手机一键控制家电,一则消息。借助控制器和通信设备,可以远程控制家用电器。在这个项目中,我们将使用 Arduino UNO 板来开发智能家居自动化项目,该项目带有 HC-05 蓝牙模块,由智能手机远程控制。对于无法独立完成工作的瘫痪者来说,它真的很有帮助,这些设备可以成为这些人的一大帮助。

需要的组件

Arduino UNO

Arduino 是一个开源平台,用于开发电子项目。它可以随时轻松地进行编程、擦除和重新编程。市场上有许多 Arduino 板,如 Arduino UNO、Arduino Nano、Arduino Mega、Arduino lilypad 等,根据用途有不同的规格。在这个项目中,我们将使用 Arduino UNO 来自动控制家用电器。它上面有 ATmega328 微控制器 IC,以 16MHz 时钟速度运行。它功能强大,可以在 USART、I2C 和 SPI 通信协议上工作。该板通常使用微型 USB 电缆使用软件 Arduino IDE 进行编程。 ATmega328 带有预编程的板载引导加载程序,无需外部硬件帮助即可更轻松地上传代码。它在制作电子项目或产品方面有着广泛的应用。使用C和C++语言对板子进行编程,非常容易学习和使用。 Arduino IDE 使编程变得更加容易。它将代码分为两部分,即 void setup() 和 void loop()。函数 void setup() 只运行一次,主要用于启动某个进程,而 void loop() 包含应该连续执行的代码部分。

这个模型由6个模拟输入引脚和14个可用作输入输出的数字GPIO引脚组成,其中6个提供PWM输出和模拟使用pinMode(),digitalWrite( )、digitalRead() 和analogRead() 函数。 6 个模拟输入通道从引脚 A0 到 A5,提供 10 位分辨率。该板可以使用工作在 5 伏的 USB 电缆或工作在 7 到 20 伏之间的 DC 插孔供电。有一个板载电压调节器可产生 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 板非常适合家庭自动化项目。

HC-05蓝牙模块

HC-05是一款用于无线通讯的蓝牙模块。它主要用于在微控制器、智能手机、计算机、传感器等之间建立串行双向无线通信。此蓝牙模块的范围小于 100 米,还取决于大气条件。它工作在 USART(通用同步异步收发器)协议上,可与其他设备进行通信。它可以在主模式和从模式下工作,支持的波特率 9600、19200、38400、57600、115200、230400 和 460800。默认情况下,它工作在从模式,并且可以使用 AT 命令配置主模式。它可用于从微控制器到任何设备和从设备到微控制器的双向传输数据。 HC-05蓝牙模块工作在命令模式和数据模式。命令模式用于使用一些 AT 命令访问 HC-05 的配置设置,数据模式用于串行发送数据。命令模式可以通过将“key”引脚接地并使用 AT 命令来访问,我们可以更改其设置。有 AT 指令可用于更改模块的名称、密码、波特率等。下面是几个AT指令:

相关项目:使用 LDR 的自动 LED 应急灯电路

HC-05 的引脚:

EN/Key pin :此引脚用于将蓝牙模块设置为命令模式数据模式 .通过将此引脚设置为高电平可以访问命令模式,将其设置为低电平可以访问数据模式。默认在数据模式下设置为低。

固定在 HC-05 说明
EN/键 高 - 命令模式,低 - 数据模式
VCC 3.3 V 至 5 V
接地 地面
TXD 发送串口数据
RXD 接收串口数据
状态 显示模块是否连接

本项目中使用HC-05建立Arduino Uno和Smartphone之间的串行无线通信。这可以通过将 Hc-05 与 Arduino Uno 连接并在智能手机上安装应用程序来完成。尽管有多种应用程序可用于将智能手机连接到 HC-05。但这里我们将使用蓝牙终端 HC-05,它可以从 Play 商店下载。如电路图所示,将 HC-05 与 Arduino UNO 连接。 HC-05 的 TXD 引脚连接到 HC-05 的 RXD 引脚的 RX(引脚 0)连接到 Arduino Uno 的 TXD(引脚 1)。 EN/key 设置为 LOW。打开智能手机的蓝牙并搜索蓝牙设备。连接到名为“HC-05”的蓝牙设备。默认密码为“0000”或“1234”。

HC-05蓝牙模块内置红色LED指示连接状态。在任何连接之前,它会以某种周期性的方式连续闪烁,而在连接之后,它的闪烁速度会减慢。

HC-05蓝牙模块的应用:

中继

继电器是一种电磁开关,通过小电流操作来打开或关闭一个或多个更大的电路。它由一个电磁线圈组成,当一个小电流通过它时,它会转换成一个临时磁铁。相对较小的电流用于在带芯的线圈中产生磁场,并用于操作可以控制更大电流的开关。早期的继电器用于电报和电话交换机以放大信号。计算机发明后,继电器用于执行布尔和逻辑运算。继电器根据其在电路中的用途有不同的尺寸和品种。继电器的主要应用领域包括电机控制、汽车应用、工业应用、家庭自动化等。

在这个项目中,我们将使用电磁继电器来打开和关闭家用电器,如管灯、灯泡、风扇或我们家中的任何交流电源。来自 Arduino UNO 的直流信号。继电器有 6 个引脚,其中两个 VCC 和接地用于给继电器供电。一个引脚是数据引脚,用于从微控制器获取信号“1”或“0”。其他 3 针常闭 (NC)、通用、常开 (NO) 用于连接交流供电设备。该继电器在常开或常闭两种状态下工作:

常开:继电器激活时闭合电路,继电器停用时断开电路。

常闭:继电器开启时打开电路,继电器关闭时关闭电路。

继电器引脚:
继电器引脚 说明
VCC 5V
接地 接地
数据引脚 来自微控制器的“1”或“0”
NC 常闭电路
COM 普通
常开电路

  继电器的应用:

相关项目:使用 LDR 的自动路灯控制系统

电路图

电路使用Arduino、蓝牙、继电器和LED设计。我们已将蓝牙与 Arduino 串行连接。继电器用于操作家用电器。我们为四个电器使用了四个继电器。您可以更改继电器的编号以相应地操作各种家用电器。在转向硬件时,LED 将被灯泡取代。

控制家电的命令将通过“蓝牙终端HC-05 app”发送 从您的智能手机到蓝牙,连接到 Arduino。然后 Arduino 读取串行到蓝牙的数据。因此,动作是根据从蓝牙到 Arduino 的命令执行的。

基于 Arduino 的家庭自动化的工作

按照电路图中给定的方式连接家庭自动化项目。首先,我们将灯泡与交流电源和电路图中给出的继电器连接起来。然后继电器从 Arduino Uno 板获得直流电源。继电器的数据引脚在引脚 8、9、10 和 11 处连接到 Arduino,它们是 Arduino 的输出引脚。然后如图所示将 HC-05 模块与 Arduino 板连接,并为 Adruino 板供电。使用 Arduino IDE 上传项目末尾给出的代码。打开智能手机中的蓝牙并输入密码连接 HC-05 模块。默认情况下,密码为“0000”或“1234”。成功连接智能手机与 HC-05 后,打开“智能手机中的蓝牙终端 HC-05 应用程序 ”,它将显示您的设备已连接到 HC-05。现在发送数据“Bulb1 打开”或“Bulb2 关闭”以打开或关闭任何灯泡。这样你就可以远程控制家里的灯了。

项目代码

#include

整数灯泡1 =8;
整数灯泡2 =9;
整数灯泡3 =10;
整数灯泡4 =11;

SoftwareSerial bt(0,1); /* (Rx,Tx) */

字符串str;

void setup() {
bt.begin(9600);
Serial.begin(9600);

pinMode(bulb1,OUTPUT);
pinMode(bulb2,OUTPUT);
pinMode(bulb3,OUTPUT);
pinMode(bulb4,OUTPUT);

}

无效循环(){

if (bt.available())
{
str =bt.read();
Serial.println(str);
//bulb1
if(str ==”bulb1 on”)
{
digitalWrite(bulb1,HIGH);
Serial.println(“BUlB 1 开启”);
}
否则(str==”bulb1 off”)
{
digitalWrite(bulb1,LOW);
Serial.println(“BUlB 1 关闭”);
}
else
{
digitalWrite(bulb1,LOW);
}
//bulb2
if(str==”bulb2 on”)
{
digitalWrite(bulb2,HIGH);
Serial.println(“BUlB 2 开启”);
}
else if(str==”bulb2 off”)
{
digitalWrite(bulb2,LOW);
Serial.println(“BUlB 2 关闭”);
}
else
{
digitalWrite(bulb2, LOW);
}
////bulb3
if(str==”bulb3 on”)
{
digitalWrite(bulb3,HIGH);
Serial.println(“BUlB 3 开启”);
}
else if(str==”bulb3 off”)
{
digitalWrite(bulb3,LOW);
Serial.println(“BUlB 3 关闭”);
}
else
{
digitalWrite(bulb3,LOW);
}
//bulb4
if(str==”bulb4 on”)
{
digitalWrite (bulb4,HIGH);
Serial.println(“BUlB 4 开启”);
}
else if(str==”bulb4 off”)
{
digitalWrite(bulb4,LOW);
Serial.println(“BUlB 4 关闭”);
}
其他
{
digitalWrite(bulb4,LOW);
}

}
}

编程代码说明

包含项目所需的库,导入SoftwareSerial.h库与蓝牙模块HC-05进行串口通信。

#include

声明 Arduino 输出引脚 8、9、10 和 11 的变量,分别连接到四个继电器的数据引脚。变量字符串“str”存储我们使用 HC-05 蓝牙模块从智能手机获取的数据。

intbulb1 =8;

intbulb2 =9;

int bulb3 =10;

int bulb4 =11;

String str;

 pinMode(bulb1,OUTPUT);

 pinMode(bulb2,OUTPUT);

 pinMode(bulb3,OUTPUT);

 pinMode(bulb4,OUTPUT);

Bluetooth serial communication and serial monitor are initiated at 9600 baud rate.

  bt.begin(9600);

  Serial.begin(9600);

If the data got from the smartphone using Bluetooth Module HC-05 is “bulb1 on” then we turn on the bulb 1 by setting data pin of the relay as HIGH. If data is “bulb1 off” then we turn off the bulb by setting the data pin of the relay as LOW. If no data received for bulb 1 then we set our bulb 1 to LOW. The same thing is done for bulb 2, bulb 3, bulb 4.

if(str==”bulb1 on”)

     {

      digitalWrite(bulb1,HIGH);

      Serial.println(“BUlB 1 is ON”);

     }

     else if(str==”bulb1 off”)

     {

      digitalWrite(bulb1,LOW);

      Serial.println(“BUlB 1 is OFF”);

     }

     else

     {

      digitalWrite(bulb1,LOW);

     }

Hence, you can control any home appliance in your home by using Arduino UNO, Bluetooth, and relay. We have also provided the technical information for the components required for constructing this project. The circuit diagram consists of LEDs which will be replaced by the AC bulbs used in the home.

Related Projects:


工业技术

  1. 家庭自动化应用
  2. Silicon Labs 展示智能家居和楼宇自动化连接解决方​​案
  3. 智能家居锁和门禁控制的智能电路保护和感应设计
  4. 内政部航运的五个障碍——以及如何克服这些障碍
  5. Arduino 报警系统:SERENA
  6. 使用 1Sheeld 的智能家居自动化和安全系统
  7. Python3 和 Arduino 通信
  8. 基于Arduino和谷歌电子表格的考勤系统
  9. Octopod:智能物联网家庭/工业自动化项目
  10. WARAN - 家庭自动化
  11. 基于蓝牙的家庭自动化
  12. 使用物联网的基于安卓应用的家庭自动化系统