CN118046887A - 一种自动驾驶车辆横向控制方法、装置、设备及存储介质 - Google Patents
一种自动驾驶车辆横向控制方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN118046887A CN118046887A CN202410144165.XA CN202410144165A CN118046887A CN 118046887 A CN118046887 A CN 118046887A CN 202410144165 A CN202410144165 A CN 202410144165A CN 118046887 A CN118046887 A CN 118046887A
- Authority
- CN
- China
- Prior art keywords
- vehicle
- matrix
- automatic driving
- time
- vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 239000011159 matrix material Substances 0.000 claims abstract description 163
- 239000013598 vector Substances 0.000 claims description 167
- 230000006870 function Effects 0.000 claims description 47
- 230000008569 process Effects 0.000 claims description 37
- 230000008859 change Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 14
- 230000007704 transition Effects 0.000 claims description 14
- 230000003190 augmentative effect Effects 0.000 claims description 11
- 238000010276 construction Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/02—Control of vehicle driving stability
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0019—Control system elements or transfer functions
- B60W2050/0022—Gains, weighting coefficients or weighting functions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0019—Control system elements or transfer functions
- B60W2050/0028—Mathematical models, e.g. for simulation
- B60W2050/0031—Mathematical model of the vehicle
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2520/00—Input parameters relating to overall vehicle dynamics
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2520/00—Input parameters relating to overall vehicle dynamics
- B60W2520/06—Direction of travel
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2520/00—Input parameters relating to overall vehicle dynamics
- B60W2520/10—Longitudinal speed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2520/00—Input parameters relating to overall vehicle dynamics
- B60W2520/12—Lateral speed
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Algebra (AREA)
- Operations Research (AREA)
- Computing Systems (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开了一种自动驾驶车辆横向控制方法、装置、设备及存储介质,通过获取自动驾驶车辆的车辆数据,基于车辆数据,构建离散线性二自由度自动驾驶车辆模型;基于预设的对角增益矩阵和输入控制增益矩阵,对离散线性二自由度自动驾驶车辆模型设置代价函数;基于离散线性二自由度自动驾驶车辆模型和代价函数,求解预设的二次规划问题,得到求解结果;基于求解结果,确定实际控制量,并将实际控制量发送给所述自动驾驶车辆;与现有技术相比,本发明的技术方案能消除模型线性化带来的稳态误差。
Description
技术领域
本发明涉及自动驾驶的技术领域,特别是涉及一种自动驾驶车辆横向控制方法、装置、设备及存储介质。
背景技术
自动驾驶车辆的运动控制是自动驾驶技术中非常重要的一环,它可以直接影响车辆的稳定性、舒适性和安全性。在车辆控制算法中,普遍采用线性二次型最优控制LQR、PID等优化车辆的横向运动控制。
目前,车辆控制中应用MPC的工程应用案例较少,在车辆控制中应用MPC时,若采用非线性车辆模型,虽能较精确的描述车辆动力学行为,但也会带来运算量过大,求解时间长,难以满足车辆控制实时性的要求的问题;若采用线性模型虽然能够提高运算效率,但难以消除模型不匹配带来的稳态误差,因此,如何在MPC中有效提高车辆控制模型误差带来的控制性能,是目前亟需解决的技术问题。
发明内容
本发明要解决的技术问题是:提供一种自动驾驶车辆横向控制方法、装置、设备及存储介质,能消除模型线性化带来的稳态误差。
为了解决上述技术问题,本发明提供了一种自动驾驶车辆横向控制方法,包括
获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型;
基于预设的对角增益矩阵和输入控制增益矩阵,对所述离散线性二自由度自动驾驶车辆模型设置代价函数;
基于所述离散线性二自由度自动驾驶车辆模型和所述代价函数,建立二次规划问题,并对所述二次规划问题进行求解,得到求解结果;
基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
在一种可能的实现方式中,获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型,具体包括:
获取自动驾驶车辆的车辆数据,其中,所述车辆数据包括车辆横向偏差、质心航向角误差、车辆纵向速度、车辆侧向速度、车辆行驶轨迹曲率、车辆横摆角速度和车辆前轮输入转角;
根据所述车辆纵向速度、所述车辆侧向速度和所述质心航向角误差,计算车辆横向偏差变化率,并根据所述车辆横摆角速度、所述车辆纵向速度和所述车辆行驶轨迹曲率,计算质心航向角误差变化率;
基于所述车辆横向偏差、所述质心航向角误差、所述车辆横向偏差变化率和所述质心航向角误差变化率,确定自动驾驶车辆的状态向量;
基于所述状态向量、所述车辆前轮输入转角和所述车辆行驶轨迹曲率,构建离散线性二自由度自动驾驶车辆模型。
在一种可能的实现方式中,所述离散线性二自由度自动驾驶车辆模型,如下所示:
式中,x(k)为k时刻的状态向量,x(k+1)为k+1时刻的状态向量,y(k+1)为k+1时刻的输出向量,C为输出矩阵,Ad为增广状态转移矩阵,Bud为状态向量与车辆前轮输入转角之间的关系矩阵,Bcd为状态向量与车辆行驶轨迹曲率之间的关系矩阵,u(k)为k时刻的车辆前轮输入转角,kr(k)为k时刻的车辆行驶轨迹曲率。
在一种可能的实现方式中,所述预设的二次规划问题,如下所示:
式中,UT(k)为矩阵U(k)的转置,U(k)为k时刻的预测输入向量,T为矩阵的转置,N为预测矩阵,Q为对角增益矩阵,R为输入控制增益矩阵,Yr(k)为k时刻的参考输出向量,lb和ub分别表示k时刻的预测输入向量的下限约束和上限约束,Aeq和beq为k时刻的预测输入向量的等式约束,A和B为k时刻的预测输入向量的不等式约束,x(k)为k时刻的状态向量,Θ(k)为在k时刻的预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,M为大小为Np×Nx的中间过程矩阵,Np为预测时域,Nu为输入向量的长度,Nx为系统的状态数。
在一种可能的实现方式中,所述代价函数如下所示:
J(k)=[Y(k)-Yr(k)]TQ[Y(k)-Yr(k)]+UT(k)RU(k);
式中,J(k)为代价函数,Y(k)为k时刻的预测输出向量,Yr(k)为k时刻的参考输出向量,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,U(k)为k时刻的预测输入向量,UT(k)为矩阵U(k)的转置。
在一种可能的实现方式中,基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆,具体包括:
基于所述求解结果,得到反馈量,并对预设的超静定方程组进行求解处理,得到前馈量;
将所述反馈量和所述前馈量进行合并处理,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
在一种可能的实现方式中,所述预设的超静定方程组,如下所示:
式中,为4Np阶单位向量,Np为预测时域,N为预测矩阵,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,M为大小为Np×Nx的中间过程矩阵,Nx为系统的状态数,x为状态向量,Θ为预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,Nu为输入向量的长度,uff为前馈量。
本发明还提供了一种自动驾驶车辆横向控制装置,包括:模型构建模块、代价函数设置模块、问题求解模块和实际控制量发送模块;
其中,所述模型构建模块,用于获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型;
所述代价函数设置模块,用于基于预设的对角增益矩阵和输入控制增益矩阵,对所述离散线性二自由度自动驾驶车辆模型设置代价函数;
所述问题求解模块,用于基于所述离散线性二自由度自动驾驶车辆模型和所述代价函数,建立二次规划问题,并对所述二次规划问题进行求解,得到求解结果;
所述实际控制量发送模块,用于基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
在一种可能的实现方式中,所述模型构建模块,用于获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型,具体包括:
获取自动驾驶车辆的车辆数据,其中,所述车辆数据包括车辆横向偏差、质心航向角误差、车辆纵向速度、车辆侧向速度、车辆行驶轨迹曲率、车辆横摆角速度和车辆前轮输入转角;
根据所述车辆纵向速度、所述车辆侧向速度和所述质心航向角误差,计算车辆横向偏差变化率,并根据所述车辆横摆角速度、所述车辆纵向速度和所述车辆行驶轨迹曲率,计算质心航向角误差变化率;
基于所述车辆横向偏差、所述质心航向角误差、所述车辆横向偏差变化率和所述质心航向角误差变化率,确定自动驾驶车辆的状态向量;
基于所述状态向量、所述车辆前轮输入转角和所述车辆行驶轨迹曲率,构建离散线性二自由度自动驾驶车辆模型。
在一种可能的实现方式中,所述离散线性二自由度自动驾驶车辆模型,如下所示:
式中,x(k)为k时刻的状态向量,x(k+1)为k+1时刻的状态向量,y(k+1)为k+1时刻的输出向量,C为输出矩阵,Ad为增广状态转移矩阵,Bud为状态向量与车辆前轮输入转角之间的关系矩阵,Bcd为状态向量与车辆行驶轨迹曲率之间的关系矩阵,u(k)为k时刻的车辆前轮输入转角,kr(k)为k时刻的车辆行驶轨迹曲率。
在一种可能的实现方式中,所述预设的二次规划问题,如下所示:
式中,UT(k)为矩阵U(k)的转置,U(k)为k时刻的预测输入向量,T为矩阵的转置,N为预测矩阵,Q为对角增益矩阵,R为输入控制增益矩阵,Yr(k)为k时刻的参考输出向量,lb和ub分别表示k时刻的预测输入向量的下限约束和上限约束,Aeq和beq为k时刻的预测输入向量的等式约束,A和B为k时刻的预测输入向量的不等式约束,x(k)为k时刻的状态向量,Θ(k)为在k时刻的预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,M为大小为Np×Nx的中间过程矩阵,Np分别表示预测时域,Nu为输入向量的长度,Nx为系统的状态数。
在一种可能的实现方式中,所述代价函数如下所示:
J(k)=[Y(k)-Yr(k)]TQ[Y(k)-Yr(k)]+UT(k)RU(k);
式中,J(k)为代价函数,Y(k)为k时刻的预测输出向量,Yr(k)为k时刻的参考输出向量,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,U(k)为k时刻的预测输入向量,UT(k)为矩阵U(k)的转置。
在一种可能的实现方式中,所述实际控制量发送模块,用于基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆,具体包括:
基于所述求解结果,得到反馈量,并对预设的超静定方程组进行求解处理,得到前馈量;
将所述反馈量和所述前馈量进行合并处理,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
在一种可能的实现方式中,所述预设的超静定方程组,如下所示:
式中,为4Np阶单位向量,Np为预测时域,N为预测矩阵,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,M为大小为Np×Nx的中间过程矩阵,Nx为系统的状态数,x为状态向量,Θ为预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,Nu为输入向量的长度,uff为前馈量。
本发明还提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述任意一项所述的自动驾驶车辆横向控制方法。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上述任意一项所述的自动驾驶车辆横向控制方法。
本发明实施例一种自动驾驶车辆横向控制方法、装置、设备及存储介质,与现有技术相比,具有如下有益效果:
通过获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型;相比于现有技术中,将车辆控制模型简化为线性模型,能更接近实际车辆动力学行为的描述,并且可以较准确地表现车辆的非线性特性;后续基于预设的对角增益矩阵和输入控制增益矩阵,对所述离散线性二自由度自动驾驶车辆模型设置代价函数,能在运行过程中对车辆控制系统进行优化调节,以减小线性化误差对系统性能的影响;基于所述离散线性二自由度自动驾驶车辆模型和所述代价函数,建立二次规划问题,并对所述二次规划问题进行求解,得到求解结果;可以在考虑到离散线性二自由度自动驾驶车辆模型的非线性特性的同时,通过优化控制量来减小线性化误差对系统的影响;基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆;通过这种方式,可以根据车辆动力学特性实时调节控制量,进一步减小线性化误差对控制系统的影响。
附图说明
图1是本发明提供的一种自动驾驶车辆横向控制方法的一种实施例的流程示意图;
图2是本发明提供的一种自动驾驶车辆横向控制装置的一种实施例的结构示意图;
图3是本发明提供的一种终端设备的结构示意图。
具体实施方式
下面将结合本发明中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1,参见图1,图1是本发明提供的一种自动驾驶车辆横向控制方法的一种实施例的流程示意图,如图1所示,该方法包括步骤101-步骤104,具体如下:
步骤101:获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型。
一实施例中,获取自动驾驶车辆的车辆数据,其中,所述车辆数据包括但不限于车辆横向偏差、质心航向角误差、车辆纵向速度、车辆侧向速度、车辆行驶轨迹曲率、车辆横摆角速度和车辆前轮输入转角。
具体的,对于车辆纵向速度,一般采用从车辆底盘CAN总线上读取的方式来获取。
具体的,对于质心航向角误差,可根据车辆航向角与轨迹航向角(即车辆在期望轨迹投影点的切线方向)的误差来计算。
具体的,对于车辆侧向速度,可根据质心航向角误差和车辆纵向速度进行计算,具体的:假设质心航向角误差为eφ,车辆纵向速度为v,则车辆侧向速度可由vsineφ进行计算得到。
优选的,所述自动驾驶车辆中配置有配置环境感知系统,基于环境感知系统能够准确获取并理解环境信息,包括车辆横向偏差、质心航向角误差和车辆行驶轨迹曲率;同时所述自动驾驶车辆中还配置有车载传感器,基于车载传感器,能采集到车辆纵向速度和车辆侧向速度。
一实施例中,根据所述车辆纵向速度、所述车辆侧向速度和所述质心航向角误差,计算车辆横向偏差变化率,并根据所述车辆横摆角速度、所述车辆纵向速度和所述车辆行驶轨迹曲率,计算质心航向角误差变化率。
具体的,将所述车辆纵向速度、所述车辆侧向速度和所述质心航向角误差代入到预设的车辆横向偏差变化率计算公式中,计算并得到车辆横向偏差变化率;其中,所述预设的车辆横向偏差变化率计算公式,如下所示:
式中,为车辆横向偏差变化率,vx为车辆纵向速度,vy为车辆侧向速度,eφ为质心航向角误差。
具体的,将所述车辆横摆角速度、所述车辆纵向速度和所述车辆行驶轨迹曲率代入到预设的质心航向角误差变化率计算公式中,计算并得到质心航向角误差变化率;其中,所述预设的质心航向角误差变化率计算公式,如下所示:
式中,为质心航向角误差变化率,ω为车辆横摆角速度,vx为车辆纵向速度,kr为车辆行驶轨迹曲率。
一实施例中,基于所述车辆横向偏差ed、所述质心航向角误差eφ、所述车辆横向偏差变化率和所述质心航向角误差变化率/>确定自动驾驶车辆的状态向量。
具体的,自动驾驶车辆的状态向量其中,ed(k)为k时刻的车辆横向偏差,/>为k时刻的车辆横向偏差变化率,eφ(k)为k时刻的质心航向角误差,为k时刻的质心航向角误差变化率。
一实施例中,基于所述状态向量、所述车辆前轮输入转角和所述车辆行驶轨迹曲率,构建离散线性二自由度自动驾驶车辆模型。
一实施例中,所述离散线性二自由度自动驾驶车辆模型,如下所示:
式中,x(k)为k时刻的状态向量,x(k+1)为k+1时刻的状态向量,y(k+1)为k+1时刻的输出向量,C为输出矩阵,Ad为增广状态转移矩阵,Bud为状态向量与车辆前轮输入转角之间的关系矩阵,Bcd为状态向量与车辆行驶轨迹曲率之间的关系矩阵,u(k)为k时刻的车辆前轮输入转角,kr(k)为k时刻的车辆行驶轨迹曲率。
具体的,u(k)为控制输入向量,所述控制输入向量为车辆前轮输入转角。
具体的,在车辆控制和导航中,Frenet坐标系是基于车辆所在道路的几何形状来构建的,通过在Frenet坐标系中建立车辆的状态方程,可以有效地描述车辆相对于道路的位置和方向,并且可以通过简单的数学公式进行计算;在Frenet坐标系中,车辆的位置由车辆所在道路上的曲线长度和车辆横向偏差组成;车辆的方向由质心航向角误差和车辆行驶轨迹曲率组成。
所述离散线性二自由度自动驾驶车辆模型是基于Frenet坐标系来构建的;状态向量x(k)包含了车辆相对于道路的位置和方向信息,而输入u(k)包含了车辆前轮输入转角;通过这个模型,可以有效地控制自动驾驶车辆的行驶轨迹。
具体的,对于增广状态转移矩阵Ad:
式中,I4为4阶单位矩阵,T为采样周期,kf为车辆前轴等效侧偏刚度,kb为车辆后轴等效侧偏刚度,m为自动驾驶车辆质量,vx为车辆纵向速度,Iz为车辆横摆转动惯量,a为前轴到质心的距离,b为后轴到质心的距离,A为状态转移矩阵。
具体的,对于状态向量与车辆前轮输入转角之间的关系矩阵Bud:
式中,I4为4阶单位矩阵,T为采样周期,A为状态转移矩阵,Bu为输入矩阵,kf为车辆前轴等效侧偏刚度,m为自动驾驶车辆质量,a为前轴到质心的距离,Iz为车辆横摆转动惯量。
具体的,对于状态向量与车辆行驶轨迹曲率之间的关系矩阵Bcd:
式中,I4为4阶单位矩阵,T为采样周期,A为状态转移矩阵,为矩阵的逆矩阵,a为前轴到质心的距离,b为后轴到质心的距离,kf为车辆前轴等效侧偏刚度,kb为车辆后轴等效侧偏刚度,vx为车辆纵向速度,m为自动驾驶车辆质量,Iz为车辆横摆转动惯量,Bc为离散线性二自由度自动驾驶车辆模型中车辆行驶轨迹曲率对状态变量的影响的输入矩阵。
步骤102:基于预设的对角增益矩阵和输入控制增益矩阵,对所述离散线性二自由度自动驾驶车辆模型设置代价函数。
一实施例中,代价函数是用来衡量控制系统输出与期望输出之间的差异,并根据差异大小对系统的性能进行评估的一种指标。在自动驾驶车辆中,通过设置代价函数用于优化控制算法,使得车辆可以更好地跟踪参考轨迹并实现期望的驾驶行为。
一实施例中,所述代价函数如下所示:
J(k)=[Y(k)-Yr(k)]TQ[Y(k)-Yr(k)]+UT(k)RU(k);
式中,J(k)为代价函数,Y(k)为k时刻的预测输出向量,Yr(k)为k时刻的参考输出向量,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,U(k)为k时刻的预测输入向量,UT(k)为矩阵U(k)的转置。
具体的,代价函数J(k)由误差项和控制输入项两部分组成,其中,误差项衡量了预测输出向量Y(k)与参考输出向量Yr(k)之间的差异,而控制输入项衡量了预测输入向量U(k)的大小。
具体的,对于预测输出向量Y(k):
式中,y(k+1|k)为在k时刻的条件下对k+1时刻的输出向量进行预测,得到的k+1时刻预测输出向量,y(k+2|k)为在k时刻的条件下对k+2时刻的输出向量进行预测,得到的k+2时刻预测输出向量,y(k+Np|k)为在k时刻的条件下对k+Np时刻的输出向量进行预测,得到的k+Np时刻预测输出向量,Np为预测时域。
具体的,预测输出向量是对未来一段时间内系统输出的预测。通过在代价函数中引入预测输出向量,在优化控制过程中不仅仅考虑当前的系统输出与参考输出之间的差异,还考虑了未来预测输出与参考输出之间的差异;通过最小化预测输出与参考输出之间的差异,控制器可以在多个时间步骤内逐渐减小稳态误差,使控制系统逐渐趋向理想状态。
具体的,对于参考输出向量Yr(k):
式中,yr(k+1|k)为k时刻的条件下对k+1时刻的参考输出向量进行预测,得到的k+1时刻参考输出向量,yr(k+2|k)为k时刻的条件下对k+2时刻的参考输出向量进行预测,得到的k+2时刻参考输出向量,yr(k+Np|k)为k时刻的条件下对k+Np时刻的参考输出向量进行预测,得到的k+Np时刻参考输出向量。
具体的,参考输出向量是期望的系统输出,即控制目标。通过在代价函数中引入参考输出向量,控制器可以通过比较当前的系统输出与参考输出的差异,来指导控制器的调节;通过优化代价函数,使得控制器输出的实际控制量能够尽可能接近参考输出,从而减小稳态误差。
具体的,对于预测输入向量U(k):
式中,u(k|k)为k时刻的条件下对输入向量进行预测,得到的k时刻预测输入向量,u(k+1|k)为k时刻的条件下对k+1时刻的输入向量进行预测,得到的k+1时刻预测输入向量,u(k+Nc|k)为k时刻的条件下对k+Nc时刻的输入向量进行预测,得到的k+Nc时刻预测输入向量,Nc为控制时域。
具体的,预测输入向量是对未来一段时间内的输入控制量的预测。通过在代价函数中引入预测输入向量,控制器可以在决策过程中考虑系统的预测性能;通过优化预测输入向量,控制器可以根据预测系统的输出来调节控制输入,进一步减小稳态误差。
具体的,对于对角增益矩阵Q:
式中,q1为第i个预测时刻的误差控制增益矩阵,qNp为第Np个预测时刻的误差控制增益矩阵,qi为第i个预测时刻的误差控制增益矩阵,qi,1、qi,4是第i个预测时刻的误差控制增益矩阵中的误差控制增益,Np为预测时域。
具体的,对于输入控制增益R:
式中,r1、rNc是输入控制增益,Nc为控制时域。
具体的,误差控制增益表示了不同预测时刻的输出误差对总代价的贡献,通过调整qi,1,qi,2,qi,3,qi,4的值可以改变对不同时刻误差的重视程度;输入控制增益用于对控制输入的大小进行惩罚,通过调整r1,r2,...,rNc的值可以平衡对不同输入的重视程度。
一实施例中,通过对代价函数进行最小化处理,可以得到使得预测输出向量Y(k)与参考输出向量Yr(k)之间的差异最小的控制输入向量U(k),从而实现车辆的期望驾驶行为;同时,根据实际工程情况进行调整调整误差控制增益和输入控制增益,可以对不同误差和输入进行灵活的调节,以满足具体的驾驶需求和性能要求。
步骤103:基于所述离散线性二自由度自动驾驶车辆模型和所述代价函数,建立二次规划问题,并对所述二次规划问题进行求解,得到求解结果。
一实施例中,将代价函数的二次项和一次项分别提取出来,并结合约束条件,将问题转化为标准的二次规划问题形式;将离散线性二自由度自动驾驶车辆模型的状态向量方程、输出向量方程以及控制输入向量整合到目标函数和约束条件中,以确保建立的二次规划问题能够准确描述车辆动力学行为和优化目标。
一实施例中,所述预设的二次规划问题,如下所示:
式中,UT(k)为矩阵U(k)的转置,U(k)为k时刻的预测输入向量,T为矩阵的转置,N为预测矩阵,Q为对角增益矩阵,R为输入控制增益矩阵,Yr(k)为k时刻的参考输出向量,lb和ub分别表示k时刻的预测输入向量的下限约束和上限约束,Aeq和beq为k时刻的预测输入向量的等式约束,A和B为k时刻的预测输入向量的不等式约束,x(k)为k时刻的状态向量,Θ(k)为在k时刻的预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,M为大小为Np×Nx的中间过程矩阵,Np为预测时域,Nu为输入向量的长度,Nx为系统的状态数。
具体的,对于在k时刻的预测时域中的曲率值Θ(k):
式中,kr(k|k)为k时刻的条件下对车辆行驶轨迹曲率进行预测,得到的k时刻车辆行驶轨迹曲率,kr(k+1|k)为k时刻的条件下对k+1时刻的车辆行驶轨迹曲率进行预测,得到的k+1时刻车辆行驶轨迹曲率,kr(k+2|k)为k时刻的条件下对k+2时刻的车辆行驶轨迹曲率进行预测,得到的k+2时刻车辆行驶轨迹曲率,kr(k+Np-1|k)为k时刻的条件下对k+Np-1时刻的车辆行驶轨迹曲率进行预测,得到的k+Np-1时刻车辆行驶轨迹曲率。
具体的,对于大小为Np×Nx的中间过程矩阵M:
式中,C=I4表示输出矩阵,I4为4阶单位矩阵,Ad为增广状态转移矩阵,为增广状态转移矩阵的二次方,/>为增广状态转移矩阵的三次方,/>为增广状态转移矩阵的Np次方,Np为预测时域,N为预测矩阵,Bud为状态向量与车辆前轮输入转角之间的关系矩阵,A为预测输入向量的不等式约束,/>为预测输入向量的不等式约束的Np-1次方,/>为预测输入向量的不等式约束的Np-2次方,/>为预测输入向量的不等式约束的Np-Nc次方,Nc为控制时域。
具体的,对于一个大小为Np×Nu的中间过程矩阵P:
式中,Bcd为状态向量与车辆行驶轨迹曲率之间的关系矩阵。
一实施例中,建立二次规划问题后,使用二次规划求解器对所述二次规划问题进行求解处理,以获得最优的求解结果u(k|k),即最优控制输入向量为车辆前轮输入转角;在求解过程中,约束条件保证了控制量的方向和幅值,而代价函数的设计则使得求解结果最优化。
步骤104:基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
一实施例中,基于所述求解结果,得到反馈量,并对预设的超静定方程组进行求解处理,得到前馈量。
具体的,将所述求解结果作为反馈量。
具体的,所述预设的超静定方程组,如下所示:
式中,为4Np阶单位向量,Np为预测时域,N为预测矩阵,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,M为大小为Np×Nx的中间过程矩阵,Nx为系统的状态数,x为状态向量,Θ为预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,Nu为输入向量的长度,uff为前馈量。
具体的,对预设的超静定方程组进行求解处理时,仅需求解关于前馈量的第一个线性方程即可得到前馈量。
一实施例中,将所述反馈量和所述前馈量进行合并处理,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
具体的,将所述反馈量和所述前馈量进行相加处理,将u(k|k)+uff作为实际控制量发送给自动驾驶车辆,以实现对自动驾驶车辆的自动控制。
优选的,还可对所述反馈量和所述前馈量进行加权处理,并将加权后得到的实际控制量发送给自动驾驶车辆。
一实施例中,在下一时刻再重复上述步骤101-步骤104的内容,以实现对自动驾驶车辆的滚动优化处理。
实施例2:
本实施例与实施例1中步骤101的区别点在于:获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型时,所构建的离散线性二自由度自动驾驶车辆模型存在差异。
本实施例中,所构建的所述离散线性二自由度自动驾驶车辆模型,如下所示:
式中,x(k)为k时刻的状态向量,x(k+1)为k+1时刻的状态向量,y(k+1)为k+1时刻的输出向量,C为输出矩阵,Ad为增广状态转移矩阵,Bud为状态向量与车辆前轮输入转角之间的关系矩阵,Bcd为状态向量与车辆行驶轨迹曲率之间的关系矩阵,u(k)为k时刻的车辆前轮输入转角,kr(k)为k时刻的车辆行驶轨迹曲率;x(k-1)为k-1时刻的状态向量,为一维的单位向量。
本实施例中,通过在离散线性二自由度自动驾驶车辆模型的状态向量方程中增加了即将(k-1)时刻的误差状态量作为干扰项加在k时刻,在可消除系统的稳态误差。
本实施例与实施例1中步骤103的区别点在于:由于所构建的离散线性二自由度自动驾驶车辆模型存在差异,因此,基于所述离散线性二自由度自动驾驶车辆模型和所述代价函数,建立二次规划问题时,所建立的二次规划问题存在差异。
本实施例中,所述建立的二次规划问题如下所示:
式中,UT(k)为矩阵U(k)的转置,U(k)为k时刻的预测输入向量,T为矩阵的转置,N为预测矩阵,Q为对角增益矩阵,R为输入控制增益矩阵,W(k-1)为K-1时刻的误差状态向量,Yr(k)为k时刻的参考输出向量,lb和ub分别表示k时刻的预测输入向量的下限约束和上限约束,Aeq和beq为k时刻的预测输入向量的等式约束,A和B为k时刻的预测输入向量的不等式约束,x(k)为k时刻的状态向量,Θ(k)为在k时刻的预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,M为大小为Np×Nx的中间过程矩阵,Np分别表示预测时域,Nu为输入向量的长度,Nx为系统的状态数。
具体的,对于K-1时刻的误差状态向量W(k―1):
式中,为直积符号,x(k―1)为k-1时刻的状态向量,INp为Np阶单位向量,Np为预测时域。
本实施例与实施例1中步骤104的区别点在于:基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆时,直接将所述求解结果的第一个元素作为实际控制量,将所述实际控制量发送给所述自动驾驶车辆。
实施例3,参见图2,图2是本发明提供的一种自动驾驶车辆横向控制装置的一种实施例的结构示意图,如图2所示,该装置包括模型构建模块201、代价函数设置模块202、问题求解模块203和实际控制量发送模块204,具体如下:
所述模型构建模块201,用于获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型。
所述代价函数设置模块202,用于基于预设的对角增益矩阵和输入控制增益矩阵,对所述离散线性二自由度自动驾驶车辆模型设置代价函数。
所述问题求解模块203,用于基于所述离散线性二自由度自动驾驶车辆模型和所述代价函数,建立二次规划问题,并对所述二次规划问题进行求解,得到求解结果。
所述实际控制量发送模块204,用于基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
一实施例中,所述模型构建模块201,用于获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型,具体包括:获取自动驾驶车辆的车辆数据,其中,所述车辆数据包括车辆横向偏差、质心航向角误差、车辆纵向速度、车辆侧向速度、车辆行驶轨迹曲率、车辆横摆角速度和车辆前轮输入转角;根据所述车辆纵向速度、所述车辆侧向速度和所述质心航向角误差,计算车辆横向偏差变化率,并根据所述车辆横摆角速度、所述车辆纵向速度和所述车辆行驶轨迹曲率,计算质心航向角误差变化率;基于所述车辆横向偏差、所述质心航向角误差、所述车辆横向偏差变化率和所述质心航向角误差变化率,确定自动驾驶车辆的状态向量;基于所述状态向量、所述车辆前轮输入转角和所述车辆行驶轨迹曲率,构建离散线性二自由度自动驾驶车辆模型。
一实施例中,所述离散线性二自由度自动驾驶车辆模型,如下所示:
式中,x(k)为k时刻的状态向量,x(k+1)为k+1时刻的状态向量,y(k+1)为k+1时刻的输出向量,C为输出矩阵,Ad为增广状态转移矩阵,Bud为状态向量与车辆前轮输入转角之间的关系矩阵,Bcd为状态向量与车辆行驶轨迹曲率之间的关系矩阵,u(k)为k时刻的车辆前轮输入转角,kr(k)为k时刻的车辆行驶轨迹曲率。
一实施例中,所述预设的二次规划问题,如下所示:
式中,UT(k)为矩阵U(k)的转置,U(k)为k时刻的预测输入向量,T为矩阵的转置,N为预测矩阵,Q为对角增益矩阵,R为输入控制增益矩阵,Yr(k)为k时刻的参考输出向量,lb和ub分别表示k时刻的预测输入向量的下限约束和上限约束,Aeq和beq为k时刻的预测输入向量的等式约束,A和B为k时刻的预测输入向量的不等式约束,x(k)为k时刻的状态向量,Θ(k)为在k时刻的预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,M为大小为Np×Nx的中间过程矩阵,Np分别表示预测时域,Nu为输入向量的长度,Nx为系统的状态数。
一实施例中,所述代价函数如下所示:
J(k)=[Y(k)-Yr(k)]TQ[Y(k)-Yr(k)]+UT(k)RU(k);
式中,J(k)为代价函数,Y(k)为k时刻的预测输出向量,Yr(k)为k时刻的参考输出向量,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,U(k)为k时刻的预测输入向量,UT(k)为矩阵U(k)的转置。
一实施例中,所述实际控制量发送模块204,用于基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆,具体包括:基于所述求解结果,得到反馈量,并对预设的超静定方程组进行求解处理,得到前馈量;将所述反馈量和所述前馈量进行合并处理,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
一实施例中,所述预设的超静定方程组,如下所示:
式中,为4Np阶单位向量,Np为预测时域,N为预测矩阵,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,M为大小为Np×Nx的中间过程矩阵,Nx为系统的状态数,x为状态向量,Θ为预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,Nu为输入向量的长度,uff为前馈量。
上述自动驾驶车辆横向控制装置可实施上述方法实施例的自动驾驶车辆横向控制方法。上述方法实施例中的可选项也适用于本实施例,这里不再详述。
图3为一种终端设备的结构示意图。如图3所示,该实施例的终端设备3包括:至少一个处理器301(图3中仅示出一个)处理器、存储器302以及存储在存储器302中并可在至少一个处理器301上运行的计算机程序303,处理器301执行计算机程序303时实现上述任意方法实施例中的步骤。
终端设备3可以是智能手机、笔记本电脑、平板电脑和桌上型计算机等计算设备。该终端设备可包括但不仅限于处理器301、存储器302。本领域技术人员可以理解,图3仅仅是终端设备3的举例,并不构成对终端设备3的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器301可以是中央处理单元(Central Processing Unit,CPU),该处理器301还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器302在一些实施例中可以是终端设备3的内部存储单元,例如终端设备3的硬盘或内存。存储器302在另一些实施例中也可以是终端设备3的外部存储设备,例如终端设备3上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器302还可以既包括终端设备3的内部存储单元也包括外部存储设备。存储器302用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如计算机程序的程序代码等。存储器302还可以用于暂时地存储已经输出或者将要输出的数据。
另外,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述任意方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现上述各个方法实施例中的步骤。
在本申请所提供的几个实施例中,可以理解的是,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意的是,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。
功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
综上,本发明提供的一种自动驾驶车辆横向控制方法、装置、设备及存储介质,通过获取自动驾驶车辆的车辆数据,基于车辆数据,构建离散线性二自由度自动驾驶车辆模型;基于预设的对角增益矩阵和输入控制增益矩阵,对离散线性二自由度自动驾驶车辆模型设置代价函数;基于离散线性二自由度自动驾驶车辆模型和代价函数,求解预设的二次规划问题,得到求解结果;基于求解结果,确定实际控制量,并将实际控制量发送给所述自动驾驶车辆;与现有技术相比,本发明的技术方案能消除模型线性化带来的稳态误差。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本发明的保护范围。
Claims (10)
1.一种自动驾驶车辆横向控制方法,其特征在于,包括:
获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型;
基于预设的对角增益矩阵和输入控制增益矩阵,对所述离散线性二自由度自动驾驶车辆模型设置代价函数;
基于所述离散线性二自由度自动驾驶车辆模型和所述代价函数,建立二次规划问题,并对所述二次规划问题进行求解,得到求解结果;
基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
2.如权利要求1所述的一种自动驾驶车辆横向控制方法,其特征在于,获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型,具体包括:
获取自动驾驶车辆的车辆数据,其中,所述车辆数据包括车辆横向偏差、质心航向角误差、车辆纵向速度、车辆侧向速度、车辆行驶轨迹曲率、车辆横摆角速度和车辆前轮输入转角;
根据所述车辆纵向速度、所述车辆侧向速度和所述质心航向角误差,计算车辆横向偏差变化率,并根据所述车辆横摆角速度、所述车辆纵向速度和所述车辆行驶轨迹曲率,计算质心航向角误差变化率;
基于所述车辆横向偏差、所述质心航向角误差、所述车辆横向偏差变化率和所述质心航向角误差变化率,确定自动驾驶车辆的状态向量;
基于所述状态向量、所述车辆前轮输入转角和所述车辆行驶轨迹曲率,构建离散线性二自由度自动驾驶车辆模型。
3.如权利要求2所述的一种自动驾驶车辆横向控制方法,其特征在于,所述离散线性二自由度自动驾驶车辆模型,如下所示:
式中,x(k)为k时刻的状态向量,x(k+1)为k+1时刻的状态向量,y(k+1)为k+1时刻的输出向量,C为输出矩阵,Ad为增广状态转移矩阵,Bud为状态向量与车辆前轮输入转角之间的关系矩阵,Bcd为状态向量与车辆行驶轨迹曲率之间的关系矩阵,u(k)为k时刻的车辆前轮输入转角,kr(k)为k时刻的车辆行驶轨迹曲率。
4.如权利要求3所述的一种自动驾驶车辆横向控制方法,其特征在于,所述预设的二次规划问题,如下所示:
式中,UT(k)为矩阵U(k)的转置,U(k)为k时刻的预测输入向量,T为矩阵的转置,N为预测矩阵,Q为对角增益矩阵,R为输入控制增益矩阵,Yr(k)为k时刻的参考输出向量,lb和ub分别表示k时刻的预测输入向量的下限约束和上限约束,Aeq和beq为k时刻的预测输入向量的等式约束,A和B为k时刻的预测输入向量的不等式约束,x(k)为k时刻的状态向量,Θ(k)为在k时刻的预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,M为大小为Np×Nx的中间过程矩阵,Np为预测时域,Nu为输入向量的长度,Nx为系统的状态数。
5.如权利要求1所述的一种自动驾驶车辆横向控制方法,其特征在于,所述代价函数如下所示:
J(k)=[Y(k)-Yr(k)]TQ[Y(k)-Yr(k)]+UT(k)RU(k);
式中,J(k)为代价函数,Y(k)为k时刻的预测输出向量,Yr(k)为k时刻的参考输出向量,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,U(k)为k时刻的预测输入向量,UT(k)为矩阵U(k)的转置。
6.如权利要求1所述的一种自动驾驶车辆横向控制方法,其特征在于,基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆,具体包括:
基于所述求解结果,得到反馈量,并对预设的超静定方程组进行求解处理,得到前馈量;
将所述反馈量和所述前馈量进行合并处理,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
7.如权利要求6所述的一种自动驾驶车辆横向控制方法,其特征在于,所述预设的超静定方程组,如下所示:
式中,为4Np阶单位向量,Np为预测时域,N为预测矩阵,T为矩阵的转置,Q为对角增益矩阵,R为输入控制增益矩阵,M为大小为Np×Nx的中间过程矩阵,Nx为系统的状态数,x为状态向量,Θ为预测时域中的曲率值;P为一个大小为Np×Nu的中间过程矩阵,Nu为输入向量的长度,uff为前馈量。
8.一种自动驾驶车辆横向控制装置,其特征在于,包括:模型构建模块、代价函数设置模块、问题求解模块和实际控制量发送模块;
其中,所述模型构建模块,用于获取自动驾驶车辆的车辆数据,基于所述车辆数据,构建离散线性二自由度自动驾驶车辆模型;
所述代价函数设置模块,用于基于预设的对角增益矩阵和输入控制增益矩阵,对所述离散线性二自由度自动驾驶车辆模型设置代价函数;
所述问题求解模块,用于基于所述离散线性二自由度自动驾驶车辆模型和所述代价函数,建立二次规划问题,并对所述二次规划问题进行求解,得到求解结果;
所述实际控制量发送模块,用于基于所述求解结果,确定实际控制量,并将所述实际控制量发送给所述自动驾驶车辆。
9.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任意一项所述的自动驾驶车辆横向控制方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至7中任意一项所述的自动驾驶车辆横向控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410144165.XA CN118046887A (zh) | 2024-02-01 | 2024-02-01 | 一种自动驾驶车辆横向控制方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410144165.XA CN118046887A (zh) | 2024-02-01 | 2024-02-01 | 一种自动驾驶车辆横向控制方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118046887A true CN118046887A (zh) | 2024-05-17 |
Family
ID=91049447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410144165.XA Pending CN118046887A (zh) | 2024-02-01 | 2024-02-01 | 一种自动驾驶车辆横向控制方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118046887A (zh) |
-
2024
- 2024-02-01 CN CN202410144165.XA patent/CN118046887A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112180925B (zh) | Agv轨迹跟随方法、装置及处理设备 | |
CN115123219B (zh) | 一种基于模糊pid的车道保持控制方法及装置 | |
CN114655248A (zh) | 自动驾驶车辆的横向控制方法、装置及车辆 | |
CN114148320B (zh) | 一种路径跟踪控制方法及设备 | |
CN113428218B (zh) | 一种车辆转向控制方法、装置、设备及存储介质 | |
WO2022135408A1 (zh) | 车辆方向盘的转角控制方法、装置及车辆 | |
CN113759707B (zh) | 用于自动驾驶车辆的预测控制优化方法和装置 | |
CN113110511B (zh) | 一种基于广义模糊双曲模型的智能船舶航向控制方法 | |
Zhang et al. | Low-level control technology of micro autonomous underwater vehicle based on intelligent computing | |
CN113885514B (zh) | 基于模糊控制和几何追踪的agv路径跟踪方法及系统 | |
CN113525366A (zh) | 一种针对钢轮压路机液压横向控制器的横向控制方法 | |
CN112597612B (zh) | 机器人优化方法、装置、终端设备及计算机可读存储介质 | |
CN113110527B (zh) | 一种自主水下航行器有限时间路径跟踪的级联控制方法 | |
CN117724501A (zh) | 路径跟踪控制方法、装置、车辆及介质 | |
CN107450308B (zh) | 存储设备、机器人 | |
CN117826590A (zh) | 基于前置跟随拓扑结构的无人车编队控制方法及系统 | |
CN118046887A (zh) | 一种自动驾驶车辆横向控制方法、装置、设备及存储介质 | |
CN112486018A (zh) | 一种基于速度自适应预瞄的无模型无人车路径跟踪方法 | |
CN112987753B (zh) | 基于误差船舶航向的控制方法及装置 | |
CN117341721A (zh) | 车辆自动循迹控制方法、装置及电子设备 | |
CN118092405B (zh) | 车辆控制器的解耦调试方法、装置、计算机设备和介质 | |
CN117234215B (zh) | 无人车纵向控制方法、装置、电子设备及无人车 | |
Lu et al. | Achieving Automated Vehicle Path Following with Blend Path Curvature Control | |
CN116001816A (zh) | 车辆解耦控制方法、装置、存储介质及电子设备 | |
CN118034362A (zh) | 机器人控制方法、装置、计算机可读存储介质及机器人 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |