e-works数字化企业网  »  文章频道  »  工业自动化控制  »  传感器

协调器的作用及应用

2013/3/18    来源:中国传动网    作者:佚名      
关键字:无线传感器  网络协调器  节点  
无线传感器网络是一个多学科高度交叉、知识高度集成的前沿热点研究领域,有着巨大的科学意义,在军事国防、生物医疗、环境监测、交通管理等各个领域有着十分广阔的应用前景,它将对人类的生活产生重大的影响。

0.引言

    无线传感器网络是一个多学科高度交叉、知识高度集成的前沿热点研究领域,有着巨大的科学意义,在军事国防、生物医疗、环境监测、交通管理等各个领域有着十分广阔的应用前景,它将对人类的生活产生重大的影响。美国的《技术评论》杂志在论述未来新兴十大技术时,更是将无线传感器网络列为第一项未来新兴技术,《商业周刊》将传感器网络定位成21世纪高技术领域的四大支柱性产业之一。在无线传感器网络中,协调器是整个网络的中心,被称之为无线传感网络的“大脑”。因此,本文主要对无线传感器网络中的协调器做主要介绍,包括其作用和软硬件设计等。

1.协调器的作用

    网络协调器的主要功能是协调建立网络,其他功能还包括:传输网络信标、管理网络节点及存储网络节点信息,并且提供关联节点之间的路由信息;此外,网络协调器要存储一些基本信息,如节点数据设备、数据转发表及设备关联表等。

    ZigBee的网络拓扑结构有三种:星型网络、树簇型网络、网型网络]。其中,定义了两种设备:全功能设备(FFD,Full-functionDevice)和精简功能设备(RFD,Reduced-functionDevice)。与RFD相比,FFD在硬件功能上比较完备。在通信能力上,FFD可以与是由于其他的FFD或RFD通信,而RFD只能和与其关联的FFD进行通信。下面就三种网络拓扑结构中协调器的作用进行简单描述。

1.1星型网络中协调器的作用

    在星型网络拓扑结构的网络中有一个称为网络协调器的中央控制器和若干个从设备,如图1.1所示。协调器负责网络的建立和维护,它必须是FFD节点,而且一般来说应该有稳定的电能供给,不需要考虑耗能问题。从设备可以是FFD节点,在大多数情况下是采用电池供电的RFD节点,它只能直接与网络协调器进行数据通信,而与其他从设备之间的通信必须通过网络协调器转发。在一个网络中哪个设备作为网络协调器一般来说是由上层规定的,不在ZigBee协议规定的范围之内。比较简单的方法就是让首先启动的FFD成为网络协调器。在这种情况下,当一个FFD节点上电开始工作时,它就会检测周围的环境,选择合适的信道,把自己设为协调器,并选择一个网络标识符,然后建立起自己的网络。网络标识符用来唯一的确定本网络,以和其他网络相区分,网络内的从设备也是根据这个网络标识符来确定自己和网络协调器的从属关系。网络建立后,协调器就可以允许其他的设备与自己建立连接从而加入到该网络中。至此,一个星型的ZigBee网络就建立起来了。

如图

图1.1 星型网络结构拓扑结构图

1.2树簇型网络中协调器的作用

    在分布范围相对较大的应用场合,树型拓扑结构是一种合适的结构形式,如图1.2所示。图中,处于网络最末端的称为“叶”节点,它们是网络中的终端设备。若干个叶节点设备连接在一个全功能节点(FFD)上形成一个“簇”,若干个“簇”再连接就形成“树”,故称为树簇型拓扑网络。树簇型拓扑网络网络拓扑结构中的大部分节点是FFD,半功能节点(RFD)只能作为叶节点处于树枝的末端。在这种网络中有一个主协调器,作为主协调器的节点应该具有更多的资源、稳定可靠的供电等。在建立这样的网络时,协调器启动建立网络后,首先选择网络标识符,将自己短地址设置为0,然后开始向它邻近的设备发送信标,接受其他设备的连接,形成树的第一级。协调器与这些设备之间形成父子关系。与协调器建立了连接的设备都分配了一个16位的网络地址——称为短地址。如果设备以终端设备的身份接入网络,则协调器会为它分配一个唯一的16位网络地址;如果设备以路由器的身份与网络建立连接,则协调器会为它分配一个地址块——包含有若干16位短地址。路由器根据它接收到的协调器信标的信息,配置并发送它自己的信标,允许其他的设备与自己建立连接,成为其子设备。这些子设备中可以有路由器,它们可以有自己的子设备,如此下去形成多级树簇型结构的网络。显然,树簇型网络是利用路由器对星型网络的扩充。

如图

图1.2 树簇型网络拓扑结构图

如图

图1.3 网型网络拓扑结构图

1.3网型网络

    如图1.3所示,网形网络是一个自由设计的拓扑,具有很高的适应环境的能力。网络中的每个节点都是一个小的路由器,都具有重新路由选择的能力,以确保网络最大限度的可靠性,可以看出网络中任意两个节点的通讯路径不是唯一的。网型拓扑与星型、树簇型相比,更加复杂,其路由拓扑是动态的,不存在一个固定可知的路由模式。这样信息传输时间更加依赖瞬时网络连接质量,因而难以预计。更重要的是,即使对一个经验丰富的网络设计师来说,定性地分析网型算法也是一件极具挑战的工作。考虑网型网络的复杂性和应用场合,我们采用星型网络和树簇型网络组建环境检测系统。

2.协调器程序设计

如图

图2.1协调器软件流程

    网络协调器的程序主要包括协调建立网络、检测网络状态、发送维护信号、发送采集命令等。协调器软件流程图如图2.1所示。协调器节点上电后首先进行初始化,具体包括芯片初始化、协议栈初始化、串口初始化、硬件初始化等。其中芯片、协议栈、串口初始化工作可分别调用协议栈自带的初始化函数实现,硬件初始化函数则根据自己设计电路板的硬件进行裁剪。整个协议栈是以一个OS(operatingsystem)贯穿的,因此初始化完成之后将通过osal_strar_system()函数进入操作系统。这个函数也是任务同的主循环函数,它将检查所有的任务事件并为含有该事件的任务调用任务事件处理函数。每个任务事件都对应一个ID,当某个事件发生时,设置其对应的ID号。

如图

图2.2协调器组网流程图

    各个节点在通信之前,协调器必须先把网络建立起来,图2.2为ZigBee节点的组网流程图。协调器上电后会搜索网络,选择16个频道的第一个频道,发出一个Channel_Busy帧,请求在这个频道上的节点给予回复。如果此物理空间上存在已经使用这个频道的ZigBee网络,那么这个网络中的FFD在接收到Channel_Busy帧后会回复一个帧,告诉刚上电的FFD这个频道已经被占用。刚上电的FFD接收到回复帧以后,得知这个频道已经被占用,于是换到下一个频道,发送一个Channel_Busy帧。如此下去,直到这个FFD发出Channel_Busy帧后没接到任何回复,于是确认这个频道是没有被占据的空频道。该FFD在这个空频道上建立ZigBee网络,等待RFD节点的加入。这样一个新的ZigBee网络组建成功。如果ZigBee网络的16个频道都被占用,FFD就不可能找到空闲的频道,结果是网络构建失败。

如图

图2.3检测网络

责任编辑:陈浩
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