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

Arduino蓝牙智能家居:从电路搭建到APP控制的完整DIY指南

基于 Arduino UNO 与 HC-05 的蓝牙智能家居系统实战

智能家居已从概念走入寻常百姓家。本项目利用 Arduino UNO + HC-05 蓝牙模块 + 继电器模块,配合手机 APP 实现 4 路家用电器(灯/风扇/插座等)的无线开关控制。特别适合行动不便人群,也可作为物联网入门实训项目。

1. 核心硬件清单与选型要点

模块 关键参数 选型建议
Arduino UNOATmega328P, 16MHz, 14数字/6模拟口官方版或兼容板均可,建议带 DIP 封装便于替换芯片
HC-05 蓝牙主从一体, 波特率 9600 默认, 供电 3.3~5V自带基板、引出 EN/KEY 引脚的模块,便于 AT 指令配置
4路继电器模块5V 触发, 光耦隔离, 接点 10A/250VAC低电平触发更稳妥,避免上电抖动误动作
手机 APPBluetooth Terminal HC-05 / Serial Bluetooth Terminal免费、无广告、支持自定义按钮发送指令

2. 硬件接线图解

Arduino 引脚 外设连接 备注
D0 (RX)HC-05 TXD需串联 1k/2k 分压,HC-05 为 3.3V 电平
D1 (TX)HC-05 RXD直连即可,Arduino 5V 兼容 3.3V 输入
D8~D11继电器模块 IN1~IN4低电平触发时输出 LOW 导通
5V / GNDHC-05 VCC/GND、继电器 VCC/GND共地,建议外接 5V/2A 电源模块供电

⚠ 强电接线安全警示: 继电器常开 (NO) 端串入火线,零线直通。操作前必须断电,建议使用带熔断器的插座盒封装,防止触电与短路起火。

3. HC-05 快速配置(AT 指令模式)

  1. 上电前按住 HC-05 EN/KEY 键不放,上电后松手,LED 慢闪 (2s间隔) 进入 AT 模式;
  2. 串口监视器设置 38400 波特率、换行符 "Both NL & CR";
  3. 发送指令验证:AT → 回 OK
  4. 常用配置:
    AT+NAME=HomeBT (修改设备名)
    AT+PSWD=8888 (修改配对密码)
    AT+UART=9600,0,0 (波特率 9600, 1停止位, 无校验)
  5. 断电重启,LED 快闪进入数据模式,手机蓝牙搜索配对。

4. Arduino 核心代码(已优化健壮性)

#include <SoftwareSerial.h>

SoftwareSerial bt(2, 3);  // RX, TX 避开硬件串口 D0/D1 便于调试
const uint8_t relayPins[4] = {8, 9, 10, 11};
String cmd;

void setup() {
  bt.begin(9600);
  Serial.begin(9600);
  for (uint8_t p : relayPins) {
    pinMode(p, OUTPUT);
    digitalWrite(p, HIGH);  // 低电平触发模块,上电默认断开
  }
}

void loop() {
  if (bt.available()) {
    cmd = bt.readStringUntil('\n');
    cmd.trim();
    Serial.println("Recv: " + cmd);

    for (int i = 0; i < 4; i++) {
      String onCmd  = "ch" + String(i+1) + "on";
      String offCmd = "ch" + String(i+1) + "off";
      if (cmd.equalsIgnoreCase(onCmd)) {
        digitalWrite(relayPins[i], LOW);
        bt.println("CH" + String(i+1) " ON");
      } else if (cmd.equalsIgnoreCase(offCmd)) {
        digitalWrite(relayPins[i], HIGH);
        bt.println("CH" + String(i+1) " OFF");
      }
    }
  }
}

代码亮点: 使用 SoftwareSerial 释放硬件串口供调试;指令不区分大小写;统一字符串解析,易于扩展通道数;上电默认全断,安全可靠。

5. 手机 APP 设置与使用

  1. 安装 Serial Bluetooth Terminal (Google Play / 酷安);
  2. 连接 "HomeBT",密码 "8888";
  3. 菜单 → "Devices" → 长按设备 → "Edit macros" 创建 8 个按钮:
    名称: Ch1 ON 数据: ch1on\n
    名称: Ch1 OFF 数据: ch1off\n
    ……以此类推至 Ch4
  4. 点击按钮即可控制对应路灯/风扇,APP 显示 Arduino 回传状态。

6. 进阶扩展方向

结语: 本项目以极低门槛实现了核心智能家居功能,代码结构清晰、硬件接线规范,是迈向物联网工程的理想起点。实际部署时请务必遵守用电安全规范,强弱电隔离、接地保护不可省略。

工业技术

  1. SERENA:基于 Arduino Mega 2560 与 TFT 触摸屏的多级密码报警系统
  2. 基于 1Sheeld 的智能家居安防系统:语音/短信控制与入侵报警
  3. Python 3 控制 Arduino UNO - 串口通信点亮内置 LED 入门教程
  4. 基于 Arduino 与 Google Sheets 的实时 RFID 考勤系统
  5. Octopod:面向家庭与工业的智能 IoT 自动化全能中枢
  6. WARAN 家庭自动化套件:树莓派 + Arduino + nRF24L01+ 模块化设计
  7. 基于蓝牙的智能家居自动化控制系统
  8. 通过 Android App 和物联网实现智能家居自动化
  9. 智能锁与传感器设计:专家级电路保护与感测策略守护智能家居安全
  10. 远程团队家庭办公寄递的五大难题与破解之道
  11. Silicon Labs 在 Embedded World 2019 展示面向智能家居与楼宇自动化的先进 Wireless Gecko 方案
  12. 智能家居技术如何重塑日常生活