毫米波雷达原理(含代码)(含ARS548 4D毫米波雷达数据demo和可视化视频)

毫米波雷达原理

  • 1. 传统毫米波雷达
    • 1.1 雷达工作原理
    • 1.2 单目标距离估计
    • 1.3 单目标速度估计
    • 1.4 单目标角度估计
    • 1.5 多目标距离估计
    • 1.6 多目标速度估计
    • 1.7多目标角度估计
    • 1.7 总结
  • 3. FMCW雷达数据处理算法
  • 4. 毫米波雷达的目标解析(含python代码)
  • 5. ARS548 4D毫米波雷达数据demo(含python代码)
    • 5.1 4D毫米波雷达原理
    • 5.2 ARS5484D毫米波雷达数据解析demo视频
    • 5.3 ARS548 4D毫米波雷达&速腾M1激光雷达&balser相机 多模态数据集(含标注,已对齐)

1. 传统毫米波雷达

毫米波雷达的工作原理可以简单理解为:通过发射信号的接受信号之间的信息差,完成目标的测距和测速。另外受限与雷达的特性,速度分辨率和距离分辨率有对应的上限,也即可以区分的距离值和速度值有上限,比如可以区分出10m和15m距离的目标,但是10m和10.001m的两个目标无法分别。另外雷达也可以完成目标所在方位的估计,也就是角度估计,通过一系列计算完成目标方位角的计算(传统雷达而言,如果是4D毫米波雷达的话,应该还有俯仰角)。

1.1 雷达工作原理

FMCW(Frequency Modulated Continuous Wave)雷达是一种常用于测距和速度的雷达系统。它的工作原理相对复杂,但可以简单描述如下:

  • 频率调制: FMCW雷达通过周期性地调制发射信号的频率来工作。它的发射信号是一个频率连续变化的波形,通常是线性调频的信号。这意味着信号的频率随时间线性变化,比如从一个起始频率到一个结束频率,然后再从结束频率返回起始频率,形成一个周期。
  • 发射与接收: FMCW雷达将这种调制的信号发送出去,然后等待信号被目标物体反射回来。目标物体反射回来的信号会包含与目标物体的距离和速度相关的信息。
  • 混频与解调: 接收到反射信号的雷达会将其与本地生成的发射信号进行混频。这个过程可以理解为将两个信号相乘,得到一个频率差信号,这个频率差信号包含了目标物体距离和速度的信息。
  • 信号处理: 混频后得到的信号经过信号处理,通常是通过FFT(快速傅里叶变换)或其他频域分析技术来提取出目标物体的距离和速度信息。通过分析混频信号的频率分量,可以确定目标物体的距离(基于延迟时间)和速度(基于频率变化)。
    在这里插入图片描述
    在这里插入图片描述
    从上图右下角的图可以看出,该款雷达的起始频率 77 G H z 77GHz 77GHz最大频率 81 G H z 81GHz 81GHz带宽 B = 4 G H z B = 4GHz B=4GHz,一个频率变化时间周期为 T c = 40 μ s T_c = 40\mu s Tc=40μs频率变化率 S = B / T c = 100 M H z / μ s S = B/T_c = 100MHz/ \mu s S=B/Tc=100MHz/μs,一个频率变化周期可以记为一个Chirp。请牢记这几个概念,之后的距离速度角度估计,以及分辨率的计算都依赖这几个量。

另外,需要强调的一点是,什么是脉冲信号。脉冲信号是一个频率随时间变化的信号,上图中的信号是个频率线性变化的脉冲信号(上图左下角就是脉冲信号的波形图),频率在一个Chirp内从77GHz递增到81GHz。也可以是非线性变化,这个要取决于雷达具体的特性。正是因为了频率和时间的相关性,我们才能从RX信号和TX信号之间的差异中得到关于速度和距离的信息。

