TI 毫米波雷达开发内容拆解分析

TI 毫米波雷达开发内容拆解分析

  • 概述
  • 1. 器件选型
    • 能力栈
    • 参考资料及工具
  • 2. 方案可行性快速评估
    • 雷达系统的本质功能
    • 影响雷达系统检测效果的因素
    • mmWave studio 和 Visualizer的区别
    • 能力栈
    • 工具
  • 3. 算法优化与仿真验证
    • 能力栈
    • 工具
  • 4. 软件开发
    • 能力栈
    • 工具
  • 5. 硬件开发
    • 能力栈
    • 工具
  • 6. 不定期更新

概述

TI 毫米波雷达开发里面设计到众多要解决的问题,很多刚刚入坑的小伙伴会觉得庞大而无从下手,在这里做一下梳理。在TI毫米波雷达开发过程中可能会部分遇到以下场景,各种场景的资料及工具、对应的知识技能要求在各个节点下面附上:

1. 器件选型

这个问题一般是在项目启动前,要对市面上现存的雷达芯片进行器件选型,在合理评估项目需求、经费、器件性能的基础上选出一款最合理的器件。一般在公司官方网站的产品里面能够找到,这里我们只涉及TI的雷达芯片。

能力栈

这部分需要的是一些综合的能力,要有能力站在项目的未启动节点就看到项目的最终形态,需要考虑器件的配置、售价、稳定性、货源等综合信息评估决定。

参考资料及工具

TI雷达芯片的软件和硬件概述在TI毫米波雷达软硬件概述 这篇文章中有大概介绍,TI的器件选型工具在TI毫米波雷达器件选型工具中可以找到。
TI 毫米波雷达开发内容拆解分析_第1张图片
TI毫米波雷达器件选型工具能够帮助我们完成基础条件的筛选,但是各个项目的需求之间差别很大,详细评估还是要结合器件数据手册、软件SDK 等各种综合因素进行,器件的DataSheet中包含了器件最详细的介绍,以AWR6843为例,在TI官网直接搜索AWR6843就能够看到对应器件的数据手册(DataSheet)。
TI 毫米波雷达开发内容拆解分析_第2张图片

2. 方案可行性快速评估

在确定要用的器件之后,一般情况下要进行方案的可行性评估,器件评估的结果只能提供大概的方向,但是不能保证选定的器件是否能够真正满足需求,器件的性能受各种环境因素干扰,不能完全保证选型的器件能够满足业务需求。

举个例子,某个项目中要求雷达距离分辨率为12cm,经过计算和器件选型后,某个型号的雷达芯片距离分辨率能够达到10cm(留一点裕量),但受应用场景的干扰、目标属性等影响,可能在实际的测试中,两个距离15cm的目标都被识别成一个物体了。
另外就是一些雷达商家产品的性能有可能虚标,或者测试环境不一样导致性能下降。

俗话说”是骡子是马,拉出来溜溜“,解决上述问题的办法就是把雷达芯片拿到真实或者模拟的场景中实际去测试,看看在实际场景中雷达的性能表现能否满足需求。为此,TI为每颗雷达芯片提供了开发板,通常的命名方式是 芯片名称+Boost(下图以AWR1642 Boost)为例。
使用TI提供的开发板能够免去基于芯片的硬件设计的环节,
TI 毫米波雷达开发内容拆解分析_第3张图片
对于一些典型的应用方向,TI提供Demo例程和配套的可视化软件Visualizer ,Demo例程直接下载到评估板上就可以看到最终的结果,简单粗暴,用户可以在此基础上进行一些定制化的开发和优化,加快产品开发进程。

TI提供的另一个方案快速评估工具是mmWave Studio,在展开说mmWave studio 之前,我们先引入一些需要的基本知识,这部分涉及到一部分基础知识,需要一点耐心。

雷达系统的本质功能

所有雷达系统都只有一个核心的功能——检测(速度、距离、角度).,这应该也是TI将毫米波雷达芯片归类为Sensor 的原因之一。

影响雷达系统检测效果的因素

既然所有雷达的终极目标是为了实现检测功能,那就看看哪些因素会影响雷达系统的检测效果。这里我们先来看看毫米波雷达系统的基本结构,我们以IWR1642为例,整个系统由三部分组成:

  1. 天线系统 ;
  2. 雷达前端,主要是除天线外的雷达收发系统,也就是射频和模拟部分;
  3. 计算系统。
    以上这三个部分就是影响雷达系统检测性能的三大组件。

