随着物联网技术的快速发展,传感网作为物联网感知层的核心技术,通过部署大量传感器节点实现对物理世界的实时数据采集与传输,在智慧城市、环境监测、智能家居等领域展现出广阔应用前景,本次传感网课程设计以“智能环境监测系统”为核心目标,综合运用传感器技术、无线通信技术、嵌入式开发及云计算等知识,设计并实现了一套低功耗、实时、可靠的环境监测系统,通过该设计,旨在深化对传感网络架构、协议栈及数据融合技术的理解,提升工程实践与问题解决能力。
系统需求分析与总体设计
1 需求分析
系统需实现对环境温度、湿度、光照强度、PM2.5浓度等关键参数的实时监测,并满足以下核心需求:
- 实时性:传感器数据采集周期≤1分钟,数据上传延迟≤5秒;
- 低功耗:节点采用电池供电,续航时间≥7天(休眠模式);
- 可靠性:无线通信丢包率≤5%,支持数据重传机制;
- 可扩展性:支持传感器节点的动态加入与离开;
- 可视化:用户可通过Web端实时查看数据历史曲线与阈值报警。
2 总体架构
系统采用三层传感网经典架构:感知层、网络层、应用层。
- 感知层:由多个传感器节点(终端节点+协调器)组成,负责采集环境参数;
- 网络层:基于ZigBee协议构建无线自组织网络,实现数据多跳传输;
- 应用层:通过云平台(阿里云IoT)接收数据,提供Web端监控界面与API接口。
系统硬件设计与实现
1 传感器节点设计
终端节点以低功耗微控制器STM32L151为核心,集成以下模块:
- 传感器模块:温湿度传感器(DHT11,精度±2℃/±5%RH)、光照传感器(BH1750,精度±1 lux)、PM2.5传感器(GP2Y1010AU0F,检测范围0-500 μg/m³);
- 无线通信模块:ZigBee模块(XBee S2C,采用ZigBee PRO协议,支持Mesh组网);
- 电源模块:3.7V锂电池+TP4056充电管理,支持太阳能板供电(可选);
- 调试模块:SWD接口用于程序烧录与调试。
协调器节点与终端节点硬件结构一致,但通过USB转串口模块与PC连接,负责组建网络并汇聚数据。
2 网关设计
网关采用ESP32开发板,通过Wi-Fi模块将ZigBee网络数据上传至阿里云IoT平台,ESP32内置双核处理器,支持Wi-Fi与蓝牙,具备较强的数据处理与边缘计算能力,可实现对原始数据的初步过滤(如异常值剔除)。
系统软件设计与实现
1 感知层软件设计
终端节点程序基于Keil MDK开发,采用C语言编写,核心功能包括:
- 传感器驱动:通过I2C(BH1750)或单总线(DHT11)协议读取传感器数据,实现数据校验(如DHT11的8位校验和);
- 低功耗管理:采用STM32的STOP模式,每分钟通过RTC唤醒一次完成数据采集与发送,唤醒后进入休眠,功耗≤10μA;
- ZigBee通信:通过AT指令集配置XBee模块,加入协调器组建的网络,采用非确认(UNICAST)方式上传数据,若未收到ACK则重传3次。
协调器节点程序通过ZigBee模块的API接口接收终端节点数据,并通过串口转发至网关。
2 网络层与云平台设计
- ZigBee网络组建:协调器通过AT命令“ATID”设置网络ID(如1234),“ATSC”设置信道(如CH=11),终端节点通过“ATNJ”加入网络;
- 云平台配置:在阿里云IoT创建产品“智能环境监测”,定义设备(如Node_01),并配置物模型(温度、湿度、光照、PM2.5四个属性,类型分别为float/int/int/float);
- 数据上传协议:终端节点将传感器数据封装为JSON格式(如
{"temp":25.6,"humi":60,"light":800,"pm25":35}),通过ESP32的MQTT客户端上传至云平台。
3 应用层软件设计
Web端监控界面基于Vue.js开发,主要功能包括:
- 实时数据展示:通过WebSocket协议订阅云平台数据,以仪表盘和数字面板实时显示当前环境参数;
- 历史曲线:调用云平台API获取过去24小时数据,使用ECharts绘制温度、湿度变化曲线;
- 阈值报警:用户可设置报警阈值(如PM2.5>100μg/m³),当数据超标时,页面弹






