VCU Skyline. Team Members: Project Advisor: Dr. Robert Klenke. Last Modified May 13, 2004 VCU SKYLINE 1

Similar documents
Aerial Photographic System Using an Unmanned Aerial Vehicle

GPS System Design and Control Modeling. Chua Shyan Jin, Ronald. Assoc. Prof Gerard Leng. Aeronautical Engineering Group, NUS

Improvements to an Autonomous Unmanned Aerial Reconnaissance System

Classical Control Based Autopilot Design Using PC/104

OughtToPilot. Project Report of Submission PC128 to 2008 Propeller Design Contest. Jason Edelberg

INSTRUCTIONS. 3DR Plane CONTENTS. Thank you for purchasing a 3DR Plane!

Heterogeneous Control of Small Size Unmanned Aerial Vehicles

U-Pilot can fly the aircraft using waypoint navigation, even when the GPS signal has been lost by using dead-reckoning navigation. Can also orbit arou

2007 AUVSI Competition Paper Near Space Unmanned Aerial Vehicle (NSUAV) Of

The brain for the plane is the Airelectronics' U-Pilot flight control system, which is embedded inside the plane's fuselage, leaving a lot of space on

Skylark OSD V4.0 USER MANUAL

SMART BIRD TEAM UAS JOURNAL PAPER

New functions and changes summary

Implementation of Nonlinear Reconfigurable Controllers for Autonomous Unmanned Vehicles

Recent Progress in the Development of On-Board Electronics for Micro Air Vehicles

2009 Student UAS Competition. Abstract:

Jager UAVs to Locate GPS Interference

Midway Design Review. Search And Find Emergency Drone SAFE Drone. Team 4 December 5, 2016

North Carolina State University Aerial Robotics Club

Mississippi State University Unmanned Aerial Vehicle Entry into the AUVSI 2004 Student UAV Competition

Autonomous Navigation of a Flying Vehicle on a Predefined Route

Brian Hanna Meteor IP 2007 Microcontroller

Phantom Dome - Advanced Drone Detection and jamming system

EE 314 Spring 2003 Microprocessor Systems

THE DEVELOPMENT OF A LOW-COST NAVIGATION SYSTEM USING GPS/RDS TECHNOLOGY

FLCS V2.1. AHRS, Autopilot, Gyro Stabilized Gimbals Control, Ground Control Station

If we want to show all the subsystems in the platform, we got the following detailed block diagrams of the platform.

Study of M.A.R.S. (Multifunctional Aero-drone for Remote Surveillance)

ARIES: Aerial Reconnaissance Instrumental Electronics System

User Manual Version 1.0

Intelligent Bus Tracking and Implementation in FPGA

Hardware in the Loop Simulation for Unmanned Aerial Vehicles

Hardware-in-the-Loop Simulation for a Small Unmanned Aerial Vehicle A. Shawky *, A. Bayoumy Aly, A. Nashar, and M. Elsayed

Virginia Commonwealth University. Helo UAS. Helicopter Unmanned Aircraft System

Design of a Flight Stabilizer System and Automatic Control Using HIL Test Platform

1 P a g e. P13231 UAV Test Bed Setup Manual

Development of a Fixed-Wing Autonomous Aerial Vehicle at Virginia Tech

Formation Flight CS 229 Project: Final Report

Massachusetts Institute of Technology Unmanned Aerial Vehicle Team

Emergency Locator Signal Detection and Geolocation Small Satellite Constellation Feasibility Study

Introducing the Quadrotor Flying Robot

IPRO 312: Unmanned Aerial Systems

University of Minnesota. Department of Aerospace Engineering & Mechanics. UAV Research Group

DESIGN & FABRICATION OF UAV FOR DATA TRANSMISSION. Department of ME, CUET, Bangladesh

Hardware Modeling and Machining for UAV- Based Wideband Radar

University of Alberta Aerial Robotics Group

Delhi College of Engineering 2009 AUVSI STUDENT UAS COMPETITION. Team UAS DCE Journal Paper

PROGRESS ON THE SIMULATOR AND EYE-TRACKER FOR ASSESSMENT OF PVFR ROUTES AND SNI OPERATIONS FOR ROTORCRAFT

F-104 Electronic Systems

Adaptation of an Commercially Available Stabilised R/C Helicopter to a Fully Autonomous Surveillance UAV

SELF-AWARE UNMANNED AERIAL VEHICLE

Design of a Remote-Cockpit for small Aerospace Vehicles

Detrum MSR66A Receiver

