Autonomous Systems

Design, develop, and test autonomous systems with MATLAB

How NASA Langley is Using MATLAB and Simulink to Accelerate Development and Testing of Multirotor Flight Control

In this blog post, my colleagues Ronal George and Julia Brault helped me feature a project at NASA Langley Research Center where MATLAB & Simulink significantly reduced the time and effort to integrate and test new flight control laws for UAVs. We would like to thank the team at NASA Langley for contributing towards the content of this blog post. The team includes Garrett Asper, Benjamin Simmons, Rachel Axten, Kasey Ackerman, and Patrick Corrigan.

Advanced air mobility, which includes urban air mobility, is emerging to revolutionize transportation. It involves the development of innovative vehicles like VTOL (vertical take-off-and-landing) aircraft, which blend the vertical lift capabilities of rotorcraft with the horizontal flight advantages of airplanes into a single vehicle. However, designing effective control systems for these complex vehicles presents unique challenges. In this blog post, we will feature a project from NASA Langley where MATLAB & Simulink helped with quick integration and testing of custom flight control laws for a multirotor.

Nasa's drone flying with a controller designed and deployed with MATLAB and Simulink


Innovative Aircraft Requires Innovative Control Laws

In 2022, the team at NASA published a report titled “Rapid Flight Control Law Deployment and Testing Framework for Subscale VTOL Aircraft”, describing flight control law development and deployment using UAV Toolbox with MATLAB. The paper describes the preliminary flight testing they were able to conduct on a subscale CL-84 VTOL model in an indoor, netted testing facility.

The team’s ultimate goal was to perform outdoor, untethered flight testing of automatically-deployed custom control laws on a future more complex and operationally relevant VTOL aircraft. Before they could move to untethered flight testing of the future VTOL aircraft, the team started by mastering a custom controls code deployment process and performing untethered flight tests on a multirotor aircraft. This process began with modeling the plant dynamics and the flight controller in Simulink.

Custom control law development benefits from having a plant model that represents the physical UAV. The more complex of a controller you’re looking to develop – like the kind you’d need for a transitioning VTOL aircraft – the more important a dependable dynamics model becomes. Simulink is a dynamic simulator with many built-in blocks and add-on tools for both dynamics modeling and controller tuning, making it a popular choice for engineers developing control systems.

Iterative Testing Builds Confidence Before Flight

The first step to verify that a new control law will perform well in an untethered flight test is to thoroughly test its performance in a desktop simulation. However, good performance in desktop simulation doesn’t mean the custom control laws are ready to fly due to modeling inaccuracies and disturbances.

Bench test setup used to run connected simulations on NASA's drone using MATLAB and Simulink

Fig. Bench test setup used to run connected simulations

Automatic Flight Controller Deployment Mitigates Hardware Integration Pains

Once a custom controller is proved out in hardware-in-the-loop testing, the team used Embedded Coder and the PX4 Hardware Support Package for UAV Toolbox to automatically generate code from their Simulink models and deploy that code onto Cube Orange and Cube Blue autopilot hardware.

With their custom control laws deployed onto their multirotor’s flight computer, the team was ready for outdoor flight testing. In August 2023, they successfully flew their multirotor aircraft in free flight, testing multiple custom control architectures developed in Simulink.

Reflecting on the workflow they developed to get to this point, the team at NASA Langley said:

This solution made it easy to take a simulation-developed control law and implement it onto a flight vehicle. In the past, hardware integration was notoriously difficult. Now we can deploy and test a new flight controller in minutes.”

The team recently published a report titled “Inexpensive Multirotor Platform for Advanced Controls Testing (IMPACT): Development, Integration, and Experimentation” that summarizes the approach used to enabling rapid deployment and testing of custom flight control logic on the multirotor.

What’s Next?

Now that the team has successfully established this process for a multirotor, their next step is to follow the same process for future VTOL aircraft concepts, culminating in untethered flight testing. VTOL aircraft are emerging as a key enabler to revolutionize transportation with advanced air mobility. The team at NASA Langley is committed to being a catalyst for this market, and plans to publish data and details on this process to empower other engineers in the field and foster a collaborative environment for shared progress.

In the upcoming blog posts, we intend to delve into more detail regarding the implementation on NASA’s VTOL test platform, which will include modeling the dynamics of the test platform, incorporating operational features, and deploying a custom flight controller.

In the meantime, learn more about the latest updates in the R2024a release of UAV Toolbox:

Check out the full release notes here.


  • print


To leave a comment, please click here to sign in to your MathWorks Account or create a new one.