APP下载

基于无线传感网的温度监测系统设计

2016-12-10俞宗佐郭改枝

无线互联科技 2016年22期
关键词:终端设备传感上位

俞宗佐,郭改枝

(内蒙古师范大学 计算机与信息工程学院,内蒙古 呼和浩特 010022)

基于无线传感网的温度监测系统设计

俞宗佐,郭改枝

(内蒙古师范大学 计算机与信息工程学院,内蒙古 呼和浩特 010022)

文章采用ZigBee协议标准组织无线传感网,将CC2530作为ZigBee模块的硬件核心,用高精度数字式温度传感器DHT11进行温度采集,选用ARM芯片Intel Xscale pxa270作为上位机核心处理器,设计了实时、高效的小型无线温度监测系统。该系统结构完整,可扩展性强,与同类产品相比,性能更加稳定,使用更加灵活。

无线传感网;温度监测;ZigBee;CC2530

随着微电子技术和数字信号处理技术的发展,数据采集系统得到了广泛应用。在工业生产中,采集工业现场的工艺参数反馈给用户或控制系统,可以为提高产品质量、降低成本提供信息和手段。温度是工业生产过程中最普遍、最重要的工艺参数之一。目前,随着工业生产的进步,需要温度监测的场合越来越多,对温度监测技术的要求也越来越高。在一些地形条件复杂、腐蚀性高、建筑群、爆炸等场合,或者被监测对象处于运动、旋转等情况下,传统的有线系统由于布线复杂甚至无法布线显得无能为力,无线监测系统显示出了显著的优势。然而当前市面上流行的多数无线温度监测系统都存在通信距离受限、无线通信质量差、测量结果不稳定等缺陷。本文将近年来发展迅猛的无线传感网技术与嵌入式信息处理技术结合,设计出一款便携式、低功耗、性能更好的无线温度监测系统。

无线传感网(Wireless Sensor Network, WSN)是由静止或移动的传感器节点通过无线通信方式形成的自组织网络系统,以协作感知、采集、处理和传输网络覆盖地理区域内被感知对象的信息,并最终把这些信息发送给观察者[1]。无线传感网技术目前已比较成熟,其无线信号的传输性能相当稳定,它的出现为随机性的研究数据获取提供了便利[2]。

本文介绍一种基于ZigBee协议标准的无线传感网组织方式,用于探测和传输环境温度信息,管理中心采用集成Windows CE 6.0操作系统的嵌入式处理器,用图形化界面显示监测结果。该系统性能稳定、结构完整、功能可扩展,适用于气象、环保、动物研究、精细农业等多种应用场合。

1 系统整体结构

该系统由终端设备、协调器和上位机3部分组成[3]。终端设备(传感器节点)放置在待监测位置,监测环境温度;协调器首先建立无线网络并允许终端设备加入网络,并将传感器节点发送过来的温度信息经串口送至上位机;上位机调用显示程序将温度信息以数据和图形方式显示在液晶屏上。

2 无线传感网构建

系统中的传感网部分采用ZigBee协议标准构建。ZigBee是一种新兴的低成本、小体积、低功耗无线通信技术。它延时短,安全性强,节点容量高,且工作在免执照频段2.4 Ghz,无需网络租用费用。在硬件安排上,本着减少设计复杂度及提高通信系统稳定性的原则,选用TI公司的CC2530芯片作为ZigBee的硬件解决方案。

ZigBee模块可分为:协调器、路由器和终端设备,该系统仅使用了协调器和终端设备。终端设备上集成了传感器DHT11,用来采集环境温度并将其转换为40 bit数字信号串行输出给终端模块的控制器CC2530芯片。协调器和终端设备实现组网后,温度信息将通过无线网络传送给协调器。在实际应用中,如果需要多个温度采集节点,或终端设备与上位机距离很远时,在已有网络中简单地添加路由器和终端设备即可[4],非常易于扩展。

协议栈的选择对于网络传输性能影响很大,该系统选用了当前比较流行的Z-Stack协议栈。Z-Stack使用操作系统的思想构建,采用事件轮循机制,当各层初始化之后,系统进入低功耗模式,当事件发生时,唤醒系统,开始进入中断处理事件,结束后继续进入低功耗模式。如果同时有几个事件发生,判断优先级,逐次处理事件。这种软件构架可以极大地降级系统的功耗。

整个Z-stack的主要工作流程可以大致分为系统启动,驱动初始化,OSAL初始化和启动,进入任务轮循几个阶段。

3 ZigBee模块程序设计

CC2530程序采用C语言在IAR平台下编写。

终端设备负责采集温度信息并通过网络发送给协调器。程序开始执行后,首先进行系统初始化,包括相关变量初始化,ZigBee相关寄存器和I/O口初始化以及其他硬件初始化等。初始化完成后,向协调器请求加入网络,若请求失败则继续请求,若请求加入成功,则进行温度采集,为了使结果更准确,采用多次采集取平均值的方法,然后将所得数据打包,再通过无线网络发送给协调器。程序流程如图1所示。协调器负责建立网络并与终端设备建立通信,接收温度信息。程序流程如图2所示。

图1 终端设备程序流程图

图2 协调器程序流程图

4 上位机设计

