APP下载

移动汇聚节点在仓储中的数据采集技术及应用

2018-11-22管有庆

计算机技术与发展 2018年11期
关键词:无线距离能量

常 李,管有庆

(南京邮电大学 物联网学院,江苏 南京 210003)

1 概 述

智能物流和智能仓储是物联网发展的重点之一,无线传感器网络在智能仓储中的应用越来越多。目前国内最成熟的智能仓储解决方案之一就是RFID(射频识别技术)手持机管理模式,员工可以使用手持机进行单据确认、盘点、查询统计。RFID手持机管理模式是将电子标签贴在相应的物品上,用阅读器收集信息,以此来实现库存的盘点和查询等功能。但是,由于现代仓储的规模越来越大,以及特殊物品(如农作物、化学物品)需要特殊的保存环境,所以在仓库中直接部署传感器的感知节点,显得更为方便。

1.1 研究背景

文献[1]中指出,当汇聚节点是静止状态时,汇聚节点通常需要消耗大量的能量将传感器节点收集的数据传送到较远的地方,因此汇聚节点会很快耗尽能量,导致整个网络出现故障,无法提供足够的服务质量。因此针对移动汇聚节点对特定锚节点进行数据收集已延长网络生存时间的问题进行研究,并通过实验证明该问题是非确定性多项式的;此外,还提出了一种加权聚集规划方法(wireless routing protocol,WRP)来延长网络寿命。

文献[2]中提出了基于移动汇聚节点的数据采集算法树,即TCBDGA算法。主要特点是基于树结构重量,即包括剩余能量、邻居节点的数量以及到基站的距离,同时考虑到了树中节点的选择,缺点是限制了数据收集的范围。

为了研究移动汇聚节点收集数据的特点和性能,查阅了两种类别的相关文献,一类是基于轮询或基于汇合点的方法,其中移动汇聚节点访问每个特定的轮询点或汇合点,通过短程的通信收集传感器的数据。在这一类方法中,需要考虑能量消耗和数据收集延迟以及移动汇集节点运动轨迹的长短。另一类是采用现有的聚类算法选择合适的锚节点进行数据聚合和上传,将传感器节点组织成不同的簇,并且处于整个网络的下层。传感器节点将数据传送到特定锚节点,而移动汇聚节点从上层的锚节点收集数据,不同的簇就是整个网络的骨干结构。

文中融合上述两类方法的优势,考虑能量消耗的同时尽可能覆盖更多的数据收集范围,使用轮询的方法组织不同的簇,尽最大努力收集数据。

1.2 研究方向

传感器节点对仓库的温度、环境进行监控,能够有效保证仓库的环境,增强仓库的安全系数,出现安全隐患时直接报警。无线传感器网络具有低功耗、低成本、低速率等特点,能够通过微型感知器完成数据采集,并将信息传给仓库管理员。文中设计的模型为各无线感知节点被安装在固定的地方,数据的采集靠人工移动的方法,即在工作人员进行取货、补货时的移动车架上安装收集数据的汇聚节点。考虑到传感器节点能量较少,所以需要进行能量均衡设计和最短路径规划设计,因此提出了基于空间的HLSA算法。

传感器节点被分布在不同的地方,可能是不同高度、不同距离,根据员工每次需要运动的轨迹,动态地选出收集感知节点信息的锚节点,每次的锚节点都由其中特定的感知节点担当,这种身份担当不是固定的,即感知节点和锚节点的身份是可以互相转化的。锚节点的选择基于节点剩余能量和与员工运动轨迹的距离。员工手推载货的推车,车上安装有移动汇聚节点,从各个锚节点采集信息。一次运动轨迹结束,完成一轮信息采集。按照现在仓储的搬运、卸货模式,每天可以完成多次信息采集,对仓库的环境能达到有效的监控。系统网络模型如图1所示。

图1 系统网络模型

在系统网络中,根据数据经过的传感器节点的跳数,网络可以划分为数据直传传输网络和多跳数据传输网络。由于研究的是固定仓储,所以选择了直接数据传输网络。文中选择了部分感知节点的位置作为锚节点的位置[3],然后,将移动汇聚节点移动到锚节点的位置收集附近感知节点的数据。

移动汇聚节点的主要特点是完成直接数据传送和周期性数据采集。在直接传送数据中,终端节点采用单跳方式将数据发送给移动汇聚节点;在周期性数据采集中,每次货车运送货物,都算是一次数据采集周期。从出发点位置到目标货物位置的路径可以看成是移动汇聚节点移动的路径,路径经过的地方附近的锚节点将收集到的数据传送过来。其余没有经过的地方在剩下的周期中会被覆盖到,每轮数据包括温度、湿度、方位、剩余的节点能量[4]。

2 系统模型

