基于无线传感网络的空气质量监测系统设计_第1页
基于无线传感网络的空气质量监测系统设计_第2页
基于无线传感网络的空气质量监测系统设计_第3页
基于无线传感网络的空气质量监测系统设计_第4页
基于无线传感网络的空气质量监测系统设计_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

摘要空气品质对人的影响至关重要,利用传感器检测空气质量是当今流行的一种方法,本文介绍了传感器在空气质量检测方面的原理应用及监控系统的网络设计。本系统采用无线传感器网络来实现数据的采集与发送。无线传感器网络是由部署在监测区域内大量的廉价微型传感器节点组成,通过无线通信方式形成一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络覆盖区域中感知对象的信息,并发送给观察者。本设计系统采用CC2430无线通信模块、温湿度传感器DHT90、空气质量传感器QS-01、电源模块构建无线传感器网络,通过RS-232串口和监控中心通信,使用软件开发平台IAREmbeddedWorkbench开发ZigBee协议栈,基于ZigBee的无线网络技术以低功耗、低成本、低复杂度等特点受到越来越多企业和个人的青睐。空气质量监测系统特别适合于数据吞吐量小、网络建设投资少、网络安全要求较高、不便频繁更换电池或充电的场合。预计将在消费类电子设备、家庭智能化、工控、医用设备控制、农业自动化等领域获得广泛应用,利用ZigBee技术完成传感器节点和汇聚节点的应用程序,最终能够实现空气质量的监测。关键字:无线传感器;cc2430;DTH90;zigbee技术;空气质量检测ABSTRACTAirqualityimpactonpeopleisveryimportant,usingsensorstodetectairqualityisnowapopularmethod,thispaperintroducesthesensorinairqualitytestingprinciple,analyzestheadvantagesanddisadvantagesofgassensor,andgassensordevelopmenttrendandprospects.Thesystemuseswirelesssensornetworkstoachievedata’scollectionandtransmission.Wirelesssensornetworksarecomposedofalargenumberoflow-costmicro-sensornodeswhicharedeployedinthemonitoringregion,useswirelesscommunicationmeanstoformamulti-hop'sself-organizingnetwork,withtheaimofperception,collectionandprocessingofperceivedtargetinformationinthenetworkcoverageregion,andsendthemtoobservers.ThissystemusesCC2430wirelesscommunicationmodule,temperatureandhumiditysensorDHT90,airqualitysensorQS-01,powermoduletobuildwirelesssensornetworks,andusesRS-232serialporttocommunicatewithmonitoringcenter.UsethesoftwaredevelopmentplatformIAREmbeddedWorkbenchtodevelopZigBeeprotocolstack.BasedontheZigBeewirelessnetworkingbylowcharacteristicsandsoonpowerloss,lowcost,lowcomplexityreceivesmoreandmoremanyenterprisesandindividualfavor.TheZigBeetechnologysuitsspeciallyinthedatavolumeofgoodshandledsmall,thenetworkconstructioninvestsfew,thenetworksecurityrequestishigh,inconvenientreplacesthebatteryorthechargesituationfrequently.Theestimateintheexpenseclasselectronicinstallation,thefamilyintellectualization,thelaborwillcontrol,medicaldomainsandsoondevicecontrol,agriculturalautomationobtainsthewidespreadapplicationThesecandefinitivelyachievethepurposeofairqualitymonitoring.Keywords:wirelesssensor;CC2430;DTH90;ZigBeetechnology;airqualitytesting目录摘要 IABSTRACT II1绪论 11.1引言 11.2课题背景和研究意义 11.3无线传感器网络的研究进展 21.4论文的研究内容与组织结构 42无线传感器网络概述 62.1无线传感器网络简介 62.2无线传感器网络体系结构概述 62.3无线传感器网络特点 72.4无线传感器网络应用 102.5 无线传感器网络关键技术 102.6无线传感器网络拓扑结构 123空气质量监测系统硬件设计 163.1ZigBee技术 163.2系统总体结构设计 173.3传感器节点的硬件设计 193.3.1节点硬件总体结构 193.3.2处理器和无线通信模块HFZ-CC2430EM-22 203.3.2传感器模块 223.4汇聚节点的硬件设计 273.4.1电源模块 273.4.2RS-232串口模块 284空气质量监测系统软件设计 294.1ZigBee协议 294.2IAR开发环境介绍 304.3传感器节点应用程序设计 314.4汇聚节点应用程序设计 335系统测试与结果分析 355.1测试方案 355.1.1硬件测试 355.1.2温度采集及串口显示测试 355.1.3数据通信测试 35参考文献 36附录C部分程序 384.2.1 原语概念 444.2.2 建立新网络 444.2.3 ZigBee设备加入网络过程 451绪论1.1引言1.2课题背景和研究意义1.3无线传感器网络的研究进展无线传感器网络相关的课题,国内也有越来越多的企业开始关注无线传感器网络技术的发展,开始推出针对无线传感器网络及ZigBee的解决方案,而无线网络应用在生活中的研究也是刚刚起步[7]。目前ZigBee网络的应用范围非常广泛,很多我们想象不到的地方也在使用ZigBee技术。例如,在工业领域,ZigBee技术不仅用来控制照明灯的开关,它还有一个用途是检查高速路上照明灯的工作情况。以前工程师要开车到高速路上检查哪些照片灯已经坏掉了,需要维修,但因为车速较快,不能记下所有要检修灯的编号,但通过ZigBee网络,工程师只需坐在计算机,就可以很清楚地监测到整个高速路上照明灯的工作情况,这是目前的一个热点应用。再如,ZigBee技术用于进出的控制,可以记录汽车的进出,也可以在人员进出时用于传输相关指纹来识别数据,进行身份认证。此外,通过ZigBee网络的路由器功能,它还可以用来实时监控煤矿内各点的安全状况,防止事故的发生。在加油站,一些客户不希望布线,他们正在考虑采用ZigBee无线技术来传输相关数据。在消费类电子方面,ZigBee技术可以替现在的红外遥控,于红外遥控相比,ZigBee的优势在于每一个操作都会有反馈信息,告诉他们是否实现了相关操作。现今我们也可以看到ZigBee用于家庭保安,消费者在家中的门和窗上都安装了ZigBee网络,当有人闯入时,ZigBee可以控制开启室内摄像装置,这些数据再通过Internet或WLAN网络反馈给主人,从而实现报警[8]。当在家电产品如空调,热水器等安装ZigBee模块后,用户可以通过ZigBee无线网络来控制这些产品的开启。在建筑智能化领域,各种灯光的控制,气体的感应与监测,如煤气泄漏的感应和报警都可以应用ZigBee技术。ZigBee在未来的几年里将在工业控制,工业无线定位,家庭网络,汽车自动化,楼宇自动化,消费电子,医用设备控制等多个领域具有广泛的应用前景,特别是家庭自动化和工业控制,将成为今后ZigBee芯片的主要应用领域。在工业领域,利用传感器和ZigBee网络,使得数据的自动采集,分析和处理变得更加容易,可以作为决策辅助系统的重要组成部分。在汽车领域,主要是传递信息的通用传感器。由于很多传感器只能内置在飞转的车轮或者发动机中,比如轮胎压力监测系统,这就要求内置无线通信设备使用的电池有较长的寿命,同时应该克服嘈杂的环境和金属结构对电磁波的屏蔽效应。在精确农业领域,传统农业主要使用孤立的,没有通信能力的机械设备,主要是依靠人力监测作物的生产状况,采用了传感器和ZigBee网络后,农业将可以逐渐地转向以信息和软件为中心的生产模式,使用更多的自动化,网络化,职能化和远程控制的设备来耕种。在家庭和楼宇自动化领域,家庭自动化系统作为电子技术的集成得以迅速扩展,易于进入,简单明了和廉价的安装成本等成了驱动自动化居家,建筑开发和应用无线技术的主要动因[8]。在医学领域,将借助于各种传感器和ZigBee网络准确而且实时地监测病人的血压,体温和心跳速度等信息,从而减轻医生的查房的工作负担,有助于医生做出快速的反应,特别是对重病和病危患者的监护和治疗。在消费和家用自动化市场,可以联网的家用设备有电视,录像机,无线耳机,PC外设,运动与休闲器械,儿童玩具,游戏机,窗户和窗帘,照明设备,空调系统和其它家用电器。1.4论文的研究内容与组织结构研究内容:本论文研究了如何利用传感器检测空气质量及介绍了传感器在空气质量检测方面的原理应用,分析了当前气体传感器的特点,以及气体传感器的发展趋势和前景本包括系统的软硬、件设计及其具体实现,主要研究内容如下。一是,目前我国采用的空气质量监测方法的研究,基于无线传感器网络的空气质量监测系统的研究意义和无线传感器网络的概述,概述包括基本概念、结构、体系结构、特点、应用、关键技术和网络拓扑结构。二是,该系统的硬件设计。该系统采用符合IEEE802.15.4标准的ZigBee无线技术来实现网络中节点间的无线通信。温湿度传感器节点由西安华凡科技有限公司的HFZ-CC2430EM-22模块,温湿度传感器DHT90和两节五号电池组成。气体传感器节点由西安华凡科技有限公司的HFZ-CC2430EM-22模块,空气质量传感器QS-01和5V锂电池组成。研究了HFZ-CC2430EM-22模块的结构、特性和CC2430芯片的内部结构、外在电路;研究了DHT90的工作原理并实现了传感器通信,最终焊接制作出温湿度传感器节点。汇聚节点由西安华凡科技有限公司的HFZ-CC2430EM-22模块和SmartRF07DB母板组成。主要应用母版的串口电路和电源模块,因为汇聚节点一直处于工作状态因此选择持续的USB供电方式,通过串口连接汇聚节点和PC机并显示测试数据,而串口电平与TTL电平幅值不同无法直接相连,因此需要串口电路转换电平。三是,该系统的软件设计。论文研究了德州仪器开发的ZigBee协议栈Z-Stack的软件构架,并在IAR集成开发环境中开发该协议栈,根据传感器节点和汇聚节点的应用流程添加自己的温湿度采集应用程序和修改主文件中的任务处理函数,最终实现功能。论文结构:共分为5章,结构安排如下:第1章:绪论。介绍了目前的空气质量监测方法,课题的研究背景及研究意义,无线传感器网络的研究进展和论文的主要研究内容和组织框架。第2章:无线传感器网络概述。介绍了无线传感器网络的基本构架、体系结构、特点、应用和关键技术。第3章:空气质量监测系统硬件设计。介绍了ZigBee技术,系统的总体结构设计,传感器节点和汇聚节点的硬件设计。第4章:空气质量监测系统软件设计。介绍了ZigBee协议栈,IAR集成开发环境,传感器节点和汇聚节点的应用程序设计。第5章:总结与展望。总结本论文所做的工作,提出现有方案的不足之处,并对下一步工作进行了展望。2无线传感器网络概述2.1无线传感器网络简介无线传感器网络是新一代的传感器网络,具有非常广泛的应用前景,其发展和应用,将会给人类的生活和生产的各个领域带来深远影响。发达国家如美国,非常重视无线传感器网络的发展,IEEE正在努力推进无线传感器网络的应用和发展。波士顿大学,还于最近创办了传感器网络协会,期望能促进传感器联网技术开发。美国的《技术评论》杂志在论述未来新兴十大技术时,更是将无线传感器网络列为第一项未来新兴技术,《商业周刊》预测的未来四大新技术中,无线传感器网络也被列入其中[10]。可以预计,无线传感器网络的广泛应用是一种必然趋势,它的出现将会给人类社会带来极大的变革。2.2无线传感器网络体系结构概述[11]2.3无线传感器网络特点[12][13][14][15]2.4无线传感器网络应用[17][18]无线传感器网络关键技术无线传感器网络作为当今信息领域新的研究热点,有非常多的关键技术有待发现和研究。而功耗和安全问题对于无线传感器网络来说,是两个最重要的性能指标,所以WSN的关键技术必然以降低网络功耗和确保网络安全为主线。下面介绍网络拓扑控制、数据融合等部分关键技术。1)网络拓扑控制对于自组织的传感器网络而言,网络拓扑控制具有特别重要的意义。通过拓扑控制自动生成的良好的网络拓扑结构,能够提高路由协议和MAC协议的效率,可为数据融合、目标定位等很多方面奠定基础,有利于节省节点的能量来延长网络的生存期。所以,拓扑控制是WSN研究的核心技术之一[19]。WSN拓扑控制目前主要研究的问题是在满足网络覆盖度和连通度的前提下,通过功率控制和骨干网节点选择,剔除节点之间不必要的无线通信链路,生成一个高效的数据转发的网络拓扑结构。拓扑控制分为节点功率控制和层次型拓扑结构控制两个方面。功率控制机制调节网络中每个节点的发射功率,在满足网络连通度的前提下,减少节点的发送功率,均衡节点单跳可达的邻居数目;目前已经提出了以邻居节点度为参考依据的算法,以及利用邻近图思想生成拓扑结构的DRNG和DLSS算法。层次型的拓扑控制利用分簇机制,让一些节点作为簇头,由簇头形成一个处理并转发数据的骨干网,其他非骨干网节点可以暂时关闭通信模块,进入休眠状态以节省能量。2)数据融合在无线传感器网络中,节点传感器采集数据并将它发送到网络终端。但是在数据的采集和传输过程中,总要对采集的数据进行处理,因此存在如何对采集的数据进行处理、融合的问题。如果完全在本地节点上处理采集的数据而只发送处理后的结果,可以降低传输数据的功耗,但增加了本地节点处理器的功耗;如果传输原始采集的数据,可以降低节点处理器的功耗但增加了节点传输数据的功耗。因此,如何对采集的数据进行处理与融合对降低节点能耗起到相当大的作用。通常网络中的传感器数量很多,传感器采集的数据具有一定的冗余度,因此将多个节点采集的数据相互结合起来进行处理可以降低整个网络数据的传输量,有效降低系统功耗,问题是如何寻找本地节点处理与节点联合处理的平衡点。3)定位技术位置信息是传感器节点采集数据中不可缺少的部分,没有位置信息的监测消息通常毫无意义。为了提供有效位置信息,随机部署的传感器节点必须能够在布置后确定自身位置。由于传感器节点存在资源有限、随机部署、通信易受环境干扰甚至节点失效等特点,定位机制必须满足自组织性、健壮性、能量高效、分布式计算等要求。现有的WSN定位算法根据定位机制的不同,可以分为基于测距的方法与不基于测距的方法两类。基于测距的定位机制利用到达时间延迟、信号到达时差和接收信号强度来估计距离或来波方向,然后使用三边测量法或最大似然估计等计算未知节点的位置。而不基于测距的定位机制无需距离或角度信息,或者不用直接测量这些信息,仅根据网络的连通性等信息实现节点的定位。距离无关的定位机制的定位性受环境因素的影响小,虽然定位误差相应有所增加,但定位精度能够满足多数传感器网络应用的需求,是目前大家重点关注的定位机制[20]。4)无线通信技术传感器网络需要低功耗短距离的无线通信技术。IEEE802.15.4标准是针对低速无线个人域网络的无线通信标准,把低功耗、低成本作为设计的主要目标。由于IEEE802.15.4标准的网络特征与无线传感器网络存在很多相似之处,因此很多研究机构把它作为无线传感器网络的无线通信平台。另外,超宽带无线通信以其高速率、低功耗、抗多径、低成本等诸多优势,已成为室内短距离无线网络的首选方案,这为WSN的数据传输开辟了一种崭新的方案。5)时间同步传感器网络中由于节能策略,节点在大部分时间是休眠的,所以要求解决通信同步问题,即通信节点双方需要在通信时同时唤醒。另外,传感器网络是一个分布式网络,所有节点在通信上地位对等,没有优先级可言。所以要让整个网络能够工作在有效状态,往往需要做到全网或者一定范围内所有节点的同步,而不是通信双方的简单同步。2.6无线传感器网络拓扑结构从无线传感器组网形态和方法来看,有集中式、分布式和混合式。集中式类似于移动通信的蜂窝结构,可以集中管理;分布式结构类似于Ad-hoc网络结构,可自组织网络接入连接,可以分步管理;混合式结构是集中式和分布式结构的组合。其中无线传感器按节点功能及结构层次来看,有可分为平面网络结构、分级网络结构、混合网络结构以及Mesh网络结构[21]。1)平面网络:结构如下图2-2所示,是无线传感器网络中最简单的拓扑结构,每个节点都为对等结构,具有完全一致的功能特性,也就是每个节点包含相同的MAC、路由、管理和安全等协议。但是由于采用自组织协同算法形成网络,其组网算法比较复杂:图2-2无线传感器网络平面网络结构Fig2-2levelnetworkstructureofWirelesssensornetwork2)分级网络结构(层次网络结构):如下图2-3所示,分级网络分为上层和下层两个部分—上层为中心骨干节点;下层为一般传感器节点。骨干节点之间或者一般传感器节点间采用的是平面网络结构,然而骨干节点和一般节点之间采用的是分级网络结构。一般传感器节点没有路由、管理及汇聚处理等功能。图2-3无线传感器网络分级网络结构Fig2-3hierarchicalnetworkstructureofwirelesssensornetwork3)混合网络结构:如下图2-4所示,混合网络结构时无线传感器网络中平面网络结构和分级网络结构的一种混合拓扑结构。这种结构和分级网络结构不同的是一般传感器节点之间可以直接通信,可不需要通过汇聚骨干节点来转发数据,但是对所需硬件成本更高[22]。图2-4无线传感器网络的混合网络结构Fig2-4hybridnetworkstructureofWirelesssensornetwork4)Mesh网络结构:如下图2-5所示,这是新型的网络拓扑结构,这是种规则分步的网络,不同于完全连接的网络结构。通常只允许和节点最近的邻居通信。网络内部的节点一般也是相同的,因此Mesh网络也称为对等网。由于通常Mesh网络结构节点之间存在多条路由路径,网络对于单点或单个链路故障具有较强的容错能力。其中优点就是尽管所有节点都是对等的地位[23],且具有相同的计算和通信传输功能,某个节点可被指定为簇首节点,而且可执行额外的功能,一旦簇首节点失效,另外一个节点可以立刻补充并接管原簇首那些额外执行的功能。图2-5无线传感器网络的Mesh网络结构Fig2-5MeshnetworkstructureofWirelesssensornetwork从技术上看,基于Mesh网络结构的无线传感器具有以下特点:a.由无线节点构成网络:这种类型的网络节点是由一个传感器或执行器构成且连接到一个双向无线收发器。b.节点按照Mesh拓扑结构部署:网内每个节点至少可以和一个其他节点通信,这种方式可以实现比传统的集线式或星型拓扑更好地网络连接性。具有自我形成、自愈功能,以确保存在一条更加可靠的通信路径。c.支持多跳路由:来自一个节点的数据在其到达一个主机网关或控制器前,可以通过多个其余节点转发。通过Mesh方式的网络连接,只需短距离的通信链路,经受较少的干扰,因而可以为网络提供较高的吞吐率及较高的频谱复用效率。d.功耗限制和移动性取决于节点类型及应用的特点:通常基站或汇聚节点移动性较低,感应节点可移动性较高。基站不受电源限制,而感应节点通常由电池供电。e.存在多种网络接入方式:可以通过新型、Mesh等节点方式和其他网络集成。无线传感器节点结构:如下图2-6所示,无线传感器由传感器模块、处理器模块、无线通信模块和能量供应模块这四部分组成。其中,传感器模块(传感器和模数转换器)负责监测区域内信息的采集和数据转换;处理器模块(CPU、存储器、嵌入式操作系统等)负责控制整个传感器节点的操作,存储和处理本身采集的数据;无线通信模块(网络、MAC、收发器)负责与其他传感器节点进行无线通信;能量供应模块为传感器节点提供运行所需的能量,通常采用微型电池。图2-6无线传感器节点结构Fig2-6Wirelesssensornodestructure除了这四个模块外,传感器节点还可以包括其他辅助单元,如移动系统、定位系统和自供电系统等。由于传感器节点采用电池供电,因此尽量采用低功耗器件,以获得更高的电源效率。3空气质量监测系统硬件设计3.1ZigBee技术[24]3.2系统总体结构设计EEE802.15.4和ZigBee协议中明确定义了三种拓扑结构:星型结构(Star)、网状结构(Mesh)和星-网结构(ClusterTrec),如图3-1所示。在星型网络结构中,ZigBee协调器负责整个网络的控制,无其它路由节点,ZigBee终端设备直接与zigBee。协调器通信,终端设备间的通信则需通过协调器转发。这是最简单的拓扑结构,网络通信范围十分有限,单独使用这种拓扑结构的情况很少。图3-1Zigbee的三种网络拓扑结构Fig3-1ThreekindsnetworktopologystructureofZigBee在网状网络和簇树型网络中,ZigBee协调器负责网络的建立和初始参数设定,网络都可以通过ZigBee路由器进行扩展。但是,在簇树型网络中,路由器采用分级路由策略传送数据和控制信息,并且通常是基于信标(Beacon)的通信模式。而在网状网中则是完全对等的点对点通信,路由器不会定期发送信标,仅在网内设备要求时对其单播信标。对于簇树型网络,其通信路由相对单一,骨干网络中一旦有路由节点瘫痪,则相应区域就进入通信瘫痪状态,要等待该部分网络重组后,才能恢复通信。但是,簇树型网定期发送信标,使网内节点能做到很好的同步,便于节点定期进入休眠状态,降低功耗,延长网络寿命。在网状网中情况则恰好相反,完全的点对点通信使路由有多种选择,提高了网络的容错性,但是不定期发送信标使网络中节点很难达到同步,必须采取别的手段来实现,如广播。因此,网状结构与簇树结构的层次融合,必定是ZigBee网络拓扑结构的一个发展方向。网状网的优点是容错能力和可靠性高,缺点是不易维护和管理、费用高、安装复杂和不经济。基于以上分析,故设计选择星状网络拓扑结构。总体设计图如图3-2:图3-2总体设计图Fig3-2Overalldesign3.3传感器节点的硬件设计无线传感器网络节点的设计主要考虑以下几点原则:1)成本低:为了满足工业控制上的某些需要,无线传感器网络一般大量分布在被监测区域,因此无线传感器节点设计应尽量简单,降低成本。2)功耗低:无线传感器网络一般应用人工方式现场采集困难的高危环境下,工作人员往往无法接近的场所,终端节点一般要求不能经常更换供电设备,要求功耗尽可能较低。并要求节点通常在仅以小型电池供电的情况下,工作数月或更长。所以在无线传感器节点的设计中,节能是至关重要的。3)尺寸小:无线传感器节点尺寸应尽量小,保证对目标系统本身不会造成影响。并能被放置在任何物理环境下,能适应不同的环境要求。4)扩展性灵活性:无线传感器节点需要定义统一、完整的外部接口,在需要添加新的硬件部件时,可以在现有的节点上直接添加,不需要开发新的节点。同时,节点可以按照功能拆分成多个组件,组件之间通过标准接口自由组合,维护方便。在不同的应用环境下,选择不同组件自由配置系统,这样就不必为每个应用都开发一个全新的硬件系统[25]。3.3.1节点硬件总体结构如图3-3所示,无线传感器网络节点,一般由数据采集单元(各种传感器)、数据处理单元(微控制器等)、数据收发单元(射频收发器、天线等)、电池供电单元组成。可以根据具体要求在数据采集单元模块上进行相应的传感器的扩充以完成特定数据采集。图3-3传感器节点的硬件设计框图Fig3-3Hardwareblockdiagramofsensornode3.3.2处理器和无线通信模块HFZ-CC2430EM-22CC2430单片机是TI公司(德州仪器)生产的一款专用于IEEE802.15.4和ZigBee协议通信的片上系统解决方案。其RF内核是基于工业领先的射频通信芯片CC2420。在单个芯片上集成了CPU、存储器、常用片内外设和RF射频单元。它具有1个8位CPU(8051),主频达32MHZ,具有最大128KB可编程FLASH和8KB的SRAM,片内外设非常丰富,主要包括1个5通道8位至14位可编程ADC转换器、4个定时器(其中包括一个MAC定时器)、2个USART,1个DMA控制器、1个AES128协同处理器、1个看门狗定时器、1个内部稳压器、21个可编程I/O引脚,可配置为通用I/O,也可配置为外设专用引脚。CC2430芯片采用0.18μmCMOS工艺生产,在接收和发射模式下,电流损耗分别低于27mA和25mA。具有3种休眠模式,从休眠模式转换到正常模式仅需54us,特别适合要求电池长期供电的应用场合[26]。其主要特点如下:(1)高性能和低功耗的8051微控制器核。(2)集成符合IEEE802.15.4标准的2.4GHz的RF无线电收发机。(3)优良的无线接收灵敏度和强大的抗干扰性。(4)32,64,128KB在线系统可编程flash。(5)多通道DMA控制器。(6)非常少的外部组件。(7)低电流功耗(运行在32MHZ时,RX:27mA,TX:25mA)。(8)在休眠模式时仅0.9μA的电流功耗,外部的中断或RTC能唤醒系统。(9)在待机模式时少于0.6μA的流耗,外部的中断能唤醒系统。(10)低功耗到正常工作模式需要的时间极少。硬件支持CSMA/CA功能。(11)较宽的电压范围(2.0~3.6V)。(12)支持数字RSSI/LQI指示。(13)具有电池监测和温度传感器。(14)8通道8~14位模数转换的ADC。(15)集成AES安全协处理器。(16)带有2个强大的支持多组串行协议的USART。(17)1个符合IEEE802.15.4规范的MAC定时器,1个16位定时器和2个8位定时器。(18)21个通用I/O引脚,其中有2个具有20mA灌电流和拉电流能力。(19)灵活功能强大的的开发环境。图3-4CC2430内部结构示意图Fig3-4TheCC2430internalstructurediagramCC2430芯片内部集成了大量必要电路,因此只需很少的外围电路就可以正常运行并实现无线收发功能。图3-5是CC2430外围电路设计图[27]。图3-5CC2430外围电路设计Fig3-5CC2430peripheralcircuitdesign在图3-5中电容C8到C6通过除去杂波干扰稳定电压,还可以用来滤波,其电容值分别是220nF,220nF,100nF。0.1uF的电容C5可以防止单片机错误复位,部分去除杂波干扰。C14,C13,C12,C11,C10是对电源进行滤波以提高工作稳定性的去耦电容。一个PCB微波传输线和电感值分别为8.2nH,22nH,1.8nH的电感L1,L2,L3电感以及5.6pF的电容C9组成非平衡变压器,满足RF输出/输入对匹配电阻(50Ω)的要求。偏置电阻R2的阻值为56kΩ,32MHZ晶体振荡器的精密偏置电流由阻R1值为43kΩ的偏置电阻设置。用于正常工作的32MHZ晶振电路由电容值为22pF的电容C2,C1连接起来。用于休眠工作的32.768KHZ晶振电路由电容值为15pF的电容C4,C3连接起来,从而减少能量消耗。选用外置天线,选用两节干电池为低功耗的CC2430芯片供电[28]。3.3.2传感器模块1.温湿度传感器DHT90DHT90/91/95系列插针型温湿度传感器采用原装进口数字温湿度传感器芯片,引脚插针为标准2.54插针。该传感器品质卓越、响应超快、抗干扰能力强、性价比极高。他适用代工生产用户,免焊接、免水合处理,缩短开发时间,提高开发效率;精确测量相对湿度、温度、露点;全标定输出,使用时无需重新校准;卓越的长期稳定性;高精度两线制数字接口,直接与单片机相连;请求式测量,超低能耗;无需其他外部元件;自动休眠。实物如图3.6所示,由图可知提供4针单排引脚封装,从下至上为一到四号引脚。一号引脚SCK(时间线),二号引脚VDD(电源线),三号引脚GND(接地线),四号引脚DATA(数据线)。DHT90的工作电压范围为2.4-5.5V,最佳工作电压为3.3V,一般在二号引脚(VDD)和三号引脚(GND)之间加一个去耦电容,稳定电压。一号引脚(SCK)用于微处理器和DHT90的通信同步,不存在最小SCK频率,因为有一个完全静态逻辑的接口。四号引脚(DATA)是读取数据的三态门引脚。数据线在时钟线上升沿有效,在时钟线下降沿之后改变状态。当传输数据时,时钟线处于高电平时数据线需要坚持稳定,微处理器使数据线处于低电平来解决信号的冲突问题,因而需要上拉一个电阻拉高电平。DHT90是数字温湿度传感器系列中插针型的传感器。实物如图3-6,传感器输出全标定的数字信号,并把信号处理和传感元件连在一起。为确保产品的稳定性与可靠性采用采用专利的CMOSens技术。传感器主要由一个14位的A/D转换器,串行接口电路,一个由能隙材料制作的测试温度的元件和一个敏感的电容性聚合体测试湿度元件组成。默认14位分辨率输出温度值,12位分辨率输出湿度值,通过状态寄存器将为12位和8位[29]。图3-6DHT90实物Fig3-6DHT90因此,DHT90具有体积小,全标定,数字输出,低功耗,卓越的长期稳定性,4针单排引脚封装易于安装,超快响应,可靠的CRC校验功能,抗干扰能力强和性价比高等优点。DHT90的测湿范围为0~100%RH,测温范围为-40~120℃,温度响应时间小于30s,湿度响应时间为8s,温度测量精度为±0.5℃,湿度测量精度为±4.5%RH,安装2.54mm插针。传感器DHT90的通信实现主要由以下几步组成。首先是启动传感器,根据DHT90的供电电压范围选择适当的电压向传感器通电,上电后传感器进入休眠状态,在此状态的11ms内不可以向传感器发送任何命令。传感器启动后,开始发送命令,先由微处理器向传感器发送一个“启动传输”的时序,完成传输采集数据的初始化工作。“启动传输”时序如图3-7所示,SCK高电平时DATA是低电平,随后SCK翻转为低电平,之后SCK翻转为高电平时DATA也变为高电平[20]。图3-7“启动传输”时序Fig3-7Starttimingtransmission初始化时序发送之后,微处理器向DHT90发送测量命令,一个字节的测量命令的高三位是地址位(目前值为000),低五位是命令位(湿度测量为00101,温度测量为00011,写状态寄存器为00110,读状态寄存器为00111,软复位为11110。DHT90通过第八个和第九个SCK时钟下降沿之后DATA先后为低电平和高电平来确定接收到命令,正确接收。微处理器向DHT90发送了测量命令,并确定DHT90已经正确接收到了命令,之后就是耐心的等待测量数据,由DHT90感知采集数据,然后DHT90通过把DATA变为低电平并进入空闲模式来表示数据测量完毕。测量数据结束前微处理器不可以触发SCK时钟。测量完成的数据在读出之前可以先存储在DHT90的存储器中[21]。数据测量完毕之后重新启动时钟,开始向微处理器传输数据,测量时序如图3-8所示。如图由一个字节的CRC校验和两个字节的测量数据形式传输结果,每个字节间通过拉低DATA来判断,数据右对齐从MSB开始传输,最后一位叫做确认位用来结束通信[22]。图3-8测量时序Fig3-8Measurementtime微处理器用复位串口时序如图3-9,避免中断与DHT90的通信。发送完复位时序后发送其他命令之前要发送一个“启动传输”时序[23]。图3-9复位串口时序Fig3-9ResetserialporttimingDHT90与CC2430的接口电路如图3-10所示。图3-10DHT90与CC2430的接口电路Fig3-10DHT90andCC2430interfacecircuit通过上图可得,DHT90的一号引脚SCLK与CC2430的P1_0口相连,二号引脚VDD与电源相连,三号引脚GND接地,四号引脚DATA与CC2430的P1_3口相连,其中电源与地间接上0.1uF的去耦电容,提供稳定电压,数据线与电源间接一个10K的上拉电阻提高驱动能力。空气质量传感器QS-01QS-01是一种二氧化锡半导体气体传感器,对各种空气污染源(诸如:VOC)都有很高的灵敏度,并且响应时间很快,传感器采用塑料外壳,有3个引脚,可在极低的功耗情况下获得极好的感应特性,这款产品非常适合应用于空气品质控制系统、排风电扇和空气清新机。空气质量传感器QS-01的外部结构图如图3-11所示。其中1号管脚为电源线接5.0V电压,2号管脚为模拟信号线,3号管脚为接地线。其中2号管脚和3号管脚之间需要接一个适当阻值的负载电阻RL[30]。图3-11空气质量传感器QS-01外部结构图Fig3-11TheairqualitysensorQS-01externalstructurediagram传感器QS-01内部由一个传感器电阻RS和一个加热器电阻RH组成。传感器电阻RS在空气中的阻值范围为5KΩ~20KΩ,当有有害气体时RS变小,传感器电阻RS变化体现在负载电阻RL上的电压变化,RS=(VC*RL)/VRL-RL。2号管脚信号线与CC2430的内部A/D转化器接口P0.7口相接,CC2430芯片的24号引脚为其内部的A/D转换器提供1.8V的工作电压,因此要保证2号管脚的输出电压VRL小于1.8V。经计算设定负载电阻RL阻值为280Ω,加热器电阻RH为91Ω[31]。图3-12是空气质量传感器QS-01与CC2430的接口电路。图3-12空气质量传感器QS-01与CC2430的接口电路Fig3-12theairqualitysensorQS-01andtheinterfacecircuitofCC24303.4汇聚节点的硬件设计无线传感器网络中汇聚节点由处理器模块,无线收发模块,电源模块组成。其中处理器模块和无线收发模块与传感器节点形同都采用HFZ-CC2430EM-22模块,不同的是电源模块。汇聚节点一直处于开启状态,等待接收传感器节点的采集数据,所以汇聚节点应该一直供电,本系统选用USB供电模式。系统中汇聚节点将处理后的采集数据通过串口发送给PC机进而进行实时数据监控,因此在汇聚节点上要增设一个RS-232串口电路,这里我们采用西安华凡科技有限公司的SmartRF07DB母板来实现电源模块和串口电路。3.4.1电源模块汇聚节点的电源模块电路如图3-13所示。图3-13电源模块电路原理图Fig3-13schematicdocumentofthepowermodule由图可知该模块可以满足多种供电方式,如电池供电、实验室电源供电、PWRjack供电和USB供电。本系统的汇聚节点采用USB供电方式。当该模块与PC机通过USB总线连接时,可以直接获取USB总线上的电源,经板子上的LP2985-3.3线性稳压芯片后输出3.3V(和1.8V)电压。3.4.2RS-232串口模块RS-232接口经常直接于PC机或者其他设备进行通信,包括MAX3232串口电平转换器,标准DB9female接口。RS-232接口原理图如图3-14所示[32]。图3-14RS-232接口原理图Fig3-14RS-232interfacediagramMAX3232为双通道串口电平转换芯片,其与串口线和CC2430的连接情况如下。MAX3232的RS-232电平收发端R2IN与T20UT引脚和串口线的收发端RS232-RTS与RS232-CTS引脚相连,TTL电平收发端T2IN与R2OUT引脚和CC2430的P0.5与P0.4端口相连。MAX3232的TllN引脚接CC2430的P0.3引脚,RIOUT引脚接CC2430的P0.2引脚,接收CC2430汇聚节点通过ZigBee通信传送过来的数据。4空气质量监测系统软件设计4.1ZigBee协议无线传感器网络节点要进行相互的数据交流就要有相应的无线网络协议(包括MAC层、路由、网络层、应用层等),传统的无线协议很难适应无线传感器的低花费、低能量、高容错性等的要求,这种情况下,ZigBee协议应运而生。Zigbee的基础是IEEE802.15.但IEEE仅处理低级MAC层和物理层协议,因此Zigbee联盟扩展了IEEE,对其网络层协议和API进行了标准化。Zigbee是一种新兴的短距离、低速率的无线网络技术。主要用于近距离无线连接。它有自己的协议标准,在数千个微小的传感器之间相互协调实现通信。这些传感器只需要很少的能量,以接力的方式通过无线电波将数据从一个传感器传到另一个传感器,所以它们的通信效率非常高。ZigBee是一个由可多到65000个无线数传模块组成的一个无线数传网络平台,十分类似现有的移动通信的CDMA网或GSM网,每一个ZigBee网络数传模块类似移动网络的一个基站,在整个网络范围内,它们之间可以进行相互通信;每个网络节点间的距离可以从标准的75米,到扩展后的几百米,甚至几公里;另外整个ZigBee网络还可以与现有的其它的各种网络连接。通常,符合如下条件之一的应用,就可以考虑采用ZigBee技术做无线传输:需要数据采集或监控的网点多;要求传输的数据量不大,而要求设备成本低;要求数据传输可靠性高,安全性高;设备体积很小,不便放置较大的充电电池或者电源模块;电池供电;地形复杂,监测点多,需要较大的网络覆盖;现有移动网络的覆盖盲区;使用现存移动网络进行低数据量传输的遥测遥控系统;使用GPS效果差,或成本太高的局部区域移动目标的定位应用。值得注意的是,在已经发布的ZigBeeV1.0中并没有规定具体的路由协议,具体协议由协议栈实现如图4-1。图4-1zigbee协议栈Fig4-1theZigBeeprotocolstackZigBee协议的基本要求包括:一个8位处理器,完整协议软件需要32K字节的ROM,而最小的协议软件仅需要4K字节的ROM。ZigBee协议易于实现、简单、紧凑,虽然该协议模型是在标准开放式系统互连(OSI)模型之上建立的,但只定义涉及到ZigBee的层。ZigBee协议总共四层分别为:应用层(APL)、网络层(NWK)、介质接入控制子层(MAC)和物理层(PHY)。应用层由制造商制订的应用对象、ZigBee设备对象(ZDO)和应用支持子层(APS)组成,该层的功能是为网络层提供服务接口、定义用户对象和提供必要函数。网络层的功能是定义网络拓扑结构、传送数据、路由查找、抛弃或者接受其他节点、实现节点离开或者加入网络。MAC层的功能是支持PAN连接和分离、为两个对等MAC实体提供可靠链路、访问无线信道并产生同步信号和网络信号。物理层的功能是定义了MAC层与物理层的接口,定义了物理无线信道的信道频率、信道接入方式和信道能量监测。每层为上一层提供服务:管理实体提供其他全部所有服务,数据实体只提供数据传输服务。通过服务接入点(SAP)每一层为上一层提供服务,相应的功能是通过SPA提供的原语实现的。4.2IAR开发环境介绍本系统设计选择了IAREmbeddedWorkbench作为软件开发平台,其界面友好,调试功能强大得到了广泛应用。IAREmbeddedWorkbench为开发不同的目标处理器的项目提供了强有力的集成开发工具。该集成开发环境中IAR的C/C++编辑器,汇编工具,链接器,库管理器,文件编辑器,工程管理器和C-SPY调试器。通过其内置的针对不同芯片的代码优化器,IAREmbeddedWorkbench可以为8051系列芯片生成非常高效和可靠的FLASH/PROMable代码。不仅有这些过硬的技术,IARSystems还能提供专业的全球技术支持[32]。IAREW适用于开发基于8位、16位以及32位微处理器的嵌入式系统,其集成开发环境具有统一界面,为用户提供了一个易学和具有最大代码继承能力的开发平台,以及对各种特殊目标的支持。IARSystems的C/C++编译器可以生成高效可靠的可执行代码,并且应用程序规模越大,效果越明显;与其他的工具开发商相比,系统提示使用全局和针对具体芯片的优化技术;连接器提供的全局类型检测和范围检测对于生成目标代码的质量是至关重要的。IAREmbeddedworkbench生成的可执行代码可以运行于更小尺寸、更低成本的微处理之上,从而降低了产品的开发成本。IAREmbeddedworkbench集成的编译器的主要产品特征有:(1)高效的PROMable代码。(2)完全标准C兼容。(3)内建对芯片的程序速度和大小优化器。(4)目标特性扩充。(5)版本控制和扩展工具支持良好。(6)便捷的中断处理和模拟。(7)瓶颈性能分析。(8)高效浮点支持。(9)内存模式选择。用IAREW进行开发的典型步骤如下:第一步:配置开发环境,选择芯片类型、程序堆栈大小、仿真器类型等;第二步:编辑并编译源文件;第三步:连接目标文件,包含调试选项;第四步:调试程序,若发现错误,返回第二步,修改文件后继续进行;第五步:调试通过后,去掉调试选项,重新连接;第六步:生成程序代码,下载到Soc片上系统中。4.3传感器节点应用程序设计本系统中的无线传感器节点的工作流程是先进行初始化工作,包括初始化操作系统、应用帧层协议、MAC层协议、非易失变量、FLASH存储、各个硬件模块、堆栈、系统时钟等十余项,形成芯片MAC地址,监测芯片电压。初始化完成后,传感器节点发出信号请求加入网络,这里采用父节点直接方式加入网络,具体在前面做过介绍,如果传感器节点入网成功,传感器节点开始对监测区域内的对象进行数据采集,数据采集结束后向汇聚节点即协调器发送采集数据,发送成功之后返回到信息采集阶段,继续采集数据,周而复始不断采集数据发送数据[29]。以下是程序设计的主要实现过程,以温度作为监控采集的数据。1.主程序设计终端节点的主要功能:加入到现在的网络中去,能够读取采集数据信息,将其发送至中心节点,能够接收来自中心节点传来的数据和命令。终端节点流程图如图4.5所示。终端节点首先进行初始化,包括处理器、开发板、协议栈、中断、串口、指示灯以及其他一些外设。其次发送连接网络信号,试图加入网络,如果加入网络失败将继续尝试若干次。成功加入网络之后,进行数据采集并发送,如果发送失败继续尝试,直到发送成功为止。2.初始化程序在CC2430上电复位后,首先进行初始化工作,包括协议栈初始化、串口初始化、定时器初始化、硬件初始化、变量初始化、AD初始化等。图4-2终端传感器节点流程图Fig4-2FrameformatofterminalnodevoidSAPI_Init(bytetask_id);//任务初始化函数voidHalAdcInit(void);//AD初始化HAL_BOARD_INIT();//硬件初始化zmain_ram_init();//协议栈初始化InitBoard(OB_COLD);//I/O串口初始化3.无线数据的收发无线数据的发送:voidzb_SendDataRequest(uint16destination,uint16commandId,uint8len,uint8*pData,uint8handle,uint8txOptions,uint8radius);//发送函数afStatus_tAF_DataRequest(afAddrType_t*dstAddr,endPointDesc_t*srcEP,uint16cID,uint16len,uint8*buf,uint8*transID,uint8options,uint8radius);//发送数据部分函数在该程序中,首先进行初始化,关闭接收机,并定义发送数据包字节数,在不超过最大字节数的前提下,将采集到的温度传至帧格式的数据载荷中存储,之后进行发送。无线数据的接收:voidzb_ReceiveDataIndication(uint16source,uint16command,uint16len,uint8*pData);//接收函数在该程序中,首先进行初始化,打开接收机,当上一个数据包已经成功读取完毕,之后进行接收。4.数据采集程序uint8myApp_ReadTemperature(void);//温度采集在该程序中,首先对温度传感器ADC进行初始化,然后进行温度采集并取平均值。4.4汇聚节点应用程序设计本系统中汇聚节点即协调器的工作流程情况为先是进行初始化,具体情况与传感器节点类似。然后组建网络,组建网络过程在上文已经做过详细的介绍,组网成功之后汇聚节点等待传感器节点的采集数据,当收到传感器节点的采集数据时,汇聚节点通过ZigBee无线通信技术接收数据,对采集数据进行一定处理后通过串口发送给PC机然后向传感器节点发送应答信息,发送完毕返回到之前的等待信息状态,依次循环下去[33]。1.主程序设计协调器的主要功能:组建网络,接收数据,处理数据,串口发送数据至PC机并进行显示。程序流程图[34]如图4-3所示。初始化包括处理器、开发板、协议栈、中断、串口、指示灯以及其他一些外设。协调器节点首先进行初始化,然后初始化一个网络,网络的具体形成见上一小节,如果网络初始化成功,可以在液晶屏上看到网络初始化的一些信息。如协调器节点的物理地址、已建立网络的网络ID号和频道号等。之后等待来自终端的采集数据信息,将其通过串口发送至PC机进行显示,同时,其所有信息都可以在液晶屏上进行显示。初始化函数和无线数据的收发与终端节点类似,这里就不再重述。仅在接收部分加入了与计算机串口通信程序,这一部分将在下一章进行简单介绍。图4-3汇聚节点流程图Fig4-3sinkframeformat2.串口通信及PC显示程序voiddebug_str((uint8*)buf);//将采集到的温度值发送至串口首先进行串口初始化,将采集到的温度信息通过串口发送字符串函数传至计算机,并在每次传完温度后将采集到的温度显示在串口调试助手界面上。3.液晶显示程序voidHalLcdWriteString(char*str,uint8option);//在LCD上显示行voidHalLcdWriteScreen(char*line1,char*line2);//在LCD上显示所有的行通过液晶显示程序将一些初始化信息及采集到的数据信息显示到开发母版上的LCD上面,能够实时对程序进行跟踪,为程序设计的完成有很大的帮助。5系统测试与结果分析5.1测试方案本测试方案利用一个网络协调器、一个终端节点虚拟一个实验平台,首先在平台上进行硬件测试,然后利用数字温度传感器和ZigBee芯片搭建温度采集系统,在实验平台上进行数据传输和显示测试,在PC机上运行的IAR开发环境可以实时显示采集的数据[36],从中可以看出,所设计的节点能达到预期的设计目的,完成对空气质量数据采集的整体要求。5.1.1硬件测试硬件测试主要侧重于检查线路板有无断路或短路的地方,使用的芯片及元器件有无问题。然后对各个主要部分分别进行调试。系统中的硬件调试和软件调试是不能分开的,许多硬件错误是在软件调试过程中被发现和纠正。但通常是先排除明显的硬件故障之后,再和软件结合起来调试。硬件调试的大概步骤如下[35]:1)在系统加电之前,先用万用表等工具,测试一下电源和地是否短路,然后根据硬件接线图仔细检查线路的正确性,元器件封装的正确性,元件安装是否符合要求。2)在系统加电后,检查电源芯片输出的电压是否达到标准值,然后逐个检查各个插件上引脚的电平是否正常。经过这两步完成硬件的调试工作。5.1.2温度采集及串口显示测试选取实验平台中的一个终端节点来进行温度采集及串口显示测试。终端节点上附加数字温度传感器DHT90,并将终端节点通过串口线与PC相连,编写不用组网通信的简单程序测试温度采集与串口显示功能。5.1.3数据通信测试采用2块ZigBee模块来组建个简单的网络,其中一个作为汇聚节点,另一个作为ZigBee终端节点;数据采集终端我们采用的是美国DALLAS公司生产的DHT90可组网数字温度传感器,数据采集终端直接连接到ZigBee开发母版,同时ZigBee协调器节点与PC机之间用串口线相连。ZigBee终端节点将采集到的数据信息通过无线的方式将数据传送到ZigBee协调器节点,ZigBee协调器节点通过RS232串口传送给PC机参考文献[1]朱天乐.室内空气污染控制[M].北京:化学工业出版社,2003.[2]潘峰.室内空气污染不容忽视[J].科学时报,1999(3)23.[3]周中平,赵寿堂,朱立.室内污染检测与控制[M].北京:化学工业出版社,2003[4]参见《民用建筑工程室内环境污染控制规范》1.0.3节,中华人民共和国国家标准GB50325—2001.[5]檀建国.居室装修污染对人体健康的危害与防治[J].邯郸医学高等专科学报,2005,18.[6]孙利民,李建中,陈渝,朱红松.无线传感器网络[M].北京:清华大学出版社,2005.5.[7]刘坚.无线环境监测网络网关节点和数据终端的设计[D].上海交通大学,2009年.[8]钟辉,钱志鸿,刘影,刘丹,王雪.无线传感器网络中节能吉林大学学报(工学版),2011年3月.[9]陈玉兰.基于CC2420的无线传感器网络的硬件节点设计[D].东南大学,2006年.[10]杨宁,田辉,张平,李立宏.无线传感器网络拓扑研究[J].无线电工程,2006年,3(2):11~13.[11]雷震洲,面向低速率应用的全球标准zigbee.现代电信科技.2004年12月.[12]龙承志.马玉秋.沈树群.基于低速率的短距离无线通信网络新技术—ZigBee.数据通信.[13]王权平,王莉.Zigbee技术及其应用.现代电信科技.2004年9月.50-65.[14]原弈,苏红根.基于zigbee技术的无线网络应用研究.计算机应用软件.2004年7月.06-34.[15]彭天平,廖晓红.基于zigbee的WPAN的构建方案.电信工程技术与标准.2003年5月.08-210.[16]崔文华.ZigBee协议栈的研究与实现[D].华东师范大学,2007.[17]耿瑞芬.ZigBee无线传感器网络的研究与应用[D].山东大学.2007.[18]LinKe,Huangtinglei,Lilifang.DesignofTemperatureandHumidityMonitoringSystemBasedonZigbeeTechnology[J].IEEE,2009.[19]Lee,Jin-Shyan.DesignandimplementationofZigBee/IEEE802.15.4nodesforwirelesssensornetworks[C].MeasurementandControl,August,2006,39(7):204-208.[20]BoChen,MingguangWu,ShuaiYao,NiBinbin.ZigBeeTechnologyandItsAppliationonWirelessMeter-readingSystem[C].IndustrialInformatics.2006IEEEInternationalConferenceonAug,2006Page(s):1257-1260.[21]闫沫.ZigBee的协议栈的分析与设计[D].厦门大学,2007.[22]张瑛瑛,朱双东.基于ZigBee的数据采集系统[J].宁波大学学报(理工版),2009年9月,第22卷第3期.[23]金德新,郭宇.应用于无线数据采集网络的ZigBee技术[J].鞍山师范学院学报,2009-08,11(4):54-57.[24]陆克中,黄刘生,万颖渝,徐宏力.无线传感器网络中传感器节点的布置[J].小型微型计算机系统,2006年11月,27(11):2003~2006.[25]李莉,李海霞,刘卉.基于无线传感器网络的温室环境监测系统[J].农业机械学报,2009年9月,第40卷增刊.[26]武风波,强云霄.基于ZigBee技术的远程无线温湿度测控系统的设计[J].西北大学学报(自然科学版),2008年10月,第38卷第5期.[27]黄海.ZigBee技术在无线定位领域的应用[J].全国计算机网络与通信学术会议论文集,2009.[28]成锐,李静,雷鸣,雷志勇.基于ZigBee的无线传感器网络设计方案[J].电子元器件应用,2007,(12).[29]屈明佑,雷航,郭文生.基于ZigBee的现场数据采集系统设计与实现[J].电讯技术,2008,(04).[30]梁振亚,邓壮,陈明.基于ZigBee的信息采集系统设计研究[J].黑龙江科技信息,2007,(23)[31]穆乃刚.ZigBee技术简介[J].电信技术,2006.[32]宋迪,程志华,牛斗,姚翔.基于SHT11的WSN在矿井测控系统中的应用[J].传感器世界,2008年6月:45~49.[33]张恺,刘志勤.基于WSN的汽车尾气监测系统汇聚节点硬件设计[J].计算机工程与设计,2010年,32(7):1469~1472.[34]孙德辉,龚关飞,杨扬.基于CC2430的无线传感器网络系统设计[J].现代电子技术,2010年,第13期总第324期:66~72.[35]耿军涛,周小佳,张冰洁.基于无线传感器网络的大气环境监测系统设计[J].西华大学学报自然科学版,2007年7月,26(4):44~46.[36]于金涛,韩轲,姜海涛,李俊玲,丁明理,李云.基于CC2430的无线传感器网络系统节点设计[J].哈尔滨商业大学学报,2010年4月,26(2):192~195.附录C部分程序/*******************************************************************函数功能:发送函数*入口参数:帧格式参数*返回值:无******************************************************************/voidzb_SendDataRequest(uint16destination,uint16commandId,uint8len,uint8*pData,uint8handle,uint8txOptions,uint8radius){afStatus_tstatus;afAddrType_tdstAddr;txOptions|=AF_DISCV_ROUTE;//Setthedestinationaddressif(destination==ZB_BINDING_ADDR){//BindingdstAddr.addrMode=afAddrNotPresent;}else{//UseshortaddressdstAddr.addr.shortAddr=destination;dstAddr.addrMode=afAddr16Bit;if(ADDR_NOT_BCAST!=NLME_IsAddressBroadcast(destination)){txOptions&=~AF_ACK_REQUEST;}}//SettheendpointdstAddr.endPoint=sapi_epDesc.simpleDesc->EndPoint;//Sendthemessagestatus=AF_DataRequest(&dstAddr,&sapi_epDesc,commandId,len,pData,&handle,txOptions,radius);if(status!=afStatus_SUCCESS){SAPI_SendCback(SAPICB_DATA_CNF,status,handle);}}/*******************************************************************函数功能:接收函数*入口参数:帧格式参数*返回值:无******************************************************************/CONSTuint8strDevice[]="Device:0x";CONSTuint8strTemp[]="Temp:";CONSTuint8strBattery[]="Battery:";voidzb_ReceiveDataIndication(uint16source,uint16command,uint16len,uint8*pData){uint8buf[32];uint8*pBuf;uint8tmpLen;uint8sensorReading;if(command==SENSOR_REPORT_CMD_ID){sensorReading=pData[1];//ReceivedreportfromasensortmpLen=(uint8)osal_strlen((char*)strDevice);//Iftoolavailable,writetoserialportpBuf=osal_memcpy(buf,strDevice,tmpLen);_ltoa(source,pBuf,16);pBuf+=4;*pBuf++='';if(pData[0]==BATTERY_REPORT){tmpLen=(uint8)osal_strlen((char*)strBattery);pBuf=osal_memcpy(pBuf,strBattery,tmpLen);*pBuf++=(sensorReading/10)+'0';//conventmsbtoascii*pBuf++='.';//decimalpoint(batteryreadingisinunitsof0.1V*pBuf++=(sensorReading%10)+'0';//convertlsbtoascii*pBuf++='';*pBuf++='V';}else{tmpLen=(uint8)osal_strlen((char*)strTemp);pBuf=osal_memcpy(pBuf,strTemp,tmpLen);*pBuf++=(sensorReading/10)+'0';//conventmsbtoascii*pBuf++=(sensorReading%10)+'0';//convertlsbtoascii*pBuf++='';*pBuf++='C';}*pBuf++='\r';*pBuf++='\n';*pBuf='\0';#ifdefined(MT_TASK)debug_str((uint8*)buf);#endif//canalsowritedirectlytouart}}/*******************************************************************函数功能:温度测量*入口参数:无*返回值:温度返回给载荷******************************************************************/uint8myApp_ReadTemperature(void){#ifdefinedHAL_MCU_CC2430uint16value;/*ClearADCinterruptflag*/ADCIF=0;ADCCON3=(HAL_ADC_REF_125V|HAL_ADC_DEC_512|HAL_ADC_CHN_TEMP);/*Waitfortheconversiontofinish*/while(!ADCIF);/*Gettheresult*/value=ADCL;value|=((uint16)ADCH)<<8;/**valuerangesfrom0to0x8000indicating0Vand1.25V*VOLTAGE_AT_TEMP_ZERO=0.743V=19477*TEMP_COEFFICIENT=0.0024V/C=62.9/C*Thesepar

温馨提示

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

评论

0/150

提交评论