基于超声波六元阵列TDOA测距的WSN定位系统设计与实现*

2014-09-06 10:47赵晴晴段渭军傅贤锋
传感技术学报 2014年9期
关键词:共线测距超声波

赵晴晴,段渭军,傅贤锋

(西北工业大学电子信息学院,西安 710072)



基于超声波六元阵列TDOA测距的WSN定位系统设计与实现*

赵晴晴,段渭军*,傅贤锋

(西北工业大学电子信息学院,西安 710072)

基于超声波测距的定位技术以其精度高、范围广和性能稳定等优点,在无线传感器网络中广泛应用。为了实现较大范围的高精度定位,采用TDOA的测距技术设计了满足远距离测量和二维全向测距的六元超声波传感器阵列系统,实现了无锚节点的无线传感器网络中节点的高精度定位和实时监控。测距实验结果表明,该系统的测量距离最远为16 m,平均测距误差为0.14 %;定位实验结果表明,10个节点可以在3 min内完成全部组网和定位,平均定位误差约为23.74 cm。

无线传感器网络;定位系统;超声波六元阵;TDOA测距;无锚节点定位

无线传感器网络WSN(Wireless Sensor Network)是近年来备受人们关注的前沿热点研究领域,无论是在军事侦察、工业控制,还是地理环境监测等应用场合,节点的位置信息至关重要,因为不含位置信息的传感器感知数据往往是没有意义的[1]。然而为了减小节点部署和校准的成本,WSN应用多采取随机部署的机制,致使节点无法事先确定自身的位置,需要其部署后进行自身定位[2]。

现有的定位技术可以根据定位过程中是否需要使用已知位置信息的锚节点,分为锚节点定位和无锚节点定位[3]。随着WSN向节点数量多、硬件成本低且体积小的方向发展,基于锚节点的定位技术在成本、体积、功耗和部署环境等方面越来越受限,而无锚节点定位技术的研究变得越来越重要[4]。然而,目前无锚节点定位技术的定位精度相对较低,需要进一步研究以提高其定位精度。

无锚节点定位技术多采用基于超声波TDOA测距的节点定位方法。超声波测距的优点是指向性好,不受光线、电磁波、烟雾和灰尘的影响,缺点是具有一定的方向性,单个超声波传感器无法同时为周围的节点提供测距服务。TDOA测距系统中,发射节点同时发射射频信号和超声波信号,接收节点根据此两种信号的到达时间差并已知二者的传播速度,计算出两节点之间的距离[5-6]。虽然TDOA测距技术需要额外的硬件支持,在一定程度上增加了节点的硬件成本和系统功耗,但该测距技术不需要定位网络进行全局时间同步,能够大大降低实现时间精确同步带来的硬件成本,且减少了因时间同步可能产生的测量误差,使测距精度保持在厘米级。

在综合考虑节点的定位精度、硬件实现、算法复杂度以及扩展性等指标的基础上,本文研究了基于超声波TDOA测距的无锚节点定位算法,采用六组超声波传感器阵列,设计了一种满足远距离测量和高精度定位的超声波传感器六元阵列定位系统,解决了测距节点超声波信号二维全向发送与接收的问题,实现了无锚节点的WSN中节点的高精度定位和实时监控显示。

1 系统硬件设计

1.1 整体架构

定位系统由定位网络和监控中心两部分组成,如图1所示。定位网络是由随机部署的待定位节点组成,首先基于共线度信息选取一定数量的参考节点建立相对坐标系,然后待定位节点通过TDOA测距技术测量其与参考节点间的距离,再根据无锚节点的定位算法计算出自身在相对坐标系中的相对位置,最后将自身的位置信息通过射频信号发送至Sink节点。监控中心的Sink节点负责收集定位网络中节点的网络地址、节点间的距离以及节点坐标等信息,并通过UART串口将节点信息上传至显示终端,最终构建并显示出全网节点的相对坐标图。

图1 系统示意图

图2 系统实物图

