开源激光雷达原型平台

描述

作者:István Csomortáni,Dragos Bogdan,Cristian Orian, andAndrei Cozma

本文讨论ADI公司新的广阔市场LIDAR原型设计平台,以及该平台如何通过提供完整的硬件和软件解决方案来帮助缩短客户的产品开发时间,客户可以使用该解决方案对其算法和定制硬件解决方案进行原型设计。它详细介绍了模块化硬件设计的细节,包括光接收和发射信号链、FPGA 接口和用于远距离检测的光学器件。解释了所做的系统分区决策,有助于强调良好的系统设计、接口定义和适当模块化级别的重要性。介绍了开源 LIDAR 软件堆栈和特定于平台的 API 的组件,展示了客户如何在产品开发过程中从中受益,并将其集成到最终解决方案中。

介绍

随着自动驾驶汽车和机器人不断从科幻小说走向现实,汽车和工业客户正在寻求新的环境感知解决方案,以使这些机器能够自主导航。激光雷达是该领域发展最快的技术之一,随着技术变得更加成熟和可靠,激光雷达正在得到更广泛的采用,开辟了巨大的市场机会。由于许多初创公司和知名传感器公司正在努力开发更精确、功耗更低、外形更小、更具成本效益的 LIDAR 传感器,因此在系统硬件设计和实施软件基础设施以与系统中的所有组件进行通信时,它们都面临着相同的挑战。在这些领域,ADI可以通过硬件参考设计以及开源软件堆栈带来价值,使客户能够轻松地将ADI LIDAR产品组合中的IC以及软件模块和HDL IP集成到其产品中,从而缩短产品上市时间。

系统架构

随着客户开发其激光雷达传感器,系统设计中几乎没有差异化领域:接收和发射光学器件、激光器的数量和方向、激光发射模式、激光束转向和光接收元件的数量。但是,无论这些选择如何,接收信号链和激光驱动信号要求都存在高度的共性。基于这些假设,ADI公司设计了模块化LIDAR原型平台AD-FMCLIDAR1-EBZ,旨在允许客户使用自己的硬件轻松配置或替换设计部件,根据特定应用要求进行设计,但仍能够将该平台作为一个整体系统使用。该系统分为三个不同的板,具有标准化的数字和模拟接口:

数据采集 (DAQ) 板,包含高速 JESD204B ADC 以及相应的时钟和电源。该板具有符合FMC标准的接口,可连接到用户首选的FPGA开发板。它充当系统中的基板,通过数字连接器将其他两个板连接到基板,数字连接器在这些板和FPGA之间路由控制和反馈信号,并通过同轴电缆传输模拟信号。

模拟前端 (AFE) 板,包含雪崩光电探测器 (APD) 光传感器和调理 APD 输出信号所需的整个信号链,以便将其馈送到 DAQ 板上的 ADC。

包含激光器和驱动电路的激光板。

传感器

图1.激光雷达平台系统设计。

与往常一样,在系统设计中,模块化意味着灵活性,但它也存在诸如复杂性增加、性能下降和成本增加等缺点,在决定系统分区时必须对其进行全面评估。在本例中,系统被分解为这三块板,原因如下:

无论模拟前端和所选激光解决方案的实现方式如何,ADC和时钟都很可能保持不变。

模拟前端硬件设计和外形尺寸可能会发生变化,具体取决于所选的 APD、整体系统接收灵敏度和所选光学器件。

激光板的设计和外形尺寸也可能根据所选的照明解决方案和光学器件而发生变化。

系统必须在接收器和发射器的定位和定向方面提供很大的灵活性,以便它们彼此对齐或其他目标,这就是为什么柔性电缆用于数字信号和同轴电缆用于板之间的模拟信号的原因。

硬件设计附带的软件堆栈基于分层方法,其中几层将其划分为特定于操作系统的驱动程序和接口、特定于系统的 API 和应用程序层。这允许堆栈的上层保持不变,无论软件是在嵌入式目标上运行,还是通过网络或 USB 连接与系统通信的 PC。这在不同的产品开发阶段非常有价值,如图2所示,因为这意味着在原型设计阶段开发的相同应用软件,当系统连接到PC以方便开发时,可以很容易地部署到嵌入式生产系统上,而无需接触低级接口。

传感器

图2.产品开发周期。

硬件设计

LIDAR传感器通过测量光脉冲到达目标并返回所需的时间来计算到目标的距离。时间以ADC采样速率的增量测量,因为这决定了系统对接收到的光脉冲进行采样的分辨率。公式1显示了相对于ADC采样速率的距离计算方式。

