如何使用蓝牙低功耗技术与 Arduino 芯片配合,来构建一个简单的无线控制系统
扫描二维码
随时随地手机看文章
我最近在 YouTube 上发布了一个关于这个项目的教程,文中详细介绍了您在本文中可以了解到的所有内容。
简介
要是你能直接通过手机来控制你的 Arduino 设备——无需电线、无需网络连接,只需蓝牙就能实现呢?
在本教程中,您将学习如何通过蓝牙低能耗(BLE)模块将 Arduino 与智能手机连接起来。完成本教程后,您将能够使用一个简单的移动应用程序无线地控制一个 LED 的开启和关闭。
这是一篇关于无线通信的精彩介绍,也是进入物联网领域的一个坚实开端。
如果您是初次访问此页面,请欢迎!这是名为《Arduino 初学者教程》的 24 部分系列中的第 22 课,在这门课程中我们将逐步完成项目搭建。
好的,那我们开始吧。
组件
对于这个项目,您将需要:
•Arduino UNO
•I/O 扩展护罩
•Bluno Bee蓝牙模块
•红色 LED
•跳线
认识一下Bluno Bee蓝牙模块
为了给我们的 Arduino 添加蓝牙功能,我们将使用 Bluno Bee 模块。这是一个专为与 Arduino 板兼容而设计的 BLE 模块。
其最大的优势之一就是简单易用。它通过串行通信与 Arduino 进行连接,这意味着您无需处理复杂的蓝牙协议。您只需通过串行接口来发送和接收数据即可。
实际上,这使得该模块非常适合初学者使用。
布卢诺蜂箱还支持 AT 命令,这些命令可让您设置诸如设备名称和波特率等参数。对于本项目,我们将使用其默认配置(无需进行 AT 配置)。
赞助商
在我们继续之前,先向 DFRobot 表示衷心的感谢,感谢他们为这篇文章提供赞助。
DFRobot 是一家知名的开源硬件供应商,为创客、学生和工程师提供产品。在其网站上,您可以找到从与 Arduino 兼容的板子和传感器,到机器人套件和开发工具等各种产品。
在这一系列产品中,他们推出了“MindPlus Arduino 编程套装”——这是一套旨在帮助初学者亲身体验电子技术和编程的组件。
如果您想更轻松地跟上这些课程的学习进度,我强烈建议您去看看。这是一种很好的练习您在此所学内容的方式。
再次感谢 DFRobot 对此系列的支持,以及为让 STEM 教育更加普及所做出的努力。
现在让我们回到项目上来吧。
项目
在今天的项目中,我们将通过蓝牙将手机与一个 Arduino 设备连接起来,并实现对一个 LED 的无线控制。
首先将 I/O 扩展板连接到你的 Arduino 上。然后将 Bluno Bee 模块插入扩展板上的相应插孔中。
接下来,将你的 LED 连接到数字引脚 2 。
一旦所有设备都连接好,就前往这个系列的 GitHub 仓库,下载名为“control-led”的代码文件。
在 Arduino 调试环境中打开它,并将其上传至您的板子上。
这段代码会监听通过串行通信发送过来的字符。当接收到字母“A”时,它会开启 LED 灯;而当接收到“B”时,则会关闭 LED 灯。
现在让我们来谈谈这款移动应用程序。
移动应用程序设置
在同一文件夹内,您会发现两个文件:
•ControlLED.apk
•ControlLED.aia
这个.apk 文件就是已准备好安装的安卓应用程序。
这个。AIA 文件是 MIT 的 App Inventor 项目,如果您想要自定义应用程序,可以打开并对其进行修改。
对于这段视频,我们将直接使用 APK 文件。
将其传输到您的安卓手机上并进行安装。您可能需要允许从未知来源进行安装。
安装完成后,打开该应用程序。
请确保您的手机已开启蓝牙和定位功能。这些权限是使 BLE 扫描能够正常运行所必需的。
测试系统
然后点击“开始扫描”。
该应用程序将开始搜索附近的低功耗蓝牙设备。几秒钟后,您应该会看到设备列表。
寻找名为“BLE-Link”的那个设备——那就是你的“布龙诺蜜蜂”模块。点击它即可进行连接。
如果一切正常运行,应用程序中的状态将会变为“已连接”,并且您还会看到模块上的指示灯亮起。
现在就来享受精彩的部分吧。
点击“开启 LED”按钮——您的 LED 应会亮起。点击“关闭 LED”,它就会熄灭。
这里发生的情况很简单:该应用程序通过蓝牙发送一个字符,而你的 Arduino 则通过串行接口读取该字符,并据此做出相应操作。
如果您断开设备的连接,然后再次尝试按下按钮,将不会有任何反应,因为此时通信连接已不再有效。
就这样。现在您可以通过蓝牙对您的 Arduino 设备进行无线控制了。
接下来会怎样?
既然你已经搭建好了一个基本的蓝牙控制系统,那么你就可以进一步开展这个项目了。
不要从你的手机向 Arduino 发送指令,而是尝试反向传输数据。例如,你可以将一个传感器连接到 Arduino 上,并在应用程序中显示其读数。
这是众多实际物联网应用的基础。
结论
你将一部手机与一台 Arduino 设备连接起来,通过蓝牙发送指令,并实现了对一个 LED 的远程控制。该项目为探索无线通信以及构建更先进的互联系统提供了绝佳的起点。
本文编译自hackster.io





