1 引言
粮食温度检测技术是我国粮食储藏的4 大技术之一,它可以动态监测仓库粮食温度变化情况,为粮食的储藏安全提供了重要保障。由于储备库的特殊环境条件:粮食出入库时,系统部分模块(主要是传感器模块)要拆卸和重新安装;仓库中存在的有毒气体H3P 容易腐蚀电子元器件,粮堆中损坏的传感器不容易更换。而目前应用于粮食储藏的粮情检测系统大多数采用模拟温度传感器、多路模拟开关、A/D 转换器及单片机等组成的导线传输系统。这种温度采集系统需要在仓库内布置大量的测温电缆,安装和拆卸繁杂;同时受到导线电阻和分布电容的影响,测量误差比较大,易受雷击。为此提出了一种基于无线传感器网络的温度检测系统的设计方案,该方案不需要任何固定网络的支持,安装简单方便、系统稳定可靠、可维护性好。
2 无线传感器网络
无线传感器网络是由大量微型、智能、低功耗传感器以某种网络协议构成的无线网络,其目的是协作地感知、采集和处理网络覆盖的地理区域中感知对象的信息,并发布给观察者。它综合了传感器技术、嵌入式计算技术、分布式信息处理技术以及无线通信技术,正成为一个新兴的技术领域,被认为是21世纪最重要的技术之一。
无线传感器网络节点具有无线通信、数据采集和处理、协同合作等功能,可以随机或者特定地布置在目标环境中,能够获取周围环境的信息并且相互协同工作完成特定任务。传感器节点主要由电源管理模块、传感器、微处理器、存储器以及射频模块等功能模块构成。电源管理模块为其他功能单元提供正常工作所必需的能源。传感器用于感知、获取外界的信息,并通过信号处理电路将其转换为数字信号。微处理器部件负责协调节点各部分的工作,如对传感器获取的信息进行必要的处理、保存,控制传感器和电源的工作模式等。射频模块负责与其他传感器或观察者的通信。
3 系统设计方案
整个系统由若干无线温度传感器节点、测控主机和PC 机组成,其中无线温度传感器节点按一定布点规则分布于仓库内,执行温度数据采集、预处理和传输等工作。测控主机由无线收发模块nRF9E5及报警装置组成,通过外接MAX232 转换电路,和PC 机进行串口通信。测控主机通过无线通讯方式与各个节点进行数据传输、存储及命令的传送。PC 机给测控主机发送功能命令并对采集到每个节点温度数据进行智能分析、显示和打印。限于篇幅,本文主要介绍无线温度传感器节点的硬件结构和软件设计方法。
3.1 无线温度传感器节点的设计
温度传感器节点是的网络的基本单元,响应测控主机的指令并发送数据。由于传感器节点通常采用电池供电,电池的容量一般不是很大。并且在使用过程中,不能给电池充电或更换电池,一旦电源耗尽,这个节点就失去了作用。因此在传感器网络节点的设计过程中,任何技术和协议的使用都要以节能为前提。在硬件设计方面,要尽量采用低功耗器件,在没有通信任务的时候,切断射频部分电源;在软件设计方面,各层通信协议都应该以节能为中心。
3.1.1 射频SOCnRF9E5
nRF9E5 是挪威Nordic 公司去年推出的系统级RF 芯片。该芯片采用+3VDC 供电,面积为5mm×5mm,共有32 个外部引脚,包括UART 和SPI 等功能。内部集成了nRF9E5 射频模块、8051 微控制器及A/D 转换模块,具有433/868/915MHz 三波段载波频率。采用GFSK 调制,抗干扰能力强;支持多点通讯,数据传输速率高达0.1Mbps。具有特有的ShockBurst 信号发射模式和发射信号载波监测功能,可有效降低功耗电流、避免数据冲突。内部寄存器为用户测控主机提供了基础的通讯协议,便于用户扩展,缩短了开发周期,因此很适用于无线数据传输系统的设计。
nRF9E5 使用SPI 接口进行单片机与无线模块间的数据传输。这部分在nRF9E5 片内的8051内核与nRF905 射频收发器之间完成。nRF9E5 的收发器有三种工作方式,ShockBurst 接收(RX)方式,ShockBurst 发送(TX)方式和空闲方式。nRF9E5 收发器的工作方式由特殊功能寄存器TRX_CE 和TX_EN 决定,ShockBurst 接收方式下,当收到一个有效地址的射频数据包时,地址匹配寄存器位(AM)和数据准备好寄存器位(DR)通知片内MCU 把数据读出。在ShockBurst 发送方式下,nRF905 自动给要发送的数据加上前缀和CRC 校验。当数据发送完后,数据准备好寄存器位(DR)会通知MCU 数据已经处理完毕。当系统没有发送和接收任务时,其进入空闲方式。nRF905 在空闲方式下,
一旦有任务要处理时,其能够在很短的时间内就进入ShockBurst 接收方式和ShockBurst 发送方式。空闲方式下,晶体振荡器依然工作,配置字中的内容不至于丢失。系统通讯时,各模块处于正常接收状态:收发使能位TRX_CE=1 且方式选择位TX_EN=0。在运行过程中,可由用户编程修改TX_EN=1 使各其工作于发射状态。
3.1.2 数字温度字传感器
DS18B20 是Dallas 公司开发的微型化、低功耗的可编程单总线数字温度传感器,可直接将测得温度值转换为数字信号输出。并具有以下主要功能特点:(1)独有的单总线通信技术,只需一根信号线与单片机连接即可实现双向通信。(2)电源电压范围3.3-5V,可通过信号线寄生供电或由外电源直接供电。(3)测温范围为-55-125℃,在-10-85℃内可保持±0.5℃的精确度。(4)通过编程可实现9-12 位的数字读数方式,即在温度转化时可选择0.5℃、0.25℃、0.125℃、0.0625℃四种不同的分辨率。(5)可设定非易失性温度报警上下限值TH 和TL,通过报警搜索命令可获取报警信息。
DS18B20 的工作遵循严格的单总线协议。即先初始化,然后发送ROM 命令,最后发送功能命令。初始化包括主机发出复位脉冲(通过将总线拉低至少480μs 来实现)随即主机等待DS18B20 发回的存在脉冲。DS18B20 则从检测到复位脉冲的上升沿开始等待15-16μs 后通过将单总线拉低60-240μs 实现存在脉冲的发送。DS18B20 的读写操作是通过读写时序来实现的。
3.2 软件设计
本系统是一个简单的点对多点通信,所以通信协议分为三层即可。第一层为物理层,由nRF9E5 模块硬件实现;第二层为数据链路层;第三层为应用层。
数据链路层的功能是提供可靠的无线数据传输。发送数据时,将应用层发来的比较长的数据帧拆分为短的数据帧,并加上包头和校验和,重新打包后发送出去。接收数据时,将接收到的数据解包并重新组合成完整的长数据,移交给应用层。数据链路层的数据帧格式为:每帧包括两个字节的起始帧0xFFH和0xAAH,几个字节的地址(字节大小由系统节点数量决定),一个字节的帧类型,一个字节的有效数据长度,两个字节的数据和两个字节的校验和,一个字节的帧停止位0x00H。
由于在整个系统中无线通信的频率采用一个频道433.92MHZ 作为通信载波频率,所以整个系统的通信必须采用分时技术将测控主机与多节点之间的通信变成为测控主机与一节点进行点对点通信的多条链路的组合。也就是说测控主机必须采用扫描的方式逐点采集数据。节点则采用中断方式,对主接收器发出的地址信息进行处理,若与本机地址相符则执行命令。首先,由测控主机向系统中某一节点发出温度转换命令包。接着当节点收到主机发来的命令包时启动DS18B20 进行温度转换,然后上传给主机。最后,当主机收到节点的数据包并校验之后,主机将发送一个确认数据包给节点,以确认节点数据包的正确性。如果数据在传输的过程中有数据丢失,主机将要求节点重新发送数据,直到数据全部正确为止。
图3 和图4 分别为主机和节点的程序流程图
4 试验结果
现将按上述方案设计的温度检测系统与某储备库使用的传统检测系统进行了现场对比试验。其中本系统数字温度传感器DS18B20采用11位的数字读数方式,原系统采用MF-53-1型热敏电阻,水银温度计刻度为0.1℃,读数可到0.05℃ 。测量结果如表2所示。
从实际测量数据可以看出,所设计的系统的测量误差较小,主要是由于传感器本身存在误差,网络传输过程中几乎不会引入误差。
5 结论
传感器网络被认为是影响人类未来生活的重要技术之一,这一新兴技术结合了现有的多种先进技术,为人们提供了一种全新的获取信息、处理信息的途径。因此,基于无线传感器网络的粮情检测系统克服了传统系统存在的不足,试验结果表明系统具有良好的工作稳定性和测量的准确性,系统抗干扰能力强,避免了雷击;网络节点体积小,安装和拆卸方便灵活,而且容易通过其表面涂上防腐材料以达到抗腐蚀能力,延长器件寿命;节点功能扩展性强,通过增加相关的传感器和转换电路,即可实现粮食湿度和虫害密度的检测。同时由于传感器网络本身的特点,使得它与现有的传统网络技术之间存在较大的区别,给人们提出了很多新的挑战,特别是传感器网络节点的能量供给及成本问题,限制了它的应用范围。随着科技的进步和成本的降低,无线传感器网络技术在粮食储藏中的应用将产生重大的经济和社会效益。