杨盛培无线传感网期末论文_第1页
杨盛培无线传感网期末论文_第2页
杨盛培无线传感网期末论文_第3页
杨盛培无线传感网期末论文_第4页
杨盛培无线传感网期末论文_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

1、.装 订 线2013-2014学年第一学期 计算机 学院期末考试卷无线传感器网络技术 学号: 201171060138 姓名: 杨盛培 班级: 11级物联网1班 成绩:评语:(考试题目及要求) 1. 以本学期授课内容为基础,在J9-C501实验室的博创实验箱上完成如下要求:1) 由协调器创建一个网络,PANID末三位为个人学号的末三位。2) 以实验箱的1号ZigBee模块为基础,加入前述网络,完成采集温度信息的过程,并发送给协 调器;3) 抽签抽到的题号是 2 ,以实验箱上的该ZigBee模块为基础,加入前述网络,完成相 关信息的采集并发送给协调器;4) 包括上述两个ZogBee模块在内,至少

2、组织8个ZigBee模块加入前述ZigBee网络,获取各自 节点的网络地址,并发送给协调器;5) 协调器通过串口和PC上位机进行联系,将收集到的传感器信息和网络地址信息发送给上位机6) 根据各节点网络地址信息进行网络拓扑分析; 2. 以上述过程为基础,撰写课程设计论文。参考格式包含论文题目、摘要、关键字、正文和参考文 献等。正文部分包含但不限于问题分析、实现思路、核心数据结构分析、设计与调试过程中遇到的 问题及解决办法等。以上内容要求至少1500字,不得直接以代码充作文字叙述。以WORD软件的 DOC文档格式保存,文件名为个人的姓名或者学号。 2. 除上述内容外,课程设计论文另添加两部分内容:

3、对本学期该课程学习的总结和对教师的教学建 议。 3. 上述各文件,包括实验所用的工程文件和源代码文件,以EMAIL邮件附件的形式,统一发送到 任课教师信箱:suogr。 4.课程论文含本封面打印一份上交任课老师处。无线传感器网络技术期末论文【题目】 基于ZigBee的无线传感器组网实验1. 基本要求: l 由协调器创建一个网络号PANID末3位为138的网络;l 以实验箱的1号ZigBee模块为基础,加入前述网络,完成采集温度信息的过程,并发送给协调器;l 以实验箱上2号ZigBee模块为基础,加入前述网络,完成光谱气体信息的采集并当气体溶度超过一定限度时发送一个警告信息给协调器;l 包括上述

4、两个ZogBee模块在内,至少组织8个ZigBee模块加入前述ZigBee网络,获取各自节点的网络地址,并发送给协调器;l 协调器通过串口和PC上位机进行联系,将收集到的传感器信息和网络地址信息发送给上位机;l 根据各节点网络地址信息进行网络拓扑分析。2. 实验环境: 物联网嵌入式实验箱(型号UP-CUP IOT-6410-) 2台( 1个ZigBee协调器模块 8个ZigBee终端模块 )上位机 1台( 软件:IAR Embedded Workbench IDE 和 串口助手 )【前言】 互联网是现代社会重要的信息基础设施,对经济社会发展和国家安全具有战略意义,与构建和谐社会、建设创新型国家

5、和走新型工业化道路等重大战略的实施紧密相关。但随着人类文明的不断进步,科技的不断发展,互联网在一些方面已经无法满足人们的需求,所以下一代互联网物联网的诞生势在必行。物联网是在互联网基础上的延伸和扩展的网络,将是新一代信息技术的核心部分。物联网通过各种信息传感设备,实时采集任何需要监控、连接、互动的物体或过程等各种需要的信息,与互联网结合形成的一个巨大网络,用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信,其目的是实现物与物、物与人,所有的物品与网络的连接,方便识别、管理和控制。物联网要实现物与物之间的感知、识别、通信等功能需要有大量先进技术的支持,传感器技术就是其中一项关键性的技术。