系统的上位机部分采用ARM处理器Intel Xscale pxa270芯片配合外围液晶显示电路、RS-232串行接口标准电路和电源电路组成。采用Windows CE 6.0嵌入式操作系统,在定制操作系统时,首先要移植一个板级支持包(BSP),主要是对硬件功能的软件抽象。因为需要进行串口通信,特别要添加Serial Port Support(串口支持)功能。

在配套的VS2005开发环境下采用C++语言编写上位机程序。上位机程序主要包括串口通信程序和屏幕显示程序[5]。其中屏幕显示程序主要依靠VS2005环境下的MFC界面化编程,比较简单,在此不再叙述。串口通信程序完成ARM芯片从串口接收数据的过程,是通过串口驱动来实现的。

4.1 打开串口设备

应用程序通过应用编程接口函数CreatFile()来创建、打开或修改一个文件,而所有的设备都被抽象为文件,所以这里的串口设备也被当作文件一样打开。CreatFile()函数返回一个设备句柄(标志了某个设备),在以后访问该设备时就要利用这个设备句柄。

在打开串口通信设备时要指定其相应通信参数。对于串口通信,要设置的参数有如波特率、数据帧格式(如一次传送的数据位数,是否使用奇偶校验等)、收发超时等参数。这些参数被包含在结构体DCB中。在Windows CE应用程序中,可以通过函数SetCommState()来设置设备的通信参数。SetCommState()的原型如下:

4.2 应用程序从串口读数据

应用程序通过ReadFile()函数从文件中读取数据。串口控制应用程序中,用函数WaitCommEvent()来监控串口设备,如果串口设备有事件发生并且是在缓冲区中接收到了字符,那么就通过ReadFile()函数调用串口驱动从串口缓冲区中读取数据。

函数SetCommMask()用来设置与设备通信时监控的事件类型,比如监控到串口接受缓冲区中接收到数据,就是一个事件。函数SetCommMask()用来清除与设备通信时发生的错误,并且可以返回设备状态。

4.3 应用程序往串口写数据

应用程序通过WriteFile()函数调用串口驱动的写串口函数。WriteFile()函数原型如下:

5 系统设计结果

经过前端温度采集得到的温度信息经过ZigBee无线网络传送至协调器,由协调器送入以ARM处理器为核心的上位机。

在不同环境下多次应用该系统进行温度测量,并与高灵敏度温度计测量结果相比较,结果如表1所示。

表1 测量结果对比

测量结果表明,该系统测量结果准确、误差小,在不同环境下性能稳定。测试中也发现,该系统反应灵敏,在环境温度变化时,几乎与高灵敏度温度计同时得到测量结果,实时性好;并且由于该系统体积小、携带方便,且无线通信方式没有铺设线缆的要求和约束,在更换应用场合时,非常容易实现。

6 结语

本文介绍了一种基于ZigBee网络的无线温度监测系统。设计时充分考虑了系统的实用性和可扩展性,实际应用中如果需要多个远距离温度采集节点时,只需在已有网络中简单地添加所需的路由器和终端设备即可。实验结果证明,与目前市场上的同类产品相比,该系统实时性好,使用灵活,温度显示直观、精确,方便实用。

[1]王汝传,孙力娟.无线传感器网络技术导论[M].北京:清华大学出版社,2012.

[2]ANDREY S, ALEXANDER B, DENIS S. Deployment and evaluation of a wireless sensor network for methane leak detection [J]. Sensors and Actuators A:Physical,2013(1):217-225.

[3]YANG W, KE L, MINZAN L,et al.The Wireless Intelligent Controller of Greenhouse Based on ZigBee[J].Sensor Letters, 2013(11):1321-1325.

[4]HONGQUAN P, JUN Y, ZHANG XIAO, et al. A Survey on ZigBee Network Technology Research[J].Computer Systems & Applications, 2013(9):6-11.

[5]郭忠南.基于ZigBee的智能家居上位机软件的设计与实现[J].安徽电子信息职业技术学院学报,2014(5):26-29.

Design of temperature monitoring system based on wireless sensor network

Yu Zongzuo, Guo Gaizhi
(Computer and Information Engineering College of Inner Mongolia Normal University, Hohhot 010022, China)

This paper uses wireless sensor network of ZigBee protocol standards organizations, and uses CC2530 as the hardware core of Zigbee module, uses DHT11, the high precision digital temperature sensor to collect temperature, the ARM chip Intel Xscale PXA270 as the host computer core processor, designing real-time, small wireless temperature monitoring system with high efficiency. The system structure is complete, which can be strong expansion, and compares with similar products, the performance is more stable and flexible to use.

wireless sensor network; temperature monitoring; ZigBee; CC2530

内蒙古自然科学基金资助项目;项目编号:2015MS0623。内蒙古师范大学科研基金项目;项目编号:2014ZRYB06。

俞宗佐(1983— ),女,河北秦皇岛,硕士,讲师;研究方向:无线传感器网络技术。

猜你喜欢

终端设备传感上位
《传感技术学报》期刊征订
新型无酶便携式传感平台 两秒内测出果蔬农药残留
视频监视系统新型终端设备接入方案
IPv6与ZigBee无线传感网互联网关的研究
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
配电自动化终端设备在电力配网自动化的应用
基于ZigBee和VC上位机的教室智能监测管理系统
车站信号系统终端设备整合及解决方案
以新思路促推现代农业上位