二自由度车辆的运动学模型和动力学模型

二自由度车辆的运动学模型和动力学模型

最近刚接触自动驾驶相关的知识,得知像LQR、MPC这类基于模型的控制器,若想有不错的控制器性能,那么必须有比较精确的被控对象的数学模型。对于车辆这类被控对象的模型,经过一系列简化和在一些假设的情况下,可以将车辆简化成一个二自由度的模型,如下图所示是一个二自由度汽车模型,根据此模型建立其运行学和动力学模型。
二自由度车辆的运动学模型和动力学模型_第1张图片

二自由度车辆的运动学模型

首先建立运动学模型:
其中 v v v是小车的实际速度将其沿着 x , y x,y x,y轴进行分解,即将车体坐标系下的速度分解到笛卡尔坐标系下。
运用三角函数以及线速度和角速度的关系建立如下的运动学模型,
x ˙ = v c o s ( β + φ ) y ˙ = s i n ( β + φ ) ω = v R \dot{x} = vcos(\beta+\varphi) \\ \dot{y}=sin(\beta+\varphi) \\ \omega = \frac{v}{R} x˙=vcos(β+φ)y˙=sin(β+φ)ω=Rv
后轮到中心的距离为a,前轮到中心的距离为b且 a + b = l a+b=l a+b=l,根据三角函数中的正弦定理可知:
R s i n ( π 2 − δ r ) = a s i n ( δ r + β ) R s i n ( π 2 − δ f ) = b s i n ( δ 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 = l t a n ( δ f ) R = \frac{l}{tan(\delta_f)} R=tan(δf)l
最终得到二自由度车辆的运动学模型
x ˙ = v c o s ( φ ) y ˙ = s i n ( φ ) ω = v . t a n ( δ f ) l \dot{x} = vcos(\varphi) \\ \dot{y}=sin(\varphi) \\ \omega = \frac{v.tan(\delta_f)}{l} x˙=vcos(φ)y˙=sin(φ)ω=lv.tan(δf)

二自由度车辆的动力学模型

二自由度车辆的运动学模型和动力学模型_第2张图片
根据上图的二自由度车辆的模型从力以及转矩方面进行分解
x , y , z x,y,z x,y,z轴进行分析
m ( x ¨ − v y φ ˙ ) = F x r + F x f c o s ( δ ) − F y f s i n ( δ ) m ( y ¨ + v x φ ˙ ) = F y r + F y f c o s ( δ ) + F x f s i n ( δ ) I φ ¨ = ( F y f c o s ( δ ) + F x f s i n ( δ ) ) . b − F y r . a m(\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(δ)).bFyr.a
其中 F y r = C r . δ r F_{yr} = C_r.\delta_r Fyr=Cr.δr, F y f = C f . δ f F_{yf} = C_f.\delta_f Fyf=Cf.δf,而 C r , C f C_r,C_f Cr,Cf代表侧偏刚度。
下面将对 δ r 以 及 δ f \delta_r以及\delta_f δrδf进行计算
t a n ( δ r ) = φ ˙ a − v y v x t a n ( δ − δ f ) = φ ˙ b + v y v x tan(\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φ˙avytan(δδf)=vxφ˙b+vy
忽略前轮驱动力 F x f F_{xf} Fxf对横摆运动的影响 F x f s i n ( δ ) = 0 F_{xf}sin(\delta)=0 Fxfsin(δ)=0,当以前轮驱动的车辆作为研究目标时,后轮驱动力 F x r = 0 F_{xr} =0 Fxr=0.
最终写成状态空间方程的形式
二自由度车辆的运动学模型和动力学模型_第3张图片
至此,关于二自由度车辆的运动学模型和动力学模型推导完毕,下面将讲解控制器的设计。

主要参考忠厚老实的老王王老师的相关推导

你可能感兴趣的:(自动驾驶,算法)