6、传感器技术,作为信息获取最重要和最基本的技术,已经从过去的单一化向集成化、微型化和网络化方向发展,这就是无线传感器网络技术。无线传感器网络技术综合了多种领域,也是当前计算机网络研究的热点,具有巨大应用价值。因而已经引起了世界许多国家的军事部门、工业界和学术界的广泛关注,被广泛地应用于军事,工业过程控制、国家安全、环境监测和现代农业等领域。由此可见,无线传感器网络技术是物联网发展与应用的基础技术及重要组成部分;因此,作为物联网方向专业的一名本科学生,学好本学期学校所开设的无线传感器网络技术是一件十分重要的事情,无论是以后的继续深入的学习还是工作,我们都将获益匪浅。【摘要】ZigBee是无线传感器

7、网络技术中一种新兴的专为低速率无线个域N(LRWPAN)-而设计的低成本、低功耗的短距离无线通信协议,能够广泛的应用于军事,工业,智能家居等领域。但由于ZigBee技术出现较晚,其规范及应用仍在不断的完善和发展之中。本次课程期末实验由一个ZigBee协调器创建一个网络,实验箱的1号ZigBee模块,加入前述网络,完成采集温度信息的过程,并将信息发送给协调器;实验箱的2号ZigBee模块,加入前述网络,完成可燃气体或烟雾溶度的监测工作,当检测到可燃性气体或烟雾时发送一个警告信息“可燃性气体超标!请注意!”给协调器;实验箱的3号,4号以及另一试验箱的1,2,3,4号ZigBee模块,也都加入前述网

8、络但并不要其完成相关的信息采集工作,只需将其网络ID发送给协调器。通过此次对Zigbee协议的无线网络组网方案的学习及相关课程的设计,我们初步认识并了解了ZigBee及其协议栈的内容,意义以及它的应用前景。【关键词】无线传感器网络 ZigBee技术 ZigBee2007协议栈 传感器节点 CC2530芯片【正文】1. 在实验之前所先要掌握的知识1.1 无线传感器网络是什么?1.1.1 定义:无线传感器网络(即WirelessSensorNetworks,简称WSN)是指由一组随机分布的集成有传感器、数据处理单元和通信模块的传感器以自组织方式构成的无线网络,用于实时监测网络覆盖区域的各类监测对象

9、的信息。WSN综合了传感器技术、无线通信技术、嵌入式系统技术、分布式信息处理等技术,是一项集成了多学科的技术领域,已成为构建无线物联网的重要技术。1.1.2 特点:无线传感器网络有大规模,自组织,动态性,可靠性,以数据为中心,集成化,具有密集的节点布置,协作方式执行任务等特点。1.1.3 结构: 传感器网络系统通常包括传感器节点(EndDevice)、汇聚节点(Router)和管理节点(Coordinator)。大量传感器节点随机部署在监测区域内部或附近,能够通过自组织方式构成网络。传感器节点监测的数据沿着其他传感器节点逐跳地进行传输,在传输过程中监测数据可能被多个节点处理,经过多跳后路由到汇

10、聚节点,最后通过互联网或卫星到达管理节点。用户通过管理节点对传感器网络进行配置和管理,发布监测任务以及收集监测数据。传感器节点传感器节点处理能力、存储能力和通信能力相对较弱,通过小容量电池供电。从网络功能上看,每个传感器节点除了进行本地信息收集和数据处理外,还要对其他节点转发来的数据进行存储、管理和融合,并与其他节点协作完成一些特定任务。汇聚节点汇聚节点的处理能力、存储能力和通信能力相对较强,它是连接传感器网络与Internet 等外部网络的网关,实现两种协议间的转换,同时向传感器节点发布来自管理节点的监测任务,并把WSN收集到的数据转发到外部网络上。汇聚节点既可以是一个具有增强功能的传感器节

