티스토리 뷰

 

Pure Pursuit 기법

  • 개요: 경로 제어 기법 중 하나로, 기하학(운동학)을 이용해 주어진 목표 경로를 추종하는 방식이다. 차량의 미끄러짐과 같은 다이나믹한 특성을 무시하므로, 타이어의 비선형성이 없는(미끄러짐이 없는) 움직임에 적절하다. 때문에 고속에서 방향을 트는 등 높은 횡방향 가속도가 발생하는 상황에는 맞지 않는 방식이다

구성요소

  • 자동차의 운동학: 먼저 차량은 Bicycle 모델을 기반으로 한다.
  • 전방목표점(Look-ahead Distance, $l$): 임의의 목표 지점부터 자동차의 뒷바퀴까지의 거리를 의미한다. 차량이 선회운동을 할 때 선회 궤적의 중심과 수직이 되는 곳이 뒷바퀴이기에 뒷바퀴를 기준으로 한다. 
  • 알파($\alpha$): $l$의 길이를 가지는 직선이 자동차 차체의 방향과 이루는 각도이다.

 

원리 및 제어:

목표 경로를 따라가기 위해 자동차의 바퀴를 얼마나 회전시킬지 정해야 한다.  

  • 목표 지점에 도달하기 위한 바퀴의 회전각도($\delta$)
    • 목표지점과의 거리 $l$과 각도 $\alpha$에 의해 계산할 수 있다.
    • 자동차 뒷바퀴, 목표지점, 선회운동의 중심점으로 이루어진 삼각형을 생각해보자.
    • 삼각함수 공식을 이용하면 다음과 같은 식을 얻을 수 있따.
      • $\frac{l}{\sin 2\alpha}=\frac{R}{\sin(\pi/2-\alpha)}$
      • $\frac{l}{2\sin \alpha\cos\alpha}=\frac{R}{\cos\alpha}$
      • 이때 $ \frac{l}{\sin \alpha}= 2R$ 처럼 선회반경의 2배가 된다. 
    • 곡률은 1/R이므로 $\kappa = \frac{1}{R} = \frac{2\sin\alpha}{l}$로 결정된다.
    • R을 결정했기에 최종 조향각을 결정할 수 있다.
      • $\delta=\tan ^{-1}\frac{L}{R}$ (L은 바퀴 사이 거리)이므로
    • $\delta = \tan^{-1}(\kappa L)=\tan^{-1}(\frac{2L\sin\alpha}{l})$로 계산된다.

다음으로 오차를 중점으로 살펴보다.
목표경로로 향할 때 오차를 줄이면서 가기 때문이다.

  • 횡방향 오차($e$)와 전방주시거리($l$)의 관계식은 $\sin\alpha = \frac{e}{l}$이며, 이를 선회반경 식에 대입하면 $\kappa = \frac{2}{l^2}e$가 된다.
    • 곡률은 에러e에 상수가 곱해진 형태로 볼 수 있다. 
    • 때문에 일종의 비례제어기 형태를 띤다.
    • 즉 조향각은 곡률에 의해 결정되고 곡률은 에러에 상수가 곱해진 형태다. -> 비례제어기 

전방목표점 l은 엔지니어가 설정하는 값이다.

  • $l$ 값이 너무 작으면 전방주시거리가 짧다는 것을 의미한다. 고속 주행 시 오차가 작더라도 조향값이 커져 위험한 상황이 발생할 수 있다.
  • 반대로 $l$ 값이 크면 조향각이 작아져 오차가 천천히 줄어들며 안정적인 주행이 가능하다. 따라서 고속에서는 $l$속도에 비례하는 함수($l = Kv_x$)로 설정하여 튜닝한다.

 


Stanley 기법

미국 스탠포드 대학의 Sebastian Thrun 교수 팀이 DARPA 그랜드 챌린지 자율주행차 횡단대회에서 Stanley 자동차로 우승할 때 사용한 기법이다.

Pure Pursuit과의 차이점:

  • Pure Pursuit은 뒷바퀴 중심을 기준점으로 두고 전방주시거리($l$)를 사용하여 횡방향 오차만을 고려한다.
  • Stanley 기법은 앞바퀴 중심을 기준점으로 설정한다.
  • 전방주시거리 없이 앞바퀴에서 발생하는 횡방향 오차($e$)와 헤딩 오차($\psi$)를 모두 고려한다.
  • 이로 인해 자동차의 승차감을 고려할 수 있다는 장점이 있다.

원리 및 응용:

  • 헤딩 오차 고려:
    • 헤딩 오차: 목표 경로와 차량의 축이 이루는 각도이다
    • 헤딩 오차를 없애기 위해 조향각을 $\delta = \psi$로 결정한다.
  • 횡방향 오차 고려:
    • 횡방향 오차 e: 자동차 앞바퀴까지의 수직 거리 ?
    • 조향각을 횡방향 오차에 비례하게 제어하되 차량의 속력($v_x$)에 따라 조향 속도가 과도하지 않도록 조절한다 ($\delta = \tan^{-1}(\frac{ke}{v_x})$).
    • 이때 k 엔지니어가 설정하는 튜닝 파라미터다.
  • 최종 조향각 수식:
    • 헤딩 오차와 횡방향 오차를 더하여 $\delta = \psi + \tan^{-1}(\frac{ke}{v_x})$가 된다[cite: 1].
      • 이때 횡방향 오차의 변화량은 $\dot{e}=\v_x \sin(\psi-\delta)$, 위 조향각을 대입하면
      • $\dot{e}=\v_x \sin(\tan^{-1}(\frac{ke}{v_x}))=\frac{-ke}{\sqrt{1+(\frac{ke}{v_x})^2}}$
      • e가 작다고 가정하면 분모는 1, 에러의 변화량은 $\dot{e}=-ke$라고 할 수 있다.
      • 이 미분방정식의 해는 지수함수 형
    • 이 제어 구조에서 오차의 변화량($\dot{e}$)은 시간이 지남에 따라 지수함수 형태($e^{-kt}$)로 감소하여 0으로 수렴하게 된다.

성능 향상 응용방식:

  • 속도 상수 추가: 속도가 0에 가까워질 때 분모가 0이 되어 조향각 변화가 비대해지는 현상을 방지하기 위해 분모에 소프트웨적인 상수 $h$를 추가한다 ($\delta = \psi + \tan^{-1}(\frac{ke}{h + v_x})$). 속도값이 작아도 분모가 0에 가까워져 델타가 커지는 것을 방지한다.
  • 댐핑 추가: 조향각도를 헤딩 오차와 횡방향 오차에 비례하도록 설계한 P 제어기 구조였다. 이러한 비례제어기 응답속도를 높이기 위 댐핑($k_d * \dot{\psi}$)을 추가하여 PD 제어기 형태로 발전시킨다. $\delta=k_p \psi + k_d \dot{\psi}+\tan^{-a}(\frac{ke}{v_x})$

 


다음 글에서 Full State Feedback 제어와 Linear Quadratic 제어에 대해 알아보겠다. 

 

 

자동차 횡방향 Full State Feedback & Linear Quadratic 제어기

이번에는 Full State Feedback 제어와 Linear Quadratic 제어기에 대해 수식적으로 알아보겠다. Full State Feedback 제어기 Full State Feedback 제어기는 상태변수를 이용한 제어 방식이다.시스템의 모든 상태변수($

studentstory.tistory.com

 

 

 

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/06   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함