首页 / 专利分类库 / 测时学 / 雷达时钟同步方法、电子装置、电子设备及可读存储介质

雷达时钟同步方法、电子装置、电子设备及可读存储介质

申请号 CN202311146723.8 申请日 2023-09-06 公开(公告)号 CN116990786A 公开(公告)日 2023-11-03
申请人 北醒(北京)光子科技有限公司; 发明人 王世龙; 史健; 郑凯;
摘要 本 申请 提供一种雷达时钟同步方法、 电子 装置、电子设备及可读存储介质,涉及 激光雷达 技术领域。本申请获取到激光雷达在当前本地时刻相对于主时钟源的实际主从 时钟偏差 后,对实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差,并调用自适应PID 控制器 基于当前本地时刻的实际PID参数,计算与目标平滑主从时钟偏差对应的目标对时控制量,而后根据目标对时控制量对激光雷达的本地系统时钟 信号 的时钟周期计数值进行计数调整,来调整激光雷达的时钟 频率 ,并使激光雷达得以与主时钟源实现时钟同步,从而在有效提升雷达对时精准度,满足雷达实时性要求的同时,提升时钟同步 精度 及时钟同步 稳定性 。
权利要求

1.一种雷达时钟同步方法,其特征在于,所述方法包括:
获取激光雷达在当前本地时刻相对于主时钟源的实际主从时钟偏差
对所述实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差;
调用自适应PID控制器基于所述当前本地时刻的实际PID参数,计算与所述目标平滑主从时钟偏差对应的目标对时控制量;其中,所述目标对时控制量为消除所述目标平滑主从时钟偏差所需的时间控制量;
根据所述目标对时控制量对所述激光雷达的本地系统时钟信号的时钟周期计数值进行计数调整,使所述激光雷达与所述主时钟源实现时钟同步;其中,所述本地系统时钟信号为所述激光雷达发射激光光束的基准时钟信号,所述时钟周期计数值用于表示所述本地系统时钟信号的已经历系统时钟周期在所述激光雷达处被计数的本地时间。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标对时控制量对所述激光雷达的本地系统时钟信号的时钟周期计数值进行计数调整的步骤,包括:
确定与所述目标对时控制量对应的调频间隔周期数目,并确定所述当前本地时刻在所述本地系统时钟信号处对应的目标时钟周期;
以所述目标时钟周期作为调频起点,并将所述调频间隔周期数目个系统时钟周期作为调频周期间隔,在所述本地系统时钟信号处确定多个待调频时钟周期;
针对每个所述待调频时钟周期,根据所述目标对时控制量调整所述时钟周期计数值在所述待调频时钟周期处的实际计数增量。
3.根据权利要求2所述的方法,其特征在于,所述确定与所述目标对时控制量对应的调频间隔周期数目的步骤,包括:
计算与所述目标对时控制量的绝对值对应的目标频率值;
根据所述目标对时控制量的时间单位、所述本地系统时钟信号的时间单位以及所述目标频率值,确定与所述本地系统时钟信号适配的所述调频间隔周期数目。
4.根据权利要求2所述的方法,其特征在于,所述根据所述目标对时控制量调整所述时钟周期计数值在所述待调频时钟周期处的实际计数增量的步骤,包括:
若所述目标对时控制量为正数,则将所述时钟周期计数值在该待调频时钟周期处的实际计数增量从原始计数增量调高为期望计数增量,其中所述期望计数增量为所述原始计数增量的非1正整数倍,所述原始计数增量为所述时钟周期计数值在除待调频时钟周期以外的各个系统时钟周期处使用的周期计数增量;
若所述目标对时控制量为负数,则将所述时钟周期计数值在该待调频时钟周期处的实际计数增量从原始计数增量调低为零。
5.根据权利要求1‑4中任意一项所述的方法,其特征在于,所述方法还包括:
向所述主时钟源发送同步请求消息,其中所述同步请求消息用于向所述主时钟源请求进行时钟同步;
其中,所述获取所述激光雷达在当前本地时刻相对于主时钟源的实际主从时钟偏差的步骤,包括:
获取所述主时钟源发送主时钟同步消息的消息发送时间戳,以及所述激光雷达接收所述主时钟同步消息时的所述当前本地时刻;
根据所述消息发送时间戳、所述当前本地时刻,以及所述激光雷达与所述主时钟源之间的链路传输耗时,计算得到所述实际主从时钟偏差。
6.根据权利要求5所述的方法,其特征在于,所述对所述实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差的步骤,包括:
获取所述激光雷达在所述当前本地时刻以前的最近接收到主时钟同步消息时的历史平滑主从时钟偏差;
将预存的指数平滑系数作为所述实际主从时钟偏差的第一权重值,并计算所述历史平滑主从时钟偏差的第二权重值,其中所述第一权重值与所述第二权重值之和为1;
根据所述第一权重值和所述第二权重值,对所述实际主从时钟偏差及所述历史平滑主从时钟偏差进行加权求和运算,得到所述激光雷达在所述当前本地时刻的目标平滑主从时钟偏差。
7.根据权利要求1‑4中任意一项所述的方法,其特征在于,所述方法还包括:
根据所述当前本地时刻的目标平滑主从时钟偏差、所述目标对时控制量、所述当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量,更新所述实际PID参数。
8.根据权利要求7所述的方法,其特征在于,所述根据所述当前本地时刻的目标平滑主从时钟偏差、所述目标对时控制量、所述当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量,更新所述实际PID参数的步骤,包括:
检测所述自适应PID控制器在所述当前本地时刻是否满足PID参数更新条件;
在检测到所述自适应PID控制器在当前本地时刻满足PID参数更新条件的情况下,将所述当前本地时刻的目标平滑主从时钟偏差和所述目标对时控制量以及所述当前本地时刻以前的历史平滑主从时钟偏差和所述历史对时控制量代入到所述自适应PID控制器的二阶动态误差模型中;
根据PID参数与所述二阶动态误差模型之间的动态特性关联关系,对所述二阶动态误差模型进行模型求解,得到所述自适应PID控制器的期望PID参数;
按照所述期望PID参数对所述自适应PID控制器在所述当前本地时刻的所述实际PID参数进行更新。
9.一种电子装置,其特征在于,所述装置包括:
第一处理模,用于获取所述电子装置在当前本地时刻相对于主时钟源的实际主从时钟偏差;
所述第一处理模块,还用于对所述实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差;
第二处理模块,用于调用自适应PID控制器基于所述当前本地时刻的实际PID参数,计算与所述目标平滑主从时钟偏差对应的目标对时控制量;其中,所述目标对时控制量为消除所述目标平滑主从时钟偏差所需的时间控制量;
所述第二处理模块,还用于根据所述目标对时控制量对所述电子装置的本地系统时钟信号的时钟周期计数值进行计数调整,使所述电子装置与所述主时钟源实现时钟同步;其中,所述本地系统时钟信号为发射激光光束的基准时钟信号,所述时钟周期计数值用于表示所述本地系统时钟信号的已经历系统时钟周期在所述电子装置处被计数的本地时间。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
第三处理模块,用于向所述主时钟源发送同步请求消息,其中所述同步请求消息用于向所述主时钟源请求进行时钟同步。
11.根据权利要求9或10所述的装置,其特征在于,所述装置还包括:
第四处理模块,用于根据所述当前本地时刻的目标平滑主从时钟偏差、所述目标对时控制量、所述当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量,更新所述实际PID参数。
12.一种电子设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,实现权利要求1‑8中任意一项所述的雷达时钟同步方法。
13.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被运行时,实现权利要求1‑8中任意一项所述的雷达时钟同步方法。

说明书全文

雷达时钟同步方法、电子装置、电子设备及可读存储介质

技术领域

