TDOA基站 之 时间同步
TDOA 和 TWR相比,标签可以用最少的信息来定位,但是对于基站要求很高,需要“时间同步”。
这也是TDOA算法的核心部分,很多套件对此讳莫如深,希望能沟通过本文使读者能对TODA同步有一定初步了解。
TDOA实现目的相同,但是实现方法每家各不相同,这里介绍一种简单的时间同步原理。
定位系统中有标签Tag,基站ANA 和ANB,为了时间同步,引入同步节点RN,所有时间都会同步到同步节点上
下图为例说明同步方法,纵轴是时间。为了简化,认为RN与ANA 和ANB距离相等。

时间同步主要流程:
同步节点RN周期性以广播的方法发送同步信号,上图中是R1 R2,使用delayed tx发送,发送信息标记了发送时间
基站接收同步信号并记录接收时间
标签周期性发送定位信号,基站接收定位信号,记录接收时间。
分析如上各个时间戳:
同步节点发送两次同步信号,在基站ANA接收到以后,获得两个发送时间差 R2-R1,以及两个对应的接收时间差A2-A1. 这两个都是时钟数量,对应的绝对时间相同,而时钟数量不同,这个不同是因为每个模块时钟差异造成的。
基站ANA会收到标签发送来的定位信号,时间再AT,相对于A1的时间差是AT-A1
基站收到的定位数据时间戳是在基站ANA上,那么可以映射到同步节点间RN上,利用比例关系
t/(AT-A1) = ( R2-R1)/(A2-A1)
--》 tANA = (AT-A1)*( R2-R1)/(A2-A1)
tANA 就是把AT映射到RN后的时间
同理,可以将BT映射过去 (BT-B1)*( R2-R1)/(B2-B1)
得到的两个映射时间都是基于RN节点,相对于R1 的delay时间,两者可以进行比较了。假如标签离基站ANA较远,可以计算时间差
tdelay = (AT-A1)*( R2-R1)/(A2-A1) - (BT-B1)*( R2-R1)/(B2-B1)
distance = tdelay*C
其中(AT-A1)*( R2-R1)/(A2-A1) - (BT-B1)*( R2-R1)/(B2-B1) 这些量都是可以通过发送的两个信号的到的具体值
所以distance 是一个可以计算的数字。
结合ANA 和 ANB 坐标和 distance,可以建立一个双曲线方法,标签落在这个双曲线上。
再加入一个ANC,用类似方法,
ANA和 ANC或者ANB 和 ANC 再构建一个双曲线
联立两个双曲线,解得坐标就是标签的坐标,定位完成。
更多内容参考蓝点无限论坛bphero.com.cn
TDOA基站 之 时间同步的更多相关文章
- TDOA 之 基站逻辑代码实现
在前一篇博文里描述了基站的逻辑部分,这里贴出来具体代码实现.https://www.cnblogs.com/tuzhuke/p/11689881.html 1 Sync 信息部分 case 'S': ...
- TDOA 之 基站接收数据
基站主要 接收同步节点发来的同步信号,代码里定义为S信息. 以及标签节点发来的定位信号,代码中定义为T信号. 代码中使用中断以及帧过滤功能,对模块只接收自己关心设定好的信息,通过中断告知上层,而不是长 ...
- 开源BTS产品中存在多处漏洞,攻击者或可劫持手机通讯基站
前言 在过去的几周时间里,我从多个方面对GSM的安全性进行了调查和研究,例如GSM通信协议中存在的漏洞.除此之外,我还对目前世界上应用最为广泛的BTS软件进行了安全审计.在这篇文章中,我将会给大家介绍 ...
- LED室内定位算法:RSS,TOA,AOA,TDOA(转载)
转载自:https://blog.csdn.net/baidu_38197452/article/details/77115935 基于LED的室内定位算法大致可以分为四类: 1. 几何测量法 这种方 ...
- TDOA 之数据测试
许久没有更新TDOA了,近期断断续续编写学习,开始测试TDOA数据.记录如下 1 测试场地,如下所示,4个基站摆放位置是一个正方形,变成为1.6m,被测试标签放置正中心. 2 获得原始数据 test_ ...
- TDOA 之TDOA算法python实现
这里指的TDOA算法,实际是解两个双曲线方程,由于两个二次方程设计东西较多,如果强解,计算量很大,从网上参考了如下链接: 算法推到:https://blog.csdn.net/lpsl1882/art ...
- TDOA 基础之 双曲线
TDOA 的算法基础就是时间差,根据时间差换算出距离差,后面的数学理论知识就是双曲线交点问题. 双曲线方程是2次方程,解算曲线交点也就是两个2次方程求解. 首先看双曲线定义(百度百科): 双曲线(Hy ...
- 设置WindowServer2012 时间同步NTP
在powershell中以管理员身份运行以下命令即可 w32tm /config /manualpeerlist:pool.ntp.org /syncfromflags:MANUAL Stop-Ser ...
- Hadoop技巧(02):时间同步
阅读目录 序 时间同步 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 在实际部署 ...
随机推荐
- ASP.NET Core四大部件
四大部件 (WebHost,Startup,launchSettings,wwwroot) WebHost 简单理解是一个socket, https://www.cnblogs.com/neverc/ ...
- 使用TypeScript创建React Native
⒈初始化 React Native环境 参考https://reactnative.cn/docs/getting-started.html ⒉安装React Native官方的脚手架工具 npm i ...
- 关于tomcat9的startup.bat闪退问题&乱码
1.打开apache-tomcat-9.0.22的bin目录 选择图中文件 记事本打开 2.更改文件 setclasspath.bat .0_172\jre 3.保存 startup ----- ...
- WSL部署记录
1. 管理员打开PowerShell,开启WSL功能: Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Sub ...
- openfeign与gateway中的httpClient类声明冲突
启动spring cloud中的网关,报错: ***************************APPLICATION FAILED TO START*********************** ...
- js获取网页和屏幕高度
获取浏览器窗口的可视区域高度和宽度 document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象 ...
- Java内存模型学习笔记(一)—— 基础
1.并发编程模型的分类 在并发编程中,我们需要处理两个关键的问题:1.线程间如何通信,2.线程间如何同步.通信是指线程之间以何种机制来交换信息,同步是指程序用于不同线程之间操作发生相对顺序的机制. 在 ...
- Windows中的库编程
Windows操作系统中,库分为动态链接库(dll)和静态链接库(lib) 动态库是Windows中实现代码共享的一种方式.它是一个二进制式文件,不可单独运行,需要调用方调用才能运行.在Windows ...
- Node.js 实战(一)之—防灾备措施
前言 博客系统上线已经3个多月了,中间没有出现过宕机事故,一直稳定运行.自己写的代码还是挺严谨的,小小鼓励一下!上周对云服务器进行了一次内存扩容,扩容后重启了一次服务器.虽然过程很短,但是因重启后导致 ...
- 移动端隐藏滚动条,css方法
小白第一次发文记录自己遇到的问题. 关于隐藏移动端滚动条方法很多,这里只说本人用到的. 在PC端隐藏html右侧默认滚动条 html { /*隐藏滚动条,当IE下溢出,仍然可以滚动*/ -ms-ove ...