一、ToF技术全景:从原理到应用

各位工程师朋友,咱们今天聊聊ToF。说实话,我第一次接触ToF是2017年做手机人脸识别项目。那时候供应商给我一堆datasheet,看得我头大。后来踩了不少坑,才慢慢摸清门道。今天我把这些经验整理出来,希望能帮你少走弯路。

核心观点:ToF不是单一技术,而是一套从光子发射到深度计算的完整链路。选型、驱动、标定,环环相扣。

1.1 iToF与dToF:两种测距哲学

ToF分两种:iToF(间接飞行时间)和dToF(直接飞行时间)。说白了,一个靠相位差算距离,一个直接计时。

iToF的原理:

  • 发射连续调制光(通常是正弦波或方波)
  • 接收端测量发射与接收信号的相位差
  • 距离 = (相位差 × 光速) / (4π × 调制频率)

我在项目中遇到过一个问题:iToF在强光下容易饱和。后来发现是SPAD的增益没调好。嗯,这里要注意,iToF对动态范围要求很高。

dToF的原理:

  • 发射单个短脉冲(皮秒级)
  • 直接测量光子往返时间
  • 距离 = 时间 × 光速 / 2

你想想看,dToF就像用秒表测跑步时间。但难点在于——光速太快了。1米距离,光子往返只要6.7纳秒。所以dToF需要皮秒级的时间数字转换器(TDC)。

对比项 iToF dToF
测距原理 相位差 直接计时
典型精度 厘米级(1-5cm) 毫米级(1-5mm)
最大距离 3-5米(消费级) 10-50米(工业级)
功耗 较低(~100mW) 较高(~500mW)
抗环境光
典型应用 人脸识别、手势 激光雷达、工业测距

我的建议:做消费类产品选iToF,功耗和成本更友好。做工业或车载,dToF更靠谱。我曾经在一个扫地机器人项目里硬上iToF,结果阳光直射下直接罢工...后来换了dToF才搞定。

1.2 核心器件:VCSEL与SPAD

ToF模组里最关键的俩器件:VCSEL(垂直腔面发射激光器)和SPAD(单光子雪崩二极管)。

VCSEL选型要点:

  • 波长:主流是940nm(不可见,对人眼安全)
  • 功率:消费级通常1-5W,工业级可达10W+
  • 发散角:越小越好,但也要匹配视场角
  • 调制速率:iToF需要MHz级调制,dToF需要ns级脉冲

我记得有一次选型,供应商推荐了一款VCSEL,参数看着挺好。结果一上板子,发现调制速率上不去。后来查资料才知道,VCSEL的寄生电容会影响高频响应。嗯,这个坑我替你们踩过了。

SPAD选型要点:

  • 光子探测效率(PDE):越高越好,通常10-30%
  • 暗计数率(DCR):越低越好,室温下<100cps
  • 死区时间:越短越好,典型值10-100ns
  • 阵列规模:从单点到640×480不等

避坑指南:我曾经在一个项目中,SPAD的DCR没测准,结果暗光下噪声大得离谱。后来发现是温度补偿没做好。SPAD对温度极其敏感,每升高10°C,DCR翻倍。所以驱动里一定要加温度校准。

1.3 主流模组厂商对比

目前市面上主流的ToF模组厂商有三家:ST、AMS、索尼。我都有过实际项目经验,说说我的感受。

厂商 代表型号 技术路线 分辨率 最大距离 典型功耗 价格区间
ST VL53L5CX iToF(SPAD阵列) 8×8 4m ~150mW $3-5
AMS TMF8801 dToF 单点 2.5m ~90mW $2-4
索尼 IMX456 iToF(背照式) VGA 5m ~500mW $15-25

ST:文档最全,驱动库也成熟。我最早用的就是VL53L0X,I2C接口,上手很快。但要注意,ST的模组对镜头脏污很敏感,驱动里最好加污渍检测。

AMS:dToF做得好,单点测距精度很高。但问题是——它家寄存器手册写得像天书。我当年调TMF8801,光看时序图就花了两天。建议直接找FAE要参考代码。

索尼:背照式SPAD,灵敏度业界领先。但价格贵,而且驱动复杂。IMX456需要MIPI接口,对MCU性能要求高。我一般只在高端项目里用。

我的选择策略:消费级产品优先ST,性价比高。工业测距选AMS,精度够用。AR/VR这种对画质要求高的,上索尼。但不管选哪家,一定要提前拿到评估板,别光看datasheet。

1.4 典型应用场景

ToF的应用场景,我归纳为三大类:

1. 人脸识别与生物检测

  • 利用深度信息做活体检测,防照片攻击
  • 典型距离:30-80cm
  • 精度要求:<5cm
  • 我做过一个支付级人脸识别,iToF配合红外摄像头,误识率降到百万分之一

2. 工业测距与避障

  • AGV小车、无人机、机械臂
  • 典型距离:0.1-50m
  • 精度要求:<1cm(近距离),<10cm(远距离)
  • 注意:工业环境粉尘多,VCSEL窗口要定期清洁

3. AR/VR与空间感知

  • 手势识别、环境重建、SLAM
  • 典型距离:0.1-5m
  • 精度要求:<1cm
  • 帧率要求高(>30fps),否则会有眩晕感

经验之谈:做AR应用时,我踩过一个坑——ToF的帧率和延迟。如果深度图跟不上显示刷新率,用户会感觉画面「飘」。后来我用了双缓冲+预测算法,才把延迟压到20ms以内。

1.5 知识体系总览

下面这张图,是我自己总结的ToF技术全景。从原理到应用,一条线串起来。你照着这个框架学,不会迷路。

ToF技术全景知识体系 1. 测距原理 iToF(相位差法) dToF(直接计时法) 混合方案 2. 核心器件选型 VCSEL(发射端) SPAD(接收端) TDC/ADC(处理) 3. 主流模组厂商 ST(VL53L系列) AMS(TMF系列) 索尼(IMX系列) 其他 4. 典型应用场景 人脸识别 工业测距 AR/VR 自动驾驶

这张图把ToF技术拆成了四层:原理→器件→模组→应用。每一层都依赖下一层。比如你选VCSEL,得先知道iToF需要什么调制频率。你选模组,得先知道应用场景需要多少距离。

学习建议:别急着看代码。先把这张图吃透。我当年就是太心急,一上来就调寄存器,结果连iToF和dToF都没分清。后来花了三天重新梳理原理,才把驱动写顺。

好了,这一章就到这里。下一章我们开始讲驱动架构——怎么把ToF模组跑起来,怎么处理中断,怎么校准。到时候我会拿ST的VL53L5CX做例子,手把手带你写驱动。


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