江奎,李炎亮,杨国平,刘景锋
(201620 上海市 上海工程技术大学 机械与汽车工程学院)
随着5G 时代的到来,智能驾驶作为汽车行业的主要发展方向之一,受到各汽车公司和高校的重视,成为当下热门的研究课题。智能驾驶主要分为感知、决策、控制3 部分。感知部分主要通过车辆搭载的视觉、雷达等多传感器的融合实现对周围环境物体的精确识别,然后将处理的信号传输给ADAS 控制器。控制器根据设计的控制算法进行全局及局部的路径规划,给出最优决策,最终通过设计的控制算法实现无人驾驶功能。
本文重点分析路径跟踪下的定点行驶功能。文献[1]提出基于时间建立三次参数方程并结合线性二次型方程构成反馈控制实现主车的路径跟踪功能;文献[2]提出了MPC 算法,以车速及航向偏差作为输入、以预瞄距离作为输出,实现整车的路径跟踪功能;文献[3]基于车辆动力学模型,提出一种带有前馈补偿和反馈的最优控制策略;文献[4]基于横摆角度设计PID 控制算法,实现在道路曲率不固定条件下的整车路径跟踪功能;文献[5]提出了一种自适应的智能元启发式几何控制算法的开发;文献[6]提出了采用一种改进的 VFH 方法进行局部避障路径规划和道路人工势场法实现目标路径跟踪控制,并通过仿真证明控制算法的有效性;文献[7]基于纯跟踪控制算法,实现轨迹跟踪的良好控制。
针对目前的路径跟踪问题,为实现在不同路况下精确的自主跟踪功能,本文在目前理论研究的基础上,提出整套的模型架构及控制策略,设计了一种新的路径跟踪控制,实现了重型车辆在非道路化自主路面下的定点行驶功能。
将整车简化为更加容易分析的理想化二自由模型,忽略转向系、悬架和空气阻力的影响,如图1 所示。
图1 二自由度车辆模型Fig.1 Two-degree-of-freedom vehicle model
图1 中:V——车辆行驶速度;li——第i 轴到车身质心的距离;δi——第i 轴车轮的转向角;u、v——质心速度V 在x、y 轴的分量;ωr——车辆绕z轴的角速度;β——车辆质心处的侧偏角。
本文的实际项目中,重型车辆为三桥,式(1)为多桥转向车辆横向动力学普适公式。
只有前轮转向的模式下,有δi=0,i ≠1,因此式(2)可以化简为
在建立主车二自由度模型的基础上,实现定点行驶功能的整个功能架构如图2 所示。
图2 智能驾驶定点行驶功能流程图Fig.2 Intelligent driving fixed-point driving function flowchart
首先将惯导传感器采集的经纬度信息存储在MATLAB 中,通过Lookup Table 可以实现文件经纬度的读取,然后将读取到的经纬度信息进行滤波过滤处理,消除噪声和错误点的影响。将传感器的输入信号通过模型的控制算法计算,最终求得实时的期望车速及期望转角。初步生成的代码不能直接作为最终的控制算法,需要将生成的代码进行等效性测试及模型覆盖率测试,最终将优化通过的代码导入主车搭载的工控机设备运行。在编译通过及硬件设备良好的条件下可以控制主车的车速及转向,实现重型车辆在非道路化条件下的定点行驶功能。
根据式(3)可以求出每一时刻与目标点的实时距离及方位角信息
方位角的计算公式
式中:X1——初始点经度;Y1——初始点纬度;X2——目标点经度;Y2——目标点纬度。计算时,首先将经纬度转化为弧度再代入上述公式。
图3 实时位置与目标点的实时距离模型计算Fig.3 Real-time distance model calculation between real-time position and target point
式(4)中,地球半径取6 371 km,地球上的同一经线上纬度相差1°,实际距离相差111 km,上述公式计算出的结果与谷歌地球给出的距离偏差在0.5%以下。长距离计算时,偏差则可以降至0.01%以下,求算的距离越大,偏差越小。因此,所求的结果满足项目的实际需求。
基于控制策略的研究基础,借助MATLAB搭建定点行驶功能的控制算法模型,该控制模型主要包含传感器信号输入、控制算法和信号输出模块等3 部分。
信号输入模块的主要功能是将主车搭载的视觉、毫米波雷达、惯导、超声波雷达等传感器信号封装成需要的信号接口,底层传感器信号引入成功后,将输入信号的接口导入到MATLAB模型,具体流程如图4 所示。
图4 传感器设备信号引入流程图Fig.4 Flow chart of sensor device signal introduction
如图4 所示,将各类传感器的各类信号引入,生成.h 头文件,其中,工控机搭载Ubuntu 的系统版本为Ubuntu 16.04-x86_x64,同时,创建Database CAN 数据库文件。dbc 文件描述了在CAN 网络上的各类报文信息,是通讯的核心文件。通过创建dbc 文件可实现整个CAN 网路节点无差错的协同同步开发,使输入信号的收发及测试简单化。同时,dbc 文件将引入的传感器信号生成全局变量,配置MATLAB 模型输入输出信号接口,最终实现传感器信号的导入与控制算法信号的输出。
主车在不同路面上行驶时,各类传感器较高的灵敏度和由路面不平引起的抖动会导致输入信号实时波动,这种信号波动属于正常波动,但是这种波动会影响驾驶员真实的驾驶反应意图。为了去除这些影响,得到更加真实的传感器的反应输入信号,在利用传感器信号源之前需要进行输入信号抖动的消除,功能示意图如图5 所示。
图5 传感器消抖功能示意图Fig.5 Schematic diagram of sensor de-jitter function
在图6 中,根据上述消抖理论建立模型,实现信号的消抖处理。
图6 传感器消除抖动模型图Fig.6 Sensor de-jitter model diagram
在控制算法中,根据主车实时采集到的位置、航向角和目标点的位置信息可以求得主车实时的姿态及相对方位角,根据主车与目标点的相对方位角实现对整车的控制。参见图7。
图7 主车实现定点行驶功能图Fig.7 Function chart of main vehicle to realize fixed point driving
当主车进入智能驾驶状态时,实现主车的启动、加速、减速和停止功能。初始时刻,设定主车启动车速的阈值2 m/s;当达到启动车速后,跳转到加速模块;车速达到设定阈值6 m/s 后,进行匀速行驶。根据采集的主车的实时位置、偏航角等信息实时测得距离目标点的距离信息,通过搭建的控制算法可以实现整车定点行驶功能。
在实际运行工况时会发生主车无法精确停靠在目标点位置的情况,共有3 种状态。第1种状态:主车还未停靠目标点位置就已经停止运行;第2种状态:理想状态下主车精确停靠在目标点位置,主车停靠的位置与目标点的偏差前后左右不超过0.5 m;第3 种状态:主车越过目标点的停靠位置。针对上述情况,设计了二次补位功能实现主车的精准停靠,达到第2 种理想状态。
大量实验证明,当主车的当前位置距离目标点位置20 m 外,执行正常的启动加速逻辑行驶功能;保持一段匀速行驶后,当主车的当前位置距离目标点位置15 m 时,执行补位功能。例如:当主车出现上述第1 种状态时,会执行二次启动加速补位功能。当实际出现第3 种状态时,会进行主车倒车补位功能。具体控制算法图8模型所示。
图8 定点行驶补位功能Fig.8 Fixed-point driving compensation function model diagram
信号输出模块的主要功能是将控制算法求得的实时期望车速和期望转角数值转化为整车CAN对应的输出信号。在输出信号模块中,也需实时引出观测量的值,实现对控制算法每一部分的观测验证,便于根据实际情况修正各子模块的控制算法。
在TruckSim 软件中配置重卡的实际整车参数,包括整车质量、长宽高、质心的位置轴距转动惯量和侧偏刚度等,然后进行驾驶员模型及周围道路环境的构建,包括道路状况的设置,最后确定Simulink 和TruckSim 的接口的配置。联合仿真简图如图9、图10 所示。
图9 TruckSim&Simulink 联合仿真图Fig.9 TruckSim&Simulink joint simulation diagram
图10 虚拟仿真分析图Fig.10 Virtual simulation analysis diagram
在Simulink 中进行模型的搭建及代码的生成,并将生成的代码进行等效性及模型覆盖率测试后,最终将优化后的代码导入工控机安装的Linux 平台运行。经过在实验区的多次实验,每次实验采用:GPS/惯性导航定位设备,精度达到1 cm 级别。实验数据分析通过CANalyzer 设备进行读取。
从图11 中可以看出,当CMD_State=1,处于智能驾驶条件下,主车的实际车速先启动加速保持一段距离到距离目标点距离15 m 时,执行补位功能逻辑,到达设定的目标位置后,退出自动驾驶状态,CMD_State=0,车辆停靠到目标点,实现了定点行驶功能。
图11 实车验证定点行驶效果图Fig.11 Real vehicle verifying fixed-point driving effect map
整车实际的停靠位置与目标位置的偏差实验数据见表1。
表1 数据分析Tab.1 Data analysis
通过多次实验随机取3 次数据并分析得出结论,本文提出的控制算法可以稳定地实现定点行驶功能,鲁棒性较好,达到定点行驶目标要求。
针对重型车辆在非道路状况下的自动停靠偏离问题,本文设计的控制算法可以实现路径跟踪下的定点行驶功能。通过实车验证分析,车辆的最终停靠位置点与目标点的距离偏差不超过1 m。相比于传统的算法,本文的整车模型控制算法不仅提高了定点行驶功能的精确度,鲁棒性也得到了提高。