无线传感器网络由传感器和称为接收器的特殊节点(即汇聚节点)组成,传感器能够感测环境,汇聚节点可以从传感器收集数据。假设无线传感器网络的每个传感器每隔一段时间可以感测环境数据。另外假设所有传感节点都随机分布,节点到节点的距离不一致。为了使所有感知节点到汇聚节点的距离近似相等,进而使运动轨迹最短,减少数据传输的总长度和能量消耗,必须挑选出一个锚节点,使得它与各个感知节点的距离近似相等。文中假设了一个无向加权图G(VG,EG,w)。其中VG表示包含在内的节点,边(vi,vi+1)表示节点vi和vi+1可以互相通信,EG表示节点剩余的能量,w表示传感器节点v在一段时间内可以生成的原始数据单位。文中假设网络生成的感知数据能够被传感器节点重复转发,直到其到达目的地[5]。

在系统网络中,用包含根节点的树来收集数据是通用结构,这里采用的树结构只有两层,根节点即为锚节点,叶子节点为普通的感知节点。感知节点采集到数据后转发给锚节点,当移动汇聚节点停留在锚节点附近时,锚节点可以将收集的数据转发给移动汇聚节点。给定无线传感器网络的无向图G(VG,EG,w),用于收集数据的簇用T(anchor,VT,ET)表示,其中ET⊆EG,VT⊆VG。当数据通过簇结构T(anchor,VT,ET)转发到锚节点(这边的锚节点并不是最终的锚节点,只是备用的锚节点)时,树中的每个节点负责转发自身收集的数据。因此,在每一段时间,每个除了锚节点以外的节点vnode∈VT,负责转发自身收集的w(vnode)个单位的数据,p(vanchor)表示由锚节点vanchor转发的原始数据的单位总和,可以用以下形式定义:

(1)

其中,vT表示树T中v节点的集合[6]。

需要注意的是,选出的锚节点只收集距离它只有一跳的节点数据,即距离不超过设定的常数R。

文中假设所有的原始数据可以由无线传感器网络中的传感器节点进行聚合,以减少转发数据的能耗。这里,使用α表示允许聚合成一个数据包的原始数据的最大单位数。因此,通过式1,在每个时间段,每个锚节点负责转发的分组数可以用δ(vanchor)表示,定义如下:

(2)

等式中向上取整是为了防止w(vanchor)和α的除数不是整数,得出的组数不能包含余数,这样能够最大化地将所有数据都被分组。

由于T中的每个锚节点vanchor必须在每个时间段内转发δ(vanchor)个分组,但是传感器的能量通常受到限制,当传感器耗尽能量时,无线传感器网络可能无法维持服务质量。这里,假设网络中每个锚节点消耗的用于发送分组后的剩余能量为Ev。文中假设传感器节点的寿命周期为能量耗尽的时间,即Ev≤0的时候[7]。

在无线传感器网络中,当移动汇聚节点是移动的时候,采集的数据可以转发到簇中的锚节点,并等待移动汇聚节点来收集数据。由于移动汇聚节点的距离通常受到限制,即工作人员不可能完整遍历仓库中所有的锚节点,那么可以设置一个常数L,使得工作人员推着装有移动汇聚节点的推车经过的锚节点的距离不大于这个常数[8],即锚节点与移动汇聚节点的距离不超过L。假设员工出发的仓库门口为初始位置,到达的补货或取货地点为终点,那么这条路线上的所有节点,要快速地选出合适的锚节点,使得在有限的距离内的移动汇聚节点可以从锚节点中收集到足够多的数据。

3 启发式-列表搜索算法

当给定无线传感器网络G和常数L时,为了减少节点的能量消耗,锚节点与它下面的任意感知节点之间的跳距被认为是尽可能最小[9]。为了找到所有可能的锚节点,可以使用启发式算法。为了挑选出移动汇聚节点路径到各备用锚节点vanchor的最小跳距离,用式3表示为:

(3)

其中,γ(vanchor)表示最小距离。

对于每个G中的节点,挑选出以移动汇聚节点的移动路线为基础的具有最小距离γ(vanchor)的节点,作为第一个备用的锚节点,它周围的距离小于R的其他感知节点,就以该节点为锚节点,形成第一个簇[10]。将第一个锚节点加入到备用列表M中,同时将该簇中的所有节点删除,接下来重复该步骤,选出第二个备用的锚节点,加入到列表M中。不断重复上述操作,直到所有节点全部被考虑,这样选出的所有的备用锚节点都在列表M中[11]。