天线系统受限于板载天线硬件已经无法更改且本人非射频方向这里不予讨论。

雷达收发系统由锁相环、混频器、低噪声放大器、滤波等部分组成,对于LFMCW体制雷达,其发射的线性调频信号的参数(如 带宽、扫频斜率、扫频次数)等诸多因素共同影响雷达的距离分辨率、速度分辨率等检测性能指标。

计算系统中主要影响雷达检测性能的是算法。算法运行在DSP中,算法的原理、参数直接影响到雷达最终的检测结果。拿常见的PID算法为例,PID参数调不好就会引起震荡等现象,只不过雷达系统中跑的是参数更多、更加复杂的算法。
TI 毫米波雷达开发内容拆解分析_第4张图片
所以 雷达前端是影响雷达系统检测效果的重要原因之一。不同的应用中雷达线性调频波的参数、工作方式、雷达手法机参数都不尽相同,所以合理设计雷达波形和雷达子系统参数也是评估雷达方案的工作内容之一,使用mmWave Studio + DCA1000数据捕获板快速评估。
评估的过程就是使用mmWave Studio设置雷达前端发射机和接收机参数。这些参数都是和雷达射频部分相关的,如果不明白这些参数各自的意义以及存在的理由,需要补充雷达系统结构基础知识,但是可以有个笼统的概念就是在雷达前端里面有很多部件组成,可以通过mmWave Studio 软件设置这些不同的部件的工作方式。不同的配置选项卡就对应不同的部件,如下图所示,其他的配置都是这样的。
TI 毫米波雷达开发内容拆解分析_第5张图片
下图是配置Chirp 波形的页面,Chirp 的参数可以在这里调整,然后最终影响雷达的探测范围、精度等内容。
TI 毫米波雷达开发内容拆解分析_第6张图片
参数调整的结果会在下面的图中显示出来,这个图包含的信息非常多,最主要是看左上角的RDM(距离-多普勒)图,这是雷达原始数据的图,目标、噪声、干扰都会在里面体现,调整一次参数和实验环境,就看一次结果,目标明显的话很容易在RDM图中看出来。
TI 毫米波雷达开发内容拆解分析_第7张图片

mmWave studio 和 Visualizer的区别

有很多初学者不理解Visualizer 和 mmWave Studio 的区别是什么,可能是这两个软件张的比较像。
拿雷达信号处理流程来说,要经过下面图这么多流程。
TI 毫米波雷达开发内容拆解分析_第8张图片
mmWave Studio 可以控制BSS 雷达前端的工作,设置里面各个部件的工作参数。同时可以记录和导出 Radar Data ,查看 1d FFT 结果 、 查看2D FFT 结果 ,如下图红色箭头所示,箭头方向代表数据流向。

TI 毫米波雷达开发内容拆解分析_第9张图片

而 Visualizer 只是一个显示最终结果的GUI,每个Demo都会有自己的输出,一般是最终计算的结果,由MSS通过串口输出,由于输出的数据不好观察,做了一个GUI进行协议解析和图形化页面展示。类似于你做用单片机+陀螺仪做了一个角度传感器+距离+速度传感器,用串口把数据输出了,本来你是在串口调试助手里面看的,但是数据跳的太快不方便,就做了一个GUI程序,让这个程序显示数据,看起来更加直观,类似下图这样,但本质还是接收并显示串口数据。
TI 毫米波雷达开发内容拆解分析_第10张图片
所以Visualizer 只能查看红色箭头的数据,Visualizer 跟具体的Demo 强绑定,不具备强通用性。所以会有很多Visualizer。
TI 毫米波雷达开发内容拆解分析_第11张图片

能力栈

在这一部分需要有基本的雷达软件、Boost开发板的操作能力,相关文档的阅读能力,对雷达系统结构、检测原理、检测能力等内容有一定的认识,会看RDM图。能够自主设计实验环境,清楚控制变量,明确哪些数据有效等。

