Dynamic Model

정승균·2021년 2월 2일

자율주행 제어

목록 보기
2/8
post-thumbnail
  • 공기저항, road friction, slip 등을 고려하여 Kinematic 모델보다 높은 fidelity를 갖음

tire model


  • tire slip angle이 5도 이내에서는 선형적으로 근사 가능

Fyf=CαfαfFyr=CαrαrF_{yf} = C_{\alpha f}\alpha_f \\ F_{yr} = C_{\alpha r}\alpha_r

  • 레이싱카 같은 slip angle의 범위가 넓은 경우 Pacejka tire model를 씀


Ⅰ. lateral dynamics

Assumptions :

  1. small steer angle at front wheel
  2. 0 steer angle at rear wheel
  3. v_x is constant
  4. linear tire model
  • Front Wheel 의 속도 xy좌표로 계산
XF⃗=XCG⃗+lfix⃗VF⃗=XF⃗˙=VCG⃗+lfψ˙iy⃗=vxix⃗+(vy+lfψ˙)iy⃗...(1)\vec{X_F} = \vec{X_{CG}} + l_f\vec{i_x}\\ \vec{V_F} = \dot{\vec{X_F}} = \vec{V_{CG}} + l_f\dot{\psi}\vec{i_y} = v_x\vec{i_x} + (v_y + l_f\dot{\psi})\vec{i_y} \quad ...(1)

  • Rear Wheel 의 속도 xy좌표로 계산
XR⃗=XCG⃗−lrix⃗VR⃗=XR⃗˙=VCG⃗−lrψ˙iy⃗=vxix⃗+(vy−lfψ˙)iy⃗...(2)\vec{X_R} = \vec{X_{CG}} - l_r\vec{i_x}\\ \vec{V_R} = \dot{\vec{X_R}} = \vec{V_{CG}} - l_r\dot{\psi}\vec{i_y} = v_x\vec{i_x} + (v_y - l_f\dot{\psi})\vec{i_y} \quad ...(2)

  • (1), (2)의 x축 y축 속도와 slip angle의 정의에 의해서
tan⁡(δ−αf)=vfyvfx=vy+lfψ˙vxtan⁡(−αr)=vryvrx=vy−lrψ˙vx\tan{(\delta - \alpha _f)} = \frac{v_{fy}}{v_{fx}} = \frac{v_y + l_f\dot{\psi}}{v_x}\\ \tan{(-\alpha _r)} = \frac{v_{ry}}{v_{rx}} = \frac{v_y - l_r\dot{\psi}}{v_x}
  • 작은 각도로 가정하였으므로
αf≈δ−vy+lfψ˙vx...(3)αr≈−vy−lrψ˙vx...(4)\alpha_f \approx \delta - \frac{v_y + l_f\dot{\psi}}{v_x} \quad ...(3)\\ \alpha_r \approx -\frac{v_y - l_r\dot{\psi}}{v_x} \quad ...(4)

  • linear tire model와 (3), (4)에 의해 (5도 이내의 tire slip angle)
Fyf=Cαfαf=Cαf(δ−vy+lfψ˙vx)...(5)Fyr=Cαrαr=Cαr(−vy−lrψ˙vx)...(6)F_{yf} = C_{\alpha f}\alpha_f = C_{\alpha f}(\delta - \frac{v_y + l_f\dot{\psi}}{v_x}) \quad ...(5) \\ F_{yr} = C_{\alpha r}\alpha_r = C_{\alpha r}(-\frac{v_y - l_r\dot{\psi}}{v_x}) \quad ...(6)
  • y 축 가속도 계산
V⃗=vxix⃗+vyiy⃗A⃗=V⃗˙=(vx˙+ψ˙vy)ix⃗+(vy˙+ψ˙vx)iy⃗∴  Ay=vy˙+ψ˙vx...(7)\vec{V} = v_x\vec{i_x} + v_y\vec{i_y}\\ \vec{A} = \dot{\vec{V}} = (\dot{v_x}+\dot\psi v_y)\vec{i_x} + (\dot{v_y}+\dot\psi v_x)\vec{i_y} \\ \therefore \; A_y = \dot{v_y}+\dot\psi v_x \quad ...(7)

  • Translation 운동 방정식과 (5), (6), (7) 에 의해서
∑Fy=mAy∑Fy≈Fyf+Fyr=Cαf(δ−vy+lfψ˙vx)+Cαr(−vy−lrψ˙vx)andmAy=m(vy˙+ψ˙vx)∴  Cαf(δ−vy+lfψ˙vx)+Cαr(−vy−lrψ˙vx)=m(vy˙+ψ˙vx)\sum F_y = mA_y\\ \sum F_y \approx F_{yf} + F_{yr} = C_{\alpha f}(\delta - \frac{v_y + l_f\dot{\psi}}{v_x}) + C_{\alpha r}(-\frac{v_y - l_r\dot{\psi}}{v_x}) \quad and \quad mA_y = m(\dot{v_y}+\dot\psi v_x) \\ \therefore \; C_{\alpha f}(\delta - \frac{v_y + l_f\dot{\psi}}{v_x}) + C_{\alpha r}(-\frac{v_y - l_r\dot{\psi}}{v_x}) = m(\dot{v_y}+\dot\psi v_x) \quad

  • 이 식을 정리하면
