孟育博,赵 科,郭 鹏,康虓源,魏 博,陈 罡
(河南工程学院 机械工程学院,河南 郑州 451191)
随着计算机技术和车联网技术的快速发展,自动泊车辅助系统受到国内外学者的广泛关注[1-2]。在车位检测方面:Jung等[3]使用立体视觉技术对车位进行测试;Jeong等[4]采用超声波对平行泊车方式下的车位信息进行检测;姜金山[5]采用图像处理技术对泊车过程中车位特征点进行采集,并使用数据融合算法对特征点进行分析,车位检测的精度得到了提高;叶浩[6]利用广角镜头,联合超声波雷达进行车位辨识,进一步提高了辨识的精度。在路径规划方面:Kim等[7]在泊车空间较小的情况下,采用圆弧和直线相结合的方式进行路径规划,但由于存在分段点,路径追踪难度较大;Hsu等[8]在转向盘转角及行程变化规律基础上,采用圆弧路径进行路径规划,但运用时较困难。在路径追踪方面:Kanayama等[9]设计非线性控制方案,采用李雅普诺夫定理对稳定性进行验证,但车辆速度和方向无法单独控制;Tashiro等[10]采用预测模型进行路径跟踪,但此方法在垂直泊车时存在无法控制的可能性;张鹏等[11]基于CarSim仿真软件,采用PID控制算法进行纵向路径跟踪控制,但使用环境有一定的限制。因此,本研究基于车辆动力学理论进行模型搭建,并进行泊车路径规划曲线和路径跟踪预测模型控制算法的设计,采用CarSim和MATLAB/Simulink进行联合仿真,以期为自动泊车的实际应用提供理论支撑。
泊车过程非常复杂,与驾驶员状况、车辆外形、车位形状等多种因素都存在着关系,为便于研究,需要对上述因素进行简化。本研究假设车辆为长方形刚体,不规则形状忽略不计。为保证泊车安全,一般要求车辆速度不超过3.6 km/h。在低速状态下,车轮的侧向力较小,可忽略不计,即可保证在泊车过程中不发生侧滑。本研究将车辆简化为如图1所示的矩形,并基于阿克曼转角原理对等效前轮转角进行分析,进而搭建车辆的运动学模型。
注:θ为车辆车身航向角;δ为车辆等效前轮转角;f(xf, yf)和r(xr, yr)分别为前轮和后轮中心点坐标;a(xa, ya)、b(xb, yb)、c(xc, yc)和d(xd, yd)分别为车身4个顶点的坐标。
同理,等效前轮转角δ可根据前轮转角之间的关系进行计算,转换关系示意图如图2所示。
图2 等效前轮转角转换关系示意图Fig.2 Schematic diagram of equivalent front wheel angle transformational relation
由图2可推导出前轮转角和等效前轮转角之间的关系:
cotα+cotβ=2cotδ,
(1)
式中:α为前轮右侧车轮转角;β为前轮左侧车轮转角。
在泊车过程中,车辆速度较低时车轮的侧向力可忽略,在此基础上对图2进行分析可得
(2)
根据车辆前轴和后轴中心点的关系,可得出位移的关系式:
(3)
式中:l为轴距。
对距离进行求导可得到速度的关系式:
(4)
将式(4)代入式(2)可得
(5)
前轴中心点的速度为
(6)
式(5)和式(6)联合整理可得角速度
(7)
对以上公式进行整理,可得前轴和后轴中心点的速度关系式:
(8)
(9)
对式(8)和式(9)进行归纳,可得车辆在泊车过程中的运动方程:
(10)
由式(10)可知,车辆位置随着车辆速度和等效前轮转角的变化而变化。同时,还要考虑泊车过程中车身4个方向顶点与车辆本身的系统约束问题,以及仿真出现碰撞等问题。因此,根据车辆运动学模型(图1)可得到车身顶点和后轴中心点之间的几何关系。
左前和右前顶点的坐标可分别表示为式(11)和式(12):
(11)
(12)
左后和右后顶点的坐标可分别表示为式(13)和式(14):
(13)
(14)
式(11)至式(14)中:L为车长;W为车亮;lf为前悬;lr为后悬。
车辆转向系统的约束为
(15)
式中:R为车轮转弯半径;ω为车前轮转向角速度。
采用圆弧和直线连接的方法可简化泊车路径,但在路径由圆弧转换到直线的过程中,由于曲率不连续,方向盘突然转动将会导致泊车失败,甚至损坏车辆。因此,本研究采用四次多项式曲线作为规划路径,这种路径曲线是连续的,曲率也不会发生突然变化,可满足车辆泊车路径的运动规律。垂直泊车路径如图3所示。
图3 垂直泊车路径Fig.3 Vertical parking path
本研究用四次多项式进行垂直泊车路径规划,通用表达式为
Y=a0+a1X+a2X2+a3X3+a4X4,
(16)
式中:a0、a1、a2、a3和a4为多项式系数。
为计算出多项式系数,需要根据车辆位置信息及车辆自身参数得出求解方程式,进而得出多项式系数,从而完成路径规划。通过对图3中泊车路径的分析,可得如下方程:
(17)
采用MATLAB软件对垂直泊车路径进行仿真,结果如图4所示。由图4可知,在可行区域内车辆可选任一点作为泊车起点,车辆在泊车过程中不会发生碰撞,可安全地泊入车位,由此可见规划的多项式曲线能够满足泊车要求。
图4 垂直泊车路径仿真Fig.4 Vertical parking path simulation
模型预测控制算法是在有限时域连续进行反馈优化的控制方法[12],其本质是一种开环最优控制算法。在泊车控制过程中,基于车辆整体的位置状态模型和当前状态模型对未来时域的状态进行预测,并将预测结果实时反馈到控制器中对误差进行优化。控制算法由3部分组成,分别为预测模型、滚动优化和反馈及优化校正。
由车辆运动学模型(图1)可知,本研究构建的运动学模型为非线性系统,而基于模型的预估算法在线性或近似线性条件下才能正常使用,为适应算法需求,需要进行非线性时变的近似线性化处理。本研究构建的运动系统输入为U(v,δ),输出为X(x,y,θ),其模型如下:
(18)
当车辆按照规划路径泊车时,首先收集路径上任一点的状态量X及任一时刻的位置控制量U,然后得出实际运行数据和参考系统数据间的差距。参考系统任一时刻Xr和Ur之间的关系为
(19)
为得到实际系统与所建参考系统之间的差别,需要借助泰勒级数展开式。泰勒级数展开式由较多项组成,将高阶项全部舍去,得到的偏差状态方程为
(20)
将式(19)和式(20)联立可得
(21)
对式(21)进行整理,可得
(22)
对式(22)进行离散化处理,可得
(23)
CarSim是针对车辆动力学的专业仿真软件,可对汽车动力性、经济性、制动性和稳定性等进行仿真分析,具有较高的计算精度。Simulink是MATLAB软件的一个重要组件,采用可视化模块进行建模,可对智能驾驶算法进行快速高效的开发、调试和测试。基于CarSim与MATLAB/Simulink所搭建的联合仿真模型如图5所示。
图5 CarSim与MATLAB/Simulink联合仿真模型Fig.5 Joint simulation model of CarSim and MATLAB/Simulink
为对所规划的泊车路径进行可行性验证,根据所建泊车系统模型进行参数选取,如表1所示。在车辆规划泊车路径及设计条件下,进行车辆单步垂直泊车的联合仿真,仿真动画截图如图6所示。
表1 模型仿真参数Tab.1 Model simulation parameters
图6 车辆泊车的仿真动画截图Fig.6 Screenshot of vehicle parking simulation animation
由图6可知,车辆能够按照所规划的线路,在模型预测算法的控制下实现车辆的单步垂直泊车。为对控制算法的合理性进行判断,需要对泊车过程中的纵坐标及其跟踪误差、航向角及其跟踪误差进行分析,如图7至图10所示。
图7 纵坐标随时间变化示意图Fig.7 Schematic diagram of vertical coordinate changing with time
由图7和图8可知:在模型预测算法的控制下,车辆在垂直泊车初始阶段,纵坐标和航向角随时间产生变化;泊车完成以后,纵坐标和航向角均成为一个定值,表明车辆在模型预测算法的控制下,能够按照预定路线完成泊车并保持稳定停车状态。
图8 车辆航向角随时间变化示意图Fig.8 Schematic diagram of vehicle heading angle changing with time
由图9和图10可以看出,在泊车过程中,纵坐标和航向角的跟踪误差呈现相似的变化规律,即先增加再减少然后再增加,最后近似为定值。同时,在泊车过程中纵坐标最大跟踪误差约为6 mm,泊车停止时误差约为1.8 mm;车辆航向角最大跟踪误差约为0.004 5 rad,泊车停止时误差趋近于0。因此,通过对泊车过程的仿真分析可知,路径跟踪误差保持在较小的范围内,路径规划能较好地满足垂直泊车要求。
图9 纵坐标跟踪误差Fig.9 Vertical coordinate tracking error
图10 航向角跟踪误差Fig.10 Heading angle tracking error
本研究采用四次多项式进行单步垂直泊车路径规划,基于车辆动力学理论进行模型搭建,并进行泊车路径跟踪预测控制算法的设计,借助CarSim和MATLAB/Simulink进行联合仿真。仿真结果显示,系统能很好地完成自动泊车,验证了路径规划方法和路径跟踪算法的可行性。