核心硬件选型:ToF传感器的“五脏六腑”

做ToF相机,说白了就是一场硬件选型的“搭积木”游戏。传感器、激光器、镜头、驱动芯片,每一块积木选错了,整台相机就废了。我这些年踩过的坑,十有八九都出在选型上。今天咱们就把这四块核心积木掰开揉碎了讲清楚。

核心逻辑图:ToF硬件选型四象限

ToF深度相机硬件选型核心四要素 ① ToF传感器 Sony IMX系列 PMD / Infineon TI OPT系列 ST VL53L系列 ② VCSEL激光器 波长:850nm / 940nm 功率:1W ~ 10W 发散角:扩散片设计 安全等级:Class 1 ③ 镜头与滤光片 窄带滤光片(±10nm) FOV匹配激光扩散角 T-Less镜头设计 红外增透膜 ④ 驱动与电源管理 VCSEL驱动:纳秒级脉冲 LDO / DC-DC 低噪声 时序同步控制 过温保护电路

一、ToF传感器选型:四大家族各有千秋

传感器是ToF相机的心脏。目前市面上主流的ToF传感器供应商,我习惯叫他们“四大家族”:Sony、PMD(与Infineon合作)、TI、ST。每家都有自己的看家本领。

厂商 代表型号 分辨率 调制频率 典型应用
Sony IMX456 / IMX556 VGA (640×480) 100MHz 手机、机器人
PMD/Infineon IRS2381C / IRS2771C QVGA ~ VGA 80MHz 工业、汽车
TI OPT8241 / OPT8320 320×240 50MHz 手势识别
ST VL53L1 / VL53L5 8×8 ~ 16×16 20MHz 接近传感

Sony IMX系列——我个人的首选。为什么?背照式+堆叠结构,量子效率高得吓人。我在做一款服务机器人项目时,白天强光下Sony的传感器依然能稳定输出深度图,换其他家早就饱和了。不过价格嘛...嗯,一颗IMX456的采购价够买三颗TI的OPT8241。

PMD/Infineon——德国人的严谨在这颗芯片上体现得淋漓尽致。它的SBI(Suppression of Background Illumination)技术,说白了就是抗环境光能力极强。我记得有一次在户外强光下测试,PMD的传感器愣是没丢帧。缺点是分辨率上不去,目前量产最高也就VGA。

TI OPT系列——性价比之王。TI的方案把ADC和数字处理都集成在芯片内部,外围电路极其简洁。我做过一个低成本的手势识别方案,BOM成本压到了15美金以内,用的就是OPT8320。但要注意,TI的传感器对温度比较敏感,夏天户外使用需要做温补。

ST VL53L系列——这其实是个“小玩意儿”。单点测距,分辨率极低,但功耗也极低。适合做手机里的激光对焦、扫地机里的悬崖检测。别指望用它做3D建模,那是在为难它。

我的选型建议:

  • 消费级产品(手机、扫地机)→ Sony IMX系列
  • 工业/汽车级 → PMD/Infineon
  • 低成本方案 → TI OPT系列
  • 简单测距 → ST VL53L系列

二、VCSEL激光器选型:光源是相机的“眼睛”

VCSEL(垂直腔面发射激光器)这几年火得不行。为什么?因为它比传统的EEL(边发射激光器)好伺候多了——圆形光斑、低阈值电流、容易做阵列。

选VCSEL,核心看三个参数:

  1. 波长:850nm vs 940nm。850nm的量子效率高,但人眼能看到微弱的红点(虽然安全)。940nm人眼完全不可见,但传感器响应率会低一些。我个人习惯:室内用850nm,户外用940nm。
  2. 功率:1W到10W不等。功率越大,测距越远,但发热也越严重。我曾经在一个项目里用了5W的VCSEL,没做好散热,结果激光器直接“罢工”了——热失效。
  3. 发散角与扩散片:VCSEL本身出光角度很小(约20°),需要搭配扩散片(Diffuser)来扩大照明范围。扩散片的设计直接决定了FOV是否匹配。

