给设备做测距和存在检测
测距和存在检测听上去是一件事,其实是两件。测距问的是某样东西有多远、要一个以毫米或米计的数;存在检测只问有没有人在、要一个是或否。传感器也沿着同一条线分开,所以选哪一种,先要定这个设备在问哪个问题,因为一颗为测距离而造的器件用在一个电灯开关上是浪费,而一颗存在传感器引导不了一台机器人靠近一面墙。
两者都靠把某种东西打在目标上、再对返回的计时或读取,而每一种媒介都被一种不同的东西骗到。光又快又准,声音又便宜又宽容,雷达能穿过塑料,红外能感知体热。没有哪一种对每个场景都对,而每一种怎么失手,和它数据手册上的数字一样要紧,所以设备面前的那些表面,值得和它要覆盖的量程一样多的思量。
用光,对着目标计时
测一个短距离最干净的办法,是给一束光脉冲飞到目标再回来的时间计时。飞行时间传感器用一束红外激光和一片快速的单光子探测器阵列做这件事,交回一个以毫米计的距离、没有活动部件、也不给主机留下要算的数学。一家厂的一整个家族覆盖了一个设备会碰到的很大一片短距情形,而它们每次测量跑在几十毫秒,对一台机器人或一个手势都够快。它们共有的代价是,读数只和回来的那点光一样好,而这正是表面有发言权的地方。
VL53L0X 用飞行时间测短距离,是那颗把 ToF 带进业余和消费设计的器件,在一个比一粒米还小的封装里、在 I²C 上读到一两米。它适合一台感知墙的机器人、一部确认有张脸靠近的手机、或一个察觉一只手的分配器,开箱就给一个能用的数、不用校准。它的极限就是这个方法的极限:一个深色或斜得很厉害的表面返回很少光、读短或干脆掉数,而它前面的一片盖板玻璃会把一些光直接反回来形成串扰,除非设计留一个气隙或把它标定掉,这些都是固件得预期、而不是盲目相信的事。

VL53L1X 把飞行时间量程拉到大约四米,还加了一个可编程的关注区域,于是同一颗器件能在软件控制下看一个窄锥或开成一个宽锥。那份视场控制常常比多出来的量程更要紧,因为收窄锥角让传感器忽略一个门框或一面近墙、只盯它在乎的那片地板或那个来路,一个设计甚至能扫描这片区域、从一颗单区器件上凑出一个粗糙的多区读数。一颗器件靠配置变成了好几颗。
当一个距离不够时,VL53L5CX 做多区检测,一次回送一个最多六十四个区的网格、而不是一个数,帧率快到能跟踪运动横穿这个网格。这个网格够分辨一只手和一个头、数过门槛的人、或不用相机就画出面前那样东西的粗略形状,而没有一台相机带来的成本、数据率、和隐私问题。它是从"知道多远"到"知道是什么"的那一步,同时始终是一颗深度传感器、从不变成一台会惹出那些问题的成像器。
VL6180X 把近距测距和一颗环境光传感器结合,在几厘米内用飞行时间测绝对距离,而不是像一颗简单接近传感器那样从反射亮度去推。从亮度去推,目标一变色或一变亮就失手,而给光子计时不会,所以 VL6180X 在要紧处给一个老实的近距数。这适合一部判断手指在不在玻璃上的手机、或一个感知一只手就在它跟前的灯具,而把一颗光传感器折进同一颗器件,一次盖掉两颗本会是分立元件的手机传感器。
用声音,慢一些、宽容一些
光失手的地方,声音常常管用。声音走得够慢、能用一颗便宜的微控制器计时,又能从那些吞光的表面上反射,所以HC-SR04 做低成本超声测距,发一阵约四十千赫的脉冲、对它的回声计时,从几厘米到几米地读、几乎不花钱。它看得见一扇激光会穿过的透明玻璃门、和一个 ToF 会读短的哑黑表面,这正是它在更便宜的光学件出现很久之后仍活在机器人套件和倒车雷达里的原因。代价是一个宽波束、说不清回声从锥里哪儿来,一个换能器还在余振时它正前方的一段盲区,以及一个随定下声速的温度而漂的读数,所以一个用心的设计会测到盲区之外、并为空气做补偿。
每种方法怎么被骗
每一种测距方法都是一个赌注,赌目标会按传感器预期的样子把信号反回来,而每一种都在这个赌注落空处被骗。光飞行时间是精确的那个、也是讲究的那个:一个哑黑表面吸掉红外、几乎什么都不返回,透明玻璃让它直接穿过,一面镜子或一个陡角把它弹离探测器,而明亮的阳光用它正在听的那个波长灌满接收器,于是一个户外读数重重地压在传感器的环境光抑制上。一个从近边来的反射也会作为一个假的短返回折进读数,这就是在杂乱场景里绊倒一颗 ToF 的多径。超声测距拿那份精确换来了健壮,因为它不在乎颜色和透明,可它的波束散成一个宽锥、模糊了回声的来处,泡沫或布这样的软材料吸掉脉冲、返回一片寂静,而声速随温度变化得足以让一个未补偿的读数偏出一个可察觉的量。被动红外是另一种性质,因为它什么都不发、只感知一个温暖的身体横穿传感器的分区时辐射的热,所以一个坐着不动的人会慢慢从它视野里淡出,而一股暖气流能把它绊响。雷达在这些之间穿行,穿过一个塑料外壳、读到小到呼吸的运动,代价是钱、和它的发射所需要的法规批准。这一切底下的教训是,按表面和场景去挑方法、而不是按标称量程,因为只有目标配合时,量程才是老实的。
当问题只是有没有人在
很多设备根本不需要距离,只需要知道有个人在,去唤醒一块屏或打开一盏灯。便宜又标准的答案是被动红外,它守候一个身体移动的热、等待时几乎不耗电,这正是它坐在几乎每一盏移动感应灯和电池门铃摄像头里的原因。

