本科毕业设计-基于ZigBee的无线定位系统的设计_第1页
本科毕业设计-基于ZigBee的无线定位系统的设计_第2页
本科毕业设计-基于ZigBee的无线定位系统的设计_第3页
本科毕业设计-基于ZigBee的无线定位系统的设计_第4页
本科毕业设计-基于ZigBee的无线定位系统的设计_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

PAGEPAGE34学士学位论文题目名称:基于ZigBee的无线定位系统的设计学生姓名:院系:信息技术学院专业年级:电子信息科学与技术06级指导教师:职称:讲师2010年5月23目录题目 PAGEREF_Toc262734825\hI摘要及关键字 I1前言 11.1国内外无线定位研究现状 1HYPERLINK\l"_Toc262734829"1.2无线传感器网络及其定位存在问题 21.3设计思路及目标 32设计方案论证 33ZigBee技术及协议栈概述 73.1ZigBee技术简介 73.1.1ZigBee发展概述 73.1.2ZigBee技术特点 73.2ZigBee协议栈概述 83.3ZigBee网路构成 93.3.1设备类型 93.3.2拓扑结构 103.4基于RSSI的定位算法分析 113.4.1距离计算方法 PAGEREF_Toc262734841\h113.4.2节点定位基本原理 124基于ZigBee无线定位系统设计 144.1定位系统硬件电路设计 734844\h144.1.1硬件总体规划 144.1.2主控芯片CC2430/CC2431 154.1.3功能模块的设计 47\h164.2定位系统软件设计 174.2.1软件开发平台 174.2.2定位节点软件设计 184.2.3节点设置及上位机软件设计 224.3数据传输 264.3.1PC机与网关间串口通信 26HYPERLINK\l"_Toc262734854"4.3.2网关与节点间的无线通信 285系统的测试与分析 296结论 30参考文献 32致谢 33附录1 34附录2 35基于ZigBee的无线定位系统的设计姓名:朱艳辉专业:电子信息科学与技术指导教师:宫鹤摘要:基于IEEE802.15.4标准的ZigBee技术是一种新兴的低成本、低功耗、低速率的短距离无线通信技术。随着Zighee技术越来越多地被用于家庭自动化、遥测遥控、汽车自动化和医疗护理等应用领域,基于ZigBee网络的实时定位问题正日益受到关注。本论文主要研究了基于ZigBee网络的无线定位技术,讨论了基于RSSI定位算法的无线传感器网络定位机制,并在此基础上设计了一种低成本、实用的,针对室内环境的无线定位系统。该系统包括硬件平台、节点通信程序和上位机监测软件三部分。其中,硬件平台以集成了射频与51微控制器的CC2430/CC2431芯片为核心,该平台包括射频模块、辅助电路、功能指示电路等。实际节点可以根据其类型特点,选取硬件电路的不同部分加以实现。节点通信程序的开发以TI公司提供的Z-Stack协议栈为基础,论文介绍了节点间通信流程,给出了各类节点详尽的通信实现方法。在IAREmbeddedWorkbench(EW)环境中编写了上位机监测软件,论文给出了详细的软件实现方案。关键字:ZigBee技术;无线定位;RSSI;CC2430/CC2431;Z-stackTheDesignoftheWirelessLocationSystembasedonZigBeeName:ZhuYanhuiMajor:ElectronicInformationScienceandTechnologyTutor:GongHeAbstract:ZigBeetechnology,basedontheIEEE802.15.4protocol,isanewlydevelopedshortrangewirelesscommunicationtechnologywiththemeritsoflowcost、lowpowerconsumptionatcomparablelowerdatarate.WhiletheZigBeetechnologyismoreandmorefrequentlyadoptedinapplicationareaslikehomeautomation,telemeterandremotecontrol,mobileautomation,medicaltreatmentandsoon,thereal-timelocalizationintheZigBeenetworkbecomesahottopicrecently.Thisthesis,aimingatZigBeenetwork,investigatesthewirelesslocation,DiscussionofRSSI-basedlocationalgorithmforwirelesssensornetworkpositioningmechanismandonthisbasis,designsalow-costandpracticalforindoorwirelesspositioningsystem.Thispaperachievesalocationsystem,threepartsareincluded.Theyarehardwareplatform,communicationprogramofnodesandPCmonitorsoftware.ThecoreofhardwareplatformisCC2430whichisintegratedbyRFand51MCU,thelocalizationnodesaredesignedandmade.ItincludesRFmodule,auxiliarymoduleandfunctionindicationcircuits.Inactualapplications,Basedonthefunctiondifferencesofnodes,differentpartsofthehardwareplatformcanbeselectedtoachievecorrespondingfunctions.TheexploitationofnodecommunicationprogramisbasedonZ-StackprotocolstackwhichisprovidedbyTI,Thepaperintroducesthenodescommunicationflowelaborate.Theachievementwaysofdifferentkindsofnodesaregiven.InIAREmbeddedWorkbench(EW)circumstance,thePCmonitorsoftwareiscompiled,elaboratesoftwaresolutionisproposedinthispaper.Keywords:ZigBee;WirelessLocation;RSSI;CC2430/CC2431;Z-stack1前言近年来,随着技术的进步,低功耗多功能的无线传感器网(WSN,WrielessSensorNetwork)也随之应运而生[1]。无线传感器网络可以无处不在,能够广泛应用于军事、医院、地下煤矿、智能家居、大型车间和仓库管理等领域。无线传感器网络不断进行数据信息的采集,其中位置信息是不可或缺的一部分,如在战场侦察、地下煤矿、火灾等现场的监控应用中,都需要知道传感器节点的位置信息人们对无线定位的需求与日俱增,尽管全球定位系统GPS导航逐渐深入到人们的日常生活中,具有定位精度高、实时性好、抗干扰能力强等优点,但GPS设备通常能耗高、体积大、成本高,更适应于无遮挡的室外环境。在一些特定环境中(如室内、水下,地下煤矿等),GPS会由于接收不到卫星信号而失效;另一方面,在多数先线传感器网络应用中,要求传感器节点小巧,在这样的情况下,GPS就显得无能为力了。总得来讲,GPS定位不适合在室内环境中使用。基于ZigBee无线传感器网络的出现为室外或室内的无线定位注入了新的活力,其综合了传感器技术、嵌入式计算机技术、现代网络及无线通信技术、分布式信息处理等技术,具有灵活、成本低、易于布置等特性,能方便准确的采集各类信息。近年来,越来越多的企业和研究单位开始关注这种短距离无线通信技术,也带动了室内定位技术的发展。在所有的定位实现中,室内空间由于其环境的复杂性,一直是定位系统实现的一个难点。现今,成熟的室内定位系统仍然比较少、而且多存在成本偏高的缺陷,不利于大范围广泛应用。本文试图利用ZigBee技术实现一种较低成本、较低复杂度的室内定位系统。1.1国内外无线定位研究现状1992年,A&T(LaboratoriesCambridge)开发出最早的室内定位跟踪系统ActiveBadge,它利用红外线技术实现室内定位,但由于红外方向性强、距离短等弊端,定位精度不高,之后经过许多专家学者的努力又开发出更多的定位系统和算法,代表成果有ActiveBat、RADAR(RadioDetectionandRanging)、SpotON和Cricket等ActiveBat室内定位系统由剑桥大学AT&T实验室开发,基于室内超声波/无线射频定位技术,采用TOA(TimeofArrival)技术的三角定位法。它比ActiveBadge定位精度要高,但它使用有线网络,对网络节点的依赖性较强,且系统的扩展性受到很大限制。RADAR室内定位系统由Microsoft公司开发,其基于IEEE802.11WLAN室内无线射频定位系统,属于信号传播模型与经验测试相结合的场景法定位系统。其显著特点为采用无线网络,易于安装,需要基站少,应用中要考虑节点的能耗和大小等问题。SpotON室内定位系统基于射频识别技术(RFID),用聚合算法对三维空间进行定位。目前,还没有建成完整的SpotON系统。Cricket室内定位系统由麻省理工学院开发,是超声波定位的典型例子,相比于ActiveBadge和ActiveBat,它采用超声波时延信号进行定位,定位精度较高,但由于该系统需要同时发射射频和超声波信号,因此需要较高的底层硬件设施投资,且系统功耗较大。近年来,由TI公司和摩托罗拉公司共同研发的CC2431无线定位芯片也值得我们关注,CC2431是一个带硬件定位引擎的芯片,能满足低功耗,符合ZigBee/IEEE802.巧.14无线传感器网络的应用需要。它不需要如GPS定位技术那样使用卫星定位,而是采用CC2431芯片组成的无线网状网络实现较高的定位分辨率和定位精度。CC2431定位引擎原理基于接收信号强度指示RSSI(ReceivedSignalStrengthIndicator)技术,根据接收信号强度和己知参考节点的位置计算出移动节点的位置,然后将位置信息发送给接收端。目前,室内定位技术在国内还没有形成规模,主要集中在科研单位和学校,大部分的研究还停留在对算法的研究及优化上,大多从事的无线室内定位还只是停留在室内仿真阶段,没有形成完整的体系。经过近年来的努力,国内外学者在无线传感器网络定位算法的研究中取得了较大进步,但还是出现一些问题,譬如:更加精确的测距方法、在大规模传感器网络定位过程中存在的误差累积问题、对移动节点定位算法的研究等。现有的定位算法大都在能耗、成本和精度等方面做了折中考虑,由于各种应用差别的存在,适用于各种场所的定位算法也就成为空谈,因此要针对不同的应用场合,结合节点的规模、成本以及系统对定位精度的要求等多方面的考虑,来选择最适当的定位算法。目前存在两种ZigBee定位解决方案。(l)基于CC2431片上系统的单芯片定位方案CC2431在CC2430基础之上增加了基于RSSI的硬件定位引擎,通过输入环境信息以及参考节点的坐标信息,即可输出未知节点的坐标,在典型应用中可以实现3-5m的精确定位。但由于其定位算法由硬件物理完成,导致基于CC2431的定位系统灵活性较差。(2)CC2430/(MCU+CC2420)+定位算法。利用CC2430实现网络中节点的信息传输,将定位方法嵌入芯片内部或在上位机集中处理,其定位算法可以灵活选择,本文就是使用CC243O芯片进行定位实现的。1.2无线传感器网络及其定位存在问题今天,世界正大踏步地从网络时代向无线互联网时代迈进。新兴的无线网络技术,如Wi-Fi、ZigBee、Bluetooth等在办公室、家庭、工厂等各方面都得到了广泛应用。根据投资银行Rutberg公司、国际数据公司和无线数据研究集团等的预测,无线网络新技术将在未来的3年内达到几百亿甚至上千亿美元的营业收入,而无线定位技术的应用将占有其中超出上百亿美元的份额。无线网络技术在为世界经济带来巨额财富的同时,也为无线定位技术的发展注入了新的活力。无线网络定位技术具有广阔的发展前景,在这些技术当中,虽然Bluetooth、UWB等都取得了一定的成效,但ZigBee技术在功耗、成本上都有着得天独厚的优越性,并逐渐崭露头角,显示其雄厚的发展潜力,因此,ZigBee无线传感器网络技术在未来无线定位方面具有良好的发展前景近10年来,对无线传感器网络自身定位的研究登上了一个新的台阶,取得了一些可喜的研究成果,特别是进入21世纪后,提出了许多新颖的定位思想和方案,并解决了一些无线传感器网络的自身定位问题。但是,每一种系统和定位方法都是针对不同问题所产生的,之间的交集较少,还需要我们不断努力去探索。总的来说,如今的无线定位技术仍存在下列一些问题:(l)缺乏比较精确的测距方法。(2)定位的实时性较低。(3)存在误差现象,在大规模定位节点较多的情况下,误差将被放大。(4)传感器节点受距离、能量的限制,需要在算法复杂度与能量耗费之间寻求一种合理的折中算法。(5)现今的定位研究大都是基于静态节点的研究,对于移动节点的定位研究较少。(6)目前的定位方法一般是基于二维平面的研究,应深入到三维或多维空间方向。1.3设计思路及目标本论文对比国内外室内定位跟踪系统,对IEEE802.15.4/ZigBee网络环境下的室内移动目标定位进行研究,提出基于ZigBee技术的室内定位系统设计框架。课题研究希望所设计的室内定位系统具有下面几个方面的特点:(1)较高的定位精度:针对通常情况下对室内人员或者物品定位所需要的精度要求,本系统的定位精度设计预期达到1.5m左右。(2)较低的系统成本:设计的定位系统的总成本希望普通个人用户都有能力使用该系统。(3)实时性方面:设计的定位系统能够满足目标在室内不停移动(诸如人员走动、汽车缓慢驶入驶出车库)情况下的实时性要求。(4)较低的系统功耗:系统采用电池供电情况下预期可以工作半年以上2设计方案论证GPS等卫星导航定位技术广泛应用于各种领域。然而在室内、地下等场合的定位需求却有其局限性。近几年来,随着IEEE802.15.4商业标准的逐渐完善,无线传感器网络(WSN)的相关技术开始被广泛讨论和研究。随着,TI公司提出带硬件定位引擎的片上系统(SoC)解决方案CC2430/CC2431。以及WSN用于无线定位技术被广泛研究,该器件能满足低功耗ZigBee/IEEE802.15.4无线传感器网络的应用需要,CC2431的定位引擎基于接收信号强度指示RSSI(ReceivedSignalStrengthIndicator)技术,相比于集中型定位系统,RSSI功能降低网络流量与通信延迟,在典型应用中可实现3~5m的定位精度和0.25m的分辨率。本设计基于RSSI定位技术,详细介绍基于ZigBee技术的射频芯片CC2430/CC2431无线定位系统的构成、定位原理,并实现了基于CC2430/CC2431无线定位系统的设计。(1)芯片选择

