无线传感器网络 第5章 传感器网络应用开发基础_第1页
无线传感器网络 第5章 传感器网络应用开发基础_第2页
无线传感器网络 第5章 传感器网络应用开发基础_第3页
无线传感器网络 第5章 传感器网络应用开发基础_第4页
无线传感器网络 第5章 传感器网络应用开发基础_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

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

文档简介

1、 第第5章章 传感器网络应用开发基础传感器网络应用开发基础 第第1节节 ZigBee协议栈原理协议栈原理 5.1.1 ZigBee概述概述 5.1.2 ZigBee技术体系技术体系 5.1.3 Z-Stack协议栈协议栈 5.1.4 SappWsn工程简介工程简介第第1节节 ZigBee协议栈原理协议栈原理 5.1.1 ZigBee概述概述nZigBeeZigBee技术发展历程技术发展历程lZigBeeZigBee的前身是的前身是19981998年由年由INTELINTEL、IBMIBM等产业巨头发起的等产业巨头发起的“HomeRFLite”HomeRFLite”技术。技术。l20002000

2、年年1212月成立了工作小组起草月成立了工作小组起草IEEE 802.15.4IEEE 802.15.4标准。标准。lZigbeeZigbee联盟成立于联盟成立于20012001年年8 8月。月。20022002年下半年,英国年下半年,英国英维英维思思公司、日本三菱电气公司、美国摩托罗拉公司以及荷兰公司、日本三菱电气公司、美国摩托罗拉公司以及荷兰飞利浦半导体公司四大巨头共同宣布加盟飞利浦半导体公司四大巨头共同宣布加盟“ZigbeeZigbee联盟联盟”,以研发名为,以研发名为“Zigbee”Zigbee”的下一代无线通信标准,这一事的下一代无线通信标准,这一事件成为该项技术发展过程中的里程碑。

3、件成为该项技术发展过程中的里程碑。第第1节节 ZigBee协议栈原理协议栈原理 5.1.1 ZigBee概述概述l20042004年年1212月月ZigBee1.0ZigBee1.0标准标准( (又称为又称为ZigBee2004)ZigBee2004)敲定,这敲定,这使得使得ZigBeeZigBee有了自己的发展基本标准。有了自己的发展基本标准。l20052005年年9 9月公布月公布ZigBee1.0ZigBee1.0标准并提供下载。在这一年里,标准并提供下载。在这一年里,华为公司和华为公司和IBMIBM公司加入了公司加入了ZigBeeZigBee联盟。但是基于该版本联盟。但是基于该版本的应

4、用很少,与后面的版本也不兼容。的应用很少,与后面的版本也不兼容。l20062006年年1212月进行标准修订,推出月进行标准修订,推出ZigBee1.1ZigBee1.1版版( (又称为又称为ZigBee2006)ZigBee2006)。该协议虽然命名为。该协议虽然命名为ZigBee1.1ZigBee1.1,但是与,但是与ZigBee1.0ZigBee1.0版是不兼容的。版是不兼容的。第第1节节 ZigBee协议栈原理协议栈原理 5.1.1 ZigBee概述概述l20072007年年1010月完成再次修订月完成再次修订( (称为称为ZigBee2007/PRO)ZigBee2007/PRO),

5、能够兼容之前的能够兼容之前的ZigBee2006ZigBee2006版本,并且加入了版本,并且加入了ZibgeePROZibgeePRO部分,此时部分,此时ZigBeeZigBee联盟更加专注于以下联盟更加专注于以下三个方面:三个方面:l家庭自动化家庭自动化(Home Automation(Home Automation;HA)HA);l建筑建筑/ /商业大楼自动化商业大楼自动化(Building Automation(Building Automation;BA)BA);l先进抄表基础建设先进抄表基础建设(Advanced Meter Infrastructure(Advanced Mete

6、r Infrastructure;AMI)AMI);第第1节节 ZigBee协议栈原理协议栈原理 5.1.1 ZigBee概述概述nZigBeeZigBee是一种开放式的基于是一种开放式的基于IEEE 802.15.4IEEE 802.15.4协定的无线个协定的无线个人局域网人局域网(Wireless Personal Area Networks)(Wireless Personal Area Networks)标准。标准。 IEEE 802.15.4IEEE 802.15.4定义了物理层和媒体接入控制层,而定义了物理层和媒体接入控制层,而ZigBeeZigBee则定义了更高层如网路层及应用层

7、等。则定义了更高层如网路层及应用层等。nZigBeeZigBee技术是一种近距离、低复杂度、低功耗、低速率、技术是一种近距离、低复杂度、低功耗、低速率、低成本的双向无线通讯技术。早期也被称为低成本的双向无线通讯技术。早期也被称为 “HomeRF HomeRF Lite”Lite”、“RF- EasyLink”RF- EasyLink”或或“fireFly”fireFly”无线电技术,无线电技术,目前统称为目前统称为ZigBeeZigBee技术。技术。第第1节节 ZigBee协议栈原理协议栈原理 5.1.1 ZigBee概述概述nZigBeeZigBee可工作在可工作在2.14GHz(2.14G

8、Hz(全球流行全球流行) )、868MHz(868MHz(欧洲流行欧洲流行) ) 和和915 MHz(915 MHz(美国流行美国流行)3)3个频段上个频段上, ,分别具有最高分别具有最高250kbit/s250kbit/s、20kbit/s20kbit/s和和40kbit/s40kbit/s的传输速率的传输速率, ,它的传输距离在它的传输距离在10-10-75m75m的范围内的范围内, , 但可以继续增加但可以继续增加 。第第1节节 ZigBee协议栈原理协议栈原理 5.1.1 ZigBee概述概述nZigBeeZigBee具体如下技术特点:具体如下技术特点: 1. 1. 低功耗低功耗 由于

