一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

传感器安装偏差角的标定方法、组合定位系统和车辆与流程

2022-02-19 02:29:04 来源:中国专利 TAG:


1.本技术涉及自动驾驶技术领域,尤其涉及一种传感器安装偏差角的标定方法、组合定位系统和车辆。


背景技术:

2.自动驾驶车辆的定位系统用于确定车辆的位置,为车辆的路径规划和导航提供最基础的信息,定位系统的性能将直接决定自动驾驶车辆的稳定性和可靠性。目前定位系统一般为包含多种传感器的组合定位系统,例如:惯性导航系统(inertial navigation system,ins)使用的惯性测量单元(inertial measurement unit,imu)、全球卫星导航系统(global navigation satellite system,gnss)接收机、激光雷达(light detection and ranging,lidar)、里程计、视觉传感器等。
3.组合定位系统中的各个传感器通常安装到车辆的不同位置,因此在使用之前需要对各个传感器之间的安装位置关系标定,例如标定各个传感器之间的安装偏差角,以便于准确地对各个传感器的解算结果或定位结果进行滤波计算,提高定位精度。
4.目前,各个传感器之间的安装偏差角的标定主要采用离线标定方法,依赖专用的标定工具而使用一些光学手段或者间接标定的方式实现,操作较为繁琐,标定时间较长。当车辆由于长时间振动、颠簸等原因导致各个传感器之间的安装位置关系发生变化时,还需要重新标定,否则会影响组合定位系统的定位精度。


技术实现要素:

