1、查看数据clc; %清空命令行 clear; %清空工作区 close all; %关闭绘图窗口 dataFile C:\Users\wfh\Desktop\毫米波雷达实测\Radar_Processing\data\000003.mat; %对文件路径赋值 whos(-file,dataFile) %查看数据 data load(dataFile); %读取数据复数双精度4177920字节2TX4RX255Chirp128采样adcData。2、检查数据有效性adcData data.adcData; %对变量赋值 hasNaN any(isnan(adcData(:))) %查看是否有无效数据 hasInf any(isinf(adcData(:))) %查看是否有无穷大数据输出结果都是零说明无无效和无穷大数据。3、查看TX1-RX1的数据二维大小adcFrame adcData(:,:,1,1); %取TX1-RX1的全部数据 N_samples size(adcFrame,1) %查看第一维行数据量 N_chirps size(adcFrame,2) %查看第二维列数据量第一维128行第二维255列。4、逐列去均值adc_dc zeros(size(adcFrame)); %预分配内存 for ch 1:N_chirps %遍历1-N_chips s adcFrame(:,ch); %遍历1-255列当列行全部保留 s_mean mean(s); %求当列均值 adc_dc(:,ch) s-s_mean; %汇总去均值后新数据 end5、逐列距离维加窗FFTwin_range hamming(N_samples); %汉明窗 R zeros(size(adcFrame)); %预分配内存 for ch 1:N_chirps %遍历1-255 sig adc_dc(:,ch); %遍历adc_dc每列 sig_win sig.*win_range; %当列加窗 fft_r fft(sig_win); %当列傅里叶变换 R(:,ch) fft_r; %新列赋值给R求得距离fft后新数据 end6、逐行多普勒维加窗FFTwin_dop hamming(N_chirps); %多普勒维汉明窗 RD zeros(adcFrame); %预分配内存 for rbin 1:N_samples %遍历1-128 slow_seq R(rbin,:); %遍历每行 slow_win slow_seq.*win_dop.; %多普勒维加窗 fft_dop fft(slow_win); %多普勒维傅里叶变换 fft_dop fftshift(fft_dop); %将0移位到中心 RD(rbin,:) fft_dop; %求得多普勒维频域数据 end其中win_dop hamming(N_chirps)是创建汉明窗但是按MATLAB逻辑创建的是一列所以在多普勒加窗的时候需要进行转置即win_dop。7、参数初始化RD_abs abs(RD); %绘图观察只需要幅度信息 c 3e8; %光速 f0 77e9; %初始频率 B 0.67e9; %带宽 fc_center f0B/2; %中心频率 lambda c/fc_center; %波长 Tc 60e-6; %电磁波持续时间 deltaR c/(2*B); %距离分辨率吧 deltaV lambda/(2*N_chirps*Tc); %速度分辨率其中deltaR c/(2*B)为距离分辨率公式是光速是带宽。deltaV lambda/(2*N_chirps*Tc)为速度分辨率公式是波长是chirp个数是单个chirp持续时间。8、绘制坐标轴R_axis (0:N_samples-1)*deltaR; %距离轴 vel_axis ((0:N_chirps-1)-(N_chirps-1)/2)*deltaV; %速度轴9、绘制RD图figure; %新开画布 imagesc(vel_axis,R_axis,RD_abs); %绘制二维图 colorbar; %颜色条 xlabel(速度(m/s)); %横轴名 ylabel(距离(m)); %竖轴名 title(RD map); %标题名 grid on; %开网格imagesc(a,b,c)为绘制二维图其中a为横轴b为纵轴c为具体幅值大小其中纵轴默认为从上到下为从小到大。从图示可以看出在约10m位置有一个目标以约不足1m/s的径向速度远离。10、完整代码clc; %清空命令行 clear; %清空工作区 close all; %关闭绘图窗口 dataFile C:\Users\wfh\Desktop\毫米波雷达实测\Radar_Processing\data\000003.mat; %对文件路径赋值 whos(-file,dataFile) %查看数据 data load(dataFile); %读取数据 adcData data.adcData; %对变量赋值 hasNaN any(isnan(adcData(:))) %查看是否有无效数据 hasInf any(isinf(adcData(:))) %查看是否有无穷大数据 adcFrame adcData(:,:,1,1); %取TX1-RX1的全部数据 N_samples size(adcFrame,1) %查看第一维行数据量 N_chirps size(adcFrame,2) %查看第二维列数据量 adc_dc zeros(size(adcFrame)); %预分配内存 for ch 1:N_chirps %遍历1-N_chips s adcFrame(:,ch); %遍历1-255列当列行全部保留 s_mean mean(s); %求当列均值 adc_dc(:,ch) s-s_mean; %汇总去均值后新数据 end win_range hamming(N_samples); %距离维汉明窗 R zeros(size(adcFrame)); %预分配内存 for ch 1:N_chirps %遍历1-255 sig adc_dc(:,ch); %遍历adc_dc每列 sig_win sig.*win_range; %当列加窗 fft_r fft(sig_win); %当列傅里叶变换 R(:,ch) fft_r; %新列赋值给R求得距离fft后新数据 end win_dop hamming(N_chirps); %多普勒维汉明窗 RD zeros(size(adcFrame)); %预分配内存 for rbin 1:N_samples %遍历1-128 slow_seq R(rbin,:); %遍历每行 slow_win slow_seq.*win_dop.; %多普勒维加窗 fft_dop fft(slow_win); %多普勒维傅里叶变换 fft_dop fftshift(fft_dop); %将0移位到中心 RD(rbin,:) fft_dop; %求得多普勒维频域数据 end RD_abs abs(RD); %绘图观察只需要幅度信息 c 3e8; %光速 f0 77e9; %初始频率 B 0.67e9; %带宽 fc_center f0B/2; %中心频率 lambda c/fc_center; %波长 Tc 60e-6; %电磁波持续时间 deltaR c/(2*B) %距离分辨率吧 deltaV lambda/(2*N_chirps*Tc) %速度分辨率 R_axis (0:N_samples-1)*deltaR; %距离轴 vel_axis ((0:N_chirps-1)-(N_chirps-1)/2)*deltaV; %速度轴 figure; %新开画布 imagesc(vel_axis,R_axis,RD_abs); %绘制二维图 colorbar; %颜色条 xlabel(速度(m/s)); %横轴名 ylabel(距离(m)); %竖轴名 title(RD map); %标题名 grid on; %开网格声明个人水平有限不足之处欢迎各位老师批评指正。
企业数字化 ERP 产品动态
相关推荐
手把手教你C++——string(上) 1.为什么学习string类 文章目录1.为什么学习string类1.3 C语言中的字符串2. 标准库中的string类2.1 string类的了解2.2 string类的常用接口说明2.3 auto和范围for2.3.1 auto关键字:2.3.2 范围for1.3 C语言中的字符串
C语言中,字符串是以‘\0’结尾的一些… · 2026/11/6 7:45:32
提示词修炼手册-10-从聊天到委派 从聊天到委派:Agent时代的提示词思维转变《提示词修炼手册:从会问到会用》第10篇 | 系列共14篇
🔧 进阶篇:本篇面向使用Agent/自动化工具的读者,日常简单问答可跳过。摘要
使用AI Agent时,提示词思维需要从… · 2026/11/6 7:45:32
AI 应用被高并发打挂怎么办?七道稳定性硬核题深度解析 ✍️ 作者:王文峰(外号:神秘小峯 / 山峯)|中国国学、传统文化与代码爱好者的程序人生,期待你的关注和支持! AI 应用七道硬核题(二):缓存、限流、路由与降级 一、七题全景:AI 应用的稳定性拼图 二、硬核题 1:长上下文工程——窗口很大,但不是免费的 1. 原理:三个被… · 2026/11/6 7:45:32
老家没有查电工证怎么处理?全国通用证书怎么转? 老家没有查电工证怎么处理?全国通用证书怎么转? 之前考的证在外省能不能转过来?这个问题几乎每个跨省打工人都会遇到,特别是像你这样在老家没查电工证,但已经在外地打工的电工从业者。如果你之前考的电工证是在外省办理的,现在回到老家或者想转回老家工… · 2026/11/6 19:43:08
正定电工证在哪办理考前押题全攻略,证书过期了不知道怎么复审延期 正定电工证在哪办理考前押题全攻略,证书过期了不知道怎么复审延期 证书过期了不知道怎么复审延期?正定电工证在哪办理?很多电工从业者在遇到证书快到期的时候,才发现自己对复审流程一无所知,甚至不知道从哪里开始。尤其是低压电工证、高压电工证这些基础… · 2026/11/6 19:43:08
渭南考电工证哪里报名官方回应来了!证书过期了不知道怎么复审延期怎么办 渭南考电工证哪里报名官方回应来了!证书过期了不知道怎么复审延期怎么办 证书过期了不知道怎么复审延期,你不是一个人。在渭南,越来越多的电工从业者发现,随着特种作业证复审时间临近,很多人对“渭南考电工证哪里报名”的问题感到焦虑。尤其是那些在市政… · 2026/11/6 19:43:08
电工证号多少位数?学历不高怕报不上名?看看含金量和真实薪资 电工证号多少位数?学历不高怕报不上名?看看含金量和真实薪资 你是不是也担心学历不高,考电工证会不会被拒?别急,我来告诉你,电工证号到底多少位数,含金量到底有多高,以及你的真实薪资前景。不用文凭,只要技能,照样能拿高薪!… · 2026/11/6 19:43:08
广平电工证焊工证在哪考?实操考试心里没底怕挂科?看这篇就够了 广平电工证焊工证在哪考?实操考试心里没底怕挂科?看这篇就够了 实操考试心里没底怕挂科?这是很多在广平准备报考电工证或焊工证的小伙伴最真实的感受。尤其是对于许昌水利工程从业者来说,考到这两个证书不仅关系到个人职业发展,也直接影响能否顺利上岗。… · 2026/11/6 19:43:08
英国水电工证过期了不知道怎么复审延期?考前押题帮你稳过 英国水电工证过期了不知道怎么复审延期?考前押题帮你稳过 证书过期了不知道怎么复审延期,你不是一个人。很多持证人一忙就忘了复审时间,等想起来已经错过了有效期,甚至被单位或客户投诉。别慌,这篇文章就来帮你理清英国水电工证的复审流程,顺便分享… · 2026/11/6 19:42:08
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 10:29:23
三菱PLC数据采集到数据库的时序设计:Python+MC协议实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11
ASIC主模式RTL设计:状态机与三态驱动的流片级实现 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11
STM32嵌入式C++开发:GDB调试与Renode仿真实战指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 10:29:23