基于ZigBee 的粮仓无线测温系统的设计.doc_第1页
基于ZigBee 的粮仓无线测温系统的设计.doc_第2页
基于ZigBee 的粮仓无线测温系统的设计.doc_第3页
基于ZigBee 的粮仓无线测温系统的设计.doc_第4页
基于ZigBee 的粮仓无线测温系统的设计.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于ZigBee的粮仓无线测温系统的设计金晓龙(广东女子职业技术学院 应用设计系, 广东 广州 511450)摘要:采用ZigBee技术,提出一种结合ATmega128L单片机、CC2420射频芯片和VB.NET技术实现粮仓无线测温系统的硬件体系和软件实现方法。该系统能实时检测粮仓温度、无线传输数据、动态显示及报警,能实现各种粮仓管理功能,与传统的有线粮仓测控系统相比,具有性能稳定,易于布设、维护、扩展等优点。关键词:ZigBee;三层结构;CC2420芯片;VB.NET中图分类号:TP273Design of Wireless Measure and Control System in Grain Storage Based on ZigBee Jin Xiaolong(Guangdong Womens Polytechnic College, Application and Design Department, Guangzhou 511450,China)Abstract:Based on ZigBee,a new design of wireless temperature measure and control system combined with ATmega128L,CC2420,VB.NET technology is put forward. The hardware architecture and software realization of the system are presented. The system can measure granary temperature on real time,transmit data by wireless communication, dynamic display and alarm, complete various functions of granary management.Compared with traditional wire grain inspection system, this system is of stable performance,is easy to layout, maintenance, expansion and so on.Key words:ZigBee;three-tier structure;CC2420 chip;VB.NET0 引言粮仓测温系统采用电子、计算机、网络技术来实现对粮库温度的实时检测,防止由于温度超标引起粮食发热、霉变,若出现超标,则及时报警、定位超标位置、开启通风设备降温。粮仓测温系统还可以实现粮库管理功能,合理调整粮食的收购、储藏、调运等各项指标,提高粮库的经济效益。目前粮仓测温系统多采用有线通信和外部电源供电的结构,系统存在着布设困难、故障率高、难以维护等缺陷,经常会发生由缆线引入雷击、粮食倒仓时机械损坏线路、鼠害损坏线路、熏蒸损坏连接节点等事件。采用无线通信技术和电池供电可以解决上述问题,通过无线方式可以免去数据线、电源线的布置,使系统具有更好稳定性、灵活性,易于维护及扩展。1 系统整体结构1#仓温度检测粮仓内部路由节点温度传感器第三层网络远程计算机第一层机房上位机打印机通信机仓外温度感器粮仓整体外通风控制测温分机1#第二层测温分机N#测温下位机1#图1 系统结构框图测温下位机N#协调节点终端节点采用三层结构,如图1。第一层是上位机,通过通信机与各粮仓分机无线通信,寻呼各分机,接收并处理来自各分机的数据,若数据不满足协议要求,丢弃并重新接收,动态显示处理后的实时数据,若某位置温度超标则及时报警、突显超标位置,另外,上位机还可以实现粮仓的各种管理功能,打印、备份数据或利用网络传到远程计算机。第二层是分机,每个粮仓设置一台分机,每台分机通过无线通信与仓内的若干下位机相连,各下位机将采集的仓内、仓外数据发送给分机,分机对数据做初步处理,若出现超标,开启通风设备降温,最后,将处理完数据打包发送给上位机。第三层是下位机,一个仓内可以有若干个下位机,下位机负责采集温度数据并打包无线上传给分机,每个下位机通过电缆连接若干测温传感器,其测温传感器埋于粮食中、置于仓内或仓外,用来检测粮食内部温度、仓内及仓外环境温度。上位机程序采用VB.NET编写,负责整个系统环境设置、接收并检验来自主机的数据、完成数据与温度转换、实现动态显示及报警,以及完成存储、打印、粮仓各种管理功能。上位机与通信机之间采用RS232方式通信,通信机与各主机、各主机与对应仓内下位机之间采用无线通信方式进行数据的交换。主机、下位机采用ATmega128L芯片,无线通信采用CC2420芯片,下位机使用SHT11型温度传感器。2 无线通信及数据采集功能设计ZigBee是一种近距离、低功耗、低成本、低传输速率的无线收发技术,数据链路层和物理层协议符合IEEE 802.15.4技术标准,它广泛运用于工业控制、消费性电子设备、家居智能化控制和医疗设备控制等,目的是为了满足小型廉价设备的无线联网和控制。ZigBee的通信距离通常为10m,可扩大为约300m,可覆盖一定限度的工作范围。无线传感器网络(WSN)是由大量部署在监测区域内的微型传感器节点组成,通过无线通信方式形成多跳自组织的网络系统,能够协同地感知、采集和处理网络覆盖地理区域中对象的信息,并传送给观察者。一个无线传感器网络由一个协调器节点以及多个路由节点和多个终端节点组成。协调器节点是整个网络的主控节点,它负责发起建立新的网络、设定网络参数、管理网络中的节点以及存储网络中节点信息等,网络形成后也可以执行路由功能。路由节点可以参与路由发现、消息转发、通过连接别的节点来扩展网络的覆盖范围等。终端节点通过协调节点或者路由节点连接到网络,但不允许其它任何节点通过它加入网络,主要负责底层数据的采集及传输。在粮库,相邻粮仓的距离不远,而粮仓相距的最远距离可能较远。若设一个中心机房,从中心机房到各粮仓的距离不等,有远有近。粮库的规模以后可能扩大,粮仓距离中心机房的最远距离会增加。粮库的这些特点:相邻分布、低成本、一个中心、易扩充等适合采用无线传感器网络技术,对应图1,通信机采用协调器节点模式、主机采用路由节点模式、下位机采用终端节点模式。 ZigBee网络最初是由协调器节点发动并建立。协调器节点首先进行信道扫描,选择一个空闲的或相对适合的无线信道,建立一个ZigBee无线局域网,并发送网络信标,之后接收其它节点发送过来的申请加入网络的请求,判断请求的无线局域网络ID是否与自身的相同,若相同则将该节点加入到无线局域网络之中,并且为每一个经过批准加入此网络的节点都分配一个在此网络内唯一的16位短地址,发送节点以后向接收节点发送数据都将此短地址一同发送,以便接收节点能辨别数据的来源。一个节点加入网络后,可以从其父节点得到自己的短地址、ZigBee网络地址以及规定的拓扑参数。父节点可以是协调器节点或路由节点,子节点可以是路由节点或终端节点。一个节点要离开网络,只须向其父节点提出请求即可。一个节点若成功地接收一个子节点,或者其子节点成功脱离网络,都必须向协调器节点汇报,协调器节点可以实时掌握网络的所有节点信息。协调器节点流程图如图2所示,路由节点流程图如图3所示,终端节点流程图如图4所示。图2 协调器节点流程图YNN进入无线监控状态mega128L开始 空中有信息?建立一个新网络420N处理数据并传送给上位机接收到节点的数据?状态准备好?Y给该节点分配网络号有节点申请加入网络?状态准备好?Y图3 路由节点流程图N目标地址是否为邻居?的信息包?加入网络?状态准备好?根据路由算法请求其它节点转发建立一个新网络420NY接收到信息包开始 处理数据交到上一层是否给自己的信息包?加入网络?状态准备好?Y直接发送mega128L结束开始 图4 终端节点流程图YN延迟直到数据接收完毕N接收到信息包开始 处理数据包发送到上一层交到上一层是否给自己的信息包?加入网络?状态准备好?Y接收数据是否完毕?否为邻居?的信息包?加入网络?状态准备好?结束开始 考虑低功耗、低成本,采用ATMEL公司的低功耗CMOS工艺8位微控制器ATmega128L,在无数据处理时,令控制处理器进入睡眠模式,节省能耗,当有数据需要处理器处理时,由唤醒源将其唤醒,进入工作状态,一旦数据处理完毕,再次进入睡眠模式。无线通信采用Chipcon公司的射频芯片CC2420,其休眠模式和转换到主动模式的超短时间特性,满足无线传感器网络对低成本、低功耗的要求。数据采集采用瑞士Sensirion公司的SHT11型数字式温湿度传感器,该传感器采用单片集成设计,具有体积小、功耗低的特点。图5 CC2420与ATmega128L的连接SSIO21YIO1YINTO1YICPNMOSIYMISONSCLKNATmega128LCSnCCAIO21YFIFOIO1YFIFOPNTO1YSFDICPNSISCLKNSOCC2420CC2420有4个SPI通信接口:CSn、SI、SO、SCLK,对应ATmega128L的4个SPI通信接口:SS、MOSI、MISO、SCLK。通过这4条线,处理器可以对CC2420进行写入或读取配置信息,也可以收发数据。由于CC2420只有从机模式,因此处理器只能采用主机模式。如图5所示,由处理器的SCLK引脚提供时钟频率;SS引脚控制数据收发的同步性,在接收和发送时,都要保证CSn为低电平;MOSI与MISO分别是数据输出和输入的引脚。SHT11的SCK、DATA分别与微处理器ATmega128L的PC0、PC1相连,SHT11根据SCK、DATA不同高低电平时序完成相应功能。3 上位机功能设计系统管理:包含用户管理、仓号管理、环境设置等二级子菜单。用户管理用于设置用户名及密码;仓号管理用来设置系统粮仓编号;环境设置用来设置报警温度上限、备份时间间隔、备份起始时间、数据与温度转换表,各粮仓情况设置:负责人、管理员、操作员、仓号 、品种、等级、性质、水份、杂质、容重 、数量 、入库时间。巡检控制:包含按仓显示、水平显示、轮回巡检、后台巡检、巡检仓设置等二级子菜单。按仓显示将检测结果按一仓一屏的方式显示,而每一屏由若干个仓截面组成,每一个仓界面由一个下位机负责,按仓显示将显示图形与实际的位置对应,若出现某一位置超限,可以快速找到它的实际位置。水平显示将每仓的检测结果逐行显示,每一行由一个下位机负责,每行又按照不同电缆分为若干组,如35负责检测5条电缆及每条电缆上有3个传感器,则每一行显示5组,每组3个单元,水平显示的优点是数据排列整齐紧凑,稍加分析就可以快速找到对应的实际位置。轮回巡检是按照可巡检仓的设置依次巡检每一个仓,巡检一周后继续循环进行,将每次巡检的结果实时显示出来。后台巡检是指巡检每一个仓,但只显示选择仓的数据,用鼠标点击显示的粮仓图标即可指定选择仓。巡检仓设置是用来指定可参加巡检的仓号。报警设置:开启、关闭报警功能,选择报警音乐。当检测温度超过报警温度上限时,若开启报警功能,则红色突显该检测点、播放报警音乐。查询打印:可以按全部、按仓、按从机查询或打印存储数据。备份恢复:包括当前备份、日期备份、历史恢复。对数据备份时,若输入日期,则备份为输入日期数据,若不输入,则备份为当前日期数据。历史恢复是指可以选择某一备份数据,将系统数据恢复为该历史数据。使用VB.NET编写上位机程序时,处理了以下几个主要问题:(1) 根据实际使用仓情况动态地进行巡检、显示,使用动态控件数组完成该功能。先在窗体上放置一个显示控件,然后在程序处理过程中,根据实际使用个数,使用Redim语句增加显示控件个数。为了灵活处理各种显示情况,设计了检测显示函数,该函数的调用参数为显示窗体、包含显示数据的动态数组。(2) 使用Mscomm控件设计串口通信,通过属性设置端口号、波特率、奇偶校验、数据位和停止位、缓冲区大小等,使用Output属性向缓冲区发送数据,当接收到数据或出现故障时,触发OnComm事件。使用定时器每隔一段时间发出呼叫,在OnComm事件中根据CommEvent的值来判断是正确接收还是出现故障,对接收正确的数据进行检验、拆分、转换等处理。(3) 在中文Windows使用的是双字节字符集(DBCS)系统,若要向串口发送一个字节的字符,需要使用字节数组,如: Dim aa(255) As Byte For i = 0 To 255 aa(i) = i Next iMSComm1.Output = aa (4) 对于粮仓打印功能的设计,考虑粮仓报表一般表格格式不变而只是填充的内容变化,所以采用VB调用Excel报表输出的方法,可以充分利用Excel优秀的报表生成功能,同时将打印程序设计主要集中在数据的处理上,使打印设计更加简洁、灵活。4 运行数据分析对上位机的串口通信,使用SerialTrace软件进行调试,运行数据如图6所示(第一组为向串口发送的呼叫数据,第二组为从串口接收的检测数据): 图6 运行数据数据分析:由检测协议(本文省略)分析可知,第一组数据为上位机发出的7个字节的呼叫,呼叫的分机号为01,信息包长度为02,校验位81。第二组为01号分机应答上位机呼叫而返回的检测数据,FA为分隔位,FA之间为一个下位机检测的数据,FA位之后的第五位表示传感类型,传感位之后为各个检测点的数据,该数据经过校正、转换为温度数据。5 结束语本文提出了一个基

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论