欢迎来到天天文库
浏览记录
ID:11560284
大小:39.50 KB
页数:6页
时间:2018-07-12
《zigbee无线通信技术入门之我见》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Zigbee是一种新型的短距离无线通信技术。其特点是低功耗,低成本,组网灵活。Zigbee协议由zigbee联盟指定,包括应用层,和网络层,其下层采用IEEE802.15.4协议。无论是学习zigbee技术,还是利用zigbee技术开发产品,都需要较好的掌握zigbee协议,并比较深入的了解IEEE802.15.4协议.然而仅zigbee协议就接近400页,而IEEE802.15.4协议多达600页,全部是英文。如果从来没有接触过无线通信的开发,要迅速掌握这么多内容确实有一些难度,笔者考虑到广大急
2、切进入zigbee的同仁者,结合自己开发中总结出的理解协议的特定方法,从开发的角度,阐述协议内容,以达到抛砖引玉的效果,同时和广大同仁交流,共同提高,并希望zigbee技术能够在中国发扬光大。协议从功能实现来讲,ZigBee协议层共包括物理层(又称实体层)、MAC层、数据链接层、网络层和应用支持层五个主要层次。在标准制定的分工上,ZigBee协议层是由ZigBee联盟和IEEE802.15.4的任务小组共同完成的。其中,物理层(又称实体层)、MAC层、数据链接层,以及传输过程中的资料加密机制等都是
3、由IEEE所主导的。网络层和应用支持层则由ZigBee联盟来完成。IEEE802.15.4小组与ZigBee联盟共同针对ZigBee协议栈的发展进行研究,而未来还能依据系统客户的要求来修正其所需的应用界面。如图1所示:Zigbee协议整体架构作为理解协议,从开发者的角度来讲,这样学习协议是比较费时间的,也较难掌握。笔者从自己长期开发的经验来看,对无线通信,最重要的就是在发送端根据用户的要求,把数据能够扔出去,并且是扔到指定的设备,在接收端,能够把发送到该设备的数据捡起来。并根据用户要求的作特定的处
4、理。如果考虑在一个无线网路中的话,就得首先建立网络,其他得设备加入网络。最后是才是一些其他的问题,如设备离开网络,设备重新加入网络,等等。这样从通信过程去理解协议,将会使得协议的内容非常明了,也可以很好的知道利用协议开发产品,达到事半功倍的效果。本人将根据这样的思路,分五期具体讲述协议内容:第一期:设备建立网络过程第二期:设备加入网络过程第三期:数据发送过程第四期:数据接收过程第五期:其他的问题zigbee设备建立网络过程在一个zigbee网络中,只有协调器(coordinator)设备可以建立网
5、络,在建立网络过程中,所有的实现过程都是通过原语实现的(具体在程序中,如用c语言,就是调用一个一个函数,或者是一个一个任务来实现(不要刻意最求这句话的准确性,本来好的协议就是只要达到这样的结果,不管具体实现)),首先协调器设备的应用层调用NLME_NETWORK_FORMATION.request原语,发出建立网络请求,网络层收到这个原语,就要求MAC层执行信道能量扫描(在IEEEE802.15.4协议中规定,在2.4G频段,共有16个信道,每个信道的带宽为5M,深入理解,可以看协议和通信原理的相
6、关资料)。这调用MLME_SCAN.request,主要找到信道能量低于设定能量值的信道,并且标注这些信道是可用信道,下一步就在可用信道中执行活动情况扫描(activescan),就是在可接受的信道搜寻zigbeee设备,找到一个最好的信道,通过记录的结果,选择一个信道,该信道存在最少的zigbee网络,最好是没有zigbee设备。如果没有合适的,将发送confirm原语,并告知上层结果;如果找到了合适的信道,将随机选择一个PAN(网络号,就是可以识别一个特定zigbee网络的标识号),不与原来的
7、冲突,如果没有找到,也通过原语告诉上层结果,如果找到了,就通过原语在MAC层注册,这个ID号,然后选择网络地址,并发送MLME_START.request原语,获取PANID和信道扫描结果,将通过confirm原语告知上层。收到PAN开始的状态,NLME将告知应用层,它要求的建立网络的状态,这通过NLME_NETWORK_FORMATION.confirm原语实现。zigbee设备加入网络过程(方式一关联加入)在一个zigbee协调器设备建立网络后,路由器设备或者终端设备(enddevice),可
8、以加入协调器建立的网络,具体加入网络有两种方式,一种是通过关联(association)方式,就是待加入的设备发起加入网络,具体实现方式后面讨论,另一种是直接(direct)方式,就是待加入的设备具体加入到那个设备下,作为该设备的子节点,由以前网络中的设备,想待加入的设备作为其子设备决定。下面重点讨论第一种方式,也是实际中用的最多的方式通过关联方式加入一个网络:加入一个设备,是两个设备的事,即子设备和待定父设备对于子设备,首先子设备调用NLME-NETWORK-DISCOVERY.
此文档下载收益归作者所有