[0001] 本申请涉及激光雷达技术领域,具体而言,涉及一种雷达时钟同步方法、电子装置、电子设备及可读存储介质。

背景技术

[0002] 随着科学技术的不断发展,激光雷达技术在各大行业的应用越发广泛。而激光雷达在实际应用过程中,往往需要与主时钟源(例如,车载系统的自适应巡航控制器)进行对时,以确保激光雷达的本地时钟能够与主时钟源实现时钟同步效果。
[0003] 目前,现有雷达对时方案是直接利用GPTP(Generalized Precision Time Protocol,广义时钟同步协议)协议进行报文交互,来实现激光雷达和主时钟源之间的对时功能。但值得注意的是,这种雷达对时方案通常会因通信网络发生暂态波动,导致最终的对时结果精准度不高,无法满足激光雷达的数据采集实时性要求,同时这种雷达对时方案通常也无法很好地应对激光雷达因硬件变化和/或应用环境变化等因素出现的本地时钟漂移问题,导致时钟同步精度下降,无法稳定实现时钟同步效果。发明内容
[0004] 有鉴于此,本申请的目的在于提供一种雷达时钟同步方法、电子装置、电子设备及可读存储介质,能够有效提升激光雷达与主时钟源之间的对时精准度,满足激光雷达的数据采集实时性要求,并有效改善激光雷达的本地时钟漂移问题,提升时钟同步精度及时钟同步稳定性,以便激光雷达所在的车辆、机器人等设备实现高精准度的自动化功能,提高设备系统的安全性能。
[0005] 为了实现上述目的,本申请实施例采用的技术方案如下:
[0006] 第一方面,本申请提供一种雷达时钟同步方法,所述方法包括:
[0007] 获取激光雷达在当前本地时刻相对于主时钟源的实际主从时钟偏差
[0008] 对所述实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差;
[0009] 调用自适应PID控制器基于所述当前本地时刻的实际PID参数,计算与所述目标平滑主从时钟偏差对应的目标对时控制量;其中,所述目标对时控制量为消除所述目标平滑主从时钟偏差所需的时间控制量;
[0010] 根据所述目标对时控制量对所述激光雷达的本地系统时钟信号的时钟周期计数值进行计数调整,使所述激光雷达与所述主时钟源实现时钟同步;其中,所述本地系统时钟信号为所述激光雷达发射激光光束的基准时钟信号,所述时钟周期计数值用于表示所述本地系统时钟信号的已经历系统时钟周期在所述激光雷达处被计数的本地时间。
[0011] 由此,本申请无需调整激光雷达的本地系统时钟信号的系统时钟周期时长,可直接通过调整本地系统时钟信号的时钟周期计数值的方式,来调整激光雷达的时钟频率,以改善激光雷达的本地时钟漂移问题,使激光雷达得以与主时钟源实现时钟同步,从而通过指数平滑滤波操作、自适应PID控制操作和时钟周期计数值调整操作之间的协同作用,在提升激光雷达与主时钟源之间的对时精准度,满足激光雷达的数据采集实时性要求的同时,改善激光雷达的本地时钟漂移问题,提升时钟同步精度及时钟同步稳定性,便于激光雷达所在的车辆、机器人等设备实现高精准度的自动化功能,提高设备系统的安全性能。
[0012] 在可选的实施方式中,所述根据所述目标对时控制量对所述激光雷达的本地系统时钟信号的时钟周期计数值进行计数调整的步骤,包括:
[0013] 确定与所述目标对时控制量对应的调频间隔周期数目,并确定所述当前本地时刻在所述本地系统时钟信号处对应的目标时钟周期;
[0014] 以所述目标时钟周期作为调频起点,并将所述调频间隔周期数目个系统时钟周期作为调频周期间隔,在所述本地系统时钟信号处确定多个待调频时钟周期;
[0015] 针对每个所述待调频时钟周期,根据所述目标对时控制量调整所述时钟周期计数值在所述待调频时钟周期处的实际计数增量。
[0016] 由此,本申请可通过上述实施方式所对应的时钟周期计数值调整方式,对激光雷达的本地时钟频率进行平滑式调整,来满足激光雷达的数据采集实时性要求,并改善激光雷达的本地时钟漂移问题。
[0017] 在可选的实施方式中,所述确定与所述目标对时控制量对应的调频间隔周期数目的步骤,包括:
[0018] 计算与所述目标对时控制量的绝对值对应的目标频率值;
[0019] 根据所述目标对时控制量的时间单位、所述本地系统时钟信号的时间单位以及所述目标频率值,确定与所述本地系统时钟信号适配的所述调频间隔周期数目。
[0020] 由此,本申请可通过上述实施方式,有效确定目标对时控制量在作用到本地时钟频率调整过程中的调整平滑程度大小。
[0021] 在可选的实施方式中,所述根据所述目标对时控制量调整所述时钟周期计数值在所述待调频时钟周期处的实际计数增量的步骤,包括:
[0022] 若所述目标对时控制量为正数,则将所述时钟周期计数值在该待调频时钟周期处的实际计数增量从原始计数增量调高为期望计数增量,其中所述期望计数增量为所述原始计数增量的非1正整数倍,所述原始计数增量为所述时钟周期计数值在除待调频时钟周期以外的各个系统时钟周期处使用的周期计数增量;
[0023] 若所述目标对时控制量为负数,则将所述时钟周期计数值在该待调频时钟周期处的实际计数增量从原始计数增量调低为零。
[0024] 由此,本申请可通过上述实施方式在确保激光雷达的数据采集实时性的情况下,巧妙地通过调整时钟周期计数值的方式改变激光雷达的本地时钟频率,来改善激光雷达的本地时钟漂移问题。
[0025] 在可选的实施方式中,所述方法还包括:
[0026] 向所述主时钟源发送同步请求消息,其中所述同步请求消息用于向所述主时钟源请求进行时钟同步;
[0027] 其中,所述获取所述激光雷达在当前本地时刻相对于主时钟源的实际主从时钟偏差的步骤,包括:
[0028] 获取所述主时钟源发送主时钟同步消息的消息发送时间戳,以及所述激光雷达接收所述主时钟同步消息时的所述当前本地时刻;
[0029] 根据所述消息发送时间戳、所述当前本地时刻,以及所述激光雷达与所述主时钟源之间的链路传输耗时,计算得到所述实际主从时钟偏差。
[0030] 由此,本申请可通过上述实施方式有效确定激光雷达在需要实现时钟同步效果时相对于主时钟源的主从时钟偏差状况。
[0031] 在可选的实施方式中,所述对所述实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差的步骤,包括:
[0032] 获取所述激光雷达在所述当前本地时刻以前的最近接收到主时钟同步消息时的历史平滑主从时钟偏差;
[0033] 将预存的指数平滑系数作为所述实际主从时钟偏差的第一权重值,并计算所述历史平滑主从时钟偏差的第二权重值,其中所述第一权重值与所述第二权重值之和为1;
[0034] 根据所述第一权重值和所述第二权重值,对所述实际主从时钟偏差及所述历史平滑主从时钟偏差进行加权求和运算,得到所述激光雷达在所述当前本地时刻的目标平滑主从时钟偏差。
[0035] 由此,本申请可通过上述实施方式,利用指数平滑滤波操作有效滤除网络暂态波动所引起的主从时钟偏差阶跃值,使得到的目标平滑主从时钟偏差能够有效提升后续雷达时钟同步操作的对时精度和对时稳定性。
[0036] 在可选的实施方式中,所述方法还包括:
[0037] 根据所述当前本地时刻的目标平滑主从时钟偏差、所述目标对时控制量、所述当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量,更新所述实际PID参数。
[0038] 由此,本申请可通过上述实施方式确保自适应PID控制器的具体PID参数能够适应实时网络环境,并有效表征实时网络环境下的雷达对时调整误差的动态特性,最大限度提高雷达时钟同步操作的精度与稳定性。
[0039] 在可选的实施方式中,所述根据所述当前本地时刻的目标平滑主从时钟偏差、所述目标对时控制量、所述当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量,更新所述实际PID参数的步骤,包括:
[0040] 检测所述自适应PID控制器在所述当前本地时刻是否满足PID参数更新条件;
[0041] 在检测到所述自适应PID控制器在当前本地时刻满足PID参数更新条件的情况下,将所述当前本地时刻的目标平滑主从时钟偏差和目标对时控制量以及所述当前本地时刻以前的历史平滑主从时钟偏差和所述历史对时控制量代入到所述自适应PID控制器的二阶动态误差模型中;
[0042] 根据PID参数与所述二阶动态误差模型之间的动态特性关联关系,对所述二阶动态误差模型进行模型求解,得到所述自适应PID控制器的期望PID参数;
[0043] 按照所述期望PID参数对所述自适应PID控制器在所述当前本地时刻的所述实际PID参数进行更新。
[0044] 由此,本申请可通过上述实施方式,有效确保自适应PID控制器的具体PID参数自适应地实时适配激光雷达所在的实际网络环境,并有效表征激光雷达在实时网络环境下的对时调整误差的动态特性,以最大限度提高雷达时钟同步操作的精度与稳定性。
[0045] 第二方面,本申请提供一种电子装置,所述装置包括:
[0046] 第一处理模,用于获取电子装置在当前本地时刻相对于主时钟源的实际主从时钟偏差;
[0047] 所述第一处理模块,还用于对所述实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差;
[0048] 第二处理模块,用于调用自适应PID控制器基于所述当前本地时刻的实际PID参数,计算与所述目标平滑主从时钟偏差对应的目标对时控制量;其中,所述目标对时控制量为消除所述目标平滑主从时钟偏差所需的时间控制量;
[0049] 所述第二处理模块,还用于根据所述目标对时控制量对所述电子装置的本地系统时钟信号的时钟周期计数值进行计数调整,使所述电子装置与所述主时钟源实现时钟同步;其中,所述本地系统时钟信号为发射激光光束的基准时钟信号,所述时钟周期计数值用于表示所述本地系统时钟信号的已经历系统时钟周期在所述电子装置处被计数的本地时间。
[0050] 在可选的实施方式中,所述装置还包括:
[0051] 第三处理模块,用于向所述主时钟源发送同步请求消息,其中所述同步请求消息用于向所述主时钟源请求进行时钟同步。
[0052] 在可选的实施方式中,所述装置还包括:
[0053] 第四处理模块,用于根据所述当前本地时刻的目标平滑主从时钟偏差、所述目标对时控制量、所述当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量,更新所述实际PID参数。
[0054] 可以理解的是,第二方面提供的电子装置可以执行前述第一方面覆盖范围内任意一种实施方式所述的雷达时钟同步方法。可选地,前述第一处理模块和第二处理模块可以拆分为更多的模块,也可以集成在一个模块中。本申请对于第一处理模块和第二处理模块的具体实现方式,不做具体限定。
[0055] 可选地,第二方面提供的装置还可以包括存储模块和/或通信模块,该存储模块存储有计算机程序。当第一处理模块、第二处理模块、第三处理模块和/或第四处理模块可运行该存储模块存储的计算机程序时,来执行前述任意一种实施方式所述的雷达时钟同步方法。所述通信模块用于实现数据通信功能,所述电子装置包括的第三处理模块可通过所述通信模块与主时钟源进行通信,例如第三处理模块通过通信模块向主时钟源发送同步请求消息,使所述电子装置能够接收来自主时钟源的主时钟同步消息。
[0056] 还可以理解的是,第二方面提供的电子装置可以是控制系统或控制组件,例如该控制系统或控制组件集成在激光雷达上,也可以是激光雷达,还可以是可设置于控制系统或控制组件、或激光雷达中的芯片系统或其他部件或组件,本申请对此不做限定。
[0057] 此外,第二方面提供的电子装置的技术效果可以参考上文针对第一方面中的相关实施方式的技术效果的详细描述,此处不再赘述。
[0058] 第三方面,本申请提供一种电子设备,包括上述第二方面中任意一种实施方式所述的电子装置。示例性地,第三方面提供的电子设备可以是激光雷达、智能手机、车辆、机器人、无人机、智能家居设备、智能运输设备、智能制造设备或测绘设备等。
[0059] 第四方面,本申请提供一种电子设备,该电子设备包括:处理器和存储器,该存储器用于存储至少一个计算机程序;当所述至少一个计算机程序被该处理器执行时,实现前述第一方面中任意一种实施方式所述的雷达时钟同步方法。
[0060] 示例性地,第四方面提供的电子设备可以是激光雷达、激光雷达的中控系统、智能手机、车辆、机器人、无人机、智能家居设备、智能运输设备、智能制造设备或测绘设备等。
[0061] 第五方面,本申请提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被(例如计算机设备、激光雷达或处理器等)运行时,实现前述第一方面中任意一种实施方式所述的雷达时钟同步方法。
[0062] 第六方面,本申请提供一种计算机程序产品,该计算机程序产品包括:计算机程序(也可以称为代码,或指令),当该计算机程序被(例如计算机设备、激光雷达或处理器)运行时,实现前述第一方面中任意一种实施方式所述的雷达时钟同步方法。
[0063] 第七方面,本申请实施例提供一种芯片系统,芯片系统包括:处理器和存储器,该存储器用于存储至少一个计算机程序;当所述至少一个计算机程序被该处理器执行时,实现前述第一方面中任意一种实施方式所述的雷达时钟同步方法。
[0064] 为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