⚠️ 安全警告:VCSEL属于激光器件,必须通过Class 1人眼安全认证。我见过一些初创公司为了省成本,直接用裸VCSEL不加扩散片,结果光功率密度超标。这是拿用户的眼睛开玩笑!

供应商方面,Lumentum、II-VI(现Coherent)、ams OSRAM是主流。国内也有纵慧芯光、睿熙科技等,性价比不错,但一致性上还有差距。

三、光学镜头与滤光片设计:别让光线“迷路”

镜头和滤光片,看似不起眼,实则坑最多。

滤光片——ToF相机必须用窄带滤光片。为什么?因为环境光里包含各种波长的光,如果不滤掉,传感器会收到大量噪声。窄带滤光片的中心波长要严格对准VCSEL的波长(比如940nm ± 10nm)。我踩过的一个坑:采购了一批滤光片,中心波长标称940nm,实测却是935nm,结果整机灵敏度掉了30%。

镜头——ToF镜头和普通RGB镜头不一样。它需要工作在近红外波段,所以镜片镀膜必须是红外增透膜。另外,镜头的光圈(F数)也很关键。F数越小,进光量越大,但景深也越浅。对于ToF来说,我一般推荐F/1.4 ~ F/2.0。

还有一个容易被忽略的点:镜头FOV必须与VCSEL扩散片的FOV匹配。如果镜头FOV比激光照明FOV大,画面边缘就会因为光照不足而出现深度空洞。反过来,激光照到了镜头拍不到的地方,那就是浪费光功率。

经验值:镜头FOV比激光FOV小5°~10°是最佳匹配。这样既能保证边缘光照充足,又不会浪费激光功率。

四、驱动与电源管理芯片:给硬件“喂饱电”

ToF相机的电源管理,比普通相机复杂得多。为什么?因为VCSEL需要纳秒级的脉冲驱动,而且脉冲电流高达几安培甚至十几安培。

VCSEL驱动芯片——核心指标是上升时间(tr)和下降时间(tf)。ToF测距的精度直接取决于调制信号的边沿陡峭程度。我一般要求tr/tf < 2ns。TI的LMG1020、ADI的HMC7992都是不错的选择。

电源管理——传感器需要低噪声的模拟电源(通常1.8V或2.8V),VCSEL需要大电流的脉冲电源。这两路电源必须严格隔离,否则VCSEL的脉冲噪声会耦合到传感器电源上,导致深度图出现条纹噪声。我习惯用LDO给传感器供电,DC-DC给VCSEL供电,中间加π型滤波器。

时序同步——这是最容易出问题的地方。VCSEL的脉冲必须与传感器的曝光窗口严格同步。如果时序对不准,要么测距不准,要么根本测不到。我一般用FPGA或者MCU的定时器来做同步控制,精度要求达到纳秒级。

// 伪代码:VCSEL与传感器同步时序
void tof_sync_timing() {
    // 配置传感器曝光窗口
    sensor_set_exposure(1000);  // 1us曝光
    
    // 配置VCSEL脉冲
    vcsel_set_pulse_width(100); // 100ns脉冲
    
    // 同步触发
    while(1) {
        sync_signal_high();     // 同时触发传感器和VCSEL
        delay_ns(100);          // 等待脉冲结束
        sync_signal_low();      // 关闭
        delay_us(10);           // 等待下一个周期
    }
}

⚠️ 注意:VCSEL驱动电路必须加过温保护。我曾经在一次长时间测试中,VCSEL驱动芯片温度飙到了120°C,要不是有保护电路及时关断,整个模组就烧了。

好了,硬件选型这块儿就聊到这儿。传感器、激光器、镜头、驱动,这四个环节环环相扣,任何一个掉链子,整台相机都白搭。下一节咱们聊聊怎么把这些硬件“焊”在一起——电路设计与PCB布局。


公众号:蓝海资料掘金营,微信deep3321