UWB定位算法对比:TDOA算法和TWR算法对比,两种算法优缺点分析

news2024/11/24 3:53:07

UWB定位是基于时间飞行的算法(飞行时间,TOF)。测量一个UWB定位标签和多个UWB定位基站之间的光传播时间。至少需要三个定位基站才能使用三边法精确定位标签的位置。UWB定位基站和定位标签之间也必须保持直线和可视无遮挡。在UWB定位中,有两种基本的定位算法:基于差分飞行时间(TDOA)和双向测距(TWR)的UWB定位算法,这两种定位算法各有优劣,下面比较一下。

简单介绍一下TDOA算法和TWR算法

TDOA获取位置算法

        TDOA,全称是Time Difference of Arrival,通过测量被测标签与已知位置基站间的报文传输时间差,计算出距离差;计算出被测标签的位置。需要已知位置基站间始终同步。

 TWR获取位置算法

        TWR获取位置算法的全程是Two Way Ranging,是一种双向测距获取位置算法。

飞行时间差(TDOA)和双向测距(TWR)定位算法区别如下:

(1)准确度

超宽带(UWB)无线电技术使我们能够在室内和室外定位物体,精度一般在10厘米-30厘米之间。时差法和双向测距法都能达到这一精度。由于时差法是由光速和时间差的乘积来计算的,因此双向测距技术总体上更为精确。

(2)可伸缩性-UWB定位基站和定位标签的数量

到达时差法TDOA要求定位标签使用一个小的时间段发送一条脉冲消息。因此大量的定位标签可以在帧速率内传输信号,所以TDOA定位算法相对容纳的定位标签数量更多,UWB定位基站的数量相对也比较少。

双向测距在设备之间发送一系列消息,从而导致有限数量的定位标签可以在刷新率内传输信号,因此标签数量相对较少。而定位基站分成主基站和从基站,一个主基站可以对应4个从基站,主基站负责和定位引擎进行通信,因此需要的基站数量总体比较多,部署比较麻烦。

(3)电池寿命

TDOA到达时差算法只需要脉冲信号来定位UWB定位标签,从而将电池寿命延长到几年。

采用双向TWR测距算法,UWB标签必须多次发送和接收定位基站的信号。TWR需要交换9条消息来定位UWB定位标签,这大大缩短了标签的待机时间。

(4)鲁棒性

到达时间差算法要求UWB定位基站的时间同步非常精确,这会对鲁棒性产生负面影响。如前所述,TDOA定位算法的一个基本要求是保持定位基站的同步。

双向测距算法TWR不需要定位基站的同步,这增加了系统的鲁棒性。

(5)可扩展性-面积大小

到达时差算法可以在不更改系统或设置的情况下向系统添加定位基站。

双向测距算法你要求系统中的所有从UWB定位基站与主UWB定位基站直接通信。从定位基站和主定位基站之间的通信区域限制了区域的大小。主定位基站都与定位服务器通信。

(6)易用性

在定位系统中增加基于TDOA的定位基站,需要测量定位基站的位置并标记分配定位基站ID,所以增加基站或者扩容相对简单。

对于TWR算法的系统,添加额外的定位基站或标签需要在服务器上进行修改系统算法,以便新定位基站和定位标签之间能够融入到原有的系统中进行通信。因此,相对比较麻烦些。

综上所述,在目前的许多UWB定位系统中,TDOA和TWR两种定位算法都有使用。

用TWR双向测距算法对UWB基站同步要求低,但是耗电相对较大;而采用TDOA定位算法的UWB标签容量和耗电上都有优势,但是对基站的同步要求比较高,系统的健壮性相比TWR算法的系统稍弱。所以最合理的方法是根据室内定位现场的情况而定,采用合理的UWB定位算法解决方案。

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

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

相关文章

Python源码剖析:深度探索Cpython对象-达观数据

CPython 是 Python 社区的标准,其他版本的 Python,比如 pypy,都会遵行 CPython 的标准 API 实现。想要更深入的认识 Python,就需要了解 CPython 的源码实现。本文将从 CPython 的对象构造器开始入手,带大家揭开 CPytho…

工作有感:莫名的IT培训班生涯

欢迎关注博主 六月暴雪飞梨花 或加入【六月暴雪飞梨花】一起学习和分享Linux、C、C、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术…

什么是『知识管理系统』?为什么企业需要搭建知识管理系统?

你的企业或团队在知识迁移的过程中有遇到过以下问题吗? 1、花费过长时间的员工培训:当新员工入职时,传统的培训方法可能需要大量时间和资源。而且,由于知识可能分散在各种文档、手册和资源中,培训过程变得更加复杂。这…

Go Frame 2.3驱动全栈前后端分离管理系统的创新突破

基于新的Go Frame 2.3框架开发的全栈前后端分离的管理系统——GFast-V3,正以其创新性和突破性的特点引起了广泛关注。该系统通过将前端与后端解耦,实现了更高效、可扩展的开发模式,为企业和开发者带来了新的开发体验。 GFast-V3系统介绍 gfa…

重磅预告!Apache DolphinScheduler 3.2.0 新功能“剧透”

近期,Apache DolphinScheduler 将迎来 3.2.0 版本的到来。本次发版为大版本发布,将会带来众多大家期待已久的新功能和新改进。为了让用户提前感知到新版本的变化,社区特意提前“剧透”新版本的重要 feature,并制作了视频进行介绍。…

unity的CommandBuffer介绍