在这里插入图片描述
如上图右下角,发射了一个TX信号,但是仅得到了一个来自目标的回波信号RX,这说明只有一个目标。并且观察到,从RX信号被接收以后,发射信号的频率与回波信号(接收信号)的频率差是定值。如果这个目标是静止的,那么雷达每隔chirp时间发送的Tx信号与返回的Rx信号构成的IF信号的相位也是一样的(因为信号的波形图一形状一样,物体静止,RX与Tx之间仅有一个固定的相位偏移,不同周期的Tx和Rx的相位偏移量固定,两个chirp周期的IF信号间相位差为0)。通过两者的频率差,可以得到时间差,进而得到距离值。如果目标不静止,通过相邻的时间周期得到的IF信号的相位差,可以计算目标的速度。

1.2 单目标距离估计

由于发射信号的频率是已知的,因此可以通过测量反射信号与发射信号的频率差来确定目标物体的距离。频率差越大,延迟时间越长,意味着目标物体距离越远。
在这里插入图片描述
如上图,通过Tx和Rx信号的频率差,可以得出该目标是个静止目标(因为频率差固定),通过信号传播速度 c c c和频率差 ∇ f \nabla f f,推出目标距离为
r = τ c 2 = ∇ f c 2 S r = {\tau c \over 2} = {\nabla f c \over 2S} r=2τc=2Sfc
因此只要Tx信号和Rx信号的频率差IF信号以及频率变化率,就能得到目标的距离。但是需要注意,雷达测距有上限,最大探测距离受限于 ∇ f \nabla f f的最大值(因为脉冲信号有带宽,每个Chirp的时间也是个定值,因为Rx信号和Tx信号之间存在最大的频率差,也就是带宽的大小,如果Rx信号回来的太晚,超出了对应Tx信号的Chirp时间内,那么这个回波信号就没版办法计算IF信号了)。
在这里插入图片描述
对于上图的两个因素,第一个因素不用做太多的解释。但是对于第二个因素,需要解释一下: ==根据采样定理,若要完整地恢复一个信号,采样频率至少是原始信号的两倍。==上图中的N表示一个周期内(chirp)的采样次数,可以理解为把连续信号离散化采样N次。针对一个系统,采样次数一般为定值(太大的采样次数会给系统带来空间和时间上的负担),因此IF信号的频率也不能无限接近的取到B。

总结一下: 雷达的距离估计取决于Rx信号和Tx信号的频率差, 并且最大探测距离也受限于系统的采样频率和带宽, 与带宽成反比。采样频率S固定时,带宽越小,最大探测距离越大,但因距离分辨率与带宽成正比,所以带宽也不能无限变小。带宽固定时,采样次数N越大,最大探测距离越远,但因N的增加会引起计算量增加和储存量增加,所以N也不能无限增加

1.3 单目标速度估计

目标物体的速度则是通过检测混频信号中的频率变化来确定的。如果目标物体在雷达的视野内移动,其反射信号的频率会发生多普勒效应,从而导致混频信号中的频率发生变化。通过分析这种变化,可以计算出目标物体的速度。

  • 什么是多普勒效应?
    毫米波雷达的多普勒效应是指,当雷达系统与目标物体相对运动时,由于多普勒效应的作用,目标物体反射回来的电磁波的频率会发生变化。这种频率变化与目标物体的运动速度有关,可以通过雷达接收到的信号频率的变化来推断目标物体的运动状态。具体来说,多普勒效应有以下特点:
    • 正多普勒频移: 如果目标物体朝向雷达系统运动,反射回来的电磁波的频率会增加,称为正多普勒频移。这意味着接收到的信号频率比发射的信号频率高。
    • 负多普勒频移: 如果目标物体远离雷达系统,反射回来的电磁波的频率会降低,称为负多普勒频移。这时接收到的信号频率比发射的信号频率低。
      毫米波雷达利用多普勒效应可以实现对目标物体运动速度的测量。通过测量接收到的信号频率与发射的信号频率之间的差异,可以计算出目标物体相对于雷达系统的速度。

