Apollo Control——超详细入门教程(一):基于道路误差的车辆动力学模型

专栏文章列表

Apollo Control——超详细入门教程(一):基于道路误差的车辆动力学模型

Apollo Control——超详细入门教程(二):连续状态空间方程离散化与离散LQR公式推导

Apollo Control——超详细入门教程(三):基于Frenet坐标系及XY坐标系的多项式轨迹生成

Apollo Control——超详细入门教程(四):控制模块轨迹误差计算

Apollo Control——超详细入门教程(五):油门刹车标定表之双线性插值算法

Apollo Control——超详细入门教程(六):MPC二次规划问题转化(OSQP)

Apollo Control——超详细入门教程(七):基于运动学模型的MPC

目录

一、前言 

二、公式推导

2.1、二自由度车辆动力学模型推导

2.2、基于道路误差的车辆动力学模型

 三、总结


一、前言 

笔者最近学习了Apollo Control模块的相关理论知识,并阅读了相关源码,有了一些收获和心得体会。个人认为从Apollo开源项目入手,结合代码来学习相关知识,将是一个比较好的学习方法。本专栏将从此思路出发,主要介绍相关的理论知识,帮助大家完善理论基础.

本专栏将完成一些必要的公式推导,由于相关的公式有很多,全部通过公式编辑器进行输入的话可能会浪费太多的时间,鉴于这部分我已经整理了详细的笔记,所以我会将笔记内容以图片的形式进行上传。如果大家感兴趣的话,可以详细看下公式的推导过程,如果不太关注推导过程的话,也可以先记住关键的结论,我将对需要着重注意的部分进行说明,在代码阅读阶段遇到相关问题时,再回过头来查阅笔记,这样也是可以的。

本节内容为试读部分,将推导基于道路误差的车辆动力学模型,如果大家觉得有所收获的话,欢迎订阅专栏学习后续内容。祝大家学习愉快!

二、公式推导

Apollo控制模块的理论来源是《Vehicle Dynamics and Control》这本书,下述推导过程和此书是一致的,并对书中省略的推导过程进行了补充。

2.1、二自由度车辆动力学模型推导

大家看下笔记图片可还清晰?如果哪里没有拍清楚,请评论区留言,我会重新拍照上传。

 专栏后续文章中理论推导部分的形式便会是这样,首先上传详细的公式推导笔记,然后对其中的关键部分进行说明。对于二自由度车辆动力学模型推导,大家需要掌握最终的推导结果,即这个用状态空间方程形式表示的公式:

还有几个地方需要说明:

1)需要注意轮胎侧偏刚度永远为负数,这是由轮胎坐标系的定义决定的:即正的侧偏力对应负的侧偏角。同时,侧偏刚度一般为同轴两侧车轮侧偏刚度的和,详细内容请翻阅《汽车理论》。那为什么上述推导中注释侧偏刚度应带入正值呢?

汽车理论中轮胎坐标系为右手坐标系,给出的轮胎侧偏力的计算公式如下。如下图所示,侧偏角为一负值,乘以负的侧偏刚度,得到正的侧偏力

  

而Apollo代码中的轮胎坐标系应该是采用了左手坐标系,如下图所示。侧偏角为一正值,乘以正的侧偏刚度,再乘以-2,得到负的侧偏力

因此在阅读Apollo代码时,就默认侧偏刚度为正了。

2)二自由度车辆动力学模型的推导过程做了小角度假设,因此不太适合于像倒车入库这种前轮转角较大的工况,该工况可考虑使用基于几何关系推导的运动学模型。

2.2、基于道路误差的车辆动力学模型

在优化问题的求解中,一般将状态方程的状态量写为偏差的形式,因此需要推导基于道路误差的车辆动力学模型。

 

最终推导结果如下所示:

需要注意的有几点:

1)一般规划模块给出的轨迹比较平滑,因此公式的最后一项(即用红框标注的部分)通常较小,可忽略不计。

2)Apollo代码中部分变量的值可能与上图公式中差了2倍,这是因为公式推导中侧偏刚度为单个轮胎的侧偏刚度,而Apollo则是带入了两侧轮胎侧偏刚度之和。

 三、总结

 该节推导了基于道路误差的车辆动力学模型,该模型可用于Apollo中LQR以及MPC问题的建模。如果觉得对你有帮助的话,欢迎点赞、收藏、订阅,下期再见!

  • 17
    点赞
  • 77
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
根据引用\[1\]和引用\[3\],车辆的横纵向耦合误差动力学模型可以描述为以下几个方程: 在x轴方向上,车辆的加速度可以表示为前轮纵向力Fxf和后轮纵向力Fxr之和,即ma_x = Fxf + Fxr。\[3\] 在y轴方向上,车辆的加速度可以表示为前轮横向力Fyf和后轮横向力Fyr之和,即ma_y = Fyf + Fyr。\[3\] 在z轴方向上,车辆绕z轴的转动惯量Iz乘以车辆航向角的二阶导数φ¨等于前轮横向力Fyf乘以车辆前轮距离a减去后轮横向力Fyr乘以车辆后轮距离b,即Izφ¨ = aFyf - bFyr。\[3\] 其中,m为车辆质量,φ为车辆航向角,Iz为车辆绕z轴的转动惯量,a为车辆前轮距离,b为车辆后轮距离。\[3\] 综上所述,车辆的横纵向耦合误差动力学模型可以通过以上方程来描述。 #### 引用[.reference_title] - *1* *3* [Apollo学习笔记(8)车辆动力学模型](https://blog.csdn.net/qq_24649627/article/details/107206580)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [自动驾驶横纵向耦合控制-复现Apollo横纵向控制](https://blog.csdn.net/2301_77012556/article/details/129524418)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凉了鸭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值