Design and Development of The Hardware For Vision Based UAV Autopilot
Design and Development of The Hardware For Vision Based UAV Autopilot
Nikolai Kummer, Craig Jee, Jamie Garbowski, Jenner Richards, Afzal Suleman
Ephraim Nowak, Homayoun Najjaran Department of Mechanical Engineering
School of Engineering University of Victoria
University of British Columbia Victoria, BC, Canada
Kelowna, BC, Canada
[email protected]
that switches between manual and automated input and is been implemented in hardware, to not interfere with regular
capable of detecting when the vision computer becomes autopilot operation. The onboard vision computer receives
unresponsive. We have tested the switching performance in images from a camera, performs image analysis and
the laboratory environment, but flight-tests are currently implements a control thread. The control thread receives
pending an SFOC application from Transport Canada. telemetry data from the APM2.5 via the UART interface. The
control thread controls the UAV by sending PWM commands
In addition to the autopilot hardware, an HIL setup is
to the APM2.5 that mimic the signal from the RC receiver.
presented that allows the testing of vision algorithms by
The vision computer also transmits an alternating high-low
interfacing the autopilot to Matlab® and Simulink®. The
heartbeat signal, which indicates that the computer is still
hardware and the HIL simulator will be presented in Sections
responsive. The switching module will ignore inputs from the
II and III, respectively. Preliminary HIL flight results are
computer, should the heartbeat signal stop alternating.
presented in Section IV and the conclusions will be presented
in Section V. The proposed system is highly modular, allowing for
replacement of components to suit the user’s needs or price
II. HARDWARE requirements. This modularity is attributed to the fact that the
vision computer mimics the RC receiver signal. Any autopilot
This section outlines the hardware components of the
that communicates with the RC receiver could be a potential
vision-based autopilot. The major components are the replacement for the APM2.5. The rest of the section will
Ardupilot Mega (APM2.5) 1 autopilot, switching module, describe the APM2.5 autopilot, the switching module, the
vision computer, which are all installed in the UAV airframe
Beaglebone Black 2 vision computer, and the airframe
hardware.
hardware in detail. The proposed system will be implemented
The pilot controls the UAV via a 6 channel RC remote.
on fixed-wing UAVs, but can also be extended to multi-rotor
Four of the channels control roll, pitch, throttle, and yaw of the
helicopters.
UAV. One channel is used to indicate the flight-mode that the
APM2.5 is currently in and allows the pilot to switch from
A. APM2.5 Autopilot
“fly-by-wire” to “manual” to “return-to-launch” modes. The
last channel is the auto-switch, which changes UAV control The APM2.5 is an autopilot that is distributed by
from the operator to the vision computer. The operator can 3DRobotics and which has been developed since 2007. This
regain control of the UAV at any time via the auto-switch. autopilot has been selected, due to its low cost (approximately
The APM2.5 controls the low-level functions, such as the $200), numerous features and its ability to be used on fixed-
servomotors and the propeller thrust. During normal operation, wing as well as multirotor helicopters. The autopilot features an
the APM2.5 receives commands from the RC receiver, which onboard GPS module, a 3 axis gyroscope, 3 axis accelerometer
receives signals from the pilot via the RC remote. and a magnetometer. The APM2.5 can transmit telemetry
wirelessly to a ground station computer using a 3DR Radio.
In the proposed system, a custom designed switching APM Mission Planner, the Ardupilot ground station software,
module (shown in Figure 4) interfaces between the RC receiver interfaces with the XPlane3 and Flightgear4 flight simulators,
and the APM2.5 and allows the vision computer to take which eases the creation of the HIL system.
control, if the auto-switch is engaged. The switching module
also monitors the health of the vision computer and, if
necessary, ignores inputs from the vision computer and
switches back to manual control. The switching module has 2
http://beagleboard.org/
3
http://www.x-plane.com/desktop/home/
1 4
Ardupilot website: http://ardupilot.com/ http://www.flightgear.org/