3. Lens与VCM马达控制
镜头和马达,是相机模组里最“物理”的部分。我常说,算法写得再漂亮,最后都得靠这几片玻璃和一个小线圈去兑现。这一章,咱们就把Lens的结构、VCM的驱动原理,以及AF算法怎么跟硬件配合,掰开揉碎了讲清楚。
3.1 Lens结构解析
一个手机摄像头模组里的镜头,通常由4到7片塑料或玻璃镜片组成。别小看这几片东西,它们决定了进光量、畸变、色散,直接影响画质。
我习惯把Lens的结构分成三个关键部分:
- 镜片组(Lens Stack):多片镜片叠在一起,每片曲率不同,用来矫正像差。高端模组会用玻璃镜片,透光率更好,但成本也高。
- 镜筒(Barrel):把镜片组固定住的塑料或金属筒。它得足够硬,不能因为温度变化就变形。
- 红外滤光片(IR Filter):贴在镜筒底部,挡住红外光,不然拍出来的照片会偏红。
一个小经验: 我遇到过一批模组,低温下AF跑不准。查了半天,发现是镜筒材料的热膨胀系数跟VCM底座不匹配。温度一降,镜片间距变了,焦点就飘了。所以选材时,热稳定性一定要看。
镜头的关键参数,我列了个表,方便你对照:
| 参数 | 说明 | 典型值 |
|---|---|---|
| 焦距(EFL) | 镜头光学中心到焦点的距离 | 3.5mm ~ 6.0mm |
| 光圈(F/#) | 进光量指标,越小越亮 | F1.8 ~ F2.4 |
| 视场角(FOV) | 镜头能看到的范围 | 70° ~ 120° |
| 畸变(Distortion) | 画面变形程度 | < 2% |
3.2 VCM驱动原理
VCM,全称是Voice Coil Motor,音圈马达。说白了,它就是个微型喇叭。喇叭靠线圈在磁场里振动发声,VCM靠线圈在磁场里直线运动,推动镜头对焦。
它的核心结构很简单:
- 永磁体:提供恒定的磁场。
- 线圈:通上电流,在磁场里受力。
- 弹簧片:把镜头悬空托住,通电时镜头移动,断电后弹簧把镜头拉回原位。
驱动原理就一句话:电流越大,推力越大,镜头位移越大。但这里有个坑——VCM的推力跟电流不是完美的线性关系。尤其在行程两端,磁场不均匀,线性度会变差。
注意: 我曾经在一个项目里,直接用线性模型去算电流对应的位移,结果在微距端对焦总是差一点。后来实测了VCM的响应曲线,发现两端有大约15%的非线性区。必须做分段校准,否则AF精度上不去。
VCM的驱动方式,常见的有两种:
- 开环驱动:给一个电流,假设镜头走到某个位置。简单,但精度差,受温度影响大。
- 闭环驱动:加一个霍尔传感器,实时检测镜头位置,反馈给驱动芯片。精度高,但成本也高。
下面这张图,画的是VCM闭环控制的基本流程:
3.3 AF算法与闭环控制策略
AF算法,说白了就是让镜头找到最清晰的位置。但怎么找?找多快?找多准?这里面学问大了。
常见的AF算法分两类:
- 反差式AF(CDAF):通过图像对比度来判断是否合焦。对比度越高,画面越清晰。优点是算法简单,缺点是来回搜索,速度慢。
- 相位式AF(PDAF):通过传感器上的相位检测像素,直接算出焦点偏移方向和距离。速度快,但需要硬件支持。
在实际项目中,我更喜欢用混合AF:先用PDAF快速粗调,再用CDAF精调。这样既快又准。
核心思路: 闭环控制的关键,是把AF算法算出的目标位置,转换成VCM的驱动电流。霍尔传感器负责把实际位置反馈回来,形成一个负反馈环路。PID控制器在这里的作用,就是让镜头快速、平稳地到达目标位置,不超调、不震荡。
PID控制器的三个参数,我简单解释一下:
- P(比例):根据当前误差大小,决定驱动力。误差大,推力大。但P太大容易超调。
- I(积分):消除稳态误差。比如镜头因为重力或弹簧老化,停在目标位置附近但差一点,I项会慢慢累积推力,把它推到位。
- D(微分):抑制震荡。根据误差变化趋势,提前刹车。D太大,系统会变得迟钝。
调PID参数,我有个笨办法:先调P,让系统能响应;再加一点I,消除静差;最后加D,压住超调。别指望一次调好,得反复试。
避坑指南: 我曾经在一个项目里,PID参数在实验室调得好好的,一上产线就出问题。后来发现,不同模组的VCM灵敏度有差异,同一批货能差10%。解决方案是:在产线做一次VCM校准,把每颗模组的响应曲线写进OTP,算法运行时根据校准数据动态调整PID参数。
闭环控制策略,我总结了一个三步走的流程:
- 粗定位:PDAF或大步长搜索,快速把镜头拉到目标位置附近。
- 精调:CDAF小步长搜索,配合PID闭环,找到对比度峰值。
- 锁定:确认合焦后,保持当前位置,进入低功耗模式。
下面这个表格,对比了开环和闭环控制的差异:
| 对比项 | 开环控制 | 闭环控制 |
|---|---|---|
| 精度 | 低,依赖VCM线性度 | 高,实时反馈校正 |
| 温度影响 | 大,温度变化导致位移漂移 | 小,霍尔传感器补偿 |
| 成本 | 低,无需霍尔传感器 | 高,需要霍尔芯片和驱动IC |
| 响应速度 | 快,直接给电流 | 稍慢,需要反馈计算 |
| 适用场景 | 低端模组、固定焦点 | 高端模组、快速对焦 |
嗯,说到这儿,Lens和VCM的核心内容基本覆盖了。你想想看,从镜片结构到马达驱动,再到算法闭环,每一步都有坑,也都有解法。我个人的习惯是,做AF调试时,先把硬件摸透,再写算法。硬件不靠谱,算法再牛也白搭。