New era of the flight software is comming! NeuroFlight is the first Open Source Artificial Intelligence flight software for multirotors. First implementations of this software uses F7FC (Mateksys F722-STD). Neuroflight was forked from the Betaflight 3.3.3 and it can use the same Betaflight configurator for setting the FC up. The main differencie is PID controller with all filtering and processing was removed and replaced with neural network software to make the Flight controller be able to learn, plan and adapt. These are the features that describe the artificial intelligence.
“Neuroflight is the first open source neuro-flight controller software (firmware) for remotely piloting multi-rotors and fixed wing aircraft. Neuroflight’s primary focus is to provide optimal flight performance.
Neuroflight aims to address limitations in PID control used in Betaflight through the use of neural network flight control (neuro-flight control). Neuro-flight control has been actively researched for more than a decade. In contrast to traditional control algorithms, neuro-flight control has the ability to adapt, plan, and learn. To account for dynamic changes Betaflight has introduced gain scheduling to increase the I gain when certain conditions are met, for example low voltages or high throttle (anti-gravity). On the other hand, neuro-flight control learns the true underlying dynamics of the aircraft allowing for optimal control depending on the current aircraft state. For example neuro-flight control has the potential to learn the batteries discharge rates to dynamically adjust control signal outputs accordingly. The goal of this work is to provide the community with a stable platform to innovate and advance development of neuro-flight control design for drones, and to take a step towards making neuro-flight controllers mainstream.”
Authors (William Koch, Renato Mancuso, Azer Bestavros) have published the article, describing their work. Here is an abstract from it:
Little innovation has been made to low-level attitude flight control used by unmanned aerial vehicles, which still predominantly uses the classical PID controller. In this work we introduce Neuroflight, the first open source neuroflight 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.
Comment: …at some future point quads will tune themselves dynamically. And so it has begun. Congrats!
William Koch: Currently we are limited by the hardware but also the software to provide online learning (ie this dynamically tuning). In the future we want GymFC to provide an initial model (offline) so it can fly immediately and then it will be tuned specifically for the aircraft using online learning.
Narrated presentation of Thesis proposal on NeuroFlight: