2026년 07월 06일 PX4-Autopilot 주간 개발 동향: 안전 강화, 하드웨어 확장 및 자율 비행 지능화
PX4 주간 통합 브리핑
지난 한 주간 PX4 Autopilot 프로젝트는 안정성 및 안전 기능 강화, 지원 하드웨어 확장, 그리고 고도화된 자율 비행 기능 구현에 집중하며 활발한 개발 활동을 보였습니다. 특히, 비행 중 차량 전복 방지, 비상 착륙 로직 개선 등 안전에 직결되는 여러 버그 수정이 병합 또는 논의되었으며, 이는 PX4가 안전하고 신뢰할 수 있는 플랫폼으로서의 입지를 더욱 공고히 하려는 의지를 보여줍니다. 또한, 새로운 비행 제어 보드 및 센서 드라이버 추가는 PX4 생태계의 지속적인 확장을 시사합니다.
기술적인 측면에서는 MAVLink 및 offboard 통신 관련 버그 수정과 기능 개선이 두드러졌으며, 이는 외부 시스템과의 연동성을 높이고 복잡한 자율 임무 수행 능력을 향상시키는 데 기여할 것입니다. 내비게이션 및 임무 관리 시스템에서는 지오펜스(Geofence)를 인식하는 RTL(Return-To-Launch) 기능과 미션 경로 캐시 및 스마트 경로 계획 인프라 추가 등, 더욱 지능적이고 유연한 자율 임무 수행을 위한 초석이 마련되고 있습니다. 이러한 변화들은 PX4가 단순한 비행 제어 시스템을 넘어, 차세대 지능형 드론 플랫폼으로 진화하고 있음을 명확히 보여줍니다.
PX4 릴리즈 및 버전별 주요 변경 사항
이번 주 보고 기간에는 새로운 안정화 버전 릴리즈는 없었으나, v1.18.0-alpha1의 진행 상황이 확인되었습니다. 이는 향후 정식 릴리즈될 PX4 v1.18의 초기 테스트 버전으로, 개발자들이 비행 테스트를 통해 새로운 기능과 개선 사항을 미리 경험하고 피드백을 제공할 수 있도록 공개된 버전입니다. v1.18의 전체 릴리즈 노트는 아직 작성 중이며, 정식 릴리즈 시점에 상세한 변경 사항이 공개될 예정입니다.
- v1.18.0-alpha1 (Pre-release) – GitHub Release Link
- 특징: 현재 비행 테스트용으로 제공되며, v1.17.0-alpha1 이후의 모든 변경 사항을 포함합니다.
- 주요 내용: 자세한 변경 사항은 정식 릴리즈 노트를 통해 공개될 예정입니다.
- 참고: 이 버전은 사전 릴리즈(prerelease)이므로 프로덕션 환경 사용에는 권장되지 않습니다.
핵심 GitHub 업데이트 (PX4-Autopilot)
병합(Merged)된 중요한 PR 분석
지난 7일 동안 PX4-Autopilot GitHub 리포지토리에는 수많은 PR이 병합되었으며, 이 중 핵심적인 기능 추가 및 안전 관련 버그 수정 사항은 다음과 같습니다.
- 안전 및 제어 시스템 강화:
- fix(commander): ignore none failsafe actions: 잘못된 페일세이프 액션 설정이 비행에 영향을 주지 않도록 로직을 개선하여 안전성을 높였습니다.
- fix(flight_mode_manager): prevent auto-takeoff stall on a moving platform: 움직이는 플랫폼에서의 자동 이륙 시 스톨(stall) 현상을 방지하여 VTOL 기체의 안정적인 이륙을 보장합니다. (
risk:safety-critical) - fix(flight_mode_manager): initialize smoothing with current acceleration: 비행 모드 전환 시 가속도 스무딩 초기화 문제를 해결하여 보다 부드러운 전환을 가능하게 합니다.
- feat(control_allocator): Stop motors if thrust setpoint is NaN: 스러스트 목표값이 NaN(Not a Number)일 경우 모터를 정지시켜 예측 불가능한 비행 상황을 방지합니다. (
risk:safety-critical) - fix(vtol): smooth standard transition setpoint handoff (open): VTOL 기체의 표준 전환 시 세트포인트 핸드오프를 부드럽게 하여 전환 안정성을 높이는 작업이 진행 중입니다.
- MAVLink 및 Offboard 통신 개선:
- fix(mavlink): init mutexes before argument parsing: MAVLink 초기화 순서 관련 버그를 수정하여 안정성을 높였습니다.
- fix(mavlink): correct BODY_NED position setpoint parsing and bitmasks: MAVLink BODY_NED 위치 세트포인트 파싱 오류를 수정하여 offboard 제어의 정확성을 개선했습니다.
- fix(mavlink): reject unsupported params in commands and missions: MAVLink 명령 및 미션에서 지원되지 않는 파라미터를 거부하여 프로토콜 준수와 시스템 안정성을 향상시켰습니다.
- feat(mavlink): add extended CELLULAR_STATUS fields to cellular_status: MAVLink CELLULAR_STATUS 메시지에 확장 필드를 추가하여 셀룰러 통신 상태에 대한 더 많은 정보를 제공합니다.
- feat(mavlink): Support MAV_CMD_DO_SET_GLOBAL_ORIGIN: MAV_CMD_DO_SET_GLOBAL_ORIGIN 명령을 지원하여 전역 원점 설정을 가능하게 합니다.
- 하드웨어 지원 및 드라이버:
- feat(drivers): add DPS368 variant support via -8 flag: DPS368 기압계의 -8 variant를 지원하여 센서 호환성을 넓혔습니다.
- feat(boards/px4_fmu-v6xrt): enable BMP581 barometer support: px4_fmu-v6xrt 보드에서 BMP581 기압계 지원을 활성화했습니다.
- feat(boards): add fmu-v6x airship build variant: fmu-v6x 에어쉽 빌드 variant를 추가하여 새로운 종류의 비행체 지원을 확장했습니다.
- feat(airframes): add generic airship: 일반 에어쉽 에어프레임을 추가하여 에어쉽 플랫폼 개발의 기반을 마련했습니다.
- 내비게이션 및 임무:
- fix(navigator): enforce NAV_MIN_LTR_ALT in MC braking loiter: 멀티콥터 브레이킹 로이터 모드에서 NAV_MIN_LTR_ALT 설정을 강제하여 안전 고도를 준수하도록 합니다.
- fix(navigator): clear course on loiter reposition: 로이터 위치 재설정 시 경로를 초기화하여 내비게이션 정확도를 높였습니다. (
risk:safety-critical) - fix(navigator): report correct number of geofence polygon vertices: 지오펜스 폴리곤 꼭짓점 개수 보고 오류를 수정했습니다.
- 테스트 및 인프라:
- fix(many): control fixes towards stable SIH CI 및 fix(many): TSAN fixes towards stable SIH CI: SIH(Software-In-the-Loop) CI 환경의 안정성을 높이기 위한 다양한 제어 및 TSAN(ThreadSanitizer) 관련 수정이 이루어졌습니다. 이는 PX4의 코드 품질과 신뢰성을 향상시키는 데 중요합니다.
- 기타 개선사항:
- feat(commander): add NAV_RCL_ACT 7 (Hold without failsafe): NAV_RCL_ACT에 페일세이프 없는 홀드 모드(7)를 추가하여 조종의 유연성을 높였습니다.
- feat(manual_control): replace stick override threshold with double-flick gesture: 수동 제어 스틱 오버라이드 임계값을 더블 플릭 제스처로 대체하여 사용자 경험을 개선했습니다.
- docs(docs): Fix almost all broken external links: 공식 문서의 깨진 외부 링크를 대부분 수정하여 문서 접근성을 개선했습니다.
오픈된 크리티컬 Issue 심층 분석
현재 해결 대기 중인 이슈 중 특히 주목해야 할 사항은 다음과 같습니다.
- [Bug] Parameter Anomalies Causing Severe EKF and System Instability (Multirotor): 멀티로터에서 EKF 및 시스템 불안정성을 유발하는 파라미터 이상 현상이 보고되었습니다. 이는 비행 안정성과 직결되는 심각한 문제로, 신속한 분석과 수정이 요구됩니다. (
status:needs-triage) - [Bug] PX4 Incorrectly calculates discharged_mah for battery updates greater than 2 seconds: 2초 이상의 배터리 업데이트 시 방전 용량(discharged_mah)이 잘못 계산되는 버그가 확인되었습니다. 배터리 관리의 정확성에 영향을 미치는 중요한 이슈입니다. (
status:needs-triage) - [Bug] MAVLink Battery Status (147) interprets temperature incorrectly: MAVLink 배터리 상태 메시지(147)에서 온도가 잘못 해석되는 문제가 보고되었습니다. 이는 배터리 모니터링 시스템의 신뢰도에 영향을 줍니다. (
status:needs-triage) - fix(PositionControl): Prevent vehicle flipping on landing if MPC_ACC_DECOUPLE disabled (Open PR): 착륙 중 차량 전복을 방지하는 안전 관련 PR이 아직 오픈 상태입니다. MPC_ACC_DECOUPLE 파라미터가 비활성화될 때 발생하는 잠재적인 위험을 해결하는 중요한 업데이트이므로 지속적인 관심이 필요합니다. (
risk:safety-critical) - feat(navigator): Geofence Aware RTL (Open PR): 지오펜스를 인식하는 RTL 기능 추가 PR이 활발히 논의 중입니다. 이는 안전 구역 이탈 방지 및 효율적인 복귀를 위한 핵심 기능으로, 자율 비행의 안전성을 크게 향상시킬 것으로 기대됩니다. (
risk:safety-critical)
Weekly Dev Call & 커뮤니티 동향
2026년 7월 1일에 진행된 주간 개발자 콜은 “PX4 Dev Call: Jul 01, 2026 (Team sync, and Community Q&A)”라는 주제로 팀 동기화 및 커뮤니티 Q&A 위주로 진행되었습니다. 공개된 정보는 제한적이지만, 정기적인 개발자 회의를 통해 프로젝트의 큰 방향성과 당면 과제를 공유하고 있음을 알 수 있습니다.
Discourse 포럼의 ‘PX4 Autopilot’ 섹션에서는 다양한 주제가 논의되었습니다. 특히 ‘AI-Assisted Reproduction of FUEL on ROS 2 and PX4 Offboard: Simulation-to-Real Indoor UAV Exploration’ 및 ‘An Integrated PX4-Based Architecture for GNSS-Denied Autonomous UAVs’와 같은 스레드는 PX4가 ROS 2 기반의 AI 통합 및 GNSS-제한 환경에서의 자율 비행과 같은 첨단 연구 분야에서 활발히 활용되고 있음을 보여줍니다. 또한 ‘Ulog2mcap – seeking feedback’ 스레드는 로깅 데이터의 효율적인 처리와 분석 도구에 대한 커뮤니티의 관심을 반영합니다.
‘Pixhawk’ 섹션에서는 ‘Pixhawk 6C Mini / Holybro S500— can’t get actuators to spin’과 같은 특정 하드웨어 관련 기술 지원 요청이 올라왔습니다. 이는 새로운 하드웨어 도입 시 발생할 수 있는 초기 설정 및 호환성 문제에 대한 커뮤니티의 지속적인 지원 필요성을 강조합니다.
전반적으로 커뮤니티는 실제 비행 문제 해결부터 최첨단 연구 개발까지 폭넓은 스펙트럼의 논의를 이어가고 있으며, 이는 PX4 생태계의 건강하고 다이나믹한 특성을 나타냅니다.
서브 시스템 동향 (MAVLink, MAVSDK, QGC)
MAVLink:
MAVLink는 이번 주 주요 업데이트의 중심에 있었습니다. 여러 PR들이 MAVLink 메시지 처리의 정확성과 안정성을 개선했습니다. 특히, `DO_SET_GLOBAL_ORIGIN` 명령어 지원(#24697)과 `BODY_NED` 위치 세트포인트 파싱 수정(#27686)은 외부 시스템과의 정밀한 제어 및 임무 연동성을 크게 향상시킬 것입니다. 또한, 지원되지 않는 파라미터를 거부하는 로직 추가(#27541)는 MAVLink 통신의 견고성을 높였습니다. Discourse 포럼에서도 ‘Mavlink Battery status temperature being interpreted wrongly by PX4’와 같은 배터리 상태 관련 MAVLink 메시지 처리 이슈가 논의되는 등, MAVLink 프로토콜의 정확한 구현 및 해석에 대한 지속적인 관심이 나타나고 있습니다.
MAVSDK:
MAVSDK는 PX4와 외부 애플리케이션 간의 상호작용을 위한 핵심 SDK입니다. 지난주에는 MAVSDK 테스트 백엔드로 SIH(Software-in-the-Loop)를 추가하는 기능(#27629)이 제안되었습니다. 이는 MAVSDK 기반 애플리케이션 개발 시 시뮬레이션 환경에서의 테스트 과정을 더욱 효율적이고 신뢰할 수 있게 만들 중요한 발전입니다. 이 PR이 병합되면 개발자는 실제 하드웨어 없이도 MAVSDK를 사용하여 PX4 동작을 폭넓게 검증할 수 있게 될 것입니다.
QGroundControl:
QGroundControl(QGC) 관련하여 직접적인 PR이나 Issue는 적었지만, PX4의 파라미터 메타데이터 생성 문제가 QGC 유효성 검사에 실패했다는 과거 이슈(#23800)가 해결된 것이 확인됩니다. 이는 PX4와 QGC 간의 원활한 상호 운용성을 위해 지속적으로 백엔드 호환성을 유지하려는 노력을 반영합니다. QGC는 PX4의 주요 지상 통제 시스템으로서, PX4 펌웨어의 변경 사항이 QGC의 기능에 미치는 영향을 최소화하기 위한 지속적인 통합 및 검증 작업이 중요합니다.
