UWB定位算法介绍

news2024/11/26 5:25:09

典型的无线定位方法主要有四种:

1.基于信号到达时间(TOA);

2.基于信号到达时间差(TDOA);

3.基于信号到达角度(AOA)

4.基于接信号强度(RSSI)

各自有着不同的优势和应用范围。

定位时一分为两步,第一步:测量时间、角度、信号强度;

第二步:结合各个节点的几何位置或者信号强度指纹库计算或匹配标签节点的相对位置。

基于信号到达时间的定位方法TOA估计法

TOA定位的原理是根据待定位节点到参考基站的时延估计,从而获得参考点到定位点之间的距离。TOA 的定位方法具有其他定位方法不能超越的优势其在接收端能够充分利用超宽带信号时间分辨率高的特点检测出信号的时延从而估计出待定位节点到参考基站的距离,再根据基本的UWB定位算法就可以计算出待定位节点的坐标。TOA 定位在三维空间的定位模型为球形模型,至少需要四个基站,根据几何知识,四个基站不能在同一平面上。定位精度与基站间精确的时钟同步也有密切的关系。在加上高斯白噪声环境中,方差估计的下限可利用Cramer-Rao下限得出下面的公式(1):
在这里插入图片描述

式中,SNR表示信噪比;β是信号的有效带宽。设电磁波在空气中传播的速度为c,t表示发送信号从参考基站传播到定位点所用的时间,那么ct 则表示两者的距离。由几何模型可知,待定位点一定位于以参考基站为圆心,基站与待定位点的距离为半径的三个圆的交点上。所以TOA 定位也叫圆周定位,如图下图所示。

在这里插入图片描述

在三维的定位环境中,可以根据式(2)出定位节点的坐标:
在这里插入图片描述

式中,(Xk,Yk,Zk是已知的参考基站的坐点;(x,y,z) 是需要定位的节点坐标;D是待定位节点到第个参考基站的距离值。

按照移动台是否与参考基站有时钟同步关系,TOA的测距方式可以分为两种:单程测距(One Way Ranging,OWR)和双程测距(Two Way Ranging,TWR)。

(1)单程测距方式

如果待定位节点与参考基站间有着共同的时钟,那么我们采用单程测距来计算两者之间的距离值。如图下图所示,假设节点A在时刻 T0将包含时间标识的信息包传递给接收节点 B,接收节点在T1时刻收到该信号,则两个节点的距离为c(T1-T0),其中c为电磁波的传播速度。

在这里插入图片描述

(2)双程测距方式

如果参考基站与待定位节点间没有共同的时钟,那么我们使用双程测距来完成,利用收发双方往返的时间差来求解距离。如图下所示,发射端A在T0时刻发射超宽带信号,在T1时刻接收到该信号。由此可以计算出脉冲信号在两个模块之间的飞行时间,从而确定飞行距离d,见式(3):
在这里插入图片描述

要获得良好的定位精度,必须实现定位节点与参考基站间完全的时间同步其作用就是使收发双方的时间步调相同。但在实际中,由于存在多路径环境的影响,信号在传输的过程中存在噪声的干扰,导致它很难实现待定位点与参考基站之间严格的时间同步,往往存在随机时延。相交的往往不是一个点,而是一个区域,需要采用辅助的定位算法来进行目标位置的计算。这样就使得我们对高精度时间获取非常昂贵,即使非常微小的时间差值都可能会导致百米的距离误差。虽然双程测距能够避免待定位节点和参考基站之间的时间差值,但是信号需要在定位点和参考基站之间往返两次,这就累加了信号传播过程中的误差,降低了定位的精度。所以,基于TOA 的定位方法在实际当中并不经常使用。
在这里插入图片描述

基于信号到达时间差的定位方法TDOA估计法

基于时间差的定位方法不需要参考基站与定位点的时间同步,仅要求参考基站之间严格的时间同步即可,定位原理如下图所示。这样很容易做到,因为只要接入到同一个网络中就能保证参考基站间的时钟的同步,相对于TOA的定位技术,TDOA定位技术更容易实现。在实际的应用当中,往往使用三个以上的参考基站来进行超宽带的定位,这样可以利用TDOA值得到的冗余信息来提高定位的准确度,降低定位过程中的误差。
在这里插入图片描述

TDOA定位方法也叫双曲线测距法,这种方法的基本原理是:不同的参考基站在不同的时刻收到待定位点发射的信号,根据如上 TOA 测量方式获得TOA 值。选取某一个参考基站作为基准,用其他各个参考基站的 TOA值减去该基准基站的TOA 值,得到一系列的时间差,即为TDOA 值。待定位点一定处于以两个参考基站为焦点的双曲线上,联立双曲线方程组即可得到目标节点。

图中,BS1,BS2,BS3为三个参考基站,BS1为基准基站,假设电磁波信号到达三个参考基站的时间分别为t1,t2,t3,Ri1待定位节点第i个参考基站与到基准参考基站间的距离差值,ri表示待定位节点与第个参考基站的距离,则Ri1=c(ti-t1)。双曲线方程组见式(4),求解方组即可求得带定位节点坐标 (x,y)值。
在这里插入图片描述

基于信号到达角度的定位方法AOA估计法

基于信号到达角度定位方法的最大特点就是不需要测量待定位点到参考基站间的距离,而是直接利用发射信号到达基站接收天线时的入射角度进行定位。AOA定位方法需要在基站上方建立智能天线矩阵,若是待定位点与参考基站间在有LOS环境时,则利用直达路后号的到达角度测量得到目标的位置信息,位原理如下图所示。在二维空间下,仅仅需要两个参考基站就能完成。具体的实施步骤为:a)智能天线矩阵在接收端对移动站发送信号的方位角信息构造正切函数方程组;b)联立方程组,求得目标的坐标。
在这里插入图片描述

