4. 雷达校准基础与Jacinto校准框架
雷达模组从产线下来时,天线相位中心、射频链路时延、混频器非线性、天线罩折射都会带来系统性偏差。如果不做校准,同一目标在不同模组上会呈现不同的距离、速度和角度读数,FMCW雷达的测距测速测角精度就无从谈起。校准的本质,是在已知参考条件下测量这些偏差,把补偿量写入非易失存储,让每颗芯片在运行时都能"还原"出真实的目标参数。Jacinto TDA4x/AM6xA系列在硬件上提供了雷达子系统(RSS)与DSP、MCU的协同通路,SDK则通过一组校准API和数据结构把这一过程标准化。
误差来源与校准目的
雷达误差可粗分为三类。第一类是射频通道误差:各TX/RX通道的增益不一致、相位不一致、I/Q失衡,以及混频器引入的直流偏置。这类误差直接破坏角度估计,因为角度依赖通道间相位差。第二类是时钟与采样误差:本振扫频非线性、ADC采样时钟抖动、帧间起始时间不确定,它们表现为距离谱展宽和速度模糊。第三类是装配与传播误差:天线阵元位置偏差、天线罩引入的相位斜坡、PCB走线时延差异。
校准的目的不是消除所有误差,而是把可重复的系统性误差建模成参数并补偿,使残余误差落在系统指标内。典型量产指标要求距离偏差小于0.1 m、速度偏差小于0.1 m/s、角度偏差小于0.5°(示例指标,具体以项目规格为准)。
距离、速度、角度校准原理
距离校准基于FMCW测距公式 R = c·fbeat·Tc/(2·B)。在已知距离Rref放置角反射器,测得拍频fbeat,反推实际斜率与理想斜率的比例因子kr,以及固定时延偏移τ0。补偿时对每个chirp的采样序列做相位斜坡修正,或直接在距离FFT后对bin索引做线性映射。
速度校准依赖多普勒关系 v = λ·fd/2。用转台或已知速度目标测量多普勒频率,得到速度比例因子kv。速度误差主要来自本振频率偏差和帧周期抖动,因此速度校准常与时钟校准联合进行。
角度校准最复杂。对于均匀线阵,角度θ与相邻阵元相位差Δφ满足 Δφ = 2π·d·sinθ/λ。通道间固有的相位偏移φi会直接叠加到Δφ上,导致角度偏移。校准方法是在暗室中让角反射器位于已知角度(如0°、±30°、±60°),记录各通道复响应,解出每个通道的相位和幅度补偿系数。Jacinto的校准框架把这类系数组织成每通道的复数补偿向量。
Jacinto SDK中的校准API与数据管理
Jacinto SDK(以RTOS/PDK与雷达SDK为例)把校准拆成"离线标定"和"在线补偿"两段。离线阶段由PC工具或MCU程序驱动,调用采集API获取原始数据;在线阶段由DSP在每帧处理时读取校准表并应用。
核心API通常包括:RfCalib_init()初始化校准模块并加载默认参数;RfCalib_captureRaw()触发一次校准采集,返回各通道的复数样本;RfCalib_estimate()根据采集数据与参考条件计算补偿系数;RfCalib_save()把结果写入NVM;RfCalib_load()在启动时读取;RfCalib_apply()在信号链中执行补偿。不同SDK版本函数名可能略有差异,但职责划分一致。
校准数据通常组织为一个结构体,包含版本号、CRC、距离校准系数、速度校准系数、每通道的幅度和相位补偿数组。下面是一个示例结构(字段为教学示例,非实际SDK头文件):
typedef struct {
uint32_t magic; // 标识,如 0x52414441
uint16_t version; // 校准数据版本
uint16_t numRx; // RX 通道数
uint16_t numTx; // TX 通道数
float rangeScale; // 距离比例因子 k_r
float rangeOffset; // 距离偏移 τ_0 对应补偿
float speedScale; // 速度比例因子 k_v
float rxAmp[8]; // 各 RX 幅度补偿
float rxPhase[8]; // 各 RX 相位补偿(弧度)
uint32_t crc32; // 数据校验
} RadarCalibData_t;
数据管理上有三个关键点。第一是版本与兼容性:校准数据必须与当前射频配置(chirp斜率、采样率、天线布局)绑定,配置变更后旧校准失效。第二是完整性校验:NVM写入可能受断电影响,启动时必须校验magic和CRC,失败则回退到默认参数并上报故障。第三是温度与老化:射频通道相位随温度漂移,量产中常按温度点分段存储校准表,运行时根据片上温度传感器选择插值。
校准流程与结果判读
一次完整的产线校准通常按以下顺序执行:先做通道幅度/相位校准,再做距离和速度校准,最后做角度校准并验证。角度校准需要暗室或近场校准架,成本最高,因此常放在最后,只有前面步骤通过才执行。
结果判读依赖残差指标。距离校准后,用多个已知距离点测量,残差应小于规格值;角度校准后,在0°、±30°、±60°等角度测量,角度误差应落在允许带内。若某通道相位补偿量异常大(例如超过±30°),往往提示该通道射频链路或天线焊接有问题,应标记为可疑模组而不是强行补偿。
| 校准项 | 参考条件 | 输出参数 | 典型判据(示例) |
|---|---|---|---|
| 通道幅相 | 0° 角反射器 | rxAmp[], rxPhase[] | 相位补偿 < ±30° |
| 距离 | R = 1/3/5 m | rangeScale, rangeOffset | 残差 < 0.1 m |
| 速度 | 转台 ±1 m/s | speedScale | 残差 < 0.1 m/s |
| 角度 | θ = 0°, ±30°, ±60° | 通道复数加权 | 误差 < 0.5° |
需要强调的是,校准不是一次性动作。温度变化、器件老化、天线罩污染都会让补偿量逐渐失配。量产测试中通常会在高温和低温各做一次抽检,确认校准表在温度区间内的有效性。Jacinto的校准框架允许在运行时根据温度索引切换或插值校准表,从而在-40°C到+85°C范围内维持精度。