首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
通信技术
»
无线技术
» 基于ZigBee无线网络的可控组网方法研究
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于ZigBee无线网络的可控组网方法研究
发短消息
加为好友
porereading
当前离线
UID
863084
帖子
7183
精华
0
积分
3592
阅读权限
90
在线时间
209 小时
注册时间
2011-11-30
最后登录
2019-8-28
论坛元老
UID
863084
1
#
打印
字体大小:
t
T
porereading
发表于 2014-11-12 22:39
|
只看该作者
基于ZigBee无线网络的可控组网方法研究
无线网络
,
通信技术
,
可行性
,
建筑
,
组网
ZigBee无线网络申节点多采用自组网的方式入网,这种方式容易引起网络中部分节点的过度消耗。针对此种情况提出可控组网方式,通过对节点入网父节点的选择控制,可以有效的监控管理整个网络的拓扑结构和节点分布,并延长节点和网络的寿命。通过在基于CC2530的开发系统申对可控组网方式编译和实现,验证了其可行性。
随着社会的发展,无线网络在我们的各项活动中扮演着越来越重要的角色。无线通信技术有很多,其中ZigBee技术以其低速率、短距离、低功耗的特点,较好地适用于智能家庭、智能建筑、医疗应用和工业自动化等某些特定的需求。
文中主要是对ZigBee网络通讯组网方式的研究。ZigBee2007/PRO中规定的ZigBee网络中节点采取无线自组网的方式组建网络。自组网容易将多个子节点经同一父节点入网,导致部分路由节点负担过重耗电较快,进而引起过早死亡。本文主要是研究通过一种可控的组网方式,使得用户可以通过上位机自动或手动的选择父节点让节点入网,这样可以避免对个别关键节点的过量消耗,延长网络寿命。
1无线自组网方法分析
无线自组网(Ad Hoc)又称为多跳无线网,它是一种无中心节点、多跳的自组织技术。在ZigBee2007/PRO中倡导的组网方式中,一个新的节点在网络中可以随机放置,接通电源后先完成节点初始化,然后首先向协调点发送指令,协调点接收到请求分配级别指令后会记录节点信息并分配对应级别,并发送分配级别指令。节点在设定的时间内如果收到了分配指令,就会协调点发送包含白组织信息的数据包,确定自己在网络中的级别和父节点信息,接入网络。如果在设定的时间内没有收到分配级别的指令,该节点就会从待机状态唤醒,再次发送分配级别请求指令,循环执行,直到接入成功。当达到设置的上限次数但仍未获得指令信息时,则节点接入失败并报告错误。节点自组织流程图1所示。
图1 节点自组织流程图
2改进的组网方式
文中要实现的组网方式,是要让子节点加入网络时实现有效的全程可控。当新节点放入网络后,会先广播发送信标帧,有效范围内的可用父节点收到信标后会回复确认消息,其中包含父节点本身的信息,新节点收到反馈的消息后会搜集父节点信息,整理后把包含父节点信息和自身信息的消息广播发送给协调器。协调器接收到消息后会通过串口发送到上位机控制器,经判断后自动或人为的选择适合接入的父节点并将此消息发送给对应父节点,父节点接收到此消息后向新节点发送消息建立连接,节点入网完成。
一个新节点放入网络中,打开电源后会首先应用层会向网络层发送一条发现网络请求原语NLME-NETWORK-DISCOVERY.request对节点进行初始化。网络层收到网络发现请求原语后会向MAC层发送节点扫描请求原语MLME-SCAN.request,来指示MAC层进行网络的主动扫描。MAC层收到此条原语后就会指示物理层向网络中广播发送一条扫描父节点信标帧,然后进入待机模式等待反馈。在可用的父节点接收到信标帧后,会向子节点反馈发送确认消息,其确认消息中将包含父节点本身的信息。节点的MAC层会接收每条具有有效负载的反馈信标,然后对收到的信息进行整理,确认信标负载、信标的对应节点地址等信息,整理后MAC层将会向NLME发送一条指示原语MLME-BEACON-NOTIFY.indication.NLME在收到原语后会对接收到的数据中的地址字段进行标记,以确定是否与自己的近邻表中现有地址相同。如果比对结果显示二者相同,即重复节点,节点会把信标丢弃;如果二者不同,节点就保存信标信息,并把其中的地址信息添加到自己的近邻表中。MAC层在达到设定的计时周期后,就会向NLME发送扫描确认原语MLME-SCAN.confirm,以标志扫描过程结束。然后网络层向应用层法发送一条发现确认原语NLME-NETWORK-DISCOVERY.confirm,将其扫描到的节点信息反馈给应用层。应用层在接收到网络层发送的发现确认原语后,会向NLME发送加入请求原语NL ME-JOIN.request,发送的原语中对应的标识符参数与搜寻到的各节点的网络标识符一致。网络层在收到上层的加入请求指令后,会整理搜寻到的可用父节点信息,加入地址信息后发送加入请求原语MLME-JOIN.request给MAC层。MAC层收到原语后会指示物理层向网络中广播发送一条加入请求信标帧,然后节点会打开定时器并进入低功耗待机状态,等待上级响应。
子节点会在指定的时间间隔周期的唤醒接收上级的指令。协调器完成父节点选择后会给指定的父节点发送确认加入指令,父节点接收到消息后会给子节点发送一条加入请求原语NLME-DIRECT-JOIN.request来完成初始化,原语中的参数DeviceAddress记录将要加入网络的节点地址信息,然后向子节点发送一条请求加入的信标帧。子节点在收到父节点的信标帧后,MAC层会向网络层发送指示原语MLME-ASSOICATE.in dication,将接收到的父节点信息发送到上层。网络层收到原语后将记录父节点信息并比对与近邻表中记录的可用父节点信息是否一致,若一致,则向MAC层发送加入请求原语MLME-JOIN.request;若不一致则发送错误报告。MAC层在与父节点关联成功后会向网络层发送加入确认原语MLME-JOIN.confirm指示加入成功,网络层将向应用层发送加入确认原语NLME-JOIN.confirm,告知节点入网成功。新节点加入网络中子节点的信息流程图如2所示。
图2 新节点加入网络中子节点的信息流程图
作为父节点的协调点或路由节点收到子节点发出的节点扫描信标帧后,NLME会先查看自己的近邻表中是否存在与之相匹配的地址信息,以对新节点是否加入过网络进行判断。如果发现有相匹配的地址信息,则路由节点NLME会记录此条地址信息,然后按照下文的网络原有节点重新加入网络进行操作;如果发现没有相匹配的地址信息,则路由节点NLME会向MAC层发送一条响应原语MIME-ASSOCIATE.resPonse。MAC层收到响应原语后会指示节点物理层向新节点发送一条状态信息,信息中记录路由节点的地址和标识符等信息。
等收到子节点发送来的整理完成的信息帧时,路由节点的MAC层会读取信息帧中的头地址信息,然后向NLME发送数据发送请求原语MLME-SEND.request,网络层收到请求原语后判断发送地址是否正确并寻找发送数据需要的路径。路径建立后网络层向MAC层发送发送确认原语MLME-SEND.response,指示节点发送数据。
当信息发送到协调点并经上位机选择后会生成一条指示入网命令帧,然后发送。网络会根据上位机选择的父节点地址将命令帧转发给对应的节点。选择的父节点收到命令帧后会读取命令信息,然后节点MAC层发送加入请求原语MLME-JOIN.request给网络层,NLME收到原语后会给新节点分配网络地址。父节点接收入网请求成功,NLME会在节点近邻表中加入新节点的地址等信息,然后发送加入确认原语MLME-JOI N.confirm给MAC层以报告关联成功。新节点加入网络中时路由节点的信息流程图如图3所示。
图3 新节点加入网络中路由节点的信息流程图
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议