11、点,有足够的能量供给和更多的、Flash和SRAM中的所有信息传输到计算机中,通过汇编软件,可很方便地把获取的信息转换成汇编文件格式,从而分析出传感节点所存储的程序代码、路由协议及密钥等机密信息,同时还可以修改程序代码,并加载到传感节点中。管理节点管理节点用于动态地管理整个无线传感器网络。传感器网络的所有者通过管理节点访问无线传感器网络的资源。1.2 什么是ZigBee技术?1.2.1 ZigBee技术的简介:ZigBee技术是一种新兴的短距离、低速率无线网络技术,是基于IEEE802.15.4 无线标准研制开发的,关于组网、安全和应用软件的技术标准。其目标是建立一个无所不在的传感器网络(Ub

12、iquitous Sensor Network),主要适用于自动控制和远程控制领域,可以嵌入到各种设备中,同时支持地理定位的功能。1.2.2 ZigBee技术的特点:1数据传输可靠:ZigBee的MAC层采用CSMACA的碰撞避免机制,同时为需要固定带宽的通信业务预留了专用时隙,避免了发送数据时的竞争和冲突;同时,MAC层采用了完全确认的数据传输机制,每个发送的数据包都必须等到接收方的确认信息。同时ZigBee采用较短的帧格式(<128字节)和CRC校验机制来减少无线通信的误码率。2功耗低:Zigbee技术采用了多种节电的工作模式,可以确保两节电池支持长达6个月到两年的试用时间。而蓝牙能

13、工作数周、WiFi可工作数小时。3成本低:ZigBee数据传输速率低,协议简单,所以大大降低了成本。且免收专利费,目前低速低功耗的UWB芯片组价格至少为20美元,而Zigbee的价格仅为几美分。4网络容量大:每个ZigBee网络最多可支持255个节点,加上网络的协调器可以互相连接,整个Zigbee网络节点的数目将十分可观。一个区域内可以同时存在最多100个Zigbee网络,理论上可容纳65535个节点。5安全:ZigBee提供了数据完整性检查和鉴权功能,采用AES128加密算法。6有效范围小:有效覆盖范围10-75米之间,具体依据实际发射功率的大小和各种不同的应用模式而定,基本上能够覆盖普通的

14、家庭或办公室环境。7兼容性:ZigBee技术与现有的控制网络标准无缝集成。通过网络协调器自动建立网络,采用载波侦听冲突检测(CSMACA)方式进行信道接入。为了可靠传递,还提供全握手协议。1.2.3 ZigBee节点类型:1. ZigBee 协调者(Coordinator)- 每各ZigBee网络必须有一个.初始化网络信息. 2. ZigBee 路由器(Router)路由信息.3. ZigBee 终端节点(EndDevice)没有路由功能低价格1.2.4 ZigBee具有多种网络拓扑:1.3 什么是ZigBee2007协议栈?1.3.1 ZigBee2007协议栈简介:ZigBee2007协议

15、栈定义了通信硬件和软件在不同层次如何协调工作。在网络通信领域,在每个协议层的实体通过对信息打包与对等实体通信。在通信的发送方,用户需要传递的数据包按照从高层到低层的顺序依次通过各个协议层,每一层的实体按照最初预定消息格式在数据信息中加入自己的信息,比如每一层的头信息和校验等,最终抵达最低层的物理层,变成数据位流,在物理连接间传递。在通信的接收方数据包依次向上通过协议栈,每一层的实体能够根据预定的格式准确的提取需要在本层处理的数据信息,最终用户应用程序得到最终的数据信息并进行处理。1.3.2 ZigBee 2007协议栈中使用的各个层次:APP:应用层目录,这是用户创建各种不同工程的区域,在这个

16、目录中包含了应用层的内容和这个项目的主要内容,在协议栈里面一般是以操作系统的任务实现的。在APP目录下添加三个文件即可完成一个新的任务项目(1、主文件:存放具体的任务事件处理函数;2、主文件的头文件;3、操作系统接口文件:以Osal开头,专门存放任务处理函数数组tasksArr)。HAL:硬件层目录,包含有与硬件相关的配置和驱动及操作函数。 Common目录下为公用文件,基本与硬件无关。 Hal_assert.c :断言文件,用于调试; Hal_drivers.c :驱动文件 ;Including目录下包含各个硬件模块头文件 ;Target目录下文件与硬件平台相关。MAC:MAC 层目录,包含

