基于ZigBee协议的温湿度监测系统设计与实现
直接利用式(1)计算实际温度值T
T=d1+d2·SOT (1)
其中,d1=-40,d2=0.04,SOT为温度测量值。而湿度传感器的线性度较差,为补偿湿度传感器的非线性以获取准确数据,采用式(2)修正输出数值RHline
c1=-4,c2=0.648,c3=-7.2×10-4,SORH为湿度传感器相对湿度测量值。在测量与通信结束后,SHT71自动转入休眠模式,以减少能耗。
3 系统软件设计
3.1 ZigBee协议栈
ZigBee协议由IEEE802.15.4定义的物理层(PHY)、媒体访问控制层(MAC)、ZigBee联盟定义的网络层(NWK)、应用层(APL)及安全协议规范组成。协议栈框架如图5所示。
ZigBee支持星型、树形和网状型3种拓扑结构。在星型网络中,所有的终端设备均只与协调器通信,不同终端的数据交换需通过协调器实现,故星型网为单跳网络。树形和网状网具有在网络间对数据包路由的功能,因而为多跳网络。为简化设计,实验室中以协调器为中心,组建星型网络。
软件设计上,采用符合ZigBee2007规范的ZStack-2.3.0协议栈,可兼容CC2530片上系统解决方案;开发环境为IAR EW,使用C语言编写应用程序。ZStack协议栈中嵌入了OSAL(Operating System Abstraction Layer)多任务操作系统,以便于对ZigBee协议进行管理。当某事件时间发生后,OSAL根据事件类型将其分配给能处理该事件的具体任务,并对事件加以处理。
协调器负责ZigBee无线传感网络的组建。通电后,分别对硬件模块和OSAL初始化。在周围空间进行能量检测和信道扫描,选择一个合适的信道组建无线网络。为网络分配一个PANID标识,并为该ZigBee协调节点分配一个16位网络短地址(默认为0x0000)。在组网成功后,接收传感器节点的入网请求并为其分配网络地址、接收传感器节点发送的温湿度数据信息及上位机的控制命令等。协调器主体工作流程如图6所示。
传感器终端节点主要负责温湿度的采集。初始化后扫描空间中是否有ZigBee网络存在,若有,则申请加入,并周期性发送温湿度测量数据给协调器,其工作流程如图7所示。
3.2 上位机监控界面
在Microsoft Visual Stdio 2010开发平台中,利用C#/.NET。开发上位机用户监控界面。传感器节点采集的数据以ZigBee无线方式传递给协调器,再由协调器递交给上位机处理和显示。图8为温湿度实时监测界面,横轴为测量时间,纵轴为SHT71采集的数据。突变处是人为干预时产生的现象。可见,SHT71有较好的灵敏度及稳定性。
4 结束语
文中利用CC2530和SHT71,设计并实现了可对温湿度进行无线采集的监测系统。在射频前端加入RFX2401C功放单元,有效增加了传输距离。系统将传感器终端节点采集的温湿信息经ZigBee网络传递给上位机存储和实时显示,便于生产人员分析处理。设计中,由于采用星型单跳网络,ZigBee网络覆盖范围小,可加入的传感器节点数目有限,满足实验中的应用要求,而应用在实际的生产过程中可能存在一定限制。下一步研究的重点是在传感器节点增加路由功能或引入有路由功能的RFD,组建网状或树形网络,增加ZigBee网络的覆盖范围。另外,设计拥有更多功能的传感器节点,以采集多种类型的环境因子,使系统更具实用价值。
ZigBee CC2530 RFX2401C Z-stack-2007协议栈 SHT71 温湿度 相关文章:
- 电子电度表设计方案(03-25)
- 基于CC2530的Zigbee网络节点设计(04-11)
- 基于ZigBee技术的环境监测系统的开发(09-30)
- 基于CC2480的土壤温度和水分梯度测量系统(10-04)
- 关于GPRS技术的远程智能抄表系统的研究(01-28)
- 基于ZigBee的多用户智能电表设计(02-15)