二自由度车辆的运动学模型和动力学模型
二自由度车辆的运动学模型和动力学模型
最近刚接触自动驾驶相关的知识,得知像LQR、MPC这类基于模型的控制器,若想有不错的控制器性能,那么必须有比较精确的被控对象的数学模型。对于车辆这类被控对象的模型,经过一系列简化和在一些假设的情况下,可以将车辆简化成一个二自由度的模型,如下图所示是一个二自由度汽车模型,根据此模型建立其运行学和动力学模型。
二自由度车辆的运动学模型
首先建立运动学模型:
其中vvv是小车的实际速度将其沿着x,yx,yx,y轴进行分解,即将车体坐标系下的速度分解到笛卡尔坐标系下。
运用三角函数以及线速度和角速度的关系建立如下的运动学模型,
x˙=vcos(β+φ)y˙=sin(β+φ)ω=vR\dot{x} = vcos(\beta+\varphi) \\ \dot{y}=sin(\beta+\varphi) \\ \omega = \frac{v}{R} x˙=vcos(β+φ)y˙=sin(β+φ)ω=Rv
后轮到中心的距离为a,前轮到中心的距离为b且a+b=la+b=la+b=l,根据三角函数中的正弦定理可知:
Rsin(π2−δr)=asin(δr+β)Rsin(π2−δf)=bsin(δf−β)\frac{R}{sin(\frac{\pi}{2}-\delta_r)} = \frac{a}{sin(\delta_r+\beta)} \\ \frac{R}{sin(\frac{\pi}{2}-\delta_f)} = \frac{b}{sin(\delta_f-\beta)} sin(2π−δr)R=sin(δr+β)asin(2π−δf)R=sin(δf−β)b
考虑在低速的情况下,车不会发生侧向滑动,后轮不发生转向即δr=0,β=0\delta_r =0,\beta =0δr=0,β=0
则得到
R=ltan(δf)R = \frac{l}{tan(\delta_f)}R=tan(δf)l
最终得到二自由度车辆的运动学模型
x˙=vcos(φ)y˙=sin(φ)ω=v.tan(δf)l\dot{x} = vcos(\varphi) \\ \dot{y}=sin(\varphi) \\ \omega = \frac{v.tan(\delta_f)}{l} x˙=vcos(φ)y˙=sin(φ)ω=lv.tan(δf)
二自由度车辆的动力学模型
根据上图的二自由度车辆的模型从力以及转矩方面进行分解
在x,y,zx,y,zx,y,z轴进行分析
m(x¨−vyφ˙)=Fxr+Fxfcos(δ)−Fyfsin(δ)m(y¨+vxφ˙)=Fyr+Fyfcos(δ)+Fxfsin(δ)Iφ¨=(Fyfcos(δ)+Fxfsin(δ)).b−Fyr.am(\ddot{x} -v_y\dot{\varphi})=F_{xr}+F_{xf}cos(\delta)-F_{yf}sin(\delta) \\ m(\ddot{y} +v_x\dot{\varphi})=F_{yr}+F_{yf}cos(\delta)+F_{xf}sin(\delta) \\ I \ddot{\varphi} = (F_{yf}cos(\delta)+F_{xf}sin(\delta)).b-F_{yr}.a \\ m(x¨−vyφ˙)=Fxr+Fxfcos(δ)−Fyfsin(δ)m(y¨+vxφ˙)=Fyr+Fyfcos(δ)+Fxfsin(δ)Iφ¨=(Fyfcos(δ)+Fxfsin(δ)).b−Fyr.a
其中Fyr=Cr.δrF_{yr} = C_r.\delta_rFyr=Cr.δr,Fyf=Cf.δfF_{yf} = C_f.\delta_fFyf=Cf.δf,而Cr,CfC_r,C_fCr,Cf代表侧偏刚度。
下面将对δr以及δf\delta_r以及\delta_fδr以及δf进行计算
tan(δr)=φ˙a−vyvxtan(δ−δf)=φ˙b+vyvxtan(\delta_r) = \frac{\dot{\varphi}a-v_y}{v_x} \\ tan(\delta-\delta_f ) = \frac{\dot{\varphi}b+v_y}{v_x}tan(δr)=vxφ˙a−vytan(δ−δf)=vxφ˙b+vy
忽略前轮驱动力FxfF_{xf}Fxf对横摆运动的影响Fxfsin(δ)=0F_{xf}sin(\delta)=0Fxfsin(δ)=0,当以前轮驱动的车辆作为研究目标时,后轮驱动力Fxr=0F_{xr} =0Fxr=0.
最终写成状态空间方程的形式
至此,关于二自由度车辆的运动学模型和动力学模型推导完毕,下面将讲解控制器的设计。
主要参考忠厚老实的老王王老师的相关推导
二自由度车辆的运动学模型和动力学模型相关推荐
- 车辆运动学模型到动力学模型推导
车辆运动学模型到动力学模型推导 参考 https://www.bilibili.com/video/BV1St411A7nH/?spm_id_from=333.788.recommend_more_v ...
- 二自由度车辆动力学微分方程详细推导过程
- 车辆动力学知识总结(三) 二自由度动力学模型
车辆动力学知识总结(三) 二自由度动力学模型 目录 1 轮胎侧偏特性 1.1 侧偏力和侧偏角 1.2 轮胎侧偏刚度获取 2 二自由度车辆动力学模型(两轮侧向动力学模型) 2.1 侧向加速度 2.2 车 ...
- Apollo代码学习(二)—车辆运动学模型
Apollo代码学习-车辆运动学模型 前言 车辆模型 单车模型(Bicycle Model) 车辆运动学模型 阿克曼转向几何(Ackerman turning geometry) 小结 Apollo( ...
- Matlab-simulink汽车二自由度模型
目录 目录 汽车二自由度模型简介 汽车二自由度模型推导 Matlab-simulink汽车二自由度模型 参数 汽车二自由度模型简介: 常用的动力学模型有2.3.5.7等自由度,其中二自由度模型虽然最为 ...
- 汽车二自由度模型公式推导及simulink模型——传递函数、状态空间
文章目录 二自由度车辆方程 传递函数法 状态空间 二自由度车辆方程 为便于掌握操纵稳定性的基本特性,我们将一对简化为线性二自由度的汽车模型进行研究,分析中忽略一下几点: 1.忽略转向系统的影响,直接以 ...
- ROS学习记录(二)阿克曼转向车运动学模型及在gazebo中搭建仿真环境
前言:该篇是ROS学习记录的第二篇,如果还没关注过之前文章的读者,如有需要可以通过下方传送门去看之前的文章: ROS学习记录(一) Plugin插件 这两天关注了古月老师的公众号,看到了其中一篇课程推 ...
- 【自动驾驶】车辆运动学模型
文章目录 参考资料 1. 以车辆重心为中心的单车运动学模型 1.1 参数说明 1.2 几何关系 1.2.1 偏航角ψ\psiψ的关系 1.2.1 滑移角 β\betaβ 的关系 1.2.2 运动学模型 ...
- 自动驾驶控制算法——车辆运动学模型
车辆运动学模型 自行车模型(Bicycle Model) 自行车模型(Bicycle Model)的建立基于如下假设: 不考虑车辆在垂直方向(Z轴方向)的运动,即假设车辆的运动是一个二维平面上的运动; ...
最新文章
- FFmpeg #39;scale#39; filter not present, cannot convert pixel formats.
- 高动态范围图像-单图
- LeetCode算法题11:递归和回溯-解数独
- 数据结构实验之链表三:链表的逆置
- asp.net MVC Session 第二次加载丢失问题
- 如何判断程序员是在装逼还是有真本事?
- git idea 图形化_Git大全,你所需要的Git资料都在这里
- JDK8HashMap的扩容核心解读,尾插法
- 日志分析工具 Log Parser
- 找出数组中只出现一次的数
- Java案例:Swing摇奖器
- C++处理有道单词导出单词本
- 在Linux下查询外网IP的几种方法
- 计算生辰八字五行属性的算法
- vue中使用图片裁切器
- 我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。 现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数
- NSSCTF部分复现
- 为何64位的.NET程序不能申请超过2G的空间
- 基于JAVA校内图书馆智能管理系统计算机毕业设计源码+数据库+lw文档+系统+部署
- 2023最新素材解析网站源码搭建和原理,附带PHP小例子。
热门文章
- nn.Module、nn.Sequential和torch.nn.parameter学习笔记
- Wifi密码 (10分)
- TP-Link wr703n 刷Openwrt始末
- 由13位数字组成的中国标准书号校验码计算实例
- 基于Gevent的firefly重要迭代版本推出
- linux 命令之jq
- Calculator Conundrum UVA - 11549(floyd判圈)
- 【MySQL】16-超详细的MySQL单行函数汇总
- 服务器 文件系统,服务器硬盘文件系统
- GitChat·技术管理 | Cynefin 框架和不确定性管理思维