原创不易,路过的各位大佬请点个赞
针对AOA,TOA,TDOA,RSS等室内定位、导航的探讨、技术支持、==代码(有偿)==欢迎联系,也可以站内私信,也可以基于其它算法,ML只是一个例子来讲解室内定位
WX: ZB823618313
近年来,随着无线通信、集成电路、传感器以及微电系统等技术的飞速发展和日益成熟,被誉为全球未来三大高科技产业之一的无线传感器网络(WSN,Wireless Sensor Network)引起了全世界范围的广泛关注。随着物联网概念的提出,作为其关键技术的传感器技术成为人们研究核心,随着无线传感器网络的应用逐渐深入到人们生活的方方面面,其核心支撑的节点定位技术也得到不断的改进、推广。
无线传感器网络定位中,存在两类情况:对网络内检测节点的自定位、对未知目标源的盲定位。
节点的自定位:
通过节点自身携带的GPS定位设备等设备获得自身的精确定位,通过自定位系统获得的自身定位的节点称为信标节点也叫做锚节点。
节点的盲定位:
根据信标节点,通过某种定位机制确定未知目标源的位置。节点的盲定位可分为两类:有源定位和无源定位。
有源定位:
网络中监测节点利用有源设备(雷达、激光、声纳等)向被定位目标发射用于定位的各种信号,然后接收被监测目标的返回信号,通过一系列测量、处理得到目标源位置的过程。
优点: 全天候、高精度
缺点: 无隐蔽性、易受电子干扰
无源定位:
网络中监测节点在定位过程中不向被定位目标发射信号(电磁或其他用于定位的信号),监测节点与被监测设备间无协作通讯,监测节点仅通过对目标上发射的电磁信号的搜索、测量、处理而得到目标的位置及参数信息,从而实现定位追踪。
优点: 反侦察、抗干扰、可进行目标识别(弥补有源雷达的不足)
目前主要研究的定位算法为“被动”无源定位。
被动: 监测网络对被监测目标无法进行控制,无法按照自身定位需求添加软硬件支持。
基于无线传感器网络的信号无源定位与跟踪具有如下特点:
无源定位,直接定位的一方不向目标信号发送信号
多站协同,监测节点需在多次测量、空间移动,或多站间有信息交互协作
运算量大,获取目标位置所需计算量高于其他信息的处理
定位精度、系统内参和定位节点的个数及布局相关
基于距离的定位算法通过测量不同节点到目标信号间的距离或角度信息,利用最大似然估计定位法、三角测量定位法、三边测量定位法估计未知目标节点的位置。
常用定位技术:
技术名称 | 定位精度 | LOS/NLOS | 定位信息 | 优点 | 缺点 |
---|---|---|---|---|---|
AOA | 中、高 | LOS | 角度 | 只需要两个接收器。 不需要同步时间 | 需要天线阵列、价格昂贵 |
TOA | 高 | LOS | 距离 | 精度高 | 需要三个接收器、发射源和目标均时间同步 |
TDOA | 高 | LOS | 距离差 | 精度高,仅需要同步发射源的始终 | LOS假设 |
RSS | 低 | both | 信号强度 | 简单、成本低 | 三个节点、精度低 |
核心思想:与TOA类似,在RSSI中,多个基本节点通过三角定位协作定位目标节点(见下图)。然而,不是在锚节点上测量TOA,而是使用RSS进行估计。在这种方法中,接收信号的强度表示信号传播的距离。对于共面情况,假设传输强度和信道(或信号传播的环境)特征已知,需要三个基本节点和三个RSS测量。
RSS定位可以NLOS(非视距)环境下定位、而且成本极低,不需要额外的设备
定位原理:RSS定位法即根据接收信号的强度来实现定位。RSS测量是个关于距离(目标到传感器节点)的衰减函数,因此可以借助TOA的原理进行定位。与TOA不同的是,TOA可以直接得到距离。定位过程中,通过设备测量三个不同参考点的信号强度,依据物理学模型计算出三个距离值,那么采用和TOA类似的几何求解方法,即可以得到定位点。该方法至少通用需要三个基站,才能计算目标的位置,其定位示意图如图所示。
RSS是传感器接收到的平均功率,其中功率来自发射源。通常假设接收功率遵循指数衰减模型,该模型是发射功率、路径损耗常数和源与传感器之间距离的函数。这种定位方案比使用TOA、TDOA或TSOA测量的方案简单,因为不需要源和/或传感器之间的同步。一旦我们能够从RSS测量中获得距离,就可以像TOA的情况一样,使用至少三个接收机来确定源位置。
RSS测量模型制定如下。假设源发射功率为 P t P_t Pt,在没有干扰的情况下,第 i i i个传感器接收到的平均功率为 P i P_i Pi,模型为
P i = K i P t d i − α = K i P 0 ∣ ∣ x − x i ∣ ∣ − α , i = 1 , 2 , ⋯ , N P_i=K_iP_td_i^{-\alpha}=K_iP_0||\mathbf{x}-\mathbf{x}_i||^{-\alpha},~i=1,2,\cdots,N Pi=KiPtdi−α=KiP0∣∣x−xi∣∣−α, i=1,2,⋯,N
其中 K i K_i Ki是影响接收功率的所有其他因素,包括天线高度和天线增益,而 α \alpha α是路径损耗指数。基于不同的信号传播环境, α \alpha α从2到5。一般在无遮挡空间(free space)中, α = 2 \alpha=2 α=2。
现场试验表明,RSS扰动呈对数正态分布。因此,RSS对数正态路径损失模型可表示为
r R S S , i = P 0 − 10 α log d i d 0 + n i , i = 1 , 2 , ⋯ , N r_{RSS,i}=P_0 - 10\alpha\log\frac{d_i}{d_0}+n_i,~i=1,2,\cdots,N rRSS,i=P0−10αlogd0di+ni, i=1,2,⋯,N
其中 d i = ( x − x i ) 2 + ( y − y i ) 2 d_i=\sqrt{(x-x_i)^2+(y-y_i)^2} di=(x−xi)2+(y−yi)2
x = [ x , y ] ′ \mathbf{x}=[x,y]' x=[x,y]′为发射源的位置,即被定位的参数, y i = [ x i , y i ] ′ \mathbf{y}_i=[x_i,y_i]' yi=[xi,yi]′为第i个锚节点的位置,假设存在N个锚节点构成传感器网络,则 i = 1 , 2 , ⋯ , N i=1,2,\cdots,N i=1,2,⋯,N。 n i n_i ni 为测量噪声,来源于RSS的干扰。
主要算法: 基于AOA技术的室内定位可以分为两大类方法:参数估计算法和滤波方法。
1-参数估计算法主要解决非移动目标(如传感器节点、发射源等)的定位问题,主要包括:
ML最大似然估计
LS最小二乘估计
WLS加权最小二乘估计
NLS非线性最小二乘估计
凸规划
**注意:**这类方法也可以解决移动目标的室内外定位问题。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2- 滤波方法主要解决移动目标(如智能小车、移动机器人、移动终端等)的室内外定位问题,主要包括:
扩展卡尔曼滤波EKF
无迹卡尔曼滤波UKF
容积卡尔曼滤波CKF
求积卡尔曼滤波QKF
中心差分卡尔曼滤波CDKF
Divided difference filter DDF
高斯混合滤波GSF
强跟踪滤波STF
粒子滤波PF
… …
考虑N个传感器网络,RSS对数正太阴影衰减(路径衰减)模型可表示为
r R S S , i = P 0 − 10 α log d i d 0 + n i , i = 1 , 2 , ⋯ , N r_{RSS,i}=P_0 - 10\alpha\log\frac{d_i}{d_0}+n_i,~i=1,2,\cdots,N rRSS,i=P0−10αlogd0di+ni, i=1,2,⋯,N
其中 d i = ( x − x i ) 2 + ( y − y i ) 2 d_i=\sqrt{(x-x_i)^2+(y-y_i)^2} di=(x−xi)2+(y−yi)2
x = [ x , y ] ′ \mathbf{x}=[x,y]' x=[x,y]′为发射源的位置,即被定位的参数, y i = [ x i , y i ] ′ \mathbf{y}_i=[x_i,y_i]' yi=[xi,yi]′为第i个锚节点的位置,假设存在N个锚节点构成传感器网络,则 i = 1 , 2 , ⋯ , N i=1,2,\cdots,N i=1,2,⋯,N。 n i n_i ni 为测量噪声,来源于RSS的干扰。
基于N个锚节点的RSS测量,构造似然函数:
P ( r R S S ∣ x ) = ∏ i = 1 N 1 2 π σ i e − ( r R S S , i − h ( x ) ) 2 2 σ i 2 P(\mathbf{r_{RSS}}|\mathbf{x})=\prod_{i=1}^N\frac{1}{\sqrt{2\pi}\sigma_i}e^{-\frac{(r_{RSS,i}-h(\mathbf{x}))^2}{2\sigma_i^2}} P(rRSS∣x)=i=1∏N2πσi1e−2σi2(rRSS,i−h(x))2
其中
h ( x ) = P 0 − 10 α log ∣ ∣ x − x i ∣ ∣ d 0 h(\mathbf{x})=P_0 - 10\alpha\log\frac{||\mathbf{x}-\mathbf{x}_i||}{d_0} h(x)=P0−10αlogd0∣∣x−xi∣∣
取对数、得到对数似然函数:
L ( x ) = c + ∑ i = 1 N − 1 2 σ i 2 ( r R S S , i − h ( x ) ) 2 L(\mathbf{x})=c+ \sum_{i=1}^N-\frac{1}{2\sigma_i^2}(r_{RSS,i}-h(\mathbf{x}))^2 L(x)=c+i=1∑N−2σi21(rRSS,i−h(x))2
其中 c c c为常数。
则发射源的最大似然估计为:
x ^ = arg max L ( x ) = arg min ∑ i = 1 N 1 2 σ i 2 ( r R S S , i − h ( x ) ) 2 \begin{aligned} \hat{\mathbf{x}}&=\arg \max L(\mathbf{x})\\ &=\arg \min \sum_{i=1}^N\frac{1}{2\sigma_i^2}(r_{RSS,i}-h(\mathbf{x}))^2 \end{aligned} x^=argmaxL(x)=argmini=1∑N2σi21(rRSS,i−h(x))2
考虑如下传感器网络拓扑结构,一个目标节点在传感器网络节点的凸包外面。
定位结果:
TDOA定位结果:
4.6807
-0.4673
随着RSS测量噪声标准差增大,计算定位精度
RSS定位结果:
Target_position_ML =
4.6807 3.3259 3.3647 4.5194 2.8333 2.4684 8.5720 2.5546 7.5276
-0.4673 0.2277 -0.8136 -0.3219 1.1827 0.7298 -0.5827 0.3165 1.4475
随着传感器节点增多,计算定位精度
RSS定位结果:
Target_position_ML =
0 0 17.8782 3.8167 1.8567 8.8670 1.2396 1.7261
0 0 3.4926 -2.1692 -0.4536 -0.5194 -0.6874 -0.1439
由于目标节点在传感器网络的凸包外面,因此定位精度相对较低
反之,如果目标节点在传感器凸包内,则定位精度会大幅提高。
原创不易,路过的各位大佬请点个赞