前言
在消费类电子产品领域,工程师可利用激光雷达实现众多功能,如面部识别和3D映射等。尽管激光雷达系统的应用非常广泛而且截然不同,但是 “闪光激光雷达” 解决方案通常都适用于在使用固态光学元件的目标场景中生成可检测的点阵列。凭借具有针对小型封装结构但可获取三维空间数据方面的优势,固态激光雷达系统在智能手机和笔记本电脑等消费类电子产品中日益普及。在这个系列的文章中,我们将探讨如何使用OpticStudio对此类系统进行建模,包括从序列初始设计到集成机械外壳的整个流程。该文章为闪光激光雷达系统建模系列文章的第一篇。
激光雷达系统在工业界中有着多种场景下的应用,对应于不同种类的激光雷达系统(比如用于扫描元件或确定视野的系统等),本示例将主要探索如何使用衍射光学元件来复 制光源阵列在目标场景中的投影。成像透镜系统随后可观察到投影的光源阵列,以获取投射光线的飞行时间信息,进而生成投影点的深度信息。
在这篇文章中,我们将介绍用于闪光激光雷达系统发射和接收模块的序列模式系统背景和特征。在后续的文章中,我们将介绍完整的系统建模和光机封装。
闪光激光雷达的应用
此类激光雷达系统的工作原理主要依靠一组放置在光源阵列(如 VCSEL 阵列等)前方的准直光学元件,这些准直透镜投射光源阵列的光线追迹至包含几何实体或者动态捕捉的场景中。在准直透镜后面放置的衍射光学元件将沿 X 方向、Y 方向和对角线方向创建该 VCSEL 阵列的多个投影(在本例中为 3x3 的网格)。
照明模块将生成一个点阵列,将光线投影到目标区域,随后成像系统将观察到照亮的区域,以检测投影阵列并获取场景的深度信息。
设想一下,我们探索的激光雷达系统可用于追迹现实世界的几何结构及其运动情况,以便叠加获得在计算机中生成的图像。此外,我们还可以将激光雷达用作 AR 头戴设备模块的一部分,其中用户可以通过激光雷达模块的观察进行手势识别并与 CGI 进行交互。
对于照明的区域,我们的目标区域是 1 米远(略大于一臂长)之外的 480mm x 480mm(大约为 19 英寸 x 19 英寸)的区域。我们可以这样想象,如果我们将该激光雷达系统瞄准一张桌子或书桌,并想要追迹其表面的几何结构以及它上面的任何物品时,这样的覆盖区域十分合理。此外,我们还可以假设用户将能够与他们直接视线范围内的虚拟元件进行交互。
照明系统
首先,我们来定义照明模块的需求。由于照明区域可看做光源阵列区域的投影,因此非常关键的一点是确保我们的准直光学元件与所使用的光源能够相匹配。如果我们假设光源阵列的有效区域为 1.6mm x 1.6mm,那么我们可以确定透镜所需的焦距为:
为了在 OpticStudio 中定义模型,可以假设光源以 0.94 微米为波长的发射 NA 为 0.2 的光束。透镜经过优化可在视场上产生准直输出,以确保光源阵列区域的点能够在目标场景中具有合理的尺寸。鉴于闪光激光雷达系统的案例基础,为了实现紧凑的、可批量生产的设计,选择小尺寸的塑料材料也至关重要(对应文件提供为 “FlashLidar_Emitter.ZAR”)。
目前,我们可以将每个视场点的发射都看作为单个二极管的发射,其光线将被投影到所观察的场景中。在这个阶段,由于光束将在远场中被观察到,并且这个系统主要受几何像差的影响,因此我们可以将基于几何光线的结果作为观察场景中的光斑性能的良好指标。然后,几何图像分析(Geometric Image Analysis)工具可用于可视化距离照明模块大约一米远的光斑情况:
上面的每个几何图像分析窗口都显示了点光源在 55mm x 55mm 的区域上,从物面到“场景”像面的传播结果。非零衍射级次将在被观察场景的中心阶周围向 X 和 Y 方向产生更多的光斑图案,从而扩展激光雷达系统的视场。
在这个模型中,我们将使用一对交叉的衍射光栅来创建额外的投影。因此,我们将需要计算线性光栅图案所需的空间频率,以确保一阶衍射投影到的区域不会与零阶衍射的相重叠:
所允许的最小衍射角 θd 是视场水平半视场的两倍。当 fc = 10mm,物体高度为 0.8mm 时,零阶的半视场 θhoriz, 为4.57⁰,这可以帮助我们确定光栅刻线之间所需的距离 d(以微米为单位):
由于 OpticStudio 中的原生衍射光栅表面将光栅的空间频率作为设置参数,因此我们可以使用空间频率 0.17 刻线/微米 来设置该光栅。我们可以在 OpticStudio 中对这个计算进行验证,通过在序列模式中添加衍射光栅表面,以查看它是否能够为不同级次之间提供足够的距离:
为了检查投影区域之间是否存在任何重叠(这可能会导致不同衍射级次之间的光点相互叠加),我们可以结合使用几何图像分析工具以及多重结构编辑器进行分析。我们可以定义两种结构,一种显示中心阶,而另一种显示沿 X 轴的一阶。经过修改的“填充”版 “SQUARE.IMA”(在所有 OpticStudio 的安装中提供)可用于演示光源有效区域在远场中的投影是否有任何潜在的重叠。根据当前的空间频率定义,我们可以看到有一些重叠存在:
为了解决这个问题,我们可以稍微增加衍射光栅表面的空间频率,从而增大衍射角。当快速编辑到 0.2 刻线/微米时,可以产生更清晰的分离:
在当前阶段,我们将把实例文件保存为 “FlashLidar_Emitter_DiffGrat.ZAR”。虽然这是二极管阵列将涵盖的整体区域的输出,但实际的照明模块将使用一系列二极管作为点光源,因此照明图案将成为一系列的点。GIA 检查的目的是确保当我们在非序列模式中更直接地定义光源时,不同衍射级次之间的光点不会重叠。
成像系统
为了获取照明投影中的深度信息,需要一个成像系统对场景进行观察,并通过计算每个光点的往返飞行时间,将图像数据转换为深度数据。根据之前的计算,我们知道中心阶的半水平和垂直视场大约是 4.57°。由于衍射元件各级次在该中心阶周围产生投影,这将使成像系统所需的视场在水平和垂直半视场上增加到约 9.14°(即约为中心阶半视场值的两倍)。所以,成像系统所需的半视场在水平和垂直方向上为 13.71°,或在对角线方向上约为 19.39°:
因此,成像模块需要约为 20°的最小视场。同样地,由于激光雷达系统的用例,使用具有小尺寸塑料元件进行紧凑型设计至关重要。透镜如下图所示,作为示例文件 “FlashLidar_Receiver.ZAR”:
该透镜的名义设计视场大于 20° (约为30°-36°),以确保成像系统的优化能够产生物理上可实现的元件。例如,这有助于更好地控制非球面元件的边缘厚度,并确保元件之间有安装空隙。此外,透镜的名义设计具有无限的物面距离,因为其可能需要包含多种工作距离进行使用。
由于这种设计旨在实现紧凑的尺寸,成像系统必须平衡该标准与它对视场相关像差的影响,如畸变和场曲。该设计采用了类似于 Cooke 三片式透镜的结构,即在两个低折射率的正透镜之间有一个高折射率的负透镜。所有元件上都具有非球面系数,允许通过第一个透镜校正球差,而第三个透镜可作为场镜,以改善畸变和场曲的性能。此外,模型中最后还包含一个平板玻璃,该平板玻璃可作为覆盖接收器模块图像传感器的盖板。
为了确保成像系统的性能符合我们的需求,我们可以查看 100 lp/mm 时的 FFT MTF 图:
我们可以在 MTF 中观察到系统接近衍射极限的光学性能。为了检查,我们可以通过该系统计算成像到探测器上的光斑尺寸,以检查图像质量。我们将转到序列发射器模块,并查看“ 场景像面” 上由点列图确定的光斑尺寸:
假设观察到的最小光斑对应从光源阵列发射出来最中心点光源的结果。因此,我们可以将中心视场点的 RMS 半径设置为 2.089 毫米,并得到探测器上成像的光斑的最终尺寸:
该透镜成像的光斑空间频率约为 72 lp/mm,其轴上 MTF 为 72.2%,我们将其作为检测该光斑成像质量是否充分的对比度参数。
结论
在这篇文章中,我们介绍了闪光激光雷达系统如何运行的背景,并将系统的两个组成部分通过序列模式系统进行建模。在为激光雷达发射器的衍射元件进行建模时,我们采用了一阶方法,以生成不同的投影级次,并评估和避免光源投影中存在任何潜在的重叠。此外,我们还讨论并验证了成像模块是否具有我们所需的充足性能。