根据上可得式(5)所示的方程组。
在这里插入图片描述

解该方程组得到定位点坐标(x,y),但当MS,BS1,BS2处于同一条直线上时,方程组无解。当信号在实际的环境中传播时由于环境复杂多变,到达角度很难测量。此外,AOA 算法需要基站之间严格的时间同步和严密的协同计算且在具体的实施中移动台与基站间角度关系的获取存在很大的难度。同时,为了获得精准的定位信息,终端需要同时与两个及两个以上的基站进行通信。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/114142.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FFmpeg基础: YUV像素格式介绍和使用

文章目录YUV像素格式YUV采样YUV格式分类YUV存储模式FFmpeg读取YUV数据YUV和RGB转换YUV像素格式 在图片中我们一般都是通过RGB(红-绿-蓝)格式来表示一个像素点。而在视频当中为了兼容黑白和彩色视频我们通过YUV来表示一个像素点,YUV中Y表示像素点的灰度(也就是亮度分…

【nowcoder】笔试强训Day6

目录 一、单选题 二、多选题 三、编程题 3.1不要二 3.2 把字符串转成整数 一、单选题 1.下面哪段程序能够正确的实现了GBK编码字节流到UTF-8编码字节流的转换: A dstString.frombytes(src,”GBK”).getbytes(“UTF-8”) B dstnew String (src,”GBK”).getb…

计算机视觉与图形学-神经渲染专题-非刚体NeRF

《Fast Non-Rigid Radiance Fields from Monocularized Data》链接:https://graphics.tu-bs.de/publications/kappel2022fast摘要单目动态场景下的 3D 重建和新颖视图合成最近受到越来越多的关注。现有工作在合成给定和前向拍摄的真实世界数据下可以合成较好的结果&…

iPhone如何恢复丢失/消失的通讯录联系人,试试这6 种恢复方案

“在我更新 iOS 后,数百个联系人从我的 iPhone 上消失了。我试图从 iCloud 恢复我的联系人存档。我所看到的只是“没有可用的档案”。请来人帮忙!” 每当发布新的 iOS 版本时,许多 iPhone 用户都会争先恐后地开始更新。然而,他们…

【Python学习记录】matplotlib绘图基本配置

✨ 博客主页:小小马车夫的主页 ✨ 所属专栏:Python学习记录 文章目录前言1、设置颜色2、设置每个点marker3、设置标题、X轴、Y轴文字4、设置刻度5、同一图中画多条线、绘制图例6、设置图层顺序7、多个图的设置subplot8、保存图片总结前言 matplotlib是p…

python中文编码json中文输出问题

python2.x版本的字符编码有时让人很头疼,遇到问题,网上方法可以解决错误,但对原理还是一知半解,本文主要介绍 python 中字符串处理的原理,附带解决 json 文件输出时,显示中文而非 unicode 问题。首先简要介…

人机交互-广州DACAI触摸屏开发中遇到的一些(屏幕和编程)问题

目录 背景 一、屏幕相关 1、厂家给的指令集资料可能有错误,请以软件VisualTFT中的指令助手为准。 2、屏幕程序下载方式 3、SD卡文件格式问题 4、画面id的问题 巨坑!!! 5、子画面变暗的问题 6、 VisualTFT自带的键盘问题 …

【openGauss】一键编译openGauss3.1+dolphin,体验新增的mysql兼容特性

前言 前两天写了一篇openGauss3.1关于mysql的相关特性,但由于openGauss官网提供下载的版本还是9月30号第一次发布的版本,很多特性都还没合入,所以不少爱好者不能轻易体验到。 虽然openGauss已经提供了“一键式编译脚本”,但是还是得做一些前…

Linux系统下的常用文件目录指令

文件目录指令 pwd (Print Working Directory):显示当前工作目录的绝对路泾 ls (list) 基本语法:ls[选项][目录或是文件]常用选项 -a:显示当前目录所有的文件和目录,包括隐藏的。 -l:以列表的方式显示信息 cd (change directory) :切换到指定目录 基本语法:cd参数理…

5G无线技术基础自学系列 | 5G网络速率问题分析

素材来源:《5G无线网络规划与优化》 一边学习一边整理内容,并与大家分享,侵权即删,谢谢支持! 附上汇总贴:5G无线技术基础自学系列 | 汇总_COCOgsta的博客-CSDN博客 前面介绍了接入性和移动性两类问题的处…

node.js+uni计算机毕设项目湖南工商大学财务信息查询小程序(程序+小程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等…

计网第三章.数据链路层—封装成帧、差错检测

以下是湖科大计算机网络公开课的笔记 1 . 数据链路层概述 1.1 一些概念 链路(Link)就是从一个结点到相邻结点的一段物理线路,而中间没有任何其他的交换结点 数据链路(Data Link) 是指实现通信协议的硬件和软件加到…

【自然语言处理】最大熵马尔可夫模型

有任何的书写错误、排版错误、概念错误等,希望大家包含指正。 由于这部分的参考资料比较少,网上大部分资料重复且不完整,对于一些关键计算没有推导,所以这里我主要讨论几篇论文和讲义。但是这些论文和讲义之间也有些许差别&#…

算法CPP时间复杂度

观察数据生成器可以发现对于每次操作均有 。 考虑将这些三元组想象成空间直角坐标系中 为对顶点的长方体。 将操作分成两部分,一部分是对 轴同时操作的,可以一开始就用前缀 统计完,将长方体变 成一个底面为阶梯状的直棱柱。另一部分是对 或…

【网络工程】9、实操-万达酒店综合项目(三)

接上篇《8、实操-万达酒店综合项目(三)》 之前我们按照项目要求进行模拟拓扑的构建实操,完成了办公区部分的网络配置,本篇我们来继续完成其他区域的网络配置。 一、总体架构情况 按照之前项目需求的拓扑图: 我们已经…

爱了爱了,Spring Cloud Alibaba内部微服务架构笔记真的太牛了

现如今微服务架构十分流行,而采用微服务构建系统也会带来更清晰的业务划分和可扩展性。同时,支持微服务的技术栈也是多种多样的,本文主要讲述我们为什么选择Spring Cloud和它的技术概要。 为什么微服务架构需要Spring Cloud 简单来说&#x…

【C++初阶】list的模拟实现

文章目录list的介绍list的模拟实现成员变量Member functionsconstructordestructoroperatorIterators正向迭代器反向迭代器beginendrbeginrendModifierspush_frontpop_frontpush_backpop_backinserteraseclear完整版代码list.hreverse_iterator.htest.cpplist的介绍 list是STL…

Selenium自动化测试环境搭建及问题

一、前言 目标:环境搭建及测试 主要问题:浏览器闪退,路径不明确,语法弃用 二、环境搭建(自带python3.9以上) 2.1.1、下载谷歌浏览器驱动 https://registry.npmmirror.com/binary.html?pathchromedriver/&…

数据结构---A星寻路算法

A星寻路算法第一步第二步第三步第四步JAVA实现用于寻找有效路径的算法。定义俩个集合 OpenList:可到达的格子 CloseList:已到达的格子 每一个格子都具有F、G、H这3个属性 G:从起点走到当前格子的成本,也就是已经花费了多少步。H&a…

生产级部署 Python 脚本,崩溃可自启

今天介绍一个生产级的流程管理工具 PM2,通常我们说到 PM2 的时候,都是在说如何部署 Node.js 程序,但是实际上 PM2 很强大,不仅仅可以用来管理 Node.js,它还可以用来管理 Python、PHP、Ruby、perl 等等。 这里就以 Pyt…