传感器节点在不同应用中其结构也不尽相同。考虑到网络节点的功能需求以及构成节点的模块众多,因此本文将处理器模块、RF模块、传感器模块、控制模块和信号检测模块布置在一块电路板上称为主控板;另一电路板则放置超声波阵列收发模块,称为超声波阵列板,这样设计的优点就是减少了模块间的干扰,增加了系统的可扩展性。系统实物如图2所示。

1.2 处理器模块

处理器模块主要由微控制器、通信接口以及可编程阈值比较电路组成。在综合考虑了主控制器在网络节点中的主要任务,处理能力、体积、功耗、片上资源和成本等因素后,选用NXP公司推出的第3代无线SOC模块——JN5148作为节点主控制器[7]。

由于超声波的衰减特性以及阈值检测法的运算量小、实时性好等特点,本文采用阈值可变的比较电路检测法处理接收信号,电路原理如图3所示。

图3 阈值比较电路原理图

1.3 超声波收发模块

超声传感器的方向角一般为(60±5)°[8],单个超声波传感器无法同时为周围的节点提供测距服务,因此本文创新设计了一组超声波传感器六元阵列,实现了测距节点超声波信号的二维全向发送与接收。

超声波阵列收发模块的发射电路负责驱动超声波传感器发射超声波信号,接收电路则对接收的信号进行滤波和放大处理。

①发射电路

如图4所示,DC-DC电压转换器(MAX864)将+5 V电压转换至±10 V输出,为运放(LM8261)提供对称的双电源;由主控芯片产生的40 kHz的方波信号分别连接到六路LM8261的输入端,通过软件编程可控制每一路PWM信号的通断,电路原理如图5所示。

图4 升压模块原理图

图5 channel_1发射电路原理图

②接收电路

接收模块采用二级放大电路将接收到的信号放大后输送到阈值可变比较电路模块,REV_EN1~REV_EN6为接收使能信号,分别用于控制六路接收电路的通断,channel_1的电路原理如图6所示。

图6 超声波接收电路原理图(channel_1)

1.4 控制模块

控制模块主要负责超声波阵列收发模块中相关信号的控制,如超声波信号发送使能和接收使能以及芯片的片选信号等。

如图7所示,只需3个主控制器I/O口以及2片级联的74HC595即可实现对电路中所有使能信号的控制。

图7 控制电路原理图

1.5 电源模块

JN5148的工作电压为2.3 V~3.6 V,而系统中的模拟电路和数字电路均采用5.0 V电源,因此设计了电源转换电路满足供电需求,如图8所示,VCC的取值范围为6 V~12 V。

图8 电压转换原理图

2 软件设计

2.1 共线度定义

基于共线度DC(Degree of Collinearity)的无锚节点定位算法[9]的特征是以网络中部分节点为参考节点,建立整个网络的相对坐标系统。本章算法中的共线度定义为3个参加节点为一组,由它们组成的三角形的最小内角的余弦值,即三角形3个内角余弦值的最大值[10-11],如图9所示。3个参考节点组成△ABC,根据余弦定理可得:

(1)

(2)

(3)

参考节点的共线度为:

DC=max{cos(θa),cos(θb),cos(θc)}

(4)

图9 共线度定义与取值范围

2.2 定位算法描述

因为无锚节点定位中无预先部署锚节点,所以算法首先初始化一个参考坐标系,然后其余待定位节点基于该参考坐标系实现自身坐标的相对定位。具体过程是:1)由Sink节点通过运行随机定时器选取第1个参考节点R1(0,0);2)根据测距阈值在第1个参考节点的邻居节点中确定第2个参考节点R2,根据R1与R2之间的测距距离值d12确定R2的坐标为(d12,0);3)假设R1与R2共有t个邻居节点,根据式(4)计算节点与R1、R2组成的节点组的共线度DC1,DC2,…,DCt,从中选择共线度最小的节点作为第3个参考节点R3,其坐标由式(5)和式(6)计算得到:

(5)

(6)

