littlebot
Published on 2025-04-13 / 1 Visits
0

【源码】基于Node.js和RIOT OS的物联网环境监测系统

项目简介

本项目是基于物联网的环境监测系统,借助MQTT协议和RIOT操作系统达成环境传感器数据的收集与发布。项目覆盖从模拟数据生成到真实传感器数据采集的完整流程,利用Thingsboard云平台进行数据可视化。项目包含Node.js客户端模拟、RIOT OS设备通信、LoRaWAN传感器节点实现以及基于HTML5的加速度计数据采集与处理四个主要部分。

项目的主要特性和功能

  1. 基于Node.js的模拟客户端:用Node.js编写两个模拟设备(Device1和Device2),生成随机环境数据(如温度、湿度等),并通过MQTT协议将数据发送到Thingsboard云平台,在Web仪表板实时展示。
  2. 基于RIOT OS的MQTT - SN客户端:使用RIOT操作系统开发多个MQTT - SN客户端,模拟和真实设备可通过PAHO透明网关与MOSQUITTO代理通信,支持在IoT - Lab测试平台运行,能从真实硬件传感器获取数据并发送到Thingsboard。
  3. LoRaWAN传感器节点:实现基于LoRaWAN协议的传感器节点,可生成随机数据或从真实传感器获取数据,数据通过LoRaMAC协议发送到TheThingsNetwork,再经Thingsboard进行数据可视化。
  4. 基于HTML5的加速度计数据采集:开发Web应用,通过Generic Sensors API访问用户加速度计数据,数据在Thingsboard进行云端处理,在Web页面展示活动识别算法结果。

安装使用步骤

环境准备

确保已安装Node.js、RIOT OS、MOSQUITTO代理和Thingsboard平台,复制本项目到本地。

运行Node.js模拟客户端

  1. 进入项目根目录,找到Device1.jsDevice2.js
  2. 修改文件中的MQTT配置(如Thingsboard的访问令牌)。
  3. 运行以下命令启动设备: bash node Device1.js node Device2.js

配置和运行RIOT OS设备

  1. 进入Devices/RIOT_OS_Client_1Devices/RIOT_OS_Client_2目录。
  2. 修改main.c文件中的MQTT - SN配置。
  3. 使用RIOT OS的编译工具链编译并烧录到目标设备。
  4. 启动PAHO透明网关,确保设备能够通过MQTT - SN与MOSQUITTO代理通信。

配置LoRaWAN设备

  1. 进入Devices/LoRaWAN_NodesDevices/LoRaWAN_Sensors目录。
  2. 修改main.c文件中的LoRaWAN配置。
  3. 使用RIOT OS的编译工具链编译并烧录到LoRaWAN设备。
  4. 在TheThingsNetwork中注册设备,并配置Thingsboard集成。

运行加速度计Web应用

  1. 进入Accelerometer目录,打开index.html文件。
  2. 在浏览器中运行该文件,允许访问加速度计传感器。
  3. 数据将自动发送到Thingsboard,并在Web页面中展示。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】