自动化是当今世界的本质。自动化可以使我们的生活变得轻松和安全。有很多方法可以实现自动化。可以通过Wi-Fi,IR,GSM,蓝牙和许多其他技术来实现自动化。
以前,我们已经介绍了 使用不同技术的多种类型的 家庭自动化,例如:
- 基于DTMF的家庭自动化
- 使用Arduino的基于GSM的家庭自动化
- 使用Arduino的PC控制的家庭自动化
- 使用8051的蓝牙控制家庭自动化
- 使用Arduino的IR远程控制家庭自动化
- 使用MATLAB和Arduino的家庭自动化项目
- 使用Raspberry Pi的RF远程控制LED
在这个项目中,我们将要使用蓝牙和Arduino无线控制家用电器。我们将在这里展示如何通过简单地将数据从Android智能手机发送到Arduino来控制电器。
所需组件:
- Arduino Mega(任何型号)
- Android手机
- HC05蓝牙模块
- 蓝牙终端应用
- L293D集成电路
- 两个6V继电器
- 两个灯泡
- 面包板
- 12 v,1A适配器
- 16x2 LCD
电路原理图:
这种由蓝牙控制的家庭自动化的电路图很简单,并且可以轻松进行连接。LCD,蓝牙模块HC05和L293D驱动器IC已连接到Arduino。
两个继电器连接到L293D,以操作两个AC设备。继电器共有五个引脚,其中两个引脚(围绕COM引脚)连接到L293D和GND。COM(公共)引脚连接到交流市电带电端子,继电器的NO(常开)引脚连接到灯泡的一个端子。灯泡的另一端连接到交流市电的零线。在这里检查继电器的工作。
L293D驱动器IC通常用于增加电流。L293D的Vcc2或VS引脚应连接到Arduino的VIN引脚(输入电压引脚或Vcc)。IC的输入1和输入2引脚连接到Arduino的10和11引脚,输出引脚连接到继电器引脚。
工作说明:
首先,我们需要从Play商店在Android手机中下载并安装蓝牙终端应用程序,然后将其与蓝牙模块HC05配对,就像我们通常配对两个蓝牙设备一样。进一步检查本文为Arduino配置蓝牙终端应用程序。
现在,我们在Android手机中安装了Bluetooth Terminal App,通过它我们可以将数据发送到Bluetooth模块HC05。HC05蓝牙模块已连接至Arduino Mega,以通过Android智能手机串行接收蓝牙终端App发送的数据。16x2 LCD用于显示电子设备的打开和关闭状态。L293D IC用于驱动直接连接到两个灯泡的两个继电器。12v适配器用于为Arduino和电路供电。
每当我们通过Android手机发送数据时,Arduino都会检查发送的字符,并根据Code将相应的引脚置于高电平或低电平。这些引脚控制继电器,继电器继而控制设备。我们项目的运作如下:
- 如果我们通过蓝牙终端应用程序发送“ a”,则Bulb1将打开,而Bulb2将关闭。
- 如果我们通过蓝牙终端应用程序发送“ b”,则Bulb2将打开,而Bulb1将关闭。
- 如果我们通过蓝牙终端应用程序发送“ c”,则两个灯泡都将打开。
- 如果我们通过蓝牙终端应用程序发送“ d”,则两个灯泡都将关闭。字符“ d”也可用于关闭单个灯泡。
您可以在此处了解有关Arduino继电器控制的更多信息。最后检查演示视频中的完整操作。
编程说明:
该项目的程序非常简单,易于理解。
在您的Arduino代码中包含 LiquidCrystal.h 头文件,这对于LCD的工作是必需的。
#包括
在 void setup() 函数 中将 引脚11和10配置为Arduino的输出引脚,如下所示,并使用 Serial.begin(9600) 通过蓝牙模块HC05在Arduino和Android手机之间进行通信。
void setup(){pinMode(11,OUTPUT); pinMode(10,输出); Serial.begin(9600); lcd.begin(16,2); lcd.print(“ ** AUTOMATION **”); }
在 void loop() 函数中,检查是否存在任何串行数据,并将该数据放入变量 char c中。
void loop(){如果(Serial.available()> 0){char c = Serial.read(); 如果(c =='a'){Serial.print(“ in a code”);…………………….
然后将该串行数据(字符c)与由用户由Android Smart Phone发送的字符“ a”,“ b”,“ c”,“ d”进行比较。比较之后,Arduino将根据代码中的各种条件打开或关闭设备。您可以根据需要更改代码。检查下面的完整代码。