Multi Frequency RFID Read Writer System

Pitlab & Zbig FPV System Version 2.60a. Pitlab&Zbig OSD. New functions and changes in v2.60. New functions and changes since version 2.

MICRO AERIAL VEHICLE PRELIMINARY FLIGHT CONTROL SYSTEM

Nautical Autonomous System with Task Integration (Code name)

Advances in Military Technology Vol. 5, No. 2, December Selection of Mode S Messages Using FPGA. P. Grecman * and M. Andrle

Index Terms IR communication; MSP430; TFDU4101; Pre setter

ŞahinSim: A Flight Simulator for End-Game Simulations

NMEA2000- Par PGN. Mandatory Request, Command, or Acknowledge Group Function Receive/Transmit PGN's

Experimental Cooperative Control of Fixed-Wing Unmanned Aerial Vehicles

A. Measured weight of the payload (not including payload plate) Table 1. Weights of the payload subsystems

Preliminary Design Report. Project Title: Search and Destroy

Development of an Autonomous Aerial Reconnaissance System

An Introduction to Airline Communication Types

RC Altimeter #2 BASIC Altitude data recording and monitoring system 3/8/2009 Page 2 of 11

Project Final Report: Directional Remote Control

The Next Generation Design of Autonomous MAV Flight Control System SmartAP

Fixed Wings UAV Direction Control Hardware Design

Team S.S. Minnow RoboBoat 2015

Digital Logic ircuits Circuits Fundamentals I Fundamentals I

TEAM AERO-I TEAM AERO-I JOURNAL PAPER DELHI TECHNOLOGICAL UNIVERSITY Journal paper for IARC 2014

S.E.V. Solar Extended Vehicle

Test and Integration of a Detect and Avoid System

Autopilot System Installation & Operation Guide. Guilin Feiyu Electronic Technology Co., Ltd

Requirements Specification Minesweeper

FOXTECH Nimbus VTOL. User Manual V1.1

Microwave Engineering Project (MEP) Update The Problem is Pointing

Flight Dynamics and Control of an Aircraft With Segmented Control Surfaces

BRB900 GPS Telemetry System August 2013 Version 0.06

Total Border Security Surveillance

Project Number: 13231

Controller based Electronic Speed Controller for MAV Propulsion System

Project Name: Tail-Gator

Autonomous Remote Control Drone

AIMS Radar Specifications

THE DEVELOPMENT OF A LOW COST AUTONOMOUS UAV SYSTEM

Arkbird Hummingbird BNF Version Airplane User Manual Caution

Attack on the drones. Vectors of attack on small unmanned aerial vehicles Oleg Petrovsky / VB2015 Prague

III. MATERIAL AND COMPONENTS USED

Autonomous Optical Guidance System

Height Limited Switch

Data Acquisition System for an Unmanned Aerial Vehicle

Guilin Feiyu Electronic Technology Co., Ltd. Guilin FeiYu Electronic Technology Co.

Ultrasonic Positioning System EDA385 Embedded Systems Design Advanced Course

STUDY OF FIXED WING AIRCRAFT DYNAMICS USING SYSTEM IDENTIFICATION APPROACH

ECE 511: FINAL PROJECT REPORT GROUP 7 MSP430 TANK

DragonLink Advanced Transmitter

HELISIM SIMULATION CREATE. SET. HOVER

Transcription:

VCU Skyline Last Modified May 13, 2004 Team Members: Abhishek Handa Kevin Van Brittiany Wynne Jeffrey E. Quiñones Project Advisor: Dr. Robert Klenke VCU SKYLINE 1

* Table of Contents I. Abstract... 3 II. Introduction... 3 III. FCS Architecture and Development Environment... 4 IV. UAV Airframe... 7 V. Receiver Input and Servo Control Subsystem... 9 VI. Software... 11 VII. Skyline Base Station Telemetry Software... 16 VIII. Reconnaissance Subsystem... 18 IX. Safety Consideration... 18 X. Conclusion... 19 VCU SKYLINE 2