CC2430/CC2431以强大的IAR集成开发环境为支持,结合ZigBee协议栈、工具包和参考设计,展示领先的ZigBee解决方案,其产品广泛应用于汽车、工控系统和无线传感器网络等领域,同时也适用于ZigBee之外的2.4GHz频率的其他设备。CC2431的定位引擎基于RSSI技术.根据接收信号强度与已知参考节点位置准确计算出有关节点位置。然后将位置信息发送至接收端。(2)RSSI定位技术

RSSI是指节点接收到的无线信号强度大小。在基于RSSI的定位中,已知发射节点的发射信号强度,接收节点根据接收到信号的强度计算出信号的传播损耗。利用理论和经验模型将传输损耗转化为距离.再利用合适的算法(如:三角定位法等)计算出节点的位置。该技术硬件要求较低、算法相对简单,并且一些通信协议中已携带有RSSI的信息,这样使得基于RSSI定位方法具有广泛的应用前景[2]。该技术在实验室环境中表现出良好特性,但由于环境因素变化等原因.实际应用中还需进一步改进。(3)基于CC2430/CC2431的定位系统

定位系统由参考节点和定位节点组成。参考节点是一个位于已知位置的静态节点,该节点确知自身的位置并可将其位置通过发送数据包通知其他参考节点。定位节点从参考节点处接收数据包信号,获得参考节点位置坐标及相应的RSSI值并将其送入定位引擎,然后读出由定位引擎计算得到的自身位置。

