그라운드 임베디드 유튜브 구독

노트 / 제어공학

상태 공간 맛보기: 여러 상태를 한꺼번에

위치와 속도, 각도와 각속도처럼 여러 상태를 행렬 하나로 다루는 현대 제어. 밸런싱 로봇과 칼만 필터로 이어지는 출발점.

GROUND EMBEDDED · 정리 노트제어공학 10상태 공간 맛보기01상태 방정식02상태 피드백03관측기

상태 방정식

ẋ = A·x + B·u, y = C·x + D·u

  • x: 상태 벡터 (예: [각도, 각속도, 바퀴 위치, 바퀴 속도])
  • u: 입력 (모터 토크)
  • y: 측정 가능한 출력

전달함수는 입력 하나, 출력 하나를 다루기 좋고, 상태 공간은 여러 입출력과 내부 상태를 한꺼번에 다루기 좋습니다.

상태 피드백

모든 상태를 측정(또는 추정)할 수 있으면 u = -K·x로 제어합니다. K를 정하는 방법은

  • 극점 배치: 원하는 응답 속도에 맞게 폐루프 극점을 직접 지정
  • LQR: 상태 오차와 입력 크기의 비용을 정하고 최적 K를 계산

밸런싱 로봇은 각도 PID만으로도 서지만, LQR을 쓰면 각도와 바퀴 위치를 함께 고려해 제자리에 더 잘 섭니다.

관측기

측정할 수 없는 상태(속도를 직접 재지 못할 때)는 모델과 측정값으로 추정합니다. 노이즈까지 고려해 최적으로 추정하는 것이 칼만 필터이고, 센서리스 모터 제어의 회전자 위치 추정도 관측기입니다.

다음 단계

선형대수(행렬, 고유값)와 MATLAB/Python 도구가 필요합니다. PID로 충분한 문제에 굳이 쓰지 않되, 상태가 서로 얽힌 시스템에서 강력한 도구입니다.