在这里插入图片描述
见上图,雷达发射了两个脉冲信号,打到同一个目标上,可以返回两个回波信号,因此构成了两个IF信号。如果目标静止,得到的IF信号的频率 ∇ f \nabla f f和相位 ∇ ϕ \nabla \phi ϕ 均一致(因为Tx信号和Rx信号之间仅有一个时间偏差,时间偏差可以计算出相位偏移) ∇ ϕ = 2 π f τ \nabla \phi = 2 \pi f \tau ϕ=2πfτ, τ \tau τ为Tx信号和Rx信号的时间差。

但是如果目标有速度在移动,那么两个发射信号Tx与两个回波信号Rx之间的时间差 τ 1 , τ 2 \tau_1,\tau_2 τ1,τ2就不一致了,后者会
稍微大一些,那么两个IF信号的相位就不一样了,两个IF信号之间就有了相位差。注意,公式中的频率和相位都是瞬时的,每个时间都不一样

根据这个相位差,就可以得到目标的速度。

但是切记,速度测量也有上限,与脉冲信号发射周期 T c T_c Tc成反比,在频率变化率S不变的时候,带宽B越小,最大测量测速也越大

在这里插入图片描述

1.4 单目标角度估计

角度估计的原理是: 对于有多个接收天线的雷达,目标相对多个接收天线的距离不同,这会导致距离FFT峰值的相位变化
在这里插入图片描述
在这里插入图片描述

1.5 多目标距离估计

多目标测距的原理是,一个发射信号Tx,得到了来自三个不同目标的反射信号 R x 1 , R x 2 , R x 3 R_{x1},R_{x2},R_{x3} Rx1,Rx2,Rx3,每个信号都有不同的延时,延时与目标的距离成正比。然后得到三个IF信号,通过IF信号的频率得到三个目标的距离

在这里插入图片描述

既然有多个目标,那么雷达能区分间距多远的目标,就也是个重点。术语是距离分辨率: 雷达能区分两个不同目标的最小距离。根据傅里叶变换理论,观测时间窗口T,可以分辨间隔超过 1 / T H z 1/T Hz 1/THz的频率分量,也就是说两个不同目标的IF信号的频率差需要超过这个值。

另外需要注意的一点是: 混频器输出的是多个单音信号的的叠加,并不是独立的单个信号,所以需要使用FFT操作将这个叠加信号分为一个具有不同峰值和相位的频谱,每个峰值就是不同距离的目标。多目标的距离估计,IF信号还是一维的
在这里插入图片描述
结论: 距离分辨率取决于带宽,与带宽成反比。在周期时间 T c T_c Tc不变的时候,提高频率变化率。在频率变化率不变的时候,延长chirp信号,也就是提高周期时间,都可以提高距离分辨率。但是因为最大探测距离与带宽成反比,因此也不能一味的提提升距离分辨率,而导致探测范围降低。可以简单的记为,最大探测距离和距离分辨率这两个性能是互相背离的

1.6 多目标速度估计

多目标速度估计的原理是单目标速度估计的拓展,单目标估计是得到两个chirp发射的脉冲信号和得到的对应回波信号之间的IF信号,然后根据两个IF信号的相位差得到该目标的速度。
对于多目标速度估计而言,同样也是雷达发射相邻chirp时间的Tx信号,只不过每个Chirp发出的Tx信号,都得到了若干个回波信号Rx。假如说需要计算某个时间段内的多个目标的速度,如果这个时间段雷达可以发射M个脉冲信号,并且每个脉冲信号得到了N个回波信号,那么就可以得到N个目标在这个时间段内的M个瞬时速度值。
针对单个目标,可以得到M个IF信号,对应M个目标距离。如果目标静止,那么这M个IF信号的频谱峰值相同,并且相位也相同。

承接上文,混频器输出的是一个叠加信号。所以对于多目标的速度估计,混频器信号经过FFT操作后得到的IF信号是二维的(形状为 M × N M \times N M×N),M表示在某个固定长度的时间内发射了M个信号,N表示每个发射信号得到了来自N个目标的回波信号。

