

18
In conversation
|
Dr Zongbo Wang
and high-level decision making based
on the data, so this is very suitable for
UAVs,” he says.
“That is because it’s easy to schedule
the tasks, especially for some critical
scheduling tasks and making sure there
are no delays. If you have the MPU and
FPGA combined then you can partition
the tasks for more real-time and time-
critical functions in the FPGA fabric.
“If you only have an MPU then you
have to rely on an operating system,
so you are mixing different tasks – you
need low-level comms handling that
includes connection to the ground
station, and you need position estimation.
Then you need some sensor information,
and this is the third important element of
the control algorithm.
“This then uses the data from the
mission tasks to determine how fast to
turn the rotors and so on. Now an MPU
makes all these decisions together, and
I don’t think that should be the most
optimised case.”
Power consumption
There are major advantages with an
FPGA as the demands on the UAV
control systems grow. Dr Wang points
to other approaches using graphics
processing units (GPUs) which may
have up to 512 processing elements and
are being used in some UAV designs.
“All the chip makers are looking to
reduce power, and if you use an FPGA
to do the processing then you may find
it uses even less power than a GPU,”
he says. “FPGAs have not been more
widely used because the technology in
them is more challenging for engineers
from an aerospace background. There
are questions about how to partition the
design of the control system between
the FPGA and the ARM processors.
FPGAs are seen as too complicated to
programme for a flight control engineer.”
So the latest design tool from Xilinx,
called SDSoC, takes a design written in
C or C++ code and profiles the code to
find the areas that would most benefit
from being implemented in the logic
fabric. This then allows some elements of
the design to run on the Linux operating
system on one core, with the high-
performance functions running on the
logic fabric, providing the best of both
worlds without having to change the way
the engineer designs the system.
Aerotenna has taken the ArduPilot
open source autopilot and performed
this optimisation alongside the radar
sensor design.
“Our plan is to partition the processing
to use the FPGA logic to do some of the
tasks alongside the ARM cores, such as
PWM coding and decoding – every UAV
needs that. In an MPU it is hundreds of
lines, while in the FPGA it is less than
100 lines to implement such a function in
real time,” he says.
This approach opens up new ways
of building UAV control systems with
different design blocks of intellectual
property (IP). “There will be a lot of these
IP blocks,” says Dr Wang. “We will use
a drag-and-drop model so that you
drag the function from the IP library and
connect it to the ARM core. Then the
core will run only the high-level functions
and use the FPGA logic to do the rest.”
The first step for this is the combined
autopilot and radar system called
μSharp. This incorporates adaptive
sensing technology that optimises its
response, regardless of flight status. It
detects obstacles all around without
blind spots and corrects flight course in
time to prevent collisions.
Dr Wang says, “We have the demo
systems and are moving to production.
We can work with commercial drones
of less than 1.5 kg – the most widely
available systems on the market – and
are doing this development in parallel.”
Sensor fusion
This technology is the way forward for
UAV designs, he says. “I believe radar
can do a great job and has advantages
over a lot of sensors, but the future
needs to be a package of sensors, and
a combination of radar, ultrasound and
camera integrated in UAVs to do a smart
job. That’s the second important element
which is sensor fusion, and that will
take the application of FPGA in UAVs to
another level.
“Now we have an excellent collision
avoidance system but we are not
stopping there; we are putting cameras
on the platform with sensor fusion.”
With thanks to Aaron Behman of Xilinx
for his contribution to this article.
June/July 2016 |
Unmanned Systems Technology
Using an FPGA is changing how UAVs are
controlled by making the processing of
algorithms more efficient