Zynq UltraScale+ Drone Controller

Aviation

Introduction

The official term is unmanned aerial vehicle (UAV), apparently, which is a bit of a mouthful, so we prefer to say drone. Drone tech evolved tremendously over the past decades. Nowadays, they can be used in construction, agriculture, photography, entertainment, and many other areas. In any case, we developed a flight and video controller for a UAV (drone) for a customer.

Customer Challenge

The customer required a hybrid FPGA/CPU hardware that is able to fulfill the performance and functional requirements while taking up as little room and weight in the vehicle as possible and, at the same time, is so power-efficient that a passive cooling solution would be sufficient. In addition, the hardware needs to be fit to reliably operate in harsh conditions (vibration and temperature).

The Solution

Our engineering team employed a Xilinx Zynq UltraScale+ MPSoC, whose CPUs implement the position control as well as tracking of the flight trajectory. The sensors and actors are attached through the FPGA logic; the number and type of these interfaces vary greatly with the application of controlled vehicle, so all of these interfaces are dynamically configurable. The controller supports redundancy by having two parallel flight controller units supervising each other. Should the currently active flight controller fail, the reserve unit takes over all tasks autonomously. Aside flight control functions, the controller prepares and compresses a Full-HD video signal (HD-SDI) from a camera for transmission over radio.

The Result

A compact, powerful and very flexible flight and video controller. It is not only rugged but also very reliable thanks to the built-in redundancy.

Keywords

Xilinx® Zynq® UltraScale+®, Mentor | Graphics PADS® | HD-SDI | VHDL | C | C++ | FPGA System Design | FPGA Hardware | FPGA Firmware | Embedded Software