Print this page

Unmanned Systems Testbed

After the work of developing a new control or estimation algorithm is completed, the work of implementing that algorithm in a real system for experimental testing begins. While this process can be very complicated, having a work pipeline set up in advance can make the work go much faster and easier. The goal of our unmanned systems testbed is to facilitate the implementation and testing of new controllers, estimators, and other algorithms so we can get them working in real-world scenarios as quickly as possible. Because of its usefulness and importance, nearly all of our lab's experimental projects utilize our unmanned systems testbed at some point in their development.

The testbed consists of modelling tools, software in the loop (SIL) simulation, and hardware in the loop (HIL) simulaiton centered around a common autopilot which works with a large range of platforms such as fixed wing aircraft, helicopters, multirotors, sailboats, and wheeled vehicles. Our lab group's projects use a workflow that goes from mathematical model to algorithm development, then demonstration in software simulation with a very simple system, demonstration in SIL with a realistic system, HIL, real-world in a controlled environment, and finally real world with uncontrolled conditions. The testbed setup that we have facilitates all but the first two steps of this workflow, allowing us to quickly implement algorithms in real systems once they have been shown to work on paper and for simple examples.

We work with the PX4 autopilot software because it is open source, easy to add new functionality to, and it can be used with the full variety of small unmanned vehicles our lab works with with minimal modifications. New algorithms can quickly be added and plugged into the existing software in isolation without having to change everything for each different system.

For multirotors, we use Robot Operating System (ROS) and Gazebo for our SIL work, JMAVSim for HIL simulation, and an the 3DR IRIS+ or a lab-assembled multirotor for real-world flight experiments. The PX4 works well with these simulation environments, making it easier to prototype new controllers and estimators, and even new sensors. We are able to use the same unmodified PX4 code that was originally written in the SIL testig stage for HIL and real world flight tests, saving time and effort while still accomplishing our work. Fixed wing aircraft have a simliar workflow, but since their flight dynamics differ significantly from those of multirotors, we use different tools. Both the SIL and HIL for fixed wing use JSBSim for flight dynamics.

Some systems we have worked on using this testbed include a segway-like two-wheeld robo, several multirotors, fixed wing aircraft, helicopters, sailboats, and four-wheeled rovers. Future extensions to the testbed will include a configurable multicopter capable of carrying different sensing and manipulator payloads to prototype new algorithms and integrate new sensors.