一种无人车的轨迹跟随控制方法、控制系统及相关装置与流程

文档序号:16312431发布日期:2018-12-19 05:20阅读:138来源:国知局
一种无人车的轨迹跟随控制方法、控制系统及相关装置与流程

本申请涉及无人驾驶领域,特别涉及一种无人车的轨迹跟随控制方法、控制系统,以及一种计算机可读存储介质和一种无人车。

背景技术

随着人工智能相关技术的兴起,无人车技术的研究发展正如火如荼的向前发展着。无人车轨迹跟随控制算法作为无人车关键技术也不断向前发展,但无人车轨迹跟踪控制因为要协调控制线控转向系统、线控制动系统和电机驱动系统,具有较高的难度。

因此,如何实现有效的无人车的轨迹跟踪控制是本领域技术人员亟需解决的问题。

申请内容

本申请的目的是提供一种无人车的轨迹跟随控制方法、控制系统,以及一种计算机可读存储介质和一种无人车,针对固定线路的无人车轨迹跟踪,提出了一种基于逐次线性化的自适应模型预测算法,有效的调节了线控转向系统、线控制动系统和电机驱动系统等三大系统,便于实现无人车的轨迹跟踪。

为解决上述技术问题,本申请提供一种无人车的轨迹跟随控制方法,具体技术方案如下:

获取所述无人车的坐标、所述无人车与x轴的夹角、前轮转角、车速和车辆轴距;

根据所述坐标、所述夹角、所述前轮转角、所述车速和所述车辆轴距,利用车辆运动学,建立所述无人车的运动模型;

对所述运动模型进行泰勒展开,得到所述运动模型对应的线性模型;

对所述线性模型进行积分,并在预设限定条件下得到线性化离散模型;

对所述线性化离散模型进行递推处理,得到预测误差函数;

根据所述预测误差函数确定随输入量变化的目标函数,并将所述目标函数转换为以输入增量为自变量的第二目标函数;

根据所述第二目标函数确定期望值,将所述期望值输入至所述无人车的线控系统,以便进行所述无人车的轨迹跟随控制;其中,所述线控系统包括电机驱动系统、线控转向系统和线控制动系统。

其中,利用车辆运动学,建立所述无人车的运动模型包括:

利用车辆运动学,利用微分方程组建立所述无人车的运动模型。

其中,所述预设限定条件具体为所述驱动系统的输入量在控制周期内维持不变。

其中,对所述线性化离散模型进行递推处理之后,得到预测误差函数之前还包括:

获取所述固定线路上轨迹参考点的参考量;其中,所述参考量参与所述预测误差函数的计算。

其中,将所述期望值输入至所述无人车的线控系统,包括:

将期望转向角输入至所述转线控转向系统,将期望力矩输入至所述电机驱动系统和所述线控制动系统;其中,所述期望值包括所述期望转向角和所述期望力矩。

其中,还包括:

判断所述驱动系统中是否存在任一系统发生故障;

若是,切断所述电机驱动系统的供电并制动。

本申请还提供一种无人车的轨迹跟踪系统,其特征在于,包括:

无人车数据获取模块,用于获取所述无人车的坐标、所述无人车与x轴的夹角、前轮转角、车速和车辆轴距;

运动模型建立模块,用于根据所述坐标、所述夹角、所述前轮转角、所述车速和所述车辆轴距,利用车辆运动学,建立所述无人车的运动模型;

线性模型建立模块,用于对所述运动模型进行泰勒展开,得到所述运动模型对应的线性模型;

离散模型建立模块,用于对所述线性模型进行积分,并在预设限定条件下得到线性化离散模型;

预测误差函数建立模块,用于对所述线性化离散模型进行递推处理,得到预测误差函数;

目标函数建立模块,用于根据所述预测误差函数确定随输入量变化的目标函数,并将所述目标函数转换为以输入增量为自变量的第二目标函数;

轨迹跟随控制模块,用于根据所述第二目标函数确定期望值,将所述期望值输入至所述无人车的线控系统,以便进行所述无人车的轨迹跟随控制;其中,所述线控系统包括电机驱动系统、线控转向系统和线控制动系统。