由参考节点发送给定位节点的数据包至少包含参考节点的坐标参数水平位置X和垂直位置Y。而RSSI值可由接收节点计算获得。图2-1为具体定位系统原理框图。主机主机网关室内区域移动节点参考节点图2-1定位系统原理框图Figure2-1DiagramofPositioningSystemBlock该定位系统原理框图中各部分的作用如下(1)主机。采用一台普通的PC,主机连接网关实现对整个网络的工作调度,编写的定位软件可实时观察各个定位节点和参考节点的运行情况。

(2)网关。该网关用于组建一个ZigBeeWSN网络,并充当协调器,把定位节点坐标及外部环境参数传送给主机。

(3)参考节点。在网络中充当路由器的角色。而且在定位系统中,它由用户指定固定坐标,并为定位节点提供该坐标和RSSI平均值。参考节点(referencenode)是一种已知静态节点,其坐标(x,y)是固定的,并且不参与定位计算,可由CC2430或CC2431器件实现。一个定位区域通常由8个参考节点组成。系统至少需要3~4个参考节点才能进行定位。本文采用CC2430作为参考节点来实现。

(4)定位节点。其内部具有定位引擎,能够根据参考节点提供的同定坐标和RSSI平均值计算出自身的精确位置(坐标),并把该坐标协同定位节点标识号发送给网关。本文中核心器件采用CC2431实现。定位工作流程