* VCU Skyline I. Abstract The following document will provide details on the development of an unmanned aerial vehicle (UAV) that will be entered into the 2nd Annual AUVSI Student UAV Competition held by the Association for Unmanned Vehicle Systems International. At a higher level, our objective is to develop a UAV that is capable of performing realistic autonomous missions in an aviation environment. In order to achieve our goal of developing such a UAV, we were required to integrate multiple hardware components along with various interacting electronic devices. Software development will ensure that these devices properly interact and communicate with each other. This paper presents a detailed description of the system architecture based on the FPSLIC, and the UAV structure, functionality, and implementation of its subsystems. II. Introduction UAVs are vital for surveillance and other purposes for many military and government organizations. This form of application is used in order to develop situation awareness, security, and most importantly, prevent the loss of lives. The primary objective is to develop an autonomous Fight Control System (FCS) that achieves the desired flight navigation and therefore allowing for execution of specific reconnaissance missions. The overall project goal is to integrate multiple devices utilizing hardware, software, and synthesis tools to develop a working FCS, using the Field Programmable System Level Integrated Circuit (FPSLIC) device from Atmel. With this microcontroller we have implemented an FCS that integrates the global positioning system (GPS) device, multiple servos, an electronic co-pilot sensing device, and a radio modem, transmitter, and receiver. Commercial-off-the-shelf (COTS) equipment was utilized to build the actual UAV VCU SKYLINE 3

including a surplus FQM-117B MIG-27 Army target drone that was provided by the U.S. Army as the airframe of the UAV. The principal focal point of the development is the implementation of the FCS. Coding for hardware and software were performed using the Very high-speed integrated circuit Hardware Description Language (VHDL) and C/C++ respectively. The Proportional- Integral-Derivative (PID) control loops for altitude and heading control developed in software are essentially creating the brain of the UAV in order for it to navigate autonomously. The system also includes a ground control base station supporting a graphical user interface (GUI) implemented through Visual Basic. The project was divided into manageable subsystems for ease of implementation and testing. These subsystems are: UAV Airframe Receiver Input and Servo Control Subsystem FCS Software Skyline Base Station (SBS) Telemetry Software Reconnaissance Subsystem III. FCS Architecture and Development Environment The UAV FCS is based on the Atmel FPSLIC device as shown in figure 3.1. The FPSLIC provides a powerful hardware and software platform that allows system functions to be implemented in either hardware or software depending on the desired functionalities governed by the system requirements. In addition it provides for easy and rapid communication between software and hardware during system operation. Furthermore, the level of integration of the FPSLIC device makes for a low-power, compact system solution that fits well within the requirements for a UAV. VCU SKYLINE 4

Figure 3.1: System Architecture The ATMEL FPSLIC device combines an 8-bit AVR microcontroller with 32K bytes of SRAM and a 40K gate equivalent Field Programmable Gate Array (FPGA) device on a single chip. Atmel supplies a FPSLIC development board, ATSTK94, which contains a single AT94K40AL FPSLIC device. The ATSTK94 development board provides access to all of the AT94K device's I/O pins via: headers, two RS-232 ports, a programming interface, several LEDs, switches, and a 15-segments LED displays. Atmel also provides the System Designer software for developing applications based on the FPSLIC. System Designer includes a comprehensive FPGA tool suite based on the Exemplar HDL Synthesis tool and Figaro Place and Route tool for developing hardware to be implemented in the on-chip FPGA. System Designer includes the IAR Complier for software development. In addition, several third party C and C++ compilers are supported for VCU SKYLINE 5

seamless integration into System Designer. Finally, System Designer includes a unique interactive co-simulation environment for the FPSLIC device based on the ModelTech HDL simulator and the Mentor Graphics Seamless co-simulation tool. The development environment is shown in figure 3.2. SRAM Figure 3.2: Development Environment A complete UAV control system, based on the system architecture shown in figure 3.1, has been developed and installed in the MIG-27 Army target drone. The system is designed for both standard manual radio control (RC) type operation and autonomous operation using a COTS GPS for navigation. The architecture of the FCS makes effective use of the FPSLIC device by mapping some functions to dedicated hardware in the FPGA portion of the FPSLIC, and other functions to software executing on the AVR microcontroller inside the FPSLIC. Repetitious or long time-scale functions such as the measurement of pulses being received from the ground pilot via the VCU SKYLINE 6

