张晶威,刘铁军,李仁刚,刘 丹,詹景麟,阚宏伟
(1. 浪潮集团有限公司,高效能服务器与存储技术国家重点实验室,北京 100085;2. 广东浪潮智慧计算技术有限公司,广州 510627;3. 浪潮(北京)电子信息产业有限公司,北京 100085)
多传感器的信息融合与AI 加速平台(异构加速器)逐渐应用于边缘计算中心、自主机器人、自动驾驶车辆、无人机等领域,并成为信息感知、决策的应用趋势。在自动驾驶感知域应用中,激光雷达(light detection and ranging,Lidar)、图 像 传 感 器(Camera)、惯性测量单元(inertial measurement unit,IMU)的信息融合算法成为其研究的热点问题。激光雷达能够感知外界环境的深度信息,图像传感器能够感知外界环境的纹理信息,IMU 能够测量物体的三轴姿态和加速度,多传感器对外界环境的感知信息形成互补,成为面向自动驾驶应用的核心传感器组合方案。针对多模态数据的融合算法而言,时间同步信息是数据重要组成部分,时间校准是信息融合技术的基础问题之一。
宏观地看,不同类型传感器的时间校准主要包括硬件方法和软件方法。其中硬件方法依赖于传感器硬件支持时间戳的标记。包括控制器对传感器单向触发(例如图像传感器的曝光信号触发,做时间戳标记)和双向的精确时间协议(例如支持IEEE1588协议的传感器与控制器通过交互报文实现时间同步)。在没有硬件支持的情况下,软件方法多是基于传感器和被测系统的状态特征,利用算法估计传感器与中心计算机的时间偏差,并评估信息融合的效果。机器人领域的多传感器时间校准问题研究早于自动驾驶领域,大多IMU 不包含时间戳信息,因此IMU 与其他传感器的信息融合、时间校准是典型利用算法实现时间同步的应用场景。
图1 是一种自动驾驶的多传感器数据流与中心计算机时间对齐的场景示例,其中系统时间与激光雷达的时间戳对齐,转动频率10 Hz 的激光雷达,旋转1 周标记一次时间戳(time stamp),实际上激光雷达的每一个数据包都包含时间戳,并可以通过激光器的触发时间回溯点云中每一个点的触发时刻。而系统中的IMU 和图像传感器数据是连续发送的,工程应用中采用插值或估计的方法使上述感知数据与中心计算机时基对齐。例如在时间点,激光点云数据和图像传感器数据融合采用直接插值的方法,即采样曝光时间与最接近的图像I进行对齐融合。在时间点,激光点云数据和图像传感器数据融合采用线性加权方法,t时刻曝光图像数据I,t时刻曝光图像数据I,这两帧图像数据的曝光时刻是距离时刻最邻近的时刻。即I·(1-)+I·数据作为时刻的图像数据。类似的,对应计算机在某一时刻t的姿态信息,可以基于IMU 数据和算法进行估计。
图1 自动驾驶感知域多传感器数据的时基对齐
文献[9]中提出一种面向机器人应用的激光雷达和图像传感器时间校准的方法,并测试了多种激光雷达、图像传感器和系统中心计算机的时间偏差。其测试应用的图像传感器是USB 接口的工业相机,与目前车载应用、自动驾驶路测的图像传感器在曝光(触发)控制方式,图像与传感器控制的数据链路存在差异。文献[10]中提出一种将多传感器同步到中心计算机时间的框架,而设计的基础是各传感器具备可标记的时间戳。
本文中提出自动驾驶应用的机械式激光雷达时间戳为时间基准,分别与图像传感器、IMU 进行时间校准。利用激光雷达固定的扫描频率及其激光发光时刻特征,激光发光触发校准设备形成触发事件,以及图像传感器和IMU自身特征形成时间校准方案和系统。
本文的主要工作有:
提出一种面向自动驾驶应用的基于激光雷达时间戳(系统时基)的多传感器时间校准的方法。
在激光雷达与图像传感器时间校准问题研究中,提出基于激光雷达激发校准设备形成触发标记,通过图像传感器感知外界事件(LD阵列的发光状态)标定激光雷达时间戳与图像传感器曝光时刻的时间差,并通过示波器对比测量校验证明方案的有效性。
在激光雷达与IMU 的时间校准问题研究中,提出基于转台及本文设计的激光雷达信号采集系统,对激光雷达连续两次触发的事件组时刻和IMU的姿态数据进行时间标定,并设计对比试验证明其有效性。
激光雷达与图像传感器的数据融合应用中,图像信息常作为稀疏点云的插值并提供纹理信息。
激光雷达的工作模式是本文在线校准实验方案的基础。自动驾驶应用的机械式激光雷达大多应用905 nm 波长的激光器并组成阵列,激光器阵列按照确定顺序依次发光,激光雷达检测回波并利用飞行时间法(time of flight,ToF)获取目标的距离。回波检测单元的敏光器件是雪崩光电二极管(avalanche photodiode,APD)。激光雷达旋转360°获得周围环境的三维点云。机械式激光雷达的数据帧(frame)包含时间戳,其中的每一个数据块(block)包含水平角度(azimuth)信息。另外,激光的发光(fire)时刻和储能(recharge)时间被严格确定。
机器人应用中的图像传感器的曝光触发延迟通常可以忽略。车载图像传感器的安装位置距离感知域控制器或中心计算机的距离较远,且具有较高的稳定性要求,不能直接应用工业相机常用的数据接口。图2 所示是常见的两种车载图像传感器传输和控制信号拓扑,即图像信号处理器(image signal processor,ISP)前置拓扑和图像信号处理器后置拓扑,两种拓扑的传输和控制链路中均包含一组信号的串化器(serializer)和解串器(deserializer),它们作用是将图像数据或控制信号串化成为高速信号并通过同轴线缆传输,以及将同轴线缆传输的高速信号解串化。在同轴线缆中,数据信号和控制信号是以频分复用的方式进行传输,即图像信号(称前向信号,forward signal)一般以1.5~6 GHz比特率传输,控制信号(称反向信号,reverse signal)一般以187.5 MHz 比特率传输。
图2 两种车载图像传感器与控制系统拓扑
鉴于车载图像传感器的特点,车载中心计算机或电子控制单元(electronic control unit,ECU)与激光雷达的时间戳同步,并触发图像传感器的曝光(图像帧同步时间戳)的过程包含两部分时间延迟,一部分控制计算机接收到激光雷达时间戳后触发图像传感器曝光的任务处理延迟,一部分是报文形式曝光命令的传输延迟。
前文所述控制计算机对车载图像传感器曝光存在延迟,另外不同类型车载图像传感器、计算机系统具有不同时间延迟参数。本文设计了基于激光雷达触发事件与图像传感器感知事件的时间校准方法。
实现的具体流程如图3 所示,校准设备的APD接收激光雷达激光触发,如图3 中①所示,触发信号分别传输至校准设备和中心计算机(或ECU)。其中激光传输并触发APD 的时间极短,可以认为校准设备的接收时刻″与激光发光时刻′对齐,校准设备以Δ时间间隔,改变激光二极管(laser diode,LD)阵列的发光状态,并作为图像传感器的采集目标。中心计算机以中断事件处理该外部触发(时刻),执行中断函数中的其他任务以及输出图像传感器曝光信号(t时刻是计算机系统标记图像传感器的时间戳),曝光信号报文经串化器-解串器组传输至图像传感器的CMOS,如图3 中②所示。′、″时刻对齐,图像传感器捕捉到LD 阵列发光状态时刻为″+·Δ,·Δ则为计算机中激光雷达时间戳与图像传感器曝光时刻的时间延迟,如图3 中③所示。需要注意的是因为中心计算机上运行的操作系统差异,或因任务抢占可能使与t的时间差产生抖动。
图3 激光雷达与图像传感器时间校准系统方案
本文采用基于FPGA的并行采集、控制激光雷达信号和图像传感器信号系统,验证该时间校准方案。
外部校准设备的激光触发传感器为905 nm APD,与激光雷达的敏光器件类型一致。本文采用First Sensor 公司的AD230-9 TO,其敏光直径=230 μm。通过调整校准设备与激光雷达的相对位置,使APD 能够检测到激光触发。激光雷达的水平角度(azimuth)扫描分辨率远小于激光竖直方向角度(vertical angle)分辨率。以Velodyne 公司的VLP-16为例,其水平扫描分辨率为0.2°(转动频率10 Hz),激光阵列的垂直角分辨率为2°,在距离激光雷达1 m 的APD 处,水平方向同一激光器两次发光,其光斑中心移动约3.474×10μm。而竖直方向上,不同的两束激光的中心间隔约为3.492×10μm,远大于APD 的敏光直径,因此APD 仅能检测到激光雷达阵列中某一水平面的单个激光器发光。其检测到单次触发波形脉冲过程<10 ns,图4 为APD 感知激光雷达发光的相对位置示意图。
图4 激光雷达与APD的相对位置示意图
多数激光光束的能量符合高斯光束特征,其光场强度的高斯函数如式(1)所示。
式中:为峰值参数;、为横向分别参数。
因此,APD 感光产生的光电流以激光雷达光斑中心向辐照区域的边缘衰减,图5 为APD 测得激光雷达连续发光脉冲波形。校准设备的APD 有效直径(=230 μm)远小于激光两次发光时间间隔所经过的位移(约3.474×10μm)。
图5 校准设备APD感知激光雷达触发波形及原理
时间校准与系统检测到有效的电压脉冲事件直接相关,其中光场强度的分布函数是影响时间校准的因素之一。此外,施加于APD的反偏电压(图3 中HV)、跨导放大器(TIA)的反馈电阻(图3 中)综合决定了APD 感知激光雷达触发的脉冲电压值。另外,检测电路中的比较器约束了捕捉脉冲电压的有效窗口。
试验中发现,调制更高的反偏电压并约束更窄的有效窗口,对激光雷达安装的稳定性、测试环境、检测电路都有较高要求,会经常出现丢失捕捉脉冲电压的情况。
校准设备采用LD 阵列的不同发光状态表征APD 被激光触发后的不同时刻,图像传感器通过捕捉到LD阵列的发光状态,得到感知域系统的激光雷达与图像传感器CMOS 曝光的相对延迟,这种方法的优点在于可以计入中心计算机任务处理的时间延迟。不同于文献[8],本文采用605 nm 波长LD 组成阵列,因为LD具有更快的发光响应。
采用FPGA 作为校准设备的计算和控制核心,如1.3 节所述,外设捕捉到两次窗口触发事件后,按一定的顺序调整IO 接口状态,从而改变LD 阵列的发光状态。LD 发光需要一个恒流源驱动电路,本文采用FPGA 驱动三级管,再驱动恒流源的两级驱动电路。其控制电路如图6所示。
图6 校准设备LD阵列的控制与驱动电路图
本文采用7 只LD 激光可以组合形成128 种不同的发光状态,每种状态间隔Δ= 250 μs,即可以测试32 ms 内的图像触发延迟。图7 为校准设备FPGA 控制状态机,其采样电路连续采集两次触发事件并驱动改变一次LD 阵列发光状态。定义状态机中lidar_trigger_event 为“1”时,表示采集电路被激光有效触发。定义Δ为同一激光器连续两次发光的时间间隔,本文测试的VLP-16 的激光发光时间间隔为55.296 μs,因此设定有效的连续两次采集的判断条件40 μs<Δ<60 μs,并有效地连续两次采集记为一次事件,以该事件驱动改变一次LD 阵列状态,校准系统的时间分辨率为Δ=250 μs。
图7 校准设备触发与LD阵列状态控制状态机
本文实验中的被校准设备是以SoC(含ARM 处理器和FPGA 逻辑单元)为核心的计算单元感知域控制器,由FPGA 逻辑单元例化图像数据接口控制器,并通过MIPI 接口连接外置图像信号处理器(image signal processor,ISP),经由串化器-解串器组处理,最后连接CMOS 图像传感器,这是一种典型的ISP 后置的图像传感器连接方式。图8 为该感知域控制器及其外接传感器系统。
图8 实验的感知域控制器及传感器系统
实验步骤如下:
(1)感知域控制器的FPGA 逻辑接收校准设备的触发事件后(时刻),将曝光指令通过I2C 接口发送至ISP;
(2)ISP 通过I2C 接口与解串器通信,并映射为串化器对CMOS 传感器的控制,这段控制映射报文是通过POC 同轴线缆介质以高速报文传输至图像传感器,曝光时刻为t,实验的POC 同轴线缆长度为5 m,实验方案中~t可以类比中心计算机的系统任务延迟;
(3)图像传感器感知LD 阵列的发光状态,实测得到感知图像计算~t时刻的延迟;
(4)使用示波器测量标定FPGA 接收触发脉冲事件时刻至CMOS 图像传感器接收I2C 曝光信号报文的时间t,作为校准设备有效性的对比实验。
基于2.1 节所述测试系统,表1 为实验测试5 次激光雷达触发与图像传感器曝光延迟,并采用示波器测量该延迟,对比测量误差最大为0.18 ms(第5次)。图9 为FPGA 与ISP 通信并最终转换成为图像传感器曝光的报文延迟波形。
表1 校准设备测试图像传感器系统延迟
图9 图像曝光控制链路报文与延迟
图10为串化器与解串器I2C报文映射的传输延迟,其中POC 线缆长度5 m,实测该延迟约7.81 μs,串化器与解串器系统将通用的I2C 接口报文(100 kbps/400 kbps)转化成为187.5 Mbps 高速报文,说明该延迟远小于计算机接收激光雷达时间戳并触发曝光信号的任务处理与报文转换时间。
图10 串化器与解串器的I2C映射控制报文延迟
本文采用激光雷达与图像传感器的时间校准,获得系统中上述两种传感器数据的时间戳延迟因子,并利用该延迟因子对实际系统进行补偿。但是采集数据的精度受限于LD发光阵列的时间分辨率。鉴于此,可以采集多组测试数据,并利用算法优化延时因子。假设地情况,对测试结果在2.25~2.50 ms的次采样结果进行分析,发生在2.25 ms时刻曝光次数为,发生在2.50 ms 时刻曝光次数为-,实现对该延迟因子线性加权优化,得到
在多传感器融合的感知域系统中,IMU 一般是接入组合导航系统再间接地连接至中心计算机,组合导航控制系统将IMU 数据做时间标记后,上传至中心计算机。同时导航系统的时间信息是自动驾驶计算平台的时间基准,平台基于以太网实现系统的时间同步。基于上述系统实现了激光雷达数据和IMU姿态信息的时间同步。系统如图11所示。
图11 自动驾驶的激光雷达与组合导航系统
但是,上述系统的时间同步可能存在如下问题。一方面是组合导航系统标记IMU数据时间戳时存在误差,即卫星导航的时间与IMU 时间存在误差。另一方面是激光雷达数据的时间戳与IMU 姿态信息标记时间随数据进入中心计算机系统,或因计算机系统的任务处理而产生时间抖动。
本文中提出一种基于激光触发事件的激光雷达与IMU 在线时间校准方法,其系统方案如图12 所示,激光雷达安装于转台滚转轴系,与转台随动,IMU 数据经转台滑环、组合导航系统间接输入至中心计算机。激光雷达触发APD 校准设备,APD 脉冲事件采集调理电路部分与图3 相同,满足窗口门限的、有效的连续两次APD脉冲事件(间隔55.296 μs)组成一个有效事件组(case),而两次有效事件组(case)的时间间隔Δ正比于激光雷达转速与转台转速之差(以激光雷达旋转方向为角速度正方向)。
图12 激光雷达与IMU时间校准系统方案
基于上述系统,将转台设定为振动模式(角位移范围-35~35(°)/s,振动频率1 Hz),中心计算机连续采集IMU数据并记录。另外中心计算机采集到一次IMU的数据包(含轴角速度),其处理函数流程跟随APD采集两个脉冲事件组(case)的时间差值,该值与激光雷达-转台坐标系两者的转速差相关。对比中心计算机记录的IMU的数据曲线与采集的连续两次事件组的差值Δ曲线。即可标定该中心计算机激光雷达时间戳时刻与IMU姿态读取时刻的时基误差。
本文设计了一种基于FPGA 为计算核心的测试系统,验证3.2 节实验方法的可行性。该实验系统如图13 所示,系统的数据采集核心为FPGA,IMU 数据通过SPI 接口接入FPGA,同时FPGA 并行采集激光雷达的激光触发APD 事件,并记录连续两次触发的时间间隔。
图13 激光雷达与IMU时间校准测试系统
实验步骤如下。
(1)FPGA 连续采集IMU 的姿态信息,并提取轴角速度,得到基于FPGA时基的-曲线。
(2)FPGA 读取IMU 姿态同时并行采样APD 感知事件组(case)。对转台进行调零,使APD 感知激光雷达触发时的转台角位移为0°,将激光雷达-转台组合系统第一次感知事件组的角位移标定为0°,则该组合系统再次触发感知事件组的角位移满足式(3)。
式中:为激光雷达-转台相对APD 的角位移;为激光雷达工作的角速度;为振动模式下转台角位移幅值;为转台工作在振动模式下的振动频率;为转台工作在振动模式下的周期;t为采样到第次感知事件组的时刻。
采集到基于FPGA 触发事件组时刻t,定义激光雷达旋转方向为角位移正方向。
(3)角位移微分可以得到t时刻的激光雷达-转台瞬时角速度:
式中为激光雷达-转台系统相对APD的角速度。
对比FPGA 时基下测得的IMU 角速度,即可计算与在FPGA时基下的延迟。
(4)采用转台和转台实时仿真计算机,标定该IMU的惯性延迟,作为(1)~(3)的对比实验。
本实验中转台的性能参数如表2 所示,转台工作在振动模式,其角位移范围-35~35(°)/s 振动频率为1 Hz,振动周期为1 s。激光雷达VLP-16 的扫描频率为10 Hz,即=3600(°)/s。实验的惯性测量单元为ADI公司的ADIS16365。
表2 TBL-TEK3301-A03三轴电动转台参数
将本实验中的转台与激光雷达参数代入激光雷达-转台坐标系相对于APD 的角位移公式,可以得到:
以FPGA 第1 次采集有效触发事件(case)起标记为0 时刻,有效触发事件依次发生在激光相对APD 的π角位移处,并在FPGA 中记录相应的时刻t。
同时在FPGA 中读取IMU 在各t时刻的角速度数据,根据式(7)可以计算得到IMU姿态数据相对激光雷达-转台的时间延迟。
基于上述实验方法测得IMU相对激光雷达的延迟时间见表3。
表3 本文实验方法测得IMU相对激光雷达延迟
IMU 相对转台运动姿态的惯性延迟是通过转台和实时仿真计算机标定和计量的,该系统如图14 所示,其中实时仿真计算机(含实时驱动软件)、转台控制机柜、转台驱动机柜中都包含反射内存卡,并组成光纤环网,当该系统进入仿真控制模式时,可校准转台运动姿态时基与仿真计算机的时基及驱动指令时间。
图14 标定IMU的半实物仿真平台
在该系统平台下,IMU 数据经转台接线端子、滑环、线缆传输至实时仿真计算机,测得IMU在实时仿真计算机时基下相对于转台运动姿态的时间延迟。
如图15(a)为半实物仿真平台标定IMU 相对转台的时间延迟。其中转台内框姿态是实时计算机时基下转台的运动姿态,惯组解算内框数据是IMU 测得转台的运动姿态,上述两者的相位差反映了IMU相对转台运动姿态的惯性延迟。该系统测得IMU相对转台的惯性延迟为20±3 ms。图15(b)为该惯性延迟的相位差局部放大图。
图15 半实物仿真平台标定IMU相对转台时间延迟
本文基于激光雷达传感器的信号接收原理,以及图像传感器和IMU自身特性,设计了激光雷达、车载图像传感器、IMU 的校准系统及实验方案。实验证明该方法能够有效校准上述传感器数据接入中心计算机系统的时间延迟。其中激光雷达、车载图像传感器的时间延迟精度≤250 μs,其时间延时的主要影响因素在于中心计算机曝光指令的处理过程。针对激光雷达与IMU 的时间校准方案,测得时间延时误差为20±5 ms,转台半实物仿真测试系统测得其时间延迟为20±3 ms。
本文设计的实验方法利用了自动驾驶应用中传感器自身的感知特性,匹配部分外界场景,校准包括传感器、车载感知计算平台、数据采集计算软件综合的车载感知系统的时间延迟。满足自动驾驶系统中运行状态下的感知软硬件时间校准需求,并可通过标定的时间延迟因子参数对实际运行系统进行补偿。