任 斌,郑国勋,张哲宁
(长春工程学院计算机技术与工程学院,长春130012)
我国北方城市随着冬季临近,为了防御严寒,无论居民家还是企事业单位都会开始供暖。由于供暖面积广,许多城市都会采取集中供暖的方式运行。这种供暖方式让企业对于热用户的温度数据不能及时感知,盲目供暖,使得热用户室内温度达不到标准需求,同时对于供热企业自身而言,由于没有参照数据,不能很好地发挥能源利用率,降低供暖成本。如采取人工方式,费时、费力且不准确、不及时;因此,开发室内供暖温度无线采集平台对于企业来说,显得十分必要。
温度无线采集平台主要由硬件平台、通信协议、上位机数据采集软件系统构成。本文根据节点传输数据特点,定义上位机采集软件通过串口采集数据的格式、数据校验方法、数据验证顺序,并由与上位机软件系统实现。
无线传感器网络(Wireless Sensor Network,简称WSN)[1]是大量的传感器节点以自组织和多跳的方式构成的无线网络系统,该系统能感知、采集、处理和传输所监测区域的相关信息,具有广阔的应用前景,比如智能农业、智能家居、智能交通与医疗监控等领域。整个无线传感器使用汇聚点收集网络中的数据,形成以汇聚点为根节点的传输树。
节点传输数据使用Zigbee协议栈[2],它是Zigbee联盟规定的一种短距离、低功耗的无线通信技术。在Zigbee协议标准中,自身没有定义物理层和MAC层,而直接采用IEEE802.15.4的定义,因此,Zigbee联盟主要完成网络层、应用层、网络安全的定义。高层协议发起请求原语,请求底层提供某项服务,与之相对应的是底层对高层的请求作出确认;同时,底层协议可以通过指示原语指示高层处理事件,对底层的指示高层作出响应。
由于硬件系统采用亿道电子设备,所以数据采集格式及流程定义应符合底层定义[3]。PC机与网关板之间通信采用大端模式,数据校验采用累加算法,所传数据均采用十六进制格式。具体内容如下。
2.1.1 串口数据格式定义
图1 串口数据格式定义
数据帧格式由10个字段构成,具体内容如下:
帧头(Com_Head):表示该帧属于控制帧还是数据帧,如属于控制帧,又分为主机向网关发送的应答帧和网关向主机发送的应答帧,如属于数据桢,则表示传输的是传感器具体数据。
标志(IC_Type):用于字段确认,如有需要可自行修改。
数据长度(Data_Len):表示该帧数据区域的长度。
传感器类型(Sensor_Type):表示该数据帧产生的传感器种类,常见的传感器如温度、湿度、红外、血压、火焰、流量等,本平台采集的传感器种类为温度传感器。
网关设备地址(Src_Addr):表示传感器数据传到终端的最后设备即网关的地址。
初始节点地址(Ori_Addr):表示初始产生数据帧的节点地址。
帧序列号(Seq_No):表示传感器数据帧的序列号。
跳数(Hop_Cnt):表示传感器数据到达终端时经过的设备数。
数据区域(Data_Buf):表示传感器采集的具体数据内容。
帧校验(Fcs):用于帧校验,检测数据帧是否有错误。
2.1.2 数据采集流程
数据采集流程详见图2。
软件系统功能模块由5部分构成,如图3所示。
2.2.1 串口功能模块
对串口进行初始化设置,包括串口号码、波特率、停止位、校验位、数据位,以及可以打开串口和关闭串口。
2.2.2 地图管理功能模块
点击加载地图按钮可以加载地图到数据库进行存储,并将对应的房间号码与传感器节点进行管理,便于查看。如图4所示。
2.2.3 传感器节点管理与数据监控功能模块
传感器节点管理模块主要用于当点击左侧部署地点列表时,右侧显示出对应的地图以及地图上部署的传感器位置,如图5所示。
图5 节点管理界面
数据监控功能模块在监控程序开始运行时,点击左侧传感器列表,可以动态地对数据进行显示,并且将数据汇总进行曲线输出,下方表单会显示所有的数据列表。动态曲线每秒钟刷新1次,可以设置刷新时间,刷新时间要小于传感器间隔时间。动态曲线页面可以存储10个点数据,超过10个数据时,图像向右方移动。如图6所示。
图6 数据监控
2.2.4 历史记录查询功能模块
对历史数据进行查询,并设置打印功能。
通过VC++平台实现相关功能,主要功能模块代码如下[4]。
2.3.1 串口部分
2.3.2 动态曲线绘制部分
2.3.3 地图显示部分
2.3.4 绘制图像
经过实验,数据采集系统可以动态、准确、高效、稳定地采集所需温度数据;同时,由于无线传感节点成本较低,网络搭建方便,具有较强的实用推广价值。
[1]杜晓通.无线传感器网络技术与工程应用[M].北京:机械工业出版社,2010:160-190.
[2]钟永锋.ZigBee无线传感器网络[M].北京:北京邮电大学出版社,2011:12-13.
[3]亿道电子技术有限公司.物联网教学平台实验手册[EB/OL].[2010-05-04].http://www.emdoor.com.cn.
[4]孙鑫.孙鑫作品系列:VC++深入详解[M].北京:人民邮电出版社,2012:120-190.