[0065] 为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0066] 图1为本申请实施例提供的激光雷达的组成示意图;
[0067] 图2为本申请实施例提供的雷达时钟同步方法的流程示意图之一;
[0068] 图3为图2中的步骤S250包括的子步骤的流程示意图;
[0069] 图4为本申请实施例提供的雷达时钟同步方法的流程示意图之二;
[0070] 图5为图4中的步骤S260包括的子步骤的流程示意图;
[0071] 图6为本申请实施例提供的电子装置的组成示意图之一;
[0072] 图7为本申请实施例提供的电子装置的组成示意图之二;
[0073] 图8为本申请实施例提供的电子设备的组成示意图。
[0074] 图标:10‑激光雷达;11‑主控单元;12‑通信单元;13‑雷达扫描组件;14‑激光发射器;100‑电子装置;110‑第一处理模块;120‑第二处理模块;130‑第三处理模块;140‑第四处理模块;200‑电子设备;210‑存储器;220‑处理器。

具体实施方式

[0075] 为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
[0076] 因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0077] 应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
[0078] 在本申请的描述中,需要理解的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
[0079] 在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
[0080] 下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互结合。
[0081] 请参照图1,图1是本申请实施例提供的激光雷达10的组成示意图。在本申请实施例中,所述激光雷达10可被安装在车辆、无人机、路边交通设备、智能手机、智能家居设备、智能制造设备或机器人等设备上。例如,所述激光雷达10可被安装在车辆上,用于在该车辆的行驶/停车过程中进行雷达探测,以辅助该车辆实现无人驾驶、自动驾驶、辅助驾驶和智能停车等功能。
[0082] 可以理解的是,上述应用场景仅为举例示意,本申请所提供的激光雷达10还可以应用在各种类型的其他应用场景下,并不限于上述示例出的应用场景。
[0083] 在本申请实施例中,前述激光雷达10可以包括主控单元11、通信单元12、雷达扫描组件13及激光发射器14;前述主控单元11可以是,但不限于,中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)及网络处理器(Network Processor,NP)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件中的至少一种。
[0084] 在本申请实施例中,主控单元11与激光发射器14电性连接,用于驱动激光发射器14向雷达扫描组件13发射激光光束,由雷达扫描组件13将接收到的激光光束投射到待扫描对象上进行激光打点扫描。
[0085] 在本申请实施例中,主控单元11还与雷达扫描组件13电性连接,用于控制雷达扫描组件13调整自身针对接收到的激光光束的对外投射方向。其中,雷达扫描组件13可以包括平扫描组件和竖直扫描组件,水平扫描组件用于实现激光雷达10在水平方向上的行扫描功能,竖直扫描组件用于实现激光雷达10在竖直方向上的扫描功能。
[0086] 在本申请实施例中,主控单元11与通信单元12电性连接,用于通过通信单元12与外部电子设备进行数据交互。例如,主控单元11可通过通信单元12向主时钟源获取主时钟时间戳,以便主控单元11实现激光雷达10与主时钟源之间的时钟同步效果。其中,主时钟源为除所述激光雷达10之外的另一电子设备的时钟源,该主时钟源可作为所述激光雷达10进行时钟调整的时钟参照对象;所述另一电子设备可以是车辆、无人机、路边交通设备、智能手机、智能家居设备、智能制造设备或机器人等设备中的任意一种设备,还可以是前述各种设备中的控制系统组件(例如,车辆的车载系统所包括的自适应巡航控制器),本申请对此不做限定。
[0087] 在本申请实施例中,主控单元11可配合运行与本申请实施例提供的雷达时钟同步方案相关的软件功能模块及计算机程序等,来提升激光雷达10与主时钟源之间的对时精准度,满足激光雷达10的数据采集实时性要求,并有效改善激光雷达10的本地时钟漂移问题,提升时钟同步精度及时钟同步稳定性,以便所述激光雷达10所在的车辆、机器人等设备实现高精准度的自动化功能,提高设备系统的安全性能。
[0088] 可以理解的是,图1所示的框图仅为激光雷达10的一种组成示意图,激光雷达10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
[0089] 在本申请中,为确保激光雷达10能够在与主时钟源进行时钟同步的过程中具有优秀的对时精准度、时钟同步精度及时钟同步稳定性,可改善激光雷达10的本地时钟漂移问题,并保证最终的对时结果能够满足激光雷达10的数据采集实时性要求,本申请实施例通过提供一种可作用于前述激光雷达10的雷达时钟同步方法实现前述目的。下面对本申请提供的雷达时钟同步方法进行详细描述。
[0090] 请参照图2,图2是本申请实施例提供的雷达时钟同步方法的流程示意图之一。在本申请实施例中,所述雷达时钟同步方法可以包括步骤S210~步骤S250。其中,所述雷达时钟同步方法可由控制所述激光雷达10的运行状况的控制设备执行,该控制设备可与所述激光雷达10集成在一起,使该控制设备能够充当所述激光雷达10的一个控制组件(例如,图1所示的激光雷达10的主控单元11);所述雷达时钟同步方法也可由所述激光雷达10直接执行。本申请对于所述雷达时钟同步方法的实际执行载体,不做具体限定。
[0091] 步骤S210,向主时钟源发送同步请求消息,其中同步请求消息用于向主时钟源请求进行时钟同步。
[0092] 在本实施例中,当确定出激光雷达10需要时钟同步的主时钟源后,可通过主控单元11经通信单元12向该主时钟源发送同步请求消息,以通过该同步请求消息请求所述主时钟源与所述激光雷达10实现时钟同步效果。在本实施例的一种实施方式中,所述同步请求消息可以是满足GPTP协议的GPTP同步请求报文。
[0093] 其中,所述主时钟源在接收到来自所述激光雷达10的同步请求消息后,会响应同步请求消息,按照预设时间间隔地生成主时钟同步消息(例如,Sync(Synchronization,同步)报文),并将生成的主时钟同步消息发送给激光雷达10,以便该激光雷达10基于接收到的主时钟同步消息所记载的消息发送时间戳实现雷达时钟同步效果。其中,每个主时钟同步消息可记录有一个消息发送时间戳及时钟标识符,所述消息发送时间戳用于表征对应主时钟同步消息在前述主时钟源处被发送时的主时钟时间戳,所述时钟标识符用于表示对应主时钟同步消息的发送方(即前述主时钟源)的身份标识。
[0094] 由此,就实质而言,所述步骤S210属于可选的步骤流程,所述雷达时钟同步方法的实际执行载体在执行过一次步骤S210之后,无需在后续的多次雷达时钟同步过程中再次执行所述步骤S210,可直接通过执行所述步骤S220~步骤S250,来达到“确保激光雷达10能够在与主时钟源进行时钟同步的过程中具有优秀的对时精准度、时钟同步精度及时钟同步稳定性,可改善激光雷达10的本地时钟漂移问题,并保证最终的对时结果能够满足激光雷达10的数据采集实时性要求”的技术效果。
[0095] 步骤S220,获取激光雷达在当前本地时刻相对于主时钟源的实际主从时钟偏差。
[0096] 在本实施例中,所述激光雷达10中的主控单元11在经通信单元12发送同步请求消息后,会通过该通信单元12接收来自主时钟源的主时钟同步消息,并在某个本地时刻(即本地时间戳)接收到一个主时钟同步消息时,将该本地时刻作为激光雷达10的针对该主时钟同步消息的消息接收时间戳,并通过对接收到的该主时钟同步消息进行解析,得到该主时钟同步消息所记录的消息发送时间戳。
[0097] 由此,可通过获取所述主时钟源发送主时钟同步消息的消息发送时间戳,以及所述激光雷达10接收所述主时钟同步消息时的当前本地时刻(即所述激光雷达10在接收所述主时钟同步消息时的本地时间),并对所述消息发送时间戳及所述当前本地时刻进行数据处理,得到该主时钟同步消息在激光雷达10和主时钟源之间反映出的主从时钟偏差。
[0098] 可选地,若激光雷达10在当前本地时刻接收到来自所述主时钟源的主时钟同步消息,则上述获取激光雷达10在当前本地时刻相对于主时钟源的实际主从时钟偏差的步骤可以包括子步骤a及子步骤b:
[0099] 子步骤a,获取所述主时钟源发送主时钟同步消息的消息发送时间戳,以及所述激光雷达接收所述主时钟同步消息时的所述当前本地时刻。
[0100] 子步骤b,根据所述消息发送时间戳、所述当前本地时刻,以及所述激光雷达与所述主时钟源之间的链路传输耗时,计算得到所述实际主从时钟偏差。
[0101] 其中,所述链路传输耗时用于表示所述激光雷达10与所述主时钟源之间的信息传输链路执行一次完整消息传输操作所需的时间长度,所述实际主从时钟偏差可采用公式“e’(k)=t_d(k)‑t(k)‑t0”计算得到,其中“e’(k)”用于表示与所述主时钟同步消息对应的所述实际主从时钟偏差,“t_d(k)”用于表示所述主时钟同步消息所记载的所述消息发送时间戳,“t(k)”用于表示所述当前本地时刻,“t0”用于表示所述链路传输耗时。
[0102] 由此,本申请可通过执行上述步骤S220的具体步骤流程,有效确定激光雷达10在需要实现时钟同步效果时相对于主时钟源的主从时钟偏差状况。
[0103] 可以理解的是,上述通信单元12可采用支持支持GPTP功能的PHY模块实现,以确保该通信单元12能够通过PHY模块的寄存器读写操作来获取/设置报文时间戳。在本实施例的一种实施方式中,上述通信单元12可直接采用Marvell Q8812 PHY模块实现。
[0104] 步骤S230,对实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差。
[0105] 在本实施例中,当得到所述激光雷达10在当前本地时刻所对应的实际主从时钟偏差后,可结合所述当前本地时刻以前的经指数平滑滤波处理得到的历史平滑主从时钟偏差,对所述当前本地时刻的实际主从时钟偏差进行指数平滑滤波处理,以滤除网络暂态波动所引起的主从时钟偏差阶跃值,确保最终得到的所述当前本地时刻的目标平滑主从时钟偏差能够有效提升后续雷达对时操作的对时精度和对时稳定性。
[0106] 在此情况下,上述对所述实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差的步骤,可以包括子步骤步骤c‑子步骤e:
[0107] 子步骤c,获取所述激光雷达10在所述当前本地时刻以前的最近接收到主时钟同步消息时的历史平滑主从时钟偏差。
[0108] 子步骤d,将预存的指数平滑系数作为所述实际主从时钟偏差的第一权重值,并计算所述历史平滑主从时钟偏差的第二权重值,其中第一权重值与第二权重值之和为1。
[0109] 子步骤e,根据所述第一权重值和所述第二权重值,对所述实际主从时钟偏差及所述历史平滑主从时钟偏差进行加权求和运算,得到所述激光雷达10在所述当前本地时刻的目标平滑主从时钟偏差。
[0110] 其中,若激光雷达10在所述当前本地时刻属于首次接收到来自主时钟源的主时钟同步消息时,该激光雷达10在所述当前本地时刻以前的最近接收到主时钟同步消息时的历史平滑主从时钟偏差可直接采用默认主从时钟偏差值进行表示,也可直接采用所述当前本地时刻所对应的实际主从时钟偏差进行表示,此时具体的历史平滑主从时钟偏差可根据对时精度需求进行不同的配置。
[0111] 同时,上述指数平滑系数的数值越大,则对应指数平滑滤波操作对噪声的抑制能越强,但对于信号变化的响应越慢。故而,上述指数平滑系数的取值范围为0~1,通常被设置为0.1~0.5,其中指数平滑系数越接近1,则对应指数平滑滤波操作的平滑效果越弱;上述指数平滑系数的具体数值可根据对时精度需求进行不同的配置。
[0112] 可以理解的是,若激光雷达10所在的设备的网络环境存在较大波动,则应选择数值较小的指数平滑系数,来确保指数平滑滤波操作能够有效滤除网络暂态波动所引起的主从时钟偏差阶跃值,以提升后续雷达时钟同步操作的对时精度和对时稳定性。
[0113] 由此,本申请可通过执行上述步骤S230的具体步骤流程,利用指数平滑滤波操作有效滤除网络暂态波动所引起的主从时钟偏差阶跃值,使得到的目标平滑主从时钟偏差能够有效提升后续雷达时钟同步操作的对时精度和对时稳定性。
[0114] 步骤S240,调用自适应PID控制器基于当前本地时刻的实际PID参数,计算与目标平滑主从时钟偏差对应的目标对时控制量。
[0115] 在本实施例中,所述自适应PID控制器为基于自适应PID(Proportion‑Integral‑Differential,比例‑积分‑微分)控制算法构建出的控制器模型,所述自适应PID控制器可直接加载到所述激光雷达10中,也可直接加载到执行所述雷达时钟同步方法的控制设备中,本申请对所述自适应PID控制器的实际加载方式不做限定。
[0116] 其中,所述自适应PID控制器用于实现所述激光雷达10与主时钟源之间的时钟同步效果。所述自适应PID控制器可基于自身的PID参数能够根据反馈信息进行自适应调整的特性,确保自适应PID控制器的具体PID参数能够在雷达时钟同步过程中有效表征对时调整误差的动态特性,以确保最终的雷达时钟同步结果具有足够高的对时精准度和时钟同步稳定性。
[0117] 同时,所述目标对时控制量为消除所述目标平滑主从时钟偏差所需的时间控制量,所述目标对时控制量可以用于表示在所述当前本地时刻针对所述激光雷达10的时钟频率调整平滑程度和时钟频率调整方向(例如,调高时钟频率或调低时钟频率)。
[0118] 在得到所述当前本地时刻的目标平滑主从时钟偏差后,可通过将所述当前本地时刻的目标平滑主从时钟偏差、所述当前本地时刻以前接收到的各个主时钟同步消息分别对应的历史平滑主从时钟偏差、所述自适应PID控制器在所述当前本地时刻的实际PID参数(包括实际P参数、实际I参数及实际D参数),代入到所述自适应PID控制器的控制律方程中,并对完成参数代入后的前述控制律方程进行方程求解,得到所述激光雷达10在当前本地时刻的与目标平滑主从时钟偏差对应的目标对时控制量。其中,前述自适应PID控制器的控制律方程可采用如下式子进行表示:
[0119]
[0120] 其中,u(k)用于表示前述自适应PID控制器在所述当前本地时刻的目标对时控制量,KP用于表示前述自适应PID控制器在所述当前本地时刻的实际P参数,KI用于表示前述自适应PID控制器在所述当前本地时刻的实际I参数,KD用于表示前述自适应PID控制器在所述当前本地时刻的实际D参数,e(k)用于表示所述激光雷达10在所述当前本地时刻(即所述激光雷达10在执行第k次雷达时钟同步操作的实际本地时刻)接收到主时钟同步消息时的目标平滑主从时钟偏差,e(i)用于表示主控单元11在执行第i次雷达时钟同步操作时的实际平滑主从时钟偏差(包括所述当前本地时刻以前接收到的各个主时钟同步消息分别对应的历史平滑主从时钟偏差),t用于表示时间。
[0121] 步骤S250,根据目标对时控制量对激光雷达的本地系统时钟信号的时钟周期计数值进行计数调整,使激光雷达与主时钟源实现时钟同步。
[0122] 在本实施例中,因激光雷达10的激光光束发射操作需要高度依赖高精度时钟信号,激光雷达10的本地系统时钟信号通常会作为激光雷达10发射激光光束(例如,所述激光雷达10控制所述激光发射器14发射激光光束)的基准时钟信号。倘若通过修改所述本地系统时钟信号的系统时钟周期时长来实现激光雷达10与主时钟源之间的时钟同步效果,必定会严重影响激光光束发射间隔和雷达点数据采集,进而明显无法满足激光雷达10的数据采集实时性要求。
[0123] 因此,可在调用所述自适应PID控制器得到与所述当前本地时刻对应的目标对时控制量后,根据所述目标对时控制量对本地系统时钟信号的时钟周期计数值进行平滑式计数调整,来调整激光雷达10的时钟频率,使调整后的时钟频率能够有效克服激光雷达10和主时钟源之间的主从时钟偏差,以确保激光雷达10与主时钟源实现时钟同步效果,并改善激光雷达10的本地时钟漂移问题(即确保激光雷达10的本地时钟与主时钟源实现时钟对齐效果),同时有效避免因修改本地系统时钟信号的系统时钟周期时长所导致的雷达数据采集实时性差的问题,以有效满足激光雷达10的数据采集实时性要求,从而有效提升激光雷达10与主时钟源之间的对时精准度、时钟同步精度及时钟同步稳定性。其中,所述时钟周期计数值用于表示所述本地系统时钟信号的已经历系统时钟周期在所述激光雷达10处被计数的本地时间。
[0124] 此外,在调整完所述激光雷达10的本地时钟频率后,会将调整后的本地时钟频率和时钟周期计数值同步给所述激光雷达10的通信单元12,以确保所述激光雷达10的主控单元11和通信单元12具有相同的本地时钟特征,方便后续执行雷达时钟同步操作。
[0125] 由此,本申请可通过执行上述步骤S210~步骤S250或者上述步骤S220~步骤S250,利用指数平滑滤波操作、自适应PID控制操作和时钟周期计数值调整操作之间的协同作用,在提升激光雷达10与主时钟源之间的对时精准度,满足激光雷达10的数据采集实时性要求的同时,改善激光雷达10的本地时钟漂移问题,提升时钟同步精度及时钟同步稳定性,以便激光雷达10所在的车辆、机器人等设备实现高精准度的自动化功能,提高设备系统的安全性能。
[0126] 可选地,请参照图3,图3是图2中的步骤S250包括的子步骤的流程示意图。在本申请实施例中,步骤S250可以包括步骤S251~步骤S253,以利用时钟周期计数值调整方式对激光雷达10的本地时钟频率进行平滑式调整,来满足激光雷达10的数据采集实时性要求,并改善激光雷达10的本地时钟漂移问题,同时有效避免因修改本地系统时钟信号的系统时钟周期时长所导致的雷达数据采集实时性差的问题。
[0127] 子步骤S251,确定与目标对时控制量对应的调频间隔周期数目,并确定当前本地时刻在本地系统时钟信号处对应的目标时钟周期。
[0128] 在本实施例中,所述调频间隔周期数目用于表示所述目标对时控制量作用到所述激光雷达10的本地时钟频率调整过程中的调整平滑程度,该调频间隔周期数目的数值越大,则对应本地时钟频率调整操作越平滑。其中,主控单元11确定与目标对时控制量对应的调频间隔周期数目的步骤,可以包括子步骤f及子步骤g:
[0129] 子步骤f,计算与所述目标对时控制量的绝对值对应的目标频率值。
[0130] 其中,所述目标频率值可采用如下式子计算得到:
[0131]
[0132] 其中,u(k)用于表示所述激光雷达10在所述当前本地时刻的目标对时控制量,f用于表示与所述目标对时控制量对应的目标频率值。
[0133] 子步骤g,根据所述目标对时控制量的时间单位、所述本地系统时钟信号的时间单位以及所述目标频率值,确定与所述本地系统时钟信号适配的所述调频间隔周期数目。
[0134] 其中,可根据所述目标对时控制量的时间单位与所述本地系统时钟信号的时间单位之间的换算关系,对所述目标频率值进行换算处理,而后对换算处理后的所述目标频率值进行取整处理,得到所述调频间隔周期数目。
[0135] 在本实施例的一种实施方式中,若所述目标对时控制量的时间单位为秒,而所述本地系统时钟信号的时间单位为纳秒,则所述目标对时控制量的时间单位与所述本地系统时钟信号的时间单位之间的换算关系即为1秒=10^9纳秒,此时换算处理后的所述目标频率值即可采用如下式子计算得到:
[0136] f'=109*f;
[0137] 其中,f'用于表示换算处理后的所述目标频率值,f用于表示与所述目标对时控制量对应的目标频率值。
[0138] 可以理解的是,上述针对换算处理后的所述目标频率值执行的取整操作可以是向下取整方式,也可以是向上取整方式,具体的取整方式可根据时钟同步精度需求进行不同的配置。
[0139] 由此,本申请可通过执行上述子步骤S251的具体步骤流程,确定目标对时控制量作用到本地时钟频率调整过程中的调整平滑程度。
[0140] 子步骤S252,以目标时钟周期作为调频起点,并将调频间隔周期数目个系统时钟周期作为调频周期间隔,在本地系统时钟信号处确定多个待调频时钟周期。
[0141] 在本实施例中,目标时钟周期即为当前本地时刻在本地系统时钟信号处直接对应的系统时钟周期;在所述本地系统时钟信号中确定出的第一个待调频时钟周期与目标时钟周期间隔所述调频间隔周期数目个系统时钟周期,在本地系统时钟信号中确定出的相邻两个待调频时钟周期之间间隔所述调频间隔周期数目个系统时钟周期。其中,每个待调频时钟周期用于表示对应系统时钟周期在时钟周期计数器处的实际计数增量需要调整;所述调频间隔周期数目越小,则在目标时钟周期之后的待调频时钟周期数目越多,对应本地时钟频率调整操作越不平滑。
[0142] 以所述当前本地时刻在本地系统时钟信号处的目标时钟周期为所述本地系统时钟信号的第i个系统时钟周期,所述调频间隔周期数目为n为例,则在所述本地系统时钟信号中位于所述目标时钟周期之后的首个待调频时钟周期即为第i+n个系统时钟周期,位于所述首个待调频时钟周期之后的各个待调频时钟周期依次为第i+2*n、i+3*n、…、i+m*n个系统时钟周期,其中m为与所述当前本地时刻的雷达时钟同步操作对应的待调频时钟周期总数目。
[0143] 子步骤S253,针对每个待调频时钟周期,根据目标对时控制量调整时钟周期计数值在待调频时钟周期处的实际计数增量。
[0144] 示例性地,针对每个待调频时钟周期,可以根据目标对时控制量的正负属性,调整时钟周期计数值在待调频时钟周期处的实际计数增量。
[0145] 在本实施例中,所述目标对时控制量的正负属性可用于表示所述目标对时控制量作用到所述激光雷达10的本地时钟频率调整过程中的时钟频率调整方向。其中,若所述目标对时控制量的正负属性为正,则表明主时钟源的远端时钟频率高于激光雷达10的本地时钟频率,对应时钟频率调整方向为调高激光雷达10的本地时钟频率;若所述目标对时控制量的正负属性为负,则表明主时钟源的远端时钟频率低于激光雷达10的本地时钟频率,对应时钟频率调整方向为调低激光雷达10的本地时钟频率。
[0146] 其中,激光雷达10针对非待调频时钟周期的各个系统时钟周期(即除待调频时钟周期以外的各个系统时钟周期)在时钟周期计数器处采用的实际计数增量为原始计数增量,该原始计数增量的具体数值与系统时钟周期时长保持一致。此时,针对每个待调频时钟周期,根据所述目标对时控制量调整所述时钟周期计数值在该待调频时钟周期处的实际计数增量的步骤,可以包括子步骤j和子步骤k:
[0147] 子步骤j,若所述目标对时控制量为正数,则将所述时钟周期计数值在该待调频时钟周期处的实际计数增量从原始计数增量调高为期望计数增量,其中所述期望计数增量为所述原始计数增量的非1正整数倍,所述原始计数增量为所述时钟周期计数值在除待调频时钟周期以外的各个系统时钟周期处使用的周期计数增量;
[0148] 子步骤k,若所述目标对时控制量为负数,则将所述时钟周期计数值在该待调频时钟周期处的实际计数增量从原始计数增量调低为零。
[0149] 在本实施例中,所述激光雷达10的主控单元11可采用Zynq芯片实现,以使所述主控单元11利用Zynq芯片的与PL(Progarmmable Logic,可编程逻辑)功能对应的FPGA部分通过相环产生本地系统时钟信号,并使所述主控单元11利用Zynq芯片的与PS(Processing System,处理系统)功能对应的ARM处理器部分对PL功能产生的本地系统时钟信号进行校准,以保证该本地系统时钟信号的时钟精度和时钟稳定性,其中所述FPGA部分和所述ARM处理器部分可通过AXI(Advanced eXtensible Interface,高级可扩展接口)接口进行数据交换,以实现时钟校准功能和时钟产生功能之间的协同实现。在本实施例的一种实施方式中,所述激光雷达10的主控单元11可直接采用Xilinx ZYNQ Ultra Scale+MPSoc芯片实现。
[0150] 其中,所述主控单元11通过Zynq芯片的FPGA部分实现的本地时钟(本地时间)可以包括秒和纳秒两部分。如果所述主控单元11产生的本地系统时钟信号的系统时钟周期时长为4ns,实现本地时间计数功能的时钟周期计数器将对应包括纳秒计数器和秒计数器,该纳秒计数器在非待调频时钟周期的各个系统时钟周期采用的原始计数增量为4,秒计数器会在纳秒计数器溢出时自动加1,此时纳秒计数器会归零复位并继续计数。
[0151] 假设将所述期望计数增量设置为所述原始计数增量的2倍,则可在确定出与所述当前本地时刻对应的目标对时控制量后,判定所述目标对时控制量为正时,将各个待调频时钟周期在纳秒计数器处的实际计数增量从4调高为8,并在判定所述目标对时控制量为负时,将各个待调频时钟周期在纳秒计数器处的实际计数增量从4调低为0,从而在不改变激光雷达10的本地系统时钟信号的系统时钟周期时长(即不改变每4ns计数一次的时钟基准),来确保激光雷达10的数据采集实时性的情况下,巧妙地通过调整时钟周期计数值的方式改变激光雷达10的本地时钟频率,来改善激光雷达10的本地时钟漂移问题。
[0152] 由此,本申请可通过执行上述子步骤S251~子步骤S253,利用时钟周期计数值调整方式对激光雷达10的本地时钟频率进行平滑式调整,来满足激光雷达10的数据采集实时性要求,并改善激光雷达10的本地时钟漂移问题,同时有效避免因修改本地系统时钟信号的系统时钟周期时长所导致的雷达数据采集实时性差的问题。
[0153] 可选地,请参照图4,图4是本申请实施例提供的雷达时钟同步方法的流程示意图之二。在本申请实施例中,与图2所示的雷达时钟同步方法相比,图4所示的雷达时钟同步方法还可以包括步骤S260,以确保自适应PID控制器的具体PID参数能够适应实时网络环境,并有效表征实时网络环境下的对时调整误差的动态特性,最大限度提高雷达时钟同步操作的精度与稳定性。
[0154] 步骤S260,根据当前本地时刻的目标平滑主从时钟偏差、目标对时控制量、当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量,更新实际PID参数。
[0155] 在本实施例中,在得到所述激光雷达10在所述当前本地时刻的目标平滑主从时钟偏差、所述目标对时控制量后,可基于所述当前本地时刻的目标平滑主从时钟偏差和所述目标对时控制量,以及所述激光雷达10在所述当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量,对所述自适应PID控制器在当前本地时刻的实际PID参数进行更新,使更新后的实际PID参数能够确保所述自适应PID控制器在后续可能实施的雷达时钟同步操作中有效提升所述激光雷达10的时钟同步精度和时钟同步稳定性。
[0156] 可选地,请参照图5,图5是图4中的步骤S260包括的子步骤的流程示意图。在本申请实施例中,所述步骤S260可以包括子步骤S261~子步骤S264,以确保自适应PID控制器的具体PID参数能够自适应地实时适配所述激光雷达10所在的实际网络环境,并有效表征所述激光雷达10在实际网络环境下的对时调整误差的动态特性,以最大限度提高雷达时钟同步操作的精度与稳定性。
[0157] 子步骤S261,检测自适应PID控制器在当前本地时刻是否满足PID参数更新条件。
[0158] 在本实施例中,上述PID参数更新条件用于表示所述自适应PID控制器需要更新PID参数时需要满足的具体条件内容,该PID参数更新条件可以包括更新时间条件(例如,所述当前本地时刻距离上一次PID参数更新时间戳的时间长度大于或等于预设时长阈值),该PID参数更新条件也可以包括主从时钟偏差条件(例如,所述当前本地时刻的实际主从时钟偏差的绝对值大于或等于预设时钟偏差值),该PID参数更新条件还可以包括控制量输出条件(例如,所述当前本地时刻的目标对时控制量的绝对值大于或等于预设控制量阈值),具体的PID参数更新条件可根据雷达时钟同步需求进行不同的配置。
[0159] 步骤S262,在检测到自适应PID控制器在当前本地时刻满足PID参数更新条件的情况下,将当前本地时刻的目标平滑主从时钟偏差和目标对时控制量以及当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量代入到自适应PID控制器的二阶动态误差模型中。
[0160] 在本实施例中,若检测到自适应PID控制器在所述当前本地时刻满足PID参数更新条件,则表明该自适应PID控制器需要更新PID参数,此时可将所述激光雷达10在所述当前本地时刻的目标平滑主从时钟偏差和所述目标对时控制量以及在所述当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量代入到所述自适应PID控制器的二阶动态误差模型中,以通过该二阶动态误差模型实质表征当前网络环境下的对时调整误差的动态特性。其中,所述自适应PID控制器的二阶动态误差模型可采用如下式子进行表示:
[0161]
[0162] 其中,u(t)用于表示所述激光雷达10在第t个本地时刻的对时控制量,e(t)用于表示所述激光雷达10在第t个本地时刻的平滑主从时钟偏差,ζ用于所述激光雷达10执行雷达时钟同步操作的系统阻尼比,ω用于表示所述激光雷达10执行雷达时钟同步操作的系统自然频率,K0用于表示所述激光雷达10的时钟接收器增益,τ用于表示所述激光雷达10的时钟接收器延迟时间。
[0163] 步骤S263,根据PID参数与二阶动态误差模型之间的动态特性关联关系,对二阶动态误差模型进行模型求解,得到自适应PID控制器的期望PID参数。
[0164] 在本实施例中,所述自适应PID控制器的PID参数与二阶动态误差模型之间的动态特性关联关系可采用如下式子进行表示:
[0165]
[0166] 其中,α用于表示自适应PID控制器的自适应更新速率。
[0167] 由此,可基于上述动态特性关联关系对上述二阶动态误差模型进行模型求解,得到自适应PID控制器在所述激光雷达10所处的实际网络环境下的期望PID参数(包括期望P参数、期望I参数及期望D参数),以确保期望PID参数有效表征所述激光雷达10所处的实际网络环境下的对时调整误差的动态特性,最大限度提高雷达时钟同步操作的精度与稳定性。
[0168] 步骤S264,按照期望PID参数对自适应PID控制器在当前本地时刻的实际PID参数进行更新。
[0169] 在本实施例中,当采用与所述激光雷达10所处的实际网络环境适配的期望PID参数更新完所述自适应PID控制器的实际PID参数后,倘若所述激光雷达10在当前本地时刻之后的某个目标本地时刻又接收到来自所述主时钟源的主时钟同步消息,则可基于该目标本地时刻及该主时钟同步消息记载的消息发送时间戳,通过执行上述步骤220得到该激光雷达在所述目标本地时刻相对于主时钟源的实际主从时钟偏差,并通过执行上述步骤S230得到与所述目标本地时刻对应的目标平滑主从时钟偏差,而后利用所述自适应PID控制器在所述目标本地时刻的实际PID参数(即采用前述期望PID参数更新后的实际PID参数)计算与所述目标本地时刻对应的目标对时控制量,接着得以通过执行上述步骤S250,利用所述目标对时控制量对所述激光雷达10的本地系统时钟信号的时钟周期计数值进行计数调整,使所述激光雷达10能够在所述目标本地时刻开始与所述主时钟源实现时钟同步效果,并通过PID参数更新操作确保最终的雷达时钟同步结果具有足够的时钟同步精度和时钟同步稳定性。
[0170] 由此,本申请可通过执行上述步骤S260和上述子步骤S261~子步骤S264,确保自适应PID控制器的具体PID参数能够自适应地实时适配所述激光雷达10所在的实际网络环境,并有效表征所述激光雷达10在实际网络环境下的对时调整误差的动态特性,以最大限度提高雷达时钟同步操作的精度与稳定性。
[0171] 在本申请中,为确保针对所述激光雷达10的上述雷达时钟同步方法能够得到有效执行,本申请通过提供至少一种上述雷达时钟同步方法的执行载体来实现前述功能。下面对本申请提供的上述雷达时钟同步方法的执行载体的具体组成进行相应描述。
[0172] 可选地,请参照图6,图6是本申请实施例提供的电子装置100的组成示意图之一。在本申请实施例中,所述电子装置100可以包括第一处理模块110及第二处理模块120。
[0173] 第一处理模块110,用于获取电子装置在当前本地时刻相对于主时钟源的实际主从时钟偏差。
[0174] 所述第一处理模块110,还用于对所述实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差。
[0175] 所述第二处理模块120,用于调用自适应PID控制器基于所述当前本地时刻的实际PID参数,计算与所述目标平滑主从时钟偏差对应的目标对时控制量;其中,所述目标对时控制量为消除所述目标平滑主从时钟偏差所需的时间控制量。
[0176] 所述第二处理模块120,还用于根据所述目标对时控制量对所述电子装置的本地系统时钟信号的时钟周期计数值进行计数调整,使所述电子装置与所述主时钟源实现时钟同步;其中,所述本地系统时钟信号为发射激光光束的基准时钟信号,所述时钟周期计数值用于表示所述本地系统时钟信号的已经历系统时钟周期在所述电子装置处被计数的本地时间。
[0177] 可选地,在本申请实施例中,所述电子装置100还可以包括第三处理模块130。
[0178] 所述第三处理模块130,用于向所述主时钟源发送同步请求消息,其中所述同步请求消息用于向所述主时钟源请求进行时钟同步。
[0179] 可选地,请参照图7,图7是本申请实施例提供的电子装置100的组成示意图之二。在本申请实施例中,与图6所示的电子装置100相比,图7所示的电子装置100还可以包括第四处理模块140。
[0180] 所述第四处理模块140,用于根据所述当前本地时刻的目标平滑主从时钟偏差、所述目标对时控制量、所述当前本地时刻以前的历史平滑主从时钟偏差和历史对时控制量,更新所述实际PID参数。
[0181] 需要说明的是,本申请实施例所提供的电子装置100,其可以执行上述雷达时钟同步方法的各项流程实施例所示的方法流程,以实现对应的技术效果。为简要描述,本实施例部分未提及之处,可参考上文针对雷达时钟同步方法的相关描述内容。
[0182] 可以理解的是,本申请实施例可以根据上述雷达时钟同步方法的各项流程实施例,对该电子装置100进行功能模块的划分。例如,可以将各个步骤功能分别划分为一个单独功能模块,也可以将两个或两个以上的步骤功能集成在一个处理模块中。其中,前述集成的处理模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对处理模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0183] 由此,可选地,第一处理模块110和第二处理模块120可以分开设置,例如第一处理模块110和/或第二处理模块120均可以拆分为更多的模块;第一处理模块110和第二处理模块120也可以集成在一个模块中。本申请对于第一处理模块110和第二处理模块120的具体实现方式,不做具体限定。可以理解的是,上述第三处理模块130和第四处理模块140的具体实现方式可参照前述第一处理模块110或第二处理模块120的实现方式,在此就不再赘述。
[0184] 可选地,本申请实施例提供的电子装置100还可以包括存储模块和/或通信模块(图6和图7中均未示出),该存储模块存储有计算机程序。当第一处理模块110、第二处理模块120、第三处理模块130和/或第四处理模块140可运行该存储模块存储的计算机程序时,来执行前述任意一种雷达时钟同步方法。所述通信模块用于实现数据通信功能,所述电子装置100包括的第三处理模块130可通过所述通信模块与主时钟源进行通信,例如第三处理模块130通过通信模块向主时钟源发送同步请求消息,使所述电子装置100能够接收来自主时钟源的主时钟同步消息。
[0185] 还可以理解的是,本申请实施例提供的电子装置100可以是控制系统或控制组件,例如该控制系统或控制组件集成在激光雷达上,也可以是激光雷达,还可以是可设置于控制系统或控制组件、或激光雷达中的芯片系统或其他部件或组件,本申请对此不做限定。
[0186] 可选地,请参照图8,图8是本申请实施例提供的电子设备200的组成示意图。在本申请实施例中,所述电子设备200也可用于执行上述雷达时钟同步方法的各项流程实施例所示的方法流程,以实现对应的技术效果。其中,所述电子设备200可以包括存储器210和处理器220。
[0187] 其中,所述处理器220可以是一个通用的中央处理器(Central Processing Unit,CPU),微处理器,特定应用集成电路(Application‑Specific Integrated Circuit,ASIC),或一个或多个用于执行上述方法实施例提供的雷达时钟同步方法所对应的计算机程序的集成电路。
[0188] 其中,所述存储器210可以是,但不限于,ROM或可存储静态信息和指令的其它类型的静态存储设备,RAM或者可存储信息和指令的其它类型的动态存储设备,电可擦可编程只读存储器(Electrically Erasable Programmabler‑Only MEMory,EEPROM)、只读光盘(Compactdisc Read‑Only MEMory,CD‑ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质。
[0189] 在本实施例中,所述存储器210可用于存储与上述雷达时钟同步方法相关的至少一个计算机程序,所述处理器220可通过执行所述存储器210存储的所述至少一个计算机程序,以实现上述雷达时钟同步方法所对应的技术效果。其中,所述存储器210可以相对于所述处理器220独立存在,并通过通信总线与所述处理器220相连接;所述存储器210也可以和所述处理器220集成在一起。
[0190] 示例性地,本申请实施例提供的电子设备200可以是激光雷达10、激光雷达10的中控系统、智能手机、车辆、机器人、无人机、智能家居设备、智能运输设备、智能制造设备或测绘设备等。
[0191] 应当理解的是,图8所示的框图仅为电子设备200的一种组成示意图,所述电子设备200还可包括比图8中所示更多或者更少的组件,或者具有与图8所示不同的配置。
[0192] 此外,本申请提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被(例如计算机设备、激光雷达或处理器)运行时,实现上述方法实施例公开的任意一种可能的实现方式所述的雷达时钟同步方法。
[0193] 本申请可提供一种计算机程序产品,该计算机程序产品包括:计算机程序(也可以称为代码,或指令),当该计算机程序被(例如计算机设备、激光雷达或处理器)运行时,实现上述方法实施例公开的任意一种可能的实现方式所述的雷达时钟同步方法。
[0194] 本申请还提供一种芯片系统,芯片系统包括:处理器和存储器,该存储器用于存储至少一个计算机程序;当所述至少一个计算机程序被该处理器执行时,实现上述方法实施例公开的任意一种可能的实现方式所述的雷达时钟同步方法。
[0195] 在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0196] 另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得激光雷达或计算机设备或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0197] 综上所述,在本申请实施例提供的雷达时钟同步方法、电子装置、电子设备及可读存储介质中,本申请获取到激光雷达在当前本地时刻相对于主时钟源的实际主从时钟偏差后,会对实际主从时钟偏差进行指数平滑滤波处理,得到目标平滑主从时钟偏差,并调用自适应PID控制器基于当前本地时刻的实际PID参数,计算与目标平滑主从时钟偏差对应的目标对时控制量,而后在无需改变激光雷达的本地系统时钟信号的系统时钟周期时长的情况下,能够直接根据目标对时控制量对激光雷达的本地系统时钟信号的时钟周期计数值进行计数调整,来调整激光雷达的时钟频率,以改善激光雷达的本地时钟漂移问题,使激光雷达得以与主时钟源实现时钟同步,从而通过指数平滑滤波操作、自适应PID控制操作和时钟周期计数值调整操作之间的协同作用,在提升激光雷达与主时钟源之间的对时精准度,满足激光雷达的数据采集实时性要求的同时,改善激光雷达的本地时钟漂移问题,提升时钟同步精度及时钟同步稳定性,便于激光雷达所在的车辆、机器人等设备实现高精准度的自动化功能,提高设备系统的安全性能。
[0198] 以上所述,仅为本申请的各种实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应当以权利要求的保护范围为准。
QQ群二维码
意见反馈