论文部分内容阅读
摘要:无线传感器网络是对信息获取和处理的技术,通过通信技术使大量微小节点组成自组织网络,传感器网络包括数据的采集、传输、融合分析等。许多应用场所需要精确定位,使得无线传感器网络定位技术得到广泛应用和发展。本文通过对几种典型的定位算法研究,分析传感器网络节点定位算法的原理,得出的几种节点定位算法,并进行比较分析。
关键词:无线传感器网络;全球定位;位置信息
【分类号】:TF046.6
1. 引言
传感器网络是由大量的随机分布的集成有传感器、数据处理单元和通信模块的微小节点通过自组织(Ad Hoc)的方式构成的网络,其主要功能是有效协作感知、采集处理和发布网络覆盖的区域中感知对象的信息,并发布给观察者。在通信方式上,虽然可以采用有线、无线、红外和光等其他形式,相比而言,一般认为短距离的无线低功率通信技术最适合传感器网络使用,即无线传感器网络。
无线传感器网络是一种无其他基础设施的无线网络,具有十分广阔的应用前景,在军事国防、工农业、城市管理、生物医疗、环境监测、抢险救灾、危险区域远程控制等领域,有着重要的科研价值和实用价值。
2. 节点定位算法依据
2.1节点定位研究方法
随着微小的传感器和无线通信的发展应用,通过安装大密度的分布的传感器,来进行准确定位、环境监视、攻击目标、空间探测、交通管理等,定位技术对于很多领域发挥着至关重要的作用。
传感器网络中的定位机制与算法包括两部分:节点自身定位和外部目标定位。节点自身定位是后者的基础,目标定位可利用传统的定位机制和算法,如接收信号的强弱、时间和角度等,以及典型的二角形算法。在节点自身定位方而言,DSN(dynamics sensor network)和SCADDS(scalable coordination architecture for deeply distributed and dynamic system)等军用项目,一般采用GPS(global posi-boning system)技术。由于无线传感器网络的节点自组织分布,且数量巨大,在每个节点中配置GPS接收器或者进行人工放置节点的方法都不可行。研究传感器节点定位技术的思路:传感器网络中的某些节点(sink节点)可以找到自己的精确位置,参照此基准,利用局部定位算法,其他节点也能正确定位。
有许多节点定位方法,由于各自的网络和设备能力的不同而不同,要考虑的因素有硬件设备,信号传播模式,定时和能源要求,网络结构(同构的或异构的),环境特性(室内还是室外),节点和beacon密度,设备的时间同步,误差要求,通信费用,设备灵活性等。
2.2节点定位算法的原理
在三维空间中,知道了1个点到4个已知参考点的距离,就可以确定该点的坐标[1]。在传感器网络中,坐标系是二维空间,只要知道了1个节点到3个参考节点的距离就可以确定节点的位置。假设3个参考点的坐标分别为(x1,y1),(x2,y2),(x3,y3),待确定位置节点的坐标是(xi,yj),该节点到3个参考节点的距离分别是hl,h2,h3根据二维空间距离计算公式,可以获得一个非线性方程组,采用线性化方法来求解,可以得到待定位置节点的坐标(xi,yj)。在节点定位算法中,按照上述方程求解过程,可以得到待定位置节点的坐标,从而达到定位的目的。
3. 节点定位算法
根据定位算法的原理,已经提出传感器网络的节点定位算法主要有DV-hop算法、位置分发算法、DV-distance算法等。
3.1 DV—hop算法
DV—hop算法是Niculescu团队等人,为了避免对节点间距离的直接测量而提出的一种算法[1]。
3.1.1 DV-hop算法的思路
该算法基本思路是将待定位节点到参考节点之间的距离,用网络中节点的平均每跳距离和节点之间的跳数乘积来表示,使用三角定位来获得节点的位置信息。即使待定位节点通信范围内的参考节点数量不足够多,采用上述DV—hop算法可以獲得到通信范围外多个参考节点的估计距离,通过大量的信息获得该节点的位置。在网络平均连接度为8,参考节点比例为5%情况下时,算法的定位误差大约是节点射频通信距离的1/3左右。
3.1.2 DV-hop算法的步骤
在我们开始设置定位算法之前,网络中除参考节点外,其他的节点都没有位置信息。网络内的节点需要获得它们到每个参考节点的跳数,将跳数与平均每跳距离相乘,就可以获得该节点到每个参考节点的估计距离[2]。将计算所得距离与参考节点的位置信息一起,按照节点定位算法的基本原理,进行三角计算,就可以获得该节点的位置信息。
在我们开始设置算法时,每个参考节点都发出一个包括自己位置信息、地址和跳数值为0的位置信息包,它们周围所有跳数为1的邻居节点都收到这样的信息,将参考节点位置信息和跳数记录下来,并将收到信息包的跳数+1,再向自己的邻居节点广播。由于广播是全向的,一个参考节点发出的广播信息可能会多次到达一个节点,这样就会导致了节点可能会收到很多多余的广播信息。为了防此广播信息的无限循环,只有最新收到的信息才被重新广播。确定收到的信息是不是最新,指该节点已经收到某个参考节点的广播,且最近收到的信息包中的跳数大于或等于存储器中存储的到该参考节点的跳数。如果收到的信息是最新的信息,就会引起一个新的广播,而旧的信息则被丢弃,而不会进行广播。
一个参考节点从其他参考位置节点收到跳数信息,它就可以估计平均每跳距离,并向整个网络广播该信息。参考节点i的平均每跳距离可以按如下步骤的计算。
(一)求出参考节点i到每个单位节点的距离;
(二)在求出参考节点i到每个单位节点的跳数,两者相除,就得到了参考节点i的平均每跳距离[3]。
关键词:无线传感器网络;全球定位;位置信息
【分类号】:TF046.6
1. 引言
传感器网络是由大量的随机分布的集成有传感器、数据处理单元和通信模块的微小节点通过自组织(Ad Hoc)的方式构成的网络,其主要功能是有效协作感知、采集处理和发布网络覆盖的区域中感知对象的信息,并发布给观察者。在通信方式上,虽然可以采用有线、无线、红外和光等其他形式,相比而言,一般认为短距离的无线低功率通信技术最适合传感器网络使用,即无线传感器网络。
无线传感器网络是一种无其他基础设施的无线网络,具有十分广阔的应用前景,在军事国防、工农业、城市管理、生物医疗、环境监测、抢险救灾、危险区域远程控制等领域,有着重要的科研价值和实用价值。
2. 节点定位算法依据
2.1节点定位研究方法
随着微小的传感器和无线通信的发展应用,通过安装大密度的分布的传感器,来进行准确定位、环境监视、攻击目标、空间探测、交通管理等,定位技术对于很多领域发挥着至关重要的作用。
传感器网络中的定位机制与算法包括两部分:节点自身定位和外部目标定位。节点自身定位是后者的基础,目标定位可利用传统的定位机制和算法,如接收信号的强弱、时间和角度等,以及典型的二角形算法。在节点自身定位方而言,DSN(dynamics sensor network)和SCADDS(scalable coordination architecture for deeply distributed and dynamic system)等军用项目,一般采用GPS(global posi-boning system)技术。由于无线传感器网络的节点自组织分布,且数量巨大,在每个节点中配置GPS接收器或者进行人工放置节点的方法都不可行。研究传感器节点定位技术的思路:传感器网络中的某些节点(sink节点)可以找到自己的精确位置,参照此基准,利用局部定位算法,其他节点也能正确定位。
有许多节点定位方法,由于各自的网络和设备能力的不同而不同,要考虑的因素有硬件设备,信号传播模式,定时和能源要求,网络结构(同构的或异构的),环境特性(室内还是室外),节点和beacon密度,设备的时间同步,误差要求,通信费用,设备灵活性等。
2.2节点定位算法的原理
在三维空间中,知道了1个点到4个已知参考点的距离,就可以确定该点的坐标[1]。在传感器网络中,坐标系是二维空间,只要知道了1个节点到3个参考节点的距离就可以确定节点的位置。假设3个参考点的坐标分别为(x1,y1),(x2,y2),(x3,y3),待确定位置节点的坐标是(xi,yj),该节点到3个参考节点的距离分别是hl,h2,h3根据二维空间距离计算公式,可以获得一个非线性方程组,采用线性化方法来求解,可以得到待定位置节点的坐标(xi,yj)。在节点定位算法中,按照上述方程求解过程,可以得到待定位置节点的坐标,从而达到定位的目的。
3. 节点定位算法
根据定位算法的原理,已经提出传感器网络的节点定位算法主要有DV-hop算法、位置分发算法、DV-distance算法等。
3.1 DV—hop算法
DV—hop算法是Niculescu团队等人,为了避免对节点间距离的直接测量而提出的一种算法[1]。
3.1.1 DV-hop算法的思路
该算法基本思路是将待定位节点到参考节点之间的距离,用网络中节点的平均每跳距离和节点之间的跳数乘积来表示,使用三角定位来获得节点的位置信息。即使待定位节点通信范围内的参考节点数量不足够多,采用上述DV—hop算法可以獲得到通信范围外多个参考节点的估计距离,通过大量的信息获得该节点的位置。在网络平均连接度为8,参考节点比例为5%情况下时,算法的定位误差大约是节点射频通信距离的1/3左右。
3.1.2 DV-hop算法的步骤
在我们开始设置定位算法之前,网络中除参考节点外,其他的节点都没有位置信息。网络内的节点需要获得它们到每个参考节点的跳数,将跳数与平均每跳距离相乘,就可以获得该节点到每个参考节点的估计距离[2]。将计算所得距离与参考节点的位置信息一起,按照节点定位算法的基本原理,进行三角计算,就可以获得该节点的位置信息。
在我们开始设置算法时,每个参考节点都发出一个包括自己位置信息、地址和跳数值为0的位置信息包,它们周围所有跳数为1的邻居节点都收到这样的信息,将参考节点位置信息和跳数记录下来,并将收到信息包的跳数+1,再向自己的邻居节点广播。由于广播是全向的,一个参考节点发出的广播信息可能会多次到达一个节点,这样就会导致了节点可能会收到很多多余的广播信息。为了防此广播信息的无限循环,只有最新收到的信息才被重新广播。确定收到的信息是不是最新,指该节点已经收到某个参考节点的广播,且最近收到的信息包中的跳数大于或等于存储器中存储的到该参考节点的跳数。如果收到的信息是最新的信息,就会引起一个新的广播,而旧的信息则被丢弃,而不会进行广播。
一个参考节点从其他参考位置节点收到跳数信息,它就可以估计平均每跳距离,并向整个网络广播该信息。参考节点i的平均每跳距离可以按如下步骤的计算。
(一)求出参考节点i到每个单位节点的距离;
(二)在求出参考节点i到每个单位节点的跳数,两者相除,就得到了参考节点i的平均每跳距离[3]。