AS312 是一颗集成的 PIR 人体感应器,把热释电元件、放大器和检测逻辑装在一个小罐里,于是一个设计把它放在一片菲涅尔透镜后面、就得到一个干净的运动输出、不用搭模拟前端。那片透镜是半个传感器,因为它把视场分成一道道条纹、好让一个横穿的身体把热切成那颗器件触发所依赖的脉冲,这就是为什么覆盖和距离取决于光学和硅一样多。它在一个人穿过它的视场时触发、忽略缓慢的背景漂移,而它低低的待机电流让它在一颗电芯上守上几个月。它的弱点是所有 PIR 的弱点,它看的是变化而不是存在,所以一个停下不动的人就从它那里消失了。
EKMB 系列做低功耗被动红外检测,给那些待机电流还得更低的设计,是一颗石英基的 PIR、喝大约一微安的电,于是一个传感节点能在一颗纽扣电池上跑好几年、而不是几个月。它让出一些距离、为那份节俭接受一个更高的价,是那个设备几乎一辈子都在睡、只在一个人到来时才唤醒的选择,而长长的电池寿命正是它在便宜 PIR 之外存在于目录里的全部理由。
当 PIR 不够时,因为人坐着不动、或设备得感知呼吸,雷达就登场。BGT60TR13C 用 60 千兆赫雷达做存在和手势,扫一个调频信号、同时读出距离和一个移动目标的微小多普勒频移,小到一个胸腔的起伏,这让它能为一个安静坐着读书的人守住一个为真的存在、而一颗 PIR 会在那里放弃。它穿过一个塑料外壳、于是能藏在一块没有可见开口的面板后面,读手的运动做无接触控制,而它要的成本和信号处理比一颗 PIR 多,这是一个设计在静止存在或手势是真正要求时接受的交换。
按场景选,而不是按规格表
第一刀是问题本身。一个需要距离的设备,在室内和近距离伸手去拿飞行时间,在表面又黑又透时拿超声,在它得透过一个盖子看时拿雷达。一个只需要存在的设备,在目标会动时拿 PIR、在它可能坐着不动时拿雷达,而当两者都能用时,功耗预算通常来拍板。
第二刀是场景。一个产品上的黑色塑料饰条、一个陈列柜的玻璃、一个座椅里的泡沫、一个读书的人静止的姿态,每一个都击败一种不同的方法,所以真实的表面和人占用空间的方式,早在一份数据手册之前就把范围收窄了。一颗只按它的量程去选、没经过那一趟对场景的踏勘的传感器,往往就是被当作故障退回来的那颗,而它只不过是被对准了错误的那种目标。
把这两刀切对,器件就从中自然得出。首页上的量程和分辨率,只有在目标按传感器假定的样子反射时才如它所言,而其余的时候,是方法、而不是数字,决定了这个设备看不看得见站在它面前的东西。
相关信息

- 2026.06.04 给设备做声音采集和振动监测

- 2026.06.04 把流量和液位测准的传感方案

- 2026.06.04 无接触地把位置和角度测出来

- 2026.06.04 在联网设备里感知温湿度、气体与空气质量
