专利名称:一种无线传感器网络中的中间件装置的制作方法
技术领域:
本实用新型涉及无线传感器网络同步技术领域,具体涉及一种无线传感器网络中的中间件装置。
背景技术:
无线传感器网络(WSN)是指由大量无处不在的,具有通信与计算能力的微小传感器节点密集分布在监控区域内而构成的根据环境自主完成指定任务的自治测控网络系统。在分布式无线传感器网络中,分簇汇聚的拓扑结构是一种能量高效的组网方式,它通过数据的簇内汇聚和簇间转发机制,有效减少了无限传感器网络通信过程中节点的总能耗。如图I所示,基于分簇汇聚的传感网络通常由若干个簇头骨干节点和大量传感器普 通节点构成。簇头作为一种无线传感器网络中间件装置,它承担着与底层传感器节点和上层网关进行无线通信的双重任务一方面收集簇内底层各线传感器节点现场采集到的数据,并将其通过无线网络接口上传给网关;另一方面接收上层远端计算机通过网关发布的控制指令,并将其转发给下层的簇内传感器节点。然而,目前现有的无线传感器网络中间件装置,通常只能完成数据收集和转发的任务,并不具备同步配置的功能。如何设计出一种新型高性能的中间件装置,对分簇式无线网络内的节点进行同步配置,将有利于实现无线传感器网络的时间同步。
实用新型内容有鉴于此,本实用新型提供了一种无线传感器网络中的中间件装置,能够实现分簇式无线网络内的节点进行同步配置,而且成本不高,能耗较低,能够被大量部署。该方案是这样实现的—种无线传感器网络中的中间件装置,该中间件装置应用于簇型拓扑结构的无线传感器网络中,该中间件装置包括微处理器、GPS模块、Zigbee模块、Wi-Fi模块和电源模块;GPS模块、Zigbee模块、Wi-Fi模块均与微处理器相连,电源模块分别与微处理器、GPS模块、Zigbee模块和Wi-Fi模块相连;其中,Zigbee模块,连接无线传感器网络中的下层传感器节点,用于实现本中间件装置与下层传感器节点之间的无线通信;Wi-Fi模块,连接无线传感器网络中的上层网关,用于实现本中间件装置与上层网关之间的无线通信;GPS模块,采用授时型GPS模块,用于实时接收精准的GPS秒脉冲信号,产生精准的秒脉冲触发信号,输出给微处理器;微处理器,用于将来自GPS模块的秒脉冲触发信号作为本中间件装置的时钟基准,对内部时钟进行校准;通过Zigbee模块对簇内传感器节点进行同步和访问,通过Wi-Fi模块与上层网关通信;电源模块,用于为微处理器、Zigbee模块、Wi-Fi模块、GPS模块提供直流电源。[0013]较佳地,所述微处理器包括第一同步单元、时钟单元、上层通信单元、下层通信单元、下层同步单元;第一同步单元将来自GPS模块的秒脉冲触发信号作为时钟基准,对时钟单元进行时钟校准;时钟单元为上层通信单元、下层通信单元、下层同步单元提供同步后时钟,作为其工作时钟基准;上层通信单元连接Wi-Fi模块,占用所在中间件装置被分配到的时间段通过Wi-Fi网络与上层网关进行通信;下层通信单元连接Zigbee模块,采用轮询的方式通过Zigbee网络访问簇内的各个传感器节点;下层同步单元连接Zigbee模块,具体包括第一同步模块和第二同步模块;第一同步模块周期性向传感器节点发出一个同步信息Sync,并接收Zigbee模块测量出发送准确时间TMl,其中,所述发送准确时间TMl是Zigbee模块将待发送数据从MAC层到达物理层的时间记录下来作为发送准确时间的;并且,第一同步模块在每个Sync信息发出后发出一个接续信息FolloW_Up,该FolloW_Up信息记载了 Sync信息的发送准确时间TMl ;第二同步模块,在接收到来自传感器节点的延迟请求信息包Delay_Req后,在延迟响应信息包内记录Delay_Req的接收准确时间TM3,并反馈给传感器节点;其中,所述接收准确时间TM3是Zigbee模块将所接收数据从物理层到达MAC层的时间记录下来作为接收准确时间的。较佳地,微处理器采用16位的低功耗单片机,单片机通过SPI接口与GPS模块相连,通过两个UART接口分别与Zigbee模块、Wi-Fi模块相连,GPS模块内部设有秒脉冲信号输出端,该输出端与微处理器的I/O端口相连,为微处理器提供精准的时钟触发信号。有益效果本实用新型在中间件装置中设置了 GPS授时功能和传感器同步功能,采用GPS授时对网络中的中间件装置即簇头进行同步,可以得到30ns的时钟精度,然后再由簇头对本簇内的传感器节点进行同步,从而在少量设置GPS模块的情况下,完成了整个网络的时间同步,与全网布置GPS模块的方案相比,大大降低了成本。其次,本装置继承了 Zigbee、Wi_Fi两种通用的无线接口,可进行Zigbee接口无线传感器组网,并可通过Wi-Fi无线接口与互联网连接,进行传感器网络的远程控制。其好处在于,Wi-Fi适用于大数据量传输,Zigbee适用于间断工作,每次数据量少,功耗小,簇头节点下层有多个节点轮询工作,工作时间短,适合采用Zigbee,而所有传感器节点的数据均通过一个网关与上位机互通,传输数据量大,网关是瓶颈,因此适合采用Wi-Fi。可见,采用两种无线接口的中间件装置能够减小整个网络的功耗。此外,本实用新型在微处理器中设计了时钟偏移+路径延迟的二阶段同步方案,能够实现所有传感器节点的精确同步,而且本实用新型通过捕捉数据在物理层和MAC层之间的传递时间获得数据准确发送和接收时间,从而为精确同步提供了有利的基础。
图I是本实用新型无线传感器网络的结构示意图。[0026]图2是无线传感器网络中中间件装置即簇头节点的结构示意图。图3是时钟偏移测量示意图。图4是时钟延迟测量示意图。图5为图2中微处理器的功能模块划分示意图。
具体实施方式
以下结合附图并举实施例,对本实用新型进行详细描述。本实用新型设计了一种具有两种无线接口、支持GPS授时、能够同步本簇中各传感器节点的无线传感器网络中间件。该中间件装置作为簇头节点应用于簇型网络结构中,如图I所示,整个无线传感器网络由大量的传感器节点、若干个簇头节点(中间件装置)、一个网关以及上位机组成,上位机通过网络与网关相连,各中间件装置通过Wi-Fi网络与上层的网关互连,每个中间件装置作为簇头通过Zigbee网络与下层的传感器节点互联。 参见图2,中间件装置包括微处理器、GPS模块、Zigbee模块、Wi-Fi模块和电源模块。微处理器可以采用一个16位的低功耗单片机,单片机拥有多个常用外设接口,例如UART接口、串行外设接口 SPI、I2C接口等。微处理器通过SPI接口与GPS模块相连、通过两个UART接口分别与Zigbee模块、Wi-Fi模块相连。GPS模块内部设有秒脉冲信号输出端,该输出端与微处理器的I/O端口相连,为微处理器提供精准的时钟触发信号。与现有技术不同,本实用新型中的簇头节点与上层和下层的通信方式采用不同的无线网络,与下层的传感器节点通过Zigbee网络互联,与上层的网关通过Wi-Fi网络互联。这是因此,Wi-Fi适用于大数据量传输,Zigbee适用于间断工作,每次数据量少,功耗小,簇头节点下层有多个节点轮询工作,工作时间短,适合采用Zigbee,而所有传感器节点的数据均通过一个网关与上位机互通,传输数据量大,网关是瓶颈,因此适合采用Wi-Fi。本实用新型是考虑到这种簇型无线传感器的特点,在通信协议选用上进行了特殊设计。下面针对每个模块的功能进行描述。Zigbee模块,用于实现所在中间件装置与下层传感器节点之间的无线通信,一方面接收传感器节点现场采集到的数据,另一方面转发远端上位机发布的控制指令给下层的传感器节点。Wi-Fi模块,用于实现所在中间件装置与上层网关之间的无线通信,一方面接收上位机对下层传感器节点发布的控制指令,另一方面转发本簇头节点收集到的传感器节点采集的现场数据。GPS模块,采用授时型GPS模块,用于实时接收精准的GPS秒脉冲信号,产生精准的秒脉冲触发信号,通过秒脉冲信号输出端输出给微处理器。微处理器,用于实现传感器节点现场采集到的数据以及远端上位机发布的控制指令的收发控制。(I)将来自GPS模块的秒脉冲触发信号作为时钟基准,对内部时钟进行校准,从而实现各个簇头节点的时钟同步,保证整个无线网络内部每个簇头节点的时钟保持一致。(2)通过Zigbee模块与簇内传感器节点实现互联,按照顺序依次与每个传感器节点进行通信,完成对传感器节点的同步,且采用轮询的方式与簇内的各个传感器节点进行访问,完成数据交换。(3)微处理器通过Wi-Fi模块与上层网关进行通信,为了避免网络拥堵,将秒脉冲均匀划分为若干个时间段,微处理器占用所在中间件装置被分配到的时间段与上层网关进行通信。电源模块,用于为微处理器、Zigbee模块、Wi-Fi模块、GPS模块提供直流电源。本实用新型的工作原理及步骤如下首先将各个传感器节点、簇头节点以及网关布设在无线传感器网络的指定区域内,一切准备就绪后开始上电。I)上位机通过以太网发布控制指令,网关将该 控制指令通过Wi-Fi无线网络转发给各簇头节点;2)各簇头节点接收到控制指令后,启动各自内置的授时型GPS模块实时接收GPS信号,输出精准的秒脉冲触发信号,并将该秒脉冲触发信号输送给微处理器。微处理器将该秒脉冲触发信号作为时钟基准,对簇头节点内部的时钟进行校准,进而实现各个簇头节点的时钟同步,保证整个无线网络内部每个簇头节点的时钟保持一致。3)每个簇头节点通过Zigbee无线网络与传感器节点实现互联,按照顺序依次与簇内的每一个传感器节点进行通信,按照如下方法对每个传感器节点的本地时钟进行时钟校准,消除时钟偏移和路径时延。在同步过程中,簇头节点作为主时钟,传感器节点为从时钟。时钟同步配置方法的实现过程可分为两个阶段计算时钟偏移(Offset)阶段和计算路径延迟(Delay)阶段。Offset是簇头节点与传感器节点之间的当前时钟偏移,由于受到网络延迟,尤其是数据报文的递交延迟的影响,一次传送同步报文计算的时钟偏移并不准确,还需计算路径延迟加以修正,而Delay就是簇头节点与传感器节点之间的当前传输延迟时间,在第一次时钟同步之前令Delay = O。首先为两个阶段定义变量Offset和Delay,这两个变量在同步过程中不断被更新。并且,为了精确地获取数据发送和接收时间,簇头节点和传感器节点均在发送数据时,将数据从MAC层到达物理层的时间记录下来作为精确地发送时间,在接收数据时,将数据从物理层到达MAC层的时间记录下来作为精确地接收时间。精确数据收发时间的记录在簇头节点中由Zigbee模块承担。第一阶段偏移测量偏移测量阶段用来修正簇头节点的主时钟和传感器节点的从时钟的时间差。在这个偏移修正过程中,簇头节点周期性发出一个同步信息(简称Sync信息),一般为每两秒一次。如图3所示,假设同步之前主时钟的时间为Tm = 1050s,而从属时钟的时间为Ts =IOOOs0簇头节点测量出发送的准确时间TM1,而传感器节点测量出接收的准确时间TS1。簇头节点在Sync信息发出后发出一个FolloW_Up信息,该信息加了一个时间印章,准确地记载了 Sync信息的真实发出时间TMl。这样,从属时钟使用FolloW_Up信息中的真实发出时间和接收方的真实接收时间,可以计算出从属时钟与主时钟之间的偏移(Offset)Offset = TSl-TMl-Delay = 1002-1051-0 = -49这里要说明的是,上式中的Delay指的是主时钟与从属时钟之间的传输延迟时间,它在本阶段是一个未知数,暂且视为Os,将在下面的延迟测量阶段测出。传感器节点根据偏移测量阶段计算得到的Offset更新本地从时钟,将从时钟修正为Ts = Ts-Offset = 1003-(-49) = 1052。本第一阶段可以执行多次。[0053]如图3可以看出,经过第一阶段Offset的测量和Ts的更新,主从时钟已经同步,簇头发送下一个Sync信息的时间为TM2 = 1053,设传感器节点接收时间TS2 = 1053,Offset = TS2-TM2-Delay = 1053-1053-0,可见主从之间时钟本身的偏移已经克服。第二阶段延迟测量延迟测量(delay measurement)阶段用来测量网络传输造成的延迟时间。为了测量网络的传输延时,定义了一个延迟请求信息包(Delay Request Packet),简称Delay_Req0如图4所示,传感器节点在收到Sync信息后在TS3 = 1080时刻发出延迟请求信息包 Delay_Req,簇头收到 Delay_Req 后在延迟响应信息包(Delay Request Packet, Delay_Resp)记录出准确的接收时间TM3,并发送给传感器节点,因此传感器节点就可以非常准确地计算出网络延时设,主到从的网络延时为Delayl,从到主的网络延时为Delay2 ; 因为TS2-TM2 = Delayl+OffsetTM3-TS3 = Delay2-0ffset则Delay1+Delay2 = (TS2-TM2) + (TM3-TS3)因为网络延迟时间是对称相等的,所以Delay = (Delayl+delay2)/2 = [(TS2-TM2)-(TS3-TM3)]/2 ;由于 TS2 = TM2,则 Delay = (TM3-TS3) /2 ;那么,传感器节点更新传输延迟时间Delay = (1082-1080) ]/2 = I0此时,由于TM和TS已经相同,因此传感器节点可以采用如下简化后的公式更新当前时钟偏移Offset = -Delay = -I ;接着,传感器节点更新本地时钟Ts :Ts = Ts-Offset = 1084- (-1) = 1085。当然,如果仍采用Offset = TS-TM-Delay的公式更新Offset,那么需要簇头节点与传感器节点之间再进行一次Sync和Follow_Up的交互,簇头节点发送Sync准确时间为TS4 = 1083,传感器节点接收Follow_Up准确时间为TM4 = 1083 ;然后,传感器节点再次更新当前时钟偏移Offset = TS4-TM4-Delay = 1083-1083-1 = -I ;接着,传感器节点更新本地时钟Ts :Ts = Ts-Offset = 1084- (-1) = 1085。可见,更新结果是相同的。与偏移测量阶段不同的是,延迟测量阶段的延迟请求信息包是随机发出的,并没有严格时间限制。需要说明的是,在这个测量过程中,假设传输介质是对称均匀的。最终,经过同步信息的交换,消除了主从设备的时钟偏移和网络传输的路径延迟,最终实现了从属时钟与主时钟的精确时间同步。此后,无线传感器网络进入正常工作状态。进入正常工作之前,也可以进行多轮如步骤3)所述的同步。在此之后,可以进行周期性的同步,实现簇内各个传感器节点的实时时钟同步。[0078]那么,为了实现上述工作过程,如图5所示,微处理单元可以被具体地功能划分为如下模块,包括第一同步单元、时钟单元、上层通信单元、下层通信单元、下层同步单元。第一同步单元将来自GPS模块的秒脉冲触发信号作为时钟基准,对时钟单元进行时钟校准。时钟单元为上层通信单元、下层通信单元、下层同步单元提供同步后时钟,作为其工作时钟基准。上层通信单元连接Wi-Fi模块,占用所在中间件装置被分配到的时间段通过Wi-Fi网络与上层网关进行通信。下层通信单元连接Zigbee模块,采用轮询的方式通过Zigbee网络与簇内的各个传感器节点进行访问,完成数据交换。下层同步单元连接Zigbee模块,按照顺序依次通过Zigbee网络对簇内的每个传 感器节点进行同步。下层同步单元具体包括第一同步模块和第二同步模块,分别对应同步过程的两个阶段偏移测量阶段和延迟测量阶段。第一同步模块,周期性发出一个同步信息(简称Sync信息),接收Zigbee模块测量出的发送准确时间TM1,其中,发送准确时间TMl是Zigbee模块将待发送数据从MAC层到达物理层的时间记录下来作为发送准确时间的;并且,第一同步模块在每个Sync信息发出后发出一个Follow_Up信息,记载了 Sync信息的真实发出时间TMl。这样,传感器节点就可以使用Follow_UP信息中的真实发出时间和接收方的真实接收时间,可以计算出从属时钟与主时钟之间的偏移Offset。第二同步模块,在接收到来自传感器节点的Delay_Req后在延迟响应信息包记录了 Delay_Req的准确接收时间TM3,并反馈给传感器节点,因此传感器节点就可以非常准确地计算出网络延时。同样,其中数据的准确接收时间TM3是Zigbee模块将所接收数据从物理层到达MAC层的时间记录下来作为准确接收时间的。通过实践可知,本装置的GPS授时可以得到30ns的时钟精度,并可实现对本装置通过无线接口连接的无线传感器进行2 us精度内的同步修正,达到全网同步的目的。综上所述,以上仅为本实用新型的较佳实施例而已,并非用于限定本实用新型的保护范围。凡在本实用新型的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本实用新型的保护范围之内。
权利要求1.一种无线传感器网络中的中间件装置,该中间件装置应用于簇型拓扑结构的无线传感器网络中,其特征在于,该中间件装置包括微处理器、GPS模块、Zigbee模块、Wi-Fi模块和电源模块;GPS模块、Zigbee模块、Wi-Fi模块均与微处理器相连,电源模块分别与微处理器、GPS模块、Zigbee模块和Wi-Fi模块相连;其中, Zigbee模块,连接无线传感器网络中 的下层传感器节点,用于实现本中间件装置与下层传感器节点之间的无线通信; Wi-Fi模块,连接无线传感器网络中的上层网关,用于实现本中间件装置与上层网关之间的无线通信; GPS模块,采用授时型GPS模块,用于实时接收精准的GPS秒脉冲信号,产生精准的秒脉冲触发信号,输出给微处理器; 微处理器,用于将来自GPS模块的秒脉冲触发信号作为本中间件装置的时钟基准,对内部时钟进行校准;通过Zigbee模块对簇内传感器节点进行同步和访问,通过Wi-Fi模块与上层网关通信; 电源模块,用于为微处理器、Zigbee模块、Wi-Fi模块、GPS模块提供直流电源。
2.如权利要求I所述的中间件装置,其特征在于,微处理器采用16位的低功耗单片机,单片机通过串行外设接口 SPI与GPS模块相连,通过两个UART接口分别与Zigbee模块、Wi-Fi模块相连,GPS模块内部设有秒脉冲信号输出端,该输出端与微处理器的I/O端口相连,为微处理器提供精准的时钟触发信号。
专利摘要本实用新型公开了一种无线传感器网络中的中间件装置,其中,Zigbee模块,连接无线传感器网络中的下层传感器节点,用于实现本中间件装置与下层传感器节点之间的无线通信;Wi-Fi模块,连接无线传感器网络中的上层网关,用于实现本中间件装置与上层网关之间的无线通信;GPS模块,采用授时型GPS模块,用于实时接收精准的GPS秒脉冲信号,产生精准的秒脉冲触发信号,输出给微处理器;微处理器,用于将来自GPS模块的秒脉冲触发信号作为本中间件装置的时钟基准,对内部时钟进行校准;通过Zigbee模块对簇内传感器节点进行同步和访问,通过Wi-Fi模块与上层网关通信;电源模块用于供电。使用本实用新型能够实现分簇式无线网络内的节点进行同步配置。
文档编号H04W84/18GK202514075SQ20112049335
公开日2012年10月31日 申请日期2011年12月1日 优先权日2011年12月1日
发明者周庆飞, 周志波, 安佰岳, 王石记 申请人:北京航天测控技术有限公司