9、由于ZigBeeZigBee的传输速率低的传输速率低, ,发射功率仅为发射功率仅为1mW,1mW,而而且采用了休眠模式且采用了休眠模式, ,功耗低,因此功耗低,因此ZigBeeZigBee设备非设备非常省电。据估算常省电。据估算,ZigBee,ZigBee设备仅靠两节设备仅靠两节5 5号电池就号电池就可以维持长达可以维持长达6 6个月到个月到2 2年左右的使用时间。年左右的使用时间。 2. 2. 低成本低成本 由于由于ZigBeeZigBee模块的复杂度不高,模块的复杂度不高,ZigBeeZigBee协议免专协议免专利费,再加之使用的频段无需付费,所以它的成利费,再加之使用的频段无需付费,所以

10、它的成本较低。本较低。第第1节节 ZigBee协议栈原理协议栈原理 5.1.1 ZigBee概述概述 3. 3. 时延短时延短 通信时延和从休眠状态激活的时延都非常短通信时延和从休眠状态激活的时延都非常短, ,典典型的搜索设备时延型的搜索设备时延30ms,30ms,休眠激活的时延是休眠激活的时延是15ms, 15ms, 活动设备信道接入的时延为活动设备信道接入的时延为15ms15ms。 4. 4. 网络容量大网络容量大 一个星型结构的一个星型结构的ZigBeeZigBee网络最多可以容纳网络最多可以容纳254254个个从设备和一个主设备从设备和一个主设备, , 一个区域内可以同时存在一个区域内

11、可以同时存在最多最多100100个个ZigBeeZigBee网络网络, , 而且网络组成灵活。网而且网络组成灵活。网状结构的状结构的ZigBeeZigBee网络中可有网络中可有6500065000多个节点。多个节点。第第1节节 ZigBee协议栈原理协议栈原理 5.1.1 ZigBee概述概述 5. 5. 可靠可靠 采取了碰撞避免策略采取了碰撞避免策略, ,同时为需要固定带宽的通信同时为需要固定带宽的通信业务预留了专用时隙业务预留了专用时隙, ,避开了发送数据的竞争和冲避开了发送数据的竞争和冲突。突。MACMAC层采用了完全确认的数据传输模式层采用了完全确认的数据传输模式, , 每个每个发送的

12、数据包都必须等待接收方的确认信息。如发送的数据包都必须等待接收方的确认信息。如果传输过程中出现问题可进行重发。果传输过程中出现问题可进行重发。 6. 6. 安全安全 ZigBeeZigBee提供了基于循环冗余校验提供了基于循环冗余校验(CRC)(CRC)的数据包完的数据包完整性检查功能整性检查功能, ,支持鉴权和认证支持鉴权和认证, , 采用了采用了AES-128AES-128的加密算法的加密算法, ,各个应用可以灵活确定其安全属性。各个应用可以灵活确定其安全属性。第第1节节 ZigBee协议栈原理协议栈原理 5.1.2 ZigBee技术体系技术体系nZigBeeZigBee设备类型设备类型