本申请还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上所述的轨迹跟随控制方法的步骤。

本申请还提供一种无人车,其特征在于,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上所述的轨迹跟随控制方法的步骤。

本申请所提供的一种无人车的轨迹跟随控制方法,包括:获取所述无人车的坐标、所述无人车与x轴的夹角、前轮转角、车速和车辆轴距;根据所述坐标、所述夹角、所述前轮转角、所述车速和所述车辆轴距,利用车辆运动学,建立所述无人车的运动模型;对所述线性模型进行积分,并在预设限定条件下得到线性化离散模型;对所述线性化离散模型进行递推处理,得到预测误差函数;根据所述预测误差函数确定随输入量变化的目标函数,并将所述目标函数转换为以输入增量为自变量的第二目标函数;根据所述第二目标函数确定期望值,将所述期望值输入至所述无人车的线控系统,以便进行所述无人车的轨迹跟随控制;其中,所述线控系统包括电机驱动系统、线控转向系统和线控制动系统。

本申请通过对无人车的运动模型依次采用逐次线性化处理,模型离散化处理,和系统状态的递推预测处理,最终得到随输入增量而变化的代价函数,同时将对状态的约束、输入和输入变化率与输出的约束转化为对输入增量的约束,最终将非线性二次规划问题转化为线性二次规划问题进行求解,进而根据求解结果实现无人车的轨迹跟随控制。相对于非线性优化控制技术,将非线性模型转化为线性模型后,计算量显著降低,同时控制误差相近,具备较高的鲁棒性。相对于传统的单点预瞄控制算法,具有更好的车速适应性,更低的控制误差,同时能够显式地处理输入的约束,如驱动电机力矩和制动力矩的最大值、方向盘转角和力矩的最大值等,引入约束进一步提高了模型的适应性和鲁棒性。控制器的参数调整,相对于传统的控制算法,也更加简单直观形象。本申请还提供一种无人车的轨迹跟随控制系统、一种计算机可读存储介质和一种无人车,具有上述有益效果,此处不再赘述。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例所提供的一种无人车的轨迹跟随控制方法的流程图;

图2为本申请实施例所提供的一种无人车的轨迹规划示意图;

图3为本申请实施例所提供的一种无人车的轨迹跟随控制系统结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

请参考图1,图1为本申请实施例所提供的一种无人车的轨迹跟随控制方法的流程图,具体过程如下:

s101:获取所述无人车的坐标、所述无人车与x轴的夹角、前轮转角、车速和车辆轴距;

在进行无人车的轨迹跟随控制之前,需要获取无人车的坐标、无人车与x轴的夹角、前轮转角、车速和车辆轴距等无人车的工作参数。需要说明的是,无人车与x轴的夹角指的是车辆坐标系中纵轴与全局坐标系中x轴的夹角。在此对于各项参数具体的获取方式不作限定,本领域技术人员可根据需要获取的数据使用对应的工具,例如可以通过无人车的imu惯性测量单元、gps、轮速、摄像头、激光雷达传感器以及方向盘转角传感器数据得到当前无人车的坐标值(x,y)、速度v、前轮转角δ以及与全局坐标系x轴的夹角而车辆轴距l可以查询无人车的出厂参数得到。

可以理解的是,以上几种参数为对于s102中建立无人车的运动模型而言较重要的几种参数,当以不同形式建立运动模型时,还可涉及无人车的其他参数或实时运动数据,在此不一一作限定。

需要说明的是,对于无人车的全局坐标系的建立在此亦不作限定,应由本领域技术人员根据无人车的实际运动方向和路线等选取坐标原点和坐标轴。

s102:根据所述坐标、所述夹角、所述前轮转角、所述车速和所述车辆轴距,利用车辆运动学,建立所述无人车的运动模型;

因为无人车的行驶线路都是固定的,即为固定线路,因此通常无人车的固定线路都是预存在无人车内部的存储器之中,在此对于固定线路的存储方式及具体存储介质不作限定。

