우리는 드론에 가해지는 입력을 눈으로 보고(=visual feedback) rpyt값을 조절한다
이 때 Altitude방향의 Thrust
는 Horizontal 방향과 Vertical 방향의 두 힘으로 나눠짐
[가정]
altitude에는 오직 thrust만 영향을 미친다고 가정해보자
roll & pitch는 매우 작다고 가정
아래와 같이 z error만으로 제어가 가능하다
reference보다 밑에 있을 경우는 z_error > 0 이므로 드론이 상승하게 되고, 반대로 z_error < 0일 경우에는 하강하게 된다
이 방법의 문제점은 무엇일까??
바람(외력)이 불어서 드론이 기울어지면 복구할 방법이 없다
아라서 한 쪽으로 계속 가다가 추락하게 된다
Control diagram을 좀 더 자세하게 그려보자
각 성분마다 PID 제어기를 달아줬다
이 때 바람이 왼쪽으로 분다면 시계방향으로 roll
토크를 요구할 것이다
동시에 Thrust feedback으로 인해서 드론은 왼쪽 방향으로 이동하면서 복귀할 것이다
x,y position이라는 개념을 들고오자
드론이 현재 \((x,y)=(0,0)\) 이라는 Reference를 넣어보자
이 때 센서로부터 예측되는 \((\hat x, \hat y)\)를 이용해 error
를 계산한다
이 error를 계산해 xy평면에서의 값(Translation)과 yaw의 값(Rotation)을 가지고 이중 PID
제어기를 구성한다