5.本技术实施例提供了一种传感器安装偏差角的标定方法、组合定位系统和车辆,能够实现对传感器安装偏差角的在线标定,当各个传感器之间的安装关系发生变化时,标定结果能够在线更新,从而始终保证组合定位系统的定位精度。
6.第一方面,本技术实施例提供了一种传感器安装偏差角的标定方法,该方法应用于组合定位系统,组合定位系统包括多个传感器,多个传感器的安装位置不同;该方法包括:根据各个传感器输出的姿态信息,构建各个传感器之间的安装偏差角的误差模型;构建系统状态方程,系统状态方程的状态变量包括安装偏差角;构建系统观测方程,系统观测方程的观测量包括根据误差模型确定的安装偏差角对应的观测矩阵;对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的安装偏差角的估计结果作为标定结果。
7.本技术实施例提供的方法,将各个传感器之间的安装偏差角整合到组合定位系统的状态变量中,因此能够实现在车辆行驶过程中对各个传感器之间的安装偏差角进行标定(即在线标定),标定过程不需要考虑传感器的物理结构,标定精度高。并且,本技术实施例的方法不需要借助用的标定工具,仅需要车辆产生机动即可完成标定,操作简单、快速。另外,当各个传感器之间的安装位置关系发生变化时,本技术实施例的方法能够在线更新标定结果,从而始终保证组合定位系统的定位精度。
8.在一种可选择的实现方式中,多个传感器包括惯性导航系统ins的惯性测量单元imu和全球导航卫星系统gnss接收机,gnss接收机包括gnss天线,imu和gnss天线的安装位置不同;根据各个传感器输出的姿态信息,构建各个传感器之间的安装偏差角的误差模型,包括:构造误差模型的观测量,观测量为imu和gnss天线之间的姿态偏差;构建从ins对应的姿态矩阵到gnss对应的姿态矩阵的转移关系方程;联立误差模型的观测量和转移关系方程构建误差模型,所述误差模型为所述imu和gnss天线之间的安装偏差角的误差模型;其中,姿态信息包括滚转角、俯仰角和航向角中的一个或者多个,转移关系方程包含ins的姿态误差和imu与gnss天线之间的安装偏差角。
9.在一种可选择的实现方式中,误差模型的观测量包括:
[0010][0011]
其中,γ
m
、θ
m
、分别为ins输出的滚转角、俯仰角和航向角;γ
g
、θ
g
、分别为gnss输出的滚转角、俯仰角和航向角。
[0012]
在一种可选择的实现方式中,转移关系方程包括:
[0013][0014]
其中,为ins对应的姿态矩阵,为gnss对应的姿态矩阵,为ins的姿态误差,λ0为imu与gnss天线之间的安装偏差角,λ0×
表示λ0的叉乘。
[0015]
在一种可选择的实现方式中,误差模型包括:
[0016][0017]
其中,z1、z2、z3为误差模型的观测量;分别为ins基于东-北-天坐标系的e轴姿态误差n轴姿态误差和u轴姿态误差;分别为imu与gnss天线之间基于右前上坐标系的x轴安装偏差角、y轴安装偏差角和z轴安装偏差角;其他参数为gnss对应的姿态矩阵中的参数。
[0018]
在一种可选择的实现方式中,系统状态方程包括:
[0019]
x=[x1,x2]
[0020][0021][0022]
其中,x1和x2为状态变量,x1为惯导误差,x2为imu与gnss天线之间的安装偏差角;为x1的导数;f1为组合定位系统的惯导误差模型的系统矩阵,g1、w1为惯导误差驱动噪声;为x2的导数;f2为imu与gnss天线之间的安装偏差角的误差模型的系统矩阵,g2、w2为imu
与gnss天线之间的安装偏差角的误差驱动噪声。
[0023]
在一种可选择的实现方式中,系统状态方程包括:
[0024]
z=hx v=[h
1 h
2 h3]
[0025]
其中,z为系统观测量,h为系统观测矩阵,x为系统状态方程,v为系统观测噪声矩阵,h1为ins的姿态误差对应的观测矩阵,h2为惯导误差模型中除了姿态误差以外的其他状态变量对应的观测矩阵,h3为imu与gnss天线之间的安装偏差角对应的观测矩阵。
[0026]
在一种可选择的实现方式中,对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的安装偏差角的最优估计结果作为标定结果,包括:对系统状态方程和系统观测方程进行卡尔曼滤波解算,得到imu与gnss天线之间的安装偏差角的最优估计结果;根据最优估计结果对gnss的定位结果进行补偿,以及对ins的惯导解算结果进行修正;当滤波解算结果收敛时,将imu与gnss天线之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0027]
在一种可选择的实现方式中,多个传感器包括imu和激光雷达lidar,imu和lidar的安装位置不同;根据各个传感器输出的姿态信息,构建各个传感器之间的安装偏差角的误差模型,包括:构造误差模型的观测量,观测量为imu和lidar之间的姿态偏差;构建从ins对应的姿态矩阵到lidar对应的姿态矩阵的转移关系方程;联立误差模型的观测量和转移关系方程构建误差模型,误差模型为imu和lidar之间的安装偏差角的误差模型;其中,姿态信息包括滚转角、俯仰角和航向角中的一个或者多个,转移关系方程包含ins的姿态误差和imu与lidar之间的安装偏差角。
[0028]
在一种可选择的实现方式中,误差模型的观测量包括:
[0029][0030]
其中,γ
m
、θ
m
、分别为ins输出的滚转角、俯仰角和航向角;γ
l
、θ
l
、分别为lidar输出的滚转角、俯仰角和航向角。
[0031]
在一种可选择的实现方式中,转移关系方程包括:
[0032][0033]
其中,为ins对应的姿态矩阵,为lidar对应的姿态矩阵,为ins的姿态误差,λ1为imu与lidar天线之间的安装偏差角,λ1×
表示λ1的叉乘。
[0034]
在一种可选择的实现方式中,误差模型包括:
[0035][0036]
其中,z1、z2、z3为误差模型的观测量;分别为ins基于东-北-天坐标系的e轴姿态误差n轴姿态误差和u轴姿态误差;分别为imu与lidar天线之间基于
右前上坐标系的x轴安装偏差角、y轴安装偏差角和z轴安装偏差角;其他参数为lidar对应的姿态矩阵中的参数。
[0037]
在一种可选择的实现方式中,系统状态方程包括:
[0038]
x=[x1,x3]
[0039][0040][0041]
其中,x1和x3为状态变量,x1为惯导误差,x3为imu与lidar之间的安装偏差角;为x1的导数;f1为组合定位系统的惯导误差模型的系统矩阵,g1、w1为惯导误差驱动噪声;为x3的导数;f3为imu与lidar之间的安装偏差角的误差模型的系统矩阵,g3、w3为imu与lidar之间的安装偏差角的误差驱动噪声。
[0042]
在一种可选择的实现方式中,系统状态方程包括:
[0043]
z=hx v=[h
1 h
2 h3]
[0044]
其中,z为系统观测量,h为系统观测矩阵,x为系统状态方程,v为系统观测噪声矩阵,h1为ins的姿态误差对应的观测矩阵,h2为惯导误差模型中除了姿态误差以外的其他状态变量对应的观测矩阵,h3为imu与lidar之间的安装偏差角对应的观测矩阵。
[0045]
在一种可选择的实现方式中,对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的安装偏差角的最优估计结果作为标定结果,包括:对系统状态方程和系统观测方程进行卡尔曼滤波解算,得到imu与lidar之间的安装偏差角的最优估计结果;根据最优估计结果对lidar的定位结果进行补偿,以及对ins的惯导解算结果进行修正;当滤波解算结果收敛时,将imu与lidar之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0046]
第二方面,本技术实施例提供了一种组合定位系统,该系统包括处理器、存储器和多个传感器,多个传感器的安装位置不同;存储器包括有程序指令,程序指令被处理器运行时,使得组合定位系统用于执行如下步骤:根据各个传感器输出的姿态信息,构建各个传感器之间的安装偏差角的误差模型;构建系统状态方程,系统状态方程的状态变量包括安装偏差角;构建系统观测方程,系统观测方程的观测量包括根据误差模型确定的安装偏差角对应的观测矩阵;对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的安装偏差角的估计结果作为标定结果。
[0047]
本技术实施例提供的组合定位系统,将各个传感器之间的安装偏差角整合到组合定位系统的状态变量中,因此能够实现在车辆行驶过程中对各个传感器之间的安装偏差角进行标定(即在线标定),标定过程不需要考虑传感器的物理结构,标定精度高。并且,本技术实施例的组合定位系统不需要借助用的标定工具,仅需要车辆产生机动即可完成标定,操作简单、快速。另外,当各个传感器之间的安装位置关系发生变化时,本技术实施例的方法能够在线更新标定结果,从而始终保证组合定位系统的定位精度。
[0048]
在一种可选择的实现方式中,多个传感器包括惯性导航系统ins的惯性测量单元imu和全球导航卫星系统gnss接收机,gnss接收机包括gnss天线,imu和gnss天线的安装位置不同;程序指令被处理器运行时,使得组合定位系统用于执行如下步骤,以实现根据各个传感器输出的姿态信息,构建各个传感器之间的安装偏差角的误差模型:构造误差模型的
观测量,观测量为imu和gnss天线之间的姿态偏差;构建从ins对应的姿态矩阵到gnss对应的姿态矩阵的转移关系方程;联立误差模型的观测量和转移关系方程构建误差模型,误差模型为imu和gnss天线之间的安装偏差角的误差模型;其中,姿态信息包括滚转角、俯仰角和航向角中的一个或者多个,转移关系方程包含ins的姿态误差和imu与gnss天线之间的安装偏差角。
[0049]
在一种可选择的实现方式中,程序指令被处理器运行时,使得组合定位系统用于执行如下步骤,以实现对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的安装偏差角的最优估计结果作为标定结果:对系统状态方程和系统观测方程进行卡尔曼滤波解算,得到imu与gnss天线之间的安装偏差角的最优估计结果;根据最优估计结果对gnss的定位结果进行补偿,以及对ins的惯导解算结果进行修正;当滤波解算结果收敛时,将imu与gnss天线之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0050]
在一种可选择的实现方式中,多个传感器包括imu和激光雷达lidar,imu和lidar的安装位置不同;程序指令被处理器运行时,使得组合定位系统用于执行如下步骤,以实现根据各个传感器输出的姿态信息,构建各个传感器之间的安装偏差角的误差模型:构造误差模型的观测量,观测量为imu和lidar之间的姿态偏差;构建从ins对应的姿态矩阵到lidar对应的姿态矩阵的转移关系方程;联立误差模型的观测量和转移关系方程构建误差模型,误差模型为imu和lidar之间的安装偏差角的误差模型;其中,姿态信息包括滚转角、俯仰角和航向角中的一个或者多个,转移关系方程包含ins的姿态误差和imu与lidar之间的安装偏差角。
[0051]
在一种可选择的实现方式中,程序指令被处理器运行时,使得组合定位系统用于执行如下步骤,以实现对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的安装偏差角的最优估计结果作为标定结果:对系统状态方程和系统观测方程进行卡尔曼滤波解算,得到imu与lidar之间的安装偏差角的最优估计结果;根据最优估计结果对lidar的定位结果进行补偿,以及对ins的惯导解算结果进行修正;当滤波解算结果收敛时,将imu与lidar之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0052]
进一步地,本技术实施例提供的组合定位系统,还可以执行前述第一方面的其他实现方式。
[0053]
第三方面,本技术实施例提供了一种车辆,该车辆包括组合定位系统,组合定位系统包括处理器、存储器和多个传感器,不同传感器安装在车辆的不同位置;存储器包括有程序指令,程序指令被处理器运行时,使得组合定位系统用于执行前述第一方面及其任意实现方式中的方法。
[0054]
第四方面,本技术实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
[0055]
第五方面,本技术实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面的方法。
[0056]
第六方面,本技术实施例还提供了一种芯片系统,该芯片系统包括处理器,用于支持上述装置或系统实现上述方面中所涉及的功能,例如,生成或处理上述方法中所涉及的信息。
附图说明
[0057]
图1是采用组合定位算法的组合定位系统的数据逻辑框图;
[0058]
图2是组合定位系统中的各个传感器在车辆上的位置示意图;
[0059]
图3是本技术实施例示出的安装偏差角的示意图;
[0060]
图4是本技术实施例提供的组合定位系统的硬件结构图;
[0061]
图5是本技术实施例提供的扩充后的组合定位系统的数据逻辑框图;
[0062]
图6是本技术实施例提供的传感器安装偏差角的标定方法应用于imu与gnss天线之间的安装偏差角的标定的流程图;
[0063]
图7是本技术实施例提供的传感器安装偏差角的标定方法应用于imu与lidar安装偏差角的标定的流程图;
[0064]
图8是本技术实施例提供的组合定位系统的软件模块的示意图;
[0065]
图9是本技术实施例提供的组合定位系统的软件模块应用于标定imu和gnss天线之间的安装偏差角时的数据逻辑框图;
[0066]
图10是本技术实施例提供的组合定位系统的软件模块应用于标定imu和lidar之间的安装偏差角时的数据逻辑框图。
具体实施方式
[0067]
自动驾驶车辆(autonomous vehicles或self-driving automobile),也称无人驾驶车辆,电脑驾驶车辆或者轮式移动机器人。自动驾驶车辆能够以雷达、全球导航卫星系统(global navigation satellite system,gnss)及机器视觉等技术感测其周围环境,并根据感测数据确定自身位置、规划导航路线、更新地图信息、躲避障碍等,最终实现在没有任何人类主动操作或者少有人类主动操作的情况下自动地驾驶车辆。
[0068]
一般来说,自动驾驶车辆需要解决驾驶的三个核心问题:在哪里?(车辆定位);去哪里?(确定目的地);怎么去?(路径规划)。其中,自动驾驶车辆的定位系统主要用于解决“在哪里?”的问题。因此,作为自动驾驶车辆的关键模块之一,定位系统的性能将直接决定自动驾驶车辆的稳定性和可靠性。
[0069]
目前,定位系统为了解决“在哪里?”的问题通常会包含有用于车辆定位的传感器,例如:惯性测量单元imu、gnss接收机、激光雷达lidar、里程计、视觉传感器等。其中,imu例如可以包括三轴陀螺仪和加速度计,可用于测量自动驾驶车辆的角速度和加速度;gnss接收机可用于测量gnss的卫星信号,lidar可用于测量车辆与其他物体的距离。由于不同的传感器用于测量不同的数据,各个传感器应用在定位系统中既有优势也有局限性,单独使用任何一种传感器都难以达到定位精度高、抗干扰能力强、数据更新快的要求,因此目前的定位系统通常会将上述多个传感器的数据相结合,根据组合定位算法解算出车辆的位姿,达到取长补短、优势互补的效果,从而提高定位系统的稳定性和可靠性。
[0070]
目前,采用组合定位算法的组合定位系统的数据逻辑框图如图1所示,其中,组合定位系统以ins 100的解算结果,例如根据imu 110测量的角速度和加速度输出的位置、速度和姿态信息(以下称惯导位姿),gnss 120的定位结果,lidar 130的定位结果等作为组合滤波器140的输入,利用滤波结果对ins 100的解算结果进行误差修正,以确定最终的定位结果,例如位姿及其协方差。在图1以及其他常见的定位系统中,组合滤波器140的系统变量
一般为惯导相关误差(简称惯导误差),例如:位置误差、速度误差、姿态误差、加速度计零偏差和陀螺仪零偏差等。
[0071]
本技术实施例中的组合滤波器140例如可以是卡尔曼滤波器(kalman filter,kf),卡尔曼滤波器是一种递归滤波器(自回归滤波器),它能够从一系列的不完全及包含噪声的测量量中,估计动态系统的状态。卡尔曼滤波会根据各测量量在不同时间下的值,考虑各时间下的联合分布,再产生对未知变量的估计,因此会比只以单一测量量为基础的估计方式要准确。
[0072]
图2是组合定位系统中的各个传感器在车辆上的位置示意图。如图2所示,该组合定位系统的传感器包括imu 110、lidar 130和gnss天线,gnss天线可以包括一个gnss主天线121和一个gnss从天线122,简称gnss双天线。组合定位系统中的各个传感器通常会被安装到车辆的不同位置,例如,imu 110被安装到车辆的中部,gnss双天线被安装到车辆的顶部,并且gnss主天线121和gnss从天线122前后分布设置,以便于接收卫星的gnss信号,lidar 130被安装到车辆的头部,以便于测量车辆行驶前方的物体。
[0073]
一般来说,各个传感器会基于自身的坐标系描述其解算结果或定位结果,由于各个传感器的安装位置不同,因此各个传感器的坐标系也不同。示例地,如图2所示,组合定位系统中包括:环境坐标系(e,n,u),lidar坐标系(x
l
,y
l
,z
l
),imu坐标系(x
b
,y
b
,z
b
),gnss坐标系(x
g
,y
g
,z
g
)和后轮轴地面投影坐标系(x
m
,y
m
,z
m
)。可以理解的是,由于各个传感器的坐标系不同,因此将各个传感器的解算结果或定位结果进行滤波计算时,需要依赖各个各个传感器之间的安装位置关系以归化坐标系。各个各个传感器之间的安装位置关系可以通过标定获得,因此,标定的准确性就成为了组合定位系统定位精度的重要因素。
[0074]
在一个实施例中,环境坐标系(e,n,u)例如可以是站心坐标系,也称东-北-天坐标系enu。站心坐标系以目标(例如gnss天线)所在位置为坐标原点,包括指向东方向的e轴、指向北方向的n轴和指向天空的u轴。
[0075]
在一个实施例中,lidar坐标系(x
l
,y
l
,z
l
),imu坐标系(x
b
,y
b
,z
b
),gnss坐标系(x
g
,y
g
,z
g
)和后轮轴地面投影坐标系(x
m
,y
m
,z
m
)均可以使用右前上坐标系。在组合定位系统中,右前上坐标系以载具(例如车辆)的前进方向为y轴方向,以载具的右侧为x轴方向,以垂直于x轴和y轴的朝上方向为z轴方向,各个坐标系的原点可以是其对应的传感器的中心。
[0076]
本技术实施例中,各个传感器之间的安装位置关系可以包括臂参数以及安装偏差角。其中,杆臂参数主要描述各个各个传感器之间的安装位置距离,一般可以通过测量设备直接测量得到;安装偏差角主要描述各个各个传感器之间的安装角度偏差,考虑到车辆上传感器安装位置关系以及传感器的自身结构特性,各个传感器之间的安装偏差角一般很难通过测量设备直接精确测量。一般来说,安装偏差角可以包括imu和gnss天线之间的安装偏差角,以及imu与lidar之间的安装偏差角。
[0077]
图3是本技术实施例示出的安装偏差角的示意图,如图3所示,imu 110和gnss天线之间的航向安装偏差角是指gnss双天线之间的连线(从gnss主天线121到gnss从天线122)与imu坐标系前向轴(yb)的夹角λgb;imu 110与lidar 130之间的航向安装偏差角指lidar坐标系前向轴(yl)与imu坐标系前向轴(yb)的夹角λlb。
[0078]
目前,imu和gnss天线之间的安装偏差角的标定主要采用离线标定方法,并且大多采用光学手段实现。以航向安装偏差角为例,可以通过光学手段分别对imu和gnss天线的航
向进行标定,然后计算二者航向的偏差值即为imu和gnss天线之间的航向安装偏差角。然而,由于gnss天线的相位中心位于天线内部,致使难以准确测量双天线的轴线,因此该方法的标定精度较低;并且,该方法需要依赖专用的标定工具,例如激光扫描仪、经纬仪等,操作较为繁琐,标定时间较长;另外,当车辆由于长时间振动、颠簸等原因导致imu与gnss安装位置关系发生变化时,需要重新标定,否则会影响组合定位系统的定位精度。
[0079]
目前,imu与lidar之间的安装偏差角的标定方法同样主要为离线标定方法,并且大多采用间接标定法,以航向安装偏差角为例,可以借助测量公共点或者辅助测量坐标系,建立imu与lidar之间的联系,从而进一步确定imu与lidar之间的航向安装偏差角。该方法同样需要依赖专用的标定工具,操作较为繁琐,标定时间较长,并且,当imu与lidar安装位置关系发生变化时,需要重新标定,否则会影响组合定位系统的定位精度。
[0080]
为了解决现有技术中存在的技术问题,本技术实施例提供了一种传感器安装偏差角的标定方法。
[0081]
本技术实施例中的组合定位系统,可以是包括两个或者两个以上的定位传感器的定位系统,并且该定位系统使用上述两个或者两个以上的传感器的解算结果或者定位结果综合确定最终的定位结果。对于组合定位系统具体包含哪些定位传感器,本技术实施例不做具体限定,例如:在一些实施例中,组合定位系统可以包括imu和gnss;在另一些实施例中,组合定位系统包括imu和lidar;在另一些实施例中,组合定位系统可以包括imu、lidar和gnss;在另一些实施例中,组合定位系统除包含上述定位传感器之外,还可以包括其他传感器。
[0082]
图4是本技术实施例提供的组合定位系统的硬件结构图。在一个实施例中,该组合定位系统可以包括:imu 110、gnss 120、lidar 130、里程计140、视觉传感器150等传感器,处理器160、存储器170和通信模块180等。其中,imu 110、gnss 120、lidar 130等传感器用于测量和接收各类测量数据,处理器160用于对根据相应的组合定位算法对测量数据进行解算,例如:惯性导航解算、卡尔曼滤波计算等,以得到定位结果。
[0083]
处理器160例如可以包括一个或者多个处理单元,例如中央处理器(central processing unit,cpu)、微控制器(microcontroller,mcu)、图像信号处理器(image signal processor,isp)、神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中,例如集成在系统芯片(system on a chip,soc)中。处理器160中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器中的存储器为高速缓冲存储器。该存储器可以保存处理器刚用过或循环使用的指令或数据。
[0084]
存储器170可以包括一个或者多个存储单元,例如可以包括易失性存储器(volatile memory),如:动态随机存取存储器(dynamic random access memory,dram)、静态随机存取存储器(static random access memory,sram)等;还可以包括非易失性存储器(non-volatile memory,nvm),如:只读存储器(read-only memory,rom)、闪存(flash memory)等。存储器170可以用于存储处理器可执行的程序代码和指令,例如:用于处理传感器数据的程序代码和指令、用于惯性导航解算的程序和指令、用于实现卡尔曼滤波算法的程序和指令等。存储器170还可以存储有自动驾驶计算平台的车机操作系统,例如:鸿蒙操作系统harmony os、uqx操作系统等。
[0085]
通信模块180用于使车辆实现与外界的2g、3g、4g和5g多种网络模式的通信,例如实现车辆的车联万物(vehicle-to-everything,v2x)等,通信模块例如可以包括基带芯片、功率放大器和天线等。在一些实施例中,通信模块180的部分或者全部器件可以与一个或者多个处理器集成在一起,例如基带芯片可以与cpu、npu、isp等集成在soc中。
[0086]
另外,组合定位系统还可以包括通信接口,例如控制器局域网(controller area network,can)接口,使得处理器可以与车辆的其他芯片和设备,例如电子控制单元(electrical control unit,ecu)进行通信。
[0087]
可以理解的是,本技术实施例示意的组合定位系统的硬件结构并不构成对组合定位系统的具体限定。在本技术另一些实施例中,组合定位系统的硬件结构可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
[0088]
本技术实施例中的组合定位系统可以安装到各类应用自动驾驶技术或导航定位的载具之上,包括但不限于各种交通工具:例如车辆(汽车)、轮船、火车、地铁、飞机等,以及各种机器人,例如:服务机器人、运输机器人、自主导引机器人(automated guided vehicle,agv)、无人地面车(unmanned ground vehicle,ugv)等,以及各种工程机械,例如:隧道掘进机等。
[0089]
下面以组合定位系统包括imu、lidar和gnss等传感器为例,对本技术实施例提供的传感器安装偏差角的标定方法的技术方案进行示例地阐述说明。
[0090]
本技术实施例对目前组合定位系统的状态变量进行了扩充,扩充后的组合定位系统的数据逻辑框图如图5所示,其中,该组合定位系统以根据imu 110测量的角速度和加速度确定的惯导位姿、gnss 120的定位结果、lidar 130的定位结果等作为组合定位滤波器的输入,并且在原有的惯导相关的误差,例如:位置误差、速度误差、姿态误差、加速度计零偏差和陀螺仪零偏差等基础之上,将imu和gnss天线之间的安装偏差角,以及imu与lidar之间的安装偏差角也扩充到组合定位系统的系统变量中,从而通过组合滤波器对imu和gnss天线之间的安装偏差角,以及imu与lidar之间的安装偏差角进行在线标定;当组合定位滤波器的状态变量完成收敛时,根据在线标定结果中的imu和gnss天线之间的安装偏差角,以及imu与lidar之间的安装偏差角对gnss和lidar的定位结果进行补偿,以提高定位精度。
[0091]
在一些实施例中,本技术提供的传感器安装偏差角的标定方法具体可以由两部分组成,第一部分包括imu与gnss双天线安装偏差角的标定,第二部分包括imu与lidar之间的安装偏差角的标定方。下面分别结合更多附图分别对本方法的上述两部分进行具体地解释说明。
[0092]
图6是本技术实施例提供的传感器安装偏差角的标定方法应用于imu与gnss天线之间的安装偏差角的标定的流程图。如图6所示,该方法可以包括以下步骤:
[0093]
步骤s101,获取imu的测量结果。
[0094]
其中,imu的测量结果例如可以包括imu测量得到的角速度和加速度信息。
[0095]
具体实现中,在imu和gnss等传感器固定安装在载具上之后,可以使载具产生机动,例如加速、减速、匀速行驶、左转和右转等,在载具机动期间,组合定位系统可以实时并且连续地获取imu测量得到的角速度和加速度信息。
[0096]
步骤s102,对imu的测量结果进行解算,以得到ins的姿态信息。
[0097]
ins的姿态信息可以通过姿态矩阵来表达。另外,步骤s102对测量结果进行解算之后还可以得到ins的位置和速度等信息。上述位置、速度和姿态信息也可以概括称为惯导位姿。
[0098]
具体实现中,在载具产生机动的过程中,组合定位系统可以实时并且连续地对imu的测量结果数据进行解算,从而连续地获取车辆当前的位置、速度和姿态信息等。
[0099]
在一个实施例中,在解算的初始阶段,可以根据gnss定位结果确定车辆的初始位置和初始速度,作为imu的初始数据;然后,组合定位系统可以根据初始数据和当前imu的测量结果数据解算得到车辆最新的位置、速度和姿态信息。在解算的非初始阶段,组合定位系统可以根据上一次解算得到的车辆的位置、速度和姿态信息和当前imu的测量结果数据得到车辆最新的位置、速度和姿态信息。
[0100]
步骤s103,根据ins的姿态信息和gnss姿态信息构建ins与gnss天线之间的安装偏差角的误差模型。
[0101]
其中,该误差模型以通过组合定位滤波器的状态变量进行描述。
[0102]
在一个实施例中,为了建立imu与gnss之间的安装偏差角的误差模型,本技术实施例可以构建ins对应的姿态矩阵以及,gnss对应的姿态矩阵
[0103]
姿态矩阵例如可以是一个3
×
3大小的矩阵,其表示ins输出的位姿从后轮轴地面投影坐标系(xm,ym,zm)经过平移和旋转等映射到环境坐标系(e,n,u)。一般来说,由于imu的安装位置可能存在误差,因此,将此imu输出的位姿从后轮轴地面投影坐标系(xm,ym,zm)进行映射之后,可能会映射到有误差的环境坐标系(xn

,yn

,zn

),因此,本技术实施例将上述imu对应的姿态矩阵记作
[0104]
姿态矩阵例如可以是一个3
×
3大小的矩阵,其表示gnss输出的位姿从gnss坐标系(xg,yg,zg)经过平移和旋转等映射到环境坐标系(e,n,u)。
[0105]
示例地,imu对应的姿态矩阵和gnss对应的姿态矩阵可以表示为以下公式(1):
[0106][0107]
其中,姿态矩阵中的参数等用来表示ins输出的位姿从后轮轴地面投影坐标系(xm,ym,zm)映射到环境坐标系(e,n,u)需要的平移和旋转等参数;姿态矩阵中的参数等用来表示gnss输出的位姿从gnss坐标系(xg,yg,zg)映射到环境坐标系(e,n,u)需要的平移和旋转等参数。
[0108]
另外,为便于描述,本技术实施例这里将ins输出的滚转角表示为γ
m
、俯仰角表示为θ
m
、航向角表示为以及,将gnss定位输出的滚转角表示为γ
g
、俯仰角表示为θ
g
、航向角表示为那么,该误差模型的观测量可以表示为以下公式(2)
[0109]
[0110]
其中,δγ0表示imu与gnss输出的滚转角的偏差、δθ0表示imu与gnss输出的俯仰角的偏差、表示imu与gnss输出的航向角的偏差,为便于概括描述,本技术实施例将上述偏差称作imu和gnss天线之间的姿态偏差。
[0111]
需要补充说明的是,在车辆自动驾驶的定位和导航过程中,航向角对定位结果的准确性影响比较明显,因此,本技术实施例在后续输出标定结果时,也可以仅考虑输出imu与gnss双天线之间的航向安装偏差角。
[0112]
进一步地,本技术实施例可以对imu对应的姿态矩阵进行以下变换,构造从ins对应的姿态矩阵到gnss对应的姿态矩阵的转移关系方程,以建立其与gnss对应的姿态矩阵之间的联系。
[0113]
其中,姿态矩阵可以分解成两个变换矩阵,即和并且其中,例如可以是一个3
×
3大小的矩阵,其表示将位姿从环境坐标系(e,n,u)经过平移和旋转等映射到有误差的环境坐标系(xn

,yn

,zn

);例如可以是一个3
×
3大小的矩阵,其表示将位姿从后轮轴地面投影坐标系(xm,ym,zm)经过平移和旋转等映射到环境坐标系(e,n,u)。
[0114]
可以进一步分解成两个变换矩阵,即和并且其中,例如可以是一个3
×
3大小的矩阵,其表示将位姿从gnss坐标系(xg,yg,zg)经过平移和旋转等映射到环境坐标系(e,n,u);例如可以是一个3
×
3大小的矩阵,其表示将位姿从后轮轴地面投影坐标系(xm,ym,zm)经过平移和旋转等映射到gnss坐标系(xg,yg,zg)。
[0115]
进而得到以下公式(3):
[0116][0117]
进一步地,本技术实施例可以基于公式(3)向组合定位滤波器的状态变量中引入ins的姿态误差和imu与gnss天线之间的安装偏差角。
[0118]
示例地,以东-北-天坐标系描述的ins的姿态误差可以为:
[0119][0120]
其中,为ins的e轴姿态误差、为ins的n轴姿态误差、为ins的u轴姿态误差。则有:
[0121][0122]
其中,表示的叉乘,i为单位矩阵:
[0123][0124]
示例地,imu与gnss天线之间的安装偏差角λ可以为:
[0125][0126]
其中,为x轴方向的安装偏差角、为y轴方向的安装偏差角、为z轴方向的安装偏差角。则有:
[0127][0128]
其中,λ0×
表示λ0的叉乘。
[0129]
由此,根据公式(3)可进一步得到:
[0130][0131]
上述公式(4)即可以作为从ins对应的姿态矩阵到gnss对应的姿态矩阵的转移关系方程。
[0132]
接下来,将公式(1)、公式(2)与公式(4)联立,可推导出imu对应的姿态矩阵和gnss对应的姿态矩阵中的各个元素间的关系如公式(5)所示:
[0133][0134]
将公式(5)的左端按照泰勒级数展开,并且忽略公式中的二阶以上的高阶项,可以得到公式(6):
[0135][0136]
该公式(6)可以称作imu与gnss双天线之间的安装偏差角的误差模型。其中,z1,z2,z3为该误差模型的观测量;为前述提到的ins的姿态误差,例如平台误差角;为前述提到的ins的姿态误差,例如平台误差角;为前述提到的imu与gnss天线之间的安装偏差角。
[0137]
步骤s104,构建系统状态方程,系统状态方程的状态变量包括ins与gnss天线之间的安装偏差角。
[0138]
一般来说,组合定位系统中原有的状态方程是基于惯导误差模型构建的方程,状态方程中的状态变量为惯导误差,例如:位置误差、速度误差、姿态误差、加速度计零偏差和陀螺仪零偏差等,而本技术实施例可以将imu与gnss天线之间的安装偏差角的误差模型引入到原有的状态方程中,使新的状态方程的状态变量既包含惯导误差相关的变量,也包含imu与gnss天线之间的安装偏差角的误差。
[0139]
在一个实施例中,本技术实施例定义该组合定位系统新的系统状态方程包括:
[0140]
x=[x1,x2]
ꢀꢀꢀ
(7)
[0141]
其中,x1和x2为状态变量,x1为惯导误差,x2为imu与gnss天线之间的安装偏差角。
[0142]
则有,x1的系统状态方程为:
[0143][0144]
其中,为惯导误差x1的导数;f1为惯导误差模型中可以推导的系统矩阵,例如可
以是惯导误差模型的非线性转移矩阵;g1,w1为惯导误差驱动噪声,其中,g1可以是惯导误差的噪声驱动矩阵,w1可以是惯导误差的状态噪声矩阵,可选的,g1和w1均为高斯白噪声。
[0145]
示例地,
[0146]
其中,分别为东、北、天方向平台失准角,δv
e
,δv
n
,δv
u
分别为ins在东、北、天方向的速度误差,δλ,δl,δh分别为ins的经度、纬度和高度误差,ε
x