本步骤旨在利用车辆运动学建立无人车的运动模型,换句话说,利用数学知识和无人车的基础信息建立其运动模型。为使本申请中各步骤更清楚的表述,下文使用相关数学表达式进行表述,但并非代表本申请中出现的数学表达式或者模型的表达式为本申请技术方案的唯一表现形式,而是仅作为一种可行且优选的实施方式。

可以用如下的微分方程组来描述无人车的运动学模型:

对于封闭环境下的低速无人车,车辆的动力学特性可忽略不计,用车辆运动学来描述车辆的运动过程,式(1)可展开为如下形式:

其中状态向量为k为常数,t为期望力矩,也即驱动力矩和制动力矩之和。

进而,由式(1)可得:

(3)式也即无人车的运动模型。f为非线性方程组,其分量分别为非线性方程f1、f2、f3、f4,z为观测向量,即使用传感器实时获取得到的量。u为输入控制量,δ方向盘前轮转角,t为驱动电机转矩和制动力矩之和。

s103:对所述运动模型进行泰勒展开,得到所述运动模型对应的线性模型;

本步骤旨在对运动模型运用泰勒公式在当前工作点展开,进而得到线性模型,也即是说,步骤s101和步骤s102是对非线性模型逐次线性化的过程。

具体的,以上一步骤所得模型为例,对本步骤进行说明:

对(3)式使用泰勒公式进行在当前工作点xc=xop,u=uop处进行泰勒展开得到如下的线性模型:

其中xl为线性系统的状态量,ul为线性化系统的输入量,矩阵ac,bc,cc,dc的各个元素可用分别可用如下表达式表达:

假定则式(4)可表示为:

则式(6)为非线性系统的线性化模型。

s104:对线性模型进行积分,并在预设限定条件下得到线性化离散模型;

当基于前述两个步骤实现对非线性系统的逐次线性化后,进一步求取系统的期望值。本步骤旨在得到非线性系统的局部线性化离散模型。需要说明的是,预设限定条件具体应由本领域技术人员根据线性模型或实际需求作相关条件设定,在此不作限定。例如该预设限定可以为驱动系统的输入量在控制周期内维持不变。

具体的,以上一步骤所得模型为例,并以驱动系统的输入量在控制周期内维持不变,对本步骤进行说明:

对式(6)的状态微分方程两边同时积分得到:

对于时刻k与k+1有:

其中ts为控制周期,

假定u在控制周期ts内保持不变,则有

由此系统的局部线性化离散模型:

x(k+1)=adx(k)+bdu(k)+k,y(k)=cdx(k)+ddu(k)(10)

并定义

其中y(k+i|k),i=1,2,3,…,p,为k时刻对k+i时刻的输出y的预测,其中p为预测步数。

s105:对线性化离散模型进行递推处理,得到预测误差函数;

本步骤旨在计算轨迹跟随控制中的预测误差,具体的,需要对上一步骤中求得的线性化离散模型进行递推处理。

具体的,以上一步骤所得线性化离散模型为例,对本步骤进行说明:

根据式(10)递推可得

进一步的,对所述线性化离散模型进行递推处理之后,得到预测误差函数之前还包括:

获取随轨迹参考点的参考量rx、ry、rv。参见图2,图2为本申请实施例所提供的一种无人车的轨迹规划示意图。如图2所示,通过无人车的imu惯性测量单元、gps、轮速、摄像头、激光雷达传感器以及方向盘转角传感器数据得到当前无人车的坐标值x、y,速度v,前轮转角δ,车辆纵轴与全局坐标系x轴的夹角输入给mpc模块(modelpredictivecontrol,模型预测性控制)。图2中黑色圆点代表轨迹规划模块得到的轨迹参考点,mpc模块从无人车轨迹规划模块获取无人车跟随轨迹参考量rx,ry,rv,其中rx为车辆x方向的参考坐标,rx为y方向的参考坐标,为参考轨迹的切线与x轴的参考夹角,rv为车辆参考速度。

由于每一个点都含有相应的参考量,所以rx,ry,rv为p维的向量,其中p为预测步数,定义则预测误差可表达为:

