28.6.2. 고정익(Fixed-wing, FW): 에너지 보존 법칙 기반의 결합 제어(Coupled Control) 모드
로터의 회전력만으로 모든 방향의 움직임을 통제할 수 있는 멀티로터와 달리, 고정익(비행기)은 날개(Wing)에서 발생하는 양력(Lift)에 전적으로 의존한다. 양력을 발생시키려면 기체는 대기구름(Air) 속을 끊임없이 전진해야 하며, 이 과정에서 고도(Altitude)와 속도(Airspeed)는 중력과 추력이라는 매개변수를 통해 서로 끊임없이 에너지를 교환하는 강한 결합(Coupled) 상태에 놓이게 된다.
PX4-Autopilot의 고정익 제어 모드 아키텍처는 이러한 물리적 한계점, 즉 “수평 제어와 수직 제어를 결코 독립적으로 분리할 수 없다“는 명제를 해결하기 위해 총 에너지 제어 시스템(TECS, Total Energy Control System) 에 기반한 고유의 모드 파이프라인을 구축하였다. 본 절에서는 이 결합 제어 모드의 핵심 철학을 분석한다.
1. 개요: 고정익 제어의 딜레마 (Coupling Problem)
비행 중인 고정익 기체에서 조종사가 고도를 높이기 위해 승강타(Elevator)를 당겨 기체 기수(Pitch)를 들어 올렸다고 가정해 보자.
기체는 일시적으로 위로 솟구치겠지만(고도 상승), 날개의 받음각(Angle of Attack)이 커짐에 따라 공기 저항이 급증하여 전진 속도(Airspeed)는 깎여 나간다. 속도가 실속 속도(Stall Speed) 이하로 떨어지면 기체는 양력을 잃고 통제 불능 추락 상태로 빠지게 된다. 반대로 속도를 높이려고 기수를 숙이면 고도를 까먹게 된다.
이처럼 고정익에 있어서 피치(Pitch) 조작은 곧 “고도와 속도 간의 위치 에너지 / 운동 에너지 교환기” 이며, 스로틀(Throttle) 조작은 “시스템 전체의 에너지를 채워 넣는 펌프” 역할을 한다.
따라서 단순히 Z루프 따로, XY루프 따로 계산하여 융합하던 멀티로터형(MC) 모드 설계로는 고정익 제어가 절대 불가능하게 된다.
2. L1 항법(L1 Navigation) 기반 수평 제어
고정익은 멀티로터처럼 제자리 정지(Hovering)를 할 수 없기에, Position 모드나 Mission 모드 시 무조건 수십 미터 반경의 원형이나 큰 8자 형태로 계속 하늘을 선회(Loiter)해야 한다. 이를 위해 PX4는 수평(XY 궤적) 궤적 제어기 프론트엔드로 전통적인 L1 항법 알고리즘(L1 Navigation Controller) 을 사용한다.
L1 컨트롤러는 기체의 전진 속도(Ground Speed)와 궤적 사이의 거리를 계산하여 목표 지점으로 매끄럽게 빨려 들어가는 궤도 곡선을 생성한다.
- 목표 계산: 목표 웨이포인트(Waypoint)를 향한 수평적 조향(Steering) 각도 도출
- 출력(Output): 기체를 좌/우로 눕히기 위한 목표 롤 각도(Roll Setpoint, \phi_{sp}) 생성
즉 고정익의 궤적 제어에서 XY축 평면 도달 목적은 Roll 각도 제어기라는 단일 하위 시스템으로 100% 매핑되어 이관(Offload)된다.
3. TECS 시스템을 통한 수직(Z) & 속도 결합 제어
롤 각도가 수평 선회를 책임지는 동안, 기체가 추락하지 않고 오르락내리락하는 고도/속도의 제어는 백엔드인 TECS(Total Energy Control System) 모듈로 통째로 인가된다.
커맨더 모듈이 Mission이나 Position 모드의 플래그를 올려주면, fw_pos_control_l1 모듈(또는 최근 PX4 버전의 FlightTaskFixedwing)은 목표 고도와 목표 대기속도를 꺼내 TECS 모듈에 타겟으로 던져준다.
3.1 총 에너지(Specific Total Energy)의 계산
TECS는 기체의 현재 운동 에너지(속도)와 위치 에너지(고도)의 합인 ’총 에너지’를 추적한다.
E_{total} = \frac{1}{2} v^2 + g h
- 목표 고도(h_{sp})와 목표 속도(v_{sp})를 달성하기 위해 필요한 전체 에너지가 현재 기체가 가진 에너지보다 큰가, 작은가를 판별한다.
3.2 스로틀(Throttle)과 피치(Pitch)의 동시 믹싱 분배
TECS는 도출된 에너지 오차(Energy Error)와 에너지 분배 오차(Energy Balance Error)를 바탕으로, 스로틀과 피치 승강타 명령을 병렬적으로 동시에 계산해 낸다.
- 스로틀(Throttle)의 역할: 총 에너지가 부족하면(고도도 높여야 하고 속도도 높여야 할 때) 모터(엔진) 회전수를 높여 에너지를 외부로부터 시스템에 주입한다. 반대결과로는 엔진을 끄거나 에어브레이크를 전개한다.
- 피치(Pitch)의 역할: 에너지를 분배한다. 총 에너지는 맞지만 속도가 너무 빠르고 고도가 낮다면, 피치를 당겨 운동 에너지를 위치 에너지로 치환(Trade-off)하도록 승강타 각도를 조작한다.
이러한 에너지 보존(Energy Conservation) 법칙을 메인 패러다임으로 한 결합 믹싱 구조 덕에, PX4는 고정익 기체가 고도를 바꿀 때 스톨(Stall)에 빠지거나 궤도 이탈 현상 없이 అత్య수준의 부드러움을 구사할 수 있다.
4. 멀티로터 아키텍처와의 결정적 차이 요약
- 상태 독립성(Decoupling) 여부:
- 멀티로터(MC): \text{Roll/Pitch} \rightarrow \text{XY \text{ 평면이동}}, \text{Throttle} \rightarrow \text{Z 고도이동} (각 루프 철저히 분리)
- 고정익(FW): \text{Roll} \rightarrow \text{조향(방향 전환)}, \text{Pitch \text{ & } Throttle} \rightarrow \text{고도와 속도의 혼합 풀(Mixed Pool)} (루프끼리 종속)
- 플래그 우선순위 체계: 멀티로터에서는 스로틀과 위치 제어 플래그(
flag_control_velocity_enabled)가 독립적으로 On/Off 되며 이질적인 믹싱(Hold와 Cruising의 공존)이 가능했지만, 고정익 제어 파이프라인에서는 고도 플래그가 꺼지면 피치와 속도 로직이 연쇄적으로 TECS의 록타겟(Lock-target)에 영향을 주어 매뉴얼 권한으로 통합 하강(Fallback)해야 하는 제약조건이 조금 더 엄격하게 코딩되어 있다.