对这个混频器输出的信号进行距离FFT操作,可以得到M个频谱,每个频谱都包含N个波峰,每个波峰对应一个目标的距离。
对这个混频器输出的信号进行速度FFT操作,可以得到N个频谱,每个频谱都包含M个相位,对应每个目标的M个相位偏移。然后通过相邻相位的差,就可以得到对应时间的速度。

在这里插入图片描述

与多目标距离估计类似,多目标速度估计也需要考虑速度分辨率,也就是说对应距离一致的两个目标,能否区分两个目标的关键就是两个目标的速度差是否超过了速度分辨率,否则的话无法区分
在这里插入图片描述

结论: 速度分辨率与时间窗口的长度有关,在这个时间窗口内,雷达可以发射M个脉冲信号,这个时间窗口术语就是一帧,也就是雷达一帧的时间周期,在雷达的周期内,可以发射若干的chirp信号。所以要想提升速度分辨率,可以提高帧时间,也就是降低雷达的频率,也可以理解为每个chirp的时间固定,提高了一帧内chirp的数量。

1.7多目标角度估计

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.7 总结

  1. 雷达的距离估计取决于Rx信号和Tx信号的频率差, 并且最大探测距离也受限于系统的采样频率和带宽, 与带宽成反比。采样频率S固定时,带宽越小,最大探测距离越大,但因距离分辨率与带宽成正比,所以带宽也不能无限变小。带宽固定时,采样次数N越大,最大探测距离越远,但因N的增加会引起计算量增加和储存量增加,所以N也不能无限增加

  2. 距离分辨率取决于带宽,与带宽成反比。在周期时间 T c T_c Tc不变的时候,提高频率变化率。在频率变化率不变的时候,延长chirp信号,也就是提高周期时间,都可以提高距离分辨率。但是因为最大探测距离与带宽成反比,因此也不能一味的提提升距离分辨率,而导致探测范围降低。可以简单的记为,最大探测距离和距离分辨率这两个性能是互相背离的。

  3. 速度分辨率与时间窗口的长度有关,在这个时间窗口内,雷达可以发射M个脉冲信号,这个时间窗口术语就是一帧,也就是雷达一帧的时间周期。在雷达的周期内,可以发射若干的chirp信号。所以要想提升速度分辨率,可以提高帧时间,也就是降低雷达的频率,也可以理解为每个chirp的时间固定,提高了一帧内chirp的数量。

  4. 最大速度也有上限,与脉冲信号发射周期 T c T_c Tc成反比,在频率变化率S不变的时候,带宽B越小,最大测量测速也越大

  5. 角度分辨率依赖于目标的方位角和天线的个数。角度分辨率与天线个数成反比。越靠近FOV的边缘,角度分辨率越低

下边将通过python代码模拟,来展示测距,测速以及带宽B和采样频率对距离分辨率和速度分辨率的影响。

3. FMCW雷达数据处理算法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. 毫米波雷达的目标解析(含python代码)

这里将通过四个例子进一步理解测距,测速度,测角度,以及分辨率等的计算

  1. 计算距离和速度的分辨率和测量范围,以及角度的测量范围
  2. 估计目标的角度
  3. 估计多个目标的距离,速度和角度
  4. 调整雷达参数,区分距离或速度相近的目标

项目工程请看: radarFMCW
或者: csdn资源

项目实例:

在这里插入图片描述
在这里插入图片描述

5. ARS548 4D毫米波雷达数据demo(含python代码)

5.1 4D毫米波雷达原理

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.2 ARS5484D毫米波雷达数据解析demo视频

在这里插入图片描述

5.3 ARS548 4D毫米波雷达&速腾M1激光雷达&balser相机 多模态数据集(含标注,已对齐)

在这里插入图片描述

  • 毫米波雷达参数
    在这里插入图片描述
  • 激光雷达参数
    在这里插入图片描述
  • 相机参数
    在这里插入图片描述

https://github.com/hjfenghj/ARS548Dataset

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MYSQL从入门到精通(二)

