为什么时间同步对自动驾驶系统十分重要?
时间同步,顾名思义就是用来保证多方在同一时刻使用的都是全局且一致的时间戳。随着自动驾驶的浪潮日益高涨,中央集中式架构越来越成为主机厂更为青睐的选择。
既然选择了中央集中式架构,就同时意味着整个架构中会存在多种不同传感器数据的融合,而完成数据融合的一个基本前提就是各个传感器传过来的数据需打上对应的时间戳,为了保证各传感器使用的时间戳一致性,就必然需使用时间同步方案来保证各个传感器的全局时间基准是唯一的。
1.多传感器数据融合:
自动驾驶系统通常依赖于来自不同传感器的数据来实现环境感知。例如,激光雷达可能会提供精准的3D点云数据,摄像头提供视觉图像,雷达则可以帮助提供距离和速度的测量。为了进行有效的数据融合,所有传感器的数据必须在相同的时间基准下进行对齐。时间同步确保这些传感器数据的时标一致,避免数据错位。
2.实时控制与反馈:
自动驾驶系统需要实时感知周围环境,并且依据这些感知结果作出驾驶决策。任何时序的偏差都会导致不准确的控制指令或反应延迟,可能影响车辆的驾驶安全性。例如,传感器数据的时间不同步可能导致车辆对路面状况的反应滞后,或者计算出来的周围物体位置不准确。
3.高精度定位:
自动驾驶车辆依赖高精度的定位技术(如差分GPS、RTK GPS、IMU等)来获取实时位置。如果这些定位系统和其他传感器(如雷达和激光雷达)之间存在时钟偏差,就可能影响车辆的定位精度。时间同步能够确保这些系统协同工作,精确地确定车辆的地理位置。
时间同步种类:
时间同步的挑战
1、传感器时钟不同步:
不同传感器的硬件时钟可能存在偏差和漂移,这会导致它们的时间戳不同步。特别是在高速行驶的自动驾驶系统中,时间差异可能会影响到数据融合的效果。
2、不同系统的时钟源:
自动驾驶系统涉及多个计算平台和控制器,这些平台的时钟来源可能不同。例如,车辆的主计算单元(中央控制单元)和传感器模块可能运行在不同的时钟源上,导致它们的时标不一致。
3、延迟与传输时延:
在自动驾驶系统中,数据的传输可能会存在延迟,尤其是在网络通讯中。时间同步必须考虑到传输时延和数据处理时延,以确保数据在时间上完全对齐。
时间同步方式:
系统部署Linuxpps
GNSS发送PPS+GPRMC给系统接收,其中ubuntu系统linuxpps已经内置,不需再手动编译, 若版本未内置,可通过如下方式获取编译:
sudo git clone git://git.code.sf.net/p/linuxptp/code linuxptp
cd linuxptp
sudo make
sudo make install
查看Usage
ptp4l -h
延迟机制选项
-A Auto,自动选择延迟机制。,从E2E开始,当收到对等延迟请求时切换到P2P
-E E2E,选择延迟请求 - 响应(E2E)机制。 默认是用这个机制。 单个PTP通信路径上的所有时钟必须使用相同的机制。 使用E2E机制在端口上收到对等延迟请求时,将输出warning
-P P2P,对等延迟机制
网络传输选项
-2 IEEE 802.3
-4 UDP IPV4(默认)
-6 UDP IPV6
时间戳选项
-H 使用硬件时间戳(默认)
-S 使用软件时间戳
-L LEGACY HW时间戳
其他选项
-f [file] 从指定文件file中读取配置。 默认情况下不读取任何配置文件。
-i [dev] 选择PTP接口设备,例如eth0(可多次指定)必须至少使用此选项或配置文件指定一个端口。
-p [dev] 在Linux内核v3.5之前,无法发现与网络接口关联的PHC设备。 此选项指定在旧内核上运行时要使用的PHC设备(例如/ dev/ptp0)。要使用的时钟设备,默认为auto,忽略软件/ LEGACY HW时间戳(不推荐使用此选项)
-s slaveOnly mode,从时钟模式(覆盖配置文件)
-t 透明时钟模式
-l [num] 将日志记录级别设置为'num',默认是6
-m 将消息打印到stdout
-q 不打印消息到syslog
-v 打印软件版本并退出
-h help
系统部署GPSD
通过gpsd接收(NEMA+pps)获得精准的绝对时间。
参考链接:时间同步 - GPSD-CSDN博客
系统部署Chrony
通过chronyd将上步的时间源同步系统时钟。
在没有gps、gps解算失效、有网的时候,就是正常地采用ntp协议,网络时钟服务器同步系统时钟,使系统与NTP(时钟服务器)同步。
参考链接:时间同步 - NTP-CSDN博客
系统部署PTP
这一步按ptp4l采用什么时间戳(软硬)来划分
A、软件时间戳,给ptp报文打上的是系统时间的时间戳,不需要用phc2sys
B、硬件时间戳,给ptp报文打上的是网卡时钟的时间戳,需要提前用phc2sys把系统时钟同步网卡或者网络接口的时钟
参考链接:时间同步 - PTP-CSDN博客
lidar时间同步设置
参考链接:lidar常用配置设置-CSDN博客
camera时间同步设置
参考链接:Camera相关配置