式中,d13为R1与R3的距离,d12为R1与R2的距离,d23为R2与R3的距离。4)由3个参考节点发射超声波提供测距服务,待定位节点接收超声波并测量与该参考节点的距离;5)待定位节点基于最小二乘法进行坐标估计。假设待定位节点ni坐标为(xi,yi),待定位节点到参考节点的测距值分别为d1i、d2i、d3i,且参考节点坐标为R1(x1,y1),R2(x2,y2),R3(x3,y3),则根据最小二乘法可求解待定位节点的坐标:

(7)

其中,

(8)

(9)

(10)

节点的定位算法流程如图10所示。

图10 节点定位算法流程图

图11 共线度无关(α=1 %)的定位效果

2.3 算法仿真与分析

为了验证算法的有效性,首先在OMNeT++[12]平台下对算法进行了仿真实验。定义节点间的测距范围为15 m(令L=15 m),在20 m×20 m的场景中随机部署10个节点,阈值d=2 L/3,节点的相对测距误差α取1 %或2 %。本文分别在共线度无关和基于共线度情况下进行了仿真实验,并对两种算法进行了性能对比。

算法定位效果。共线度无关的定位效果和基于共线度的定位效果分别如图11和图12所示(N=10,α=1 %)。

图12 基于共线度(α=1 %)的定位效果

性能对比。α=1 %时,针对不同的网络规模N,分别计算共线度无关和基于共线度的节点估计位置与真实节点位置的平均定位误差。仿真结果如图13所示,在共线度无关的情况下,节点数为8时,由于节点部署过于稀疏,分布不均匀,同时在参考节点随机选取的情况下,共线度较大,网络节点的平均定位误差较大;随着网络节点密度的增大,节点分布更均匀,整个网络的平均定位误差急剧减小。而在基于共线度的情况下由于在参考节点的选取阶段引入了共线度,使得平均定位误差相比于共线度无关的情况下大幅减小,同时定位性能也更稳定。

图13 不同节点密度的平均定位误差

2.4 监控系统设计

定位监控显示系统通过串口接收Sink节点上传的节点的相关信息,并实时地构建定位网络的网络拓扑和全网节点的相对坐标系。监控显示系统的开发工具为python2.7+PyQt4+Eric4,其中,Eric4是一个用PyQt4和QScintilla2开发的python集成开发环境(IDE),适合开发图形界面的python应用程序。

监控显示系统的实现如图14所示,拓扑显示区域负责构建全网节点的相对坐标系以及节点定位信息的显示,消息文本显示区域负责显示Sink节点上传的信息和监控显示系统自身的运行信息。为了便于操作串口,监控显示系统还具有串口设置功能,包括串口号和波特率的设置,其他设置默认为无奇偶校验位,停止位为1,数据位为8。

图14 定位监控显示系统

3 实验结果及分析

为了弥补环境温度变化对超声波测距精度的影响,本文利用温度传感器采集环境温度对超声波的传播速度进行补偿[13]:

Vu=331.5+0.607t(m/s)

(11)

其中Vu为补偿后的速度,t为环境温度(℃);对于软件延时和同步精度差等误差,则利用参量补偿的方式来减小误差。

首先对超声波节点进行TDOA测距实验以验证其测距精度。实验中,节点从1 m处开始测距并逐渐增大距离,每隔1 m测量一组,每组测量15次。实验结果表明,最大测量距离为16 m,平均测距误差2.14 cm,最小误差近似为0,最大误差为35 cm,相对测距误差范围为0 %到2.333 %,平均相对测距误差约为0.14 %。

网络节点定位实验在体育馆内进行,将10个节点随机布置在20 m× 20 m的范围内;在3 min内全部组网测距并完成自身定位,PC端通过Sink节点上传的节点位置信息实时的显示网络拓扑结构及全网的相对坐标。实验结果如图15所示。

图15 节点定位实验结果

为了更直观的显示定位效果,本文将系统定位实验的节点坐标和实际的节点坐标进行了对比,对比结果如图16所示。

实验结果显示,样本数据的平均定位误差是23.74 cm,最大定位误差是39.45 cm,最小定位误差约为11 cm,定位精度较高。

图16 定位效果对比图

4 总结