传感器

哪里:

LS是光速,3×108米/秒

fS 是 ADC 采样速率

N 是自光脉冲生成到接收回来以来的 ADC 样本数

假设系统中使用的AD9094 JESD204B四通道ADC的采样速率为1 GHz,则每个采样的结果对应于15 cm的距离。因此,系统中没有任何采样不确定性至关重要,因为即使是几个样本的不确定性也会导致较大的距离测量误差。传统上,LIDAR系统基于并行ADC,其固有的采样不确定性为零。随着接收通道数量的不断增加以及功率和PCB尺寸要求变得更加严格,这些类型的ADC无法很好地扩展。另一种选择是使用具有高速串行输出的ADC,例如JESD204B,它解决了并行ADC存在的问题。此选项增加了数据接口的复杂性,使实现零采样不确定性变得更加困难。

LIDAR DAQ板展示了如何为在子类1模式下运行的JESD204B数据采集系统设计电源、时钟和数据接口,确保确定性延迟,从而实现零采样不确定性,同时利用JESD204B接口提供的所有优势,并为时钟方案提供尽可能低的功耗,从而为这些挑战提供解决方案。要在JESD204B子类1模式下工作,系统中总共需要五个时钟:

ADC 采样时钟:驱动 ADC 信号采样过程。

ADC 和 FPGA SYSREF:源同步、高压摆率时序分辨率信号,负责复位器件时钟分频器,以确保确定性延迟。

FPGA全局时钟(也称为内核时钟或器件时钟):驱动JESD204B PHY层和FPGA逻辑的输出。

FPGA参考时钟:生成JESD204B收发器所需的PHY层内部时钟;需要等于或设备时钟的整数倍。

所有时钟均由一个AD9528 JESD204B时钟发生器产生,从而确保它们彼此同步。图 3 显示了时钟方案以及与 FPGA 的数据接口。

传感器

图3.DAQ 板 时钟 和 数据 路径。

AFE板接收光反射信号,将其转换为电信号,并将其传输到DAQ板上的ADC。该板可能是整个设计中最敏感的部分,因为它将信号条件电路与 16 通道 APD 阵列产生的微安电流信号混合在一起,将光信号转换为电信号,以及为同一 APD 供电所需的 –120 V 至 –300 V 范围内的高压电源。16 个电流输出通过一个内部 4:1 多路复用器馈入 4 个低噪声、4 通道、跨阻放大器 (TIA) LTC6561s,以选择随后馈入 4 个 ADC 输入之一的输出通道。TIA的输入部分需要大量关注,以实现所需的信号完整性和通道隔离水平,以便APD产生的极低电流信号不会增加额外的噪声,从而最大限度地提高系统的SNR和目标检测率。AFE 板的设计展示了实现最大信号质量的最佳实践,方法是保持 APD 和 TIA 之间的走线长度尽可能短,在 TIA 输入之间增加过孔以实现最大的通道间隔离,并定位信号条件电路,使其不会干扰板上的其他电源电路。另一个重要特性是能够测量APD的温度,以便能够补偿APD信号输出的变化,因为APD的温度在正常工作期间升高。提供几个旋钮来控制信号链的偏移和APD偏置(转换为APD灵敏度),以便能够最大化ADC输入范围以获得最大SNR。图4显示了AFE板信号链的框图。

传感器

图4.AFE 板信号链。

激光板产生波长为 905 nm 的光脉冲。它使用四个同时驱动的激光器来增加光束强度,从而延长测量范围。FPGA载板产生的PWM信号具有可编程的脉冲宽度和频率,用于控制激光器。信号在FPGA上以LVDS的形式生成,使其在通过DAQ板和连接DAQ和激光板的带状电缆从FPGA传输到激光板时不易受到噪声的影响。驱动信号可以反馈到其中一个ADC通道,作为飞行时间参考。外部电源用于为激光器供电。该设计符合国际标准 IEC 60825-1:2014 和 IEC 60825-1:2007 的 1 类激光产品。

传感器

图5.激光板信号链。

AFE 和激光板都需要光学器件才能进行长距离操作。该系统经证明可在使用快速轴准直器在 60 m 处运行1用于将垂直FoV缩小到1°同时保持水平视场不变的激光二极管,以及用于接收侧的非球面透镜。

高密度脂蛋白参考设计