standard RC transmitter-receiver, and the generation of the outgoing pulses for the aircraft servos are implemented in hardware. Other complex functions such as the PID controllers for altitude and heading control are implemented in software. The control system also includes a Trimble Lassen LP GPS unit that communicates with the AVR through the universal asynchronous receiver-transmitter (UART) on the FPSLIC device. A 900MHz two-way radio modem allows the FCS to communicate with a ground base station telemetry software. This link provides feedback to the pilot and the development team on the state of the aircraft and the control system itself as well as allowing certain parameters governing the UAV operation to be uploaded to the FCS while the UAV is airborne. IV. UAV Airframe With the MIG-27 target drone as the basis for the airframe, the engine was upgraded to an O.S. 91 and uses a 20oz fuel tank to contain the alcohol, oil, nitro-methane based fuel. In order to make the airframe more responsive, the elevator, rudder, and aileron were improved with better hinges and materials. The electronics of the UAV use a 10-cell 3000-mAh battery pack to power the FCS. This battery pack is mounted within the left rear fuselage of the plane. The main cargo bay in the fuselage houses the FPSLIC, Tremble GPS unit, MaxStream Radio Modem, FM receiver, optical-isolator, and additional components as shown in figure 4.1 and figure 4.2. The estimated payload of the current set up is approximately 12 lbs. With this current set-up, the UAV is capable of flying for about half an hour to an hour depending on the weather conditions and throttle settings. This duration at cruise speed translates to an overall range of about 10-15 miles. VCU SKYLINE 7

Figure 4.1: Exterior Structure Diagram Figure 4.2: Interior Structure Diagram VCU SKYLINE 8

V. Receiver Input and Servo Control Subsystem The radio receiver input and Servo Control Subsystem (SCS) consists of the pulse width-tobinary and binary-to-pulse width conversion blocks shown in figure 3.1. The function of this subsystem is to receive the six signal input channels from the user through the radio controller and convert those to 6, 12-bit binary, numbers equivalent for input into the FCS software. The purpose of the SCS is to convert binary number outputs from the FCS to the pulse width modulated signals required to move the servos to the fixed position. The normal servo control pulse width signals and their binary equivalents are shown in figure 5.1 below. Figure 5.1: Pulse Width Modulation The hardware to implement the receiver input and servo control subsystem was designed using VHDL and synthesis tools. A similar system developed at Virginia Commonwealth University for a NASA research application was used as a basis for this implementation. The original implementation was for a 10-channel input and 32-channel output control system. Utilizing the FPSLIC, the current system implements a 6-channel input and a 6-channel output SCS. This control system is capable of taking in six signals from the radio controller and generating six output signals, which control the appropriate servos. VCU SKYLINE 9

Figure 5.2: FPGA Hardware Design Overall the UAV uses the FPGA to control the components of the UAV as seen in figure 5.2 and the SCS is implemented using synthesizable VHDL. The inputs to the SCS are the signals from the transmitter, which represent the aileron, throttle, elevator, rudder, auto/manual mode and the co-pilot sensitivity input. The ch_conversion component takes in each of these channels and converts the pulse width to a number. The pulse widths are coming in at 20 ms intervals with a width of.5 to 2.5 ms each. Once the channel width is converted to a number, it is stored in the memory. The FCS software, executing on the AVR microprocessor on the FPSLIC, can concurrently read the hardware memory to obtain the channel data. In addition, the FCS software can also write to the hardware memory where the servo_controller component generates the pulses on the respective channel output and writes to the watchdog component, which is monitoring the software. If no signal is received from the FCS software for more than a second, watchdog timer VCU SKYLINE 10

goes off and servo_controller component uses the original hardware memory to drive the servos, which returns full manual control to the pilot in case of a software failure. VI. Software Flight Control System (FCS) Main() Interrupt Service Routine Get GPS Data Calculate UAV Positions Master PID SkyLine Base Station Get Byte from Satellite Make Report Parse Report Auto Manual Mode Set Read Memory Write Memory Altitude PID Long Lat PID PID Adjuster Adjust UAV Figure 6.1: Software Flow Diagram FCS software executing on the AVR microcontroller on the FPSLIC controls the UAV. This software was developed using embedded C/C++. Figure 6.1 shows the breakdown of the FCS software into its sub components. The flow diagram shows the sequence of events that happen starting from collecting data from the GPS to implementing the change in the UAV operational state. The first step is to collect data from the GPS. The data from the GPS is received in a binary format and uses the Trimble Standard Interface Protocol (TSIP). Once a full report is received, the data is parsed from the report and passed to the functions that calculate additional information to navigate the UAV. These calculations include heading, bearing, range, and x and y positions. Heading is the angle the UAV is navigating relative from true north, bearing is the angle the UAV needs to navigate in the direction of the desired waypoint, and range is the distance in meters VCU SKYLINE 11

