- 博客(36)
- 收藏
- 关注
原创 一种针对相干源信号DOA估计的改进MUSIC算法
本期内容是给大家带来的I-MUSIC算法,主要用于解决相干源信号的DOA估计,同时具有很强的鲁棒性能。
2024-01-05 15:02:54
2198
16
原创 DOA估计算法——迭代自适应算法(IAA)
迭代自适应法 (Iterative Adaptive Approach,IAA)估计算法最早由美国的电气工程师和数学家Robert Schmidt和Roy A. Kuc在1986年的一篇论文"Multiple Emitter Location and Signal Parameter Estimation"中首次提出了这一算法, IAA DOA 估计算法是一种用于无线通信和雷达系统中估计信号到达方向的方法,对于信号处理和通信领域具有重要意义。
2023-12-29 18:53:01
4270
9
原创 FMCW雷达仿真:基于L形阵列4D点云获取
本期内容为3D点云目标获取的延续工作,在距离、速度、方位角估计的基础上,通过设计L型阵列结构,进一步实现目标俯仰角的估计,最终实现目标4-D点云的获取。首先,通过中频信号建立仿真信号模型,并设计1发N收的L型阵列结构接收目标回波信号;通过对回波信号进行相应的信号处理,最终获得目标的4-D点云
2023-12-21 19:08:51
1413
原创 基于L型阵列的2维DOA估计
在实际的雷达目标DOA估计过程中,局限于1维DOA估计显然是不能满足现代雷达系统探测目标的要求,例如主流的4D雷达成像,不仅要估计目标的距离、速度、方位(水平)角外,还要估计目标的俯仰角,然而我们要同时获得目标的水平-俯仰向信息,在硬件层面,就需要拥有两个维度的天线。因此,本期内容通过L型阵列,并采用Music算法进行谱峰扫描实现目标的水平-俯仰向信息的估计,希望对各位读者带来帮助。
2023-12-18 19:20:29
1908
9
原创 DOA估计算法——Capon算法
在理解Capon算法之前,我们有必要先了解波束形成的基本思想以及原理到底是什么。这有助于我们更好的理解Capon算法的思想。如图1展示了均匀阵列波束导向的示意图。图中wm表示加权值,波速形成(DBF)的基本思想就是将各阵元输出进行加权求和,在一定时间内将天线阵列“导向”到一个方向上,对期望信号得到最大输出功率的导向位置,同时这个位置也表征了目标或波达方向。
2023-11-17 19:52:30
6718
4
原创 EDMA的组成及其作用简介
EDMA(Enhanced Direct Memory Access)是一种增强型的直接内存访问技术,用于高效地实现数据传输和处理。它是在传统的DMA(Direct Memory Access)基础上进行改进和扩展的。DMA是一种用于数据传输的技术,可以绕过CPU,直接在内存和外设之间进行数据传输,提高系统的数据传输效率。传统的DMA通常具有一些限制,如只能进行简单的内存到外设或外设到内存的数据传输,无法支持多通道操作和链式传输等高级功能。
2023-11-16 11:42:26
2122
原创 雷达测角原理、测角精度、测角分辨率以及3DFFT角度估计算法汇总
有关阵列信号处理DOA估计内容,可以观看本人DOA估计算法专栏,本人会不定期更新。另外,创作不易,望各位多多支持。参考资料:雷达原理(丁鹭飞版)
2023-11-14 20:20:55
11472
3
原创 雷达测速原理、分辨率、精度、速度模糊、盲速以及速度扩展算法知识汇总
距离分辨率取决于信号的频率结构,为了提高距离分辨率,信号就需要有大的带宽;而速度分辨率取决于信号的时间结构,为了提高速度分辨率,号就需要有大的时宽。但是,根据雷达模糊原理可知,我们无法在不断提高的距离分辨率的同时,提高速度分辨率,中-种分辨率的提高必然会导致另一种分辨率的衰减。我们用时宽带宽积,即时宽与带宽的乘积(TB)表示信号的距离分辨率与速度分辨率的关系。对于系统设计而言,时宽带宽积越大越好,这意味着我们在提高距离分辨率的同时,不会影响速度分辨率。如何使得时宽带宽积增大,就涉及到脉内非线性相位调制技术。
2023-11-09 12:22:27
13113
原创 雷达测距原理、精度、分辨力以及最大不模糊距离知识汇总
在一个期望的脉冲重复周期内,有M1=M2=M或M1+1=M2,只需测出两种回波信号对应的时延t1和t2(为相对于当前发射脉冲的时延),根据下面三种情况,即可求出目标的距离。在常用的脉冲雷达中, 回波信号是滞后于发射脉冲𝑡𝑅的回波脉冲。设重复频率分别为𝑓𝑟1和𝑓𝑟2(脉冲重复周期为𝑇𝑟1和𝑇𝑟2,且𝑓𝑟1𝑇𝑟2),对应的不模糊距离分别为𝑅𝑢1=𝑐2𝑓𝑟1和𝑅𝑢1=𝑐2𝑓𝑟2,并且小于期望的不模糊距离𝑅𝑢(可以认为是一定工作模式下的最大不模糊距离),对应的PRF为𝑓𝑟𝑑,𝑅𝑢=𝑐2𝑓𝑟𝑑。
2023-10-24 11:43:45
16359
3
原创 雷达仿真:FMCW DDMA-MIMO 3D点云获取方法
由于TDMA-MIMO采用不同单天线交替发射信号,没有更好的利用发射天线同时工作的发射资源,导致发射功率低以及损耗大,从而使得TDMA波形只能应用在近距离探测的低功率雷达场景。而DDMA波形则能很好的弥补TDMA上述缺点,与TDMA波形下单天线交替工作不同,DDMA波形下所有发射天线同时发射,但是每个发射天线的信号都加入一个特定的频率偏移(在速度维度体现为一个速度频移),通过这个人为偏移的频率使得不同发射天线的信号在Doppler域上分离出来。使不同发射天线的信号在Doppler域上能分离开来。
2023-09-19 13:16:14
2111
2
原创 雷达仿真:FMCW TDMA-MIMO 3D点云获取方法
2 信号建模摘要:通过设置时分复用(TDMA)波形结合FMCW毫米波雷达仿真获取目标的距离、速度和方位角3D点云信息。在本案例中,首先通过发射天线交替发射FMCW波形并通过接收天线依次接收回波信号从而得到雷达原始数据,其次对获取的原始数据依次经行距离、速度、角度估计从而输出目标的3D点云。阅读本文档,你将对TDMA-MIMO雷达的基本原理、毫米波雷达距离估计、速度估计以及角度估计的基本原理有所了解,另外CA-CFAR恒虚警以及MUSIC-DOA估计在本案例中也有所涉及。1 TDMA-MIMO原理。
2023-08-24 16:59:34
3223
4
原创 ML类CFAR检测器在不同环境中检测性能的分析
因此,在多目标环境中,当干扰目标只分布在前、后沿滑窗中的一个子窗时,SO相比于GO和CA表现出很好的检测性能,且对干扰目标强度变化很不敏感,然而CA和GO的检测性能却严重下降。WCA作为一种加权CA检测器,在多目标环境中的检测性能比其它三个都好,在高信杂比时,WCA对干扰目标的强度变化很不敏感,并且随着参考单元数的增加,WCA的检测性能也得以提高,并且于干扰目标的分布为止无关。SO具有较好的抗击干扰目标的能力,但是它在均匀杂波背景中的检测性能和杂波边缘中的虚警性能都很差;
2023-08-09 11:40:19
1160
原创 一.基于压缩感知(CS)的DOA估计方法-OMP-CS算法
综上所述,基于压缩感知DOA估计的方法归根到底就是一个压缩感知信号重构的问题,关(4)或(5)的信号重构问题有很多算法可以解决,比如我们熟知的贪婪类算法——正交匹配追踪算法(OMP)、广义正交匹配算法(GOMP)、子空间追踪算法(SP)等。2.基于压缩感知DOA估计方法与传统的MUSIC、ESPRIT子空间的方法相比,该方法对信源数(这里对应于稀疏度)的正确估计依赖不强,但需要注意只有在信源估计数量大于信源数量时依赖才不强,反之则可能直接丢失信号。感知矩阵为G,即字典矩阵。是信号的稀疏表示,它是未知的,
2023-06-12 16:55:06
6188
6
原创 2.毫米波雷达心率呼吸实时处理实例(二)
这部分内容将是我使用Matlab的AppDesigner制作的上位机软件,关于该上位机的制作的详细过程,由于篇幅问题在这里就不详细讲解了。
2023-02-14 16:23:00
8285
28
原创 SAR合成孔径雷达距离多普勒(RD)算法
2.信号回波模型1.简介距离多普勒算法(RDA)是在1976至1978年 为处理SEASATSAR数据提出来的,该算法于1978年处理出了第一幅机载SAR数字图像。RDA至今仍在广泛使用,它通过距离和方位上频域操作,达到了高效的模块化处理要求,同时又具有了一维操作的简便性。该算法根据距离和方位上的大尺度差异,在两个一维之间使用距离徙动校正(RCMC),对距离和方位都进行了近视的分离处理。由于RCMC是在距离-方位频域中实现,所以也可以进行高效的模块化处理。
2022-12-14 22:57:03
11917
7
原创 1.毫米波雷达心率、呼吸原理实现(一)实例
毫米波雷达心率、呼吸检测原理本项目分两到三篇文章写完,第一阶段借鉴TI开源项目以及根据自己的见解适当更改信号处理链通过AWR1843汽车雷达传感器和DCA1000采集卡采集数据完成人体呼吸和心跳检测算法的实现。第二阶段将仿真成功的代码搬移TIAWR1843传感器并通过串口数据实现生命体征的实时处理。本文即为第一阶段实现过程。本文首先概述毫米波雷达呼吸心跳检测的原理,紧接着概述本项目信号处理流程,另外本项目第一阶段通过matlab仿真验证算法的有效性,仿真源码可关注小编并私信可取。1.概述。
2022-10-24 21:42:35
13309
24
原创 DSS代码解读-main(十一)
本篇文章开始,SRR案例的MSS应用程序已经带大家走完了,接下来将开始对DSS应用程序讲解。我们都知道一个工程的程序入口是从main函数开始的,这篇文章将从这个mian函数开始,分代码片段带着大家理解每一行代码的目的以及含义。0.准备首先我们找到SRR案例的DSS工程,如下图所示;跳转到dss_mian.c文件,找到main函数(在该文件第366行代码处),接下来将对这个函数进行讲解;1.参数声明进入main函数,首先看到以下的代码片段,其中。
2022-10-21 21:02:07
681
原创 DSS代码解读-SRR_DSS_mmWaveTask(十三)
在上述的CFAR检测完成之后,接下来就是对探测到的目标沿着天线维度方向进行角度估计,这主要由azimuthProcessing函数完成的(在dss_data_path.c文件的第1767行),该函数执行第三维处理,包括方位角、x坐标和y坐标的计算。由于该函数的篇幅过长,在这里通过流程图总结不同子帧帧间处理的处理链。这就是完整的信号处理流程图,另外由于本人较忙,收尾写得匆忙,不免有总结不到位的地方,顺便说一句,该案例就总结到此,后续文章将不在更新这案例的相关内容,如果想看其它案例的详解,可以联系小编商议。
2022-10-21 20:57:29
933
原创 DSS代码解读-SRR_DSS_initTask(十二)
对线程参数声明完之后,紧接着就是就是对SDK组件的初始化,如果不初始化,在使用SDK的其它函数(组件)时将会发生错误,此外,初始化还有一个用处就是,获得一个控制句柄,有了这个控制句柄,在使用SDK驱动程序的组件时,才不会发生错误。中断事件注册完成后,接着就是开启邮箱驱动,使得MSS和DSS之间可以实现握手,值得注意的是,在调用相关外部函数启动邮箱前,已经调用过邮箱初始化函数了。到这里,关于DSS初始化线程已经基本解析完成,关于信号预处理的的几个函数,为了文章篇幅,在这里就不讲解了。2.4 开启邮箱驱动。
2022-10-21 20:54:59
918
原创 MSS总体流程图(十)
SRR_MSS_initTask.该任务由main创建/启动,是一次性的活动任务,其主要功能是初始化驱动程序(_init), MMWave模块(MMWave_init),打开UART和数据路径相关的驱动程序(ADCBUF),并创建/启动以下任务。该任务由SRR_MSS_initTask创建/启动,用于读取邮箱信息的,并将信息通过UART串口发送至上位机。到本文为止,关于MSS应用程序的讲解告一段落了,接下来将会对SRR例程的DSS应用程序进行讲解。
2022-10-20 20:12:47
558
原创 MSS代码解读-SRR_MSS_initTask回调函数补充(九)
注册事件函数,当从BSS接收到事件时调用。此外在该函数体中,并没有多余的相应操作(释放事件等操作),故而不做过多的解释。摘要:这篇文章主要补充讲解在SRR_MSS_initTask中注册的回调函数,接下来将会带着大家走一遍这些回调函数作用,以及在何时调用。这是注册在ADC驱动程序中的回调函数,当一个。4.mmWave config回调函数。5.mmWave strat回调函数。8.mmWave close回调函数。6.mmWave stop回调函数。3.BSS事件回调函数。sbId 子块标识符。
2022-10-20 20:11:02
267
原创 MSS代码解读-MmwDemo_mboxReadTask线程(八)
邮箱消息清除完成后,接下来就是通过switch 语句对message进行后续处理,通过判断message.type(消息类型)选择需要执行的代码块,当这个消息类型为MMWDEMO_DSS2MSS_DETOBJ_READY(DSS到MSS的消息,数据处理完成消息)时,表明message.body中存储的是数据路径处理完成的数据,开始执行对应的操作。包的结尾被填充,因此包的总长度总是32字节的倍数。元素,它是一个数组,数组的长度是MmwDemo_output_message_type_e枚举类型)。
2022-10-20 20:00:27
884
翻译 如何选择正确的chirp参数
频率调制连续波(FMCW)毫米波雷达传感器在汽车和工业应用中越来越受欢迎。这些应用程序中的系统需求和关注点可能非常不同。距离要求、距离分辨率、最大速度要求、传感器视场、数据存储、处理器MIPS等都是基于最终应用需要分析的一些方面。了解FMCW Chirp配置与系统性能参数之间的关系有助于选择正确的Chirp配置。TI公司的毫米波雷达设备(MMIC)在配置Chirp参数方面提供了很大的灵活性,也允许在单个帧中配置多个Chirp。定时参数由数字定时引擎和内置的无线电处理器精确控制,没有严重的实时软件干扰。
2022-10-15 22:18:12
3630
原创 CLI回调代码解读-SRR_MSS_CLISensorStop(七)
下图是回调函数的源码。紧接着就是通过判断全局标量gSrrMSSMCB.cfgStatus(标识符,判断mmWave FE是否完成chirp、帧配置)来检查mmWave FE是否完成了chirp、帧的配置,这一点与mmWave的启动是相同的,如果完成了,就可以通过调用MMWave_stop API来停止mmWave 传感器的运行,否之则视为无效的停止,直接退出程序,并在控制台显示相对应的错误信息,同样的如果MMWave_stop API调用异常,也会退出程序。
2022-10-15 22:04:25
238
原创 CLI回调代码解读-SRR_MSS_CLISensorStart(六)
参数定义完成后,紧接着就是通过判断全局变量gSrrMSSMCB.runningStatus(这是一个用于标识mmWave是否启动的bool类型的标识符号)的状态(true or false)来检查此时mmWave 传感器是否已经开始工作,如果开始工作则不需要重复开始,直接退出程序。摘要:我们知道,在我们完成BSS chirp 配置后,接下来我们就是需要传感器开始工作,传感器的启动是通过CLI命令调用回调函数SRR_MSS_CLISensorStart完成的,本文将针对这个回调函数进行相应的解析。
2022-09-02 21:18:46
681
原创 CLI回调代码解读-SRR_MSS_CLIAdvancedFrameCfg(五)
像配置profile文件一样,定义chirp配置同样是在一个for循坏中,总共循坏NUM_CHIRP_PROG=4次,第一次循环定义了第一个子帧的前64个快chirp,第二次循坏定义了第一个子帧的后64个慢chirp,第三次循坏定义了第二个子帧的第一个chirp,第四次循坏定义了第二个子帧的第二个chirp,要想形成demo发射的一个帧,只需要在高级帧配置中,第一个子帧循坏一次,第二个子帧循坏32次,就可以形成一个完整的帧,如下图表示;在chirp定义好之后,接下来就是高级帧配置部分,代码如下;...
2022-08-13 09:29:43
386
原创 CLI回调代码解读-SRR_MSS_CLIBasicCfg(四)
将profile文件配置好之后,这时就需要将这个配置文件关联chirp,被关联的chirp包含profile的所有配置信息,但是在chirp配置部分,可以对profile中的部分信息进行微调,chirp配置的代码片段如下。在打开mmWave模块后,接下来就是对profile文件进行配置,profile的配置相当于给chirp提供了一个模板,在稍后的chirp配置中需要与这个profile文件进行关联,用来生成相对应的chirp,理论上最多只能定义4个profile文件。2.open mmWave模块。...
2022-08-10 09:44:03
444
原创 MSS代码解读-SRR_MSS_CLIInit(三)
通俗来说其实就是在MSS也用程序中创建类似于CMD命令提示符的终端程序,并定义有自己的命令代码用于计算机控制传感器的配置、开始、结束等操作,值得注意的是这个CLI是由SDK软件包提供的任务线程,虽然MSS应用程序最终运行在这个CLI线程中,但是我们在前边定义一个MMWave_execute任务线程拥有更高的优先级,所以当BSS运行出现任何异常事件时,都会优先执行MMWave_execute任务线程而先暂停运行CLI线程。相关的回调函数将会在后续文章中讲解。............
2022-08-04 11:34:15
898
原创 MSS代码解读-SRR_MSS_initTask(二)
摘要:这篇博文衔接上一篇博文(main),在上一篇博文中创建了一个线程函数SRR_MSS_initTask,这时程序执行将会进入到SRR_MSS_initTask中,在这篇博文中将会对SRR_MSS_initTask函数分片段来描述它的作用,同样的并会对一些函数作用进行描述。这个函数的声明在 mms工程mss_main文件下的第112行,读者可以在main函数中在创建线程函数SRR_MSS_initTask的地方按住 Ctrl + 鼠标左键 跳转到SRR_MSS_initTask函数。SRR_MSS_ini
2022-07-11 17:06:19
1083
1
转载 信号处理-Chirp-Z变换
摘要:本篇文章是借鉴学习其它博主CZT算法的总结,相关来源已经附在文末的参考资料一栏中。Chirp Z变换也叫CZT变换或线性调频变换。Chirp-Z变换(CZT)是离散傅里叶变换(DFT)的一般化。具体来说,设信号长度为N,DFT相当于在Z平面单位圆上N等分的采样,而CZT可以沿着任意满足的螺线进行采样,而M不必等于N。取 则为对单位圆进行M等分的采样。在下文中,我们仅讨论使用CZT在单位圆上采样的情况,因为这样有着更清晰的频率意义。CZT可以用来对频率进行更密集的采样,这让离散频谱逼近连续频谱。如下图所
2022-07-09 16:31:50
4701
1
原创 AWR1642 SRR 案例MSS代码解读-main(一)
摘要:在这篇博文中,将会对demo的主函数分片段来描述它的作用,并且会对一些函数作用进行描述。主程序是案例代码的入口,进入主程序,我们会先看到定义三个变量参数,为了方便表述,下面将用参数一,二,三来表述;1)参数一是用于创建线程的线程参数,且是一个结构体,它与创建线程函数是密不可分的(如下中展示的创建线程函数就用到该参数作为它的输入参数)作用用于设置线程函数的优先级等;关于线程的相关知识可以参考操作系统指南。2)参数二是一个整数型的错误参数,它主要用来标识在整个main函数中程序出现错误时的类型,不同的返回
2022-07-08 10:17:05
1159
1
原创 专栏阅读须知
本专栏主要目的是带着感兴趣TI毫米波雷达的同学一起学习毫米波雷达的开发,从TI 提供的开源案例(SRR demo)出发,逐行带领各位同学看懂案例源代码,更快的投入到TI 毫米波开发中去。以下是本栏的一些通知。......
2022-07-07 11:41:53
526
2
原创 Getting Start --TI AWR1642 近程雷达(SRR)案例理论设计
在近程应用中,AWR1642传感器配置为多模雷达,可以跟踪距离高达80米的目标,以及生成20米 内的丰富点云目标,可以同时探测到接近的车辆和更近的小目标。SRR设计有两组规格,因为雷达被用作多模雷达。 第一种规格是用于近程雷达(SRR),其射程为80米。 第二个规格是超短程雷达(USRR),它的有效距离只有20米。SRR设计上位机(PC)与毫米波雷达(AWR1642,TI)交互的简易设计框图如下图所示; SRR demo使用四个接收器和两个发射器配置两种不同的chirp。 第一种配置(SRR)使用简单的非多
2022-07-07 11:07:15
2904
1
原创 实战:FMCW原始数据处理——CFAR+1DFFT(Range)
目录一、数据采集参数二、CFAR+1DFFT matlab源码三、程序运行结果本篇文章主要讲解xWr1xx+DCA1000采集的原始数据如何进行距离FFT,以及如何通过CFAR(恒虚警)技术检测的存在。这里所用的恒虚警采用最简单的CA-CFAR均值类恒虚警算法。在这里将给出恒虚+1DFFT的matlab程序。在这里不重复CFAR的理论知识部分,望各位如果需要了解有关CFAR的基础知识可以借鉴一、数据采集参数mmwave studio 参数配置如下(采集原始数据配置):在这里我配置
2022-04-05 21:57:58
7255
3
原创 xWR1x+DCA1000原始数据的Matlab程序解读
本篇文章主要讲解如何将DCA1000采集的原始bin文件再matlab中解读出来,从而方便后续的数据处理,例如距离FFT、2D FFT等处理。在讲解之前,默认各位已经掌握了利用xWr1xxx mmWave +DCA1000通过mmWave studio采集原始数据,在本篇文章中不过多讲解,如果对与上述测数据的操作尚有不解可以参照此文档,mmWave_studio_user。一、xWR1xx With DCA1000 Data Format要看深入理解原始数据通过matlab解读出来,清楚原始数据的输
2022-03-30 19:40:34
5169
8
原创 mmWave Radar AWR1843硬件组成认识
大家好,今天我写这篇文章主要介绍mmWave Radar AWR1843 boost 开发板的硬件组成部分,以帮助各位学习该模块的友友们对1843有一定的了解,更快的进入硬件的开发中。接下来我将基于TI AWR1843来讲解此开发板的硬件组成。AWR1843 IntroductionAWR1843是TI推出的一款能够在76至81GHZ频带中运行的集成单芯片FMCW雷达传感器,它集成了DSP子系统,该子系统包含TI用于雷达信号处理的高性能C674x DSP。该器件包含一个 BIST 处理器子系统,该子
2022-03-18 18:12:57
4077
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人