v˙y=−(Cαf+Cαrmvx)  vy+(Cαrlr−Cαflfmvx−vx)  ψ˙  +(Cαfm)  δ∴  y¨=−(Cαf+Cαrmvx)  y˙+(Cαrlr−Cαflfmvx−vx)  ψ˙  +(Cαfm)  δ...(8)\dot v_y = -(\frac{C_{\alpha f}+C_{\alpha r}}{mv_x})\;v_y + (\frac{C_{\alpha r}l_r - C_{\alpha f}l_f}{mv_x} -v_x)\;\dot \psi \; + (\frac{C_{\alpha f}}{m})\; \delta \\ \therefore \; \ddot y = -(\frac{C_{\alpha f}+C_{\alpha r}}{mv_x})\;\dot y + (\frac{C_{\alpha r}l_r - C_{\alpha f}l_f}{mv_x} -v_x)\;\dot \psi \; + (\frac{C_{\alpha f}}{m})\; \delta \quad ...(8) \\

  • Rotation 운동 방정식과 (5), (6) 에 의해서
∑τ=Izψ¨∑τ≈lfFyf−lrFyr=lfCαf(δ−vy+lfψ˙vx)−lrCαr(−vy−lrψ˙vx)=Izψ¨\sum \tau = I_z\ddot \psi \\ \sum \tau \approx l_f F_{yf} - l_r F_{yr} = l_f C_{\alpha f}(\delta - \frac{v_y + l_f\dot{\psi}}{v_x}) - l_rC_{\alpha r}(-\frac{v_y - l_r\dot{\psi}}{v_x}) = I_z\ddot \psi

  • 이 식을 정리하면
ψ¨=(Cαrlr−CαflfIzvx)  vy  −(Cαrlr2+Cαrlr2Izvx)  +(CαflfIz)  δ∴  ψ¨=(Cαrlr−CαflfIzvx)  y˙  −(Cαrlr2+Cαrlr2Izvx)  +(CαflfIz)  δ...(9)\ddot \psi = (\frac{C_{\alpha r}l_r - C_{\alpha f}l_f}{I_z v_x})\;v_y \; - (\frac{C_{\alpha r}{l_r}^2 + C_{\alpha r}{l_r}^2}{I_z v_x}) \; + (\frac{C_{\alpha f}l_f}{I_z})\; \delta\\ \therefore \; \ddot \psi = (\frac{C_{\alpha r}l_r - C_{\alpha f}l_f}{I_z v_x})\;\dot y \; - (\frac{C_{\alpha r}{l_r}^2 + C_{\alpha r}{l_r}^2}{I_z v_x}) \; + (\frac{C_{\alpha f}l_f}{I_z})\; \delta \quad ...(9)

  • (8), (9)를 이용한 state-space-representation
ddt[yy˙ψψ˙]=[01000−(Cαf+Cαrmvx)0(Cαrlr−Cαflfmvx−vx)00010(Cαrlr−CαflfIzvx)0−(Cαrlr2+Cαrlr2Izvx)][yy˙ψψ˙]+[0(Cαfm)0(CαflfIz)]δ\frac{d}{dt} \begin{bmatrix} y\\ \dot y\\ \psi\\ \dot \psi \end{bmatrix} = \begin{bmatrix} 0 & 1 & 0 & 0\\ 0 & -(\frac{C_{\alpha f}+C_{\alpha r}}{mv_x}) & 0 & (\frac{C_{\alpha r}l_r - C_{\alpha f}l_f}{mv_x} -v_x) \\ 0 & 0 & 0 & 1\\ 0 & (\frac{C_{\alpha r}l_r - C_{\alpha f}l_f}{I_z v_x}) & 0 & -(\frac{C_{\alpha r}{l_r}^2 + C_{\alpha r}{l_r}^2}{I_z v_x}) \end{bmatrix} \begin{bmatrix} y\\ \dot y\\ \psi\\ \dot \psi \end{bmatrix} + \begin{bmatrix} 0\\ (\frac{C_{\alpha f}}{m})\\ 0\\ (\frac{C_{\alpha f}l_f}{I_z}) \end{bmatrix} \delta

Ⅲ. longitudinal dynamics


mx¨=Fxf+Fxr−Faero−Rxf−Rxr−mgsin⁡θm\ddot{x} = F_{xf}+F_{xr} -F_{aero} - R_{xf} -R_{xr} -mg\sin{\theta}

1. 공기저항

  • Faero=12ρV2CDAF_{aero} = \frac{1}{2}\rho V^2 C_D A

2. 구름저항

  • Rx=frWR_x = f_rW (frf_r 은 공기압과 차량속도에 의해 결정됨)

3. Powertrain

  • 수식으로 표현하기 복잡하므로 3d plot을 사용함


0개의 댓글