17、了MAC 层的参数配置文件及其MAC 的LIB 库的函数接口文件。 MAC层分高层和底层,include目录下包括MAC层参数配置文件及其mac的lib库函数接口文件 。MT:监控调试层目录,实现通过串口调试各层,与各层进行直接交互。NWK:网络层目录,含网络层配置参数文件及网络层库的函数接口文件,APS 层库的函数接口。OSAL:协议栈的操作系统。Profile:AF层目录,包含AF 层处理函数文件。 Security:安全层目录,安全层处理函数,比如加密函数等。 Services:地址处理函数目录,包括着地址模式的定义及地址处理函数。 Tools:工程配置目录,包括空间划分及ZStack

18、相关配置信息。 ZDO:ZDO目录。 ZigBee设备对象,方便用户用自定义的对象调用aps子层的服务和nwk层的服务。 ZMac: MAC 层目录,包括MAC 层参数配置及MAC 层LIB 库函数回调处理函数。 Zmac.c是z-stack mac导出层接口文件 Zmac_cb.c是zmac需要调用的网络层函数。ZMain:主函数目录,包括入口函数及硬件配置文件。 在onboard.c包含对硬件开发平台各类外设进行控制的接口函数。 Output:输出文件目录,这个EW8051 IDE 自动生成的。1.3.3 ZigBee系统初始化流程:Z-Stack的main函数在ZMain.c中:系统初始

19、化、执行操作系统实体; Osal_int_disable(INTS_ALL):关闭所有中断 HAL_BOARD_INIT():初始化系统时钟; Zmain_vdd_check():检测芯片电压是否正常 Zmain_ram_init():初始化堆栈; InitBoard(OB_COLD):初始化LED,配置系统定时器 HalDriverInit():初始化芯片各个硬件模块;Osal_nv_init():初始化FLASH存储;Zmain_ext_addr():形成节点MAC地址;zgInit():初始化一些非易失变量; zmacInit():初始化mac层; Afinit():初始化应用框架层;

20、Osal_init_system():初始化操作系统; Osal_int_enabled(inis_all):使能全部中断; Initboard(ob_ready):初始化按键; Zmain_dev_info():在液晶上显示设备信息; Osal_start_system():执行操作系统。2. 本次期末实验的内容及过程分析2.1 ZigBee协调器无线组网2.1.1 协调器创建一个网络号末3位为138的网络: 打开C:Texas InstrumensZStack-CC2530-2.3.0-1.4.0ProjectszstackSamplesGenericAppCC2530DBGenericA

21、PP.eww IAR工程,手动更改本工程下的Tools目录下的f8wConfig.cfg文件,将其中默认的ZDAPP_CONFIG_PAN_ID=0xFFFF宏,更改为杨盛培同学的学号末3位0x0138。则协调器即可创建一个网络号为138的网络。2.1.2 协调器组网过程: 在协调器程序Coordinator.c中添加: 选择CoordinatorEB工程,编译下载到1号实验箱的ZIGBEE 协调器模块中,经过上述过程,协调器则自动组建了一个可以接入多个终端节点的广播网!2.2 ZigBee路由器和终端节点连接网络1号实验箱的1号ZigBee模块(作为终端,编号END1)上有温湿度传感器,当E

22、ND1接入协调器组建的138号网络后,温湿度传感器将采集的C501实验室的温度和湿度信息发送给协调器;如果他的父节点连的是路由器的话,则将信息发送给路由器,再经路由器发送给协调器。1号实验箱的2号ZigBee模块(作为终端,编号END2)上有可燃气体溶度监测传感器,当END2接入协调器组建的138号网络后,当器检测到实验室C501的可燃性气体超标后就发送一个警告信息“可燃性气体超标!请注意!”给协调器;如果他的父节点连的是路由器的话,则将信息发送给路由器,再经路由器发送给协调器。除了上述两个ZigBee模块(END1和END2),本实验用到的其它ZigBee模块,1号实验箱的3,4号和2号实验

