APP下载

地外探测设备多传感器硬件时间同步方法研究

2022-01-21宋俊男朱世强原崧育许振宇李月华

空间控制技术与应用 2021年6期
关键词:下位上位激光雷达

宋俊男,朱世强,原崧育,许振宇,李月华

之江实验室,杭州 311100

0 引 言

在地外探测中,多源传感器数据的同时刻采集是传感器标定及数据融合的基础[1-3].目前传统的时间同步方法主要有网络时间协议NTP(network time protocol)、精密时间协议PTP(precision time protocol)和全球定位系统GPS(global positioning system)授时技术[4].NTP协议在应用层获取时间戳,通过在互联网上指定多个时钟源来对整个系统进行授时,能够提供10毫秒级的时间同步精度.PTP协议对传统NTP协议进行改进,时间戳添加在物理层,在兼容以太网的同时具有更高的同步精度[5-7].GPS系统以卫星携带的原子钟时间为基准,和协调世界时UTC(universal time coordinated)的误差仅为纳秒级,广泛应用于电力监测、自动驾驶和室内定位等领域[8-12].然而对于地外探测等严苛环境,设备无法接收GPS信号,同时无法从网络服务器中获取真实时间,难以通过精确授时实现多源传感器的时间同步.

此外,地外探测无人系统具有探测环境未知、先验知识欠缺和通信条件恶劣等显著特点,且危险识别难度大,探测器移动速度缓慢[13-15].通常数据采集系统配备多类传感器,如相机、激光雷达和惯性测量单元IMU(inertial measurement unit),用以充分感知环境,提升自主决策能力.然而,这些传感器通常基于不同的时间基准进行数据采集,考虑传输延时等误差因素,时间戳的偏差很难预测.文献[16-18]提出了一些新颖的传感器同步系统,但这些系统框架固定,传感器类型较少,难以应用于地外探测工程中.文献[19]展示了一种适用性较强的传感器平台,但在上位机和下位机时间同步时仍然存在难以有效估计的偏差.

在地外探测环境中,若多传感器间不能有效同步采集,探测器则难以自主决策、自主导航,甚至可能直接碰撞障碍物.针对这一问题,本文提出一种面向无GPS授时的多传感器时间同步方法,包含数据采集系统方案设计和硬件结构设计.基于嵌入式单片机控制系统,采用主控系统向传感器授时、各传感器同步脉冲触发的方式,实现视觉相机、激光雷达和惯性测量单元等多源传感器数据的同步采集.通过硬件实验平台测试表明,多传感器系统同步精度达到毫秒级.满足地外探测环境中探测器多传感器数据采集与融合、自主作业、自主定位导航的时间同步需求.

1 多传感器数据采集系统设计

本文设计的数据采集系统以下位机时钟为时间同步基准,包括视觉、惯导、雷达、天文和气象等5类传感器.其中,风速计、气压计和太阳敏感器等传感器数据更新频率较低,在毫秒级尺度传感数据基本不变,暂不需要高精度时间同步;而视觉相机、IMU和激光雷达工作频率高,数据量大,若采样时间戳出现异步偏差,在地外探测自主导航过程中会产生误差,可能导致碰撞、沉陷等严重后果,因此,对传感器采集时间同步有更高的要求[20].

本文设计的多传感器数据采集系统时间同步方法总体框图如图1所示,上位机在提供初始授时后,以下位机自身时钟为基准,分别产生10 Hz与100 Hz PWM脉冲触发IMU和视觉相机,并模拟GPS产生NMEA报文对激光雷达模拟授时,同时产生秒脉冲用于IMU和激光雷达的同步校时.对于气象、太阳敏感器等低刷新率传感器,下位机按照10 Hz速率读取其传感数据,并随10 Hz时间戳一并发送到上位机.以下分别阐述下位机及惯导、视觉和激光等3类传感器的时间同步方法.

图1 多传感器时间同步方法系统框图Fig.1 Multi-sensor time synchronization system

1.1 下位机时间同步方法

