樊娜(南京邮电大学 通信与信息工程学院,江苏 南京 210000)
基于ZigBee的智能粮仓温度监测系统研究与设计*
樊娜
(南京邮电大学通信与信息工程学院,江苏南京 210000)
准确测量粮仓内的温度是保障粮食质量的关键。介绍了一种基于ZigBee协议的智能粮仓温度监测系统。此系统基于CC2530芯片完成了协调器节点和传感器终端节点的硬件设计,基于ZigBee2007协议栈与IAR开发平台完成了软件设计,最终实现了粮仓无线测温功能。经测试表明,本温度监测系统可以准确地测量温度,对环境适应性强,具备使用性。
ZigBee;无线测温;CC2530
维持一定数量、品种和品质的粮食储备,是保障国家粮食安全的重要措施。危害我国储粮的因素包括霉变、害虫等多个方面。而上述危害都与粮仓的温度有密切关系。因此,准确、实时的监控粮仓内不同地方的温度,是储粮系统必须解决的关键问题。由于粮仓内的环境限制,使用有线方式建立网络有诸多不便,而无线传感网络则对环境具有极大适应性,与有线方式相比,优势明显。在无线传感网络中,ZigBee技术由于其低复杂度、低功耗、低速率、低成本的特点,在传输距离短、传输速率要求不高的情况下,具备独特的优势。
基于上述优点以及温度监控的重要性,本文开展了基于ZigBee协议的无线传感网络温度监测系统设计。首先基于 CC2530芯片完成了协调器节点与传感器终端节点的硬件设计,然后基于ZigBee2007协议栈完成了软件设计,并通过实际温度测试实验,验证了该系统的有效性。
智能粮仓温度监测系统是利用无线传感网络及ZigBee技术,实现对粮仓温度实时监测。从技术架构上来看,智能粮仓温度监测系统可以分为感知层、传输层和应用层。感知层承担感知温度信息的任务并执行来自上层的命令,传输层负责传递感知层获得的信息,应用层则主要进行信息的处理,并提供人机交互界面。此监测系统中,终端节点构成感知层,用以测量温度,协调器作用在传输层,负责传递温度信息,而上位机则位于应用层,实现对温度信息进行处理,并通过界面进行显示。系统架构如图1所示。
图1 系统架构
本文实验中,ZigBee芯片选用CC2530芯片。CC2530芯片上系统(SoC)是高度集成的解决方案,可支持快速、廉价的ZigBee节点的构建。此芯片整合了业界领先的2. 4 GHz IEEE 802.15.4/ZigBee RF收发机,以及工业标准的增强型8051MCU的卓越性能,该系统还包括了8 KB 的RAM,大容量闪存,并且集成了 AES安全协处理器,以及许多其他强大特性[1]。硬件设计的工作主要分为两部分:温度控制中心(即协调器)硬件设计以及温度监测终端硬件设计。硬件系统设计完毕后的运行状态如图2所示,其中上方的两个节点为传感器终端节点,下方的一个节点为协调器节点。
图2 硬件系统
协调器节点的硬件设计主要是基于TI公司开发的ZigBee开发套件,利用 RS232串口实现协调器与上位机之间的通信。如图2中所示,协调器利用RS232串口线与电脑相连接,将接收到的信息传递给此上位机[2]。
温度监测终端硬件设计的主要工作是在原开发套件的基础上增加了外接电路的设计,集成了温度传感器、信号LED灯等外置原件。
此硬件系统具有优良的无线接收灵敏度和强大的抗干扰性能,功能较为完善。
3.1ZigBee协议
ZigBee是基于IEEE802.15.4标准的低功耗局域网协议。根据国际标准规定,ZigBee技术是一种短距离、低功耗的无线通信技术。这一名称(又称紫蜂协议)来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息,也就是说蜜蜂依靠这样的方式构成了群体中的通信网络[3]。其特点是近距离、低复杂度、自组织、低功耗、低数据速率。主要适合用于自动控制和远程控制领域,可以嵌入各种设备。简而言之,ZigBee就是一种低成本、低功耗的近距离无线组网通信技术。
3.2ZigBee协议栈
协议定义的是一系列的通信标准,通信双方需要共同按照这一标准进行正常的数据收发,而协议栈就是协议的具体实现形式,通俗的理解为用代码实现的函数库,以便于开发人员调用。ZigBee协议体系结构共有 5部分组成:物理层、MAC层、网络层、安全层和应用技术层。而ZigBee协议将其分为了两部分,其中IEEE 802. 15.4定义了物理层和 MAC层技术规范,ZigBee联盟定义了网络层、安全层和应用技术层规范。ZigBee协议栈就是将各个层定义的协议栈都集合在一起,以函数的形式实现,并给用户提供一些应用层API,供用户使用。ZigBee协议栈结构如图 3所示[4]。
图3 ZigBee协议栈结构
3.3ZigBee模块软件设计
软件设计主要分为 ZigBee模块软件设计与温度监测中心上位机软件设计。
ZigBee模块软件设计基于 IAR开发平台以及 Zig-Bee2007协议栈,并使用 C语言进行开发[5]。其中,终端节点软件设计主要实现了温度信息的采集并遵从Zig-Bee协议发送给协调器,协调器节点的软件设计实现了对终端节点传递信息的接收,并定义了与上位机间的通信协议,实现了与上位机之间的通信[6]。
图 4展示了协调器节点与终端节点的运行流程[7]。协调器与终端节点都需要在运行开始时进行初始化操作,此后由协调器建立网络,并等待终端节点的加入,终端节点则在检测到网络后加入网络。入网成功后终端节点就可以通过基于 ZigBee协议的无线传感网络进行信息的传递并由协调器负责接收,再将收到的信息通过串口传递给上位机[8]。
图4 ZigBee模块运行流程
3.4上位机软件设计
上位机软件设计基于 Microsoft Visual Studio 2010开发平台并使用C#进行开发,本设计提供了人机交互界面[9],使用 RS232串口实现协调器与上位机的通信,并遵循与协调器之间的通信协议,成功接收来自协调器的信息,实现对温度的监测。通信协议的协议帧格式如图5所示[10]。
图5 通信协议的协议帧格式
P1为帧开始,表征新的一帧的开始,P2为节点编号,用以区分不同的终端节点,P3为帧长度,P4为所测得的温度数据,P5为命令字,用来区分帧的功能,P6为校验码,用来保证数据的完整性与准确性[11]。
上位机软件设计流程图如图6所示。界面效果如图7所示。
为了验证此温度监测系统的有效性,利用模拟粮仓进行了实验。实验的测温系统由15个终端节点与一个协调器节点组成。实验中将终端节点分置于模拟粮仓内预定位置,协调器置于模拟粮仓外,并同时用温度计测量模拟粮仓内的温度。为了验证此温度监测系统测量温度的准确性,分别在7点30分、13点与18点进行测试,测试所得结果如表1所示。
图6 上位机软件设计流程图
图7 上位机设计效果图
表1 各时间点测试温度 (单位:℃)
通过最终所获得的温度平均误差可以看出,此无线测温系统所测温度精确度较高。由此可见,基于ZigBee协议所设计的温度监测系统是有效的,充分发挥了ZigBee的优势,具有一定的实用性,可以用于粮仓内的温度监测[12]。
[1]金纯,罗祖秋,罗凤,等.ZigBee技术基础及案例分析[M].北京:国防工业出版社,2008.
[2]何文德,杨凤年,刘光灿.无线传感器网络在文物保护中的应用[J].安防科技,2007(7):25-27.
[3]吴光荣,章剑雄.基于Zigbee技术的无线智能照明系统[J].现代电子技术,2008,31(14):67-69.
[4]王锐华,于全.浅析 ZigBee技术[J].电视技术,2004(6):33-35.
[5]李皓.基于 ZigBee的无线网络技术及应用[J].信息技术,2008,32(1):12-14.
[6]蒋挺,赵成林.紫蜂技术及其应用(IEEE802.15.4)[M].北京:北京邮电大学出版社,2006.
[7]史作锋.基于 ZigBee技术在无线传感器网络中的研究与应用[D].武汉:武汉科技大学,2009.
[8]李文仲,段朝玉.ZigBee2006无线网络与无线定位实战[M].北京:北京航空航天大学出版社,2008.
[9]夏普.Visual C#2005从入门到精通[M].周靖,译.北京:清华大学出版社,2006.
[10]罗宾逊,内格尔.C#高级编程(第 3版)[M].李敏波,译.北京:清华大学出版社,2008.
[11]瞿雷.ZigBee技术及应用[M].北京:高等教育出版社,2006.
[12]许勇.基于 ZigBee的 Mesh网络的研究[D].合肥:中国科学技术大学,2011.
Research and design of intelligent granary temperature measurement system based on ZigBee
Fan Na
(College of Telecommunications and Information Engineering,Nanjing University of Posts and Telecommunications,Nanjing 210000,China)
The accurate measurement of the granary temperature is the key to ensure food quality.This paper introduces a temperature measurement system of intelligent granary based on ZigBee protocol.This system is based on CC2530 chip to complete the hardware design of the coordinator node and the sensor node.Then,based on the ZigBee2007 protocol stack and IAR development platform,the software design is completed.Finally the system realizes the wireless granary temperature measuring function.The test results show that the designed temperature measurement system based on ZigBee protocol can measure the temperature accurately.It is adaptive to the environment and practical.
ZigBee;wireless temperature measurement;CC2530
TP274
A
1674-7720(2015)05-0070-03
国家自然科学基金(61271234)
(2014-11-12)
樊娜(1989-),女,硕士研究生,主要研究方向:无线通信技术。