23、箱的1,2,3,4号ZigBee模块接入到网络后,只需将自己得到的随机分配的网络ID发送给协调器即可,不需要其采集相关信息。其中1号实验箱的3号ZigBee模块编号END3, 4号ZigBee模块做为路由器,编号ROU1;2号实验箱的1,3,4号ZigBee模块做为终端,分别编号 END4,END5,END6, 2号ZigBee模块做为路由器,编号ROU2。 简而言之,本实验共有1个协调器(1号实验箱的ZIGBEE 协调器模块),2个路由器(1号实验箱的4号,2号实验箱的4号ZIZIGBEE 模块,对其分别编号编号ROU1和编号ROU2),6个终端节点(1号实验箱的1,2,3号,2号实验箱的1

24、,3,4号ZIGBEE模块,并对其分别编号为 END1 到 END6 )。其中END1(即1号实验箱的1号ZIGBEE模块)用来采集温湿度;END2(即1号实验箱的2号ZIGBEE模块)用来感应可燃气体溶度;其它的终端节点和路由什么都不用做,只需向协调器发送自己的网络ID。 选择EndDeviceEB工程,将对应程序分别编译下载到END1 END6 6个ZIGBEE 终端模块中,END1 END6 6个ZIGBEE 终端模块即自动接入网络,并分别得到一个互不相同的随机分配的网络ID。选择RouterEB工程,将对应程序分别编译下载到编号ROU1和编号ROU2模块中,这两个路由器即自动接入网络,

25、并分别得到一个互不相同的随机分配的网络ID。经过上述过程,2个路由器与6个终端节点就接入了网络,与协调器组成了一个无线传感器网络!2.3 ZigBee路由器和终端节点向协调器发送信息2.3.1 END1负责采集温湿度信息然后发送给协调器1号实验箱的1号ZigBee模块,即END1采集温湿度信息然后发送给协调器,在其程序的事件处理函数UINT16 GenericApp_ProcessEvent( byte task_id, UINT16 events )中: 当负责采集温湿度信息的END1加入网络后,因为其是终端节点,所以执行两个函数,即osal_set_event(GenericApp_Tas

26、kID,SHOW_INFO_EVENT);和 osal_set_event(GenericApp_TaskID , SEND_DATA_EVENT) ;两个函数,向协调器发送事件,其中前者与发送网络ID有关,后者与发送温湿度信息有关。1. if (events & SHOW_INFO_EVENT) 当处理与发送网络ID有关的事件时,调用ShowInfo()函数,ShowInfo()函数是用来将得到的网络ID并通过调用AF_DataRequest()这个函数具体实现将相关信息发送给协调器的过程。ShowInfo()函数详细代码如下:2. if ( events &SEND_DAT

27、A_EVENT ) 当处理与发送温湿度信息有关的事件时,调用GenericApp_SendTheMessage() 函数。GenericApp_SendTheMessage() 这个函数用来向协调器发送END1获取的温湿度信息,调用AF_DataRequest()函数实现具体发送过程。END1中 GenericApp_SendTheMessage()函数代码如下:(详细代码请见Enddevice_1.c)2.3.2 当有可燃性气体时END2发送警告给协调器其发送网络ID和警告信息给协调器的大致过程与END1一样,只不过在程序中加了一个控制中断的程序:当检测到可燃性气体时,产生一个中断事件,然后

28、通过处理事件函数osal_set_event(GenericApp_TaskID , SEND_DATA_EVENT)调用GenericApp_SendTheMessage() 这个函数用来向协调器发送警告信息的。(详细代码请见Enddevice_2.c)其结果截图如下:2.3.3 其他4个终端和2个路由器发送自己网络ID给协调器其发送自己网络ID给协调器的过程与END1发送一样,这4个终端和2个路由器因不需要采集相关信息并发送给协调器,因此GenericApp_SendTheMessage() 这个函数为空函数。这6个节点公用一个程序,只是在编译下载到模块时,视具体情况选择EndDevice

