Advertisement

无人驾驶-控制-自行车模型

阅读量:

无人驾驶-控制-自行车模型

一、综述

1.1 简介

为了更好地理解高级的车辆控制算法,在学习 vehicles' motion models 方面需要付出更多的努力。这些 motion models 本质上是一种能够系统性描述 vehicles' motion patterns 的技术工具。显然地,在实际应用中越复杂的 vehicles' motion models 越能准确反映真实的 motion behaviors. 本节我们将重点探讨两种在实际应用中非常重要的 vehicles' motion学描述方法:基于 kinematic bicycle model 和 dynamic bicycle model 的方法。

无人驾驶系统通常分为感知、决策与控制三个模块,在无人车中其运动学模型主要由两个相互独立的部分构成:一个是基于感知层及定位层信息实现的道路曲线规划算法;另一个则是根据底层实时信息确定行驶路线的速度控制器。值得注意的是,在实际应用中我们通常会采用多项式的运动学模型来描述这些轨迹曲线;具体而言,在大多数情况下A third-degree polynomial is typically sufficient to model most paths accurately.

参考链接:三次多项式的最小二乘法推导.

1.2 模型预测控制

无人车主要依靠被称为模型预测控制(Model Predictive Control)的一项简单技术。这种控制方法旨在产生一系列可行(即车辆能够实现)的控制输入,并主要基于特定算法(通常是带约束的非线性优化算法)来调整这些输入以最小化一个损失函数(cost function)。这个损失函数的具体求解则依赖于车辆运动学或动力学模型输出与参考路径差值计算的结果。这些模型正是本节的核心内容。

1.3 自行车模型

注意

  • 车辆在垂直方向上的运动被未考虑,在这种情况下我们所描述的车辆仅限于平面内的运动物体(相当于从空中俯视角度看)
  • 我们假设车辆的结构类似于自行车,在这种情况下前后车轮各自具备一致的角度和转速特性,则前后车轮均可各自单独进行描述
  • 我们假设车辆运动模式类似于自行车,在此情况下前轮主要决定了整个车辆的姿态

首先我们简单的在一个二维平面上描述一个车辆:

Alt

其中θ是其在Yaw方向上的转向角,该角基于x轴逆时针计算,v代表沿θ方向的速度矢量,L则定义为前后车胎之间的距离,(x,y)表示车辆的位置坐标

下图是该车辆的自行车模型:

在这里插入图片描述

二、运动学模型

2.1 模型定义

此外,在本研究中也被认为是一种基于两轮摩托车特点运动学自行车模型并假设车辆具有类似于两轮摩托车的特点主要由两个变量(a δ f)来表示其运动状态其中 a 表示车辆沿纵向方向的速度变化率A踩油门踏板时会增加纵向加速度;相反地在刹车时则会减少.The steering angle δ f represents the turning direction of the front wheels.This steering angle is also equivalent to the current turning direction of the front wheels at this stage.As a result at this stage we use two variables— a and δ f—to represent the control inputs to the vehicle dynamics model.

随后我们明确模型的状态变量。基于运动学的自行车模型采用四个状态变量以精确地表征车辆的位置、速度和转向信息:

x即车辆当前位置的x坐标,
y代表车辆当前位置的y坐标,
ψ代表车辆在Yaw方向上的偏航角(以弧度量取),其中逆时针方向为正,
v即表示车辆运行的速度。

一个简单的运动学自行车模型如图所示:

Alt

lf 和 lr 分别代表前轮至重心以及后轮至重心的距离。基于运动学原理可知,在运动学自行车模型中各状态量的更新遵循以下公式

其中偏航角的更新公式:

Vt * sin(β) / Lr = Wt, Wt * dt = β

在这里插入图片描述

2.2 偏航角推导

其中 β 可以由如下公式推导求得:

其中借助互余性原理将β和δ_f转化为与O点相关的角度;随后基于三角形的正切关系可得:

tan(β)/tan(δ_f)= [lr/dist]/[(lr+lf)/dist] = lf/(lf+lr)

在这里插入图片描述

尽管大多数汽车后轮无法转向,但我们的自行车模型仍然假设后轮的转角控制输入 δr=0,并且这些方向盘上的控制输入直接反映了前轮转向的角度。

基于这一简化的运动学自行车模型,在施加某一特定时刻的控制输入后

三、动力学模型

