ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • PID-FF Control
    Work 2017. 10. 31. 22:19

    PID 제어기는 오래전부터 사용해왔었는데 보트의 속도 제어에 사용할 때 부족함을 많이 느꼈다.

    특히, 제어 출력의 스윙 폭이 커서 속도 제어는 되지만 매끄러운 주행이 되지 않는 경우가 많았다.


    그 이유를 추측해 보면 몇가지가 있었다.

    • GPS에서 측정하는 위치 업데이트 주기가 10Hz로 느리다.
    • 모터 출력이 비선형적이다.
    • 보트 움직임에 관성이 크다.
    • 경로 추종시 갑작스러운 회전 입력이 자주 발생한다.

    이를 센서 융합기반 위치 추정과 경로 추종 알고리즘으로 해결하고자 하였다.
    그러나 센서는 주변 환경에 따라 원하지 않는 센서 데이터가 많이 발생하였다.

    그래서 PID 제어기에 open-loop 계산값을 추가하여 제어를 해보자고 생각해왔는데,
    PID 제어 게인을 제대로 튜닝해보지도 않고, 혹은 루틴을 최적화해 보지도 않고 꼼수를 쓴다고 생각했었다.

    그런데, PIFF 제어기가 항공기 러더 제어 코드에서 많이 보여서 찾아보니,
    open-loop 제어기를 제어 출력에 합치는 경우가 논문으로도 발표되었던 것이다.
    해보지도 않고 꼼수라는 생각을 했었는데, 오히려 PID 제어기에 비해 응답 특성이 좋아진다고 하니,
    이를 꼭 제어기에 반영해 보아야 겠다.

    PID-FF 제어기는 아래 그림과 같으며, 기존 PID 제어기에 FF 제어 결과를 합친것이다.



    https://www.controleng.com/single-article/feed-forwards-augment-pid-control/bdfe8880027d5de901623fb246e3745e.html

Designed by Tistory.