一、前言
红外距离感应器常用于机器人、无人机等智能硬件设备,以实现智能避障,而可实现离测量的红外感应器则较为少用,今天就说说两种Sensor——距离感应和距离测量。
二、概述
平时使用红外距离感应器只是实现物体靠近距离门限探测,是双状态输出,即在探测范围外不能触发,进入探测范围则一直处于触发状态。另外一种红外Sensor除可实现前者功能外,还可测量与外界物体间的距离,那么在测量范围内就可持续输出距离数据,实时跟踪物体的运动状态,从而做进一步处理,以实现一些有用的功能。现在就这两种Sensor做分别介绍。
三、Sensor介绍
3.1 近距离感应(Proximity Sensor)
一般距离感应Sensor通常是包含一个红外反射二极管和红外接收光电二极管,这种大部分用在手机类产品,以作通话灭屏节能用。现在大部分厂家还集成了白光接收光电二极管做环境光感应用,这里忽略此功能。还有些厂商为了加大感应距离,将发射二极管做外置,使用更大发射功率二极管,如下图,我们在这里用到的就是这种,因为感应距离更远,后面会说明原因。从原理上看,发射二极管发出特定频率的红外光,经外界物体反射由对应频率接收二极管接收转成电强度,再由ADC转成数字信号,当信号强度超过触发门限(通过I2C设置其触发门限),便触发终端,表示与外界物体靠近。在设计时,为了不使发射光不经外界反射直接漏到接收端而起不到距感作用,发射管和接收管结构上需要做光隔离。
3.2 距离测量(Distance Measuring Sensor)
a.三角法
三角法测量原理,如下图,框架跟上面的Sensor相似,也包含特定频率的红外发射和接收单元,差异是接收单元不是简单的光电二极管,是一个PSD(PosiTIon SensiTIve Detector)。发射二极管发出特定频率红外光,经外界物体反射,由PSD接收,发射二极管、外界物体的远近和反射光在PSD的落点位置形成一个三角关系,又PSD可以将接收的在其接收面上红外点的位置转成两个电流I1和I2,这两个电流与距离有一定的线性关系,经ADC后,可以通过一定的算法将距离解调出来。应用此法的典型厂家有Sharp。
b.TOF(TIme of Flight)法
TOF是通过测量光从发射端到接收端的时间差来计算距离的方法。如下图,结构上同样跟以上两种Sensor相似,同样有红外发射和接收二极管,差异是发射二极管发射的是特定频率的脉冲红外光,发射和接收二极管分别由发射和接收驱动电路控制,且驱动电路分别与Sensor内置计时器相接,发射或者接收到脉冲均及时触发计时器,飞行时间就是由计时器计统计的发射触发时刻和接收触发时刻的时间差,则得到时间就可直接换算成距离D=(Vc*T)/2。
四、实验方案
我们可以拿上面所介绍的Sensor做一些小实验,距离测量的两种sensor均可测量距离,在宏观体验上相近,我们可以用其中一种做代表。我们设想做一个小车,以DragonBoard410C做控制核心,用两个步进电机驱动四个轮子(一个驱动用于后轮作推动,另一个用于控制前轮方向),取四个Proximity Sensor分别安装在小车四周,一个Distance Measuring Sensor安装在小车前头,分别运行两个程序,体验两种sensor的功能。示意如下:
在此,Proximity Sensor只起到避障作用,当小车行驶过程中靠近障碍物,Sensor会发出中断触发信号,APQ8016接收的中断信号会跳转到相应的中断服务程序做出相应反应,如左边Sensor遇到障碍物,前轮马达动作使前轮右转,从而起到避开障碍物的功能。
对于Distance Measuring Sensor,当它检测到前方有障碍物,先通知CPU,当距离逐渐缩小,小车速度也逐渐减小,设定一个安全距离(如10CM),当小车靠近障碍物进入这个安全距离范围时就马上关闭小车马达,使小车停下,结合其他Sensor辅以相应算法可以实现小车智能入库。我们还可进一步设计,设定一个距离范围(如50cm-100cm),使小车与障碍物之间的距离一直保持在这个范围,那么便可实现小车跟随外物功能。通过对比,我们就很容易发现Proximity Sensor是实现不了这两个功能的。
更多Qualcomm开发内容请详见:Qualcomm开发者社区。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)