주요 콘텐츠

VTOL UAV용 제어기 설계 및 조정하기

R2026b

이 예제 시리즈에서는 참조 애플리케이션 템플릿을 사용하여 VTOL(수직 이착륙) UAV 제어기를 설계하고 조정하는 방법을 보여줍니다. 이 예제 시리즈에서는 Simulink 프로젝트를 사용하여 참조 애플리케이션 템플릿에 액세스하고 수정합니다. MATLAB 프로젝트에 대한 자세한 내용은 프로젝트 만들기 항목을 참조하십시오.

참조 애플리케이션에서는 틸트-로터 구성의 VTOL UAV를 모델링합니다. 이 구성에서 VTOL UAV는 2개의 고정식 후방 로터, 2개의 틸팅 전방 로터, 1개의 주익(wing)을 작동합니다. 이 구성을 통해 VTOL UAV는 멀티콥터와 유사하게 활주로 없이 수직으로 이착륙할 수 있는 반면, 고정익 구성으로 전환하여 비교적 높은 순항 속도를 달성할 수 있습니다.

Tilt-rotor VTOL UAV, with the front two motors tilting.

VTOL UAV 제어 설계 단계

이 예제 시리즈에서는 제자리 비행(hover), 고정익 비행, 이 두 단계 간의 전환 등 도심 환경에서의 모든 임무 단계를 위해 VTOL UAV 제어기를 조정하는 방법을 보여줍니다. 이 시리즈에서는 HITL(Hardware-in-the-Loop) 시뮬레이션을 위해 제어기를 PX4® Autopilot에 배포하여 검증하는 방법과, Unreal Engine®을 사용하여 3차원 환경에서 시뮬레이션을 시각화하는 방법도 보여줍니다.

이 예제 시리즈는 다음 단계로 구성됩니다.

VTOL UAV 프로젝트 및 모델 열기

VTOLRefApp.prj Simulink 프로젝트 파일에는 참조 애플리케이션이 포함되어 있으며, 이 애플리케이션은 Simulink 모델과 이 모델에 대한 지원 파일들, 그리고 이 예제 시리즈에서 사용하는 추가 파일과 프로젝트 바로 가기로 구성되어 있습니다. 다음 코드를 실행하여 프로젝트 파일을 엽니다.

% Open the Simulink project.
prj = openProject("VTOLApp/VTOLRefApp.prj");

VTOLTiltrotor.slx Simulink 모델을 엽니다.

open_system("VTOLTiltrotor")

VTOL tilt-rotor model

VTOLTiltrotor Simulink 모델에는 설계에 따라 사용자 지정할 수 있는 다음과 같은 주요 서브시스템이 포함되어 있습니다.

  • Ground Control Station — VTOL UAV가 임무를 완료하기 위해 일련의 기동을 실행하도록 명령합니다.

  • Autopilot — VTOL UAV 비행 제어기로, Low level controller 및 Guidance Test Bench 서브시스템을 포함합니다. Guidance test bench 서브시스템에는 이륙, 전진 전환, 웨이포인트 내비게이션, 선회, 후진 전환, 착륙과 같은 다양한 비행 모드 중에 로우 레벨 제어기의 설정점을 계산하는 하이 레벨 제어기가 포함되어 있습니다. Guidance test bench 서브시스템은 임무 중에 모드가 변경되는 조건도 결정합니다.

  • Manual Control Dashboard — VTOL UAV를 수동으로 제어하려면 이 서브시스템을 사용합니다. 이 서브시스템을 사용하기 전에 먼저 테스트 벤치의 수동 제어 모드를 활성화해야 합니다.

  • Digital Twin — VTOL UAV 플랜트 모델. 이 서브시스템에는 VTOL UAV의 동역학 모델, 공기역학 모델, 추진 모델이 포함되어 있습니다.

  • Visualization — VTOL UAV 비행을 시각화합니다.

첫 번째 VTOL UAV 비행 시뮬레이션하기

먼저, VTOL UAV 플랜트를 설정하고 제자리 비행 구성을 활성화합니다. MATLAB 툴스트립의 프로젝트 탭에 있는 바로 가기 섹션에서 Set up Plant를 선택합니다. 또는 setupPlant 헬퍼 함수를 사용할 수도 있습니다.

setupPlant
Initialized VTOL model.
Enabled hover configuration.
Enabled hover guidance mission.

수동 제어를 활성화하려면 Hover 섹션에서 수동 모드 바로 가기를 선택하거나 setupHoverManual 헬퍼 함수를 사용합니다.

setupHoverManual
Enabled hover manual testbench mode.

VTOLTiltrotor.slx 모델을 실행하고 VTOLTiltrotor/Manual Control Dashboard 서브시스템으로 이동합니다.

Manual Control Dashboard subsystem.

Hover Commands 슬라이더를 조정하여 X 값, Y 값, 고도 값의 설정점을 수동으로 선택합니다. VTOL UAV가 선택된 설정점을 따르는지 관찰합니다.

Plot of UAV position and attitude

이 예제 시리즈에서는 제자리 비행 유도 임무를 사용하여 제자리 비행 제어기 이득을 검증할 수 있으며, 이를 통해 VTOL UAV가 도심 환경에서 작동하는 동안 더 급격한 기동을 요구하는 설정값을 따를 수 있도록 보장합니다. 유도 임무 중에 Guidance Test Bench 서브시스템은 임무 및 UAV의 현재 상태를 기반으로 제자리 비행 제어기의 설정점을 계산합니다.

이 예제 시리즈의 다른 예제를 계속 진행하기 전에, 명령 창에서 다음 명령을 실행하여 VTOLRefApp.prj Simulink 프로젝트를 닫아야 합니다.

close(prj)

더 복잡한 궤적을 따르는 UAV의 기능을 검증하는 방법과 제자리 비행 모드에서 추적 성능을 개선하도록 제어기 이득을 조정하는 방법에 대한 예제는 Tune Control Design for VTOL UAV in Hover Configuration 항목을 참조하십시오.

참고 항목

도움말 항목