from the UAV to the desired waypoint. Most importantly those values are calculated using the x and y positions that are relative from a chosen datum point, a coordinate west and south of all the other waypoints and navigation coordinates. Using a datum point makes the calculations easier on the software by not using standard great circle calculations and uses less SRAM memory by converting all the values to integers instead of floating point numbers. When all of the necessary data is obtained, it is passed to the Master (LLA) PID component for navigating the UAV. Within the LLA PID component, the Longitude and Latitude (LL) PID is executed by the AVR first, followed by the Altitude PID. The algorithms used to navigate are set in these PID control loops using altitude, heading, and bearing as the critical determining variables. The PID control loops are not true proportional-integral-derivative controls due to that fact that our system state setup is discrete. The GPS unit can only update once a second and therefore fuzzy logic was implemented consisting of 5 states for the altitude control and 9 states for the longitude and latitude control. This fuzzy logic is still referred to as a PID control due to the fact that an error measurement is calculated from the difference between current set point and desired set point. The overall objective of the PIDs is to minimize the error measurement to as close to zero as possible. In addition, there are embedded constants and gains that can modify the system output. The PID configurations are simplified by the use of the FMA Direct Co-Pilot. This device permits the UAV to have a maximum bank angle to prevent it from rolling over upside down. The device consists of a thermal sensor and a servo controller. The thermal sensor detects the heat signature of the sky and ground and levels out the UAV by making servo adjustments to the aileron and elevator when necessary. Calibration needs to be performed prior to flight and the sensitivity is set by the transmitter, one of the six signals being transmitted to the UAV. The Altitude PID control uses the altitude data from the GPS. The error measurement for this PID is the difference between the desired cruise altitude and the current altitude. Once the error VCU SKYLINE 12

measurement is calculated, this variable is run through a series of conditions. If the error measurement is less than the level boundary limit then the altitude control state is set to fly level. In the level state, the FCS sends the value corresponding to a neutral elevator position to the servos. This neutral elevator position actually goes first to the co-pilot module. When the co-pilot module receives a neutral elevator position, it uses its infrared sensors to hold the aircraft level with the horizon, resulting in the UAV remaining at a relatively stable altitude. If the altitude error measurement is less than the crossover limit then the altitude control state is set to increase or decrease altitude by a small amount respective to the positive or negative value of the error measurement. This increase or decrease is performed by sending a value to the co-pilot corresponding to a slight up or down elevator position. The co-pilot in turn, translates this up or down position, again using its infrared sensor, into a constant small climb or dive attitude for the aircraft. Similarly, if the altitude error measurement is greater than the crossover boundary limit then the altitude control state is set to increase or decrease altitude by a large amount respective to the positive or negative value of the error measurement. These states also adjust the throttle to assist the UAV in climbing or descending. Additionally, these states for the altitude control determine the pulse width needed to control the desired throttle and elevator servo positions. The Altitude PID states and corresponding limits are shown in figure 6.2. Figure 6.2: Altitude Control States VCU SKYLINE 13

The LL PID control loop functions similarly to the Altitude PID control loop. The error measurement for this PID is the difference between the current waypoint bearing and the current UAV heading, both calculated from the longitude and latitude values from the GPS. The goal of this control loop is to make the heading equal to the bearing. Once the error measurement is calculated, this variable is run through a series of conditions. If the error measurement is less than the straight boundary limit then the LL control state is set to fly straight. If the error measurement is greater than the straight boundary limit then the LL control state is determined by predefined intervals that determine the degree of turn that needs to be implemented. These left and right interval states include two rudder only states for turns less than 20 degrees and two states that implement a combination of rudder, aileron, and elevator actions for banking turns between 20 and 180 degrees. These states for the LL control determine the pulse width needed to control the desired elevator, rudder, and aileron servo positions. Again, in the banking states, the co-pilot module maintains a constant bank angle relative to the horizon using its infrared sensors. The LL PID states and limits are shown in figure 6.3. Figure 6.3: Longitude & Latitude PID VCU SKYLINE 14

The GPS data received frequently is inconsistence. The altitude signal is subject to a small to medium error depending on the location due to trianglization and third dimension calculations. The LL values are subject to error as well. This was noticed when observing changing LL coordinates when the GPS device was at a fixed location. These inaccuracies lead to the implementation of an arrival distance radius when approaching the desired waypoint. This arrival distance is a system parameter variable that notifies the AVR when the UAV reaches within a specific radius in meters around the desired waypoint as shown in figure 6.4. Figure 6.4: Arrival Distance Radius Simultaneously functioning with the LLA PID is the Interrupt Service Routine that is called every 100 ms. It checks whether the system is in autonomous or manual mode. If it is in autonomous mode, then the system doesn t read the signals from the transmitter, it instead receives the servo values from the software as discussed previously. Once the system has obtained or determined the appropriate signals, those signals are then sent to the servos. Approximately every second, a packet of information from the FCS is transmitted to the Skyline Base Station. The information within the packet informs the user what state the system is in along with other navigating information. VCU SKYLINE 15

