The newest additions to McGill Robotics’ lineup, Gooney-3 and Martlet-1 are fixed wing autonomous aircrafts designed to compete in the Association for Unmanned Vehicle Systems International (AUVSI) Seafarer’s Student Unmanned Aerial Systems (SUAS) competition. It is capable of completing its entire mission without the intervention of any human operator, showcasing the potential uses of drones for aerial reconnaissance, package delivery, geographic mapping, as well as search and rescue.
As Martlet-1 is the team’s first entry for the competition, the team focused on developing a solid software foundation and has mostly opted for off-the-shelf components to accelerate development. Its design is focused on the reliable execution of the core tasks, and the respect of rules, time constraints, and safety considerations of the AUVSI Seafarer’s SUAS Competition. Martlet-1 is fully autonomous and is capable of completing select competition tasks.
AUVSI Seafarer’s SUAS competition has been held yearly at Naval Outlying Field Webster in Maryland since 2002. The competition is meant to encourage students’ participation in the design and development of Unmanned Aerial Systems (UAS) and increase general interest in UAS technologies and careers. The competition asks participating teams to work on a design which can navigate autonomously, use onboard sensors to identify various forms of targets, and execute a specific set of tasks. AUVSI SUAS also places significant emphasis towards reporting properly on the design and maintaining operational excellence throughout the competition.
The competition sees teams from all over the world meet up for four days of flying, allowing participants to show off their year’s work, discuss UAS technologies with other attendees, and learn from other team’s experiences. AUVSI SUAS is also attended by many major companies from the robotics and UAS industries, giving students a chance to network with professionals in the field.
McGill Robotics had a successful first showing at the competition in 2017, ranking 17th on mission points out of the 54 competing teams. The team hopes to build on this experience to take the project further over the coming years.
Mission Requirement Analysis
The first step to designing Martlet-1 and Gooney-3 was analyzing the tasks the airframe was required to perform. Our team identified four high-level mission requirements that the system needed to be capable of, each with its own set of sub-requirements.
The first of these is the ability to autonomously navigate to predefined waypoints placed throughout the competition area. The UAV should be capable of doing so reliably, as any manual takeover would result in a significant loss of competition points. A secondary focus for this is accuracy, as the UAV has fly as close to the waypoints as possible in order to maximize points.
Secondly, the UAV must be capable of performing the aerial surveying of a predefined area, identifying the targets scattered throughout. These targets take the form of different coloured shapes with letters or numbers on them. Additional points are awarded for autonomous identification and geolocation of the targets. Target data must then be uploaded to the competition’s interoperability servers.
The third feat the UAV must be capable of is avoiding virtual obstacles. The competition’s interoperability server provides the location of various static or mobile obstacles that the UAV needs to navigate around. Points are awarded separately for static obstacles and mobile ones, each of these being either a pass or a fail. For points to be awarded, the UAV must not cross any of the obstacles.
Finally, the UAV is required to autonomously deliver an 8 oz water bottle as close as possible to a predetermined location without the bottle suffering any damage. The UAV is not allowed to land in order to deliver the bottle and must maintain a minimum altitude.
The initial aircraft design decisions of Martlet-1 involved consideration of the type of airframe to be used. Primary categories of aircraft compared were multirotors, helicopters, and fixed wing aircraft. Research indicated that multirotors and helicopters were extremely agile, and were capable of hovering and achieving vertical takeoff and landing (VTOL). Additionally, it was found that multirotors tended to have better crash resistance than helicopters. However, fix winged aircraft, both conventional and flying wing, were found to have better flight endurance and payload capacity than their rotary wing counterparts. As the competition is held at an airfield, VTOL and vertical agility were not critical features. Additionally, the ability to loiter was not necessary as all targets were static. Given these findings, a fixed-wing airframe was chosen.
After the type of airframe had been selected, the project entered the next phase of research: the comparison of custom airframe designs to their commercial off-the-shelf equivalents. As this project is McGill Robotics’ first aerial vehicle, the team decided on a commercial off-the-shelf airframe to earn more time for full system testing.
An FPVmodel electric swallow was chosen as the the competition airframe, as it met the desired payload capacity and monetary constraints. A ventral compartment provides ample space for the custom 2 degree of freedom camera gimbals. Other components were placed with two goals in mind: electromagnetic interference reduction and center of gravity position.
While deciding on the internal layout of the UAV, we put to use our experience with previous robots. Efforts were made to separate the battery and motor lines from the regulated and signal lines, as we had already found that high power motor lines were capable of interfering with digital signals. In addition, the battery was put on an adjustable plate, allowing for the position of the center of gravity to be manipulated. This made it possible to add custom components throughout the year without compromising the stability of the aircraft.
Martlet-1’s electrical system was designed from the ground up using a mix of custom printed circuit boards (PCB) and off-the-shelf components. The UAV contains a total of 7 custom designed PCBs generously sponsored by Elecrow.com. Each PCB was designed by our team members using DipTrace software.
The UAV is powered by a six-cell 22,000 mAh lithium polymer battery to ensure 45 min of flight time. Four physical switches determine what parts of the UAV receive power. This way, it is possible to test isolated parts of the system, and power can be cut from the rest of the system in case of an emergency.
Martlet-1 uses an intel NUC7I7 as the on-board computer. The NUC receives power from a custom power supply unit and uses a hot-swap controller that allows it to run off a backup power supply while swapping batteries without turning the computer off.
Two Point Grey Flea3 machine vision cameras are held in Martlet-1’s ventral compartment, allowing for target identification and classification. These cameras are stabilized by two custom designed gimbals using STorM32 gimbal controllers, which are powered by a custom buck converter. Each gimbal communicates with the computer using a custom serial driver and is able to stow its camera during take-off and landing, stabilize its camera, and set its camera to a specific orientation during flight.
Martlet-1 uses two types of connectors for electrical connections: XT-90 connectors for power transfer and DF13 connectors for signal transfer. This unified connector scheme enables each submodule to be added or removed without needing a complete system redesign.
Two boards are also used for user interactions. A battery indicator board indicates the battery level, and displays the power remaining six tri-color light-emitting diodes (LED) when needed. A UAV control panel board also holds switches for power as well as several LED indicators to display power supply state, computer power state, and software state among other things. The system also allows for a hot-pluggable High-Definition Multimedia Interface (HDMI) screen to be connected to the computer, enabling extended on-board debugging
The team’s software division works hard on writing the code required to operate the aircraft safely and to full capacity, focusing mostly on fields such as autonomous navigation, obstacle avoidance, simulation, and computer vision.
A 3DR Pixhawk Mini serves as the autopilot. This product’s small form-factor and intuitive interface make it an ideal pick for Martlet-1. Moreover, the Pixhawk is directly compatible with a full-suite of sensors that make the UAV almost ready-to-fly out-of-the-box. The suite includes a GPS receiver, a power monitoring module, a telemetry kit, and a digital airspeed sensor that fit compactly onto the aircraft.
The open-source PX4 flight stack was used for all autonomy purposes, and was customized to fit our needs. The flight stacks’ integrated black box capabilities gives the team the ability to log each flight’s message stream for convenient post-flight debugging and replay.
In order to be able to avoid both stationary and moving obstacles, Martlet-1 uses Deep-Q networks in addition to the rapidly exploring random tree generally used for such applications. This serves to address the problem caused by the uncertainty in both the UAV’s and the obstacles’ dynamics.
To mitigate some of the risks inherent to flying, the team put a significant amount of effort into developing a reliable simulator on which to test missions. Gazebo was selected for that role due to its seamless integration with ROS. Several custom plugins were also used to extend its functionality.
One prominent characteristic of UAV flight is the risk involved. The slightest oversight can result in a crash, resulting in a massive loss of progress. The team therefore makes sure to test any new software on multiple levels and takes a number of precautions before every flight. Before being flown on Martlet-1, any piece of software undergoes unit testing before going through the simulator to make sure it works properly. The software is then tried on one of the team’s test planes, and will only be used on Martlet-1 if it is demonstrated to be safe. Moreover, an extensive check of the UAV’s fuselage, control surfaces, and sensors is performed before every flight.
In addition to Martlet-1, the mechanical division has maintained a fleet of smaller UAVs, which we have all named Gooney. These UAVs are used to quickly test software features without risking Martlet-1. The use of smaller UAVs also allowed for much simpler testing logistics. The use of Gooney for testing had allowed for much shorter software iteration cycles and had provided valuable operational knowledge, which were used to streamline procedures during subsequent tests.
Gooney-3, the current Gooney model, is based on the HobbyKing Bixler v1.1 airframe which the team modified to meet the testing needs. The top portion of the nose of the fuselage was removed to make room for the autopilot unit. A hatch was then cut into its bottom to allow access to the interior, which was reinforced. Easily replaceable 3D-printed and laser cut parts were used to mount the autopilot unit as well as various sensors, hold the battery in place, and attach the GoPro Hero 4 camera that allows the Gooney-3 to gather video footage.