HDL设计构成了硬件的主要接口,并实现了将数据从JESD链路传输到系统存储器的所有逻辑,驱动激光器,同步接收器和发射器以实现精确的飞行时间测量,并实现与硬件设计中所有组件的通信接口。图6显示了HDL设计的简化框图。ADI公司HDL参考设计的通用架构使该框架具有可扩展性,并且更容易移植到另一个FPGA载波。该设计采用ADI公司的JESD204B框架2以及多个SPI和GPIO接口,用于从AD9094 ADC接收数据并控制原型平台上的所有器件。

传感器

图6.高密度脂蛋白设计框图。

JESD204链路配置为支持四个数据转换器(M),使用四个通道(L),通道速率为10 Gbps,转换器分辨率为8位。器件时钟与高速收发器的参考时钟相同,设置为 250 MHz,由 DAQ 板 提供。链路在子类 1 模式下运行,可确保高速转换器和 FPGA 之间的确定性延迟。

LIDAR系统面临的最大挑战之一是如何将各种功能与发射脉冲同步,以及如何处理从高速ADC接收的必要数据量。为了解决这个问题,HDL设计包含一个IP,该IP提供产生激光脉冲所需的逻辑,控制TIA的内部多路复用器,并为DMA提供背压。所有这些控制功能都与发射脉冲同步,因此系统不必保存所有原始数字化高速数据流。这样,系统的整体数据速率大大降低。

软件

定义激光雷达平台软件堆栈的关键点是免费和开源的。用户通过他们获得“运行、复制、分发、研究、更改和改进软件的自由”。3从 Linux 内核开始,继续使用用户空间工具,一切都尊重这一点。®

传感器

图7.软件堆栈。

内核中实现的软件驱动程序初始化硬件组件,并向用户公开其所有有用的功能。这些驱动程序中的大多数都是工业 I/O (IIO) Linux 子系统的一部分。4这些驱动程序都与平台无关,因此硬件更改(包括载波更改(例如,从 Xilinx FPGA 迁移到英特尔驱动程序)不需要更改它们。®®

为了简化软件接口IIO器件的开发,ADI开发了libiio库。5它抽象了硬件的低级细节,并提供了一个简单而完整的编程接口,可用于高级项目。各种可用的libiio后端(例如,本地,网络,USB,串行)使得可以从在不同操作系统(例如,Linux,Windows,macOS)上运行的应用程序本地和远程使用IIO设备。®®

ADI公司开发的IIO示波器是使用libiio与IIO器件接口的应用示例,可在系统评估阶段使用。该工具可以在不同模式(例如,时域、频域、星座、互相关)下捕获和绘制数据,传输数据,并允许用户查看和修改检测到的设备的设置。

传感器

图8.显示激光雷达数据的IIO示波器捕获窗口。

虽然 libiio 提供了一个低级编程接口,但在大多数情况下,用户期望一个特定于平台的 API,该 API 抽象低级驱动程序调用并公开一组函数来访问和配置各种系统参数以及从系统流式传输数据。出于这个原因,LIDAR原型平台附带了一个特定的API,其中包含用于流行框架和编程语言(如C / C++,MATLAB或Python)的绑定。®®6使用户能够使用他们喜欢的编程语言与系统交互,并专注于算法和应用程序,这是向客户提供的价值。

结论

在任何系统设计中,当建立架构并做出设计决策时,都会存在一定程度的歧义。这表示系统在构建后无法按预期工作或执行的风险,从而导致多个设计周期、增加开发成本和延长产品上市时间。参考设计建立在旨在相互互操作的预制系统之上,与使用从头开始构建的自定义一次性设计相比,参考设计可降低风险并提高整体可预测性和可靠性。在规划过程中使用参考设计作为起点有助于更快地将新设计推向市场,并有助于确保减少意外和问题。系统设计人员一直在寻找参考平台来证明设计决策,从而降低风险并提高可靠性。使用清晰和标准化的设计选项启动项目有助于规划过程。它通过使用通用语言来帮助协调目标,鼓励跨多个职能部门的合作和参与,并更轻松地评估设计目标之间的权衡。LIDAR原型设计平台试图通过提供可在初始系统架构阶段引用的开源硬件和软件设计来满足这些需求。硬件平台和软件堆栈可用于产品开发的所有阶段,从初始系统评估、开发和集成到最终产品中。参考设计的内容(如工程图纸和 BOM)为构建可构建、合法和本地化的设计系统提供了良好的开端。这缩短了设计周期,并可能在此过程中节省资金。模块化硬件设计允许各种配置选项以满足特定的应用程序要求,而开源软件堆栈基于行业标准框架和编程语言,并附有应用程序示例,使客户能够专注于开发为其产品带来价值的应用程序,而无需在堆栈的低级部分花费精力。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分