1、MYSQL高级概述 【1】架构概述 【2】索引优化 【3】查询截取 【4】mysql锁机制 【5】主从复制 2、MYSQL概述 【1】mysql内核 【2】sql优化工程师 【3】mysql服务器的优化 【4】各种参数常量设定 【5】查询语句优化 【6】主从复制 【7】软硬件升级 【8】容灾百分 【9】sql编…

Flutter笔记:Widgets Easier组件库(1)使用各式边框

Flutter笔记 Widgets Easier组件库(1):使用边框 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress o…

Leetcode—377. 组合总和 Ⅳ【中等】

2024每日刷题&#xff08;124&#xff09; Leetcode—377. 组合总和 Ⅳ 算法思想 实现代码 class Solution { public:int combinationSum4(vector<int>& nums, int target) {vector<unsigned long long>dp(target 1);dp[0] 1;for(int i 1; i < target;…

React、React Router 和 Redux 常用Hooks 总结,提升您的开发效率!

Hooks 是 React 16.8 中引入的一种新特性&#xff0c;它使得函数组件可以使用 state 和其他 React 特性&#xff0c;从而大大提高了函数组件的灵活性和功能性。下面分别总结React、React Router 、Redux中常用的Hooks。 常用Hooks速记 React Hooks useState&#xff1a;用于…

社交媒体数据恢复:WorldTalk

WorldTalk数据恢复方法 在本文中&#xff0c;我们将探讨如何恢复在WorldTalk中删除的信息。请注意&#xff0c;这些步骤并不是专门针对WorldTalk软件设计的&#xff0c;而是基于一般的手机数据恢复流程。由于WorldTalk是一款全球5亿人使用的交友APP&#xff0c;用户分别来自中…

EDA(一)Verilog

EDA&#xff08;一&#xff09;Verilog Verilog是一种用于电子系统设计自动化&#xff08;EDA&#xff09;的硬件描述语言&#xff08;HDL&#xff09;&#xff0c;主要用于设计和模拟电子系统&#xff0c;特别是在集成电路&#xff08;IC&#xff09;和印刷电路板&#xff08;…

TCP 协议

TCP协议段格式 源/目的端口号&#xff1a;表示数据是从哪个进程来&#xff0c;到哪个进程去。 序号&#xff1a;发送数据的序号。 确认序号&#xff1a;应答报文的序号&#xff0c;用来回复发送方的。 4 位首部长度&#xff1a;一个 TCP 报头&#xff0c;长度是可变的&#xff…

zotero better notes报错:Error: ReferenceError: topItem is not defined

我的自定义笔记模板名称是&#xff1a;简约风格 然后就遇到了以下报错&#xff1a; Error: ReferenceError: topItem is not defined 解决办法&#xff1a; 将模板名称前面加上[Item] 之后就可以正常导入笔记模板了~

Node.js -- 包管理工具

文章目录 1. 概念介绍2. npm2.1 npm 下载2.2 npm 初始化包2.3 npm 包(1) npm 搜索包(2) npm 下载安装包(3) require 导入npm 包的基本流程 2.4 开发依赖和生产依赖2.5 npm 全局安装(1) 修改windows 执行策略(2) 环境变量Path 2.6 安装包依赖2.7 安装指定版本的包2.8 删除依赖2.…

FIFO Generate IP核使用——AXI接口FIFO简介

AXI接口FIFO是从Native接口FIFO派生而来的。AXI内存映射接口提供了三种样式&#xff1a;AXI4、AXI3和AXI4-Lite。除了Native接口FIFO支持的应用外&#xff0c;AXI FIFO还可以用于AXI系统总线和点对点高速应用。 AXI接口FIFO不支持Builtin FIFO和 Shift Register FIFO配置。 当…

分布式与一致性协议之Paxos算法(三)