y

z
为陀螺仪随机常值漂移在x,y,z轴的分量,为ins的加速度计零偏在x,y,z轴的分量。可以理解的是,上述x1包含的参数项仅仅作为一个示例,不构成对x1的限定,在一些其他的实现方式中,x1可以包含更多的参数项或者更少的参数项,本技术实施例此处不做具体展开说明。
[0147]
以及,x2的系统状态方程为:
[0148][0149]
其中,为imu与gnss天线之间的安装偏差角x2的导数;f2为imu与gnss天线之间的安装偏差角的误差模型中可以推导的系统矩阵,例如可以是该误差模型的非线性转移矩阵;g2,w2为imu与gnss天线之间的安装偏差角的误差驱动噪声,其中,g2可以是imu与gnss天线之间的安装偏差角的误差的噪声驱动矩阵,w2可以是imu与gnss天线之间的安装偏差角的误差的状态噪声矩阵,可选的,g2和w2均为高斯白噪声。
[0150]
示例地,
[0151]
其中,为x轴方向的安装偏差角、为y轴方向的安装偏差角、为z轴方向的安装偏差角。可以理解的是,上述x2包含的参数项仅仅作为一个示例,不构成对x2的限定,在一些其他的实现方式中,x2可以包含更多的参数项或者更少的参数项,本技术实施例此处不做具体展开说明。
[0152]
另设,imu与gnss天线之间的安装偏差角的误差为则对应的系统状态方程为:
[0153][0154]
其中,为的导数。
[0155]
以上,公式(7)-(9)即构成了本技术实施例的组合定位系统的系统状态方程,可以看出,该系统状态方程的状态变量不仅包含了惯导误差,还包含了imu与gnss天线之间的安装偏差角,由此,在后续使用组合定位滤波器对系统状态方程的状态变量进行在线估计时,就能够同时对imu与gnss天线之间的安装偏差角进行在线标定。
[0156]
步骤s105,构建系统观测方程,系统观测方程的观测量包括根据误差模型确定的ins与gnss天线之间的安装偏差角对应的观测矩阵。
[0157]
具体来说,该系观测方程的观测量为惯导误差对应的观测矩阵和imu与gnss天线之间的安装偏差角的误差对应的观测矩阵。
[0158]
在一个实施例中,该系统观测方程可以为:
[0159]
z=hx v=[h
1 h
2 h3]
[0160]
其中,z为系统观测量,h为系统观测矩阵,x为本技术实施例在步骤s105中建立的新的系统状态方程,v为系统观测噪声矩阵。进一步地,h1为姿态误差对应的观测矩阵,h2为误差模型中除了姿态误差以外的其他状态变量对应的观测矩阵,h3为imu与gnss天线之间
的安装偏差角对应的观测矩阵。h2可根据惯导误差模型得到,h1和h3如下所示:
[0161][0162][0163]
步骤s106,使用组合定位滤波器对系统状态方程和系统观测方程进行滤波解算,以得到imu与gnss天线之间的安装偏差角的最优估计结果。
[0164]
具体实现中,组合定位滤波器可以是卡尔曼滤波器,即对系统状态方程和系统观测方程进行卡尔曼滤波,以得到imu与gnss之间的航向安装偏差角的最优估计结果。
[0165]
步骤s107,根据imu与gnss天线之间的安装偏差角的最优估计结果对gnss定位结果进行补偿。
[0166]
这样,gnss与imu之间消除了由于安装偏差角而产生的实际安装位置关系与其坐标系位置关系的不一致性,从而消除了由安装偏差角造成的组合定位误差,提高组合定位系统的定位精度。
[0167]
另外,本技术实施例还可以根据卡尔曼滤波得到的状态变量最优估计结果对惯导解算结果,例如位置、速度和姿态等进行校正,以修正惯导解算结果的累积误差,提高组合定位系统的定位精度。
[0168]
步骤s108,当组合定位滤波器对的滤波解算结果收敛时,将imu与gnss天线之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0169]
在此之后,如果imu与gnss之间的安装位置关系没有发生变化,那么imu与gnss天线之间的安装偏差角就不会改变,那么卡尔曼滤波器对的滤波解算结果将一直处于收敛状态;如果车辆在行驶过程中发生振动或者车辆维修等导致imu与gnss之间的安装位置关系,那么当卡尔曼滤波器对的滤波解算结果经过短暂的不收敛状态之后也会再次进入到收敛状态,这时,imu与gnss天线之间的安装偏差角的最优估计结果会发生变化,组合定位系统可以在卡尔曼滤波器重新收敛之后,将最新的标定结果保存至配置文件中。
[0170]
由此可见,本技术实施例的方法将imu与gnss天线之间的安装偏差角整合到组合定位系统的状态变量中,实现了在车辆行驶过程中对组合定位系统的imu与gnss天线之间的安装偏差角进行标定(即在线标定),标定过程不需要考虑imu和gnss的物理结构,标定精度高。并且,本技术实施例的方法不需要借助用的标定工具,仅需要车辆产生机动即可完成标定,操作简单、快速。另外,当imu与gnss之间的安装位置关系发生变化时,本技术实施例的方法能够在线更新标定结果,从而始终保证组合定位系统的准确性。
[0171]
图7是本技术实施例提供的传感器安装偏差角的标定方法应用于imu与lidar安装偏差角的标定的流程图。如图7所示,该方法可以包括以下步骤:
[0172]
步骤s201,获取imu的测量结果。
[0173]
其中,imu的测量结果例如可以包括imu测量得到的角速度和加速度信息。
[0174]
步骤s202,对imu的测量结果进行解算,以得到ins的姿态信息。
[0175]
步骤s201和步骤s202的具体实现方式可以参照步骤s101和步骤s102,此处不再赘述。
[0176]
步骤s203,根据ins的姿态信息和lidar姿态信息构建ins与lidar之间的安装偏差角的误差模型。
[0177]
其中,该误差模型的参数可以通过组合定位滤波器的状态变量进行表述。
[0178]
在一个实施例中,为了建立imu与lidar之间的安装偏差角的误差模型,本技术实施例可以构建ins对应的姿态矩阵以及lidar对应的姿态矩阵
[0179]
姿态矩阵的具体实现方式可以参考本技术实施例对步骤s103和公式(1)描述的内容,此处不再赘述。
[0180]
姿态矩阵例如可以是一个3
×
3大小的矩阵,其表示lidar输出的位姿从lidar坐标系(xl,yl,zl)经过平移和旋转等映射到环境坐标系(e,n,u)。
[0181]
示例地,imu对应的姿态矩阵和lidar对应的姿态矩阵可以表示为以下公式(10):
[0182][0183]
其中,姿态矩阵中的参数等用来表示ins输出的位姿从后轮轴地面投影坐标系(xm,ym,zm)映射到环境坐标系(e,n,u)需要的平移和旋转等参数;姿态矩阵中的参数等用来表示lidar输出的位姿从lidar坐标系(xl,yl,zl)映射到环境坐标系(e,n,u)需要的平移和旋转等参数。
[0184]
另外,为便于描述,本技术实施例这里将imu解算输出的滚转角表示为γ
m
、俯仰角表示为θ
m
、航向角表示为以及,将lidar定位输出的滚转角表示为γ
l
、俯仰角表示为θ
l
、航向角表示为那么,该组合定位系统的姿态观测量可以表示为以下公式(11)
[0185][0186]
其中,δγ1表示imu与lidar输出的滚转角的偏差、δθ1表示imu与lidar输出的俯仰角的偏差、表示imu与lidar输出的航向角的偏差,为便于概括描述,本技术实施例将上述偏差称作imu和lidar之间的姿态偏差。
[0187]
需要补充说明的是,在车辆自动驾驶的定位和导航过程中,航向角对定位结果的准确性影响比较明显,因此,本技术实施例在后续输出标定结果时,可以仅考虑输出imu与lidar之间的航向安装偏差角。
[0188]
进一步地,本技术实施例可以对ins对应的姿态矩阵进行以下变换,构造从ins
对应的姿态矩阵到lidar对应的姿态矩阵的转移关系方程,以建立其与gnss对应的姿态矩阵之间的联系。
[0189]
其中,姿态矩阵可以分解成两个变换矩阵,即和并且其中,例如可以是一个3
×
3大小的矩阵,其表示将位姿从环境坐标系(e,n,u)经过平移和旋转等映射到有误差的环境坐标系(xn

,yn

,zn

);例如可以是一个3
×
3大小的矩阵,其表示将位姿从后轮轴地面投影坐标系(xm,ym,zm)经过平移和旋转等映射到环境坐标系(e,n,u)。
[0190]
可以进一步分解成两个变换矩阵,即和并且其中,例如可以是一个3
×
3大小的矩阵,其表示将位姿从lidar坐标系(x
l
,y
l
,z
l
)经过平移和旋转等映射到环境坐标系(e,n,u);例如可以是一个3
×
3大小的矩阵,其表示将位姿从后轮轴地面投影坐标系(xm,ym,zm)经过平移和旋转等映射到lidar坐标系(x
l
,y
l
,z
l
)。
[0191]
进而得到以下以下公式(12):
[0192][0193]
进一步地,本技术实施例可以基于公式(12)向组合定位滤波器的状态变量中引入ins的姿态误差,以及imu与lidar之间的安装偏差角。
[0194]
示例地,以东-北-天坐标系描述的ins的姿态误差可以为:
[0195][0196]
其中,为ins的e轴姿态误差、为ins的n轴姿态误差、为ins的u轴姿态误差。则有:
[0197][0198]
其中,表示的叉乘,i为单位矩阵:
[0199][0200]
示例地,imu与lidar之间的安装偏差角λ1可以为:
[0201][0202]
其中,为x轴方向的安装偏差角、为y轴方向的安装偏差角、为z轴方向的安装偏差角。则有:
[0203][0204]
其中,λ1×
表示λ1的叉乘。
[0205]
由此,根据公式(12)可进一步得到:
[0206][0207]
上述公式(13)即可以作为从ins对应的姿态矩阵到lidar对应的姿态矩阵的转移关系方程。
[0208]
接下来,将公式(10)、公式(11)与公式(13)联立,可推导出ins对应的姿态矩阵和lidar对应的姿态矩阵中的各个元素间的关系如公式(14)所示:
[0209][0210]
将公式(14)的左端按照泰勒级数展开,并且忽略公式中的二阶以上的高阶项,可以得到公式(15):
[0211][0212]
该公式(15)可以称作imu与lidar之间的安装偏差角的误差模型。其中,z1,z2,z3为该误差模型的观测量;为前述提到的ins的姿态误差,例如平台误差角;为前述提到的ins的姿态误差,例如平台误差角;为前述提到的imu与lidar之间的安装偏差角。
[0213]
步骤s204,构建系统状态方程,系统状态方程的状态变量包括ins与lidar之间的安装偏差角。
[0214]
一般来说,组合定位系统中原有的状态方程是基于惯导误差模型构建的方程,状态方程中的状态变量为惯导误差,例如:位置误差、速度误差、姿态误差、加速度计零偏差和陀螺仪零偏差等,而本技术实施例可以将imu与lidar之间的安装偏差角的误差模型引入到原有的状态方程中,使新的状态方程的状态变量既包含惯导误差相关的变量,也包含imu与lidar之间的安装偏差角的误差相关的变量。
[0215]
在一个实施例中,本技术实施例定义该组合定位系统新的系统状态方程包括:
[0216]
x=[x1,x3]
ꢀꢀꢀ
(16)
[0217]
其中,x1为状态变量中的惯导误差,x3为imu与lidar之间的安装偏差角。
[0218]
则有,x1的系统状态方程为:
[0219][0220]
其中,为惯导误差x1的导数;f1为惯导误差模型中可以推导的系统矩阵,例如可以是惯导误差模型的非线性转移矩阵;g1,w1为惯导误差驱动噪声,其中,g1可以是惯导误差的噪声驱动矩阵,w1可以是惯导误差的状态噪声矩阵,可选的,g1和w1均为高斯白噪声。
[0221]
示例地,
[0222]
其中,分别为东、北、天方向平台失准角,δv
e
,δv
n
,δv
u
分别为ins在东、北、天方向的速度误差,δλ,δl,δh分别为ins的经度、纬度和高度误差,ε
x