本文首先研究设计并实现了基于超声波阵列测距的网络节点,基于该节点,从减小测距误差、改进定位算法等方面提高系统定位精度,并最终进行系统实现。测距实验结果表明,该系统的测距精度比较高,测量距离最远为16 m,平均测距误差为0.14 %;定位实验结果表明,10个节点可以在3 min内组网测距并全部完成自身定位,平均定位误差大约为23.74 cm。

[1] 朱剑,赵海,徐永强,等. 无线传感器网络中的定位模型[J]. 软件学报,2011,22(7):1612-1625.

[2]黄洁,王福豹,段渭军. WSN节点超声波测距技术研究[J]. 电子设计工程,2013. 21(6):120-122.

[3]Cui Xunxue,Shan Zhiguan,Liu Jianjun. Distributed Localization for Anchor-Free Sensor network[J]. Journal of System Engineering and Electronics,2008,19(3):405-418.

[4]崔逊学,刘建军,樊秀梅. 传感器网络中一种分布式无锚节点定位算法[J]. 计算机研究与发展,2009,46(3):425-433.

[5]赵晴晴,黄亮,傅贤锋,等. 基于超声波六元阵列测距的WSN节点定位技术研究[J]. 传感技术学报,2014. 27(3):368-372.

[6]赵海,张宽,朱剑,等. 基于TDOA的超声波测距误差分析与改进[J]. 东北大学学报:自然科学版,2011(6):802-805.

[7]陈真清. 基于JN5148的WSN平台设计及节能研究[D]. 大连:大连理工大学,2010.

[8]Tikanmki A,Mkel T,Pietikinen A,et al. Mult-iRobot System for Exploration in an Outdoor Environment[J]. Robotics and Applications and Telematics,2007,9(1):563-567.

[9]吴凌飞,孟庆虎,梁华为. 一种基于共线度的无线传感器网络定位算法[J]. 传感技术学报,2009,22(5):722-727.

[10]孟文超. 无线传感器网络定位系统研究及设计[D]. 杭州:浙江工业大学,2011.

[11]樊小翔. 基于移动锚节点的节点自适应定位研究[D]. 西安:西北工业大学,2009.

[12]朱晓姝. OMNet++仿真工具的研究与应用[J]. 大连工业大学学报,2010. 29(1):62-65.

[13]苏炜,龚壁建,潘笑. 超声波测距误差分析[J]. 传感器技术,2004(6):8-11.

赵晴晴(1989-),女,山东德州人,硕士生,主要研究方向为无线传感器网络,zhaoqingqing0413@163.com;

段渭军(1962-),男,陕西渭南人,副教授,硕士生导师,主要研究方向为无线传感器网络、信号处理,duanwj@nwpu.edu.cn。

TheDesignandImplementationofWSNLocalizationSystemBasedonSix-ElementArrayofUltrasonicTDOARanging*

ZHAOQingqing,DUANWeijun*,FUXianfeng

(School of Electronics and Information,Northwestern Polytechnical University,Xi’an 710072,China)

For the high accuracy,wide range and stable performance,the ultrasonic positioning technology is becoming an important research point in wireless sensor networks. This paper presents a six-element array ultrasonic sensor system which meets long distance measurements and 2D omnidirectional ranging based on TDOA technology. It also implements high-precision positioning and real-time monitoring in a anchor-free WSN. The ranging experiment result shows that the furthest distance measurement is 16 meters and the average distance measurement error is 0.14 %;The positioning experiment result shows that 10 nodes can complete networking and positioning in 3 min,the average positioning error is 23.74 cm.

wireless sensor networks;localization system;six-element array of ultrasonic;TDOA;anchor-free;localization

项目来源:西安市科技计划项目(CX1255①)

2014-05-28修改日期:2014-07-30

10.3969/j.issn.1004-1699.2014.09.017

TP393

:A

:1004-1699(2014)09-1247-06

猜你喜欢
共线测距超声波
向量的共线
平面几何中三点共线的常见解法
共线向量题型例析
类星体的精准测距
蝙蝠的超声波
基于Niosll高精度超声波流量计的研究
浅谈超声波测距
蝙蝠的超声波
超声波流量计的研究
基于PSOC超声测距系统设计