使用低功耗物联网传感器实时监测环境条件和紫外线辐射,并通过LoRaWAN向Th传输数据
扫描二维码
随时随地手机看文章
目的:
•实时监测关键环境参数,如温度、湿度、大气压、VOC气体、空气颗粒物(PM2.5、PM10)、紫外线强度、降雨检测等。
•使用LoRaWAN技术,通过物联网(TTN)进行管理,远距离无线传输数据。
•在OLED屏幕上显示本地数据,以便快速读取。
•将数据发送到云平台(与TTN集成)进行存储、历史分析和远程可视化。
•了解与TTN集成多个传感器和端到端LoRaWAN通信。
所需材料和软件:
硬件:
•WISBLOCK基地:RAK1907基地板轮缘Gen
•WISBLOCK核心:RAK4631北欧NRF52840(集成LoRaWAN
•WISBLOCK传感器:
•RAK12030雨水传感器
•RAK12019 LTR-390UV-01紫外光传感器。
•WISBLOCK杂项:
•RAK1921 OLED显示屏
•其他组件/配件:
•RAK7268V2 WisGate Edge Lite 2 (LoRaWAN网关)
•电池连接器电缆
•太阳能电池板连接器
•太阳能电池板
•螺丝刀
•防水外壳(可选,但强烈建议户外部署)
软件:
•Arduino IDE或PlatformIO
•用于RAK模块的Arduino库(例如RAKwireless_RAK4631_BSP)和特定传感器库(例如Adafruit_BME680, SparkFun_PMSA003I_Arduino_Library, Adafruit_SSD1306, Adafruit_GFX)。
•RAK7268V2网关固件和配置软件(web界面)。
•TTN (The Things Network)帐户。
•云物联网平台(例如,Ubidots, Grafana cloud)上的帐户,用于与TTN集成。
•预计耗时:8-12小时(包括装配、编程、搭建LoRaWAN网络、配置云平台)。
学习成果:
•能够组装和配置模块化WISBLOCK组件。
•能够编程微控制器,用于读取和处理来自多个传感器的数据。
•深入了解LoRaWAN通信,包括设备激活(OTAA/ABP)和物联网的有效载荷格式。
•具有在TTN中配置和管理LoRaWAN网关的经验。
•了解将来自TTN的物联网数据与云平台集成以实现可视化、分析和警报设置。
•开发功能完备的自主环境监测系统。
设置和实现步骤:
•硬件组装:将RAK4631 (Core)模块连接到RAK1907 (Base)模块。将传感器(BME680, UV, Rain, particle)和OLED显示器连接到RAK1907的相应I2C/模拟/数字端口。连接电池电缆和太阳能电池板供电。
•开发环境设置:安装Arduino IDE或PlatformIO,并添加对RAK4631板的支持。为每个传感器和OLED安装必要的库。
•TTN中的网关配置(RAK7268V2):将网关连接到网络(以太网或Wi-Fi)。访问其web界面并配置为使用Semtech数据包转发器或基本站协议连接到物联网。在您的TTN帐户中注册网关。
•设备(RAK4631节点)在TTN中的配置:在您的The Things Network帐户中创建应用程序并注册新设备。选择OTAA (Over-the-Air Activation)作为激活类型。请记下TTN提供的DevEUI、AppEUI(或JoinEUI)和AppKey。这些将在节点的Arduino代码中需要。
节点编程(RAK4631):
•编写代码初始化每个传感器并读取其数据。
•实现在OLED显示器上显示关键数据的逻辑。
•使用TTN凭证将RAK4631配置为LoRaWAN节点。
•将传感器数据封装为LoRaWAN的有效格式(建议使用Cayenne LPP,因为它易于使用,并且可以在TTN中自动解码,或者使用自定义二进制格式以进行更多控制)。
•实现周期性数据传输周期和低功耗模式(深度睡眠),以优化电池寿命。
•TTN中的有效载荷解码器配置:如果您使用卡宴LPP, TTN将自动解码。如果使用自定义二进制格式,则需要在TTN控制台中用JavaScript编写有效负载格式化程序(解码器),以将接收到的字节转换为可读值。
•TTN与云物联网平台集成:在TTN控制台中,配置集成(例如,webhook或MQTT)将解码的数据发送到云物联网平台(例如,Ubidots, Grafana Cloud)。
•云物联网平台配置(Ubidots/Grafana):创建仪表板,使用图表、仪表和表格实时可视化传感器数据。设置基于阈值的警报规则(例如,高颗粒物水平,大雨,极端温度)。
•测试和校准:执行现场测试以验证数据传输,LoRaWAN范围和传感器读取精度。根据需要调整警报阈值。
挑战和故障排除提示:
•LoRaWAN连接问题:确保网关在节点的范围内,并且LoRaWAN凭据(DevEUI, AppEUI, AppKey)在节点和the Things Network控制台上都是正确和匹配的。验证频率和信道计划(例如,EU868)。确保网关在TTN中已连接并处于活动状态。
•功耗:频繁的传感器读数和OLED使用会增加功耗。优化低功耗代码(读取/传输之间的微控制器睡眠模式),以最大限度地延长电池寿命,特别是与太阳能电池板。考虑在不需要时禁用OLED。
•TTN中的有效载荷解码:确保the Things Network中的有效载荷格式化程序正确解码节点发送的二进制数据。使用TTN控制台中“实时数据”工具查看原始有效负载,并将其与预期格式进行比较。
•传感器精度:一些传感器可能需要校准或补偿环境因素(例如,用于VOCs的BME680)。考虑传感器的位置,以避免偏差读数(例如,雨传感器在悬垂)。
•干扰:网关和节点应远离可能影响LoRaWAN通信的电磁干扰源。
本文编译自hackster.io