VII. Skyline Base Station Telemetry Software Figure 7.1 shows the software structure for the Skyline Base Station (SBS) written in Visual Basic. The SBS queries the FCS on the UAV for packets of information. When the appropriate packet is received back form the FCS, the base station software updates the system information within the graphical user interface. GPS UAV Skyline Base Station Com Event Decode Packet Status Packet Waypoint Packet UAV Packet PID Packet Load Current Waypoints Load UAV Variables Load PID Values Update Screen Update Waypoints Change UAV Variables Update PID Values Figure 7.1: Base Station Diagram The SBS telemetry software provides input to and receives output from the FCS. The packets that can be received from the FCS includes: status, waypoint variable, or PID system variable packets. The status packet includes information such as the location, heading, bearing, speed, altitude, and PID states. The waypoint variable packet includes the current waypoints. The PID VCU SKYLINE 16

system variable packet includes all the PID boundary variables. The SBS has the capability to send packets back to reconfigure the current settings and system parameters of the FCS. This two-way communication is done by the radio modem. The COM Event determines if the base station computer has received an update from the airplane. If an update is received from the plane, which is every second according to GPS time, then the incoming data is decoded and parsed into its individual components. The Decode Packet function then determines what the incoming data from the UAV is. This function determines if the data is a complete packet and what type of packet it is, for example it can be one of the three packets mentioned above. If a complete packet is not received, the data is ignored. The Status Packet then breaks the incoming packets apart into the individual data values contained in the packet. This information is used to update the status of the base station software. The Update Screen function updates graphical user interface. This will update the position of the UAV on the map, update the altitude, heading, bearing, speed, altitude history, heading and bearing history, the state of the PID s, the flight control of the plane (either manual or autonomous), the status bar which contains the latitude and longitude, and the system gauges. The Load PID Values function reads the current PID values from the UAV and will display them for the potential of being edited. Then the Update PID Values function sends the edited PID values to the UAV for changes in the old values. The Load UAV Variables and the Change UAV Variables work in the same way but with the other variable associated with the UAV. The user can request the current waypoints from the FCS, which are then downloaded and displayed on the waypoint variable screen. The Update the Waypoints function uploads the new values into the FCS. This allows the user to change the waypoints while the UAV is airborne. VCU SKYLINE 17

VIII. Reconnaissance Subsystem A very small, lightweight, and wireless camera is mounted underneath the UAV for the target identification and reconnaissance portion of the mission. Two servos are used to implement two degrees of freedom for changing the camera angle. The video provided by the camera is transmitted over a 2.4 GHz wireless link to the Skyline Base Station through a video receiver and capture device. The range for the video transmitter and receiver is approximately 5 miles. In order to determine the location of the target, an algorithm was developed that takes into account the altitude of the UAV, along with the size of the field of view. A video overlaying technique is used to put a grid on top of the incoming video to assist in determining the coordinates of the targets. IX. Safety Consideration There were several safety considerations taken through out the designing and development of the UAV structure, FCS, and its capabilities. The capability to switch back to manual mode at any given moment was the most important. This allowed us to test our design without the fear of the UAV flying away and out of control. A watchdog timer was implemented to detect software crashes. In the event the software crashes, immediate control is given back to the RC pilot. There is also a fail-safe mode that automatically detects loss of signal from the RC transmitter. If the UAV is in manual mode when loss of signal is detected, the controls are set to cause the UAV to spiral down to the ground at a low power setting. If loss of signal occurs in autonomous mode, the UAV will return to the original waypoint and circle until control is restored. VCU SKYLINE 18

X. Conclusion This paper has presented an UAV control system based on the Atmel FPSLIC. Primary mode of operation for the UAV is to take off in manual mode and then once the desired altitude is obtained, the pilot will switch to autonomous mode. The waypoints will already be preprogrammed into the FCS and once the plane is in autonomous mode, the FCS will take over and navigate the plane to its next waypoint. Also during this time, the FCS is queried by the Skyline Base Station System to send back its current position and upload any necessary data to the UAV. Once the UAV is within a pre-designated arrival range, the FCS should switch the coordinates to the next waypoint. When all the waypoint objectives and target missions are reached and accomplished the pilot can then land the UAV manually. The majority of these functions have been successfully tested and are still under development and testing. VCU SKYLINE 19