Paxos算法 兰伯特关于Multi-Paxos的思考 领导者 我们可以通过引入领导者(Leader)节点来解决第一个问题。也就是说将领导者节点作为唯一提议者&#xff0c;如图所示。这样就不存在多个提议者同时提交提案的情况&#xff0c;也就不存在提案冲突的情况了。这里补充一点:在论文中…

CVE-2022-2602:unix_gc 错误释放 io_uring 注册的文件从而导致的 file UAF

前言 复现该漏洞只是为了学习相关知识&#xff0c;在这里仅仅做简单记录下 exp&#xff0c;关于漏洞的详细内容请参考其他文章&#xff0c;最后在 v5.18.19 内核版本上复现成功&#xff0c;v6.0.2 复现失败 漏洞利用 diff --git a/include/linux/skbuff.h b/include/linux/s…

保存钉钉群直播回放下载:直播回放下载步骤详解

今天&#xff0c;我们就来拨开云雾&#xff0c;揭开保存钉钉群直播回放的神秘面纱。教会你们如何下载钉钉群直播回放 首先用到的工具我全部打包好了&#xff0c;有需要的自己下载一下 钉钉群直播回放工具下载&#xff1a;https://pan.baidu.com/s/1WVMNGoKcTwR_NDpvFP2O2A?p…

从零开始学AI绘画,万字Stable Diffusion终极教程(一)

【第1期】SD入门 2022年8月&#xff0c;一款叫Stable Diffusion的AI绘画软件开源发布&#xff0c;从此开启了AIGC在图像上的爆火发展时期 率先学会SD的人&#xff0c;已经挖掘出了越来越多AI绘画有趣的玩法 从开始的AI美女、线稿上色、真人漫改、头像壁纸 到后来的AI创意字、AI…

M2 Mac mini跑Llama3

前言 在4-19左右&#xff0c;Meta 宣布正式推出下一代开源大语言模型 Llama 3&#xff1b;共包括 80 亿和 700 亿参数两种版本&#xff0c;号称 “是 Llama 2 的重大飞跃”&#xff0c;并为这些规模的 LLM 确立了新的标准。实际上笔者早就体验过&#xff0c;只不过自己电脑没什…

在家连学校的服务器

在家连接学校的服务器。 Step1: 首先下载一个vscode的插件 Visual Studio Code - Code Editing. Redefined 我的服务区是ubuntu20.04&#xff0c;x64的&#xff0c;所以下载这个。 Step2: 下载到本地之后&#xff0c;想办法将这个文件拷贝到你的服务器上。 Step3: 解压该包…

自动化滇医通

###我已经将数据爬取出来### 现在开源集合大家的思路一起研究 &#xff08;请更换ip 以及 暂停时间 不然会提示违规操作&#xff09; 脚本读取预约信息后开始随机抢一家的&#xff0c;qiang方法里面请自行修改抓包数据参数&#xff01;&#xff01; 现在开源大家一起讨论 pyt…

3.【Orangepi Zero2】超声模块ultrasonic(HC-SR04)

超声模块ultrasonic&#xff08;HC-SR04&#xff09; HC-SR04 超声波距离传感器如何工作&#xff1f;程序实现初始化超声波启动超声波获取距离整合代码 HC-SR04 超声波距离传感器如何工作&#xff1f; 当Trig引脚设置为高电平达 10s 时&#xff0c;超声波距离传感器开始工作。…

Java进阶-Java Stream API详解与使用

本文全面介绍了 Java Stream API 的概念、功能以及如何在 Java 中有效地使用它进行集合和数据流的处理。通过详细解释和示例&#xff0c;文章展示了 Java Stream API 在简化代码、提高效率以及支持函数式编程方面的优势。文中还比较了 Java Stream API 与其他集合处理库的异同&…

通过符号程序搜索提升prompt工程

原文地址&#xff1a;supercharging-prompt-engineering-via-symbolic-program-search 通过自动探索​​大量提示变体来找到更好的提示 2024 年 4 月 22 日 众所周知&#xff0c;LLMs的成功在很大程度上仍然取决于我们用正确的指导和例子来提示他们的能力。随着新一代LLMs变得越…