正如我之前提到的,在ISSCC上有一些常量(例如,关于图像处理和传感器的会议),然后还有每月的电路。测距似乎属于后者,在图像处理和传感器会话中都有出现。因此,我认为我应该总结一些不同的方法来解决与各种应用程序的测距相关的问题。
对于那些跟随程序的人,这些来自第7和12节课。
会议7.4(静冈大学,Brookman科技)提供了一个背景消除像素,可以确定一个物体的距离使用飞行时间(ToF)。如你所愿回忆, ToF或多或少有点像光雷达(LIDAR?),已知发射光的反射到达给你距离。
在这个像素中有四个横向栅极,将来自撞击光的电荷引导到三个浮动扩散区域中的一个(第四个栅极只是放电像素)。
背景消除历来是通过比较相邻帧来完成的,但快速运动可能会产生奇怪的伪影。所以在这项工作的捕捉周期开始时,背景被测量并存储在第一次扩散中进行减法。然后发射器打开,收集移动到第二次扩散。在这段时间内,反射也可能会回来;当发射器关闭时,收集就变成了第三次扩散。这两个电荷量的差就给出了距离。
会议7.5(静冈大学)解决了为了建模对象而进行高精度测距的挑战。问题是,要获得更高的分辨率,通常需要将光源与成像仪分开一个大角度。这在小型设备中很难做到。这类设备的分辨率通常在几厘米范围内,这对于对象建模没有多大用处;这项工作达到了0.3毫米的分辨率。
关键有三个:
- 它们使用极短(< 1 ns)的光脉冲。
- 他们使用了一个漏极调制器(DOM)——通过消除横向通门,他们得到了更快的响应。像素本身只能累积或排泄。
- 他们一次捕获了所有的像素,但紧凑的时间带来了另一个问题:像素之间的倾斜不再是噪声,但可能会搞砸测量。为此,他们实现了一种圆柱倾斜电路和程序。
微软在7.6会议上也有分量(他们忍不住在他们的开幕幻灯片上放了一个华丽的品牌——这在ISSCC上是看不到的,但我猜SEO Slack的营销专家们需要一些东西来证明他们的价值,即使这意味着乏味)。这是一个改进的Kinect测距系统,其中的挑战是同时适应远处低反射率(即低光)和近距离高反射率(即高光)的物体。这是典型的动态范围问题,由于距离问题而变得复杂。
他们已经将浮动扩散中的电荷收集和用于计算距离的“a或B”分配解耦。它们使用A行和B行作为差分单元的输入。在采集过程中,高频时钟交替激活A和B;这意味着由时钟决定的A或B的分配与电荷收集同时发生。然后就可以以一种悠闲的步伐(用他们的话说)转移到浮动扩散。
他们还实现了共模复位,以中和明亮的环境。每个像素可以设置自己的增益和快门时间;这就是它们如何适应广泛的动态范围。
与此同时,在第12次会议上,人们正在使用其他传感器进行测距。在第12.1次会议(UC Berkeley, UC Davis, Chirp Microsystems)中,他们构建了一个pMUT(压电微加工超声换能器)阵列来实现手势识别。把它想象成一个微型的相控阵雷达。他们通过相移-基本上,波束形成-在附加的FPGA中处理接收到的信号。
在阵列中,一些pmut(可以把它们看作超声波像素)被驱动来发送信号,其他的用于侦听接收反射,还有一些用于两者兼有。他们可以决定在给定的应用程序上进行其中的哪一种优化。
他们还希望以传感器谐振频率的16倍进行采样,以降低带内量化噪声并简化帽尺寸。(与一起不幸的划船事故无关。)但这意味着他们需要知道给定设备的实际谐振频率,而不是近似谐振频率——必须适应自然变化,就像对温度等环境条件变化的响应一样。
为此,他们有一个校准步骤,在该步骤中,他们启动传感器并测量它们的响铃,使用检测到的频率来设置执行器的驱动频率。这种校准并不是每次捕获都完成的;它可以每秒或每分钟执行一次,作为给定应用程序的条件。
与往常一样,这些会议的细节在会议进程中。