大家好,我是阿赵。   之前介绍过使用PostProcessing来做屏幕后处理效果。我们不一定要用PostProcessing来做后处理效果。   PostProcessing功能强大,比如不同的layer控制不同的屏幕效果,比如可以使用PostProcessVolume的非全局效果达到某…

【三维重建】【深度学习】NeuS总览

【三维重建】【深度学习】NeuS总览 论文提出了一种新颖的神经表面重建方法,称为NeuS,用于从2D图像输入以高保真度重建对象和场景。在NeuS中建议将曲面表示为有符号距离函数(SDF)的零级集,并开发一种新的体绘制方法来训练神经SDF表示&#xff…

【Distributed】分布式ELK日志文件分析系统(一)

文章目录 一、ELK 概述1. 为什么要使用 ELK2. 完整日志系统基本特征3. ELK 简介3.1 ElasticSearch(ES)3.2 Kiabana3.3 Logstash3.4 其它组件Filebeat缓存/消息队列Fluentd 4. ELK 的工作原理5. Linux 系统内核日志消息的优先级别 二、 部署 ELK 集群服务…

二叉树题目:合并二叉树

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 题目 标题和出处 标题:合并二叉树 出处:617. 合并二叉树 难度 3 级 题目描述 要求 给定两个二叉树 root1 \texttt{root1…

java项目之多人命题系统(ssm+mysql+jsp)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于ssm的多人命题系统。技术交流和部署相关看文章末尾! 开发环境: 后端: 开发语言:Java 框架&…

zabbix部署及应用(自定义监控内容,zabbix 自动发现与自动注册,zabbix 代理服务器,Zabbix 高可用集群)

zabbix部署及应用 一、添加 zabbix 客户端主机1、服务端和客户端都配置时间同步2、服务端和客户端都设置 hosts 解析3、设置 zabbix 的下载源,安装 zabbix-agent24、修改 agent2 配置文件5、启动 zabbix-agent26、在服务端验证 zabbix-agent2 的连通性7、常用的键值…

一、对象的概念(1)

本章概要 抽象接口服务提供封装 抽象 “我们没有意识到惯用语言的结构有多大的力量。可以毫不夸张地说,它通过语义反应机制奴役我们。语言表现出来并在无意识中给我们留下深刻印象的结构会自动投射到我们周围的世界。” – Alfred Korzybski (1930) 计算机革命的起…

分布式锁【 基于synchronized锁解决超卖问题、分布式锁解决方案、悲观锁实现的分布式锁】(二)-全面详解(学习总结---从入门到深化)

目录 分布式锁问题_演示问题 基于synchronized锁解决超卖问题 分布式锁解决方案 分布式锁实现方案 分布式锁解决方案_数据库悲观锁实现的分布式锁 项目中使用for update 分布式锁问题_演示问题 启动订单服务9090 启动订单服务9091 创建两个SpringBoot服务 启动Nginx服务 下载N…

火山引擎云搜索服务升级云原生新架构;提供数十亿级分布式向量数据库能力

从互联网发展伊始,搜索技术就绽放出了惊人的社会和经济价值。随着信息社会快速发展,数据呈爆炸式增长,搜索技术通过数据收集与处理,满足信息共享与快速检索的需求。 云搜索服务 ESCloud 是火山引擎提供的完全托管在线分布式搜索服…

OJ练习第135题——下降路径最小和

下降路径最小和 力扣链接:931. 下降路径最小和 题目描述 给你一个 n x n 的 方形 整数数组 matrix ,请你找出并返回通过 matrix 的下降路径 的 最小和 。 下降路径 可以从第一行中的任何元素开始,并从每一行中选择一个元素。在下一行选择…

永磁同步电机磁场定向控制(FOC)及Matlab/Simulink仿真分析

前言 做永磁同步电机控制绕不开FOC,本章节主要介绍FOC控制的基本原理、坐标变换以及永磁同步电机在同步旋转坐标系下的数学模型,并通过Matlab/Simulink进行永磁同步电机FOC控制算法的仿真分析。 01 FOC的基本原理 磁场定向控制(Field-Ori…

分割3-转置卷积可逆吗?

上一话 分割2——语义分割评价指标https://blog.csdn.net/XiaoyYidiaodiao/article/details/125149509?spm1001.2014.3001.5502 转置卷积不是卷积的逆操作,并且转置卷积是卷积操作! 这是因为普通卷积的操作图 1. 图1 其卷积可等效为图 2. 图2 其卷积操…

Offset Explorer2 监视kafka的利器

kafka作为一个生产者和消费者集为一体的框架,消费者必须一直保持打开的状态,并且每隔一段时间接收一次数据,才能够保持生产者放入的数据及时被处理掉,而生产者则可以每隔一段时间发送一波数据,这样消费者就能够接收到了…

Mysql搭建互为主从数据库

Mysql搭建互为主从数据库 一、搭建前期说明二、mysql文件结构以及配置说明1、mysqlA文件结构2、mysqlB文件结构3、mysqlA的配置文件my.cnf4、mysqlB的配置文件my.cnf5、启动mysqlA服务器脚本startMysqlA.sh6、启动mysqlB服务器脚本startMysqlB.sh7、查看服务启动情况 三、设置主…

【Redis】之缓存一致性

1、缓存一致性 对于使用 Redis 作为缓存来说,如何保证数据库和缓存数据一致性是个麻烦的问题。对于缓存和数据库的操作,主要有以下两种方式: 先删缓存,再更新数据库;先更新数据库,再删除缓存;…