毕业论文-用ZigBee实现无线IC卡考勤机设计.doc_第1页
毕业论文-用ZigBee实现无线IC卡考勤机设计.doc_第2页
毕业论文-用ZigBee实现无线IC卡考勤机设计.doc_第3页
毕业论文-用ZigBee实现无线IC卡考勤机设计.doc_第4页
毕业论文-用ZigBee实现无线IC卡考勤机设计.doc_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

二 一 四 届 毕 业 设 计用ZigBee实现无线IC卡考勤机设计学 院:电子与控制工程学院 专 业:自动化 姓 名 完成时间:2014年6月11日二一四年六月1摘要近距离无线通信技术在人们的生活中扮演者越来越重要的角色,基于Zigbee网络的超低成本使得其发展速度非常快,目前Zigbee芯片价格已低于3美元,随着技术的不断完善,它将成为当今最先进的数字化无线技术。Zigbee技术是随着工业自动化对于无线通信和数据传输的需求而产生的,Zigbee网络(互联网)省电、可靠、成本低、容量大、安全,可广泛应用于各种自动控制领域,Zigbee技术主要嵌入在消费性电子设备、家庭和建筑物自动化设备、工业控制装置、电脑外设、医用传感器、玩具和游戏机等设备中,支持小范围的基于无线通信的控制和自动化工业领域。本文主要以WeBee Zigbee套件为硬件开发平台,采用TI公司的CC2530芯片来实现关于IC卡的几个简单的功能。传统的IC卡我们见到的很多,有了Zigbee以后,它就可以变身成为无线 IC 卡考勤机,免去了布线的繁琐,在无线应用方面前景也很广。本次设计实现的功能为:将带网蜂IC卡模块的ZigBee节点通过感应IC卡,将采集到的IC卡的ID编号远程发送给协调器,协调器接收后通过串口打印出来。整个实验在 SampleApp.eww 工程完成。设计过程分两个步骤:1)在裸机上完成对IC卡的防冲突处理,读卡号。2)在协议栈上完成程序相关功能终端读到IC卡号后无限发送到协调器。关键词:无线;Zigbee;IC卡;协调器;协议栈2AbstractWireless communication technology plays a more and more important role in peoples life in the near distance. The Zigbee network of ultra low cost makes it very fast development based on the Zigbee chip, the current price is less than $3, as the technology continues to improve, it will become the most advanced digital wireless technology. The technology of Zigbee is produced for industrial automation and wireless communication and data transmission requirements, Zigbee network energy saving, reliable, low cost, large capacity, security, can be widely applied in the automatic control field, Zigbee technology is embedded in consumer electronics, home and building automation, industrial control device computer, peripherals, medical sensor, toy and games machines and other equipment, wireless communication, control and automation industries based on the support of small range.This paper mainly use WeBee Zigbee suite as the hardware platform .We will achieve some simple functions on the IC card using CC2530 chip of TI company. The traditional IC card with Zigbee can be turned into a wireless IC card attendance machine, remove wiring complexity. This will have a wide use in the wireless application prospect. The design and implementation of the functions is: to take network bee IC module of Zigbee node through the induction IC card, IC card no. of ID remote transmission of collected to the coordinator, the coordinator receives printed out through serial port. The experiment was completed in the SampleApp.eww project. The design process consists of two steps: I) finished conflict prevention treatment for IC card on the bare metal, read the card number. II) completed the program related function terminal read IC card number infinite sent to the coordinator in the protocol stack.Key words :wireless;Zigbee;IC card;coordinator;Protocol stack3目录第一章 绪论61.1 zigbee无线网络的研究背景61.2 Zigbee无线网络的技术研究现状71.3 Zigbee无线网络技术的发展前景81.4 本章小结9第二章 Zigbee简介和开发环境快速建立112.1 Zigbee简介112.1.1 Zigbee技术基本简介112.1.2 Zigbee无线网络技术特点112.1.3 zigbee协议概述132.1.4 Zigbee网络的拓扑结构142.1.5 Zigbee应用领域142.2 ZigBee 软件开发平台152.3 Zigbee硬件开发平台162.3.1 CC2530核心板介绍162.3.2 IC卡模块简介212.4 本章小结22第三章 Zigbee协议栈233.1 认识Zigbee协议栈233.2 设备类型273.2.1 协调器273.2.2 路由器273.2.3 终端设备283.2.4 栈配置283.3 路由283.3.1 概述2843.3.2 路由协议283.3.3 路径的发现和选择293.3.4 路径保持维护303.3.5 路径期满303.3.6 路由表303.4 绑定313.5 寻址313.5.1 地址类型313.5.2 网络地址分配323.5.3 Z-Stack寻址333.5.4 单点传送343.5.5 间接传送343.5.6 广播传送343.5.7 组寻址353.5.8 重要设备地址353.6 安全353.7 本章小结36第四章 无线IC卡考勤机的实现与分析384.1 认识IC卡384.1.1 简介384.1.2 无线IC卡的特点384.2 系统的整体实现及简介394.3 读IC卡号404.4 IC卡号的无线发送454.5 本章小结51结论52参考文献53致谢545第一章 绪论1.1 Zigbee无线网络的研究背景当今世界通信技术迅猛发展,随着Internet的迅速发展和个人对数据通信需求的快速增长,全球通信产业技术的发展呈现三大趋势:无线化、宽带化和IP化。互联网业务的发展推动了市场对宽带网络的需求,宽带用户数量在全球呈现出非常强势的增长态势。在众多的宽带技术中,无线技术尤其是移动通信技术成为近年来通信技术市场的最大亮点,是构成未来通信技术的重要组成部分。无线通信技术满足了用户对在不同移动状态下获取网络信息的强烈需求,也符合当今社会人员流动性大、工作生活节奏紧张的发展趋势。另一方面,无线通信技术具有网络部署迅速便捷的特点,对于缺乏线缆资源的新兴运营商来说,无线通信技术是成功部署通信网络,迅速为用户提供语音和数据服务的最佳手段。目前,各类网络中最具增长潜力的是无线网络,许多机构会选择采用无线局域网(WLAN)来拓展他们的现有网络,获得在机构区域内部移动接入网络的能力。近距离无线通信技术在人们生活中扮演着越来越重要的作用。ZigBee作为一种新兴的短距离无线通讯技术,正有力地推动着低速率无线个人区域网络LR-WPAN(Low-RateWirelessPersonal Area Network)的发展。但随着通讯设备的复杂度,功耗以及系统成本的增加,相对于其他无线通讯技术,Zigbee的低成本,低功耗等诸多优势在其激烈的竞争中脱颖额而出1。Zigbee一词源于蜜蜂群发现花粉外置时,通过跳Zigbee舞蹈来告知同伴,达到交换信息的目的。可以说是小动物通过简捷的方式实现“无线”通讯。人们借此称呼一种专注于低功耗,低成本,低复杂度,低速率的近程无线通讯技术。这种低速率无线通讯技术更接近人们的日常生活,可以满足工业、家居、医学等用途的低成本和低功耗需求。信息化时代的到来,人们对网络通信技术的要求越来越高。传统的数字化设备的有线连接给人们的灵便生活带来的诸多不便。发展无线网络技术,将设备从有线连接的束缚中解脱出来,方便人们的使用,已经成为一种趋势,将无线技术运用到智能车设计中,从而使汽车轻松实现无线数据传输、语言通讯、目标跟踪、自动报警灯功能已经是必然的趋势,但传统的无线技术大多成本高、结构复杂、不利于无线技术的推广。近几年来,一些公司和标准化组织就开始探寻在不同领域的无线网络连接技术,并且开发出一系列技术标准。如红外、蓝牙(Bluetooth)、Wi-Fi(IEEE802.11b)、家用射频等。无线传感器网络技术的研究热潮掀起了一场后PC时代革命。WSNs(无线传感网络)作为综合了传感器、嵌入式计算及无线通信等三大技术的新兴领域,可以实现人与自然以及物与物对话的无处不在的通信、计算和处理。同时无线传感网络针对不同的应用对象体现了很强的适应性和灵活性,这也使得无线传感网络得到广泛的应用。2004年,在IEEE802.15.4基础上建立了Zigbee标准,进而推出符合该标准的芯片的开发平台。Zigbee标准包括IEEE802.15.4协议制定的物理层和介质访问层,以及Zigbee联盟制定的网络层和部分应用层。Zigbee具有成本低、低功耗、网络容量大、实时性强、安全性高等特点。Zigbee作为新型的无线通信技术在需要无线通信交换信息的低成本装置,数据的交换量较小、传输的速率要求不高,功耗要求极低,采用电池供电且需要维持较长时间,需要多个(尤其是大量)设备组成无线通信网络,主要进行检测主控制的场合有很大的优势。Zigbee以其优越的性能和廉价的市场定位,正逐步走向市场的舞台,在当前低速率无线个人区域网络中的应用十分广阔。1.2 Zigbee无线网络的技术研究现状 目前,Zigbee技术的产业链已经基本完成。芯片达批量生产阶段,Chipcon、Freescale、Ember、RadioPulse、OKI、Helicomm、Jennic、Microchip等公司纷纷推出Zigbee解决方案,其中Atmel与Chipcon已开发出Zigbee单芯片,二者都是选用全球通用的2.4GHz频道,其他厂商如Ember搭配Atmel及NEC搭配Chipcon芯片,已完成开发套件,能够提供系统厂商整合方案。芯片商Helicomm则是自行推出整合方案IP-Link2000,有2.4GHz与915MHz两版本,该方案可与GPRS/CDMA相连接。Freescale、Oki等也表示将推出2.4GHz整合RF、PHY与MAC的芯片。在系统厂商方面,海尔采用Helicomm方案研制家庭无线网络控制系统,中国台湾地区则有厂商开发结合保安功能的家庭网关器(HomeGateway)等项目。2005年Zigbee联盟选择德国莱茵TUV集团作为唯一的全世界无线实验室测试Zigbee技术产品的代表,在世界各地提供Zigbee联盟认可的商标认证和一致性平台测试服务。将新的Zigbee认证项目推向市场。紧接着Zigbee联盟发布了首批成功完成互操作性测试的四款平台。这些平台将用来测试未来数月内推出的Zigbee产品,从而为Zigbee标准在工业控制、HVAC、空调系统与家庭自动化等领域的实际应用铺平道路。目前企业正积极开发四大Zigbee市场,分别为家庭与楼宇自动化、消费电子、自动读表一其他方面,包括工业自动化、监控检测、医疗、幼儿监护、物流管控、低温连锁管理与农业监控等。目前国内因众多厂商从事Zigbee家庭网关的开发,也有部分城镇利用Zigbee读取水电表资料,韩国厂商则在手机中加入Zigbee,进行客厅家电遥控与家庭保安功能。预计45年内,每个家庭将会安装大约50个Zigbee设备,最终达到150个Zigbee设备。加州大学伯克利分校开发了TinyOS,是针对于无线传感网络的开源操作系统。TinyOS同时兼容IEEE802.15.4标准和Zigbee协议。我国开展Zigbee研究的科研机构主要有浙江大学、苏州大学、东南大学等一些高校,目前大都还处于起步阶段2。1.3 Zigbee无线网络技术的发展前景ZigBee技术的应用前景被非常看好。ZigBee在未来的几年里将在工业控制,工业无线定位,家庭网络,汽车自动化,楼宇自动化,消费电子,医用设备控制等多个领域具有广泛的应用前景,特别是家庭自动化和工业控制,将成为今后ZigBee芯片的主要应用领域。在工业领域,利用传感器和ZigBee网络,使得数据的自动采集,分析和处理变得更加容易,可以作为决策辅助系统的重要组成部分。在汽车领域,主要是传递信息的通用传感器。由于很多传感器只能内置在飞转的车轮或者发动机中,比如轮胎压力监测系统,这就要求内置无线通信设备使用的电池有较长的寿命,同时应该克服嘈杂的环境和金属结构对电磁波的屏蔽效应3。在精确农业领域,传统农业主要使用孤立的,没有通信能力的机械设备,主要是依靠人力监测作物的生产状况,采用了传感器和ZigBee网络后,农业将可以逐渐地转向以信息和软件为中心的生产模式,使用更多的自动化,网络化,职能化和远程控制的设备来耕种。在家庭和楼宇自动化领域,家庭自动化系统作为电子技术的集成得以迅速扩展,易于进入,简单明了和廉价的安装成本等成了驱动自动化居家,建筑开发和应用无线技术的主要原因。在医学领域,将借助于各种传感器和ZigBee网络准确而且实时地监测病人的血压,体温和心跳速度等信息,从而减轻医生的查房的工作负担,有助于医生做出快速的反应,特别是对重病和病危患者的监护和治疗。在消费和家用自动化市场,可以联网的家用设备有电视,录像机,无线耳机,PC外设,运动与休闲器械,儿童玩具,游戏机,窗户和窗帘,照明设备,空调系统和其他家用电器。虽然Zigbee在艰难中前进,但未来整个Zigbee产品还是值得我们期待,从技术标准层面上来看,未来Zigbee将紧密迎合物联网大概念方向趋势的发展,努力扮演好传输层界面上的角色,在Zigbee联盟的推动下,Zigbee技术将朝着开发Soc(片上系统),更多浏览,于IPV6结合,更廉价,更省电,更快速等方向发展。从应用领域和方向方面看,Zigbee完全有机会开拓在目前的智能手机中的应用,目前智能手机里短距离数据传输主要是通过蓝牙方式实现的,但相比于蓝牙,Zigbee的低功耗更具有优势,两节5号干电池可支持一个节点连续工作6-24个月,甚至更长,相比较,蓝牙能工作数周,WiFi只能工作数小时,同时,贵重设备的定位也是未来值得关注的一个大的潜在应用领域,加大在大型停车场,矿井人员定位等方面的应用4。作为离我们最近的中国市场,Zigbee产品的应用爆发可能需要的时间更长,中国的无线网络市场还未成熟,本土厂商的参与度还非常有限,未来Zigbee产业人士要加大无线自动抄表系统,车用无线领域等工业应用,便捷式设备等高端市场的应用。综上所述,作为新兴的短距离无线通信技术,Zigbee产品将以各种各样的方式快步向我们走来,成为人类工作和生活中不可或缺的一部分。1.4 本章小结本章主要对Zigbee无线网络技术做了简单的介绍以及其将来得发展前景展望,Zigbee技术其实是一种先进的近距离、低复杂度、低功耗、低数据速率、低成本、高可靠性、高安全性的双向无线通信技术,其基础是IEEE 802.15.4国际标准协议。由于具有以上技术优点,因此在无线传感网络中得以脱颖而出。Zigbee技术的目标就是针对工业,家庭自动化,遥测遥控,汽车自动化、农业自动化和医疗护理等,例如灯光自动化控制,传感器的无线数据采集和监控,油田,电力,矿山和物流管理等应用领域。另外它还可以对局部区域内移动目标例如城市中的车辆进行定位5。 第二章 Zigbee简介和开发环境快速建立2.1 Zigbee简介2.1.1 Zigbee技术基本简介Zigbee是基于IEEE802.15.4标准的低功耗局域网协议。根据这个协议规定的术是一种短距离、低功耗的无线通信技术。这一名称来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息,也就是说蜜蜂依靠这样的方式构成了群体中的通信网络。其特点是近距离、低复杂度、自组织、低功耗、低数据速率、低成本。主要适合用于自动控制和远程控制领域,可以嵌入各种设备。简而言之,ZigBee就是一种便宜的,低功耗的近距离无线组网通讯技术。ZigBee是一个由可多到65000个无线数传模块组成的一个无线数传网络平台,在整个网络范围内,每一个ZigBee网络数传模块之间可以相互通信,每个网络节点间的距离可以从标准的75m无限扩展6。与移动通信的CDMA网或GSM网不同的是,ZigBee网络主要是为工业现场自动化控制数据传输而建立,因而,它必须具有简单,使用方便,工作可靠,价格低的特点。而移动通信网主要是为语音通信而建立,每个基站价值一般都在百万元人民币以上,而每个ZigBee“基站”却不到1000元人民币。每个ZigBee网络节点不仅本身可以作为监控对象,例如其所连接的传感器直接进行数据采集和监控,还可以自动中转别的网络节点传过来的数据资料。除此之外,每一个ZigBee网络节点(FFD)还可在自己信号覆盖的范围内,和多个不承担网络信息中转任务的孤立的子节点(RFD)无线连接。2.1.2 Zigbee无线网络技术特点 Zigbee是一种无线连接,可工作在2.4GHz、868MHz和915MHz3个频段上,分别具有最高250kbit/s、20kbit/s和40kbit/s的传输速率,它的传输距离在10-75m的范围内,但可以继续增加。作为一种无线通信技术,Zigbee具有如下特点:1)低功耗:由于Zigbee的传输速率低,发射功率仅为1mW,而且采用了休眠模式,因此Zigbee设备非常省电。据计算,Zigbee设备仅靠两节5号电池就可以维持长达6个月到两年左右的使用时间,这是其它无线设备望尘莫及的。2)陈本低:Zigbee模块的初始成本在6美元左右,估计很快就能降到1.5-2.5美元,并且Zigbee协议是免专利费的。低成本对Zigbee也是一个关键的因素。3)时延短:通信时延和从休眠状态激活的时延都非常短,典型的搜索设备时延30ms,休眠激活的时延是15ms,活动设备信道接入的时延为15ms。因此ZigBee技术适用于对时延要求苛刻的无线控制(如工业控制场合等)应用。4)网络容量大:一个星型结构的Zigbee网络最多可以容纳254个从设备和一个主设备, 一个区域内可以同时存在最多100个ZigBee网络, 而且网络组成灵活。5)可靠:采取了碰撞避免策略,同时为需要固定带宽的通信业务预留了专用时隙,避开了发送数据的竞争和冲突。MAC层采用了完全确认的数据传输模式, 每个发送的数据包都必须等待接收方的确认信息。如果传输过程中出现问题可以进行重发。6)安全: ZigBee提供了基于循环冗余校验(CRC)的数据包完整性检查功能,支持鉴权和认证, 采用了AES-128的加密算法,各个应用可以灵活确定其安全属性7。图2.1 几种无线网络传输参数对比表2.1 Zigbee、蓝牙、WIFI传输标准对比图 从表2.1几种无线传输的属性中可以看出Zigbee应用范围是低速率远距离的,这造就了Zigbee 低功耗信息传输的优势。2.1.3 zigbee协议概述相对于其它常见的无线通信标准,Zigbee协议栈具有紧凑而简单的特点,而且对环境配置要求不高,只要8 bit处理器再配上4 kbit ROM和64 kbit RAM,就可以满足其最低要求。Zigbee协议栈模型如图2.2所示,完整的Zigbee协议由高层应用规范、应用汇聚层、网络层、数据链路层组成。网络层以上协议由Zigbee联盟制定,IEEE负责物理层和链路层标准的制定。下面分别介绍应用汇聚层、网络层、数据链路层各部分的功能。1)应用汇聚层将主要负责把不同的应用映射到Zigbee网络上,具体功能包括如下:a)安全与鉴权;b)多个业务数据流的汇聚;c)设备发现;d)业务发现。2)网络层功能如下:a)通用的网络层功能,包括拓扑结构的搭建和维护,命名和关联业务,寻址、路由和安全;b)有自组织、自维护功能,最大程度地减少消费者的开支的维护成本。3)IEEE802系列标准把数据链路层分成LLC和MAC两个子层。其中LLC子层的主要功能包括:a)传输可靠性保障和控制;b)数据包的分段与重组;c)数据包的顺序传输。MAC协议包括功能如下:a)设备间无线链路的建立、维护和结束;b)确认模式的帧传送和接收;c)信道接入控制;d)帧校验;e)预留时隙管理;f)广播信息管理。图2.2 Zigbee的协议模型2.1.4 Zigbee网络的拓扑结构ZigBee 节点所属类别主要分三种,分别是协调器(Coodinator)、路由器(Router)、终端(End Device)。同一网络中至少需要一个协调器,也只能有 1个协调器,负责各个节点 16 位地址分配(自动分配)。理论上可以连上 65536个节点。组网方式千变网化,如图2.3。图中红点代表协调器,蓝色的点代表终端设备,黄色代表路由器8。 a)星状 b)网状 c)树状 Coordinator Router End Device 图2.3 Zigbee网络2.1.5 Zigbee应用领域Zigbee主要应用与短距离、数据传输率不高的各种电子设备的信息传递。其目的市场主要有PC外设(鼠标、键盘、游戏控制杆)、消费类电子设备(TV、VCR、CD、VCD、DVD等设备的遥控装置)、家庭内智能控制(照明、煤气计量的报警灯)、玩具(电子宠物)、医疗护理(监视器和传感器)、和工业控制(监视器、传感器和自动控制设备)等领域。通常,凡是符合下列条件之一的应用,都可以考虑采用Zigbee技术。1)设备间距较小;2)设备成本低,传输数据量很小;3)设备体积小,不允许放置较大的电源模块;4)无法频繁的更换电池或反复充电;5)需要覆盖的范围较大,网络内需要容纳的设备较多,网络主要用于检测或者控制9。2.2 ZigBee 软件开发平台我们的学习平台是IAR+Z-stack 2007 PRO,芯片是TI公司的CC2530。也是目前国内最流行的且资料最全的Zigbee学习和应用方案。开发软件我们选用IAR7.60A,IAR最大优势是能够直接使用TI公司提供的协议栈Z-Stack进行开发,我们只需要调用 API 接口函数。这里我们选用Z-Stack-CC2530-2.3.0-1.4.0(Zigbee 2007),网上也有用更高版本,基本相差无几,但是目前2.3.0的通用性最高。IAR和Z-stack的高低版本是互不兼容的,所以两个东西的版本安装选取一定要配合好。经测试,IAR7.60A和Z-stack-CC2530-2.3.0-1.4.0配合使用时从安装到开发都很友好。IAR安装完成界面如图2.4图2.4 IAR 7.60软件界面2.3 Zigbee硬件开发平台2.3.1 CC2530核心板介绍CC2530 是用于2.4-GHz IEEE 802.15.4、ZigBee 和RF4CE 应用的一个真正的片上系统(SoC)解决方案。它能够以非常低的总的材料成本建立强大的网络节点。CC2530 结合了领先的RF 收发器的优良性能,业界标准的增强型8051 CPU,系统内可编程闪存,8-KB RAM 和许多其他强大的功能。CC2530 有四种不同的闪存版本:CC2530F32/64/128/256,分别具有32/64/128/256KB 的闪存。CC2530 具有不同的运行模式,使得它尤其适应超低功耗要求的系统。运行模式之间的转换时间短进一步确保了低能源消耗。CC2530芯片上系统(soc)是高度集成的解决方案,仅需要很少的外置元件,且所选用元件均为低成本型,可支持快速,廉价的zigbee节点的构建。CC2530芯片系统保持了CC2520所包含的作射频性能,包括了超低功耗、高灵敏度,出众的抗噪声及抗干扰性能,所集成的mcu为强大的8位,单周期8051微控制器核心(其典型性能可达到标准的8倍)10。另外,CC2530还包括了许多强大的外设资源,如dma、定时/计数器、看门狗定时器(watchdog timer),aes-128协处理器,8-14位adc,usart,睡眠定时器,上电复位电路,掉电检测电路以及21个可编程I/O引脚11。CC2530集成了51单片机内核,相比于众多的Zigbee芯片,CC2530颇受青睐。TI开发套件由专业人士精心设计,具有基于2004/2006/2007/PRO协议栈的开发模板、完整的原理图及例程源码。 针对CC2530芯片的Zigbee开发套件可与IAR for MCS-51 集成开发环境无缝连接,操作方便、连接方便、简单易学,是学习开发Zigbee产品最好最实用的开发工具。通过USB接口连接电脑,具有代码高速下载,在线调试,断点、单步、变量观察,寄存器观察等功能,实现对CC2530系列无线单片机实时在线仿真、调试。该开发套件模板能够协助初学者和设计人员快速评估及进行多种Zigbee应用开发,熟悉掌握硬件原理和协议栈。CC2530芯片具有如下特性:l 适应2.4GHz IEEE 802.15.4 的RF 收发器l 极高的接收灵敏度和抗干扰性能l 高性能和低功耗的8051微控制器核l 可编程的输出功率高达4.5 dBml 只需极少的外接元件l 只需一个晶振,即可满足网状网络系统需要l 6mm 6mm 的QFN40 封装l 适合系统配置符合世界范围的无线电频率法规:ETSI EN 300 328 和EN 300440(欧洲),FCC CFR47 第15 部分(美国)和ARIB STD-T-66(日本)l 硬件支持CSMA/CA功能l 较宽的电压范围(2.0-3.6v)l 数字化RSSI/LQI支持和强大的DMA功能l 具有电池检测和温度感测功能l 集成了14位的模 /数转换的adcl 集成AES安全协处理l 带有2个强大支持机组协议的USART,以及一个符合IEEE802.15.4规范的MAC 计时器,一个常规的16位计时器和2个8位计时器CC2530引脚和不带PA的核心板完全兼容,可靠传输距离400米,自动重连距离360米。其实物图如图2.5所示。对于CC2530的芯片内部结构,需要极少的外部连接元件,同时有很多典型电路,其模块大致可以分为三类:1)CPU和内存相关模块;2)外设,时钟电路的电源相关模块;3)无线信号收发相关模块。CC2530使用的8051CPU是一个单周期的兼容内核,她有三种不同的访问总线。其中包括中断控制器、内存仲裁器、8KB SPAM、32/64/128/256KB闪存块12。图2.5 CC2530+CC2591(PA) 核心板CC2530的外设特性如下:l 电池监视器和温度传感器l 8路输入,12位分辨率ADCl AES安全协议l 2个支持多种串行通信协议的强大的USARTl 21个通用I/O脚l 看门狗定时CC2530片内结构如图2.6图2.6 CC2530 片内结构原理图对于CC2530的一些技术参数,如表2.1所示。表2.1 CC2530技术参数网蜂团队打造的Zigbee开发套件及整个网蜂物联网Zigbee开发平台如图2.7及2.8所示。图2.7 Zigbee开发套件图2.8 网蜂物联网 ZigBee 开发平台2.3.2 IC卡模块简介模块简介l 尺寸:6 * 4cml 产品芯片:RC522l 工作电流:13-26mA/直流 3.3Vl 空闲电流:10-13mA/直流 3.3Vl 休眠电流:80uAl 峰值电流:30mAl 工作频率:13.56MHzl 读卡距离:060mm(mifare1卡)l 接口:SPIl 数据传输速率:最大10Mbit/sl 支持卡类型:mifare1 S50、mifare1 S70、mifare UltraLight、mifare Pro、mifare Desfirel 工作温度:摄氏20-80 度l 储存温度:摄氏40-85 度l 湿度:相对湿度5%95%IC卡模块实物图如图2.9所示。2.9 IC卡模块以上为Zigbee全部软硬件开发工具,准备就绪后,连接CC2530开发板,按下DEBUGGER复位键,芯片指示灯(表示检测到开发板上CC2530芯片),则完成连接工作。2.4 本章小结本章主要介绍了Zigbee的开发平台,包括软件开发套件以及硬件电路板。其中2.2讲述了开发软件IAR7.60以及与它兼容的TI协议栈版本,对于如何安装IAR7.60、TI协议栈、驱动以及建立工程文件,如何下载调试程序不再一一介绍。2.3.1主要讲述了核心板CC2530,CC2530集成了51内核,如果掌握单片机的话,也是很容易上手的,对于其它的开发套件、IC卡模块等做了相应的截图说明。对于本次设计,我们用到图2.9的Zigbee开发平台。第三章 Zigbee协议栈3.1 认识Zigbee协议栈 我们先来了解协议于协议栈的关系,协议是一系列的通信标准,通信双方需要共同按照这一标准进行正常的数据发射和接收。协议栈是协议的具体实现形式,通俗点来理解就是协议栈是协议和用户之间的一个接口,开发人员通过使用协议栈来使用这个协议的,进而实现无线数据收发。Zigbee堆栈是在IEEE 802.15.4标准基础上建立的,定义了协议的MAC和PHY层。Zigbee设备应该包括IEEE802.15.4(该标准定义了RF射频以及与相邻设备之间的通信)的PHY和MAC层,以及Zigbee堆栈层:网络层(NWK)、应用层和安全服务提供层13。 相对于常见的无线通信标准,Zigbee协议套件紧凑而简单,具体实现要求很低,Zigbee协议套件的最低需求估计:硬件需要8为处理器,如80C51;软件需要32kb的rom,最小软件需要4kb的rom,如CC2530芯片是具有8051内核的,内存为32-128kb的Zigbee无线单片机;网络主节点需要更多sdram,以容纳网络中所有节点的设备信息,数据包转发表,设备关联表,与安全有关的密钥存储等。总之,ZigBee 协议栈就是将各个层定义的协议都集合在一起,以函数的形式实现,并给用户提供 API(应用层),用户可以直接调用,图3.1展示了ZigBee 无线网络协议层的架构图。在开发一个应用时,协议较底下的层与应用是相互独立的,它们可以从第三方来获得,因此我们需要做的就只是在应用层进行相应的改动。我们可以用ZigBee 厂商提供的协议栈软件来方便地使用 ZigBee 协议栈(注意:不同厂商提供的协议栈是有区别的,此处介绍 TI 推出的 ZigBee 2007 协议栈也称 Z-Stack)。图3.1 Zigbee无线网络协议层 Z-stack 是挪威半导体公司Chipcon(目前已经被TI公司收购) 推出其CC2430 开发平台时,推出的一款业界领先的商业级协议栈软件,由于这个协议栈软件的出现,用户可以很容易地开发出具体的应用程序来,也就是大家说的掌握10个函数就能使用ZigBee通讯的原因。它使用瑞典公司IAR 开发的IAR Embedded Workbench for MCS-51作为它的集成开发环境。Chipcon 公司为自己设计的 Z-Stack 协议栈中提供了一个名为操作系统抽象层OSAL 的协议栈调度程序14。对于用户来说,除了能够看到这个调度程序外,其它任何协议栈操作的具体实现细节都被封装在库代码中。用户在进行具体的应用开发时只能够通过调用API 接口来进行,而无权知道ZigBee协议栈实现的具体细节15。图3.2是 TI 公司的基于ZigBee2007 的协议栈Z-Stack-CC2530-2.3.0,所有文件目录如红色框所示,我们可以把它看做一个庞大的工程。或者是一个小型的操作系统。采用任务轮询的方法运行。ZigBee 协议栈已经实现了 ZigBee 协议,用户可以使用协议栈提供的 API 进行应用程序的开发,在开发过程中完全不必关心 ZigBee 协议的具体实现细节,要关心的问题是:应用层的数据是使用哪些函数通过什么方式把数据发送出去或者把数据接收过来的。所以最重要的是我们要学会使用 ZigBee协议栈。图3.2 TI Z-stack TI Z-Stack-CC2530-2.3.0使用IAR在工程中打开zigbee协议栈,可以看到如图3.3的整个协议栈的框架。App:应用层目录,这是用户创建各种不同工程的区域,在这个目录中包含了应用层的内容和这个项目的主要内容,在协议栈中一般是以操作系统的任务实现的。HAL:硬件抽象层,包含有与硬件相关的配置和驱动及操作函数。MAC:MAC层目录,包含了mac层的参数配置文件及其mac的LIB 库的函数接口文件。MT:实现通过串口可控制各层,并与各层进行直接交付。NWK:网络层目录,包含网络层配置参数文件和网络层库的函数接口文件及aps层库的函数接口。OSAL:协议栈的操作系统。PROFILE:AF层的目录,包含af层处理函数文件。Security:安全层目录,包含安全层处理函数,比如加密函数等。Tools:工程配置目录,包含空间划分,及z-stack相关配置及信息。Zdo:zdo目录。Zmac:mac目录,包括mac层参数配置及mac层lib库函数回调处理函数。Zmain:主函数目录,包含入口函数及硬件配置文件。Output:输出文件目录,这是IAR ew8051 IDE自动生成的。综上所示,真个协议栈中对于zigbee功能已经全部体现,在此基础上建立一个项目的方法主要是改动应用层。图3.3 Zigbee协议栈协议栈的最终工作原理也一样。从它工作开始,定时器周而复始地计时,有发送、接收等任务要执行时就执行。这个方式称为任务轮询。其中组网:调用协议栈的组网函数、加入网络函数,实现网络的建立与节点的加入。发送:发送节点调用协议栈的无线数据发送函数,实现无线数据发送。接收:接收节点调用协议栈的无线数据接收函数,实现无线数据接收。图3.4 任务轮询任务轮询如图3.4所示。3.2 设备类型在ZigBee网络中存在三种逻辑设备类型:Coordinator(协调器),Router(路由器)和End-Device(终端设备)。ZigBee网络由一个Coordinator以及多个Router和多个End_Device组成。3.2.1 协调器协调器负责启动整个网络。它也是网络的第一个设备。协调器选择一个信道和一个网络ID(也称之为PAN ID,即Personal Area Network ID),随后启动整个网络。协调器也可以用来协助建立网络中安全层和应用层的绑定(bindings)。注意,协调器的角色主要涉及网络的启动和配置。一旦这些都完成后,协调器的工作就像一个路由器(或者消失)。由于ZigBee网络本身的分布特性,因此接下来整个网络的操作就不在依赖协调器是否存在16。3.2.2 路由器路由器的功能主要是:允许其他设备加入网络,多跳路由和协助它自己的由电池供电的儿子终端设备的通讯。通常,路由器希望是一直处于活动状态,因此它必须使用主电源供电。但是当使用树群这种网络模式时,允许路由间隔一定的周期操作一次,这样就可以使用电池给其供电17。3.2.3 终端设备终端设备没有特定的维持网络结构的责任,它可以睡眠或者唤醒,因此可以可以是一个电池供电设备。通常,终端设备对存储空间(特别是RAM的需要)比较小。注意:在Z-Stack 1.4.1中一个设备的类型通常在编译的时候通过编译选项(ZDO_COORDINATOR 和RTR_NWK)确定。所有的应用例子都提供独立的项目文件来编译每一种设备类型。3.2.4 栈配置栈参数的集合需要被配置为一定的值,连同这些值在一起被称之为栈配置。ZigBee联盟定义了这些由栈配置组成的栈参数。网络中的所有设备必须遵循同样的栈配置。为了促进互用性这个目标,ZigBee联盟为ZigBee2006规范定义了栈配置。所有遵循此栈配置的设备可以在其他开发商开发的遵循同样栈配置的网络中。3.3 路由3.3.1 概述路由对与应用层来说是完全透明的。应用程序只需简单的向下发送去往任何设备的数据到栈中,栈会负责寻找路径。这种方法,应用程序不知道操作是在一个多跳的网络当中的。路由还能够自愈ZigBee网络,如果某个无线连接断开了,路由功能又能自动寻找一条新的路径避开那个断开的网络连接。这就极大的提高了网络的可靠性,同时也是ZigBee网络的一个关键特性18。3.3.2 路由协议ZigBee执行基于用于AODV专用网络的路由协议。简化后用于传感器网络。ZigBee路由协议有助于网络环境有能力支持移动节点,连接失败和数据包丢失。当路由器从他自身的应用程序或者别的设备那里收到一个单点发送的数据包,则网络层根据一下程序将它继续传递下去。如果目标节点是它相邻路由器中的一个,则数据包直接被传送给目标设备。否则,路由器将要检索它的路由表中与所要传送的数据包的目标地址相符合的记录。如果存在与目标地址相符合的活动路由记录,则数据包将被发送到存储在记录中的下一级地址中去。如果没有发现任何相关的路由记录,则路由器发起路径寻找,数据包存储在缓冲区中知道路径寻找结束。ZigBee终端节点不执行任何路由功能。终端节点要向任何一个设备传送数据包,它只需简单的将数据向上发送给它的父亲设备,由它的父亲设备以它自己的名义执行路由。同样的,任何一个设备要给终端节点发送数据,发起路由寻找,终端节的的父亲节点都已它的名义来回应。注意ZigBee地址分配方案使得对于任何一个目标设备,根据它的地址都可以得到一条路径。在Z-Stack中,如果万一正常的路径寻找过程不能启动的话(通常由于缺少路由表空间),那么Z-Stack拥有自动回退机制。此外,在Z-Stack中,执行的路由已经优化了路由表记录19。通常,每一个目标设备都需要一条路由表记录。但是,通过把一定父亲节点记录与其子所有子结点的记录合并,这样既可以优化路径也可以不丧失任何功能。ZigBee路由器,包括协调器执行下面的路由函数:(i)路径发现和选择;(ii)路径保持维护;(iii)路径期满。3.3.3 路径的发现和选择路径发现是网络设备凭借网络相互协作发现和建立路径的一个过程。路由发现可以由任意一个路由设备发起,并且对于某个特定的目标设备一直执行。路径发现机制寻找源地址和目标地址之间的所有路径,并且试图选择可能的最好的路径。路径选择就是选择出可能的最小成本的路径。每一个结点通常持有跟它所有邻接点的“连接成本(link costs)”。通常,连接成本的典型函数是接收到的信号的强度。沿着路径,求出所有连接的连接成本总和,便可以得到整个路径的“路径成本”。路由算法试图寻找到拥有最小路径成本的路径。路径通过一系列的请求和回复数据包被发现。源设备通过向它的所有邻接节点广播一个路由请求数据包,来请求一个目标地址的路径。当一个节点接收到RREQ数据包,它依次转发RREQ数据包。但是在转发之前,它要加上最新的连接成本,然后更新RREQ数据包中的成本值。这样,沿着所有它通过的连接,RREQ数据包携带着连接成本的总和。这个过程一直持续到RREQ数据包到达目标设备。通过不同的路由器,许多RREQ副本都将到达目标设备。目标设备选择最好的RREQ数据包,然后发回一个路径答复数据包(a Route Reply)RREP给源设备。RREP数据包是一个单点发送数据包,

温馨提示

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

评论

0/150

提交评论