定位节点(blindnode)是一类可移动的节点,可在参考节点包围的区域内任意移动。定位节点接收区域内所有参考节点的RSSI值后,通过定位算法来计算其坐标位置。定位节点由CC2431器件实现。采用该器件,可实现0.25m的定位分辨率和3m左右的定位精度,定位时间小于40μs。图2-2为定位节点工作流程图,图2-3是参考节点工作流程图。开始收到数据?XY—RSSI请求?开始收到数据?XY—RSSI请求?定为节点发现请求?定为节点配置?定为节点请求配置?接受RSSI应答?强制位置发现强制位置发现将配置信息写入Flash取出配置值发送给协调器接收RSSI平均值结束YYYYYYNNNNNNFigure2-2Theworkflowofpositioningnodes开始开始收到数据?XY-RSSI请求?参考节点配置?参考节点请求配置?收集RSSI?结束发送RSSI平均值将配置信息写入Flash取出配置值发送给协调器多次收集RSSIYYYYYYNNNNN图2-3参考节点工作流程Figure2-3TheWorkflowofreferencenodes3ZigBee技术及协议栈概述3.1ZigBee技术简介3.1.1ZigBee发展概述近十年来,随着半导体技术和无线通信技术的不断发展,陆续出现了多种新的短距离无线通信技术。为了满足对低功率、低价格无线网络的需求,2000年12月,IEEE标准委员会正式批准成立了802.15.4工作组,其目标是:在廉价的、固定或便携的、移动的装置中,提出一个具有超低复杂度、超低价格、超低功耗、超低数据传输率的无线接入标准。也就是要开发一种低速率的WPAN(LR-WPAN,Low-RateWirelessPersonalAreaNetwork)标准。2002年,英国Invensys公司、日本三菱电气公司、美国摩托罗拉公司以及荷兰飞利浦等公司共同宣布组成ZigBee技术联盟,共同研究开发ZigBee技术。2003年11月,IEEE正式发布了该项技术的物理层和MAC层所采用的标准协议,即IEEESOZ.15.4协议标准,作为ZigBee技术物理层和媒体接入层的标准协议.2004年12月,ZigBee联盟在IEEE802.15.4协议基础上,正式发布了完整的ZigBee标准。2006年IEEE发布了IEEE802.15.4协议标准修订版。3.1.2ZigBee技术特点IEEE802.15.4委员会制定了三种不同的WPAN(WirelessPersonalAreaNetwork)标准,区别在于通信速率、QOS能力等。802.15.1标准即蓝牙技术,具有中等速率,适合于从蜂窝电话到PDA的通信,其QOS机制适合于话音业务。802.15.3标准是高速率的WPAN标准,适合于多媒体应用,有较高的QoS保证。802.15.4标准也就是ZigBee技术,目标市场是工业、家庭以及医学等需要低功耗、低成本无线通信的应用,对数据速率和QOS的要求不高[3]。ZigBee的主要技术特征如表3-1所示。表3-1ZigBee的主要技术指标Table3-1ThemajortechnicalindicatorsofZigBee特性取值/状态频段数据速率调制方式扩频方式通信范围通信延时信道数目寻址方式信道接入网络拓扑功耗状态模式868/915MHz和2.4GHz868MHz-20kbps;915MHz-42kbps;2.4GHz-250kbpsBPSK;O-QPSK直接序列扩频10-100m15-30ms868MHz-1;915MHz-10;2.4GHz-1664bitIEEE地址,16bit网络地址CSMA/CA和时隙化得CSMA/CA星形;树状;网状极低激活/休眠选择ZigBee技术进行项目开发,是基于其具有的诸多性能优点。具体来讲,可总结如下:(1)数据传输速率低。ZigBee技术的最大传输速率只有250kbPs,专注于低速率传输应用。(2)设备省电,功耗极低。zigBee技术采用了多种节电的工作模式,可以确保两节五号电池支持长达6个月到2年左右的使用时间。(3)通信可靠性高,数据安全。ZigBee采用了CSMA-CA(CarrierSenseMultipleAccesswithCollisionAvoidance)的避免碰撞机制,同时为需要固定带宽的通信业务预留了专用时隙,避免了发送数据时的竞争和冲突;MAC层采用了完全确认的数据传输机制,每个发送的数据包都必须等待接收方的确认信息,因此通信可靠性高。ZigBee提供了数据完整性检查和鉴权功能,加密算法采用AES-128,同时协议栈的各层可以灵活确定其安全属性。(4)网络的自组织、自愈能力强。ZigBee网络无需人工干预,网络节点能够感知其它节点的存在,并确定连接关系,构成结构化的网络。ZigBee网络增加或者删除一个节点、节点位置发生变动、节点发生故障等,网络都能够自我修复,并对网络拓扑结构进行相应地调整,无需人工干预,保证整个系统仍然能正常工作。(5)时延短,设备接入网络快。通常时延都在1sms到3Oms之间,因此设备接入网络和数据传送的延时时间很短,适合实时的监测和控制应用。(6)成本低廉,工作频段灵活。设备的复杂程度低,且ZigBee协议是免专利费的,可以有效地降低设备成本。ZigBee的工作频段灵活,使用的频段分别为2.4GHz(全球)、868MHz(欧洲)及9l5MHz(美国),均为免执照频段。(7)网络容量大。每个ZigBee网络最多可支持65000个节点,也就是说每个ZigBee节点可以与数万节点相连接,可以说网络容量极其庞大,尤其适用大规模无线传感器网络。3.2ZigBee协议栈概述ZigBee技术作为一种新兴的低速率短距离无线通信技术,也是ZigBee联盟所主导的无线传感器网络技术标准。完整的ZigBee协议栈有物理层、MAC子层、网络层、应用汇聚子层和高层应用规范层组成。每一层为上层提供一系列特殊的服务:数据实体提供数据传输服务,管理实体则都通过服务接入点(SAP)为上层提供一个接口,每个SAP都支持一定数量的服务原语来实现所有功能[4]。ZigBee协议体系架构如图3-1所示:其中,IEEE802.15.4-2003标准定义了底层:物理层(PhysicalLayer,PHY)和MAC层。IEEE802.15.4定义的PHY层分别工作在两个频段上:868/9l5MHz和2.4GHz。其中低频段物理层覆盖了868MHz的欧洲频段和915MHz的美国与澳大利亚等国的频段,高频段则全球通用。IEEE802.15.4MAC层采用CSMA-CA机制来控制信道接入,主要负责传输信标帧,同步以及提供可信赖的传输机制。ZigBee联盟在此基础上定义了网络层(Network,Layer,NWK),应用层(ApplicationLayer,APL)架构。网络层的主要职责包括提供设备用来加入网络和离开网络的机制,提供数据帧传输的安全机制和路由机制。另外,发现并保持设备间的路由,发现一跳邻居并存储潜在邻居信息也是有NWK层完成的。ZigBee协调器的NWK层还必须负责启动一个新的网络,给新的关联设备分配地址等工作。应用汇聚层将主要负责把不同的应用映射到ZigBee网络上,具体而言包括:安全与鉴权、多个业务数据流的会聚、设备发现、业务发现。ZigBee应用层包括应用支持子层(APS),ZigBee设备对象(ZDO)以及用户定义应用对象。应用支持子层(APS)负责维护设备绑定表,以及传输在绑定的设备间传输数据。设备绑定表用于根据设备间提供的服务和需求来匹配设备并储存相关设备信息。ZigBee设备对象(ZDO)负责定义设备在网络中的角色(如ZigBee协调器或中断设备),提出或响应绑定请求,以及建立网络设备间的安全关系。ZigBee设备对象(ZDO)还要负责网络设备的发现及判定对方提供服务类别。应用1应用1应用1应用汇聚层网路层IEEE802.2逻辑链路类型(LLC)业务特定汇聚子层(SSCS)其他逻辑链路控制标准媒体访问层868/915MHz物理层868/915MHz物理层ZigBee联盟IEEE802.15.4……图3-1ZigBee协议体系架构Figure3-1ThearchitectureofZigBeeprotocol3.3ZigBee网路构成3.3.1设备类型ZigBee网络支持IEEE802.15.4定义的两种类型的物理设备:全功能设备(FFD)精简功能设备(RFD)。FFD和RFD的不同是按照节点的功能区分的,一个FFD可以充当网络中的协调器和路由器,因此一个网络中应该至少含有一个FFD。RFD只能与主设备通信,实现简单,只能作为终端设备节点。在ZigBee网络中,将两种物理设备定义成了三种逻辑设备类型:协调器、路由器、终端设备。一个ZigBee网络包括一个协调器节点和多个路由器和终端设备节点。协调器:这个设备“开启”一个ZigBee网络。它是网络中的第一个设备。协调器节点选择一个信道和一个网络标识符(PANID)并开启网络。可选择地,协调器节点也能被用来设置网络中的安全性和应用水平的绑定。协调器的功能主要是开启和配置网络。一旦这些完成以后,协调器与路由器的功能就一样了(甚至可以断开)。由于ZigBee网络的分布式本质,网络的继续运行不依赖于协调器的存在。路由器:路由器执行的功能有1)允许其他设备加入网络;2)多跳路由;3)辅助它的电池供电的子终端设备通信。一般来说,路由器被期望能一直保持激活状态,因此它通常是由固定电源供电的节点被唤醒并请求数据而不能使用电池供电。路由器为它的子节点缓存信息,直到子当一个子节点需要发送一个信息的时候,这个子节点发送数据到它的父路由器。然后,路由器负责传输信息,执行所有相关的重发,以及如果需要的话,等待确认。这使得终端设备可以回到休眠状态,从而达到省电的目的。终端设备:终端设备对维持网络结构没有特殊的责任,因此,它可以有选择的休眠和唤醒。终端设备仅仅周期性的向它的父节点发送或接受来自它的父节点的数据。因此终端设备能够使用电池供电的方式工作很长时间。在能量管理方面,网络协调器与路由器需要突发的处理一些请求,包括入网、退出网络以及数据中转等功能,一般情况下,使用永久性电源;若终端节点在大部分的时间里都处于休眠状态就可以采用电池供电。若对电池供电没有要求,网络中可以全部采用FFD设备。3.3.2拓扑结构ZigBee网络主要有三种组网方式,星型网络,树状网络和网状型网络,其拓扑结构如图3.7所示。如图3-2(a)所示,星型网络是一个辐射状系统,数据和网络命令都是通过中心节点传输。如果用通信模块构造星形网络,只需要一个模块配置成协调器节点,其他模块可以配置成终端节点。星状拓扑结构最大的优点就是结构简单,这种简单带来的是很少有上层协议需要执行、较低的设备成本、较少的上层路由信息和管理方便。中心节点需要承担更多的管理工作。由于把每个终端节点放在中心节点的通信范围之内,这必然会限制无线网络的覆盖范围,并且星形拓扑很难实现高密度的扩展。集中的信息涌向中心节点,容易造成网络堵塞、丢包、性能下降等。到目前为止,星形拓扑是最常见的网络配置结构,被大量的应用在远程检测和控制中。树状拓扑是多个星形拓扑的集合,如图3-2中的(b)所示。若干个星形拓扑连接在一起,扩展到更广阔的区域。树形拓扑是可以实现网络范围内“多跳”信息服务的最简单的拓扑结构,树形拓扑最值得注意的地方就是它保持了星形拓扑的简单性:较少的上层路由信息、较低的存储器需求。但是树形结构不能很好的适应外部的动态环境。从图中可以看出,信息源与目的之间,有且只有一条传输路径,任何一个节点的中断或故障将会使部分节点脱离网络。树形拓扑的最佳应用是在稳定的无线电射频环境中,也可以很好的用在一些简单的低数据量的大规模集合的应用之中。如图3-2(c)中所示,网状网络是一个自由设计的拓扑,具有很高的适应环境的能力。网络中的每个节点都是一个小的路由器,都具有重新路由选择的能力,以确保网络最大限度的可靠性,可以看出网络中任意两个节点的通信路径不是唯一的。网形拓扑与星形、树形相比,更加复杂,其路由拓扑是动态的,不存在一个固定的路由模式。这样信息传输的时间更加依赖瞬时网络连接质量,因而难以预计。(a)星型(a)星型(c)网状(b)树状协调器FFDRFD图3-2拓扑结构Figure3-2Topology3.4基于RSSI的定位算法分析ZigBee定位技术基于无线局域网络,在特定的无线局域网络中,先安装一些已知位置信息的参考节点,移动节点通过无线通信得到已知节点的信息(时间或信号强度值),并结合定位算法计算出节点的坐标。3.4.1距离计算方法常用的基于距离((Range-Based)的定位方法有四种,分别为基于接收信号强度RSSI(ReceivedSignalStrengthIndicator)方法、基于到达时TOA(TimeofArrival)、基于到达时间差TDOA(TimeDifferenceofArrival)和基于到达角度AOA(AngleofArrival),通过此四种方法可以测得移动节点与参考节点之间的相对距离。(1)基于RSSI的测距方法在基于接收信号强度(RSSI)的定位中,发射节点的发射信号强度是已知的,接收节点根据接收到的信号强度,计算出信号的传播损耗,利用经验模型或者理论将RSSI的传输损耗转化为距离。RADAR系统就是一个基于RSSI技术的室内定位系统。RSSI的主要优势在于通信负载较低而且不需要增加额外的硬件设备。但在实际的环境中,RSSI受外界影响较大,它的误差主要来源于外界环境,反射、多径传播、天线增益等问题都会造成不同的传播损耗,造成测距误差,因此定位精度往往不是很理想,所以该技术在实际应用中仍然存在许多问题[5]。(2)TOA测距方法在TOA定位方法中,已知信号的传播速度,根据参考节点发送信号到定位节点所需的传播时间来计算节点间的距离。该方法精度较高,但对发送者到接收者的响应时间和处理时延要求较高,要求保持节点间的时间同步,目前,GPS定位系统使用此方法。但由于硬件设备复杂,价格高和功耗大等方面,使得TOA方法很少应用在室内定位方面。(3)TDOA距方法在TDOA定位方法中,发射节点同时发射超声波和无线电射频信号两种不同传播速率的无线信号,接收节点根据接收到两种信号的时间差以及这两种信号的传播速度,计算出发射节点和接收节点之间的距离。Cricket系统和AHLOS系统就是利用TDOA方法进行定位。该方法的测量精度高于RSSI,可达到厘米级,但超声波的传播距离有限(超声波信号通常传播距离仅为20-30英尺),另外此方法的开销又比较大,不适合低功耗的室内定位。(4)AOA测距方法在AOA定位方法中,接收节点通过天线阵列或多个超声波接收机感知发射节点信号的到达方向,计算接收节点和发射节点之间的相对方位或角度,再通过三角测量法计算出节点的位置。总的来说,基于TOA和TDOA技术的定位系统依赖于发射器和接收器之间的精确定时同步,因此对系统硬件的要求会比较高,进而大大增加了系统的复杂性和成本,而基于AOA技术的定位系统需要额外增加定向天线或者天线阵列,同样也增加了系统复杂性和成本,而且AOA技术也易受外界环境的影响。基于RSSI技术方法的最大优点就是我们能够充分利用现有的系统,基本不需要辅助设备就可以建立定位系统,因此获得RSSI信息要比获得到达时间((TOA)和到达角度((AOA)远远容易。本文定位是由定位引擎硬件设备完成,原理是基于RSSI的测距定位。3.4.2节点定位基本原理在三维空间中,知道了1个点到4个已知参考点的距离,就可以确定该点的坐标,这一点与全球定位系统(GPS)的基本原理一样。只不过在无线传感器网络中,坐标系是二维空间也不需要时钟同步,因此,只要知道了1个节点到3个参考节点的距离就可以确定节点的位置。假设3个参考节点的坐标分别为(,)、(,)、(),待定位节点的坐标是(,),该节点到3个参考节点的距离分别是、、,根据二维空间距离计算公式,可以获得方程组3.1。(3.1)上面的公式中,、是未知量,这是非线性方程组,可以采用线性化方法来求解。如果近似知道节点的估计位置,可以将其真实位置(,)和近似位置(,)之间的偏离用位移(,)来标记。将公式3.1按泰勒级数绕近似位置展开,那么便可将位置偏移(,)表示为已知坐标和距离测量值的线性函数。单一测量距离可表示为:(3.2)单一近似距离可表示为:(3.3)如上所述,节点的真实位置由近似分量和增量2个部分组成,即(3.4)因此,有上式右边函数用泰勒级数展开成(3.5)为消除非线性,上述展开式中截去了1阶偏导数之后的各项。偏导数经计算如下:(3.6)式中:。将式3.5式3.6、式3.3带入式3.2可以得到:(3.7)这样就完成了对式3.2相对于未知数的线性化。上式可写成:(3.8)当N>3时,上面就是过定义方程组。而无线传感器网络内的距离测量由于存在距离误差,正好可以利用这样的冗余获得更高的精确度。上述过定义方程组可以使用最小二乘法来求解,具体步骤如下:(3.9)为了求得函数取得最小值时的、,对函数求导并令之等于0,即:(3.10)由此可以得到:(3.11)使用式3.11,就可以求出估计节点位置与实际位置的大概偏差,如果精度不满足要求,可以将矫正后的坐标代替估计坐标,进行进一步的矫正,直到()小于规定的门限值为止。4基于ZigBee无线定位系统设计4.1定位系统硬件电路设计定位系统由网关、参考节点、定为节点组成。其中网关部分在ZigBee网络中的角色为Coord,芯片选择为CC2430[6]。它在整个系统中有着至关重要的作用,首先它接收由监控软件提供的各参考点的配置数据,并发送给相应的节点,其次,还要接收各节点反馈的有效数据并传输给监控软件。参考节点是一个静止的知道自己位置的节点(CC2430).这个节点必须正确的配置在定位区域中的位置。它的任务是提供一个包含自己位置X,Y坐标和RSSI值的信息包给移动节点,数量至少为4个。移动节点能够与离自己最近的参考节点通话,收集这些节点的X,Y坐标和RSSI值,根据这些信息和输入参数(A,N)一起计算自己位置信息[7]。然后将适当的信息发送给网关,通过网关与计算机形成另一个直观的系统,芯片选择 CC2431。基于以上整体思想,设计如下定位系统硬件平台。4.1.1硬件总体规划定位节点硬件设计框架如图4-1所示。硬件电路设计包括两部分:无线通信模块设计和辅助功能模块设计。无线通信模块为节点间的无线数据收发接口,它是节点核心部分。辅助功能模块完成定位状态指示、供电、串口通信等辅助功能,它通过RS232串口转换电路实现PC机与协调器节点间的数据传输[8]。为了降低开发成本,硬件平台没有按节点功能分别单独设计,而是将所有功能放在了一个平台上。根据节点实际功能要求,只需焊接所需器件即可。PC机PC机串口接口串口转换供电电路指示电路MCU模块RF模块匹配电路无线通信模块辅助功能模块PC端图4-1硬件组成框图Figure4-1Hardwareblockdiagram4.1.2主控芯片CC2430/CC2431本设计选用了CC2430/2431.CC2430/2431产品家族是第一个真正意义上的SoCZigBee产品,所有的功能都集成在一个硅片内[9]。它结合一个高性能2.4GHzDSSS(直接列扩频)射频收发器核心和一颗增强型的8051控制器,支持250Kbps数据传输率,能实现多对多点的快速组网,只需极少的外部元器件,性能稳定且功耗较低,可以保证有效的通信距离及可靠性,且CC2430/2431芯片较小,为7mmX7mm,鉴于这些优点,本设计选用此芯片。CC2430/2431SoC家族包括3个不同产品:CC2430-F32,CC2430-F64和CC2430-F128,本文设计所用的是CC2430-F128,他们的区别在于内置闪存的容量不同。CC2430和CC2431的最大区别在于,CC2431具有包括Motorola公司有许可证的定位引擎硬件核心,2430没有定位跟踪引擎,除此之外,它们的外观和功能完全一样。CC2430/2431整合了ZigBee射频(RF)前端、内存和微控制器。它使用1个8位增强型MCU(8051),具有32/64/128KB可编程闪存和8KB的RAM,还包含4个定时器、1个模/数转换器、AES128协同处理器、32kHz晶振的休眠模式定时器、看门狗定时器、上电复位电路、掉电检测电路以及21个可编程I/O口引脚。其主要特点如下:(1)集成符合IEEE802.15.4标准的2.4GHz的RF无线电收发机;(2)高性能低功耗的增强型8051微控制器核;(3)有两的无线接收灵敏度和强大的抗干扰性;(4)硬件支持CSMA/CA功能;(5)较宽的电压范围(2.0-3.6V);(6)集成了14位模/数转换的ADC;(7)带有2个USART,以及4个计时器,其中一个是16位符合IEEE802.15.4规范的MAC计时器、1个16位常规计时器和2个8位计时器;(8)在休眠模式时仅0.5眯的流耗,外部的中断或RTC能唤醒系统,在待机模式时少于0.3uA的流耗,外部的中断能唤醒系统;(9)集成了AES安全协处理器;(10)数字化RSSI/LQI支持和强大的DMA功能;(11)集成电池检测和温度感测功能;(12)兼容IEEE802.15.4标准的硬件层和物理层;(13)集成1个高精度定位跟踪引擎(此项为CC2431独有的特点)。CC2430/2431集成的外设有:无线收发、电源管理、可编程看门狗、21个数字I/o引脚、4个计时器、14位模数转换的ADC、带有2个USART、集成了AES安全协处理器、强大的DMA功能、实时时钟、上电复位。CC2430/2431没有接地的管脚,为了方便制版,在CC2430加了一个49号管脚,用于接地,CC2430/2431整体设计电路见附录1。电路使用一个非平衡天线,它可以使天线性能变得更加可靠[10]。电路中的非平衡变压器由电容C12和电感L1、L2、L3以及一个PCB微波传输线组成,整个结构满足RF输入/输出匹配电阻(50Ω)的要求。内部的发射/接收交换电路完成LNA和PA之间的半双工交换。用1个32MHz的石英谐振器和2个电容构成一个32MHz的晶振电路。R4和R5为偏置电阻,电阻R4主要为32MHz的晶振限流。C11和C15电容是去耦合电容,用来电源滤波,以此来提高芯片工作的稳定性。4.1.3功能模块的设计(1)供电电路设计根据ZigBee多种节点用电特点,供电电路设计了两种方式,电池供电和直流(DC)电源模块供电,使用单刀双掷开关实现两种供电方式间的切换。其中,直流(DC)电源模块为SV供电,使用电压转换芯片AMS1117-3.3获得3.3V电压,该芯片能够提供高达5OOmA的电流输出,电路简单,仅需要两个10uF的担电容即可输出3.3V的恒定电压。电池供电方式采用2节AA电池供电。供电电路如图4-2所示。图4-2供电电路Figure4-2Circuitofpower(2)串口转换电路串口转换电路采用美信公司的MAX3232双通道转换芯片,工作电压范围为3V-5.5V,该电路主要用于协调器与PC之间的串口电压转换。串口转换电路如图4-3所示。图4-3串口转换电路Figure4-3UARTtransitioncircuit(3)状态指示电路加蜂鸣器、指示灯等器件用于定位节点状态指示。状态指示电路如图4-4所示。图4-4状态指示电路Figure4-4Stateindicationcircuit除了上面介绍的几种功能电路外,还包括状态指示电路、复位电路、按键电路和JTAG下载电路等。4.2定位系统软件设计4.2.1软件开发平台IAREmbeddedWorkbench(简称EW)是一套完整的集成开发工具集合,包括代码编辑器、工程建立、C/C++编译器、汇编器、连接定位器、库管理员、连接器和调试器的各类开发工具。它可以和各种仿真器、调试器紧密结合,便于用户在开发和调试过程中,仅使用一种开发环境界面,就可以完成多种微控制器的开发工作。IAR7.20H开发环境的特点:(1)完全兼容标准C;(2)支持断点的设置、单步调试、在线调试;(3)版本控制和扩展工具支持良好;(4)内存模式选择;(5)高效浮点支持;(6)瓶颈性能分析;(7)工程中相对路径支持。设计中所用的软件协议栈为TI公司免费提供的ZStack-1.4.2-1.1.0,整个协议栈包括如下部分,它们各自代表的含义如表4-1所示:表4-1协议栈各层的软件Table4-1Layersofsoftwareprotocolstack软件协议层功能介绍APPHALMACMTNWKOSALProfileSecurityServicesToolsZDOZMacZMainOutput应用层,用户在此创建各种不同的工程,添加自己想要实现的功能硬件驱动层,主要初始化一些硬件配置及操作函数MAC层,包括MAC层配置参数文件及MACLIB库的函数接口文件任务测试,包括AF层的调试函数文件,主要包括串口等通信函数网络层,包括网络层配置参数文件及MACLIB库的函数接口文件,用来实现无线网络的织成操作层,包括协议栈系统文档AF层目录,包括AF层处理函数文件安全层,包括一些加密函数等服务层,包括地址模式的定义以及地址处理函数文档工程配置目录,包括协议栈等配置文档设备对象层,包括层处理函数文档MAC层目录,包括MAC层参数配置及MACLIB库函数回调处理函数主函数目录,包括入口函数集硬件配置文件输出文件目录,此为软件自动生成的4.2.2定位节点软件设计无线传感器网络定位的基本思想是盲节点将周围所有的一跳范围内的参考节点的信号强度(RSSI)返回到协调器,由协调器将信号强度值传送到上位机监测软件,上位机软件调用相应的定位算法,计算出盲节点的坐标位置并实现必要的显示[11]。因此,首先需要在硬件平台上实现节点间的通信,可分为如下五步进行(数据量类型有定位算法决定)。图5-6为传感器网络定位通信流程图(l)主节点查询未知节点。在协调器节点(协调器)成功建立网络后,协调器节点要查询盲节点的位置信息,首先要给该节点发送定位请求信号,通信方式为广播方式,保证所有的盲节点都可收到该查询请求。(2)盲节点广播RSSI值信号。盲节点接收到查询请求命令后,广播一系列(如300次)RSSI值,在数据包中设定跳数为l,从而保证只有在一跳范围内的参考节点才能接收到该数据包。(3)参考节点预处理RSSI值。一跳范围内的参考节点接收到RSSIBlast信号,记录该盲节点的RSSI值,由于墙壁、行人等多种环境干扰源的存在,RSSI会出现一定幅度的扰动,因此各参考节点可对接收到的RSSI进行适当预处理(如使用高斯概率模型处理),对预处理后的RSSI值作平均[12]。(4)盲节点发送RSSI的数据包请求信号。接收到数据包请求命令信号后,参考节点将各种所需参量按一

温馨提示

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

评论

0/150

提交评论