超宽带(UWB)学习笔记——消除多径误差的第一径检测算法
文章目录
- 前言
- 1. 第一径检测算法描述
- 1.1 问题的提出
- 1.2 实现过程
- 1.3 参数配置
- 2. 总结
- 参考文献
前言
使用超宽带进行测距,对抗多径是一个非常重要的问题,其本质是在最强径不是第一径(如LOS信号不是直达径)的情况下还能找到真正的第一径,而且可以准确的测量第一径的上升沿时刻。本文对Decawave的芯片中所实现的一种第一径检测算法进行介绍。
1. 第一径检测算法描述
1.1 问题的提出
该问题基于类似802.15.4a中描述的UWB测距HRP模式展开。该模式下测距的基本原理是读取信道CIR,并根据CIR找到最强径,作为到达时刻(RMARKER)的测量。由于多径信号的存在,导致找到的最强径不一定是真正的直达径。同时,多径信道也可能将最强径展宽,从而影响测量精度。
一个典型的多径信道下测得的CIR如下图所示:
对于直射信号而言,其信号强度未必最强,但一定是最早出现的,其他多径信号由于反射路径带来的延时,必然落后于直达径。因此,可以依据该特点在CIR进行第一径检测,从而引出第一径检测算法LDE(Leading Edge Detection)。
1.2 实现过程
- 对接收机经过相关和积分后的CIR结果进行循环移位,将最大值位置移动到整个CIR周期的大约3/4处。设移位完成后的CIR信号数组为cir[1:N],其中N为一个周期内得到的CIR点数,考虑目前典型的UWB芯片,在码片数位31的模式下,N=992,对应1us的符号周期。
- 从这一个周期的CIR信号中选取一段噪声数据进行噪底估计。设选取的数据为cir[n1:n2]。理论上来说,n1可以选取接近1的数,n2则需要选取一个离最大值(即整个数据长度的3/4)较远,但又不是特别小的值。实际上,由于一个周期的CIR数据的尾部一般会有一个能量衰减的过程,而上一个周期的尾部可能会翻叠到当前周期的前部,因此噪底估计也不能从当前周期的头部开始,也就是说,n1需要选取一个合理的数。n1和n2可以根据实际情况进行调整。
- 对cir[n1:n2]的噪声数据进行统计,得到噪声的均值 μ n \mu_n μn和方差 σ n \sigma_n σn,并记录噪声的最大值 ψ n m a x \psi_n^{max} ψnmax
- 根据噪声均值和方差计算峰值门限 t h p e a k = max ( p × ψ n m a x , μ n + q × σ n ) th_{peak}=\max(p \times \psi_n^{max}, \mu_n + q \times \sigma_n) thpeak=max(p×ψnmax,μn+q×σn),其中p和q是可配的参数
- 从cir[n2+1]开始,寻找幅度大于上述门限的第一个cir值,记录该值所在的位置为 i i i
- 选取cir[i-3:i+4]共8个点,前后相减,得到7个一阶导数值:d_cir[1:7] = cir[i-2:i+4] - cir[i-3:i+3]
- 从d_cir[1:7]中选取连续三个点v[1:3],满足v[2]>max(v[1], v[3]),对这三个点进行拟合,找到最大值所在的位置,该位置即是LDE算法所得到的第一径的位置: τ = 1 2 v ( 3 ) − v ( 1 ) v ( 2 ) − min ( v ( 1 ) , v ( 3 ) ) \tau = \frac{1}{2}\frac{v(3)-v(1)}{v(2)-\min(v(1),v(3))} τ=21v(2)−min(v(1),v(3))v(3)−v(1)
1.3 参数配置
上述过程中,有如下几个参数可以作为寄存器配置:
- n1:进行噪声统计的数据区间的起始值
- n2:进行噪声统计的数据区间的终止值
- p:使用噪声峰值计算第一径幅度门限的乘性因子参数
- q:使用噪声统计均值和方差计算第一径幅度门限的乘性因子参数
另,在统计噪声的时候,可以通过一个滑动窗进行平滑后再进行统计,该滑动窗的长度 w w w以及平滑的系数 α \alpha α同样可以作为可配置参数。
2. 总结
由上述算法描述可知,由于最终拟合的一阶导数最大值的位置为一个小数,因此第一径的拟合精度可以远大于CIR采样的分辨率。该算法不仅在很大程度上消除了多径信道带来的误差影响,也是超宽带芯片采用124.8MHz采样,但测距精度可以达到厘米级的一个内在原因。
参考文献
- Receiver For Use In An Ultra-wideband Communication System, US patent, US10,090,879 B2, 2014
超宽带(UWB)学习笔记——消除多径误差的第一径检测算法相关推荐
- Windows驱动开发学习笔记(一)—— 环境配置第一个驱动程序
Windows驱动开发学习笔记(一)-- 环境配置&第一个驱动程序 环境配置 第一个驱动程序 环境配置 安装VS2010:https://pan.baidu.com/s/1uZWWxCtB60 ...
- 【李宏毅深度强化学习笔记】5、Q-learning用于连续动作 (NAF算法)
[李宏毅深度强化学习笔记]1.策略梯度方法(Policy Gradient) [李宏毅深度强化学习笔记]2.Proximal Policy Optimization (PPO) 算法 [李宏毅深度强化 ...
- OpenGL 学习笔记 II:初始化 API,第一个黑窗,游戏循环和帧率,OpenGL 默认垂直同步,glfw 帧率
前情提要: 上一篇: OpenGL 学习笔记 I:OpenGL glew glad glfw glut 的关系,OpenGL 状态机,现代操作系统的窗口管理器,OpenGL 窗口和上下文 OpenGL ...
- AI学习笔记(四)相机模型、图像聚类算法
AI学习笔记之相机模型.图像聚类算法 相机模型 相机与图像 坐标系 相机成像 世界坐标系到摄像机坐标系 摄像机坐标系到图像物理坐标系 图像物理坐标系到图像像素坐标系 摄像机坐标系到图像像素坐标系 世界 ...
- ESL2.5 高维问题的局部方法学习笔记(含泛化误差分解MSE分解)
2.5 高维问题的局部方法 这是一篇有关<统计学习基础>,原书名The Elements of Statistical Learning的学习笔记,该书学习难度较高,有很棒的学者将其翻译成 ...
- 学习笔记16--环境感知实例之车道线检测
本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...
- 超宽带 (UWB) 解释 (以及为什么它在 iPhone 11)
今年的一批iPhone中的新芯片之一是U1:它提供了超宽带(UWB)连接,与物联网(IoT)技术相结合,可以为企业和消费者提供无数新服务. 正如苹果所言,UWB技术提供了 "空间感知&quo ...
- Lombok学习笔记— 消除冗余java代码
2019独角兽企业重金招聘Python工程师标准>>> lombok官网:http://projectlombok.org/ lombok开源中国连接:http://www.osch ...
- 一个后端开发人员的node.js学习笔记(一)安装与第一个服务器
2019独角兽企业重金招聘Python工程师标准>>> 1.Node.js的下载和安装 Node.js安装包及源码下载地址为:https://nodejs.org/en/downlo ...
最新文章
- 微服务 Rpc和Rest协议
- C Primer Plus (第五版) 第十章 数组和指针 编程练习
- 20165219 预备作业3 Linux安装及学习
- 复现经典:《统计学习方法》​第17章 潜在语义分析
- ACM训练总结(大二)
- 实现了发动机功能,支持Slider Motor、Hinge Motor、Hinge2 Motor。
- 多实例kerberos_如何使用Kerberos链接两个SQL Server实例
- CREO图文教程:三维设计案例之一腔多模设计(定位参照零件导入模具模型)图文教程之详细攻略
- ARMv8-A架构基础之A64指令
- 「文档编写」- 常见序号写法 @20210412
- 小米平板2,Windows10与Android互刷教程,小米平板2 线刷教程
- 虚拟网络监控进阶之路-DeepFlow
- Ubuntu安装软件时报错(报错:dpkg: 处理软件包 xxx (--configure)时出错: 依赖关系问题 - 仍未被配置)
- 数学实验——函数绘图实验
- Python-print 函数之换行
- gradle离线下载
- 硬件设计 之摄像头分类(IR摄像头、mono摄像头、RGB摄像头、RGB-D摄像头、鱼眼摄像头)
- 武汉云数时代网络科技有限公司代运营如何选择合适产品?
- 基于Java实现的一个FTP服务
- Unity 打开关闭外部的exe软件
热门文章
- 学计算机大专需要买笔记本吗,上大学该买电脑吗?学长:买的时候以为是刚需,买了变成“鸡肋”...
- C++ 窗口设计 实践项目2 个人所得税计算器
- 使用yolov3-tiny训练一个人脸检测器
- mysql RBA,Oracle RBA 浅谈
- 【MySQL系列】使用C语言来连接数据库
- 【Aegisub快速上手】ASS特效标签合集(仅供参考)
- 腾讯云智研发前端校招二面
- 《易中天中华史 - 第三卷 奠基者》读书笔记
- 贼简单的Android计时工具,老铁,还不试用起来。
- 微信小程序属性剖析:wx-key就这么重要吗?