基于MCU的下位机系统结构如图2所示,上位机在系统启动时根据UTC产生初始时间戳,并向下位机进行一次授时.此后,下位机时钟独立运行,启动内部定时器进行微秒级时间累加与计数.利用下位机内部高速高精度晶振时钟作为系统时间基准,整个系统时钟不需要和上位机同步,避免了上位机数据传输、系统运行导致的同步误差.下位机输出多路脉冲宽度调制信号PWM(pulse width modulation),触发激光雷达、相机和IMU等多类传感器,传感器数据通过USB总线传输给上位机.由于触发脉冲同时从下位机产生,硬件延时只取决于PWM脉冲指令延时,各脉冲误差在100 ns内,因此,可以保证各传感器采集的数据在时间上高精度同步[21].

图2 下位机平台框图Fig.2 Slave computer platform

同时,下位机利用多个串口与舵机、气象类传感器和太阳敏感器和地面无人车辆UGV(unmanned ground vehicle)等设备进行连接,实现地外探测环境下的数据通信和外设驱动.云台舵机用于调节导航相机水平和垂直角度,气象类传感器可获取周围环境的风速、气压、湿度和温度等信息,太阳敏感器感知太阳矢量的方位,UGV可返回车辆行驶中的线速度和角速度等数据[22].这些传感器数据与下位机时间戳一同通过RS232总线传输至上位机.

1.2 视觉相机时间同步方法

视觉相机具有导航、避障等不同用途,本文对多个相机采用下位机同步脉冲触发的方法实现硬件时间同步.根据任务需求,相机采用10 Hz的脉冲信号进行触发,将相机曝光中点时刻作为图像采集时刻,如图3所示.

图3 相机触发脉冲Fig.3 Camera trigger pulse

在后续时序关系分析中,时间符号定义总结如表1所示.

表1 时间符号定义Tab.1 Summary of used time notations

相机曝光时间由上位机决定,多个相机具有不同的曝光时间.通过调整PWM信号的占空比可以实现相机曝光时长的动态调节,即

(1)

式中τ为占空比.由于相机输出的图像数据不含真实时间,因此需在上位机进行图像与时间戳信息的匹配.相机图像数据传输和下位机时间戳信息传输过程如图4所示.

图4 图像及时间戳传输时序Fig.4 Image and time stamp transmission sequence

T1和T2之间存在时间间隔,即

Δt=T1-T2

(2)

时间戳匹配具体步骤如下:首先以2Hz的频率触发相机,对传输过程中各时间段进行分析,可以计算出Δt的阈值小于0.5 ms,通过Δt阈值判断图像和时间戳是否对齐;待取值稳定后,计算相机内部返回的图像序号(Num)和下位机计数值(Seq)之间的偏离量(Ocam),即

Ocam=Seq(T1≈T2)-Num(T1≈T2)

(3)

若下位机和相机同时启动,则Ocam为零.之后,以10 Hz正常工作频率触发相机,通过Ocam匹配图像和时间戳.为防止相机出现丢帧情况,以相机内自带时间计数器进行校验,当2帧图像的计数值偏差大于正常值时,便可判断出现丢帧现象.

1.3 激光雷达时间同步方法

在地外探测等特定环境中,激光雷达无法使用基于GPS信号的同步方法,因此本文设计了一种使用下位机模拟GPS单元的方案,由下位机发送秒脉冲PPS(pulse per second)和报文,实现授时同步,PPS信号和报文的时序关系如图5所示.

图5 PPS信号和报文的时序图Fig.5 Synchronizing of PPS with message

激光雷达依据内部时钟,以10 Hz的频率采集数据,下位机生成包含时间戳的报文,通过串口发送给雷达.在PPS信号上升沿时刻,雷达内部将会清零微秒定时器值,并依据之前最接近该PPS信号的报文信息赋值整秒定时器,从而实现下位机时钟和雷达内部时钟的时间同步.由于上位机在激光发射器旋转一圈收到的数据包数量存在波动,因此存在时间同步误差,理论最大同步误差如式(4)所示

(4)

式中,n表示激光发生器转速,floor()为向下取整函数.