s106:根据所述预测误差函数确定随输入量变化的目标函数,并将所述目标函数转换为以输入增量为自变量的第二目标函数;

本步骤旨在确定可计算出期望值的目标函数,也即代价函数。具体的,以上一步骤所得预测误差函数为基础,对本步骤进行说明:

根据预测误差函数定义目标函数为:

其中q和r分别为预测误差和输入的权重矩阵,其它参数和符号为推导过程的缩写,具体含义见推导过程。

即得到目标函数为的二次代价函数:

为减小稳态误差,同时给输入的变化率添加约束,将目标函数转化为输入的变化量(也即输入增量)的函数,具体转化过程如下:

则目标函数表达为输入增量的函数如下:

其中,

上式中,m矩阵的含义如式(16)推导过程所述,g和w矩阵如式(14)推导过程所述,上标t表示矩阵转置运算。

s107:根据所述第二目标函数确定期望值,将所述期望值输入至所述无人车的线控系统,以便进行所述无人车的轨迹跟随控制;

无人车的线控系统包括电机驱动系统、线控转向系统和线控制动系统。

根据式(18)即可得期望值此时只需将期望值输入至无人车的线控系统即可实现无人车的轨迹跟随控制。

进一步的,本步骤可以具体包括:

将期望转向角输入至线控转向系统,将期望力矩输入至驱动系统和线控制动系统;其中,期望值包括期望转向角和期望力矩。

由期望值表达式可以明显看出,其由期望转向角和期望力矩组成。

本申请通过对无人车的运动模型依次采用逐次线性化处理,模型离散化处理,最终得到以输入增量为自变量的目标函数,将对状态的约束、输入和输入变化率与输出的约束转化为对输入增量的约束,最终将非线性二次规划问题转化为线性二次规划问题进行求解,进而根据求解结果实现无人车的轨迹跟随控制。相对于现有技术,计算复杂度低且控制误差相近。

基于上述实施例,作为优选的实施例,该轨迹跟踪控制方法还可以包括:

判断电机驱动系统、线控转向系统和线控制动系统中是否存在任一系统发生故障;

若是,切断电机驱动系统的供电并制动。

本实施例的目的在于根据电机驱动系统控制器反馈的电流和状态,线控转向电机电流和系统状态以及线控制动系统压力和状态,判断三大线控系统是否正常工作,如果有系统出现故障,则立即切断驱动系统供电并采取制动措施。如果没有故障则输出s107中的计算结果。同样的,监控三大系统的工作状态也是需要在无人车行驶过程中需要实时进行的过程。

下面对本申请实施例提供的一种无人车的轨迹跟踪控制系统进行介绍,下文描述的轨迹跟踪控制系统与上文描述的轨迹跟踪控制方法可相互对应参照。

参见图3,图3为本申请实施例所提供的一种无人车的轨迹跟踪控制系统结构示意图,本申请还提供一种无人车的轨迹跟随控制系统,应用于无人车的自适应线性mpc控制器,包括:

无人车数据获取模块100,用于获取所述无人车的坐标、所述无人车与x轴的夹角、前轮转角、车速和车辆轴距;

运动模型建立模块200,用于根据所述坐标、所述夹角、所述前轮转角、所述车速和所述车辆轴距,利用车辆运动学,建立所述无人车的运动模型;

线性模型建立模块300,用于对所述运动模型进行泰勒展开,得到所述运动模型对应的线性模型;

离散模型建立模块400,用于对所述线性模型进行积分,并在预设限定条件下得到线性化离散模型;

预测误差函数建立模块500,用于对所述线性化离散模型进行递推处理,得到预测误差函数;

目标函数建立模块600,用于根据所述预测误差函数确定随输入量变化的目标函数,并将所述目标函数转换为以输入增量为自变量的第二目标函数;

轨迹跟随控制模块700,用于根据所述第二目标函数确定期望值,将所述期望值输入至所述无人车的线控系统,以便进行所述无人车的轨迹跟随控制;其中,所述线控系统包括电机驱动系统、线控转向系统和线控制动系统。

本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本申请还提供了一种无人车,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述无人车还可以包括各种网络接口,电源等组件。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1