




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【摘要】随着科学技术的飞速发展,人类目前已经置身于信息时代,信息的获取是实现信息他的前提,获取信息的一种重要工具就是传感器。综合了传感器技术、嵌入式计算机技术、现代网络及无线通信技术、分布式信号处理技术等的无线传感器网络是多学科高度交叉的新兴前沿研究热点领域。在作战人员通信、环境和气象监测、灾害预警、智能家具、辐射监测等众多领域都发挥着重要作用。低成本、低功耗、应用简单的IEEE802.15.4和ZigBee协议的诞生为无线传感器网络提供了互联互通酶规范。ZigBee协议是由IEEE802.154标准的PHY和MAC层再加上ZigBee的网终层和应用层组成的,由于网络节点具有成本低、体积小、能量和通信能力有限等特点,所以此种网络的突出特点是两络系统支持低成本、易实现、低功耗等。本课题综合运用无线传感器网络技术、现场总线技术和以太网技术,用网络化思想构建了温度传感器系统。关键词:MSP430F2274ZIGBEECC2500【Abstract】Withtherapiddevelopmentoftechnology,humanhasbeenininformationera.Obtaininginformationisthepreconditionofrealizinginformationizationwhileoneofthemostimportanttoolswhichwereusedtoacquireinformationisthesensors.Thewirelesssensornetworkwhichcombinessensortechnology,wirelesscommunicationtechnology,embeddedcomputertechnology,modernnetworkanddistributedinformationdisposaltechnologytogetherisamulti—study,highlycrossednewresearchfields.Itplaysanimportantpartincampaignpeoplecommunication,invironmentalandweathercontrol,disasterdetection,intelligentbuilding,radiationinspectionandsoon.TheIEEE802.15.4andZigBeeprotocolofferthecriterionforwirelesssensornetwok.ZigBeeprotocolisconstitutedofIEEE802.15.4PHYandMAClayer.ZigBeenetworklayerandapplicationlayer.becausethenodehassomecharacteristicssuchaslow.cost,smallvolume,1imitedenergyandlimitedcommunication,thenetworkscharacteristicCSarethesystemsupportinglowcostoperation,easilyrealizationandverylowpowerconsumption.KeyWords:MSP430F2274ZIGBEECC2500目录1引言 12MSP430单片机介绍 22.1MSP430单片机的用途 22.2MSP430单片机的功能 22.3MSP430F2274的介绍 32.3.1MSP430F2274的16位CPU 42.3.2MSP430F2274的存储器组织 52.3.3MSP430F2274的寻址模式 62.4MSP430F2274的原理图 63无线射频芯片CC2500 83.1CC2500的性能参数 83.2CC2500的内部结构 94ZigBee协议栈研究 104.1ZigBee协议栈概述 104.通信层 124.2.1PHY(物理)层 124.2.2MAC(介质接入控制子层) 134.3ZigBee网络层 154.3.1网络层概况 154.3.2网络层帧结构 174.3.3网络层功能介绍 174.4ZigBee应用层 185系统的硬件设计 195.1系统设计原则 195.2系统元件概述 195.2.1存取点(AP) 195.2.2终端设备(ED) 205.3操作模式 205.3.1冗余模式 205.3.2最简模式 205.4温度传感器节点硬件方案研究设计 215.5传感器节点主电路设计 215.5.1控制器电路设计 215.5.2输入输出模块设计 215.6传感器节点电源设计 225.6.1终端节点的可控电源设计 225.6.2协调器节点的开关电源设计 235.7传感器节点通信模块设计 235.7.1无线通信模块设计 236系统的软件设计 256.1存取点的软件设计 256.2协调器节点的软件设计 256.2.1协调器节点软件总体设计 256.2.2ZigBee协议应用对象设计 266.3温度传感器终端节点的软件设计 286.3.1温度传感器终端节点软件总体设计 286.3.2温度采集程序设计 286.3.3温度显示程序设计 297结论 31致谢 32参考文献 33附录 34附录1:MSP430与CC2500主接线图 34附录2:MSP430与CC2500实物图 35附录3:eZ430-RF2500网络显示设置 361引言在工农业生产以及科学研究中,温度传感器系统为分析决策系统提供准确、实时的现场温度数据,是许多监控系统中不可缺少的一部分,广泛应用在电力、化工、冶金、石油、环境、机械制造、农业生产、粮食存储、酒类生产等领域.随着生产规模的不断扩大,生产车间等在地域上分布越来越广,温度监测的范围随之扩大。温度传感器系统逐渐由单点、集中式向多点、分布式演变.由于温度采样点数量不断增加,与监控中心的距离越来越远,它们之间的数据交换必须通过传输网络.当前国内广泛应用的温度变送器大多采用两线制,两线制虽然解决了电源线和信号线的复用问题,很大程度上减少了布线成本,但没有彻底摆脱导线的束缚。很多情况下,布线成本很高,或者根本无法布线,导致温度传感器系统的监测范围受到限制。此外,采用两线制温度变送器的温度传感器系统的容量比较小,且不易扩展。因此,设计一种成本低、覆盖面积广、容量大、易扩展、便于安装和维护的温度传感器系统将很有意义.基于网络的温度传感器系统采用新兴的无线传感器网络技术,实现现场温度数据的分布式采集,解决了传统温度传感器系统受布线限制、系统容量小、不易扩展的问题,拓展了温度监测的地域范围.另外,系统采用成熟的Modbus总线技术和以太网等技术构建了完整的数据传输网络,实现数据的汇聚和远传等功能.本课题综合运用无线传感器网络技术、现场总线技术和以太网技术,用网络化思想构建了温度传感器系统,具有成本低、覆盖面积广、容量大、易扩展、便于安装和维护的优点.本课题旨在实现一个覆盖面积广、易扩展、便于安装和维护的低成本温度传感器系统.具体需要实现以下目标:>建立体积小、成本低、适应性强且功耗低的无线传感器网络硬件平台。>选择和开发功耗低、可靠性高、适应低速率、小数据量传输的无线传感器网络通信协议,实现无线传感器网络的组网和数据传输。>实现无线传感器网络和现场总线之间的连接。>设计网关,实现现场总线和以太网间的连接。同时,提供温度数据的Web发布功能。2MSP430单片机介绍2.1MSP430单片机的用途单片机技术如今已经渗透到人类生活的方方面面,在家用电器、通信产品等日用电子设备中都可以看见单片机,估计全世界人均有几片单片机,此技术正在积极地影响着人类的生活。TI公司的MSP430系列是一个超低功耗类型的单片机,特别适合于电池应用的场合或手持设备。同时,该系列将大量的外围模块整合到片内,也特别适合于设计片上系统;有丰富的不同型号的器件可供选择,给设计者带来很大的灵活性。它是一个16位的精简指令架构,有大量的工作寄存器和数据储存器,其RAM单元也可以实现运算。MSP430系列是众多单片机系列中的一颗耀眼的新星。2.2MSP430单片机的功能TI公司的MSP430系列单片机是16位超低功耗微控制器,其中包括一系列器件,它们针对不同的应用而由各种不同的模块组成,这些微控制器被设计为可用电池工作,而且可以有很长的使用时间。它们具有16位RISC结构,CPU中的16个寄存器和常数发生器使MSP430微控制器能达到最高的代码效率;灵活的时钟源可以使器件达到最低的功率消耗;数字控制的振荡器(DOC)可是器件从低功耗模式迅速唤醒,在少于6μs的时间内激活到跳跃的工作方式。MSP430系列单片机片上集成了丰富的功能模块。温度传感器终端节点负责温度数据的采集,同时实现温度数据的显示和无线发送。MSP430系列单片机具有以下一些共同的特点•低电压、超低功耗MSP430系列单片机,在1.8-3.6V电压、1MHZ的时钟条件下运行,耗电电流因不同的工作模式而不同;具有16个中断源,并且可以任意嵌套,使用灵活方便;用中断请求将CPU唤醒只要6μs,可编制出实时性特别高的源代码;可将CPU置于省电模式,以用中断方式唤醒程序。•强大的处理能力MSP430系列单片机,为16为RISC结构,具有丰富的寻址方式(7中源操作数寻址、4种目的操作数寻址)、简洁的27条内核指令以及大量的模拟指令;大量的寄存器以及片内数据存储器都可参加多种运算;还有高效的查表处理方法;有较高的处理速度,在8MHZ晶体驱动下,指令周期为125μs。这些特点保证了可编制出高效率的源程序。•系统工作稳定上电复位后,首先由DCOCLK启动CPU,以保证程序从正确的位置开始执行,保证晶体振荡器有足够的起振及稳定时间。然后软件可设置适当的寄存器的控制位来确定最后的系统时钟频率。如果晶体振荡器在用作CPU时钟MCLK时发生故障,DCO会自动启动,以保证系统正常工作;如果程序跑飞,可用看门狗将其复位。•丰富的片内外设MSP430系列单片机的各成员都集成了较丰富的片内外设。他们风别是以下一些外围模块的不同组合:看门狗(WDT)定时器A(Timer-A)定时器B(Timer-B)比较器串口0、1(USART0、1)硬件乘法器液晶驱动器10位/12位ADC14位ADC端口0(P0)端口1-6(P1_P6)基本定时器(BasicTimer)以上外围模块再加上多种存储器方式就构成了不同型号的器件。其中,看门狗可以使程序时空是迅速复位;比较器进行模拟电压的比较,配合定时器可以设计为A/D转换器;定时器具有捕获/比较功能,可用于时间技术、时序发生、PMW等;有的器件更具有两个串口,可方便地实现多机通信等应用;具有较多的并行端口,最多可达200Kbps,能满足大多数数据采集应用;能直接驱动液晶多达120段。MSP430系列单片机的这些片内外设为系统的单片解决方案提供了极大的方便。•方便高效的开发环境目前MSP430系列有4种类型器件:OTP型、FLASH型、EPROM型和ROM型。这些器件的开发手段不同。对于OTP型和ROM型的器件是用相对应的EPROM型器件作为开发片,或使用仿真器开发成功之后再烧写或掩膜芯片;而对于FLASH型则有十分方便的开发调试环境,因为器件片内有JTAG调试接口,还有可电擦写的FLASH存储器,因此采用先下载程序到FLASH内,再在器件内通过软件控制程序的运行,由JTAG就扣读取片内信息供设计者调试使用的方法进行开发。这种方式只需一台PC机和一个JTAG调试器,而不需要仿真器和编程器。开发语言有汇编语言和C语言。2.3MSP430F2274的介绍MSP430F2274单片机是由TI公司生产一种16位的单片机,综合比较,本设计将采用之。其内部带有10位A/D,1.8~3.6V的工作电压,5种低功耗省电模式,从待机到唤醒的响应时间不超过1μs,片内高频时钟源,频率高达16MHZ,内部还有低功耗低频振荡器VLO,32KHZ晶振模块。除此,其还具有非常强的处理能力,非常适合一些对处理要求比较高的嵌入式系统。因此,MSP430F2274单片机在许多领域内得到了广泛的应用。2.3.1MSP430F2274的16位CPUMSP430F2274系列采用的是“冯-诺依曼”结构,ROM和RAM在同一地址空间,使用一组地址数据总线。中央处理单元CPU采用了精简的、高透明的、高效率的正交设计。他包括:一个16位的ALU、16个寄存器和一个指令控制单元。16个寄存器中有4个为特殊用途,他们分别是:程序计数器、堆栈指针、状态寄存器和常数发生器。程序流程通过程序计数器控制,而呈现执行的现场状态体现在程序状态字中那个。表1.1对16个寄存器做了简要的说明。1.程序计数器PCMSP430的指令根据其操作数的多少,其指令长度分别为1、2或3字长。程序计数器PC的内容总是偶数,指向偶字节地址。其内容在调试程序是,可通过寄存器窗口查看。2.堆栈指针SP系统堆栈在系统调用子程序或进入中断服务程序是,保护程序计数器PC。堆栈指针SP总是指向堆栈的顶部。系统在将数据压入堆栈时,总是先将堆栈指针SP的值减2,然后再将数据送到SP所指的RAM单元。讲数据从堆栈中弹出正好相反:先将数据从SP所指示的内存单元取出,再将SP的值加2.堆栈的操作有两种情况:隐式与显式。系统对堆栈的操作为隐式,主要为自动保存PC的数值。在用户程序中那个也可对SP操作。简写功能ROR1R2R3R4…R15程序计数器PC,指示下一条将要执行的指令的地址堆栈指针SP,指向堆栈的栈顶状态寄存器SR/常数发生器CGI常数发生器CG2通用工作寄存器R4……通用工作寄存器R15表2.1MSP430F2274的CPU的16个寄存器3.状态寄存器SR状态寄存器记录程序执行过程中的现场情况,在程序设计中有相当重要的地位。MSP430F2274的状态几寸器为16位,目前只用到前9位,其结构如下:15~9876543210保留VSCG1SCG0OscOffCPUOFFGIENZC位0C进位标志当运算结果产生进位时置位,否则复位。位1Z零标志当运算结果为0时置位,否则复位。位2N负标志当运算结果为负时置位,否则复位。位3GIE中断控制位置位允许中断,复位禁止所有的中断。该位中断复位,RETI指令置位,也可以用哪个指令改变。位4CPUOFFCPU控制位置位使CPU进入关闭模式,此时除了RAM内容、端口、寄存器保持外,CPU处于停止状态,可用所有允许的中断将CPU从此状态唤醒。位5OscOff晶振控制位置位使晶体振荡器处于停止状态,CPU从此状态唤醒;只有在GIE置位的情况下,由外部中断或NMI唤醒。要设置OscOff=1,必须同时设置CPUOFF=1.位6SCG0此位与位7一起控制系统时钟发生器的4中活动状态。位7SCG1此位与位6一起控制系统时钟发生器的4中活动状态。位8V当算术运算结果超出有符号数范围时置位。4.常数发生器CG1和CG2在16个寄存器中R2和R3位常数发生器,利用CPU的27调内核指令配合常数发生器可以生成一些见解高效的模拟指令。表1.2列出了CG1和CG2可以产生的常数。寄存器As常数说明R2R2R2R2R3R3R3R30001101100011011--(0)00004H00008H0000H00001H0002H0FFFFH寄存器模式绝对寻址模式+4,位处理+8,位处理字处理+1+2,位处理-1,字处理表2.2CG1和CG2可以产生的常数5.通用工作寄存器R4~R15为通用工作寄存器。MSP430F2274的通用寄存器是430活动的打不风场所,可以执行算术逻辑运算,也可以作为临时的暂存单元;可以字操作,也可以字节操作。MSP430F2274指令的寻址方式包括立即寻址、索引寻址和绝对寻址。这4种寻址方式均可用于源操作数,而索引、符号和绝对寻址方式只可以用于目的操作数。源操作数和目的操作数的指令集需占用代码存储器中的1~3个字。2.3.2MSP430F2274的存储器组织MSP430F2274的存储空间采用“冯-诺依曼”结构,ROM和RAM在同一地址空间,使用一组地址数据总线。存储空间的组织又分大模式和小模式。在小模式时,总的寻址空间为64KB;大模式时,总的寻址空间为1MB。小模式时采用线性寻址空间;大模式时代码可访问16个64KB的代码段,数据可访问的地址空间为16个64KB的页,即为分段分页方式。当存储器组织为64KB或更少时采用小模式,地址空间为最低的64KB,而目前的器件都设计成小模式,最大的程序存储空间60KB空间中。现在只讨论64KB存储空间的使用情况。由于采用“冯-诺依曼”结构,ROM和RAM在同一地址空间,从00000H~0FFFFH这一段范围内从低到高分别是:特殊功能寄存器、外围模块、数据存储器、程序存储器和中断向量表。数据存储器RAMMSP430F2274的数据存储器位于存储器地址空间的0200H以上,这些存储器一般用做数据的保存与堆栈,同时也是数据运算的场所,在特殊场合还可以用作程序存储器。可以字操作,也可以字节操作,通过指令后缀加以区别。但用做程序存储器时只能字操作。在字节操作时,每8位为一个操作单位;在字操作时,每两个字节为一个操作单位,而且对准偶地址操作。MSP430F2274为FLASH型的器件,它还有信息存储区,也可以当做数据RAM使用,同时它是FLASH型,掉电后数据部丢失,可以保存重要参数。程序存储器ROM程序ROM区位0FFFFH以下一定数量存储空间,可存放指令代码和数据表格。程序代码必须偶地址寻址。程序代码可分为3种情况:中断向量区、用户程序代码及系统引导程序。中断向量区用来说明相应中断的中断服务程序首地址。2.3.3MSP430F2274的寻址模式MSP430F2274有7种寻址方式,其中源操作数可用全部的7种方式寻址,而目的操作数只有4种方式寻址。但他们都可访问整个地址空间,由AS和AD模式位的内容确定,这7种方式分别是:寄存器寻址模式变址寻址模式符号模式绝对寻址模式间接寻址模式间接增量寻址模式立即寻址模式2.4MSP430F2274的原理图图2.1为MSP430F2274的引脚图图2.1MSP430F2274的引脚出线图图2.2为MSP430F2274的结构框图图2.2MSP430F2274的结构框图3无线射频芯片CC2500CC2500芯片是Chipcon公司的第四代产品,工作频率为2.4GHz,符合规范。CC2500基于Chipcon公司的SmartRF03技术,以0.18,noCMOS工艺制成。只需极少外部元器件,性能稳定且功耗极低。CC2500具有片上载波感应指示灯和数字RSSI输出,有助于提高无线链路的质量。自动消除通道评价功能(CCA)使其更适用于载波侦听(Listen-Before-Talk,LBT)系统。而且CC2500。可通过扫描2.4GHz的数字RSS91寻找最佳工作通道.CC2500采用4x4mm20引脚QFP封装,由于外形小,而且需要的外部元件数量少,因此适合开发小型2.4GHz产品。CC2500的选择性和敏感性质数超过了标准的要求,可确保短距离通信的有效性和可靠性,且其数据传输速率最高可达500kpbs,因此可以实现多点对多点的快速组网。3.1CC2500的性能参数CC2500的主要性能参数如下所示:1)采用QLP封装,尺寸为4X4mm;2)工作频带范围:2400MHz-2483.5MHz3)数据传输速率为500kpbs;4)低电流消耗(RX:15.6MA).高灵敏度(-98dBm);5)所需外围元件很少;6)抗干扰能力强:7)采用低压供电(2.1V-3.6V);8)与微处理器的接口配置容易(4总线SPI接口);9)开发工具齐全,提供开发套件图3.1为CC2500的引脚接线图图3.1CC2500引脚图3.2CC2500的内部结构图3-2是CC2500的内部结构示意图。CC2500从天线接收到射频信号时,首先经过低噪声放大器(LowNoiseAmplifier,LNA),然后在正交下变频到2MHz的中频上,形成中频信号的同向分量和正交分量。两路信号经过滤波和放大后,直接通过模数转换器(AnalogtoDigitalConverter,ADC)转换成数字信号。后续的处理,如自动增益控制、最终信道选择、解扩以及字节同步等,都是以数字信号的形式处理。当CC2500的SFD引脚为低电平时,表示接收到了物理帧的SFD字节.接收到的数据存放在128字节的接收FIFO缓存区中,帧的CRC校验由硬件完成。CC2500的FIFO缓存区保存MAC帧的长度、MAC帧头和MAC帧负载数据三个部分,而不保存帧校验码。CC2500发送数据时,数据帧的前导序列、帧的起始分隔符以及帧检验序列由硬件产生;接收数据时,这些部分只用于帧同步和CRC校验,而不会保存到接收FIFO缓存区。CC2500发送数据时,使用直接正交上变频。基带信号的同相分量和正交分量直接被数模转换器转换为模拟信号,通过低通滤波器后,直接变频到设定的信道上。图3-2CC2500的内部结构示意图4ZigBee协议栈研究本章介绍的是基于IEEE802.15.4的无线网络标准ZigBee协议栈,简单讲解ZigBee的MAC以及PHY层(即IEEE802.15.4定义),比较详细地讲解由ZigBee联盟所定义的ZigBee协议栈网络层和应用层。4.1ZigBee协议栈概述ZigBee技术是一个具有统一技术标准的短距离无线通信技术。ZigBee协议栈由一组子层构成,每层为其上层提供一组特定的服务:一个数据实体提供数据传输服务,一个管理实体提供全部其他服务。每个服务实体通过一个服务接入点(SAP)为其上层提供服务接口,并且每个SAP提供了一系列的基本服务指令来实现相应的功能。图4.1Zigbee体系结构模型ZigBee协议栈的体系结构如图3.1所示。它是基于标准的开放式系统互联(OSI)模型,但仅对那些涉及ZigBee的层予以定义。IEEE802.15.4-2003标准定义了最下面的两层:物理层(PHY)和介质接入控制子层(MAC)。ZigBee联盟提供了网络层和应用层(APL)框架的设计,其中应用层的框架包括了应用支持子层(APS)、ZigBee设备对象(ZDO)和由制造商制订的应用对象。IEEE802.15.4在工业科学医疗(ISM)领域,定义了两个工作频段:2.4GHz频段和868/915MHz频段。在IEEE802.15.4中,总共分配了27个具有3种速率的信道:在2.4GHz频段有16个速率为250kb/s的信道;在915MHz频段有lO个40kb/s的信道;在868MHz频段有一个20kb/s的信道。这些信道的中心频率按如下定义(k为信道数)一个IEEE802.15.4可以根据ISM频段、可用性、拥挤状况和数据速率在27个信道中选择一个工作信道。从能量、成本和效率来看,不同的数据速率能为不同的应用提供较好的选择。来自IEEE802.15.4物理层协议数据单元(PPDU)的二进制数据被依次(按字节从低到高)组成4位二进制数据符号,每种数据符号(对应16状态组中的一组)被映射成32位伪噪声码片(CHIP),以便传输。然后这个连续的伪噪声CHIP序列被调制(采用最小键控方式)到载波上,即采用半正弦脉冲波形的偏移正交相移键控(OOPSK)调制方式。IEEE802.15.4MAC层提供两种服务:MAC层数据服务和MAC层管理服务。管理服务通过MAC层管理实体(MLME)服务接入点(SAP)访问高层,MAC层数据服务使MAC层协议数据单元(MPDU)的收发可以通过物理层数据服务。IEEE802.15.4MAC层的特征有信标管理、信道接入机制、保证时隙(GTS)管理、帧确认、确认帧传输、节点接入和分离。ZigBee的网络层主要用于ZigBee网络的组网连接、数据管理以及网络安全等,而应用层主要用于对ZigBee技术的实际应用提供一些应用框架模型等。低速率的无限个局域网允许使用超帧结构。超帧的格式由传感器网络的协调器定义,超帧被分为16个大小相等的时隙n别,由协调器发送,如图4.2所示。每个超帧之间由网络信标分隔。信标可用来使接入的设备同步,描述超帧结构。任何想要在竞争接入时段(CAP)通信的设备都要使用有时隙的载波监听多址接入/冲突避免(CSMA/CA)机制。所有的传输要在下一个信标到来之前结束。图4.2超帧结构从图4.2可以看出,超帧结构有活跃和非活跃两部分。在非活跃部分,协调器将不与网络联系,进入低能模式。对于低延迟应用或需要特殊带宽的应用来说,网络协调器为它贡献出超帧的活跃部分,这部分叫做GTS。GTS由无竞争时段(CFP)组成,它总是紧跟着CAP,在活跃的超帧尾部。网络协调器可以分配7个GTS,每个GTS可以占用一个以上的时隙,而CAP有充足的时间留给基于竞争的接入网络的设备或想加入网络的设备。所有基于竞争的传输都要在CFP开始前结束,同样,GTS的传输也要确保在下个GTS开始前结束。4.2IEEE802.15.4通信层ZigBee协议栈的体系结构如图2.1所示.IEEE802.15.4标准定义了最下面的两层一一物理层(PHY)和介质接入控制子层(MAC),而ZigBee直接使用了IEEE802.15.4所定义的物理层和介质接入控制子层来作为ZigBee的物理层和介质接入控制子层。4.2.1PHY(物理)层ZigBee的通信频率在物理层来规范,ZigBee根据不同的国家和地区为其提供不同的工作频率范围,ZigBee所使用的频率范围分别为2.4GHz和868/915MHz。因此,IEEE802.15.4定义了两个物理层标准,分别是2.4GHz物理层和868/915MHz物理层。两个物理层都基于直接序列扩频(DSSS,DirectSequenceSpreadSpectrum)技术,使用相同的物理层数据包格式,区别在于工作频率、调制技术、扩频码片长度和传输速率的不同。2.4GHz波段为全球统一、无须申请的ISM频段,有助于ZigBee设备的推广和生产成本的降低。2.4GHz的物理层通过采用16相调制技术,能够提供250kb/s的传输速率,从而提高了数据吞吐率,缩短了通信时延和数据收发的时间,所以更加省电。868MHz是欧洲附加的ISM频段,915MHz是美国附加的ISM频段,工作在这两个频段上的ZigBee设备避开了来自2.4GHz频段中其他无线通信设备和家用电器的无线电干扰。868MHz上的传输速率为20kb/s,915MHz上的传输速率则是40kb/s。物理层提供两个服务:PHY数据服务和PHY管理服务,PHY管理服务和物理层管理实体(PLME)接口。PHY数据服务:在物理无线信道上接收和发送PHY协议数据单元(PPDUs),物理层负责下面的任务:无线收发信机的激活和去激活;在当前信道上的能量监测(ED);链路质量指示(LQI),用在接收的数据包上;清除信道评估(CCA);信道频率选择;数据发送和接收;IEEE在物理层中还规范了传输速率以及调制方式等相关要求。在2.4GHz的物理层,数据传输速率为250kb/s,采用的是16相位正交调制技术(O--QPSK):在915MHz的物理层,数据传输速率为40kb/s;采用的是带有二进制移相键控(BPSK)的直接序列扩频(DSSS)技术;在868MHz的物理层,数据传输速率为20kb/s,采用的是带有二进制移相键控(BPSK)的直接序列扩频(DSSS)技术。物理层通过射频固件和射频硬件提供了一个从MAC层到物理层无线信道的接口。从图4.4可以看到,在物理层中存在数据服务接入点和物理层管理实体服务的接入点。通过这两个服务接入点提供如下服务:通过物理层数据服务接入点(PD—SAP)为物理层数据提供服务;通过物理层管理实体(PLME)服务的接入点(PLME—SAP)为物理层管理提供服务。图4.4物理层参考模型图4.5给出了物理层数据包的格式。ZigBee物理层数据包由同步包头、物理层包头和物理层净荷三部分组成。同步包头由前同步码(前导码)和数据包(帧)分隔符组成,用于获取符号同步、扩频码同步和帧同步,也有助于粗略的频率调整;物理层包头指示净荷部分的长度,物理层净荷部分含有MAC层数据包,净荷部分的最大长度是127字节。如果数据包的长度类型为5字节或大于8字节,那么物理层服务数据单元(PSDU)携带MAC层的帧信息,即MAC层协议数据单元。4字节1字节1字节变量(127字节)前导码帧起始分隔符帧长度(7bit)预留位(1bit)PSDU同步头PHY帧头PHY净载图4.5PHY帧结构4.2.2MAC(介质接入控制子层)在IEEE802系列中,OSI参考模型的数据链路层又被分为MAC和LLC两个子层。MAC子层使用物理层提供的服务实现设备之间的数据帧传输,而LLC子层在MAC子层的基础上,在设备之间提供面向连接(关联)和非连接(取消关联)的服务。IEEE802.15.4MAC子层实现包括设备间无线链路的建立、维护和断开,确认模式的帧传送与接收,信道接入与控制,帧校验与快速自动请求重发(ARQ),预留时隙管理以及广播信息管理等。MAC子层处理所有物理层无线信道的接入,其主要工作有:网络协调器产生并发送网络信标帧:支持多个域网(PAN)的关联和取消关联;为设备的安全提供支持;与网络信标同步;信道接入方式采用载波监听多址接入/冲突避免(CSMA/CA)机制;处理和维护保护时隙(GTS)机制:在两个对等的MAC实体之间提供一个可靠的通信链路。MAC层在服务协议汇聚层(SSCS)和物理层之间提供了一个接口。MAC层包括一个称之为MLME的管理实体,该实体通过一个服务接口可调用MAC层管理功能,该实体还负责维护MAC层固有的管理对象的数据库。从图3.6可以看出,在MAC层两个不同服务的接入点提供了两个不同的MAC层服务:MAC层通过它的公共部分子层服务接入点为它提供数据服务;MAC层通过它的管理实体服务接入点为它提供管理服务。图4.7给出了MAC子层的数据包格式。MAC子层数据包由MAC子层帧头(MHR,MACHeader)、MAC子层载荷和MAC子层帧尾(MFR,MACFooter)组成。MAC子层帧头由2字节的帧控制域、1字节的帧序号域和最多20字节的地址域组成。帧控制域指明了MAC帧的类型、地址域的格式以及是否需要接收方确认等控制信息;帧序号域包含了发送方对帧的顺序编号,用于匹配确认帧,实现MAC子层的可靠传输;地址域采用的寻址方式可以是64位的IEEEMAC地址或者8位的ZigBee网络地址。图4.6MAC子层参考模型图4.7MAC帧格式MAC子层载荷,其长度可变,不同的帧类型包含不同的信息,如MAC子层业务数据单元(MSDU):但整个,MAC帧的长度应该小于127字节,其内容取决于帧类型。IEEE802.15.4的MAC子层定义了4种帧类型:广播(信标)帧、数据帧、确认帧和MAC命令帧。只有广播帧和数据帧包含了高层控制命令或者数据,确认帧和MAC命令帧则用于ZigBee设备间与MAC子层功能实体间控制信息的收发。MAC子层帧尾含有采用16位CRC算法计算出来的帧校验序列(FCS),用于接收方判断该数据包是否正确,从而决定是否采用ARQ进行差错恢复。广播帧和确认帧不需要接收方的确认;数据帧和MAC命令帧的帧头包含帧控制域,指示收到的帧是否需要确认,如果需要,并且已经通过了CRC检验,接收方将立即发送确认帧,若发送方在一定时间内收不到确认帧,将自动重传该帧,这就是MAC子层可靠传输的基本过程。IEEE802.15.4MAC子层定义了两种基本的信道接入方法,分别用于两种ZigBee网络拓扑结构中。这两种网络结构分别是基于中心控制的星状网络和基于对等操作的网状网络。在星状网络中,中心设备承担网络的形成和维护、时隙的划分、信道接入控制和专用带宽分配等功能,其余设备根据中心设备的广播信息来决定如何接入和使用无线信道。这是一种时隙化的载波侦听/冲突避免(CSMA/CA)信道接入算法。在对等网状方式的网络中,没有中心设备的控制,也没有广播信道和广播信息,而是使用标准的CSMA/CA信道接入算法接入网络。4.3ZigBee网络层ZigBee协议栈是在IEEE802.15.4标准基础上建立的,我们知道IEEE802.15.4仅定义了协议的MAC和PHY层。ZigBee设备应该包括IEEE802.15.4的PHY和MAC层以及ZigBee协议栈层:网络层(NWK)、应用层和安全服务管理。从应用角度看,通信的本质就是端点到端点的连接(例如,一个带开关组件的设备与带一个或多个灯组件的远端设备进行通信,目的是将这些灯点亮)。端点之间的通信是通过称之为簇的数据结构实现的。每个接口都能接收(用于输入)或发送(用于输出)簇格式的数据。一共有两个特殊的端点,即端点0和端点255。端点0用于整个ZigBee设备的配置和管理,应用程序可以通过端点0与ZigBee协议栈的其他层通信,从而实现对这些层的初始化和配置,附属在端点0的对象被称为ZigBee设备对象(ZDO);端点255用于向所有端点的广播。端点241,254是预留端点。所有端点都使用应用支持子层(APS)提供的服务。APS通过网络层和安全服务提供层与端点相接,并为数据传送、安全和绑定提供服务,所以能够适配不同但兼容的设备,比如带灯的开关。APS使用网络层(NWK)提供的服务。NWK负责设备到设备的通信,并负责网络中设备初始化所包含的活动、消息路由和网络发现。应用层可以通过ZigBee设备对象(ZDO)对网络层参数进行配置和访问。根据ZigBee协议栈规定的所有功能和支持,我们很容易推测ZigBee协议栈的实现需要用到设备中的大量存储器资源。ZigBee规范定义了三种类型的设备,每种都有自己的功能要求。ZigBee协调器是启动和配置网络的一种设备,可以保持间接寻址用的绑定表格,支持关联,同时还能设计信任中心和执行其他活动,负责网络中正常工作以及保持同网络其他设备的通信,一个ZigBee网络只允许有一个ZigBee协调器。ZigBee路由器是一种支持关联的设备,能够将消息转发到其他设备,ZigBee网格或树状网络可以有多个ZigBee路由器。ZigBee终端设备可以执行它的相关功能,并使用ZigBee网络到达其他需要与其通信的设备,它的存储器容量要求最小。三种设备根据功能完整性分为全功能(FFD)和减功能(RFD)设备。其中全功能设备可作为协调器、路由器和终端设备,而减功能设备只能用于终端设备。一个全功能设备可与多个RFD设备或多个其他FFD设备通信,而一个减功能设备只能与一个FFD通信。网络的特定结构会戏剧性地影响设备所需的资源。NWK支持的网络拓扑有星状、树(串)状和网格状。在这几种网络拓扑中,星状网络对资源的要求最低。4.3.1网络层概况ZigBee网络层的主要功能就是提供一些必要的函数,确保ZigBee的MAC层正常工作,并且为应用层提供合适的服务接口。为了向应用层提供其接口,网络层提供了两个必需的功能服务实体,它们分别是数据服务实体和管理服务实体,如图2.8所示。网络层数据实体通过网络层数据实体服务接入点(NLDE-SAP)提供数据传输服务,网络管理层实体通过网络层管理实体服务接入点(NLME-SAP)提供网络管理服务。网络层管理实体利用网络层数据实体完成一些网络的管理工作,并且网络层管理实体完成对网络信息库(NIB)的维护和管理。网络层通过MCPS—SAP和MLME—SAP接口为MAC层提供接口,通过NLDE-SAP与NLME—SAP接口为应用层提供接口服务。网络层管理实体提供网络管理服务,允许应用与协议栈相互作用。网络层管理实体提供如下服务:配置一个新设备:为操作按照要求充分布局协议栈的能力。布局选择包括作为ZigBee协调器开始操作或加入一个现有的网络;开始一个网络:有能力建立一个新网络;加入和离开网络:有能力加入或离开网络以及为对ZigBee协调器或ZigBee路由器请求设备离开网络的能力;寻址:ZigBee协调器和路由器为加入网络的设备分配地址的能力;邻居友备发现j有能力发现、记录和报告设备一跳邻居的信息:路由发现:发现并记录通过网络的路径,通过这些路径,消息被有效路由的能力;接收控N-设备控制接收机何时被激活、激活多久及使能MAC子层同步或直接接收的能力;网络层数据实体服务接入点网络层数据实体服务接入点MAC管理实体服务接入点MAC命令部分子层服务接入点网络层管理实体网络层数据实体网络层管理实体服务接入点图4.8网络层参考模型网络层数据实体为数据提供服务。在两个或多个设备之间传送数据时,将按照应用协议数据单元(APDU)的格式进行传送,并且这些设备必须在同一个网络中,即在同一个内部局域网中。网络层数据实体提供如下服务:生成网络层协议数据单元(NPDU):NLDE能够通过添加合适的协议头从应用支持子层生成NPDU;指定拓扑传输路由。NLDE应能够送NPDU到一个适当的装置,此设备是通信的最终目标或是通信链路下一步的最后目的;4.3.2网络层帧结构网络协议数据单元(NPDU)即网络层帧的结构,如图4.9所示。2字节2字节2字节1字节1字节变量帧控制目的地址来源地址半径域序列号Frame净载路由域NWK头NWK净载图4.9网络层数据包(帧)格式网络协议数据单元(NPDU)结构(帧结构)的基本组成部分是:网络层帧报头,包含帧控制、地址和序列信息;.网络层帧的可变长有效载荷,包含帧类型所指定的信息。图4.9表示的是网络层的通用帧结构,不是所有的帧都包含地址和序列域,但网络层的帧的帧头域,还是按照固定的顺序出现。有的ZigBee网络协议中定义了两种类型的网络层帧,它们分别是数据帧和网络层命令帧。帧控制域是16位长,包含定义帧类型的信息、寻址和序列域和其它控制标识的信息,其格式如图4.10所示,可以看到帧控制域包括帧类型、协议版本、发现路由、安全和保留位。帧类型有数据、网络层命令和保留位;协议版本为ZigBee网络层协议标准的版本号;安全域为该帧是否具有网络层安全操作能力。位:0-12—56—78910—15帧类型协议版本发现路由预留安全预留图4.10帧控制域的格式4.3.3网络层功能介绍ZigBee设备在工作时,各种不同的任务在不同的层次上执行,通过层的服务,完成所要执行的任务。每一层的服务主要完成两种功能:根据其下层服务要求,为上层提供相应的服务:根据上层的服务要求,对下层提供相应的服务。各项服务通过服务原语来实现。每个事件由服务原语组成,它将在一个用户的某一层,通过该层的服务接入点(SAP)与建立对等连接的用户的相同层之间通信。服务原语通过提供一种特定的服务来传输必需的信息。这些服务原语是一个抽象的概念,它们仅仅指出提供的服务内容,而没有指出由谁来提供这些服务。它的定义与其他任何接口的实现无关。由代表其特点的服务原语和参数的描述来指定一种服务。一种服务可能有一个或多个相关的原语,这些原语构成了与具体服务相关的执行命令。每种服务原语提供服务时,根据具体的服务类型,可能不带有传输信息,也可能带有多个传输必需的信息参数。原语通常分为如下4种类型(如下原语环境设置为一个具有1个用户的网络中,两个对等用户及其与J层或子层对等协议实体建立连接的服务原语):Request:请求原语从第1l用户发送到它的第J层,请求服务开始。Indication:指示原语从第1l用户的第J层向第12用户发送,指出对于第12用户有重要意义的内部J层的事件。该事件可能与一个遥远的服务请求有关,或者可能是由一个J层的内部事件引起的。Response:响应原语从第12用户向它的第J层发送,用来表示用户执行上一条原语调用过程的响应。Confirm:确认原语由第J层向第11用户发送,用来传递一个或多个前面服务请求原语的执行结果。网络层管理实体服务接入点为其上层和网络层管理实体的传送管理命令提供接口。NLME所支持的NLME—SAP接口原语包括网络发现、网络形成、允许设备连接、路由器初始化、设备同网络的连接等。网络层的功能包括网络维护、网络层数据的发送与接收、路由的选择以及广播通信。4.4ZigBee应用层ZigBee应用层框架包括应用支持层(APS)、.ZigBee设备对象(ZDO)和制造商所定义的应用对象。ZigBee协议结构包括大量的层状元件,包含IEEE802.15.4MAC层和PHY层及ZigBee网络(NWK)层。每层提供它们相应的服务和能力。APSsubplayer的责任包括维护绑定表,这一功能使两个设备匹配在一起(基于他们的服务和需要)及在两个一定的设备之间发送消息。ZDO的任务包括在网络层定义设备的功能。比如ZigBee协调器或末端设备,在网络层发现设备和确定他们应提供哪种应用服务。发起和/或响应绑定请求并在网络设备之间建立一个安全关系。所谓绑定就是基于两台设备的服务和需求将它们匹配地连接起来。应用支持子层为网络层(NWK)和应用层之间提供一个接口。通过一系列的服务,这些服务由ZDO和定义生产的应用对象使用。APSDE为二个或更多位于同一网络的设备的PDUs传输提供数据发射服务。APSME为发现和绑定设备和维护管理物体数据库即APS信息库提供服务。ZigBee设备对象(ZDO),描述了功能的基本分类,这些功能在应用对象设备范围和APS间提供一个接口。ZDO放置在应用帧框架和应用支持子层之间,它能够满足执行在ZigBee协议栈之间的普通请求。ZDO主要负责:初始化应用支持子层、网络层和安全服务规范。从终端应用组装(集合)构架信息以确定和执行发现、安全管理、网络管理和绑定管理。ZDO为应用帧层中的应用对象提供了公共的接口,以控制设备和网络功能。ZDO连接ZigBee协议栈较低层,在终点口上,利用APSDE—SAP提供数据,利用APSME—SAP传送控制信息,公共接口为设备管理、发现、封装和安全功能提供地址管理。ZigBee应用层除了提供一些必要的函数以及为网络层提供合适的服务接口外,一个重要的功能就是应用者可在这层定义自己的应用对象。5系统的硬件设计5.1系统设计原则低功耗:无线传感器网络的一个重要优势是摆脱了传统网络的连线限制和成本问题.但是,如果没有合适的无线电源,这一优势就无法体现出来.此外,对传感器节点来说,通常采用AAA电池或者钮扣式电池供电,电池电量不可能很高,因此传感器节点的功耗是设计考虑的关键因素,因为如果必须时常更换电池(例如每周或每月),那么相关的劳动力成本便会远远超过它相对有线网络节省的成本。如果携带较多的电池,虽然可以解决电源问题,但必然会增大体积,提高成本,更加积极的方法是降低无线传感器节点的功耗.可靠性与安全性:系统在应用中必须保证能够可靠的运行,在特定条件下对数据的安全性也有较高的要求.系统应具有较高的可靠性,能确保数据的准确性、完整性和一致性,在系统故障或事故造成中断后,具备迅速恢复的功能,同时系统应具有一整套完整的管理策略,可以保证系统的运行安全.系统设计中从硬件到软件都必须考虑可靠性要求.在设计过程中。硬件选用先进、成熟、可靠的产品,软件也尽可能采用成熟的算法,并根据系统特点添加可靠性机制.5.2系统元件概述无线温度传感器的网络应用是MSP430和CC2500结合的一个典型应用,eZ430-RF2500是一个完全基于USB接口的MSP430开发工具,评价MSP430F2274单片机和CC25002.4GHz无线收发器的硬件与软件测试。eZ430-RF2500平台的特点如下:(实物见附图2)1:USB式的自动调试和编程接口,可以自动安装与反馈。2:21个可扩展引脚。3:MSP430系列单片机具有高度整合,超低功耗的特点4:2个通用的数字I/O接口直接连到红绿LED灯,以便视觉反馈。5:可中断按钮的反馈作用。尽管eZ430-RF2500平台中有两块一样的板,但它们在无线传感器中完全是作为有独立特点的独立部件存在的。一个和USB接口连接,作为存取点模块;另一个和电池板连接,作为中断发送模块。5.2.1存取点(AP)存取点的执行的首要任务是传递启动信息到串行通讯端口,然后网络存取点会像网络中心一样对系统初始化,初始化程序完成后,存取点传送文件会显示成功如下:存取点使用的是ADC10内部温度传感器,初始化成功后,它会每秒钟测试一次环境温度,以传送到计算机中。另外,存取点还可以不断的接受新的终端设备的加入。两种颜色的LED灯显示了存取点的两种工作状态:红灯亮表明正在进行存取点与电脑之间的数据测量的传送;绿灯亮表明正在进行对一个网络终端设备的数据接收。5.2.2终端设备(ED)启动后,终端设备会立即寻找对应的存取点来连接,在寻找的时候,绿色和红色的LED灯都会发光。当搜寻到一个存取点时,终端设备会尝试网络连接,红灯的闪烁则表明这项工作正在进行。如果无法连接,则红灯会一直闪烁。一旦连接到存取点,所有的灯会暂时熄灭,还原为缺省值,然后当正常工作时,绿灯会一直保持发光。5.3操作模式本套设备为存取点和计算机串行通讯接口之间的通信提供了两种指定的显示方式,每一种方式又包含两种操作模式。使用者必须每次操作时选择其中的一个选项,每种模式可以通过输入不同的字符来区分,一共有四个字符(不区分大小写):温度显示选项1:C–以摄氏温标输出所有温度F–以华氏温标输出所有温度数据格式显示选项2:V–以扩展的冗余模式显示所有数据M–以最简模式显示所有数据5.3.1冗余模式下面是一个存取点输出的冗余模式的例子:Node(节点):这是中心的数据标识符,这是每一个终端设备连入网络后所给定的。Temp(温度):这是节点测试的温度,根据使用者的选择,它可以显示为摄氏温标或者华氏温标。Battery(电池):这是测量的给MSP430供电的电池的电压值。Strength(强度):这是由CC2500射频测试的接收信号强度显示,为了方便读取,以百分比的形式显示。RE:该选项显示接收数据是否通过距离扩展器。5.3.2最简模式下面是一个存取点输出的最简模式的例子:该模式以最简的方式传送数据以减少频带宽度的使用,它最初的目的是分析计算机网络应用观察器。最简模式的输出和冗余模式的输出包含了同样的内容,顺序也相同。数据之间以逗号隔开,以$字符开头,以#字符结尾。5.4温度传感器节点硬件方案研究设计针对以上问题以及系统功能要求设计了温度传感器节点硬件,本章将介绍以MSP430单片机为核心的电路设计,分为温度传感器终端节点和协调器节点两大部分,结构如图5.1所示,主要包括电源模块、存储器模块、无线传输模块、液晶显示模块、传感器接口、串行通信接口和输入输出接口等模块.图5.1温度传感器节点硬件总体结构图5.5传感器节点主电路设计5.5.1控制器电路设计本次无线传感器节点的MCU选用MSP430F2274,为了满足低功耗的需求。MSP430单片机有3种系统时钟可供选择,分别为片内DCO,外接低速时钟XTI和高速时钟XT2.为了适应软件开发的需要,协调器节点上单片机的Rose脚外接了100KI)电阻,以提高片内DCO的稳定性,同时在XTI和XT2分别连接32.768KHz低速晶体振荡器和8MHz的高速晶体振荡器。此外,为了能为事件记录提供准确的时间,配置了实时时钟功能,芯片选用DSl302,连接到单片机的P4.O~P4.2脚。DSl302内部的31个非易失性存储器可以保存系统的关键数据.在终端节点上,只需要一个32.768KHz的低速晶振,MSP430F2274时钟模块应用了增强型锁相环技术FU^可以根据需要产生需要的高速时钟.为了适应不同应用对外扩存储器的需要,协调器节点上设计了2种扩展存储器方案,分别为12C接口的EEPROM24LC256和SPI接13的Flash存储器M25P80,还可以根据需要选用引脚兼容的不同容量芯片替换。节点上24LC256的地址为0,在其12C总线上配置了3个10K.Q的上拉电阻。为了增加设计的灵活性,M25P80没有和CC2500共用个SPI接口,而是连接到单片机的通用I/O引脚P6.2~P6.7,由软件实现SPI接口。5.5.2输入输出模块设计温度传感器终端节点的输入输出模块提供节点配置所需的开关和按键功能,单片机在上电时。通过P1.2-P1.4的状态选择工作模式,INC和DEC为按键。协调器节点上,MCU有较多的输入输出接口,为方便连接各种扩展模块,完成不同的输入输出功能,协调器节点上提供2路模拟量的输入和2路开关量的输出。2路模拟量通过分压后连接到MSP430单片机的12位A/D转换器,可以是4~20mA的电流信号,也可以是O~5V的电压信号。2路开关量输出PO1、P02通过光偶隔离后驱动外部设备,如图5.2所示。另外,提供了4路按键输入和4路LED显示。分别连接单片机的中断引脚PI.4~P1.7和通用I/O引脚P5.4~P5.7.图5.2协调器节点输入输出接口图5.6传感器节点电源设计温度传感器节点上共设计了两种电源,一种为电池供电,应用在终端节点上;另一种为10~30V直流电源供电,用在协调器节点上.5.6.1终端节点的可控电源设计温度传感器终端节点采用2节AAA碱性电池供电。采用TPS60210作为电源管理芯片,为节点供电。TPs60210是一款低功耗的电源管理芯片,当输入电压降至1.6V时仍可以输出稳定的3.3V电压,具有电池欠压报警、供电模式可控等功能,可延长电池使用寿命。电路如图3.4所示,单片机通过sNOOzE引脚控制电源的工作模式,当系统进入低功耗模式时,只要将该引脚置为低电平,即可使电源进入低功耗模式。当电池欠压时,LBO引脚会被拉低,单片机检测到以后可以通过网络通知管理人员更换电池。图5.3终端节点电源电路5.6.2协调器节点的开关电源设计由于协调器节点功耗比较大,不适合用电池供电,所以它采用工业现场常用的lO~30v直流电源。由于协调器节点最终的供电电压要保持在3V左右,为了适应10~30V的宽电压输入范围,采用开关电源加线性稳压的方式实现I)C/DC转换。开关电源选用比较成熟的ID4063作为电源转换芯片,然后选用BMIll7完成3.3V稳压,其电路如图5.4所示.10~30V直流电源由POWER输入,通过开关电源转换后得到V,开关电源的输出电压的计算公式为:VⅢ5+=1.25(I+R20/R19),这里R20和R19分别选用3K和lK,输出电压为5V,然后通过BMIll7稳压后。在V33端得到3.3V电源。在电源的输入端接入了二极管IN4007,防止电源极性接错,还串联了一个自恢复保险丝F1保证本系统负载异常变大时不会给整个供电系统造成影响.另外,为提高电源抗干扰能力,输入端并联了一个TVs管P6KFA7A,有效降低了浪涌电压的影响.图5.4协调器节点电源电路5.7传感器节点通信模块设计5.7.1无线通信模块设计无线通信模块主要完成温度传感器终端节点和协调器节点之间的数据交换。在IEEE802.15.4标准发布后,各大无线芯片制造商陆续推出了支持该标准的芯片,其中比较典型的有:Freescale的MCl3192,Chipcon的CC2500,ATMEL的AT86RF230。这些芯片都具有很高的集成度,外部只需要天线、晶振、去偶电容就可以工作。以上三种芯片的性能相当,鉴于Chipcon现归TI旗下,CC2500在国内应用较广,且供货充足,本设计采用它作为无线收发模块的RF芯片。CC2500通过四线制SPI接口和6条信号线与控制器连接,完成设置和收发数据两方面的工作,如图5.5所示。在系统设计时,提供2种天线方案,一种为偶极子天线,采用PCB天线,如图3.7所示.另一种为单极子天线,如图3.8所示。这套方案中提供了两种天线方式,一种为PCB天线,另外一种是外接的50Q天线,可以根据需要通过焊接C18或C47选择。另外,CC2500在硬件上集成了IEEE802.15.4的MAC层,简化了系统的开发。在设计时,将无线收发模和主板分离,方便使用其他替换模块,增加了设计的灵活性。图5.5CC2500与MCU的连接6系统的软件设计6.1存取点的软件设计下面的C程序包含了本平台的存取点的固件设计,该编码从系统初始化开始执行,其中存取点和终端设备的初始化程序是一样的。BSP_Init();if(Flash_Addr[0]==0xFF&&Flash_Addr[1]==0xFF&&Flash_Addr[2]==0xFF&&Flash_Addr[3]==0xFF){createRandomAddress();//setRandomdeviceaddressatinitialstartup}lAddr.addr[0]=Flash_Addr[0];lAddr.addr[1]=Flash_Addr[1];lAddr.addr[2]=Flash_Addr[2];lAddr.addr[3]=Flash_Addr[3];SMPL_Ioctl(IOCTL_OBJ_ADDR,IOCTL_ACT_SET,&lAddr);MCU_Init();//TransmitsplashscreenandnetworkinitnotificationTXString((char*)splash,sizeofsplash);TXString("\r\nInitializingNetwork",26);SMPL_Init(sCB);//AccessPointspecificfunctionparameter//networkinitializedTXString("Done\r\n",6);6.2协调器节点的软件设计6.2.1协调器节点软件总体设计协调器节点在无线温度传感器子系统中的作用有:组织ZigBee网络、管理温度传感器终端节点的数据、向网关转发温度传感器终端节点的数据。其控制软件的总体结构如图6.1所示,包括ZigBee协议栈、Modbus服务、节点管理三个模块.节点管理Modbus服务节点管理Modbus服务Zigbee协议栈有线网络无线网络图6.1协调器节点软件框图系统中ZigBee协议栈采用的是MpZBeeV3.5,基于它的编程有固定的格式,以下为系统主程序的示意代码:voidmain(void){SystemImt();//硬件和系统其他功能的初始化ZigBeelnit();//ZigBee协议栈初始化while(1){CLRWDT();//看门狗复位ZigBeeTasks(¤tPrimitive);//协议栈任务switch(currentPrimitive){∥包含应用层需要处理的通信原语default:currentPrimitive=NO_PRIMITIVE;break;}ModBusAPP();//Modbus服务和系统需要完成的其他应用程序}}主程序启动后首先完成系统和协议栈的初始化任务,之后进入无限循环。在循环程序中完成协议栈任务和系统需要的其他任务。6.2.2ZigBee协议应用对象设计MpZBeeV3.5为ZigBee应用程序提供一个接口函数ZigbeeTasks(),处理zigBee协议栈的应用支持子层到物理层的任务。在switch(currentPrimitive)程序段中需要包含ZigBee应用层代码,其ZDO部分已经由协议栈给出,系统开发需要完成应用对象的设计.本系统中,协调器节点只需要利用ZigB∞协议栈获取温度传感器终端节点的数据,不需要提供其他额外服务,所以只要设计一个应用对象,命名为EP温度端点.另外,需要为这个应用对象编写配置文件(Profile)以及节点的配置和描述信息。温度端点EP负责接收和处理温度传感器终端节点发来的数据,Tempera
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨学科实践活动3 调查家用燃料的变迁与合理使用教学设计初中化学沪教版2024九年级上册-沪教版2024
- 10.1(1) 全等三角形 教学设计2023-2024学年鲁教版(五四制)数学七年级下册
- 第十一课 老师各不同说课稿-2025-2026学年小学心理健康人教版四年级上册-人教版
- 7.1.3 两栖动物的生殖和发育(说课稿)2023-2024学年八年级生物下册同步教学(人教版河北专版)
- 1.3像科学家那样探究 说课稿- 2024-2025学年浙教版七年级上册科学
- 2025年情景模拟演练护理学题库及答案
- 2025年春考护理笔试试题题库及答案
- 2025年基础护理题库及答案知识点及答案
- 3.1运动的水分子第2课时“教-学-评”一致性说课稿-2024-2025学年九年级化学鲁教版(2024)上册
- 第11课 教学设计-七年级上学期体育与健康
- 望洞庭教学课件
- 都江堰水利工程课件
- 液氮运输投标方案(3篇)
- 《2019年甘肃省职业院校技能大赛学前教育专业教育技能赛项竞赛规程(高职教师组)》
- 护理工作的模式
- 《智能制造技术与工程应用》全套教学课件
- TSG T5002-2017 电梯维护保养规则
- 2025年全国保密教育线上培训考试试题库附答案【考试直接用】含答案详解
- 2025年度全国普通话水平测试20套复习题库及答案
- T-CECS 10400-2024 固废基胶凝材料
- 初中竞选安全部部长
评论
0/150
提交评论