29、EB工程或选择RouterEB工程。(详细代码请见Enddevice_3.c) 2.4 协调器接收信息 协调器接收下面节点发上来的信息,在其事件处理函数 UINT16 GenericApp_ProcessEvent( byte task_id, UINT16 events ) 中:当收到下面节点发来的事件后,调用GenericApp_MessageMSGCB( MSGpkt )这个函数用来接收信息并将此信息送给连接上位机的端口。其具体代码如下:协调器中还有一个重要函数 GenericApp_MessageMSGCB( MSGpkt );此函数用来向连接上位机的串口发送从下面节点收集到的各路由器

30、及终端的网络ID。其代码如下: 在上位机的串口助手的输入端中输入“jarris”即可看到各路由器与终端节点发送给协调器的的网络ID。2.5 本实验网络拓扑结构分析无线传感器网络组建成功,打开串口助手监测协调器,在串口助手中输入“jarris”,即可看到2个路由器与6个终端节点发送给协调器的网络ID。 下面的截图即可即是本次实验无线传感器的2个路由器与6个终端节点的网络ID,及其其父节点的网络ID。如图,我们可知道1号实验箱的1号ZigBee模块(END1)的网络ID为000E,父节点的网络ID为0000;1号实验箱的2号ZigBee模块(END2)网络ID为000F, 父节点的网络ID为000

31、0;1号实验箱的3号ZigBee模块(END2)网络ID为000C, 父节点的网络ID为0001;1号实验箱的4号ZigBee模块(ROUT)网络ID为0001, 父节点的网络ID为0000;2号实验箱的1号ZigBee模块(END4)网络ID为000D, 父节点的网络ID为0001;2号实验箱的2号ZigBee模块(ROUT)网络ID为0002, 父节点的网络ID为0001;2号实验箱的3号ZigBee模块(END5)网络ID为000A, 父节点的网络ID为0002。由此,我们可得出这个无线传感器的网络的网络拓扑结构图,如下:本实验协调器创建了一个深度为5层,每层最多接入3个节点(其中最多2

32、个终端,最多1个路由)的网络。2.6 实验过程中存在的问题本实验存在的问题是在串口助手中观看到的协调器接收的信息或数据有时会出现乱码。如下图:12 这两张截图即是出现乱码的情况,有时候更严重,甚至整句话全是看不懂的乱码,其正常的显示结果为“可燃性气体超标!请注意!”,如下截图即为正常显示:3通过对身边的同学寻求帮助以及加上自己的认识和理解,我猜想造成这个问题的原因可能有以下3种:1.路由器或终端在给协调器发送信息的过程中,无线电波受到干扰,造成信息失真,于是出现了乱码。2.因为协调器接收END1发送的温湿度信息和接收END2发送的警告信息是调用的同一个事件处理函数,当END1和END2同时向协

33、调器发送信息时,协调器用来接收信息的缓存区发生溢出,结果导致乱码的出现。3.协调器将收集到的信息通过串口在上位机上显示的这一过程出现某种失误,结果出现了乱码。(不过这种可能性貌似很小)3. 实验总结 本次实验由一个协调器创建一个PANID末三位为138的网络,2个路由器和6个终端加入这个网络,组成一个无线传感器网络,其中终端1负责采集温湿度信息,终端2负责监测可燃性气体,其它的4个终端和2个路由器暂时并不需要其完成相关信息收集工作。通过本次实验,我对无线传感器网络有了初步的认识与了解,无线传感器网络是指由一组随机分布的集成有传感器、数据处理单元和通信模块的传感器以自组织方式构成的无线网络,用于实时监测网络覆盖区域的各类监测对象的信息。知道了什么是ZigBee技术,ZigBee技术是一种新兴的短距离、低速率无线网络技术,是基于IEEE802.15.4 无线标准研制开发的,关于组网、安全和应用软件的技术标准。并对ZigBee2007协议栈有了一定程度的理解,因为本次实验的基础是建立在ZigBee200

温馨提示

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

评论

0/150

提交评论