TI毫米波雷达(五)—— chirp
概述
在线性调频连续波(LFMCW)雷达中,发送的信号是频率随着时间线性改变的单音信号,这种频率扫描即为“chirp”。为了满足探测距离、距离分辨率、目标速度、视场角等系统要求,需要雷达发送合适的chirp。
TI毫米波雷达的chirp周期包含空闲时间、启动时间、发送和采样等过程,一系列chirp加上帧间隔组成了帧。
参考
《Programming Chirp Parameters in TI Radar devices》
《mmwave sdk user guide》
系统性能和chirp参数
实际的系统性能与很多方面有关,比如雷达硬件、天线设计、处理的算法等。单纯的分析chirp参数的影响,类似于分析系统在“理想”状况下的表现。
探测距离
最大探测距离与毫米波雷达的最大中频带宽和chirp斜率有关。
IFmax —— 最大中频带宽
c —— 光速
S —— chirp斜率
最大中频带宽通常在数据手册中可以找到,chirp斜率则是一个可配置的参数。
尽管通过chirp的斜率配置我们可以获取超远的探测距离,但是现实中是不可实现的,因为电磁波在空气中的传播会有衰减。当信号衰减到一定程度后将无法被检测出来,我们用接收信噪比(SNR——接收信号与噪声的比)来衡量信号的可检测性。SNR的影响因素很多:
- 雷达的射频性能——发送功率、接收机噪声系数、帧内chirp持续时间和数量等
- 天线参数——增益
- 目标参数——RCS
- 算法——目标检测需要的最小SNR
最大探测距离与SNR间的关系见下面的公式,很明显在其他条件不变的情况下,增加chirp的时长或数量可以增大SNR。
Pt——发射功率
—— 收发天线增益
—— 目标RCS
N —— chirp数量
Tr —— chirp时长
NF —— 接收机噪声系数
SNRdet —— 算法检测目标需要的最小信噪比
k —— Blotzman常数
Tdet —— 环境温度
距离分辨率
距离分辨率是在目标检测中可以将两个目标分别开的最小距离,小于此距离的多个目标通常会被识别为一个目标。此系统参数与chirp扫描带宽有关。
c —— 光速
B —— chirp扫描带宽
更好的分辨率也意味着可以检测到更小的最小距离。
探测速度
最大非模糊速度与chirp的周期(包含空闲+chirp)有关。
Tc —— chirp总时长,包含chirp时间和空闲时间
—— 信号的波长
速度分辨率
良好的速度分辨率可以分离出速度差异较小的物体。速度分辨率主要取决于传输帧的持续时间,也就是说,增加帧中的chirp数量可以提高速度分辨率。
Nc —— 帧内chirp数量
角度范围
为了在2D空间中定位对象,除了目标距离外还需要目标的角度。在雷达系统中,通过使用间隔距离为d的多个接收器接收来自物体的反射信号来估计角度。到达每个连续接收器的信号被延迟d*sinθ,这种“延迟”导致相移。每个接收器之间的相移用于估计物体的角度θ。
最大非模糊角度范围取决于波长和接收天线间的距离:
d —— 接收天线间距
—— 波长
当接收天线间距为λ/2时,理论最大非模糊角度范围可达±90°。
角度分辨率
角度分辨率可以帮助我们分辨出不同方位角的目标。天线数量越多,则角度分辨率越高。当同时存在多个接收天线和多个发射天线时,即为MIMO。拥有N个接收天线和M个发送天线的天线阵列,可以组成NxM个虚拟天线,而非N+M个。
θ —— 目标所在方位角
—— 接收天线数量
—— 发射天线数量
这里出现了cosθ,预示着针对不同方位的目标角度分辨率是不同的。很明显,正对着的目标对应着最高角度分辨率,在4收3发系统中约为10°。
典型应用中的chirp配置
配置chirp
弄清楚了chirp参数与系统性能的大致关系后,就要通过配置chirp来验证效果了。
配置概述
TI的毫米波雷达可以通过定义chirp配置文件来控制一帧中的chirp参数,而且可以在chirp RAM中修改这些配置文件。Chirp配置文件可以作为基础的chirp时序模板,用来生成参数各异的chirp。TI的毫米波雷达可以接收四个不同的chirp配置文件,但是chirp可配置RAM中可以预编程512个独特的chirp。每个chirp都可以引用四个配置文件之一,然后按需要进行细调。
一个帧由chirp可配置RAM中起始索引到结束索引间的chirp序列组成,最大可循环255次。
在每个配置文件中,可以配置:
- (Start Frequency)起始频率
- (Frequency Slope)调频斜率
- (Idle time)空闲时间
- (ADC start time)ADC采样起始时间
- (Ramp end time)调频结束时间
结合下图可以更好的理解这当中的概念。
Chirp可配置RAM中保存的是基于配置文件(通过索引来指定基于哪个配置文件)的变动:
- Start Frequency variable(起始频率变量)
- Frequency slope variable(调频斜率变量)
- Idle time variable(空闲时间变量)
- ADC start time variable(ADC采样起始时间变量)
关键参数
在配置一个chirp时,如下参数需要考量。
Idle Time
空闲时间取决于频率合成器需要多久下降到下一个chirp的起始频率并恢复稳定。下表可以在ADC采样率≥5Mbps时做参考。ADC采样率低于5Mbps时因为Σ-Δ ADC特性需要稍长的延时。建议使用Radar Studio tool —— chirp parameter configuration calculator来计算。
ADC Start Time
此参数没有硬性规定的最小值,需要综合考虑一些因素。例如chirp的信号质量、期望目标的最大往返时间、chirp间隙等。建议使用计算器chirp parameter configuration calculator来计算。
Ramp End Time
此时间应该包含ADC采样起始时间、ADC采样时间、额外的斜坡时间,对额外的斜坡时间没有硬性要求。同样需要综合考虑一些因素,例如信号稳定性、低通滤波器延迟等。建议使用计算器chirp parameter configuration calculator来计算。
Chirp基本编程顺序
典型的chirp配置顺序如下图所示。
Device manager APIs
rlDevicePowerOn() 初始化驱动程序并为驱动程序进行必要的资源分配。
DeviceFileDownload() 将二进制文件从主机下载到雷达设备的内部RAM。此文件可以是固件补丁文件、应用程序代码、校准数据或配置数据。
rlDeviceRfStart() 初始化雷达设备中的RF(BIST)子系统,用户应用程序在调用任何雷达传感器控制API之前应等待此事件。
Radar RF control APIs
rlSetChannelConfig() 配置要使用的TX天线的数量(3个天线中的一个)和RX天线的数量。它还允许选择他们是以独立模式还是级联模式使用传感器。
rlSetAdcOutConfig() 配置每个样本的位数(12/14/16)。它还允许选择ADC数据是仅为实数、复数-1x还是复数-2x。
rlSetLowPowerModeConfig() 设置低功耗ADC模式以实现节能。在此模式下,最大ADC采样率受到限制。
rlSetProfileConfig() 配置chirp“配置文件”。
rlSetChirpConfig() 配置chirp。
rlSetFrameConfig() 选择形成帧的chirp序列、需要传输的帧的数量以及帧的周期性。
Data Control APIs
数据控制API允许配置需要传输的ADC数据和高速接口(LVDS/CSI)配置。与ADC数据一起,还可以传输与chirp和chirp参数的质量相关的一些附加信息(分别称为CQ(chirp quality)和CP(chirp parameter))。LVDS/CSI配置、通道配置等可以使用这些API完成。有关这些API和参数的详细信息,请参阅“毫米波雷达接口控制文档”(DFP包的一部分)。
Frame Trigger APIs
一旦配置了啁啾和帧,就可以通过软件API或使用数字SYNC_IN信号触发的硬件来触发它们。触发帧的软件API是rlSensorStart()。
Chirp配置命令
在之前的学习中,分析命令行配置文件时发现out of box示例中对有些指令未做处理。
TI毫米波雷达(三)—— out of box示例解析(二)
现在我们结合《mmwave sdk user guide》来看看其中的几个指令。
profileCfg
向RadarSS和数据路径发送配置文件配置消息。
序号 | 参数 | 说明 |
1 | profileId 配置文件标识符 | 传统帧模式(defOutputMode=1)支持所有允许值,但仅有一个配置文件会生效 高级帧模式(defOutputMode=3)支持所有值,一个子帧仅有一个配置生效,但不同子帧可以使用不同配置 |
2 | startFreq 起始频率,单位GHz,支持小数 | doxgen和数据手册中支持的任意值 |
3 | idleTime 空闲时间,单位us,支持小数 | doxgen和数据手册中支持的任意值 |
4 | adcStartTime ADC有效起始时间,单位us,支持小数 | doxgen和数据手册中支持的任意值 |
5 | rampEndTime 斜坡结束时间,单位us,支持小数 | doxgen和数据手册中支持的任意值 |
6 | txOutPower 发送天线的发送功率回馈代码 | 仅“0”值在毫米波示例中被测试过 |
7 | txPhaseShifter 发送天线的发送相移 | 仅“0”值在毫米波示例中被测试过 |
8 | freqSlopeConst 频率斜率,单位MHz/us,支持小数 | doxgen和数据手册中支持的任意大于0的值 |
9 | txStartTime 发送起始时间,单位us,支持小数 | doxgen和数据手册中支持的任意值 |
10 | numAdcSample ADC采样阶段采样的点数 | doxgen和数据手册中支持的任意值 |
11 | digOutSampleRate ADC采样率,单位ksps | numAdcSamples / digOutSampleRate = ADC采样时间 doxgen和数据手册中支持的任意值 |
12 | hpfCornerFreq1 高通滤波器1频率拐点 0 - 175 KHz 1 - 235 KHz 2 - 350 KHz 3 - 700 KHz | doxgen和数据手册中支持的任意值 |
13 | hpfCornerFreq2 高通滤波器2频率拐点 0 - 350 KHz 1 - 700 KHz 2 - 1.4 MHz 3 - 2.8 MHz | doxgen和数据手册中支持的任意值 |
14 | rxGain 射频增益和接收增益 | doxgen和数据手册中支持的任意值 |
chirpCfg
向RadarSS和数据路径发送Chirp配置消息。
序号 | 参数 | 说明 |
1 | chirp start index | doxgen和数据手册中支持的任意值 |
2 | chirp end index | doxgen和数据手册中支持的任意值 |
3 | profile identifier | 与profileCfg中的profileId匹配 |
4 | start frequency variation in Hz 支持小数 | 示例中仅测试了“0”值 |
5 | frequency slope variation in kHz/us 支持小数 | 示例中仅测试了“0”值 |
6 | idle time variation in us 支持小数 | 示例中仅测试了“0”值 |
7 | ADC start time variation in us 支持小数 | 示例中仅测试了“0”值 |
8 | tx antenna enable mask | 详见“ChannelCfg” 单个chirp仅能使用一个发射天线 |
frameCfg
向RadarSS和数据路径发送帧配置消息。要使用此命令,应将dfeOutputMode设置为1。
序号 | 参数 | 说明 |
1 | chirp start index 0-511 | |
2 | chirp end index chirp start index-511 | |
3 | number of loops 1-255 | mmwavelink doxgen/数据手册允许的任何值,必须大于或等于4。 对于使用DSP版本的多普勒DPU的xwr16xx/xwr68xx演示,由于窗口要求,多普勒chirp(即环路数量)应为4的倍数。如果多普勒chirp数需要值2,则必须更新演示/对象检测DPC源代码,以使用多普勒DPU的矩形窗口而不是汉宁窗口。 |
4 | number of frames 0-65535 | 0表示无限 |
5 | frame periodicity in ms 支持小数 | 帧的占空比不应超过50%(即活动chirp时间应≤帧周期的50%)。此外,它应该为选定的UART输出留出足够的时间(基于guiMonitor命令的选择),用户可以使用统计TLV的输出来调整此参数。 |
6 | trigger select 1 - 软件触发 2 - 硬件触发 | 仅支持软件触发 |
7 | Frame trigger delay 单位ms,支持小数 |
advFrameCfg
向RadarSS和数据路径发送高级配置消息,要使用此命令,应将dfeOutputMode设置为3。
序号 | 参数 | 说明 |
1 | numOfSubFrames 子帧数量 | |
2 | forceProfile 强制配置 | 仅支持0 |
3 | numFrames 要发送的帧数 | |
4 | triggerSelect 1 - 软件触发 2 - 硬件触发 | 仅支持软件触发 |
5 | frameTrigDelay 帧触发延时,单位ms,支持小数 |
总结
完成了chirp配置的分析后就可以着手验证不同配置的效果,通过不断的设计和验证来积累实际的经验,系统设计时也就可以做到快速和准确。
原文地址:https://blog.csdn.net/slyywd/article/details/143687660
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!