CACC 协同式自适应巡航模型(仿真软件版本:Carsim2016,Matlab2018b及以上)
搭建四辆车在carsim和simulink进行协同式自适应巡航,其中间距策略考虑领航车速的影响,各个车辆采用分层式控制,分层式控制器主要分为下层控制(使用车辆逆纵向动力学模型(包括逆发动机模型 ))和上层控制(模糊MPC算法对相对距离,相对速度,加速度等进行调节,其中模糊逻辑对MPC的权重系数进行在线调整,stateflow进行模式切换),实现定速巡航和车队跟随工况。
附带详细学习资料,适合入门自适应巡航,协同式自适应巡航,自动驾驶纵向控制,同时学习模型预测控制算法和模糊推理方法。
CACC协同式自适应巡航模型的搭建与实现
摘要
CACC协同式自适应巡航是一种能够提高道路交通流量和安全性的先进纵向控制策略。在本文中,我们介绍了如何使用Carsim2016和Matlab2018b及以上版本搭建四辆车的CACC协同式自适应巡航模型,采用分层式控制策略实现定速巡航和车队跟随工况。具体来说,我们在下层控制器中使用车辆逆纵向动力学模型,对车速和加速度进行调节;在上层控制器中,我们采用模糊MPC算法,通过调节相对距离、相对速度、加速度等参数实现对车队的跟随操作。此外,我们还使用stateflow进行模式切换和在线调整MPC的权重系数。最终实验结果表明,所提出的CACC协同式自适应巡航模型具有较好的性能和可靠性。
关键词:CACC;协同式自适应巡航;分层式控制;模糊MPC算法;stateflow
1.引言
自适应巡航系统是一种能够提高车辆行驶安全性、降低油耗和排放的先进纵向控制策略。然而,现有的自适应巡航系统主要基于单个车辆的控制,而在车队中,机动车之间的互动是非常重要的。因此,CACC(协同式自适应巡航)成为解决车队纵向控制问题的有效手段。
CACC是一种基于V2V通信和车辆间互动的自适应巡航策略。在CACC系统中,领航车和跟随车之间传输巡航距离、巡航速度以及制动/加速指令等信息。通过接收和处理这些信息,跟随车可以实现与领航车相同的车速和加速度,从而实现车队跟随。CACC系统可以有效地提高道路交通的安全性和流量,降低车辆油耗和排放。
在本文中,我们将介绍如何使用Carsim2016和Matlab2018b及以上版本搭建四辆车的CACC协同式自适应巡航模型,实现定速巡航和车队跟随工况。具体来说,我们将采用分层式控制策略,其中下层控制器将使用车辆逆纵向动力学模型进行调节,而上层控制器将采用模糊MPC算法来控制相对距离、相对速度和加速度等参数。我们还将使用stateflow进行模式切换和在线调整MPC的权重系数,从而提高模型的鲁棒性和性能。
2.系统建模
2.1 车辆模型
CACC协同式自适应巡航模型的建模需要考虑车辆的逆纵向动力学模型。在本文中,我们采用了简化的车辆模型,包括车辆的质量、空气阻力、滚动阻力和制动功率等因素,如图1所示。车辆的动力学模型可以表示为:
$$m\ddot{x} = F_p - F_d - F_g$$
其中 $m$ 是车辆的质量,$\ddot x$ 是车辆的加速度,$F_p$ 是发动机提供的牵引力,$F_d$ 是空气阻力,$F_g$ 是重力势能的势能梯度,表示为:
$$F_d=\frac{1}{2}\rho CdA\dot{x}^2$$
$$F_g=mg\sin\theta$$
其中 $\rho$ 是空气密度,$C_d$ 是车辆的阻力系数,$A$ 是车辆的面积,$g$ 是重力加速度,$\theta$ 是车辆的坡度。
这里我们假设车辆的制动系数为线性函数,即:
$$F_{brake}=K_{brake}(v-v_{ref})$$
其中 $K_{brake}$ 是制动系数,$v$ 是实际车速,$v_{ref}$ 是期望车速。同时,我们假设车辆的加速度也为线性函数,即:
$$F_{throttle}=K_{throttle}(v_{ref}-v)$$
其中 $K_{throttle}$ 是加速度系数。
2.2 控制模型
CACC协同式自适应巡航模型的控制策略可以分为下层控制和上层控制两部分。
在下层控制器中,我们采用车辆逆纵向动力学模型控制车速和加速度,其控制模型可以表示为:
$$ \begin{cases} \dot{x}=v \ \dot{v}=\frac{1}{m}(F_{throttle}-F_{brake}-F_d-F_g) \end{cases} $$
其中 $x$ 表示车辆位置。
在上层控制器中,我们将采用模糊MPC算法,通过调节相对距离、相对速度和加速度等参数来实现对车队的跟随操作。具体来说,我们将使用模糊MPC算法将跟随车的期望加速度与领航车的加速度进行比较,从而调节跟随车的加速度。模糊MPC算法可以表示为:
$$\Delta a(k) = \alpha_1 \Delta d(k) + \alpha_2 \frac{\Delta d(k)-\Delta d(k-1)}{\Delta t} + \alpha_3 \Delta v(k) + \alpha_4 \frac{\Delta v(k)-\Delta v(k-1)}{\Delta t}$$
其中 $\alpha_1$、$\alpha_2$、$\alpha_3$、$\alpha_4$ 是权重系数,$\Delta d$ 和 $\Delta v$ 分别表示车辆之间的距离和速度差。根据模糊MPC算法的输出结果,我们可以计算出实际的加速度,从而实现对车队的跟随控制。
3.系统设计
在本节中,我们将介绍如何使用Carsim2016和Matlab2018b及以上版本搭建CACC协同式自适应巡航模型。具体来说,我们将分为下层控制和上层控制两部分来介绍系统设计。
3.1 下层控制
在下层控制器中,我们将使用Carsim2016来构建车辆的动力学模型,并使用Simulink来搭建控制器。如图2所示,我们首先将建立四辆车的模型,包括质量、空气阻力、滚动阻力、制动系数、加速度系数等因素。然后,我们将实现下层控制器,即使用车辆逆纵向动力学模型控制车速和加速度。
在Simulink中,我们将采用PID控制器来控制车速和加速度。其中,我们将使用基于车辆
相关代码,程序地址:http://lanzouw.top/688633031253.html