Current Masters/PhD research at University of California, Santa Cruz (UCSC) currently consists of working on the Santa Cruz Low-cost UAV GNC System’ (SLUGS) at the Autonomous Systems Laboratory (ASL). A current side project I’m working on is to visualize the data that is produced from the SLUGS simulation such that it looks like the user is seeing through a camera mounted to the front of the UAV.


SLUGS is a full-featured UAV autopilot. Its sensor suite consists of a gyroscope, accelerometers, magnetometers, pressure sensors, etc. The SLUGS is able to take commands from a wireless groundstation, and control up to ten PWM servo motors.

SLUGS is currently used with a commercial-off-the-shelf Multiplex Mentor radio controlled aircraft. The airframe is a small-medium sized park flyer, and powered by an electric motor. The SLUGS simulation is coded in MATLAB/Simulink and has a precise 6-DOF model of this exact airframe.

There are many great F/OSS options for UAV autopilots, however SLUGS is designed from the ground up to be a research and design platform FOR UAV autopilots.



More information on SLUGS can be found at its website or in Dr. Mariano Lizarraga’s PhD thesis.


Using the Keyhole Markup Language (KML), the UAV’s forward view can be displayed to a viewer. KML is a widely used standard for GIS files. Many popular GIS systems (NASA World Wind, ESRI ArcGIS, QuantumGIS, Google Earth) offer KML support, or are in the process of doing so. KML is based on XML and is a self describing document.

Another benefit of KML is the ability to easily leverage 3rd party data. Viewing a KML file in Google Earth shows rich data layers (Panoramio, weather) as well as ~current satellite imagery and 3D buildings.

KML specification defines a feature called a ‘tour’. A tour is made up of placemarks that describe where a camera is placed, and the camera’s attitude at that point. The information needed for each placemark is: latitude, longitude, altitude, roll, pitch, yaw, duration.

The SLUGS comes bundled with a simulation written in MATLAB/Simulink. One of the features of the simulation is that it outputs all of the aforementioned information. The simulation had to be extended such that it could accept lat/lon/altitude target points, then code was required to take the output of the simulation and write it to a KML file. The code was not complex, though care had to be taken with the conversions to/from meters to decimal degrees and down-sampling (simulation produces 100 readings/second, KML file uses ~3 per second).

FLIGHT 1/2. UCSC, East Field.

This is a small test flight, taking off from the Village at UCSC, and circling (~squaring) the East Field. Full KML file of the flight available HERE.

A reference path of the flight can be seen below.


The full flight video can be found HERE.

FLIGHT 2/2. San Francisco, CA.

This is a large ~fifteen minute tour of downtown San Francisco. The UAV takes off from Golden Gate Park, goes east towards Duboce Triangle, turns north to follow Market up to the Ferry Building, turns west to go past Alcatraz and the Golden Gate Bridge, turns south to head back to the Golden Gate Park. Full KML file of the flight available HERE.

A reference path of the flight can be seen below.


The full flight video can be found HERE.

Leave a Reply