3.1 模型简介

该车辆运动学自行车模型实际上预设了一个关键性假设:即车前行轮的方向与之对应的速度方向相一致。然而,在实际的车辆运动过程中会遇到这种情况并非总是成立的情况:特别是在当车辆以较高的速度行驶时(high speed),其转向角度并不必然与当前行驶速度保持一致(consistent)。因此,在这种情况下(scenario),我们需要引入更为精确的动力学自行车模型(model)来描述这一现象(phenomenon)。

车辆动力学模型基于轮胎与路面之间复杂的相互作用来描述车辆的动力学行为。在一个动力学模型中,我们需要详细分析多种不同的力的作用过程:其中一类为纵向作用力、另一类为横向作用力。纵向作用力推动车辆在纵向方向上运动;而横向作用力则影响车辆的横向运动情况。从轮胎的角度来看,在研究车辆的动力学特性时具有十分重要的意义:例如,在实现纵向速度控制方面、以及实现横向航向稳定方面等具体应用领域中发挥着关键作用。

3.2 受力分析

正常情况下,车辆上的作用力沿着三个不同的轴分布:

  • 纵轴方向的力由推动力与阻力共同作用,并在滚摆运动中产生影响;
    • 横向方向上产生的转向力、离心效应及侧向气动 loads 导致车辆整体呈现俯仰姿态;
    • 垂直方向上产生的车身振动引起的纵向作用使车辆围绕立柱产生偏转或转向行为

车辆受力模型:

车辆受力模型

基于单车模型的基本假设,在此基础上作出以下假定后,则可较为简便地构建车辆的动力学模型

  • 仅关注纯侧偏轮胎特性而忽视了轮胎力在纵横向方向上的相互作用;
  • 采用单一车轮模型来模拟车辆运动轨迹时,默认载荷仅位于单一位置;
  • 不考虑横纵向空气动力学的影响;

车辆动力学模型:

基于图中所展示的内容可知,在固定在车身上的车辆坐标系oxyz中定义了一个三维空间;同时,在固定的地面惯性参考系OXY中也定义了一个二维平面空间

  • 横向运动:其源自横向风的压力分布以及行驶曲线时产生的离心效应。
    • 纵向运动:其受到总驱动阻力的影响,并且受到加速与减速等因素的影响。总驱动阻力主要来源于滚动摩擦产生的热量。
    • 滑移角:即为轮胎方向与轮胎速度方向之间的夹角。其产生原因在于车辆行驶过程中的牵引与侧向力相互作用导致轮胎偏离中心行驶路径。

上图中各符号定义:

在这里插入图片描述

根据牛顿第二定律,分别沿x轴、y轴和z轴作受力分析:

在x轴方向上:

m * a_x = Fxf + Fxr

在y轴方向上:

m * a_y = Fyf + Fyr

在z轴方向上:

Iz * ¨φ = a * Fyf - b * Fyr

其中 m 是整车的质量 Iz 是车辆绕 z 轴旋转时的转动惯量 x 方向上的运动(尤其是绕纵轴滚动的情况)暂无需考虑

3.3 横向动力学

(1)y轴方向上公式

车辆受力模型
在这里插入图片描述

(2)轮胎公式

由于轮胎受到的横向压力,轮胎会有一个很小的滑移角,如图所示

车辆受力模型

(2.1)前轮/后轮滑移角

滑移角与侧偏刚度的关系式:

在这里插入图片描述

(2.2)前轮/后轮速度方向

在这里插入图片描述

(2.3)动力学模型

在这里插入图片描述

(3)方向盘控制模型

上面提到,在实施横向控制时主要由轮胎转角的调节来实现;从驾驶员的角度看,则直接操控的是方向盘角度;因此,在构建车辆动力学模型的过程中可以用相对于道路的方向与距离误差的状态来构建动力学模型。

基于以下假设,则有:横向偏差定义为车辆质心至车道中心线的间距(记作e1),航向偏差定义为e2;同时已知纵向速度(记作Vx)及转弯半径(记作R)。

在这里插入图片描述
在这里插入图片描述

(4)方向盘控制的动力学模型

在这里插入图片描述

3.4 横向误差分析

(1)横向误差示意图

在这里插入图片描述

(2)横向误差表达式

在这里插入图片描述

参考链接

全部评论 (0)

还没有任何评论哟~