在启发式算法的第二步中,用贪婪算法来访问列表M中所有的备用锚节点。因为锚节点负责收集和报告数据到移动汇聚节点,所以具有较高剩余能量的传感器节点被优先考虑。另外,当备用的锚节点vanchor具有较高数量的需要转发分组或最多的剩余能量时,vanchor被认为是最终的锚节点[12]。以上方法确保了能快速找到具有较高剩余能量的传感器节点。遍历备用的锚节点来选择最终的锚节点时,可以根据以下等式:

(4)

当η(vanchor)小于等于0时,只有一种情况,即节点的能量耗尽。这时,将该节点从备用列表M中删除,该节点所在簇的信息不予收集。等待下一轮数据收集时重新选择锚节点。当所有的备用锚节点都被遍历过后,满足条件的(即η(vanchor)大于0的节点)就是最终的锚节点[13]。

启发式-列表搜索算法:

Input:VG,EG,R,L,path//输入所有的节点,节点能量,节点分布的密度,设定锚节点与移动汇聚节点路径的距离常数,移动汇聚节点的路径

Output:anchors //输出所有的锚节点

1.compare all distances between every node and path //比较所有节点与移动路径的距离

2.Select nodes whose distance are less thanL+R//选出与移动路径相距不大于L+R的节点

3.rank the distance from small to lager and formation a sorted listN

//按照距离从小到大排序,形成有序表N

//N中的头节点为备用锚节点,γ(vanchor)表示它与移动路径的距离

5.ifγ(vanchor)>L

6.RemovevanchorfromN//锚节点与移动路径大于L时,从N中删除该锚节点

7.else {pick other nodesvsensorwhose distance withvanchoris lower thanR

//与备用锚节点距离相距小于R的节点作为感知节点

8.formation a cluster with these nodes

//步骤4和7挑选出的感知节点和锚节点形成一个簇

9.Add thevanchortoM//将这个备用锚节点加入至列表M中

10.drop nodes in the cluster from theN} //将簇中的节点从有序表N中删除

11.ifNis not nul Go to step4; //重复上述步骤4,直到选择出所有的备用锚节点

12.whilevanchor∈M//遍历M中所有的备用锚节点

{

//根据剩余能量和转发组数,与移动路径距离,计算备用锚节点的权值

16.ifη(vanchor)≤0 //当且仅当锚节点的能量耗尽

17.then remove thevanchor

//能量耗尽的锚节点所在簇中的节点,会在下一次数据采集时重新规划分簇。

18.else anchor←vanchor//符合条件的即为最后的锚节点

}

19.output all anchor

20.end

4 仿真环境设计及性能评估

本节通过模拟来评估提出的HLSA算法的性能[14]。仿真利用NS-2进行。模拟时,在60 m×100 m场中随机分布300个传感器,其中横向分布的传感器节点为60~240。另外,每个传感器的传输范围R设定为2 m,L设定为1.5 m(L是锚节点和移动汇聚节点的最大距离)。另外,传感器的剩余能量随机设定为40~100。

将WRP与HLSA算法在网络寿命方面进行了比较[15]。在WRP中,为了确定锚节点,v中需要转发的数据包的数量用于网络中每个传感器v的转发负载,假设平均100个数据。

图2为移动接收器收集数据时网络寿命方面的仿真结果。很明显,HLSA算法具有比WRP更高的网络寿命。这是因为HLSA算法在确定锚节点时,会考虑到锚节点的位置和感知节点的剩余能量。

实验仿真参数设置基于IEEE 802.15.4标准,模拟时的参数见表1。对HLSA算法和WRP算法进行了网络寿命的比较,评估性能的指标为生命周期和节点数量。观察不同数量节点的生命周期是否存在优势。

表1 参数设置

图2 仿真结果比较

从图2中可以看出,当节点设置为60时,HLSA算法的生命周期优势最大,每个节点的生命周期差距可以达到4 000 s。随着节点分布数量增加(可认为仓库的面积增大),节点的生命周期优势逐步减小。考虑到节点分布密度,高达60节点横向距离的仓库面积是目前的主流仓库面积,所以可以得出结论,在一般的物流中转站中,数据采集算法采用启发式-列表算法的优势更大。

5 结束语

研究了锚节点的选择,使得移动汇聚节点到锚节点的距离最短,以此来降低数据传输的能量消耗。考虑到传感器节点的数据聚集和工作中节点能量不平衡的问题,以及经常被忽略的空间问题,提出了HLSA算法,在数据聚合和传感器初始能量不平衡的同时延长了数据采集中节点的网络寿命。仿真结果表明,HLSA比WRP算法提供了更长的网络寿命。

猜你喜欢

无线距离能量
《无线互联科技》征稿词(2021)
能量之源
无线追踪3
基于ARM的无线WiFi插排的设计
算距离
诗无邪传递正能量
ADF7021-N在无线寻呼发射系统中的应用
每次失败都会距离成功更近一步
开年就要正能量
爱的距离