此外,当相机曝光时,激光雷达内部激光发射器需旋转至相机视角范围内,因此,需要配置雷达锁相控制功能.忽略相机接收到触发信号后的响应时间,可设置锁相角度为

(5)

这样,激光雷达与相机同时刻启动,雷达从Ps绝对角度开始旋转,在相机曝光时刻,激光雷达发射器正好旋转至相机视角中央位置,实现雷达与相机数据采集的同步.

1.4 惯导时间同步方法

IMU作为惯导系统模块,为系统提供惯性测量数据,帧率要求达到100 Hz.IMU由下位机进行硬件同步控制,数据通过USB接口直接与上位机通信.根据其工作特点,使用一种PPS时钟校正与PWM触发相结合的时间同步方法,如图6所示.在IMU接入通信系统后,上位机首先对单片机和IMU进行初始授时,通过PPS信号实现IMU与下位机时钟同步,以100 Hz频率的PWM信号硬件触发IMU,IMU以相同频率将包含时间戳的数据帧发送到上位机.

图6 IMU时间同步框图Fig.6 IMU synchronization block diagram

PPS信号与100 Hz的PWM信号时序如图7所示,IMU采用上升沿触发采集,PPS和PWM信号上升沿对齐,PWM时间间隔为10 ms.

图7 PPS信号与100 Hz PWM信号时序图Fig.7 Synchronizing of PPS with 100 Hz PWM

2 实验验证

2.1 实验平台

图8展示了在探测车上搭建的实验平台,包括上位机、下位机,还包括相机、雷达和IMU等传感器.上位机使用英伟达 Jetson AGX 工控机,其功耗低于30W,体积较小,易于嵌入到机器人等设备内部.下位机使用Cortex-M4内核的ARM STM32F407ZGT6微控制器MCU(micro control unit),该芯片集成FPU和DSP指令,带有1MB FLASH、12个16位定时器和2个32位定时器以及6个串口,可满足多路脉冲触发和多传感器通信的系统需求.整个实验平台还包括移动电源、UGV车体等.

图8 实验平台Fig.8 Experimental platform

2.2 软件流程

在MCU中编写控制程序,软件流程图如图9所示.系统初始化后,等待上位机初始授时,待系统授时后,读取UTC时间,并启动多路PWM输出,分别提供给激光雷达、相机和IMU.在10 Hz的PWM中断中,更新时间戳信息,并将太阳敏感器、舵机和气象类等传感器数据及时间戳打包发送至上位机.在1 Hz的PPS中断中,更新报文信息并发送给激光雷达,实现雷达和下位机的时钟同步.对于太阳敏感器、气象等低速传感器,采用下位机主动读取的方式获取其传感信息,频率为10 Hz.

图9 软件流程框图Fig.9 Software flow block diagram

2.3 时间同步实验

2.3.1 相机时间同步实验

为测试相机时间同步方案的可行性及其同步精度,设计一块LED灯计数板如图10所示.该计数板共有15个LED灯,最左边和最右边的灯常亮用于位置参考,其余13个灯用于二进制计数,右边为高数位.使用10 Hz脉冲信号同步触发相机,LED灯列的刷新频率为1 000 Hz,LED灯列对脉冲信号进行计数,比较每一帧图像附带的Num和相机捕捉的计数信息,以及对比不同相机捕捉的LED灯计数信息,判断是否匹配.同时,设定LED灯亮时间与相机曝光时间相同,若相机捕捉的LED灯亮度出现变化,证明相机未实现同步触发.

图10 LED计时板Fig.10 LED timing board

同步触发脉冲由MCU同时产生,不需电平接口转换直接触发各路视觉相机,多路触发脉冲之间仅存在皮秒级的电信号在导线中的传输延时以及100 ns以内的代码顺序执行导致的指令延时,因此,相机时间同步精度为亚微秒级.