13、1. ZigBee1. ZigBee协调器(协调器(CoordinatorCoordinator) 2. ZigBee2. ZigBee路由器(路由器(RouterRouter) 3. ZigBee3. ZigBee终端设备(终端设备(End-deviceEnd-device) 一个一个ZigbeeZigbee网络由一个协调器节点、多个网络由一个协调器节点、多个路由器和多个终端设备节点组成路由器和多个终端设备节点组成。第第1节节 ZigBee协议栈原理协议栈原理 5.1.2 ZigBee技术体系技术体系lZigBeeZigBee协调器(协调器(CoordinatorCoordinator)l它

14、包含所有的网络信息,是它包含所有的网络信息,是3 3种设备中最复杂的种设备中最复杂的,存储容量大、计算能力最强。它主要用于发送,存储容量大、计算能力最强。它主要用于发送网络信标、建立一个网络、管理网络节点、存储网络信标、建立一个网络、管理网络节点、存储网络节点信息、寻找一对节点间的路由信息并且网络节点信息、寻找一对节点间的路由信息并且不断的接收信息。一旦网络建不断的接收信息。一旦网络建立完成立完成, ,这个协调这个协调器的作用就像路由器节点器的作用就像路由器节点。l协调器选择一个信道和一个网络协调器选择一个信道和一个网络PAN ID,随后启,随后启动整个网络。动整个网络。第第1节节 ZigBe

15、e协议栈原理协议栈原理 5.1.2 ZigBee技术体系技术体系lZigBeeZigBee路由器(路由器(RouterRouter)l它执行的功能包括它执行的功能包括允许其它设备加入这个网络允许其它设备加入这个网络,跳跃路由跳跃路由,辅助子树下电池供电终端的通信。,辅助子树下电池供电终端的通信。通通常常, ,路由器全时间处在活动状态路由器全时间处在活动状态, ,必需必需持续供电。持续供电。l在树状拓扑中,在树状拓扑中,允许路由器周期运行允许路由器周期运行,因此,因此这个这个情情况下允许路由器电池供电。况下允许路由器电池供电。第第1节节 ZigBee协议栈原理协议栈原理 5.1.2 ZigBee

16、技术体系技术体系lZigBeeZigBee终端设备(终端设备(End-deviceEnd-device)l一个终端设备对于维护这个网络设备没有具体的一个终端设备对于维护这个网络设备没有具体的责任责任, ,所以它可以睡眠和唤配,看它自己的选择所以它可以睡眠和唤配,看它自己的选择。因此它能作为电池供电节点。因此它能作为电池供电节点。第第1节节 ZigBee协议栈原理协议栈原理 5.1.2 ZigBee技术体系技术体系nZigBeeZigBee网络拓扑结构网络拓扑结构 ZigBeeZigBee支持三种自组织无线网络类型,即支持三种自组织无线网络类型,即星型结星型结构构、网状结构网状结构(Mesh)(

17、Mesh)和和簇状结构簇状结构(ClusterTree)(ClusterTree),特别是网状结构,具有很强的网络健壮性和系,特别是网状结构,具有很强的网络健壮性和系统可靠性。统可靠性。第第1节节 ZigBee协议栈原理协议栈原理 5.1.2 ZigBee技术体系技术体系星型星型网状型网状型簇状型簇状型网络协调器网络协调器全功能设备全功能设备(FFD,Router):(FFD,Router):可以支持可以支持任何一种拓扑结构,可以作为网络任何一种拓扑结构,可以作为网络协商者和普通协商者,并且可以和协商者和普通协商者,并且可以和任何一种设备进行通信任何一种设备进行通信精简功能设备精简功能设备(R

18、FD):(RFD):只支持星型结只支持星型结构,不能成为任何协商者,可以和构,不能成为任何协商者,可以和网络协商者进行通信,实现简单网络协商者进行通信,实现简单。第第1节节 ZigBee协议栈原理协议栈原理 5.1.2 ZigBee技术体系技术体系lMesh是一种特殊的、按接力方式传输的点对点是一种特殊的、按接力方式传输的点对点的网络结构,其路由可自动建立和维护。的网络结构,其路由可自动建立和维护。l一个一个ZigBee网络只有一个网络协调器,但可以有网络只有一个网络协调器,但可以有若干个路由器。若干个路由器。l协调器负责整个网络的建网,同时它也可作为与协调器负责整个网络的建网,同时它也可作为

19、与其它类型网络的通讯节点(网关)。其它类型网络的通讯节点(网关)。l构成协调器和路由器的器件必须是全功能器件(构成协调器和路由器的器件必须是全功能器件(FFD),而构成终端设备的器件可以是全功能器),而构成终端设备的器件可以是全功能器件,也可是简约功能器件(件,也可是简约功能器件(RFD).第第1节节 ZigBee协议栈原理协议栈原理 5.1.2 ZigBee技术体系技术体系lZigBeeZigBee采用的路由算法采用的路由算法lZigBeeZigBee采用按需路由算法采用按需路由算法AODVAODV,在节能和网络性,在节能和网络性能上都有着很大的优势。能上都有着很大的优势。lAODVAODV

20、路由协议是一种基于距离矢量的按需路由算路由协议是一种基于距离矢量的按需路由算法,只保持需要的路由,而不需要节点维持通信法,只保持需要的路由,而不需要节点维持通信过程中未达目的节点的路由。节点仅记住下一跳过程中未达目的节点的路由。节点仅记住下一跳,而非像源节点路由那样记住整个路由。它能在,而非像源节点路由那样记住整个路由。它能在网络中的各移动节点之间动态地、自启动地建立网络中的各移动节点之间动态地、自启动地建立逐跳路由。逐跳路由。第第1节节 ZigBee协议栈原理协议栈原理 5.1.3 Z-Stack协议栈协议栈n地址类型地址类型lZigBee设备有两种类型的地址:设备有两种类型的地址:l64位

21、位IEEE地址(地址(MAC地址),全球唯一,设地址),全球唯一,设备将在其生命周期内一直拥有它。备将在其生命周期内一直拥有它。MAC地址通地址通常由制造商或者被安装时设置。这些地址由常由制造商或者被安装时设置。这些地址由IEEE 维护和分配。维护和分配。 l16 位网络地址,即短地址。当设备加入网络位网络地址,即短地址。当设备加入网络后分配短地址,在网络中唯一,用来在网络中后分配短地址,在网络中唯一,用来在网络中鉴别设备和发送或接收数据。鉴别设备和发送或接收数据。 第第1节节 ZigBee协议栈原理协议栈原理 5.1.3 Z-Stack协议栈协议栈nZ-Stack网络地址分配网络地址分配 l

22、每个每个ZigBee设备加入网络时,从其父设备那里获得一设备加入网络时,从其父设备那里获得一个网络地址(短地址)个网络地址(短地址) lMAX_DEPTH网络的最大深度,协调器深度为网络的最大深度,协调器深度为 0。lMAX_CHILDREN路由器或协调器节点最大个数。路由器或协调器节点最大个数。lMAX_ROUTER决定路由器或协调器可以处理的具有路决定路由器或协调器可以处理的具有路由功能的子节点的最大个数,是由功能的子节点的最大个数,是MAX_CHILDREN 的的一个子集,终端节点使用一个子集,终端节点使用MAX_CHILDREN MAX_ROUTER剩下的地址空间。剩下的地址空间。 第

23、第1节节 ZigBee协议栈原理协议栈原理 5.1.3 Z-Stack协议栈协议栈nZ-Stack网络地址分配网络地址分配l兄弟节点之间的地址间隔兄弟节点之间的地址间隔Cskip的计算的计算: lCm: 一个父节点可拥有的最多子节点数;一个父节点可拥有的最多子节点数;lRm: 一个父节点可拥有的最多路由节点数;一个父节点可拥有的最多路由节点数;lLm: 网络的最大深度;网络的最大深度;ld : 该设备深度。该设备深度。 Rm1R*CmRmCm11Rm);1dLm(*Cm11dLmm)d(Cskip第第1节节 ZigBee协议栈原理协议栈原理 5.1.3 Z-Stack协议栈协议栈nCskip位

24、置配置范例位置配置范例l最多路由节点最多路由节点 = 4l最多子节点最多子节点 = 4l最大深度最大深度 = 3CRRRRRRRRREAddr = 0Addr = 1 Addr = 22 Addr = 43Addr = 64Addr = 2Addr = 23Addr = 28Addr = 65Addr = 70Addr = 66第第1节节 ZigBee协议栈原理协议栈原理 5.1.3 Z-Stack协议栈协议栈函函 数数 名名功功 能能NLME_GetShortAddr()获取该设备网络短地址获取该设备网络短地址NLME_GetExtAddr()获取获取64位扩展地址位扩展地址NLME_Get

25、CoordShortAddr()获取父设备网络短地址获取父设备网络短地址NLME_GetCoordExtAddr()获取父设备获取父设备64位扩展地址位扩展地址nZ-Stack寻址寻址l寻址函数寻址函数第第1节节 ZigBee协议栈原理协议栈原理 5.1.3 Z-Stack协议栈协议栈nZ-Stack几种不同的寻址方式几种不同的寻址方式 laddrMode设为设为Addr16Bit,寻址是单播,数据包发给网络,寻址是单播,数据包发给网络上单个已知地址的设备。上单个已知地址的设备。laddrMode设为设为AddrNotPresent,这是当应用不知道包的,这是当应用不知道包的最终目的地址时采用

26、的方式,目的地址在绑定表中查询,最终目的地址时采用的方式,目的地址在绑定表中查询,如果查到多个表项就可以发给多个目的地实现多播。如果查到多个表项就可以发给多个目的地实现多播。laddrMode设为设为AddrBroadcast表示向所有同网设备发包,表示向所有同网设备发包,此时,目的地址可以设为此时,目的地址可以设为NWK_BROADCAST_SHORTADDR_DEVALL (0 xFFFF)和和NWK_BROADCAST_SHORTADDR_DEVRXON (0 xFFFD),前者是发给所有设备包括睡眠设备,后者不,前者是发给所有设备包括睡眠设备,后者不包括睡眠设备。包括睡眠设备。nZ-S

27、tack协议栈的文件夹协议栈的文件夹nAPP:应用层目录,包含用户应用程序及接口,包括串口:应用层目录,包含用户应用程序及接口,包括串口数据处理、无线接收数据处理、用户数据处理、无线接收数据处理、用户LCD显示处理、传感显示处理、传感器数据读取和发送等。器数据读取和发送等。nHAL:硬件层目录,包含有与硬件相关的配置和驱动及操:硬件层目录,包含有与硬件相关的配置和驱动及操作函数。作函数。nMAC:MAC 层目录,包含层目录,包含MAC层参数配置文件及层参数配置文件及MAC的的LIB库的函数接口文件。库的函数接口文件。nMT:监控调试层:实现通过串口调试各层,与各层进行:监控调试层:实现通过串口

28、调试各层,与各层进行直接交互。直接交互。nNWK:网络层目录,含网络层配置参数文件及网络层库:网络层目录,含网络层配置参数文件及网络层库的函数接口文件,的函数接口文件,APS层库的函数接口。层库的函数接口。nOSAL:操作系统目录。:操作系统目录。第第1节节 ZigBee协议栈原理协议栈原理 5.1.4 SappWsn工程工程nZ-Stack协议栈的文件夹协议栈的文件夹nProfile:AF(Application work)层目录,包含层目录,包含AF层处理层处理函数文件。函数文件。nSecurity:安全层目录,安全层处理函数,如加密函数等:安全层目录,安全层处理函数,如加密函数等nSer

29、vices:地址处理函数目录,包括着地址模式的定义及:地址处理函数目录,包括着地址模式的定义及地址处理函数。地址处理函数。nTools:工程配置目录,包括空间划分及:工程配置目录,包括空间划分及ZStack相关配置相关配置信息。信息。nZDO(ZigBee Device Objects):):ZDO 目录。目录。nZMac: MAC层目录,包括层目录,包括MAC层参数配置及层参数配置及MAC层层LIB库函数回调处理函数。库函数回调处理函数。nZMain:主函数目录,包括入口函数及硬件配置文件。:主函数目录,包括入口函数及硬件配置文件。nOutput:输出文件目录,是:输出文件目录,是EW805

30、1 IDE自动生成的。自动生成的。第第1节节 ZigBee协议栈原理协议栈原理 5.1.4 SappWsn工程工程nZ-Stack选项设置选项设置n通道设置通道设置第第1节节 ZigBee协议栈原理协议栈原理 5.1.4 SappWsn工程工程nPAN ID设置设置n若若PAN ID0 xFFFF,则协调器随机生成,则协调器随机生成PAN ID,否,否则,使用指定的则,使用指定的PAN ID。n配置好配置好PAN_ID,信道、并使用,信道、并使用Coordination、Router和和EndDevice编译工程,将可执行文件烧写到传感器板和网编译工程,将可执行文件烧写到传感器板和网关节点板进

31、行测试,通过串口或者关节点板进行测试,通过串口或者PC端程序查看信息。端程序查看信息。第第1节节 ZigBee协议栈原理协议栈原理 5.1.4 SappWsn工程工程第第1节节 ZigBee协议栈原理协议栈原理n本节学习要求本节学习要求n了解了解ZigBee技术的产生与发展技术的产生与发展n初步理解初步理解ZigBee协议栈原理及技术体系协议栈原理及技术体系n理解理解ZigBee网络的拓扑结构、地址类型网络的拓扑结构、地址类型n理解理解Z-Stack网络地址分配策略及网络配置方法网络地址分配策略及网络配置方法n学会使用学会使用Z-Stack协议栈构建协议栈构建ZigBee网络网络n思考题思考题

32、nZigBee与与IEEE802.15.4标准的联系与区别标准的联系与区别n简述简述zigbee体系结构中各协议层的作用体系结构中各协议层的作用第第2节节 网络网络节点的硬件开发节点的硬件开发 1、硬件开发概述、硬件开发概述n硬件系统的设计特点和要求硬件系统的设计特点和要求n设计传感器网络硬件节点需从以下方面考虑:设计传感器网络硬件节点需从以下方面考虑:n微型化微型化n扩展性和灵活性扩展性和灵活性n稳定性和安全性稳定性和安全性n低成本低成本n低功耗低功耗第第2节节 网络网络节点的硬件开发节点的硬件开发 1、硬件开发概述、硬件开发概述n硬件系统的设计内容硬件系统的设计内容n传感器网络设计的主要内

33、容在于传感器网络节点。传感器网络设计的主要内容在于传感器网络节点。n传感器节点的基本硬件模块组成主要由数据处理模块、传感器节点的基本硬件模块组成主要由数据处理模块、换能器模块、无线通信模块、电源模块和其他外围模块换能器模块、无线通信模块、电源模块和其他外围模块组成。组成。n换能器模块包括各种传感器和执行器,用于感知数据和换能器模块包括各种传感器和执行器,用于感知数据和执行各种控制动作。其他外围模块包括看门狗电路、电执行各种控制动作。其他外围模块包括看门狗电路、电池电量检测模块等,也是传感器节点不可缺少的组成部池电量检测模块等,也是传感器节点不可缺少的组成部分。分。n数据处理模块数据处理模块n主

34、要考虑如下五个方面:主要考虑如下五个方面:n节能设计节能设计n处理速度的选择处理速度的选择n低成本低成本n小体积小体积n安全性安全性第第2节节 网络网络节点的硬件开发节点的硬件开发 2、传感器节点的模块化设计、传感器节点的模块化设计n各种常见的微控制器性能列表各种常见的微控制器性能列表厂商厂商芯片型号芯片型号RAM容容量量/KBFlash容容量量/KB正常工正常工作电流作电流/mA睡眠模睡眠模式下的式下的电流电流/AAtmelMega10341285.51Mega1284128820Mega165/325/6454642.52MicrochipPIC87x0.36821Intel8051 8位

35、位Classic0.5323058051 16位位1164510Philips51 16位位260153MotorolaHC050.5326.690HC082328100HCS084606.51TIMSP14x16位位2601.51MSP16x16位位104821AtmelAT91 ARM Thumb256102438160IntelXScale PXA27X256N/A39574SamsungS44B08N/A605第第2节节 网络网络节点的硬件开发节点的硬件开发 2、传感器节点的模块化设计、传感器节点的模块化设计n换能器模块换能器模块n是指将一种物理能量变为另一种物理能量的器件,是指将一种

36、物理能量变为另一种物理能量的器件,包括传感器和执行器。包括传感器和执行器。n有些传感器的输出是模拟信号,必须进行模有些传感器的输出是模拟信号,必须进行模/数转换数转换。有些执行器的输入也是模拟量,也要进行数。有些执行器的输入也是模拟量,也要进行数/模转模转换。换。n在网络节点中配置模在网络节点中配置模/数和数数和数/模转换器,能够降低模转换器,能够降低系统的整体成本,尤其是在节点有多个传感器且可系统的整体成本,尤其是在节点有多个传感器且可共享一个转换器的时候。共享一个转换器的时候。第第2节节 网络网络节点的硬件开发节点的硬件开发 2、传感器节点的模块化设计、传感器节点的模块化设计n无线通信模块

37、无线通信模块n无线通信模块由无线射频电路和天线组成,目前采用无线通信模块由无线射频电路和天线组成,目前采用的传输介质主要包括无线电、空气、红外、激光和超的传输介质主要包括无线电、空气、红外、激光和超声波等,它是传感器节点中最主要的耗能模块,是传声波等,它是传感器节点中最主要的耗能模块,是传感器节点的设计重点。感器节点的设计重点。n传感器网络应用的无线通信技术通常包括传感器网络应用的无线通信技术通常包括IEEE 802.11b、IEEE 802.15.4(ZigBee)、Bluetooth、UWB、RFID和和IrDA等,还有很多芯片双方通信等,还有很多芯片双方通信的协议由用户自己定义,这些芯片

38、一般工作在的协议由用户自己定义,这些芯片一般工作在ISM免免费频段。费频段。第第2节节 网络网络节点的硬件开发节点的硬件开发 2、传感器节点的模块化设计、传感器节点的模块化设计无线技术无线技术频率频率距离距离/m功耗功耗传输速率传输速率/kbpsBluetooth2.4GHz10低低10000802.11b2.4GHz100高高11000RFID50kHz5.8GHz3205501150循环寿命循环寿命/次次3005008001000100011工作温度工作温度/-206020602060060060-20602060记忆效应记忆效应无无有有小小很小很小无无无无无无内阻内阻/m30807191

39、835 8010080100毒性毒性有有有有轻毒轻毒轻毒轻毒无无无无有有价格价格低低低低中中高高最高最高高高中中可充电可充电是是是是是是是是是是否否否否漏电流漏电流(%/月月)30301588202511n按照常见电池的性能参数按照常见电池的性能参数第第2节节 网络网络节点的硬件开发节点的硬件开发 2、传感器节点的模块化设计、传感器节点的模块化设计n电源模块设计电源模块设计n原电池是把化学能转变为电能的装置,它以其原电池是把化学能转变为电能的装置,它以其成本低廉、能量密度高、标准化程度好、易于成本低廉、能量密度高、标准化程度好、易于购买等特点而备受青睐。购买等特点而备受青睐。 nAA电池电池(

40、即即5号电池,尺寸为直径号电池,尺寸为直径14mm/高度高度49mm)nAAA电池电池(即即7号电池,尺寸为直径号电池,尺寸为直径11mm/高高度度44mm)。第第2节节 网络网络节点的硬件开发节点的硬件开发 2、传感器节点的模块化设计、传感器节点的模块化设计n外围模块设计外围模块设计n传感器网络节点的外围模块主要包括看门狗电路、传感器网络节点的外围模块主要包括看门狗电路、I/O电路和低电量检测电路等。电路和低电量检测电路等。n看门狗看门狗(Watch Dog)是一种增强系统鲁棒性的重要措是一种增强系统鲁棒性的重要措施,它能够有效地防止系统进入死循环或者程序跑飞。施,它能够有效地防止系统进入死

41、循环或者程序跑飞。传感器节点工作环境复杂多变,可能由于干扰造成系统传感器节点工作环境复杂多变,可能由于干扰造成系统软件的运行混乱。软件的运行混乱。n由于电池寿命有限,为了避免节点工作中发生突然断电由于电池寿命有限,为了避免节点工作中发生突然断电的情况,当电池电量将要耗尽时必须要有某种指示,以的情况,当电池电量将要耗尽时必须要有某种指示,以便及时更换电池或提醒邻居节点。便及时更换电池或提醒邻居节点。第第2节节 网络网络节点的硬件开发节点的硬件开发 2、传感器节点的模块化设计、传感器节点的模块化设计n核心板电路核心板电路第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传

42、感器节点的开发实例第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n核心板电路接口核心板电路接口第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n传感器板电路传感器板电路n传感器板电路串口传感器板电路串口第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n传感器板电路传感器板电路USB转串口转串口第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点

43、的开发实例、传感器节点的开发实例n传感器板电路按钮和传感器板电路按钮和LED第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n步进电机电路步进电机电路第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n步进电机电路步进电机电路 反应式三相步进电机工作原理反应式三相步进电机工作原理n定子上有六个磁极,其夹角是定子上有六个磁极,其夹角是60,磁极上绕有,磁极上绕有A、B、C三个绕组,每个磁极的极弧上有三个绕组,每个磁极的极弧上有5个小齿。个小齿。n转子上均布转子上均布40个小齿,齿距为个小齿,齿距为9,定

44、子和转子的齿距和,定子和转子的齿距和齿宽均相同。齿宽均相同。n由于定子和转子的小齿数目分别是由于定子和转子的小齿数目分别是30和和40,其比值是一,其比值是一分数,这就产生了所谓的齿错位的情况。分数,这就产生了所谓的齿错位的情况。第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n步进电机电路步进电机电路 反应式三相步进电机工作原理反应式三相步进电机工作原理n当三相绕组按当三相绕组按ABCA顺序循环通电时,转子会按顺顺序循环通电时,转子会按顺时针方向,以每个通电脉冲转动时针方向,以每个通电脉冲转动3的规律步进式转动。的规律步进式转动。n若按若按AC

45、BA顺序循环通电,则转子按逆时针方向以顺序循环通电,则转子按逆时针方向以每个通电脉冲转动每个通电脉冲转动3的规律转动。的规律转动。n因每一瞬间只有一相绕组通电,并且按三种通电状态循环因每一瞬间只有一相绕组通电,并且按三种通电状态循环通电,故称为单三拍运行方式。通电,故称为单三拍运行方式。n三相步进电动机还有两种通电方式三相步进电动机还有两种通电方式n双三拍运行:双三拍运行:ABBCCAABn单、双六拍运行:单、双六拍运行:AABBBCCCAAn六拍运行时的步矩角将减小一半六拍运行时的步矩角将减小一半第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例

46、n步进电机电路四相步进电机步进电机电路四相步进电机 第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n步进电机电路四相步进电机步进电机电路四相步进电机n实验中步进电机的工作模式为两相四拍,使用实验中步进电机的工作模式为两相四拍,使用CC2530的的4个个IO口进行脉冲分配。口进行脉冲分配。n步进电机有两种工作模式:半步模式和整步模式。半步模步进电机有两种工作模式:半步模式和整步模式。半步模式下的步距角为式下的步距角为9度,整步模式则为度,整步模式则为18度。度。n半步模式下的脉冲分配:半步模式下的脉冲分配:n若按相反顺序产生脉冲,则电机反转若按相

47、反顺序产生脉冲,则电机反转第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例1 2 3 4 5 6 7 8A 0 0 1 1 1 0 0 0B 1 0 0 0 0 0 1 1C 0 0 0 0 1 1 1 0D 1 1 1 0 0 0 0 0n步进电机电路四相步进电机步进电机电路四相步进电机n整步模式下的脉冲分配整步模式下的脉冲分配n若按相反顺序产生脉冲,则电机反转。若按相反顺序产生脉冲,则电机反转。 1357A0100B1011C0011D1101第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n振

48、动传感器振动传感器第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例SW-420 滚珠震动开关滚珠震动开关 施密特门电路施密特门电路n光照传感器光照传感器第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n人体感应传感器人体感应传感器第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例n温湿度传感器温湿度传感器第第2节节 网络网络节点的硬件开发节点的硬件开发 3、传感器节点的开发实例、传感器节点的开发实例nTinyOSTinyOS是加州大学伯克利分校开发的开放

49、源代码、专为嵌是加州大学伯克利分校开发的开放源代码、专为嵌入式无线传感网络设计的操作系统。入式无线传感网络设计的操作系统。nTinyOSTinyOS的程序采用的是模块化设计,所以它的程序核心往的程序采用的是模块化设计,所以它的程序核心往往都很小(核心代码和数据大约往都很小(核心代码和数据大约400400字节左右),能够突字节左右),能够突破传感器存储资源少的限制,这能够让破传感器存储资源少的限制,这能够让TinyOSTinyOS很有效的运很有效的运行在无线传感器网络上并去执行相应的管理工作等。行在无线传感器网络上并去执行相应的管理工作等。nTinyOSTinyOS本身提供了一系列的组件,可以很

50、简单方便的编制本身提供了一系列的组件,可以很简单方便的编制程序,用来获取和处理传感器的数据并通过无线电来传输程序,用来获取和处理传感器的数据并通过无线电来传输信息。信息。nTinyOSTinyOS在构建无线传感器网络时,它会有一个基地控制台在构建无线传感器网络时,它会有一个基地控制台,主要是用来控制各个传感器子节点,并聚集和处理它们,主要是用来控制各个传感器子节点,并聚集和处理它们所采集到的信息。所采集到的信息。TinyOSTinyOS只要在控制台发出管理信息,然只要在控制台发出管理信息,然后由各个节点通过无线网络互相传递,最后达到协同一致后由各个节点通过无线网络互相传递,最后达到协同一致的目

51、的,比较方便。的目的,比较方便。第第3节节 WSN的操作系统的操作系统 1、TinyOS简介简介nTinyOSTinyOS的应用程序都是基于事件驱动模式的,采用事件触的应用程序都是基于事件驱动模式的,采用事件触发任务发任务(tasks)(tasks)去唤醒传感器工作。去唤醒传感器工作。n一般用在对于时间要求不是很高的应用中,且一般用在对于时间要求不是很高的应用中,且taskstasks之间之间是平等的,即在执行时是按顺序先后来得,而不能互相占是平等的,即在执行时是按顺序先后来得,而不能互相占先执行。为了减少先执行。为了减少taskstasks的运行时间,要求每一个的运行时间,要求每一个task

52、task都都很短小,能够使系统的负担较轻。很短小,能够使系统的负担较轻。n在在TinyOSTinyOS中由于中由于taskstasks之间不能互相占先执行,所以之间不能互相占先执行,所以TinyOSTinyOS没有提供任何阻塞操作,为了让一个耗时较长的操没有提供任何阻塞操作,为了让一个耗时较长的操作尽快完成,一般来说都是将对这个操作的需求和这个操作尽快完成,一般来说都是将对这个操作的需求和这个操作的完成分开来实现,以便获得较高的执行效率。作的完成分开来实现,以便获得较高的执行效率。nTinyOSTinyOS是由事件驱动的,这样可以在空闲时让系统进入休是由事件驱动的,这样可以在空闲时让系统进入休

53、眠态来降低能耗。眠态来降低能耗。第第3节节 WSN的操作系统的操作系统 1、TinyOS简介简介n在在ZigBeeZigBee协议框架中包含大量的应用程序对象协议框架中包含大量的应用程序对象( (任务任务) ),Z-Z-StackStack协议栈使用协议栈使用OSALOSAL来管理这些任务。来管理这些任务。nOSALOSAL就是以实现多任务为核心的系统资源管理机制。就是以实现多任务为核心的系统资源管理机制。OSALOSAL实现了类似操作系统的某些功能,但并不能称之为真正意实现了类似操作系统的某些功能,但并不能称之为真正意义上的操作系统。义上的操作系统。nOSALOSAL以一种任务分配资源的机制

54、以一种任务分配资源的机制, ,形成了一个简单多任务形成了一个简单多任务的操作系统。的操作系统。nOSAL的调度机制的调度机制n任务调度任务调度n时间管理时间管理n原语通信原语通信第第3节节 WSN的操作系统的操作系统 2、Z-Stack的的OSAL第第3节节 WSN的操作系统的操作系统 2、Z-Stack的的OSALn任务调度任务调度nZigBeeZigBee协议栈中有很多并发操作要执行,每一层都设计了协议栈中有很多并发操作要执行,每一层都设计了一个事件处理函数,用来处理与这一层操作相关的各种事一个事件处理函数,用来处理与这一层操作相关的各种事件件( (任务任务) )。这些任务由。这些任务由Z

55、igBeeZigBee协议栈中调度程序协议栈中调度程序OSALOSAL来进来进行管理,这样,整个协议栈便会按照时间顺序有条不紊的行管理,这样,整个协议栈便会按照时间顺序有条不紊的运行。运行。nZigBeeZigBee协议栈对于实时性要求不高,因此在设计任务调度协议栈对于实时性要求不高,因此在设计任务调度程序时,程序时,OSALOSAL采用了轮询任务调度队列的方法来进行任务采用了轮询任务调度队列的方法来进行任务调度管理。调度管理。第第3节节 WSN的操作系统的操作系统 2、Z-Stack的的OSALnOSALOSAL采用链表结构来管理协议栈各层的任务。链表中每一采用链表结构来管理协议栈各层的任务

56、。链表中每一项是一个结构体,用来记录链表中相关任务的基本信息。项是一个结构体,用来记录链表中相关任务的基本信息。n链表的建立按照任务优先级从高到低的顺序进行插入的。链表的建立按照任务优先级从高到低的顺序进行插入的。优先级高的任务将被插入到优先级低的任务前面。如果俩优先级高的任务将被插入到优先级低的任务前面。如果俩任务优先级相同,则按照时间顺序加入到链表中。任务链任务优先级相同,则按照时间顺序加入到链表中。任务链表在系统启动时建立,直到系统关闭才被销毁。表在系统启动时建立,直到系统关闭才被销毁。第第3节节 WSN的操作系统的操作系统 2、Z-Stack的的OSALn主循环函数处理机制主循环函数处

57、理机制ntasksEventstasksEvents数组存放序号数组存放序号0 0到到tasksCnttasksCnt的的每个任务在本次每个任务在本次循环中是否要被运行。循环中是否要被运行。ntasksArrtasksArr数组则存放对应每个任务的入口地址,只有在数组则存放对应每个任务的入口地址,只有在tasksEventstasksEvents中记录的需要运行的任务,在本次循环中才中记录的需要运行的任务,在本次循环中才会被调用到。会被调用到。 tasksEventstaskCnt-1=0tasksEventstaskCnt-1=0 tasksEvents2!=0tasksEvents2!=0

58、tasksEvents1=0tasksEvents1=0tasksEvents0!=0tasksEvents0!=0* *tasksEventstasksEventsTask(taskCnt-1)-Task(taskCnt-1)-* *SamApp_loopSamApp_loop Task2-Hal_Process_EventsTask2-Hal_Process_EventsTask1-Task1-* *nwkevent_loopnwkevent_loopTask0-macEventsLoopTask0-macEventsLoop* *tasksArrtasksArr第第3节节 WSN的操作系

59、统的操作系统 2、Z-Stack的的OSALfor(;) for(;) / / 任务处理主循环任务处理主循环 uint8 idx = 0; uint8 idx = 0; Hal_ProcessPoll(); Hal_ProcessPoll(); do do if (tasksEventsidx)if (tasksEventsidx) / / 寻找最高优先级的任务来运行寻找最高优先级的任务来运行 break; break; while (+idx tasksCnt); while (+idx tasksCnt); if (idx tasksCnt) if (idx tasksCnt) uint16 events; uint16 events; halIntState_t int

温馨提示

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

评论

0/150

提交评论