工具

  1. TI Chirp 设计工具 ,在Chirp 设计的时候需要满足很多的约束条件,各个参数之间会相互影响,TI推出了Chirp计算工具帮助快速设计Chirp,包括基础Chirp 参数设计、高级Chirp参数设计、功耗等参数的计算。在进行Chirp设计的时候可以使用该工具设计,设计好的参数直接填到mmWave Studio 中进行验证。
    TI 毫米波雷达开发内容拆解分析_第12张图片

  2. DCA1000 + mmWave Studio 基本使用方法可以参考下面这个视频,更多高级的玩儿法可以参考mmWave Studio 用户使用说明手册。

AWR1642+DCA1000数据捕获参数设置步骤演示&使用经验&技巧

3. 算法优化与仿真验证

这部分内容会包含一些雷达信号处理常用的通用算法和针对特殊应用的特定算法。常见的通用算法有:最基本的1D-FFT 、 2D-FFT 、 3D-FFT 、GOA、CFAR 、聚类等。针对特殊应用的算法如在车载领域前方目标识别与跟踪中会用到中国剩余定理、Kalman 滤波器等算法。综合起来看,以雷达算法为中心的工作可以围绕以下四点展开:

  1. 算法创新
    这个要求比较高,提出一种能够带来良好性能表现的算法验证。
  2. 算法优化
    在现有算法的基础上提出一种改进算法,并验证算法性能在当前应用场景优于其他算法。比如典型的CFAR算法就有许多改进型算法。
  3. 算法复现与验证
    对论文中看到的算法进行复现并证明在目前的课题中行之有效。
  4. 算法应用
    前3点内容大多在Matlab中进行。,指把算法用C语言复现,并整合到雷达芯片程序中运行。
    雷达算法是个很重要和关键的因素,受芯片算力影响,基本上芯片内部跑的是传统算法,对于神经网络这类需要强算力平台的现在还没办法运行。

能力栈

需要一些数学功底和一些数字信号处理方面的基础知识,有雷达算法知识、有matlab基本编程的能力,

工具

这一部分的工具主要是使用Matlab进行算法的编程、性能的评估。

TI 的SDK中提供了很多雷达用到的基础算法、DSP Lib 和 Math Lib 中有很多基础的复数运算实现可供直接调用。在算法应用阶段会有用。

4. 软件开发

这里的软件开发特指使用 CCS IDE 对雷达芯片进行特定应用程序的开发。
TI 毫米波雷达开发内容拆解分析_第13张图片

能力栈

需要的核心技能是嵌入式软件开发能力,最好有单片机开发经历和RTOS/操作系统/Linux/Linux驱动/编译原理(这个不需要太深)等基本知识,由于是比较大型的嵌入式应用程序开发,还要有代码编程规范、基本数据结构、设计模式、程序框架等编程思想和代码风格,这样不仅能够更快、更好的理解程序,而且能够写出相对规范和易于维护的代码。

工具

CCS 、 UniFlash 、Visuallizer 、ToolBox 、Datasheet 、Application Guide、 雷达SDK、DSP lib、math lib。

5. 硬件开发

指不在使用TI官方提供的Boost EVM 评估板,使用TI毫米波雷达芯片开发特定应用和功能的硬件板卡的开发,TI的板卡中集成了众多的调试功能用于测试和快速评估,但是对于实际的应用却是冗余设计,不仅会导致成本上升,还有可能在应用过程中引入诸多不稳定因素。举个32开发类似的例子,在前期阶段,为了快速验证各个功能的正常性,会先搞一块别人设计好的功能全的32开发板,进行软件的快速迭代。软件功能没问题之后,根据必要的功能直接设计自己的32板卡就ok。
TI 毫米波雷达开发内容拆解分析_第14张图片

能力栈

具备基本数模电基础知识。有AD使用经历,对4-6层板开发有基本原理图、Layout 设计能力。根据功能可能设计高速信号处理,对基本的电磁干扰、等长走线、阻抗等知识有基础。

工具

AD
TI 官方提供的硬件设计资料,不同的板卡涉及不同的硬件资料,在TI 官方网站搜索对应的板卡这里以AWR1843为例,在设计文件中TI 提供了详细的硬件设计指南,可以根据各自的型号自行下载。 里面提供了详细的原理图 、PCB 、Gerber 、网表等文件用于快速硬件设计。
TI 毫米波雷达开发内容拆解分析_第15张图片

6. 不定期更新

你可能感兴趣的:(毫米波雷达,毫米波雷达,雷达开发)