y

z
为陀螺仪随机常值漂移在x,y,z轴的分量,为ins的加速度计零偏在x,y,z轴的分量。可以理解的是,上述x1包含的参数项仅仅作为一个示例,不构成对x1的限定,在一些其他的实现方式中,x1可以包含更多的参数项或者更少的参数项,本技术实施例此处不做具体展开说明。
[0223]
以及,x2的系统状态方程为:
[0224][0225]
其中,为imu与lidar之间的安装偏差角x3的导数;f3为imu与lidar之间的安装偏差角的误差模型中可以推导的系统矩阵,例如可以是该误差模型的非线性转移矩阵;g3,w3为imu与lidar之间的安装偏差角的误差驱动噪声,其中,g3可以是imu与lidar之间的安装偏差角的误差的噪声驱动矩阵,w3可以是imu与lidar之间的安装偏差角的误差的状态噪声矩阵,可选的,g3和w3均为高斯白噪声。
[0226]
示例地,
[0227]
其中,为imu与lidar之间的x轴方向的安装偏差角、为imu与lidar之间的y轴方向的安装偏差角、为imu与lidar之间的z轴方向的安装偏差角。可以理解的是,上述x3包含的参数项仅仅作为一个示例,不构成对x3的限定,在一些其他的实现方式中,x3可以包含更多的参数项或者更少的参数项,本技术实施例此处不做具体展开说明。
[0228]
另设,imu与lidar之间的安装偏差角的误差为则对应的系统状态方程为:
[0229][0230]
其中,为的导数。
[0231]
以上,公式(16)-(18)即构成了本技术实施例的组合定位系统的系统状态方程,可以看出,该系统状态方程的状态变量不仅包含了惯导误差,还包含了imu与lidar之间的安装偏差角,由此,在后续使用组合定位滤波器对系统状态方程的状态变量进行在线估计时,就能够同时对imu与lidar之间的安装偏差角进行在线标定。
[0232]
步骤s205,构建系统观测方程,系统观测方程的观测量包括根据误差模型确定的ins与lidar之间的安装偏差角对应的观测矩阵。
[0233]
具体来说,该系观测方程的观测量为惯导误差对应的观测矩阵和imu与lidar之间的安装偏差角的误差对应的观测矩阵。
[0234]
在一个实施例中,该系统观测方程可以为:
[0235]
z=hx v=[h
1 h
2 h3]
[0236]
其中,z为系统观测量,h为系统观测矩阵,x为本技术实施例在步骤s205中建立的新的系统状态方程,v为系统观测噪声矩阵。进一步地,h1为姿态误差对应的观测矩阵,h2为误差模型中除了姿态误差以外的其他状态变量对应的观测矩阵,h3为imu与lidar之间的安装偏差角对应的观测矩阵。h2可根据惯导误差模型得到,h1和h3如下所示:
[0237]
[0238][0239]
步骤s206,使用组合定位滤波器对系统状态方程和系统观测方程进行滤波解算,以得到imu与lidar之间的安装偏差角的最优估计结果。
[0240]
具体实现中,组合定位滤波器可以是卡尔曼滤波器,即对系统状态方程和系统观测方程进行卡尔曼滤波,以得到imu与lidar之间的安装偏差角的最优估计结果。
[0241]
步骤s207,根据imu与lidar之间的安装偏差角的最优估计结果对lidar定位结果进行补偿。
[0242]
这样,lidar与imu之间消除了由于安装偏差角而产生的实际安装位置关系与其坐标系位置关系的不一致性,从而消除了由安装偏差角造成的组合定位误差,提高组合定位系统的定位精度。
[0243]
另外,本技术实施例还可以根据卡尔曼滤波得到的状态变量最优估计结果对惯导解算结果,例如位置、速度和姿态等进行校正,以修正惯导解算结果的累积误差,提高组合定位系统的定位精度。
[0244]
步骤s208,当组合定位滤波器对的滤波解算结果收敛时,将imu与lidar之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0245]
在此之后,如果imu与lidar之间的安装位置关系没有发生变化,那么imu与lidar之间的安装偏差角就不会改变,那么卡尔曼滤波器对的滤波解算结果将一直处于收敛状态;如果车辆在行驶过程中发生振动或者车辆维修等导致imu与lidar之间的安装位置关系,那么当卡尔曼滤波器对的滤波解算结果经过短暂的不收敛状态之后也会再次进入到收敛状态,这时,imu与lidar之间的安装偏差角的最优估计结果会发生变化,组合定位系统可以在卡尔曼滤波器重新收敛之后,将最新的标定结果保存至配置文件中。
[0246]
由此可见,本技术实施例的方法将imu与lidar之间的安装偏差角整合到组合定位系统的状态变量中,实现了在车辆行驶过程中对组合定位系统的imu与lidar之间的安装偏差角进行标定(即在线标定),标定过程不需要考虑imu和lidar的物理结构,标定精度高。并且,本技术实施例的方法不需要借助用的标定工具,仅需要车辆产生机动即可完成标定,操作简单、快速。另外,当imu与lidar之间的安装位置关系发生变化时,本技术实施例的方法能够在线更新标定结果,从而始终保证组合定位系统的定位精度。
[0247]
需要补充说明的是,本技术实施例的方法可以应用到包含imu和gnss的组合定位系统中,以标定imu和gnss双天线之间的安装偏差角;本技术实施例的方法可以应用到包含imu和lidar的组合定位系统中,以标定imu和lidar之间的安装偏差角;本技术实施例的方法可以应用到包含imu、gnss和lidar的组合定位系统中,以标定imu和gnss双天线之间的安装偏差角和imu和lidar之间的安装偏差角,其中x=[x1,x2,x3]。
[0248]
上述本技术提供的实施例对组合定位系统实现传感器安装偏角标定方法的各方案进行了介绍。可以理解的是,组合定位系统为了实现上述功能,可以包含执行各个功能相
应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0249]
在一个实施例中,组合定位系统可以通过如4所示的硬件结构实现相应的功能。其中,各个传感器可以安装到车辆的不同位置,存储器和处理器例如可以是车辆的行车电脑,例如电子控制单元(electronic control unit,ecu),或者自动驾驶计算平台,例如移动数据中心(mobile data center,mdc)中的存储器和处理器。存储器包括有用于实现相应的功能的程序指令,程序指令被处理器运行时,使得组合定位系统用于执行如下步骤:根据各个传感器输出的姿态信息,构建各个传感器之间的安装偏差角的误差模型;构建系统状态方程,系统状态方程的状态变量包括安装偏差角;构建系统观测方程,系统观测方程的观测量包括根据误差模型确定的安装偏差角对应的观测矩阵;对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的安装偏差角的估计结果作为标定结果。
[0250]
在一个实施例中,组合定位系统用于标定imu和gnss天线之间的安装偏差角,因此多个传感器可以至少包括imu和gnss接收机,gnss接收机包括gnss天线,例如主天线和从天线,简称gnss双天线,imu和gnss的每根天线安装在车辆的不同位置;程序指令被处理器运行时,使得组合定位系统用于执行如下步骤,以实现根据各个传感器输出的姿态信息,构建各个传感器之间的安装偏差角的误差模型:根据ins和gnss输出的姿态信息,构造误差模型的观测量,观测量为imu和gnss天线之间的姿态偏差;构建从ins对应的姿态矩阵到gnss对应的姿态矩阵的转移关系方程;联立误差模型的观测量和转移关系方程构建误差模型,误差模型为imu和gnss天线之间的安装偏差角的误差模型;其中,姿态信息包括滚转角、俯仰角和航向角中的一个或者多个,转移关系方程包含ins的姿态误差和imu与gnss天线之间的安装偏差角。
[0251]
在一个实施例中,程序指令被处理器运行时,使得组合定位系统用于执行如下步骤,以实现对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的安装偏差角的最优估计结果作为标定结果:对系统状态方程和系统观测方程进行卡尔曼滤波解算,得到imu与gnss天线之间的安装偏差角的最优估计结果;根据最优估计结果对gnss的定位结果进行补偿,以及对ins的惯导解算结果进行修正;当滤波解算结果收敛时,将imu与gnss天线之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0252]
在一个实施例中,组合定位系统用于标定imu和lidar之间的安装偏差角,因此多个传感器至少包括imu和lidar,imu和lidar安装在车辆的不同位置;程序指令被处理器运行时,使得组合定位系统用于执行如下步骤,以实现根据各个传感器输出的姿态信息,构建各个传感器之间的安装偏差角的误差模型:根据ins和lidar输出的姿态信息,构造误差模型的观测量,观测量为imu和lidar之间的姿态偏差;构建从ins对应的姿态矩阵到lidar对应的姿态矩阵的转移关系方程;联立误差模型的观测量和转移关系方程构建误差模型,误差模型为imu和lidar之间的安装偏差角的误差模型;其中,姿态信息包括滚转角、俯仰角和航向角中的一个或者多个,转移关系方程包含ins的姿态误差和imu与lidar之间的安装偏差角。
[0253]
在一个实施例中,程序指令被处理器运行时,使得组合定位系统用于执行如下步骤,以实现对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的安装偏差角的最优估计结果作为标定结果:对系统状态方程和系统观测方程进行卡尔曼滤波解算,得到imu与lidar之间的安装偏差角的最优估计结果;根据最优估计结果对lidar的定位结果进行补偿,以及对ins的惯导解算结果进行修正;当滤波解算结果收敛时,将imu与lidar之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0254]
在另一个实施例中,组合定位系统可以通过图8所示的软件模块实现相应的功能。如图8所示,组合定位系统可以包括惯导解算模块310、误差模型构建模块320、系统状态方程构建模块330、系统状态方程构建模块340和滤波解算模块350。下面对上述模块的功能进行具体说明:
[0255]
如图9所示,当组合定位系统用于标定imu和gnss天线之间的安装偏差角时:
[0256]
惯导解算模块310,用于对imu的测量结果进行惯导解算,以得到ins的姿态信息。
[0257]
误差模型构建模块320,用于根据ins的姿态信息和gnss姿态信息构建ins与gnss天线之间的安装偏差角的误差模型;
[0258]
系统状态方程构建模块330,用于构建系统状态方程,系统状态方程的状态变量包括ins与gnss天线之间的安装偏差角;
[0259]
系统观测方程构建模块340,用于构建系统观测方程,系统观测方程的观测量包括根据误差模型确定的ins与gnss天线之间的安装偏差角对应的观测矩阵。
[0260]
滤波解算模块350,用于对系统状态方程和系统观测方程进行滤波解算,将滤波解算结果收敛时得到的ins与gnss天线之间的安装偏差角的估计结果作为标定结果。
[0261]
在一个实施例中,误差模型构建模块320,具体可以用于:根据ins和gnss输出的姿态信息,构造误差模型的观测量;构建从ins对应的姿态矩阵到gnss对应的姿态矩阵的转移关系方程;联立误差模型的观测量和转移关系方程构建误差模型;其中,姿态信息包括滚转角、俯仰角和航向角中的一个或者多个,转移关系方程包含ins的姿态误差和imu与gnss天线之间的安装偏差角。
[0262]
在一个实施例中,滤波解算模块350,具体可以用于:对系统状态方程和系统观测方程进行卡尔曼滤波解算,得到imu与gnss天线之间的安装偏差角的最优估计结果;根据最优估计结果对gnss的定位结果进行补偿,以及对ins的惯导解算结果进行修正;当滤波解算结果收敛时,将imu与gnss天线之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0263]
进一步如图10所示,当组合定位系统用于标定imu和lidar之间的安装偏差角时:
[0264]
惯导解算模块310,用于对imu的测量结果进行惯导解算,以得到ins的姿态信息。
[0265]
误差模型构建模块320,用于根据ins的姿态信息和lidar姿态信息构建ins与lidar之间的安装偏差角的误差模型;
[0266]
系统状态方程构建模块330,用于构建系统状态方程,系统状态方程的状态变量包括ins与lidar之间的安装偏差角;
[0267]
系统观测方程构建模块340,用于构建系统观测方程,系统观测方程的观测量包括根据误差模型确定的ins与lidar之间的安装偏差角对应的观测矩阵。
[0268]
滤波解算模块350,用于对系统状态方程和系统观测方程进行滤波解算,将滤波解
算结果收敛时得到的ins与lidar之间的安装偏差角的估计结果作为标定结果。
[0269]
在一个实施例中,误差模型构建模块320,具体可以用于:根据ins和lidar输出的姿态信息,构造误差模型的观测量;构建从ins对应的姿态矩阵到lidar对应的姿态矩阵的转移关系方程;联立误差模型的观测量和转移关系方程构建误差模型;其中,姿态信息包括滚转角、俯仰角和航向角中的一个或者多个,转移关系方程包含ins的姿态误差和imu与lidar之间的安装偏差角。
[0270]
在一个实施例中,滤波解算模块350,具体可以用于:对系统状态方程和系统观测方程进行卡尔曼滤波解算,得到imu与lidar之间的安装偏差角的最优估计结果;根据最优估计结果对lidar的定位结果进行补偿,以及对ins的惯导解算结果进行修正;当滤波解算结果收敛时,将imu与lidar之间的安装偏差角的最优估计结果作为标定结果保存至配置文件中。
[0271]
本技术实施例还提供了一种车辆,该车辆可以包含前述各实施例提供的组合定位系统,并且用户执行前述各个实施例提供的传感器安装偏差角的标定方法。
[0272]
本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
[0273]
本技术实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面的方法。
[0274]
以上的具体实施方式,对本技术实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本技术实施例的具体实施方式而已,并不用于限定本技术实施例的保护范围,凡在本技术实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本技术实施例的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献