4. 产线校准概述:校准目的、校准项分类与工位设计
产线校准是摄像头模组从元器件到整机系统之间最关键的质量控制环节。未经校准的模组存在个体差异:感光芯片暗电流不同、镜头中心偏移、马达行程离散、滤光片透过率波动。校准的目的就是通过测量每个模组的实际响应,将补偿参数写入模组或主板的非易失存储区(OTP / EEPROM / EFUSE),使最终成像在 AWB、AF、AEC 等核心指标上达到一致性规格。
4.1 校准的核心目的
| 目的维度 | 具体说明 | 典型指标 |
|---|---|---|
| 消除个体差异 | 补偿 sensor 暗电流、镜头透过率、马达机械公差 | LSC 校正后亮度均匀性 > 95% |
| 保证色彩一致性 | 校准 R/G/B 通道增益,使同一批次白平衡偏差 < 1% | AWB 色温偏差 < 100K |
| 确保对焦精度 | 建立马达 DAC 值与实际对焦距离的映射表 | AF 精度 < 1 DOF |
| 满足法规与客户规格 | 通过 OTP 写入 Golden Sample 基准,实现可追溯性 | OTP 校验 CRC 通过率 100% |
实战经验: 产线校准不是“调优”,而是“补偿”。校准参数只修正模组本身的系统误差,不应对场景做自适应调整。一旦校准参数写入 OTP,后续 ISP 算法应直接读取并使用,不再二次计算。
4.2 校准项分类
根据摄像头成像链路,校准项分为四大类:AWB(自动白平衡)、AF(自动对焦)、AEC(自动曝光控制)、OTP(一次性可编程存储)。下表列出每类的校准内容与典型参数:
| 分类 | 校准内容 | 典型参数 | 存储位置 |
|---|---|---|---|
| AWB | R/G/B 通道增益、色温映射、Golden Sample 偏差 | R_gain, G_gain, B_gain, CCT_offset | OTP / EEPROM |
| AF | 马达行程、无穷远/微距 DAC、温度补偿系数 | Infinity_DAC, Macro_DAC, Temp_coeff | OTP / EEPROM |
| AEC | 曝光时间线性度、增益步长、帧率锁定 | Exp_linearity, Gain_step, FPS_target | OTP / EEPROM |
| OTP | 存储介质校验、CRC、模块 ID、生产日期 | Module_ID, CRC16, Checksum | OTP 专用区域 |
4.3 校准流程与工位设计
产线校准通常采用流水线工位模式,每个工位完成一项或多项校准任务。标准流程包含以下 6 个工位:
- 工位 1:模组上料与 ID 绑定 — 扫描模组二维码,绑定 OTP 存储地址。
- 工位 2:暗场校准 — 在完全遮光环境下采集暗电流、坏点、黑电平。
- 工位 3:AWB 与 LSC 校准 — 在标准 D65 光源下采集 R/G/B 增益和镜头阴影补偿表。
- 工位 4:AF 校准 — 使用 Chart 图或激光测距,建立 DAC 与距离映射。
- 工位 5:AEC 与帧率验证 — 在固定照度下验证曝光线性度和帧率稳定性。
- 工位 6:OTP 写入与校验 — 将所有参数写入 OTP,回读并校验 CRC。
4.4 工位设计的关键约束
- 光源一致性: AWB 工位必须使用标准 D65 光源(色温 6500K ± 200K),照度稳定在 1000 lux ± 50 lux,且均匀性 > 90%。
- 暗室环境: 暗场校准工位环境照度 < 0.1 lux,避免任何杂散光进入 sensor。
- 机械对位: AF 工位需要高精度 Chart 图或激光测距模块,对位公差 < 0.1 mm。
- 温度控制: 产线环境温度应稳定在 25°C ± 2°C,否则影响马达行程和 sensor 暗电流。
常见陷阱: 很多产线将 AWB 和 LSC 放在同一个工位,但 LSC 需要多张不同亮度的 Chart 图,而 AWB 只需要一张灰卡。如果光源切换不及时,会导致 LSC 校准数据污染 AWB 增益。建议分两个子步骤执行,先做 AWB 再做 LSC,或使用双光源切换机构。
4.5 校准参数与 OTP 存储结构
所有校准参数最终写入 OTP 区域。典型的 OTP 存储布局如下:
OTP 存储布局(128 Bytes 示例)
偏移地址 内容 大小
0x00 模块 ID 4 Bytes
0x04 CRC16 2 Bytes
0x06 AWB R_gain 2 Bytes
0x08 AWB G_gain 2 Bytes
0x0A AWB B_gain 2 Bytes
0x0C LSC 表头 4 Bytes
0x10 LSC 数据表 64 Bytes
0x50 AF Infinity_DAC 2 Bytes
0x52 AF Macro_DAC 2 Bytes
0x54 AF Temp_coeff 2 Bytes
0x56 AEC Exp_linearity 2 Bytes
0x58 AEC Gain_step 2 Bytes
0x5A 保留 22 Bytes
0x70 CRC32 4 Bytes
驱动与 HAL 层对接: 驱动在 probe 阶段通过 I2C/SPI 读取 OTP 数据,校验 CRC 后通过 V4L2 控制节点或自定义 sysfs 节点暴露给 HAL 层。HAL 层在初始化时读取这些参数,注入 ISP 算法模块。如果 CRC 校验失败,HAL 应回退到默认参数并上报错误日志。