QGroundControl과 Qt로
드론·무인 항공기(UAV) 개발하기
QGroundControl (QGC)은 무인 항공기를 위한 대표적인 오픈소스 지상 관제 시스템(GCS)로, Qt로 개발되었습니다.
QGC가 활용하는 모듈과 라이선스 요구 사항, 그리고 QGC와 Qt를 기반으로 라이선스를 준수하는 상용 제품을 개발하는 방법을 알아보세요.
"지상 통제에서 C4ISR까지 - 방위용 드론 프로그램을 위한 Qt Group 소프트웨어" 웨비나를 시청하세요!
QGroundControl을 기반으로 상용 애플리케이션을 개발하려면 Qt 상용 라이선스가 필요합니다. 상용 라이선스가 없으면 해당 소프트웨어에 GPL v3가 적용되어 전체 소스 코드를 공개해야 합니다.
Qt와 QGroundControl
QGroundControl (QGC)은 무인 이동체를 위한 대표적인 오픈소스 지상 관제 시스템 (GCS)입니다. PX4, ArduPilot 등 오토파일럿을 비롯해 MAVLink 프로토콜을 사용하는 모든 기체에 비행 제어와 미션 플래닝 기능을 제공하며, 항공·지상·수상 자율 시스템을 모두 지원합니다. QGC는 PX4, MAVLink, MAVSDK를 함께 관리하는 벤더 중립 비영리 단체 Dronecode Foundation이 운영하고 있으며, 취미 사용자부터 연구자, 상업 운용사까지 폭넓게 사용하고 있습니다.
QGC는 핵심 크로스 플랫폼 프레임워크로 Qt를 채택해, 하나의 코드베이스로 주요 데스크톱, 모바일, 임베디드 플랫폼에서 모두 실행됩니다. 또한 QGC의 사용자 인터페이스(UI), 지도와 네비게이션, 실시간 영상 피드 등도 Qt Framework로 구현되어 있습니다.
QGroundControl과 Qt 오픈소스 라이선스
QGroundControl is 은dual-licensed under either Apache 2.0 (permissive)과 or GPL v3 (copyleft)중 하나를 선택할 수 있는 듀얼 라이선스로 제공됩니다. 다만 QGC는 대부분 Qt로 개발되었기 때문에, 오픈소스 사용자가 허용 범위가 더 넓은 LGPL이 아닌 GPL로만 사용할 수 있는 Qt 모듈의 GPL 조건을 그대로 이어받습니다. Qt Graphs, Qt HTTP Server, Qt Quick 3D 등이 이런 모듈에 해당합니다.
GPL은 강력한 copyleft 라이선스이므로, QGC 코드베이스에서 파생된 모든 제품에도 GPL 조건이 그대로 적용됩니다.
GPL v3로 소프트웨어를 개발하면 다음 두 가지 의무가 따릅니다.
소프트웨어를 배포받는 모든 사용자에게 소스 코드를 공개해야 합니다.
소프트웨어를 특정 하드웨어에 종속시킬 수 없습니다.
Qt 상용 라이선스를 사용하면 이 두 가지 의무가 모두 적용되지 않습니다.
참고: 상용 프로젝트에 GPL 소프트웨어를 사용할 수는 있지만, 완성된 제품의 소스 코드를 비공개로 유지할 수는 없습니다. 법적·재정적 문제를 피하려면 조직의 오픈소스 정책을 검토하고, 사내 법무 검토를 통해 GPL 의무를 준수하고 있는지 확인해야 합니다.
QGroundControl의 상업적 활용
GPL v3는 자유 소프트웨어 원칙에 따라 개발하고, 그 소스 코드를 커뮤니티와 공유하려는 경우에 적합한 선택입니다.
중요: 소스 코드를 공개하지 않을 애플리케이션을 개발하려면 상용 라이선스가 필요합니다.
QGC 라이선스 정보에서도 명시하고 있듯이, QGC와 Qt는 아래 두 가지 조합으로 사용할 수 있습니다.
| 구분 | 오픈소스 라이선스 | 상용 라이선스 |
|---|---|---|
| QGroundControl | GPL v3 | Apache 2.0 |
| Qt Framework | 오픈소스 (GPL v3) | 상용 Qt |
| 적합한 대상 | 커뮤니티, 연구 목적 | 상용 제품 개발, 외주 개발사 |
| 핵심 의무 | 카피레프트(Copyleft) 의무 전면 적용 | 상용 라이선스 조건 준수 |
| 자체 개발 코드 | 공개 필수 | 비공개 가능 |
| 하드웨어 잠금 | 불가 | 가능 |
항공우주 및 방위 산업용 소프트웨어를 위한 다양한 자료를 확인해보세요
항공우주 및 방위 산업 분야에서의 Qt Group
Qt Group의 크로스 플랫폼 소프트웨어 설계, 개발 및 테스트 기술을 통해 제품 출시 속도를 높이고, 지속적인 적응을 실현하며, 모듈식 기술 업그레이드를 가속화해보세요.
항공우주 및 국방 산업 분야에서의 Qt 선택 기준: 오픈 소스 vs 상용 라이선스
국방 프로그램은 인증, 조달, 수출 통제 요건 등을 충족하기 위해 소스코드의 투명성을 요구합니다. 그리고 이는 바이너리 전용 소프트웨어 제품을 개발할 때 구조적인 장벽으로 작용합니다.