




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于ZIGBEE技术的家居环境监测系统的设计与实现摘要环境是人们赖以生存的必要条件,随着现代化信息技术的迅猛发展和提高,人们对自己的生活环境有了更高的要求,希望自己的生活环境健康、舒适。近些年,特别是人类在信息技术上的快速发展,使得各种无线通信技术有了前所未有的突破,无线技术在智能家居上的应用将越来越广泛。因此,本文利用ZIGBEE技术设计出了这种无线家居环境监测系统。该系统中,传感器节点(即终端节点)可以选择温度、湿度、亮度等传感器,并且可以根据需求添加或减少传感器节点。所以本文无线网络终端模块选用的CC2530芯片为平台,以实现信息数据的接收与发送。此芯片内置8051内核的单片机内核,并有一定的内存空间,故只要加上些少许外围电路就可以实现功能,无需再加单片机。在数据接收端(即协调器节点)收到的数据处理传送到PC机上显示。为了让用户方便监测数据,本文在PC机上设计了显示界面,让人们更加方便操作及监测数据。本系统运行可靠,能正确获取环境数据,实现实时监测。关键词ZIGBEE无线传感器网络环境监测智能家居DESIGNANDREALIZATIONOFHOUSEHOLDENVIRONMENTMONITORINGSYSTEMBASEDONZIGBEETECHNOLOGYABSTRACTENVIRONMENTISANECESSARYCONDITIONFORSURVIVALWITHTHERAPIDDEVELOPMENTANDIMPROVEMENTOFMODERNINFORMATIONTECHNOLOGY,PEOPLEHAVEHIGHERREQUIREMENTSFORTHEIRLIVINGENVIRONMENTTHEYHOPETHEYLIVEHEALTHILYANDCOMFORTABLYDURINGRECENTYEARS,ESPECIALLYTHEQUICKDEVELOPMENTOFINFORMATIONTECHNOLOGYWHICHENABLESALLKINDSOFWIRELESSCOMMUNICATIONTECHNOLOGYTOIMPROVEUNPRECEDENTEDLYSO,THETHESISUTILIZESZIGBEETECHNOLOGYTOEXPLOITANDDESIGNTHEWIRELESSHOMEENVIRONMENTALMONITORINGSYSTEMINTHESYSTEM,THESENSORNODEASWELLASTERMINALNODECANCHOOSETEMPERATURE,HUMIDITY,BRIGHTNESSETCTHEREFORE,THEWIRELESSNETWORKTERMINALMODULEOFTHETHESISCHOOSETHECC2530CHIPASTHEPLATFORMFORREALIZINGRECEIVINGANDSENDINGOFTHEINFORMATIONDATATHECHIPHASASINGLECHIPWITH8051COREANDHASCERTAINMEMORYSPACETHUS,ITCANREALIZEITSFUNCTIONBYADDINGALITTLEPERIPHERALCIRCUITWITHOUTEXTRASINGLECHIPTHERECEIVEDDATAPROCESSINGINTHEDATARECEIVINGTERMINALTHATISCOORDINATORNODESENDTOPCFORPEOPLESREALTIMEMONITORINGTHETHESISDESIGNEDTHEDISPLAYINTERFACEINPCFORPEOPLESOPERATIONANDDATAMONITORINGCONVENIENTLYTHESYSTEMWORKSRELIABLYWHICHCANOBTAINCORRECTENVIRONMENTALDATAANDREALIZEREALTIMEMONITORINGKEYWORDSZIGBEEWIRELESSSENSORNETWORKSENVIRONMENTALMONITORINGSMARTHOME目录前言1第1章绪论211本文的研究背景212智能家居环境监测系统的特点213本文主要研究内容314开发工具及开发环境的介绍3141系统软件开发环境介绍4142上位机软件开发环境介绍5第2章ZIGBEE技术的概述721ZIGBEE技术的概念722ZIGBEE技术的特点823ZIGBEE网络设备组成和网络结构824ZIGBEE的协议分析10241网络层(NWK)10242应用层(APP)1125本章小结12第3章系统的总体设计1331系统结构1332系统功能定义1333系统设计要求1534本章小结15第4章系统的硬件设计1641ZIGBEE硬件选型1642节点硬件设计1843本章小结21第5章系统的软件设计及实现2251软件部分总体介绍22511软件设计整体流程22512协调器的自动组网流程2252协调器节点软件实现2553传感器节点软件设计2754本章小结28第6章上位机软件实现及测试2961上位机软件实现2962软件测试3063本章小结32结束语33参考文献34致谢35前言自人类诞生以来,人们一直都在努力改善和提高着自己的生活和居住条件。随着工业革命和信息技术革命的成功,进入21世纪后,人类的各种技术包括通信技术、计算机网络、控制理论、互联网等都有了很大的发展,另外,经济的发展也使我们都希望居住在一个舒适的家居环境中,只有这样我们的生活才会更好,身体才会健康。由于人们又了这种想法,由此智能家居SMARTHOME1系统也就越来越多的被人们所重视了。研究人员希望能通过这种新的技术将家居中各种智能化的设备、家用电器和家庭安防设备等整合一个智能化的系统上进行资源共享、分析、控制和管理这些设备,控制这些设备来对家居中的环境参数符合人们舒适居住使用的要求,营造一个良好的环境2,从而可使用户能够居住在一个更高要求的环境中。本文研究设计了一种智能家居环境监测子系统,实现对家庭环境的实时监测,实时为用户提供可靠并且全面的环境信息。智能家居系统中一个非常重要的部分就是本文所研究的环境监测子系统。在这个系统中,人们可以获得实时的居住环境信息,如温度和湿度、各种有害气体的浓度、光照强度、火灾信息等。同时,此系统中传感器所得到的环境参数可以为其它家居设备做决策参考,最终由智能家居系统实现对家庭环境的智能调节,比如,当测量到的光照强度高于用户设定的一定值的时候,系统就将启动自动窗帘系统的马达,自动将窗帘关到一定程度,以降低室内的光强度,适合居住;又如,当温度值偏低时,系统就将启动空调设备进行工作,来增高室内温度。因此,智能家居系统为用户提供了安全、舒适、便捷生活的环境,从而使环境监测子系统成为了智能家居系统的一个非常重要关键部分与基本环节,能否拥有一个好的智能家居系统的关键在于能否设计出好环境监测子系统,这对改善人们生活环境的舒适度具有非常重要的意义。第1章绪论11本文的研究背景随着计算机软硬件技术、网络技术和工业综合自动化系统整合水平的不断发展,对监控数据传输的实时性、数据接口的开放性以及数据链接的安全性的要求越来越高,有线控制网络的局限性也越来越突出,无线的优势也越来越明显。其中ZIGBEE短程无线网技术以其数据传输安全可靠、组网简易灵活、设备成本低、电池寿命长等优势,在工业控制领域中展现了深厚的发展潜力2。将设备数据采集之后再通过无线ZIGBEE网络进行传输是ZIGBEE技术在工业现场环境中的一种应用,这种新兴的技术必将给工厂现代化注入新的活力。传统的工业数据采集与控制系统,其数据传输一般以工业控制总线作为介质,以致大都局限于本地的近距离范围之内应用。随着国民经济发展,企业及机构的管理规模不断扩大,其需要管理与控制的对象更趋多样性,甚至具有流动性,分布的范围也涉及到不同的地域。为了对这些分散的对象进行有效的集中管理,对远程及移动数据采集与控制的需求也就日益迫切34。ZIGBEE技术填补了低成本、低功耗和低速率无线通信市场的空白,其使用的便捷性是该技术成功的关键,它适用于短距离小范围的基于无线通信的控制领域,必将在工业自动化等领域得到广泛的应用5。数据采集技术已经相对成熟,将它重新构建于ZIGBEE网络平台之上,将成熟技术的稳定性和新技术的便捷性充分结合起来,这种结合对于工业现场十分必要。减少了在某些场所有线网络布线以及工人人工采集数据的不便,同时可以方便的于各种传感器搭配用于不同的场合6。12智能家居环境监测系统的特点无线环境监测系统拥有全面、可靠的环境信息采集分析能力。为了实现环境信息监测的精确性、全面性并且方便使用,本文的环境监测系统应具有以下各种特点1多对象监测环境监测系统需要检测多种环境信息,如温度、湿度、有害气体浓度、光照强度等。这样才能为用户提供全面的环境信息参考。2多点监测需要对同一环境参数在不同地点和不同时间分别进行测量,这是因为环境中各种环境信息不同的时间和空间上分布不具有均匀性,由此实现监测的全面性和高精度性,甚至有时需要对同一环境参数在多点进行测量。3系统灵活当有新的环境参数被要求测量时,系统的可扩展性要求灵活,方便增加节点,以降低成本。13本文主要研究内容随着我国经济和科技的迅猛发展,人们的生活水准越来提高,日常家居的环境更受到了人们的关注。近年来随着家庭装修时工业板材及其他有毒气体释放源的使用,室内的环境不容乐观。这就要求有各种有害气体监测功能的家居环境监测系统介入,为我们营造一个安全健康的家居环境。此课题旨在设计出一款能够快速、实时、准确连续地测出空气中温湿度、一氧化碳、光照强度等的环境监测系统,使用基于ZIGBEE短距无线通讯技术,环境信息采集模块与显示终端实现无线通信,省去了传统布线的麻烦。根据以上介绍,本文的主要研究如下1ZIGBEE协议的介绍。主要介绍了ZIGBEE协议中各个部分的组成和数据结构,并对各层中的重点内容进行了详细的分析;2本文以无线传感网络为基础,以ZIGBEE技术纽带,详细设计出的家居环境监测系统中的两种节点协调器节点(控制中心)和传感器节点。在协调器节点中,本文实现了电源、串口通信、PCB天线等主要电路的设计;而在传感器节点中,由于其与协调器类似,故仅针对不同的环境信息,设计出了不同的传感模块;3本论文还设计了串口调试操作界面,可以方便用户的调试和使用,由此用户就可以实时的了解到家庭中个中环境信息的参数。14开发工具及开发环境的介绍141系统软件开发环境介绍IAREMBEDDEDWORKBENCH简称EW的C/C交叉编译器和调试器是目前为止是业界较易使用和较完整的的专业嵌入式应用开发工具。EW对不同的微处理器提供了统一的直观用户界面。EW今天已经可以支持35种以上的8位/16位/32位的各种微处理器结构。EW包括嵌入式C/C优化编译器,编辑器,连接定位器,汇编器,库管理员,CSPY调试器中和项目管理器。使用IAR的编译器可以得到较紧凑简介的代码,从而节省硬件资源,最终得以最大限度地降低产品的成本,从而以提高产品的竞争力。EW8051目前是IAR公司发展较快的产品,EW8051已经发展到了8系列版本,并且在同类产品中具有明显价格优势。其编译器可以对一些SOC芯片进行专门的优化如ATMEL,TI,ST,PHILIPS。除了EWMCS51标准版外,IAR公司还专门为ARM、MP430等微处理器开发出专门的版本,方便了不同客户的需求。IARSYSTEM是嵌入式领域唯一能够提供这种解决方案的公司。EW支持35种以上的8位/16位/32位的微处理器结构。它配合TI公司的仿真器可以直接将程序下载到CC2530中7。IAREMBEDDEDWORKBENCH集成的编译器主要产品特征完全兼容标准C语言。内建对应芯片的程序速度和大小优化器。高效PROMABLE代码。目标特性扩充。瓶颈性能分析。高效浮点支持。便捷的中断处理和模拟。工程中相对路径支持。版本控制和扩展工具支持良好。内存模式选择。本文使用的是IAREW810的版本的软件,其与WINDOWSXP系统的兼容性很好,在国内研究CC2X30系列芯片的人应用此软件较多。图11为IAREMBEDDEDWORKBENCH810的软件界面。图11IAR软件界面142上位机软件开发环境介绍QT是一个跨平台的C图形用户界面库,有挪威TROLLTECH公司开发,目前包括QT/X11、基于FRAMEBUFFER的QT/EMBEDDED、快速开发工具QTDESIGNER以及国际化工具QTLINGUIST等。人们所熟知的LINUX下面的KDE环境就是基于QT开发而成的。QT支持UNIX和LINUX系统以及WINDOWS系统。QT的主要特点有面向对象,很容易扩展,并且允许真正的组件编程;QT对各个模块进行了良好的封装,使各模块可重用性较好;优良的跨平台特性,使用QT类编写的程序可以实现“一次编码,到处编译”,极大的降低了跨平台开发的难度;构件支持,对于对象间通信QT没有采用函数回调的方法,而是采用了一种全新并且可选的被称为“信号与槽”的对象间通信机制,通过一个对象信号的发射,另一个槽函数的响应,使各个对象之间的通信安全而且高效。QT的这些特点使它非常适合于真正的构件编程,同时使各个组件之间的协同工作变得十分简单,并且QT是直接基于XLIB的,不依赖MOTIF工具包,所以它的执行效率比一般的基于平台的代码的执行效率要高。图12为QT的软件界面图12QT软件界面第2章ZIGBEE技术的概述21ZIGBEE技术的概念ZIGBEE是一种基于IEEE802154标准的低功耗个域网协议,根据此协议的规定,ZIGBEE技术是一种短距离、低功耗的无线通信技术。这一名称来源于蜜蜂的一种名叫ZIG的舞蹈,由于通过持续不断地跳这种舞蹈来实现对新发现的食物或其他信息的传递,换句话说蜜蜂是依靠这样的通信方式来实现了一个通信网络,而每个个体则是网络中的一个节点。这样做的好处是不需要专门的通信蜜蜂,通过信息接力就完成了整个通信,从而实现了蜜蜂的低成本、低数据速率、自组织、低功耗、近距离、低复杂度等的信息传递方式。受蜜蜂的这种特殊的通信方式的启发,ZIGBEE技术的研究也主要是在低速率、低功耗通信领域进行应用,亦可以低成本地嵌入各种设备中组成庞大的网络。总而言之ZIGBEE技术就是一种低功耗,低成本的无线网络通信技术8。ZIGBEE技术主要用于低数据传输速率并且传输距离要求不是很远的各种通信设备之间。ZIGBEE联盟则于2001年成立,而在2002年下半年,INVENSYS、MITSUBISHI、MOTOROLA以及PHILIPS四大半导体公司共同宣布加盟ZIGBEE技术联盟,以研发名为“ZIGBEE”的新一代无线通信标准,而在2006年作为中国通信行业龙头的华为公司亦加入了此联盟。截至目前,该联盟大约已有约27家成员企业,所有这些公司都参加了负责开发ZIGBEE协议物理层(PHY)和媒体控制层(MAC)技术标准的IEEE802154工作组。ZIGBEE联盟负责开发网络层及以上的协议。ZIGBEE协议则比蓝牙技术、高速率个人区域网或80211X无线局域网等技术更简单而实用。ZIGBEE使用的是24GHZ波段,采用了跳频技术,这和蓝牙技术相似,可以说是同族兄弟了。但相比之下ZIGBEE协议比蓝牙更简单、速率更慢、功率及费用也更低。ZIGBEE的基本速率是250KB/S,而若当其速率降到28KB/S时,传输半径可扩大到134米,并可得到更低的功耗和更高的可靠性。此外,单个ZIGBEE无线模块就可与254个节点互联,若网络中加入路由节点,则网络最大承载量可支持65535个节点设备互联。由于它的低延迟和低功耗性能优越性,所以在支持鼠标、键盘等电脑周边产品和家庭自动化仪器等低速率应用时可以比蓝牙做地更好,人们更希望能在无线玩具、传感器网络、家庭监控、工业监控和安全系统等众多领域拓展ZIGBEE的应用9。22ZIGBEE技术的特点ZIGBEE网络采用的是无线自组织网络技术,与蜜蜂的通信类似,网络中的各个节点间通信以一跳或多跳的形式自动建立网络。网络节点则以ZIGBEE协议为基础进行通信,与各种传统无线网络相比,其主要优点有以下几个方面1网络稳定性好。其设计的网络自己组织性能使网络各个节点在无需人工干预的情况下自己组网并实现数据传输的任务,当添加或去除网络中某个节点时,其余节点可以自行寻找其他节点替代中转信息,具有较强网络自愈能力。2成本低。由于ZIGBEE联盟已经有二十多家,他们的研发实力都很强,好多公司均已在2003年正式推出自己的ZIGBEE芯片,竞争较大,近年来应用于主机端的芯片成本将会比蓝牙等模块更具价格上的优势;另外,因为ZIGBEE技术的速率要求低,协议内容简单,从而节省了开发的成本,目前常州市场CC2XX0等芯片的零售价格在2030元之间不等。3功耗低。它的超低功耗也使得在应用中三节15V干电池即可使用6个月至2年的时间,这也是ZIGBEE的最大的一个优势。4网络容量大。每个ZIGBEE设备可以与另外254台节点设备相连接,而加入路由节点的ZIGBEE网络最多可容纳多达65,000多个节点的网络。5数据传输速率低。只有10KB/S250KB/S,符合本设计需求。6工作频段灵活。使用的频段中24GHZ全世界通用,欧洲使用868MHZ,美国则使用915MHZ频段,但这些均是免申请频段,可以直接使用。7网络延迟时间短。活动设备信道接入延时和休眠激活延时均仅为15MS,而搜索设备延时时间达到10。23ZIGBEE网络设备组成和网络结构根据ZIGBEE联盟所设定的技术标准,按功能分其网络设备划分为三种ZIGBEE协调器ZIGBEECOORDINATOR,ZIGBEE路由器ZIGBEEROUTER,ZIG,BEE终端设备ZIGBEEENDDEVICE。他们的功能分别如下1ZIGBEE协调器ZIGBEECOORDINATOR它是个全功能的设备,包含所有的网络功能,是3种设备中功能最全面亦最复杂的一种,特点是计算能力强、存储量大。它的作用是发送网络信标、建立并且管理一个网络及网络节点、存储节点信息并且不断地接收下级节点所发来的信息。2ZIGBEE路由器ZIGBEEROUTER它也是全功能设备在加入网络后,协调器就会分配给它一定量的十六位地址空间,再由其分别分配给下级节点使用,方便每个节点接入或离开网络,具有数据转发及路由之功能。3ZIGBEE终端设备ZIGBEEENDDEVICE其一般的简化的功能设备。只能自己的与上一级如协调器或路由器之间通信,包括获取网络地址等。在ZIGBEE协议规范中,组网时有三种网络拓扑结构可供选择星型结构STAR,网状结构MESH和簇树型结构CLUSTERTREE,图21所示。星状(START)网状(MESH)簇状(CLUSTER)协调器路由器终端设备图21ZIGBEE网络拓扑结构图在星状结构中无论是路由器或终端设备都是直接与协调器进行通信,而ZIGBEE协调器则负责运作与维护着整个网络;在簇状和网状网络结构中,协调器负责初始化和建立网络的操作,而路由器则对网络进行扩展,终端设备的信息由路由器进行转发,只不过在簇状结构中终端间的信息交换只能通过一级级向上传递到协调器,再由协调器将信息分发下去11。24ZIGBEE的协议分析241网络层(NWK)ZIGBEE网络层的主要功能就是确保ZIGBEE的MAC层IEEE802154正常工作,同时定义了一些必须的函数,并且为应用层提供适合的服务接口。网络层提供了两个必须的功能服务实体来向应用层提供服务接口,它们分别是管理服务实体和数据服务实体。通过网络层数据服务实体服务接入点(NLDESAP),网络层的数据实体(NLDE)得以提供数据传输服务;网络层管理实体NLME与之不同,它是通过网络层管理实它体服务接入点NLMESAP来提供网络管理服务的。网络层管理实体则是利用网络层数据实体完成一些网络的管理工作,并且网络信息库NIB理是网络层管理实体完成的。1、网络层数据实体(NLDE)网络层数据实体为数据提供服务,在两个或多的设备之间进行数据传送任务时,则是按照应用协议数据单元APDU的格式进行传送的,并且所有的这些设备必须是在同一个网络中,即要求在同一个个域网中。网络层数据实体提供的服务如下三项1指定拓扑传输路由,网络层数据实体发送一个网络层的协议数据单元到一个合适的接受设备,此设备可能是一个在通信链路中的中间通信设备,也可能是最终的目的通信设备。2生成网络层的协议数据单元NPDU通过增加一个适当的协议头,网络层数据实体从应用支持层协议数据单元中生成网络层的协议数据单元。3安全确保通信的机密性和真实性。2、网络层管理实体(NLME)络层管理实体允许应用与堆栈相互作用,并且提供网络管理服务。网络层管理实体提供了以下的几种服务1配置一个新的设备设备应具有足够的堆栈来保证其正常工作的需要,并且满足配置的需要。配置选项包括对连接一个现有网络设备或一个ZIGBEE协调器的初始化的操作。2初始化一个网络使设备有能力建立一个新的网络。3连接和断开网络。要求设备具有断开网络的能力和具有连接一个新的网络的能力,以建立一个ZIGBEE协调器或者路由器。4邻居设备发现需要具有发现、汇报和记录相邻设备信息的能力。5寻址ZIGBEE协调器和路由器具有分配地址给新加入网络的设备的能力。6路由发现具有发现并且记录传送信息的网络路由的能力。7接收控制具有控制设备是否处于接收状态的能力,即控制接收机接收信息时间的长短和什么时候来接收信息,以此来保证MAC层的正常接收和同步等。242应用层(APP)应用层主要由用户根据具体的应用进行自我开发,用以维持节点的各种功能,发现此节点工作空间范围内其他节点的工作,再根据服务的需求为各个不同的节点提供通信服务。ZIGBEE应用层有三个不同的部分分别是应用支持APPLICATIONSUPPORTSUB1AYER,简称APS子层、ZIGBEE设备对象ZIGBEEDEVICEOBJECT,简称ZDO和制造商定义的应用对象。1、应用支持子层APS层提供了这样的接口在NWK层和APL层间,从设备对象到供应商的应用对象的通用服务集。这服务由两个实体得以实现APS管理实体APSDE和APS数据实体APSDE。1APSME通过APSME服务接入点APSMESAP;2APSDE通过APSDE服务接入点APSDESAP。APSDE提供了多种服务给应用对象,维护管理对象的数据库,也就是我们常说的AIB,同时这些服务包括绑定设备和安全服务。APSDE则提供在同一个网络中的两个或多个应用实体间进行数据通信的服务。2、应用层框架为存在ZIGBEE设备中的应用对象提供活动的环境的是ZIGBEE中的应用框架。其最多可以定义240个较为独立的应用程序对象,任意一个对象的端点编号都是从1到240。另外还有两个附加的节点终端为了APSDESAP的使用端点号0专门应用于ZDO数据接口;而另外一端的端点号255则专门应用于所有应用对象广播数据的数据接口;最后,端点241254则是要保留给有需要扩展的时候使用的。3、ZIGBEE设备对象ZIGBEE设备对象ZDO,描述了一个基本的功能函数,这个函数为在应用对象、设备PROFILE和APS之间提供了一个接口。ZDO位于应用支持子层和应用框架之间,在ZIGBEE协议栈中应用操作的一般需求它有所满足。ZDO还有以下作用1初始化安全服务规范SSS,应用支持子层APS和网络层NWK。2从终端的应用中集合配置的信息来执行和确定发现、网络管理、绑定管理,以及安全管理等作用。ZDO描述了应用框架层的应用对象的网络功能和应用对象的公用接口用以控制设备。在终端节点0处,ZDO则提供了与协议栈中低一层进行连接的接口,若接受的是数据,则通过APSMESAP接入点,而若是控制信息则通过APSMESAP的接入点。ZDO公用接口则在ZIGBEE协议栈的应用框架中提供设备发现、绑定、以及安全等各种功能的地址管理服务。ZIGBEE设备对象的主要功能如下1初始化网络层、应用支持子层和安全服务层;2发起或响应绑定请求;3在网络内部发现设备,并且确定为此发现的设备提供的应用服务种类;4定义设备在网络中的各种角色,如,终端设备、路由器或协调器;5从终端的应用来收集各个配置信息来确定和执行发现管理、网络管理、安全管理和绑定管理等;6在网内各个设备之间建立起安全又可靠的关系。25本章小结本章对ZIGBEE技术进行了主要讨论。首先对ZIGBEE技术进行了概述,其次简单介绍了ZIGBEE技术的各种特点及网络拓扑图,最后对ZIGBEE的协议,MAC层,还有网络层和应用层的各主要功能都进行了介绍,为下面的研究工作提供了有力基础。特别对最后在程序设计时起了很大的作用。第3章系统的总体设计31系统结构本论文是基于ZIGBEE技术的无线传感器网络环境监测系统,所以根据ZIGBEE技术的标准和特点设计了由多传感器节点,协调器节点和PC组成的该系统。其中,传感器节点通过ZIGBEE无线技术与协调器进行信息的交换,协调器则通过串口RS232与PC进行相连通信。本文设计的系统结构如图31所示PC协调器传感器节点传感器节点传感器节点图31系统结构图由图31可知,本系统中传感器节点主要负责的是环境信息的采集与发送,协调器节点主要负责的是网络的建立、终端节点管理、数据处理和对PC端的数据通信。当然在实践过程中可以根据家庭居住环境的大小和所需监测的内容,来增加或减少传感器节点。当监测区域较大时,可用增加传感器节点的方法来保证网络的连通性,相反区域较小时可以根据情况减少路由器节点的设置以节省系统资源,降低成本。在本设计的实践环节,本人只是用了一个温度传感器做了演示。32系统功能定义为了实现基于ZIGBEE技术的家居环境监测系统的设计,现对系统的各种功能作出以下定义1管理中心PC实时显示家庭中各种的环境信息,并且用户可通过PC实现对网络中各个节点设置与管理,如管理网络各个节点的节点信息,发送数据采集命令,发送休眠指令,设置传感器节点采集环境信息的周期的长短;2协调器节点组建并初始化ZIGBEE无线网络,管理各传感器节点终端,发送与接收网络数据与指令,同时与管理中心PC进行通信;3传感器节点对周围环境信息进行实时采集,并通过ZIGBEE无线网络实时将环境信息发送到协调器节点。本文设计的环境监测系统主要是获取家庭环境中的一些环境参数,以实现对环境信息的全面监控,从而为用户的决策提供有利的参考。以下是对各种参数的介绍1温度人体对温度的变化甚为敏感,在环境温度高于36摄氏度后,每增加一度对人体的负面影响都是几何级的增加,故此系统中最重要也是最基本的就是环境中温度的采集。温度传感器可以在用户设定的频率下采集区域的温度信息,并将其发送到协调器节点进行处理,再由协调器将处理结果数据通过串口发送到PC,此时,PC可按之前用户设置好的参数和程序对空调系统进行控制,从而实现对室内温度的控制,当然这些是后续控制,不在本文讨论范围内。家庭中的每个房间可以多放几个这样的类似节点,可实现在同一个房间进行多点的温度信息采集,以提高温度测量的准确度。2湿度人类对湿度虽然不是特别敏感,但其时时刻刻亦影响着人们的健康,尤其是老年与儿童。目前人们经常是通过普通的加湿器来调节室内湿度,此类加湿器一般只是手动操作,这样就存在着人为的主观不确定性,最终也有可能不利于环境之改善。而在本系统中,通过湿度传感器对湿度信息的采集,再经由PC的处理后,对加湿器进行控制,即可达到科学明了地控制室内的湿度。3一氧化碳气体燃气的主要成分就是一氧化碳当燃气发生泄漏时,空气中一氧化碳浓度达到一定时,就会对家庭人员生命带来威胁。故对一氧化碳气体浓度监测也是必不可少的一部分。当系统检测到一氧化碳气体浓度大于用户设定是初值时,PC会立即发送报警信号到报警装置或者是家庭成员的手机或直接报警,PC在启动报警装置的同时,或可以自动控制开窗,以达到室内空气流通的效果,保证家庭成员的安全。4亮度亮度的监测可以利用分布在各个房间里的光敏传感器来实现。光敏传感器可以将感知的光线强度信息发送到协调器节点,协调器则将信息传输到PC,经过处理和判断光线强度,来控制窗帘的开关或灯的开关。当光线过强时,可以控制窗帘自动合起或电灯关闭,反之则可以控制其打开或电灯打开。当然,本系统可以根据用户的不同需求增加或减少传感器的数量,及使用不同的传感器进行监测。33系统设计要求本系统是在家庭环境中实现各种功能,根据此特点,可以总结出以下几种要求。分别从软硬件两个方面来得以实现。1、硬件要求1低功耗由于是无线传感网络,节点较多,所以只能由电池供电,故要求低功耗以延长使用,减少电池更换次数。2安全性本系统为家居环境控制系统做前期的数据采集,若出现错误,则可导致PC判断错误,导致错误控制。如,未发生一氧化碳泄露即报警等。故要求系统的安全性3外观由于要安装在家庭各个地点,故要求其尽量小巧,美观。4可扩展能够根据用户的不同需求,随时增加或减少传感器节点设置。2、软件要求软件方面要求程序模块化设计,可以使系统升级方便以备增加节点时修改其中一个模块而其他地方无需改动;程序设计要简单,数据传输格式要统一。34本章小结本章主要是对系统的总体的方案以及各个组成部分进行了设计。同时,对不同的环境参数做了介绍,以本系统对环境监测功能的需要。最后,对系统的整体设别提出了设计要求,为系统后续的软硬件设计提供了要求和设计基础。第4章系统的硬件设计41ZIGBEE硬件选型在介绍整个系统的硬件设计方案之前,首先对目前市场上售卖的主要的几款基于ZIGBEE技术的硬件平台及其各平台的自身特点进行一一介绍。目前主要有TI/CHIPCON、EMBERST、JENNIC捷力、FREESCALE(飞思卡尔)等几家公司有ZIGBEE产品。TI/CHIPCON公司发布了单芯片ZIGBEE解决方案CC2530的片上系统级芯片SOC,结合了领先的RF收发器的优良性能,业界标准的增强型8051CPU,系统内可编程闪存,8KBRAM和许多其他强大的功能。由此CC2530得以广泛应用于工控系统、汽车和无线传感网络等各种领域;EMBERST推出首款符合IEEE802154标准的ZIGBEE单芯片方案EM250。它集成了可编程处理器、RF射频、网络协议及存储器;JENNIC捷力公司的JN5121芯片则在业界属于第一款兼容于IEEE802154的低功耗,低成本无线微型控制器;而FREESCALE(飞思卡尔)目前主推的完全兼容IEEE802154标准并获认证ZIGBEE射频芯片为MC13193。(1)TI/CHIPCONTI公司的TCC2530是用于24GHZIEEE802154、ZIGBEE和RF4CE应用的一个真正的片上系统(SOC)解决方案。它能够以非常低的总的材料成本建立强大的网络节点。CC2530结合了领先的RF收发器的优良性能,业界标准的增强型8051CPU,系统内可编程闪存,8KBRAM和许多其他强大的功能。CC2530有四种不同的闪存版本CC2530F32/64/128/256,分别具有32/64/128/256KB的闪存。CC2530具有不同的运行模式,使得它尤其适应超低功耗要求的系统。运行模式之间的转换时间短进一步确保了低能源消耗。(2)EMBERSTEM250半导体系统提供更长的距离和可靠的共存性,包括低功耗16位微控制器,128KB闪存,5KRAM,24GHZ无线电和EMBER公司的EMBERZNET21软件。EMBERZNET21是ZIGBEE兼容的网络堆栈,具有独特的能扩展ZIGBEE功能性,简单性和性能的增强特性。这些特性包括支持移动节点,大/密的网络,以及能在节点和授权分布式构造间提供更加可靠无线通信的传输层。EM250具有用作ZIGBEE位标器节点,全功能设备FFD或降功能设备RFD所需的资源。(3)JENNIC捷力JN5139芯片是一个低功率及低价位的无线微处理器,主要针对无线感测网络的产品为主,JN5139整合了32BITRISC微处理器,完全兼容24GHZIEEE802154的送收器,192KROM,另外,可选择搭配RAM的容量从8KB至96KB不同料号,也整合一些数字及模拟周边线路,大幅降低外部零件的需求。内建的内存主要是用来储存系统的软件,包含了通讯协议堆栈,路径表,应用程序代码与资料。也包含了硬件的MAC地址与AES加解密的加速器,并拥有省电与定时睡眠模式,另外还有安全码与程序代码加密机制。(4)FREESCALE(飞思卡尔)MC1320X是飞思卡尔公司推出的符合802154标准的下一代收发信机,它包括一个集成的发送/接收(T/R)开关,可以帮助降低对外部组件的需求,进而降低原料成本和系统总成本。该收发信机支持飞思卡尔的软件栈选项、简单MAC(SMAC)、802154MAC和全ZIGBEE堆栈。集成了MC9S08GTMCU和MC1320X收发信机,闪存可以在1660KB的范围内选择。MC13211提供16KB的闪存和1KB的RAM,非常适合采用SMAC软件的点到点或星形网络中的经济高效的专属应用。对于更大规模的联网,则可以使用MC13212(具有32KB的内存和2KB的RAM内存)和IEEE802154MAC。此外,MC13213(带有60KB的内存和4KB的RAM)和ZIGBEE协议堆栈设计用于帮助设计人员开发完全可认证的ZIGBEE产品。MC13213可以提供全面的编码和解码、用于基带MCU的可编程时钟、以4MHZ(或更高)频率运行的标准4线SPI、外部低噪声放大器和功率放大器(PA)实现的功能扩展以及可编程的输出功率。以上的硬件平台都适用于ZIGBEE应用的开发。由于任务书上和市场上应用的稍多的芯片是CC2530,其系统的集成性和通用性都较好并且其集成的51微处理器内核亦较为熟悉,另外,CC2530芯片优性能也是本文硬件选择的一个较为重要的因素。CC2530芯片的性能如下具有USB高速下载、支持IAR集成开发环境;具有在线下载、调试、仿真功能;提供ZIGBEE2007/PRO/RF4CE协议栈;例程丰富,并且所有例子程序以源代码方式提供并附实验手册;灵活配置。根据需求可选配多种扩展开发板;开发方便、快捷、简单;C51编程。熟悉、顺手、入手快;具有液晶显示。直观、明了;配套提供多种传感器光敏/温度/可调电阻;具有多年高频设计工程师提供专业、经验丰富技术支持;功能强大的C51RF仿真器。可以实现对CC2530开发仿真调试。多种扩展板既有简单开发按键、又有液晶显示及传感器。不但可实现简单的CC2530开发,还可作于复杂的ZIGBEE无线网络。硬件系统、软件代码程序自主设计完成保证长期技术支持。42节点硬件设计1、协调器节点设计协调器节点在ZIGBEE网络中主要负责的是无线网络的建立和节点管理等各种任务。在本系统中它还需要对接受的数据的进行处理,以及USB转串口与PC进行连接通信。它的硬件系统结构设计图如图41所示。CC2530电源天线USB串口口图41终端结构图2、终端节点设计终端节点在ZIGBEE网络中主要负责的是将采集到的数据通过组建好的无线网络发送到协调器节点。它的硬件系统结构设计图如图42所示。CC2530传感器天线电源图42终端结构图其中除了信号放大及传感器模块之前未介绍过,其余地方均与协调器节点同。故本节只介绍传感器模块。其中由于传感器模块有温湿度测量,光度测量,一氧化碳测量等。其原理相似,故本文只选择温度传感器模块来做叙述。1电源部分设计本部分的设计采用外部三节干电池对系统进行供电,供电电压为45V。系统工作电压为33V,故需要实现5V到33V的电压转换。本文选用AS1117AR33以实现电压调节。可充分满足CC2530对电压的要求。其电路如图43。图43电压转换电路2DEBUGER口部分设计电路连接原理图如图44。图44DEBUGER部分电路图传感器的介绍1温度传感器(DS18B20)本设计使用的是DS18B20数字温度传感器,DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。技术性能描述、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。、测温范围55125,固有测温误差(注意,不是分辨率,这里之前是错误的)05。、支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定。、工作电源35V/DC(可以数据线寄生电源)。、在使用中不需要任何外围元件。、测量结果以912位数字量方式串行传送。、不锈钢保护管直径6。、适用于DN1525,DN40DN250各种介质工业管道和狭小空间设备测温。、标准安装螺纹M10X1,M12X15,G1/2”任选。、PVC电缆直接出线或德式球型接线盒出线,便于与其它电器设备连接。2光强度传感器(BH1750FIV)本文采用了数字输出型的环境光照传感器BH1750FIV。它是一种两线式串行总线接口光强度传感器集成电路。芯片直接内含放大器、AD转换器、光强度计算电路和总线接口。它的优点是输出值无需换算,即是光强度值;无需其它外部元件;抑制50HZ/60HZ的光噪声;其工作电压在24V36V之间,故无需电压转换,直接接3V的电源即可。在连接传感器和CC2530时应注意BH1750FIV的DIV端口,因为DIV是总线CI2的参考电压终端,亦是异步重置终端。其要求是在VCC供电后DIV口必须有不少于的低电平时间,以保证ADDR,SDA,SCL口的稳定。又因为CC2530无总线,所以直接接在其I/O口,再应用软件编程来达到模拟出总线的效果。43本章小结本章主要做了以下三个方面的工作1根据目前ZIGBEE网络技术的发展现状,选择了CC2530作为本设计的开发平台。2介绍了协调器节点的硬件设计。3介绍了传感器节点的硬件设计。通过上述工作,为系统的应用做好了硬件准备,为后续系统的软件做好了准备。第5章系统的软件设计及实现51软件部分总体介绍511软件设计整体流程本设计的网络拓扑结构选择树状结构,树状结构必须有路由的加入,但路由实在终端节点和协调器之间的距离超过接收不到的情况下转发协调器与终端节点所发送的数据,而本设计只设计了近距离的数据收发,所以本设计的软件部分设计只要对协调器、终端节点分别进行设计。终端节点负责采集当前的温度数据在现场实时的显示,并最终发送给协调器,协调器在接收到终端节点发送过来的温度数据后进行相应的处理,然后通过串口发送到上位机显示。下图为整个系统的流程图温度终端节点协调器节点上位机PC图51系统整体流程路由器信号强信号弱从上图可以看出,终端节点有两种与协调器的通信方式,当终端节点检测到的协调器信号强度超过路由器时,将直接与协调器通信,相反如果检测不到协调器的信号或者信号强度比路由节点的弱,则通过路由节点将数据传送给协调器。在TI提供的ZSTACK协议上,设备启动的过程都由协议栈本身做好,用户只需指定其启动身份即可。512协调器的自动组网流程第一步Z_STACK由MAIN函数开始执行,MAIN函数做两件事一是系统初始化;二是开始执行轮询式操作系统。第二步进入OSAL_INIT_SYSTEM操作系统初始化。第三步进入OSALINITTASKS执行操作系统任务初始化函数。在这个函数中用户需要考虑的有HAL_INITTASKID硬件抽象层初始化。ZDAPP_INITTASKIDZDAPP层初始化。SAMPLEAPP_INITTASKID应用层SAMPLEAPP层初始化。第四步进入ZDAPP_INIT函数,执行ZDAPP层初始化。这一步中又包含了很多分支部分THEFIRSTSTEP进去VOIDZDAPP_INITUINT8TASK_ID,对ZDAPP层初始化。THESECONDSTEP执行ZDOINITDEVICE0。THETHIRDSTEP执行ZDOINITDEVICE(),ZDO层初始化设备。THEFOUTHSTEP执行ZDAPP_NETWORKINIT网络初始化。THEFIFTHSTEP触发ZDO_NETWORK_INIT(网络初始化)事件,进入ZDAPP_EVENT_LOOP函数。THESIXTHSTEPZDO_STARTDEVICE();启动设备,其中这函数的参数分别为设备逻辑类型,启动模式,信标时间,超帧长度。ZDO向网络发送一个组网请求,由于ZIGBEE协议栈是版开源的,网络层的具体代码无法看到,但是网络组建成功后会发送一个确认信息给ZDO层,由ZDO_NETWORKFORMATIONCONFIRMCB()函数来接收发送过来的确认信息。THESEVENTHSTEP进入ZDO_NETWORKFORMATIONCONFIRMCB(),给予ZDO层网络形成反馈信息(协调器),执行OSAL_SET_EVENTZDAPPTASKID,ZDO_NETWORK_START发送网络启动事件到ZDAPP层,接着转到ZDAPP_EVENT_LOOP()函数,进去VOIDZDAPP_NETWORKSTARTEVTVOID处理网络启动事件;再执行OSAL_SET_EVENTZDAPPTASKID,ZDO_STATE_CHANGE_EVT,设置网络状态改变事件,发送到ZDAPP层,触发ZDO_STATE_CHANGE_EVT事件。THEEIGHTHSTEP执行ZDAPP_EVENT_LOOP()函数,找到相对应的网络改变事件。THENINTHSTEP执行ZDO_UPDATENWKSTATUS函数,ZDO状态改变事件。THETENTHSTEP执行ZDOSENDSTATECHANGEMSG()函数,发送状态改变消息。THEELEVENTHSTEP执行MT_PROCESSINCOMINGCOMMAND函数。THETWELFTHSTEP执行MT_ZDOSTATECHANGECB自此协调器组网完毕。整个的组网流程图如图52所示ENDMAIN()OSAL_INIT_SYSTEMOSAL_START_SYSTEMEVENTHAPPENDNYENDZDAPP_INITOSALINITTASKOSAL_INIT_SYSTEMZDO_NETWORKFORMATIONCONFIRMCBZDAPP_EVENT_LOOPZDAPP_NETWORKINITZDO_INITZDOINITDEVICE0ZDAPP_EVENT_LOOPZDO_STARTDEVICEOSAL_SET_EVENTZDO_UPDATENWKSTATUSOSAL_SET_EVENTZDAPP_EVENT_LOOPMT_PROCESSINCOMINGCOMMANDZDOSENDSTATECHANGEMSGMT_ZDOSTATECHANGECBENDZDAPP_NETWORKSTARTEVTZDAPP_INIT图52
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人文医学护理理论与实践
- SU类降糖药物临床应用
- 直播时如何讲解
- 健康促进医院建设成果汇报
- 医院消防安全知识
- 传统文化中的中医学体系
- 医院感染分类体系
- 医院妇科建设与发展要点
- 医院环境改造实施策略
- 医院人事科工作汇报
- 写字楼租赁合同法律风险及防范指南
- 养老机构医养结合交流合作总结范文
- 神经刺激器行业深度调研及发展项目商业计划书
- 工贸行业重大事故隐患判定标准安全试题及答案
- 2025年全国新高考I卷高考全国一卷真题语文试卷(真题+答案)
- 课程思政教学课件
- 工业网络技术(微课版)课件 项目7 ThingsBoard平台应用
- 供电所所长面试题及答案
- JG/T 328-2011建筑装饰用石材蜂窝复合板
- T/CMES 37005-2023滑道运营管理规范
- 催收机构运营管理制度
评论
0/150
提交评论