实际实验中,相机捕捉的画面以及对应换算的Num值如图11所示.由图可知,画面内LED灯显示的计数值与对应的图像Num数值相同,LED灯亮度稳定,相机能够被下位机脉冲精确触发,且系统无丢帧现象.因此,在上位机便可以实现图像和时间戳的精确匹配.由于灯板不同亮灯状态的刷新频率为1 000 Hz,因此,通过对相机计数与其拍摄LED灯列显示数值的匹配,以及2台相机捕捉LED灯列数值的对比,可以证明相机时间同步精度在1 ms以内.

图11 相机实验结果Fig.11 Camera experimental results

进行时长1 h的实验测试,上位机收到的Seq和Num数值变化如图12所示.由于在实验中,下位机与相机同时启动,因此Ocam为零.实验中无数据丢失,2条曲线重合,证明了该同步方法的有效性.

图12 图像序号和下位机计数值变化Fig.12 Change of Seq and Num

2.3.2 激光雷达同步实验

在时长1 h的实验测试中,激光雷达内部时间变化如图13所示.雷达运行1 h共返回36 000组数据,内部整秒计时器计时至1 h对应的最大值后将清零重新开始计时.在上位机,将整秒计时器数值与MCU数据进行小时跳变纠正,将雷达时间转换至UTC时间.通过和下位机时间戳进行比较,判断雷达时间同步精度,实验结果如图14所示,长稳测试12 h以上,测试结果如图15所示.由两图可知,激光雷达时间同步精度为1.8 ms.此外,激光雷达自带时间戳存在0.8 us的周期性抖动,和式(4)计算结果相同,符合预期.

图13 激光雷达内部时间Fig.13 Lidar internal time

图14 激光雷达时间同步精度Fig.14 Lidar time synchronization precision

图15 激光雷达时间同步精度-12 h长稳测试Fig.15 Lidar time synchronization precision after 12 h

2.3.3 IMU同步实验

进行时长1 h的实验测试,IMU时间同步精度变化如图16所示.由图可知,IMU数据携带的内部时间和下位机时间戳比较,系统运行1 h的最大时间同步误差为0.12 ms.IMU数据按照10 ms的数据周期产生数据,系统长稳测试结果如图17所示,其中,纵坐标表示IMU时间同步误差,单位为毫秒,经测试,系统运行12 h后,IMU最大时间同步误差为2.2 ms.

图16 IMU时间同步精度Fig.16 IMU time synchronization precision

图17 IMU时间同步精度-12 h长稳测试Fig.17 IMU time synchronization precision after 12 h

IMU产生此同步误差是由其自身产生数据的机制及内部时钟频偏导致的,由于IMU内部频偏约为0.07 ppm,会产生不可避免的误差累积.通过配置IMU的clocksync模式,采用下位机发出的PPS信号进行校时,可以有效减小同步误差累积,使其长时间同步误差稳定在2.2 ms左右,符合设计要求.

3 结 论

为了在地外探测等无GPS信号环境下对传感器数据进行同步采集,解决地外场景下探测器多传感器同步精度低、难以协同作业实现自主定位导航的难题,本文综合利用模拟GPS报文授时、秒脉冲校时和脉冲同步触发等多种授时与同步机制,创造性地提出一种面向无GPS授时的多传感器硬件时间同步方法.使用单片机作为下位机控制核心,各传感器时钟与下位机时钟同步,基于硬件触发分别设计了相机、惯性测量单元和激光雷达的高精度时间同步方案.在UGV上搭建硬件平台,并进行多组时间同步验证实验.实验结果表明,本文提出的时间同步方法可以实现多源传感器数据的同步采集,系统运行稳定,同步精度约为2ms.本文设计的系统搭建容易,易于扩展,是一种兼具高可行性和精度优势的多传感器时间同步方法.

猜你喜欢

下位上位激光雷达
激光雷达实时提取甘蔗垄间导航线
法雷奥第二代SCALA?激光雷达
上位词和下位词在初中英语补全对话中的应用与教学建议
融合激光雷达与超声波数据的障碍物检测方法
Ouster发布首款全固态数字激光雷达
某MT车型无法启动和怠速启停失效问题分析
一场史无前例的乐队真人秀
贯彻《方案》要打好下位创新这张牌
围观党“下位”,吐槽帝“登基”
基础油“上位”