2. 车辆运动学模型:自行车模型推导,前轮转角与横摆角速度的关系

好,我们进入第二个核心内容。

说实话,很多做车道保持的朋友,一上来就调PID参数,结果车在路上画龙。为什么?因为你不理解车是怎么动的。你想想看,你连控制对象都不了解,怎么控得好?

我个人习惯,做任何控制算法之前,先把模型搞清楚。哪怕是个简化模型,也比瞎调强。今天我们就来推导最经典的自行车模型,搞明白前轮转角和横摆角速度到底什么关系。

2.1 为什么要用自行车模型?

真实车辆有四个轮子,转向系统复杂得很。但在车道保持这种场景下,我们关心的是车辆的整体运动趋势,而不是每个轮子的受力细节。

自行车模型的核心思想很简单:把左右两个前轮合并成一个虚拟前轮,左右两个后轮合并成一个虚拟后轮。这样一来,四轮车就变成了两轮车。嗯,就像你骑的自行车一样。

适用条件:

  • 车速不太低(一般 > 5 km/h)
  • 侧向加速度不大(一般 < 0.4g)
  • 轮胎侧偏特性在线性区

我在项目中遇到过,低速泊车场景下自行车模型误差很大,那时候得用更复杂的运动学模型。但车道保持场景,车速通常30km/h以上,自行车模型完全够用。

2.2 模型推导:从几何关系说起

我们先画个图(脑子里想一下):

  • 车辆质心在C点
  • 前轮到质心的距离叫L_f,后轮到质心的距离叫L_r
  • 轴距 L = L_f + L_r
  • 前轮转角为 δ(就是我们控制的方向盘转角折算到车轮的转角)
  • 车辆横摆角速度为 ω(也就是车头转动的快慢)
  • 车速为 v,质心侧偏角为 β

好,关键来了。在自行车模型中,我们假设:

  1. 车辆是刚体,不会变形
  2. 轮胎只发生侧偏,没有纵向滑移
  3. 忽略空气动力学(车速不高时影响不大)

根据几何关系,前轮的速度方向必须沿着前轮指向的方向。后轮也一样。由此可以推导出:

tan(δ) = (L_f + L_r) * ω / v

这个公式看着简单,但它是整个车道保持控制的基础。我当年第一次看到这个公式时,觉得太简单了,结果在实车上吃了大亏——因为忽略了质心侧偏角β。

避坑指南:

我曾经在高速测试时,直接用这个公式算前轮转角,结果车在弯道里一直偏外。后来才发现,质心侧偏角β在高速大弯道时不能忽略。正确的公式应该是:

tan(δ) = (L_f + L_r) * ω / v + β

嗯,这个β就是质心速度方向与车身纵轴的夹角。低速时可以近似为0,但高速时必须考虑。

2.3 前轮转角与横摆角速度的关系

从上面公式反解出横摆角速度ω:

ω = v * tan(δ) / L

其中 L = L_f + L_r,就是轴距。

这个关系太重要了。它告诉我们:

  • 横摆角速度与车速成正比——车速越快,同样的转角产生的横摆角速度越大
  • 横摆角速度与轴距成反比——轴距越长,同样的转角产生的横摆角速度越小
  • 横摆角速度与前轮转角是非线性关系(tan函数)

你想想看,为什么大卡车转弯那么费劲?就是因为轴距L大,同样的转角产生的横摆角速度小。反过来,卡丁车轴距短,稍微打点方向就转过去了。

2.4 线性化处理

在实际控制中,我们经常需要把模型线性化。当δ比较小时(一般 < 10°),tan(δ) ≈ δ。于是:

ω ≈ v * δ / L

这个线性化后的模型,就是PID控制和LQR控制的基础。但要注意:

我的经验:

在车道保持中,前轮转角通常不会超过5°,所以线性化误差可以接受。但如果你做的是自动泊车或者急转弯避障,千万别用线性化模型,否则控制效果会一塌糊涂。

我曾经在一个项目中,同事直接用线性模型做急转弯控制,结果车直接冲出了车道。后来换成非线性模型,问题就解决了。

2.5 状态空间表达

为了后续的LQR控制,我们需要把模型写成状态空间形式。选择状态变量:

  • 横向偏差 e_y(车辆质心到参考车道中心线的距离)
  • 航向偏差 e_ψ(车辆实际航向与参考航向的差值)

那么状态方程为:

d/dt [e_y]   = [0   v] [e_y]   + [0  ] δ
     [e_ψ]     [0   0] [e_ψ]     [v/L]

这个形式看着简单,但它是后续设计LQR控制器的基础。我建议你把这张表记下来:

参数 符号 典型值(乘用车) 单位
轴距 L 2.5 - 3.0 m
前轮到质心距离 L_f 1.0 - 1.5 m
后轮到质心距离 L_r 1.0 - 1.5 m
最大前轮转角 δ_max 30 - 40 deg
典型车道保持车速 v 30 - 120 km/h

2.6 小结与思考

好了,我们来捋一捋今天的内容:

  1. 自行车模型把四轮车简化为两轮车,适用于车道保持场景
  2. 核心公式:ω = v * tan(δ) / L,这是前轮转角与横摆角速度的关系
  3. 小转角时可以线性化:ω ≈ v * δ / L
  4. 状态空间模型为LQR控制做好了准备

最后留个思考题:如果车辆在冰雪路面上行驶,轮胎侧偏特性进入非线性区,自行车模型还适用吗?如果不适用,你会怎么改进?

这个问题我当年在实车测试时遇到过,答案我们下一章再聊。

下一章预告:

我们将基于这个自行车模型,分别设计PID控制器和LQR控制器,并在仿真环境中对比它们的表现。你会看到,同样的模型,不同的控制策略,效果天差地别。