蓝牙物联网灯控设计方案
蓝牙技术是当前应用最广泛的无线通信技术之一,工作在全球通用的 2.4GHZ 的ISM 频段。蓝牙的工作距离约为 100 米,具有一定的穿透性,没有方向限制。具有低成本、抗干扰能力强、传输质量高、低功耗等特点。蓝牙技术组网比较简单,无需额外设置,只要两个蓝牙设备进入连接范围内,蓝牙就会自动搜索,实现配对连接,进行点对点信息传输。目前个人电脑、手机等终端设备都具有蓝牙通信功能,可以利用手机蓝牙对其他的蓝牙设备发送控制信号进行无线控制。
1蓝牙灯的总体设计
普通的照明灯泡没有蓝牙模块,没有办法接收蓝牙信号,所以本设计就是通过对普通灯泡的改造,让灯泡能接收蓝牙信号并被控制。蓝牙灯设计基本思路:手机与控制板通过蓝牙模块建立点对点的连接,然后手发送指令,控制板上的蓝牙模块接收到指令,最后操控连接在控制板上的灯泡。
蓝牙灯的总体结构分为手机终端 APP、蓝牙通信、MCU 控制3个部分。手机终端 APP部分实现用户对灯泡的远程操作指令的发送;蓝牙通信部分实现接收操作指令并传送到 MCU控制器:MCU 控制部分实现对接收到的操作指令进行处理。
2蓝牙灯的便件设计
2.1MCU 控制
MCU控制部门选用 Arduino 作为主控板。Arduino 是一款便捷灵活、方便上手的开放源代码的软硬件平台。硬件具有丰富的接口,有 3.3V和V 电源供电、数字口、模拟口,同时支持串口通信。软件编程语言没有复杂的单片机底层代码,直接调用简单实用的函数就能实现功能。以下设计以Arduino Uno 主控板为例。
2.2蓝牙通信
蓝牙模块分为主模块和从模块,主模块既能接收信号,也能发送信号,而从模块只能接收信号,而不能发送信号。本设计中灯泡只需要接收控制信号,选用 HC-06 蓝牙从模块来接收控制信号。HC-06 模块有四个引脚: VCC (3.3V)、GND(接地)、TXD(发送端)、RXD(接收端)。蓝牙模块与 Arduino 通过串口通信。Arduino 的数字端口01是开发板串口的RX(接收端)和 TX(发送端),分别与 HC-06 的 TXD、RXD 相连。
2.3 灯泡
灯泡属于大电流和高电压设备,无法直接用 Arduino 的数字端口进行驱动,所以选用继电器控制电灯的开和关。继电器是利用弱电信号控制继电器的吸起和落下,实现电路的闭合和断开。从而实现 Arduino 用弱信号控制大电流、高电压通断,间接控制灯泡回路中的电流通和断、灯泡的亮和灭的目的。
我国照明采用三相四线制供电系统,要求中线(零线)上不允许安装开关和保险(熔断器),继电器实际就是一个开关,所以将灯泡的电源正极的连线从中间断开,分别连接继电器的公共端和常开端。
Arduino 判断接收到的信号如果是“开灯”,相应的将数字端口(本文选用数字端口 8)赋高电平(I),高电平送到继电器 S端,继电器常开开关闭合,灯泡点亮:判断接收到的信号如果是“关灯”,相应的将数字口 8赋值底电平(0),底电平送到继电器 S端,继电器常开开关复位,灯泡熄灭。蓝牙灯具体硬件连接和程序:
2.4 蓝牙灯硬件测试结果
使用手机蓝牙串口调试助手,监控串口数据。根据 Arduino 蓝牙灯程序中的编写,在手机蓝牙中口调试助手窗口中输入 1时,收到“dengliang”字符串,继电器吸合,灯泡亮;输入 0时,收到“dengmie”字符串,继电器复位,灯泡灭。检测结果说明蓝牙灯硬件能实现接收信处理信号的功能。
3蓝牙灯手机 APP的设计
手机终端 APP 部分实现用户对灯泡的蓝牙远程操作。本设计采用某公司专门开发了-款图形化手机编程软件 App Inventor。这款软件不需要具备一定专业知识也可以使用,软件已经事先将按钮、文字输入输出等软件代码编写成不同的模块,用户只需根据自己的需求拼装就可以。
手机终端 APP 部分需要具有搜索蓝牙设备、连接蓝牙设备、断开蓝牙设备、灯泡的亮灭功能。
编写的 Android 程序,将生成 APK 文件,通过扫描二维码下载或者手机数据线下载到手机上。安装后,会在手机桌面形成蓝牙灯 APP 图标。打开图标进入到 APP 界面。
4蓝牙灯的调试
蓝牙灯 APP对灯泡硬件的完全控制,还需要两部分合起来进一步的调试。需要注意 APP中“开”和“关”按钮操作所代表的数值是“1”和“0”,而蓝牙灯控制部分 Arduino 程序中,也要对““1”和“0”做出判断。
首先,打开手机的蓝牙功能,让手机与 HC-06 配对,输入配对秘密“1234”,配对成功。其次,打开手机安装好的 ApP,点击“搜索蓝牙”按钮,连接蓝牙,提示 APP 已连接上 HC-06 蓝牙模块。最后,点击灯泡灭图片,灯泡亮:点击灯泡亮图片,灯泡灭。通过调试最终实现了手机App对蓝牙灯远程控制。
出处 电脑知识与技术
原标题 基于Arduino的蓝牙灯的设计与实现
作者 刘佳玲
参考资料
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!