Skip to main content
QUICK REVIEW

[논문 리뷰] Neuroflight: Next Generation Flight Control Firmware

William R. Koch, Renato Mancuso|arXiv (Cornell University)|2019. 01. 19.
Robotic Path Planning Algorithms참고 문헌 23인용 수 25
한 줄 요약

Neuroflight는 퀸티콥터와 고정익 항공기용으로 처음으로 공개된, 신경망 기반의 비행 제어 펌웨어를 제공하며, 기존의 PID 제어를 강화 학습으로 훈련된 제어기로 대체한다. ARM Cortex-M7에서 2kHz 이상의 높은 제어 주파수로 안정적이고 고성능의 비행(예: 에어로바틱 기동)을 구현함으로써, 임베디드 시스템에서 종단 간 신경망 기반 비행 제어의 실용성을 입증한다.

ABSTRACT

Little innovation has been made to low-level attitude flight control used by uncrewed aerial vehicles (UAVs), which still predominantly uses the classical PID controller. In this work we introduce Neuroflight, the first open source neuro-flight controller firmware. We present our toolchain for training a neural network in simulation and compiling it to run on embedded hardware. Challenges faced jumping from simulation to reality are discussed along with our solutions. Our evaluation shows the neural network can execute at over 2.67kHz on an Arm Cortex-M7 processor and flight tests demonstrate a quadcopter running Neuroflight can achieve stable flight and execute aerobatic maneuvers.

연구 동기 및 목표

  • 소형 무인 항공기의 내부 자세 제어 루프에서 전통적인 PID 제어를 대체할 수 있는 신경망 기반 비행 제어 펌웨어를 개발하는 것.
  • 딥 강화 학습 제어기를 위한 시뮬레이션에서 실제 환경으로의 전이 성능 향상을 위해 시뮬레이션의 정밀도와 전이 가능성(transferability)을 향상시켜 시뮬레이션-실세계 간 격차를 줄이는 것.
  • 고성능 차량용 컴퓨터가 아닌 자원 제약이 있는 임베디드 마이크로컨트롤러에 직접 훈련된 신경망을 배포할 수 있도록 하는 것.
  • 훈련, 컴파일, 하드웨어에 배포까지를 포함한 완전한 오픈소스 툴체인을 제공함으로써 신경망 기반 비행 제어기의 개발과 배포를 간편화하는 것.
  • 동적이고 불확실한 환경에서 PID보다 뛰어난 성능을 보이는 차세대 비행 제어 펌웨어의 기반을 마련하는 것.

제안 방법

  • 기존 GymFC-v1.5 시뮬레이션 환경을 수정하여, 원시 센서 입력에서 자세 제어를 학습할 수 있도록 딥 신경망을 Proximal Policy Optimization (PPO)로 훈련시켰다.
  • 실제 비행에 더 가까운 현실성 향상을 위해 센서 노이즈, 액추에이터 동역학, 환경적 외란 등을 포함한 고도화된 시뮬레이션 환경(GymFC-v1.5)을 설계하여 시뮬레이션-실세계 전이 성능을 향상시켰다.
  • 훈련된 신경망을 C 코드로 컴파일하고 ARM Cortex-M7 마이크로컨트롤러에 배포할 수 있도록 전용 툴체인을 구현했다.
  • 실시간 성능와 안정성을 확보하기 위해 ReLU 활성화 함수와 출력 분포를 제한하는 구조(예: 베타 함수)를 사용한 경량 신경망 아키텍처를 설계했다.
  • 신경망을 비행 제어 펌웨어 내부에 직접 통합하여, 내부 제어 루프의 PID 및 모터 믹싱 논리와 교체했다.
  • 실제 퀸티콥터에서의 비행 테스트를 통해 수동으로 튜닝된 PID 제어기와의 성능을 비교 검증했다.

실험 결과

연구 질문

  • RQ1강화 학습으로 시뮬레이션에서 훈련된 딥 신경망이 PID에 의존하지 않고도 실제 마이크로-UAV에서 안정적이고 고성능의 비행을 달성할 수 있는가?
  • RQ2신경망 기반 비행 제어기의 시뮬레이션에서 실제 비행으로의 성공적인 전이를 보장하기 위해 시뮬레이션 환경에 어떤 수정이 필요한가?
  • RQ3저전력 임베디드 마이크로컨트롤러(예: ARM Cortex-M7)에 고제어 주파수(2kHz 이상)로 훈련된 신경망 제어기를 직접 배포하는 것은 실현 가능한가?
  • RQ4에어로바틱 기동 중에 수동으로 튜닝된 PID 제어기와 비교했을 때, 학습된 신경망 제어기의 추적 정확도와 동적 입력에 대한 저항성은 어떻게 다른가?
  • RQ5시뮬레이션 기반 훈련에서 실제 배포로의 전환 과정에서 발생하는 주요 과제와 해결책은 무엇인가?

주요 결과

  • 신경망 제어기는 ARM Cortex-M7 마이크로컨트롤러에서 2kHz 이상의 실시간 실행을 달성하여 안정적 비행을 위한 엄격한 시간 제약 조건을 충족시켰다.
  • 비행 테스트 결과, 신경망 기반 제어기가 안정적인 비행과 복잡한 에어로바틱 기동(예: 롤, 플립, 스플릿-S)의 성공적인 수행을 가능케 했다.
  • 모든 평가 지표에서 학습된 신경망 제어기가 PID 제어기보다 뛰어난 성능을 보였다. 특히 추적 정확도와 동적 입력에 대한 반응성에서 뛰어난 성능을 보였다.
  • PID 제어기와 달리 신경망 제어기는 수동 튜닝이 필요로 하지 않았으며, Ziegler-Nichols 방법을 사용해 9개의 제어 이득을 튜닝하는 데 약 30분이 소요된 반면, 신경망 제어기는 이를 필요로 하지 않았다.
  • 고정밀도 시뮬레이션 환경(GymFC-v1.5)을 통해 시뮬레이션과 현실 간 성능 격차를 줄였으며, 이는 실제 센서 노이즈와 액추에이터 동역학을 정확히 반영한 덕분이었다.
  • 스플릿-S 기동 중 피치 축에서의 추적 성능이 뛰어나, PID 대비 눈에 띄게 감소한 오버슈트와 향상된 반응성을 보였다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.