范贤波, 彭育辉, 钟聪
(福州大学机械工程及自动化学院, 福建 福州 350108)
近年来, 智能交通、 人工智能技术快速发展, 自动驾驶已成为各领域的研究热点. 作为支撑汽车自动驾驶的关键技术之一, 轨迹跟踪要求控制车辆使之能够按照参考轨迹行驶, 如何确保跟踪的精确性和稳定性一直是无人驾驶控制技术重点与难点[1]. 因此, 在不同工况下, 确保自动驾驶汽车的跟踪精度和稳定性显得尤为重要.
目前应用在轨迹跟踪横向控制算法主要有: 滑模控制[2]、 PID控制[3]、 线性二次调节器控制[4]、 模型预测控制[5]等. 由于模型预测控制(model predictive control, MPC)能够系统地处理车辆系统中存在的动力学和运动学约束, 被广泛应用于自动驾驶汽车轨迹跟踪横向控制中. 为提高自动驾驶汽车轨迹跟踪精度和稳定性, 文献[6-7]中设计一种MPC自适应控制器, 基于线性轮胎模型在线实时估计轮胎侧偏刚度并更新控制器预测模型, 但未考虑中高速工况下轮胎的非线性特性; 文献[8-9]在MPC控制器中加入车辆行驶状态参数估计器, 仿真结果表明, 带参数估计器的MPC控制器能够较好地实现智能车辆在恒定车速下的轨迹跟踪, 但由于采用了固定控制参数, 在车速变化时控制效果并不理想; 文献[10]利用遗传算法(GA)对MPC的预测时域、 控制时域这两个重要参数进行优化, 经过GA优化的MPC控制器提高了对速度变化的自适应能力. 文献[11]基于模型预测控制算法设计一种可变预测时域的轨迹跟踪控制器, 提高了控制器对速度的自适应性.
综合目前的研究成果, 无人驾驶汽车的模型预测控制器较少考虑预测模型参数失配、 横向车速和纵向车速对轨迹跟踪精度与稳定性的影响. 为此, 本文提出一种自适应轨迹跟踪控制方法, 通过改进模型参数估计方法, 提高轮胎侧偏刚度参数估计的精度, 避免模型参数失配而引起的车辆失稳问题; 并设计控制参数选择器, 根据横向车速与纵向车速自适应选取预测时域, 提高轨迹跟踪控制器的自适应性.
以三自由度车辆动力学模型作为轨迹跟踪的研究对象, 包括: 纵向x、 横向y和横摆Iz3个自由度.如图1所示, 坐标系{o-xyz}为固定在车辆质心处的满足右手定测的车辆坐标系, 坐标系[O-XY]为地面的全局坐标系[12].
图1 车辆动力学模型Fig.1 Vehicle dynamics model
根据牛顿第二定律, 分别可得到纵向 、 横向、 横摆3个自由度方向的受力平衡方程, 如下所示:
(1)
Fl=Cls;Fc=Ccα
(2)
式中:Cl,Cc分别为轮胎纵向和侧向刚度;s,α分别为轮胎滑移率与侧偏角.
联合式(1)~(2)并考虑车辆坐标系与惯性坐标系之间的变换关系简化推导后, 得到车辆动力学非线性模型状态方程如下:
(3)
式中:Clf,Clr,Ccf,Ccr分别为前、 后轮胎纵向刚度和侧向刚度.
如图2所示, 侧偏角在较小范围内(-5° ~5°)时, 轮胎侧偏力与侧偏角成线性关系, 即:
图2 侧偏特性曲线Fig.2 Side slip characteristic curve
(4)
αf,αr分别表示前后轮侧偏角,Ccf,Ccr分别表示前后轮侧偏刚度. 当车辆在中高速工况下曲线行驶时, 随着轮胎侧偏角逐渐增大, 轮胎进入非线性区, 侧偏力逐渐接近附着极限, 达到侧偏力极值点后进入饱和区, 为防止轮胎进入饱和区, 在模型预测控制器中增加了侧偏角约束.
根据Fiala轮胎侧偏特性公式[13], 建立轮胎侧偏角与侧向力的非线性模型, 采用卡尔曼滤波算法进行估计附着系数[14]. 为便于侧偏刚度估计, 将非线性模型转化为递推最小二乘算法的标准形式.
(5)
Z(k)=hT(k)θ+e(k)
(6)
图3为不同车速下的轮胎侧偏角曲线, 当车速较高且曲线行驶时, 轮胎进入非线性区. 图4为50 km·h-1下的侧偏刚度估计结果, 可见采用非线性模型的参数估计精度略高于线性模型, 但无明显差异. 图5为车速75 km·h-1下的侧偏刚度估计结果, 可见改进的模型参数估计方法估计精度明显高于采用线性模型的估计精度, 利用平均绝对百分比误差进行评价, 该车速下估计精度提高了32.52%. 这是因为车辆在中高速下曲线行驶, 轮胎进入非线性区域, 采用线性模型会因为模型不匹配导致参数估计精度的降低, 车辆高速行驶时对控制器模型精度要求更高, 所以提高模型参数的估计精度是很有必要的.
图3 不同车速下的轮胎侧偏角Fig.3 Tire slip angle under different vehicle speed
图4 50 km·h-1下侧偏刚度估计结果Fig.4 Estimation results of cornering stiffness at 50 km·h-1
图5 75 km·h-1下侧偏刚度估计结果Fig.5 Estimation results of cornering stiffness at 75 km·h-1
本研究设计的自适应控制器结构如图6所示, 分为MPC控制器、 控制参数选择和参数估计器三个部分. 参考轨迹信息是已知的, 为了提高控制器的自适应能力, 根据实时横向车速和纵向车速, 基于设计的模糊控制规则自适应地选择预测时域与控制时域. 同时, 为了提高车辆行驶的稳定性, 进行在线估计轮胎侧偏刚度, 并将估计的参数值实时更新控制器预测模型, 提高控制器预测模型对系统状态量和输出量的预测能力, 保证车辆行驶稳定性.
图6 自适应控制器框架图Fig.6 Frame diagram of adaptive controller
公式(3)建立的车辆动力学模型的连续状态方程可表示为:
(7)
由于该控制系统属于非线性时变系统, 对于控制器求解比较困难, 采用前进欧拉法对系统进行线性处理, 时间步为k, 则式(7)可以被描述为:
(8)
式中:Ak=I+TsA;Bk=TsB;Ts为系统采样时间.
为了更好地约束控制增量, 设
(9)
得到预测模型递推公式如下:
(10)
设系统预测时域为Np, 控制时域为Nc, 系统在预测时域内的输出量可以表示为:
Y(k)=ψ(k)ξ(k)+Θ(k)ΔU(k)
(11)
参考横向位置Yref和参考横摆角φref是已知量, 作为参考输出信号输入系统, 用来计算车辆的实时横向位置偏差和横摆角度偏差. 控制的最终目标就是要让被控车辆尽可能地按照参考轨迹行驶, 使得横向位置偏差和横摆角度偏差接近于0, 同时为了保证行驶稳定性还要使控制量变化率尽量小, 因此目标函数可以构建为如下形式:
(12)
式中:Np为预测时域;Nc为控制时域;Q和R为权重矩阵;yref表示参考输出;ρ为权重系数;ε为松弛因子. 第一项表示输出量与参考输出量之间的误差, 反映了控制目标的精确跟踪; 第二项为控制增量的大小, 主要反映控制目标的稳定性. 设置松弛因子, 是为了保证二次规划具有最优解. 同时, 考虑实际车辆的运动学与动力学特性, 还需要对系统的状态量和控制量进行一定的约束, 包括: 1) 输出量约束:ymin≤y(k)≤ymax; 2) 侧偏角约束:αmin≤α≤αmax; 3) 控制量约束:umin≤u(k)≤umax; 4) 控制增量约束: Δumin≤Δu(k)≤Δumax.
将目标函数(12)转化成便于计算机求解的带约束的标准二次规划形式:
在每一个优化周期内, 优化目标为minJ, 得到控制时域内的控制变量的增量:
ΔU=[Δu*(k), Δu*(k+1), …, Δu*(k+Nc-1)]
(14)
选取控制序列的第一个元素作为实际的控制变量输出, 即前轮转角, 作用于被控对象:
u(k)=u(k-1)+Δu*(k)
(15)
预测时域和控制时域的选取对轨迹跟踪的精度和稳定性有很大的影响, 预测时域和控制时域的大小可以理解为预测距离的长短, 该距离的长短会受到纵向车速与采样时间的影响.
d=vx×Np×Ts
(16)
当预测时域和采样时间不变时, 预测距离会随着纵向车速增大而增大, 如果预测距离过大, 控制器将会增大距离较远处的误差权重, 导致当前车辆附近的轨迹跟踪精度下降; 如果预测距离过小, 将可能致使控制量以及控制增量超出约束值, 导致车辆无法及时转向, 降低车辆的稳定性. 同样, 控制时域过大, 将会增加控制器的计算负担, 而控制时域过小, 使得控制器对误差过于敏感, 使得车辆的稳定性下降. 因此, 预测时域和控制时域的选取应该考虑实时纵向车速和横向车速的大小, 基于此, 引入一种控制参数因子, 预测时域和控制时域可以被描述成纵向车速、 横向车速和控制参数因子的一种函数关系:
Np=f(vx,vy,κ)
(17)
式中:κ为控制参数因子.
采用模糊控制, 根据纵向车速和横向车速对控制参数因子进行调节, 采用高斯型和三角形隶属度函数, 制定了如表1所示的模糊规则, 模糊规则纵向车速和横向车速这两个输入与输出控制参数因子的响应关系如图7所示.
图7 控制参数因子与车速关系图Fig.7 Relationship between control parameters factor and vehicle speed
表1 模糊控制规则
为进一步提升控制参数因子的自适应能力, 需要充分考虑纵向车速和横向车速对预测时域和控制时域的影响. 当车辆在直线道路上行驶时, 横向车速很小, 此时预测时域和控制时域可以相应长一些; 当行驶轨迹曲率较大时, 横向车速会随着道路曲率的增加而增加, 而在轨迹曲率较大的情况下, 为了确保行驶稳定性, 预测时域和控制时域要相应减小, 而控制时域又不能太小; 因此预测时域和控制时域可通过以下公式计算得到:
(18)
式中:κ为控制参数因子;Ts为采样时间, 取0.1 s;ω1,ω2为时域权重系数.
为验证所提出的自适应模型预测控制器的有效性, 基于Simulink/CarSim软件构建联合仿真模型对所提控制方法进行计算机仿真分析. 仿真分析实验1: 进行双移线工况仿真实验, 分析确定预测时域权重系数和控制时域权重系数; 仿真分析实验2: 超车轨迹跟踪仿真, 验证加入参数实时估计的控制器在高速行驶时的稳定性.
为验证预测时域的权重系数对轨迹追踪精确性和稳定性的影响, 选取车速60 km·h-1, 权重系数ω2取0.4, 权重系数ω1分别取0.2, 0.4和0.6进行双移线工况仿真, 仿真结果如图8所示.
图8 不同权重系数下的车辆状态曲线与时域值 Fig.8 Vehicle state curve and horizon value under different weight coefficients
不同的权重系数ω1对轨迹跟踪的精度影响不大, 当ω1取0.2时, 预测时域和控制时域较小, 控制器无法对突变轨迹做出快速响应, 车辆横摆角和横向车速曲线波动较大, 车辆的稳定性较差; 当ω1增加到0.4时, 控制器的跟踪精度和稳定性并没有明显改善; 当ω1继续增加到0.6时, 由图8可看出横摆角曲线和横向速度曲线相对光滑, 车辆的稳定性得到明显的改善, 且预测时域和控制时域可以根据实时车速进行自适调整, 同时在轨迹曲率较大区域, 此时横向车速较高, 控制时域也不会太小, 保证了车辆在轨迹跟踪时的稳定性, 同时预测时域和控制时域的大小都处于一个合理的范围, 因此ω1设定为0.6. 在确定好预测时域的权重系数后, 对控制时域的权重系数进行分析, 同样选取车速60 km·h-1, 权重系数ω1取0.6, 权重系数ω2分别取0.2, 0.4和0.6进行仿真分析, 最终确定权重系数ω2取0.4.
为验证所设计的自适应控制器在高速行驶时具有较好的稳定性, 将加入侧偏刚度实时估计的控制器设为控制器A, 侧偏刚度采用定值的控制器设为控制器B, 对比两种控制器的轨迹跟踪稳定性, 仿真车速由60匀加速到80 km·h-1, 参考轨迹为超车轨迹曲线, 路面附着系数为0.6(潮湿路面).
仿真结果如图9所示, 控制器A前轮转角变化平缓且处于合理正常范围内, 能够较好完成对参考轨迹的跟踪, 而控制器B在变道超车过程中前轮转角已经达到最大约束值(±10°)且出现较大弧度的震荡, 已经完全偏离参考轨迹.
图9 超车轨迹跟踪仿真结果 Fig.9 Simulation results of overtaking path
同样, 由横摆角速度与质心侧偏角曲线图可以看出, 控制器B的横摆角速度与质心侧偏角都已经完全超出了车辆稳定行驶的稳定范围, 表明车辆已经失去了稳定性. 这是由于控制器A对轮胎侧偏刚度进行在线估计, 并将估计的参数实时更新控制器预测模型, 提高了预测模型对系统状态量和输出量的预测能力, 提高了无人驾驶汽车在超车过程中的稳定性. 可见, 加入轮胎侧偏刚度实时估计器的模型预测控制器, 在超车过程中具有更好的行驶稳定性.
1) 设计控制参数选择器, 根据横向车速和纵向车速设计模糊控制规则调节控制参数因子, 通过仿真分析确定预测时域和控制时域的权重系数, 实现了控制时域和预测时域能根据实时横向车速与纵向车速自适应的选择, 提高了无人驾驶汽车轨迹跟踪的精度与稳定性.
2) 通过建立轮胎非线性数学模型, 并将其转化为遗忘因子递推二乘算法的标准方程, 改进了模型参数的估计方法, 对轮胎侧偏刚度进行在线实时估计. 仿真结果表明, 改进的模型参数估计方法, 在中高速(75 km·h-1)行驶工况下参数的估计精度提高了32.52%, 并且提高了模型预测控制器对车辆行驶状态的预测能力, 避免了模型参数失配的问题, 提高了车辆在高速行驶时的稳定性.