4편. SILT & QGC 설치 및 비행 모드 튜토리얼
SITL(Software-In-The-Loop)은 ArduPilot 같은 자동조종 코드를 하드웨어 없이 실행할 수 있는 시뮬레이션 환경입니다. SITL은 비행 동역학 모델을 사용해 센서 데이터를 시뮬레이션하며 멀티로터, 고정익, 지상·수중 차량 등 다양한 기체와 센서를 지원합니다.
시뮬레이션은 PC에서 실행되므로 디버거와 분석 도구를 이용해 코드를 수정·테스트하기에 용이하며, Linux와 Windows 모두에서 실행 가능합니다.
ArduPilot 소스 코드 클론: git clone https://github.com/ArduPilot/ardupilot 후 cd ardupilot.
의존성 설치:Tools/environment_install/install-prereqs-ubuntu.sh 스크립트로 필요한 라이브러리를 설치합니다.
시뮬레이터 실행: ArduCopter 폴더에서 sim_vehicle.py --console --map -w를 실행하면 콘솔과 지도가 표시됩니다. 이 옵션은 가상 EEPROM을 초기화하고 기본 파라미터를 로드합니다.
옵션: -v plane으로 비행기를, -v rover로 차량을 선택할 수 있으며, -L KSFO는 초기 위치를 샌프란시스코 공항으로 지정합니다.
WSL2에서는 Ubuntu 터미널을 열고 ArduPilot 디렉터리로 이동합니다. WSL 설명서에 따르면 ../Tools/autotest/sim_vehicle.py --map --console 명령으로 SITL과 MAVProxy를 실행합니다.
MAVProxy는 명령 프롬프트, 콘솔, 지도를 표시하여 비행 상태를 실시간으로 보여줍니다.
SITL 환경에서 명령 프롬프트에 다음과 같이 입력해 GUIDED 모드로 전환하고 비행을 시작할 수 있습니다
mode guided
arm throttle
takeoff 40
이후 mode auto로 전환하면 사전에 업로드된 미션을 자동으로 수행합니다. rc 3 1500과 같은 명령으로 스로틀 값을 직접 제어할 수도 있습니다.
QGroundControl(QGC)은 오픈소스 GCS로 드론 제어와 미션 계획을 지원합니다. Softonic 페이지는 QGC가 PX4·ArduPilot 기반 무인기의 비행 제어 및 구성, 임무 계획, 실시간 비디오 스트리밍을 제공한다는 점을 강조합니다.
설치: Ubuntu에서는 AppImage를 다운로드 후 실행하거나 sudo snap install qgroundcontrol로 설치합니다. Windows/macOS에서는 설치 프로그램을 실행합니다.
SITL 연결: QGC를 실행하면 UDP 포트 14550에 연결된 SITL을 자동으로 탐지합니다. Fly View 화면에서 가상 드론의 위치·고도·배터리 상태를 확인할 수 있습니다.
미션 계획: Plan View에서 웨이포인트와 비행 경로를 설정하고 업로드합니다. Auto 모드에서 arm 후 Start Mission을 클릭하면 SITL이 비행합니다.