Dynamic Model

정승균·2021년 2월 2일
0

자율주행 제어

목록 보기
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+lfixVF=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=XCGlrixVR=XR˙=VCGlrψ˙iy=vxix+(vylfψ˙)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=vylrψ˙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)αrvylrψ˙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(vylrψ˙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+vyiyA=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=mAyFyFyf+Fyr=Cαf(δvy+lfψ˙vx)+Cαr(vylrψ˙vx)andmAy=m(vy˙+ψ˙vx)  Cαf(δvy+lfψ˙vx)+Cαr(vylrψ˙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αrlrCαflfmvxvx)  ψ˙  +(Cαfm)  δ  y¨=(Cαf+Cαrmvx)  y˙+(CαrlrCαflfmvxvx)  ψ˙  +(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ψ¨τlfFyflrFyr=lfCαf(δvy+lfψ˙vx)lrCαr(vylrψ˙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αrlrCαflfIzvx)  vy  (Cαrlr2+Cαrlr2Izvx)  +(CαflfIz)  δ  ψ¨=(CαrlrCα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αrlrCαflfmvxvx)00010(CαrlrCα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+FxrFaeroRxfRxrmgsinθ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개의 댓글