2023-02-16自动驾驶中时间同步简介

由于自动驾驶中,每种传感器频率不一样,传输过程耗时不一样等,造成无法在同一时刻同时获取所有传感器瞬时发的数据。就会有时间同步操作。

时间同步可以分为几部分的内容:统一时钟源,硬件同步,软件同步。

一、统一时钟源

1、假设各传感器都有自己的内部时钟,但由于每个时钟的钟漂不一样,导致各时钟之间存在时间差,所以需要统一各传感器的时间源。

2、一般采用GPS时间作为统一时间源,通过GPS给各个传感器提供基准时间,各传感器根据提供的基准时间校准各自的时钟时间。

3、各传感器根据已经校准后的各自时间为各自独立采集的数据加上时间戳信息,来做到所有传感器时间戳同步。

二、硬件同步

由于每种传感器的采样频率不一致,如lidar通常为10Hz,camera通常为25/30Hz,不同传感器之间的数据传输还存在一定的延迟,那么可以通过寻找相邻时间戳的方法找到最近邻帧,但如果两个时间戳相差较大,且传感器或障碍物又在运动,那么最终会得到较大的同步误差。这个情况可以采用硬件同步触发的方法来缓解查找时间戳造成的误差现象。

如何实现激光雷达和相机的时间同步呢?

也就是在激光雷达和相机的时间源都统一到GPS时间后,如何保证他们同步触发采集呢?是以PPS信号为触发信号,实现激光雷达和相机均在PPS信号上升沿的时候采集数据,且打上各自时钟的时间戳。由于PPS的频率只有1Hz,所以通常需要一个设备把PPS信号转发为任意频率、但是跟PPS信号同相位的方波,这样就可以控制相机的采集频率了

四、软同步

当两传感器的采集时刻不一致,但又想得到同一时刻下两传感器的结果,就可以使用软件同步的方式。目前常采用的软件同步方式为内插外推法,此方法适用于传感器间帧率不存在倍数关系的情况,或者传感器有帧率不稳定的情况。

主要利用两个传感器帧上的时间标签,计算出时间差,然后通过包含有运动信息的目标帧与时间差结合,对帧中每一个目标的位置进行推算,推算出新的帧时各个目标的位置,并于原有的两帧之间建立新的帧。

五、举例说明

雷达帧时序

传感器时序

1、雷达频率一般为10hz,imu的频率一般100hz、gnss的频率为10hz、轮速计频率100hz;

2、即使做时间同步操作,每一个传感器发出来消息的时间戳也不一样,有先有后;

3、虽然传感器发送消息时绝对时刻按照时间顺序排序,但是程序对每一个传感器消息处理不一样,导致插入传感器消息队列的时刻不一样,很可能时间戳早的传感器信息先插入传感器队列中;

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注


往期评论