基于ZigBee技术的无线数据采集系统 - 图文(13)
如果找到了合适的信道,将随机选择一个网络PAN ID(网络标识,每一个网络都分配有一个独立的网络标识,网络中的设备根据此标识来确认自己所属的网络),不与原来的冲突,并开始侦听该信道。
一旦网络标识被选定,网络层管理实体将选择一个16位网络地址,同时通过发布MLME-SET.request 原语修改MAC 子层的PIB属性macShortaAddress(即MAC层的网络地址),与其保持一致。此时网络层管理实体将向MAC 层发布MLME-START.request 原语开始一个新的PAN操作。最后,网络层管理实体通过发送NLME-NETWORK-FROMATION .confirm原语建立网络的状态的执行结果通知应用层。
图4.2 的消息序列图给出了建立一个新网络的过程。
ZigBee协调器应用层NLME-NETWORK-FORMATION.requestMLME-SCAN.requestMLME-SCAN.confirmMLME-SCAN.requestMLME-SCAN.confirmMLME-SET.requestMLME-SET.confirmMLME-START.requestNLME-NETWORK-FORMATION.confirmMLME-START.confirmZigBee协调器网络层ZigBee协调器MAC层图4.2 ZigBee协调器建立新网络的流程图 Fig.4.2 ZigBee coordinator program flow chart
4.1.3 ZigBee设备加入网络过程
32
江 苏 大 学 硕 士 学 位 论 文
在一个ZigBee协调器设备建立网络后, 路由器或者ZigBee终端设备,可以作为子节点加入ZigBee协调器建立的网络,具体加入方式有两种:一种是通过MAC 层关联方式加入网络,另一种是通过之前指定的父节点直接方式加入网络。只有ZigBee协调器或ZigBee路由器能够允许设备加入网络,而ZigBee终端设备不允许设备加入网络。本文中采用的是直接方式加入网络。
以这种方式加入网络的过程中,首先由父节点发起。ZigBee协调器把设备直接加入到网络的过程通过NLME-DIRECT-JOIN.request原语来初始化,原语中DeviceAddress参数设为将加入到网络的设备地址。当这个过程初始化后,NLME首先判断指定的设备是否已经存在于网络中,这是通过搜索邻近表判断是否有匹配的64位扩展地址来实现的。如果找到匹配的地址,NLME将中止该过程,并通过发送
Status
参数为
ALREAD_PRESENT
的
NLME-DIRECT-JOIN.confirm原语告诉应用层,设备己经加入网络;如果找不到匹配的地址,NLME在可能的情况下将为新设备分配一个唯一的16位网络地址,将在其关联表中为这个子节点创建一个表项。如果地址空间容量不够,NLME将中止该过程,向上层发送Status参数为TABLE_FULL的NLME-DIRECT-JOIN.confirm原语。如果有足够的空间,发送Status参数为SUCCESS的NLME-DIRECT-JOIN.confirm原语告诉应用层创建成功。ZigBee协调器或ZigBee路由器把设备直接成功加入网络的过程如图4.3所示。
父设备APL层父设备NWK层父设备MAC层NLME-DIRECT-JOIN.request检查扩展地址并分配网络地址NLME-DIRECT-JOIN.confirm图4.3 父设备的信息流图
Fig.4.3 Information flow graph of parent device
子节点通过孤节点方式加入:首先子设备调用NLME-JOIN.request原语,
原语中 Rejoin Network项设置为真,然后NLME首先请求MAC子层执行在所有可用信道上的孤立扫描。NLME向MAC层发送MLME-SCAN.request原语启
33
江 苏 大 学 硕 士 学 位 论 文
动孤立扫描,扫描结果通过MLME-SCAN.confirm原语反馈给NLME。如果扫描成功,网络层将发送Status参数为SUCCESS的NLME-JOIN.confirm原语告之应用层,加入成功。如果扫描没有成功,网络层将终止操作,通过发送Status参数为NO_NETWORKS的NLME-JOIN.confirm原语告之应用层,没有找到网络。图4.4是一个子设备通过孤立扫描加入或重新加入网络的信息流程。
子设备APL层子设备NWK层子设备MAC层NLME-JOIN.requestMLME-SCAN.requestMLME-SCAN.confirmNLME-JOIN.confirm
图4.4 子设备加入网络信息流图
Fig.4.4 Information flow graph of child device adding network
当这一过程完成后,父设备的MAC层向上层发送
MLME-ORPHAN.indication原语告知一个孤立设备的存在。只有ZigBee协调器或ZigBee路由器才可以接收MLME-ORHPAN.indication原语,其他设备收到MLME-ORHPAN.indication原语时NLME将中止该过程。ZigBee协调器或ZigBee路由器收到MLME-ORHPAN.indication原语后,首先判断孤立设备是否是它的子设备。这个判断过程是通过比较孤立设备与邻近表中子设备的扩展地址来实现的。如果ZigBee协调器或ZigBee路由器发现孤立设备是它的子设备,NLME将获取该子设备的16位网络地址并通过孤立响应发送给MAC子层。孤立响应时通过向MAC层发送MLME-ORPHAN.response原语来实现的,孤立响应命令向子设备传送的结果状态通过MLME-COMMSTATUS.indication原语反馈给NLME。如果ZigBee协调器或ZigBee路由器发现孤立设备不是它的子设备,NLME就通过孤立响应原语把这一情况反映给MAC层。图4.5是父设备把孤立节点加入或重新加入到网络过程的信息流程。
34
江 苏 大 学 硕 士 学 位 论 文
父设备APL层父设备NWK层父设备MAC层MLME-ORHPAN.indication设备表中搜索地址MLME-ORPHAN.responseMLME-COMMSTATUS.indication图4.5 父设备信息流图
Fig.4.5 Information flow graph of parent device
4.1.4 本设计星型网络通信的实现 1、创建一个ZigBee网络
首先定义一个节点为ZigBee协调器节点,这是通过软件下载时确定。 ZigBee协调器节点创建一个ZigBee网络:由aplFormNetwork()函数完成,这函数中主要完成扫描信道的设置、扫描每个信道的时间、网络标示符的设置以及格式化一个新网络,具体设定如下:
//格式化一个网络
a_nwk_service.cmd = LRWPAN_SVC_NWK_FORM_NETWORK; //扫描信道的选择,为32位数据。每位为1:扫描信道,0:不扫描
a_nwk_service.args.form_network.ScanChannels=LRWPAN_DEFAULT_CHANNEL_MASK;
//设置扫描每个信道的时间
a_nwk_service.args.form_network.ScanDuration=LRWPAN_DEFAULT_CHANNEL_SCAN_DURATION;
//设置网络标识符
a_nwk_service.args.form_network.PANid = LRWPAN_DEFAULT_PANID;
格式化一个网络时需要完成的主要工作包括如下所示:
phyInit(); //初始化物理层 macInit(); //初始化MAC层 ntInitTable(); //初始化邻近表
a_nwk_service.status = macInitRadio(); //开启无线通信 nwkState = NWK_STATE_FORM_NETWORK_START; //形成一个网络
2、加入一个ZigBee网络
首先定义节点为子节点,这是通过软件下载时确定。
在协调器节点创建完一个网络之后,其他设备作为其子设备加入该网络。
35
…… 此处隐藏:1871字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [高等教育]公司协助某村精准扶贫工作总结.doc
- [高等教育]高二生物知识点总结(全)
- [高等教育]苏教版数学三年级下册《解决问题的策略
- [高等教育]仪器分析课程学习心得
- [高等教育]2017年五邑大学数学与计算科学学院333
- [高等教育]人教版七年级下册语文第四单元测试题(
- [高等教育]2018年秋七年级英语上册Unit7Howmuchar
- [高等教育]2017年八年级下数学教学工作小结
- [高等教育]湖南省怀化市2019届高三统一模拟考试(
- [高等教育]四年级下册科学_基础训练及答案教材
- [高等教育]城郊煤矿西风井管路伸缩器更换施工安全
- [高等教育]昆八中20182019学年度上学期期末考试
- [高等教育]项目部各类人员任命书
- [高等教育]上市公司经营水务产业的模式
- [高等教育]人教版高二化学第一学期第三章水溶液中
- [高等教育]【中考物理第一轮复习资料】四.压强与
- [高等教育]金坑水电站报废改建工程机电设备更新改
- [高等教育]高中生物教学工作计划简易版
- [高等教育]2017年西华大学攀枝花学院(联合办学)44
- [高等教育]最新整理超短爆笑英文小笑话大全
- 优秀教师继续教育学习心得体会
- 阳历到阴历的转换
- 留守儿童教育案例分析
- 华师17春秋学期《玩教具制作与环境布置
- 测速传感器新型安装装置的现场应用
- 人教版小学数学三年级下册第四单元
- 创业个人意向书
- 山东省潍坊市2012年高考仿真试题(三)
- [恒心][好卷速递]四川省成都外国语学校
- 多少人错把好转反应当成了病情加重处理
- 中外广播电视史复习资料整理
- 江苏省扬州市江都区宜陵镇中学2014-201
- 工程造价专业毕业实习报告
- 广西师范学院心理与教育统计
- aympkrq基于 - asp的博客网站设计与开
- 建筑业外出经营相关流程操作(营改增后
- 人治 德治 法治
- [精华篇]常识判断专项训练题库
- 中国共产党为什么要实行民主集中
- 小学数学第三册第一单元试卷(A、B、C




