当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]蓝牙低功耗(BLE)设备广泛用于环境监测,但将其数据传输到云端通常需要复杂的sdk、网关或专有平台。在本教程中,我们演示了一个简单而灵活的替代方案:使用BleuIO作为USB BLE网关将BLE广告数据直接发送到Arduino Cloud。

蓝牙低功耗(BLE)设备广泛用于环境监测,但将其数据传输到云端通常需要复杂的sdk、网关或专有平台。在本教程中,我们演示了一个简单而灵活的替代方案:使用BleuIO作为USB BLE网关将BLE广告数据直接发送到Arduino Cloud。

在这个项目中,我们建立了一个轻量级的数据管道,其中HibouAir空气质量传感器通过BLE广告广播环境数据,BleuIO扫描并捕获数据,Python脚本解码值,结果直接发送到Arduino Cloud进行存储和可视化-所有这些都使用免费工具。

本项目旨在作为展示示例,说明如何快速透明地完成BLE开发和云集成,而无需BLE sdk或嵌入式固件开发。

为什么是Arduino Cloud?

Arduino Cloud为存储和可视化物联网数据提供了一个方便可靠的平台,无需构建和维护自定义后端。虽然它经常与Arduino硬件相关联,但该平台支持手动设备,这使得它适合基于网关的解决方案,其中数据来自外部设备(如BLE传感器)。在这个项目中,Arduino Cloud作为一个安全的端点,解码的空气质量数据可以使用标准的MQTT通信发布。其集成的仪表板允许开发人员快速可视化传感器数据,这对于需要最少设置的原型、演示和概念验证项目特别有用。

硬件和软件要求

硬件

•HibouAir二氧化碳空气质量监测仪

蓝牙低功耗USB加密狗

软件

•Python 3.9或更高版本

•pyserial Python库

•arduino-iot-cloud Python库

•Arduino云

不需要嵌入式编程或BLE sdk。

系统如何运作

HibouAir设备定期在其BLE广告负载中广播空气质量数据。BleuIO持续扫描附近的BLE广告,并过滤匹配特定设备标识符的数据包。当检测到匹配的广告时,Python网关脚本提取原始数据并应用解码逻辑将十六进制值转换为人类可读的测量值。然后使用经过身份验证的MQTT通信将这些解码的值发布到Arduino Cloud。整个过程连续运行,无需与传感器建立持久的BLE连接即可实现实时数据更新。

Arduino云设置(一步一步)

步骤1:创建或登录Arduino Cloud

创建一个免费帐户或登录到您现有的帐户。登录后将生成Arduino Cloud

•设备ID

•秘密密钥

安全地保存它们——它们将在Python脚本中使用。

步骤2:创建设备

•从左侧菜单单击“添加设备”

•选择手动设备

•将设备命名为HibouAir

步骤3:创建一个东西

当提示创建设备后,创建一个新的东西,并命名为HibouAir的东西。

步骤4:添加云变量

向Thing添加以下变量:

•变量名

•类型

•描述

•co2_ppm

•int

•CO₂浓度(ppm)

•temperature_c

•浮动

•温度(℃)

•humidity_rh

•浮动

•相对湿度(%)

步骤5:创建仪表板

回到Dashboards并创建一个新的仪表板。

添加小部件,例如:

•CO2值小部件

•温度测量部件

•随时间变化的湿度图表小部件

您的云设置现在已经完成。

配置secrets.py

更新以下值:

确保串口与BleuIO连接的位置匹配。

配置gateway.py

在gateway.py中,更新scan命令:

本例中,220069为BLE广告中使用的HibouAir板号。如果您的HibouAir设备使用不同的ID,请相应地更新此值。

运行项目

一旦Arduino Cloud配置和本地脚本设置完成,运行项目只需要一个命令。

当执行网关脚本时,BleuIO进入双角色模式,并开始扫描与指定HibouAir板标识符匹配的BLE广告。当接收到广告数据包时,脚本对传感器值进行解码,并立即将其发布到Arduino Cloud。不一会儿,仪表板就开始显示实时空气质量数据。这种连续循环允许系统以最小的开销作为实时ble到云的网关运行。

自定义仪表板

Arduino Cloud仪表板可以定制,以最适合用户需求的方式呈现空气质量数据。可以使用数字小部件显示实时值,仪表可用于可视化二氧化碳浓度或温度等范围,并且可以添加图表小部件以显示随时间变化的趋势。通过安排和配置这些小部件,用户可以创建一个清晰和信息丰富的界面来监测室内空气质量。这种灵活性使得仪表板不仅适用于开发和测试,而且适用于演示和现场演示。

该项目演示了如何使用最小和透明的方法有效地捕获BLE广告数据并将其传输到云端。通过结合HibouAir传感器、BleuIO、一个简单的Python网关和Arduino Cloud,可以创建一个完整的端到端监控解决方案,而无需依赖复杂的sdk或嵌入式固件开发。虽然本教程的重点是空气质量数据,但同样的方法可以扩展到其他基于ble的传感器和云平台。作为一个示例,它突出了BleuIO作为BLE开发工具的灵活性,并为希望构建和扩展自己的BLE支持云解决方案的开发人员提供了坚实的基础。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