THE need for autonomous vehicles has been widely demonstrated for tasks such as search and rescue, disaster assessment, and military

Similar documents
The need for autonomous vehicles has been widely demonstrated for tasks such as search and rescue,

Georgia Tech Aerial Robotics Team 2009 International Aerial Robotics Competition Entry

Classical Control Based Autopilot Design Using PC/104

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

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

QUADROTOR ROLL AND PITCH STABILIZATION USING SYSTEM IDENTIFICATION BASED REDESIGN OF EMPIRICAL CONTROLLERS

UAV Flight Control Using Flow Control Actuators

Testing Autonomous Hover Algorithms Using a Quad rotor Helicopter Test Bed

OBSTACLE DETECTION AND COLLISION AVOIDANCE USING ULTRASONIC DISTANCE SENSORS FOR AN AUTONOMOUS QUADROCOPTER

Introducing the Quadrotor Flying Robot

302 VIBROENGINEERING. JOURNAL OF VIBROENGINEERING. MARCH VOLUME 15, ISSUE 1. ISSN

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

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

Implementation of Nonlinear Reconfigurable Controllers for Autonomous Unmanned Vehicles

Control System Design for Tricopter using Filters and PID controller

STUDY OF FIXED WING AIRCRAFT DYNAMICS USING SYSTEM IDENTIFICATION APPROACH

Experimental Study of Autonomous Target Pursuit with a Micro Fixed Wing Aircraft

Frequency-Domain System Identification and Simulation of a Quadrotor Controller

Helicopter Aerial Laser Ranging

The Next Generation Design of Autonomous MAV Flight Control System SmartAP

MEM380 Applied Autonomous Robots I Winter Feedback Control USARSim

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

Motion Control of a Three Active Wheeled Mobile Robot and Collision-Free Human Following Navigation in Outdoor Environment

Georgia Tech Team Entry for the 2012 AUVSI International Aerial Robotics Competition

Vehicle Speed Estimation Using GPS/RISS (Reduced Inertial Sensor System)

Range Sensing strategies

A Reconfigurable Guidance System

ZJU Team Entry for the 2013 AUVSI. International Aerial Robotics Competition

Teleoperation of a Tail-Sitter VTOL UAV

SELF-BALANCING MOBILE ROBOT TILTER

IMU Platform for Workshops

Extended Kalman Filtering

Integrated Navigation System

AIRCRAFT CONTROL AND SIMULATION

Fourteen Years of Autonomous Rotorcraft Research at the Georgia Institute of Technology

Implementation of PIC Based Vehicle s Attitude Estimation System Using MEMS Inertial Sensors and Kalman Filter

Design and Development of an Indoor UAV

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

INTELLIGENT LANDING TECHNIQUE USING ULTRASONIC SENSOR FOR MAV APPLICATIONS

Measurement Level Integration of Multiple Low-Cost GPS Receivers for UAVs

University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT

NovAtel SPAN and Waypoint GNSS + INS Technology

Teleoperation Assistance for an Indoor Quadrotor Helicopter

A 3D Gesture Based Control Mechanism for Quad-copter

AUTOPILOT CONTROL SYSTEM - IV

SELF STABILIZING PLATFORM

A3 Pro INSTRUCTION MANUAL. Oct 25, 2017 Revision IMPORTANT NOTES

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

Development of a Low Cost Autonomous Indoor Aerial Robotics System V1.0 1 June 2009

Applying Multisensor Information Fusion Technology to Develop an UAV Aircraft with Collision Avoidance Model

Modeling And Pid Cascade Control For Uav Type Quadrotor

SPAN Technology System Characteristics and Performance

Design and Implementation of FPGA Based Quadcopter

Implement a Robot for the Trinity College Fire Fighting Robot Competition.

LDOR: Laser Directed Object Retrieving Robot. Final Report

3DM-GX4-45 LORD DATASHEET. GPS-Aided Inertial Navigation System (GPS/INS) Product Highlights. Features and Benefits. Applications

EVALUATION OF THE GENERALIZED EXPLICIT GUIDANCE LAW APPLIED TO THE BALLISTIC TRAJECTORY EXTENDED RANGE MUNITION

Sensor set stabilization system for miniature UAV

Design of Self-tuning PID Controller Parameters Using Fuzzy Logic Controller for Quad-rotor Helicopter

Heuristic Drift Reduction for Gyroscopes in Vehicle Tracking Applications

Design of Tracked Robot with Remote Control for Surveillance

GPS data correction using encoders and INS sensors

ARDUINO BASED CALIBRATION OF AN INERTIAL SENSOR IN VIEW OF A GNSS/IMU INTEGRATION

Heterogeneous Control of Small Size Unmanned Aerial Vehicles

Construction and signal filtering in Quadrotor

PHINS, An All-In-One Sensor for DP Applications

Unmanned Air Systems. Naval Unmanned Combat. Precision Navigation for Critical Operations. DEFENSE Precision Navigation

NovAtel SPAN and Waypoint. GNSS + INS Technology

Location Holding System of Quad Rotor Unmanned Aerial Vehicle(UAV) using Laser Guide Beam

Design of Accurate Navigation System by Integrating INS and GPS using Extended Kalman Filter

Randomized Motion Planning for Groups of Nonholonomic Robots

Intelligent Robotics Sensors and Actuators

Moving Obstacle Avoidance for Mobile Robot Moving on Designated Path

Design and Implementation of Inertial Navigation System

CENG 5931 HW 5 Mobile Robotics Due March 5. Sensors for Mobile Robots

Wide Area Wireless Networked Navigators

Sensor Data Fusion Using Kalman Filter

Final Report. Chazer Gator. by Siddharth Garg

DelFly Versions. See Figs. A.1, A.2, A.3, A.4 and A.5.

Experimental Cooperative Control of Fixed-Wing Unmanned Aerial Vehicles

Miniature UAV Radar System April 28th, Developers: Allistair Moses Matthew J. Rutherford Michail Kontitsis Kimon P.

Development of a Low Cost Autonomous Aerial Robotics System V4.0 1 June 2008

Hopper Spacecraft Simulator. Billy Hau and Brian Wisniewski

Applying Multisensor Information Fusion Technology to Develop an UAV Aircraft with Collision Avoidance Model

UNCLASSIFIED. UNCLASSIFIED R-1 Line Item #13 Page 1 of 11

A New Perspective to Altitude Acquire-and- Hold for Fixed Wing UAVs

Digiflight II SERIES AUTOPILOTS

EMBEDDED ONBOARD CONTROL OF A QUADROTOR AERIAL VEHICLE 5

Operating Handbook For FD PILOT SERIES AUTOPILOTS

SENLUTION Miniature Angular & Heading Reference System The World s Smallest Mini-AHRS

GPS-Aided INS Datasheet Rev. 2.6

Design and Navigation Control of an Advanced Level CANSAT. Mansur ÇELEBİ Aeronautics and Space Technologies Institute Turkish Air Force Academy

CubeSat Integration into the Space Situational Awareness Architecture

INDOOR HEADING MEASUREMENT SYSTEM

INTERNATIONAL JOURNAL OF ELECTRICAL ENGINEERING & TECHNOLOGY (IJEET) TWO WHEELED SELF BALANCING ROBOT FOR AUTONOMOUS NAVIGATION

Autonomous Stair Climbing Algorithm for a Small Four-Tracked Robot

Various levels of Simulation for Slybird MAV using Model Based Design

Digiflight II SERIES AUTOPILOTS

Wheeled Mobile Robot Obstacle Avoidance Using Compass and Ultrasonic

Artificial Neural Network based Mobile Robot Navigation

Transcription:

JOURNAL OF AEROSPACE INFORMATION SYSTEMS Vol. 1, No. 1, January 213 Fully Autonomous Indoor Flight Relying on Only Five Very Low-Cost Range Sensors Girish Chowdhary, D. Michael Sobers Jr., Erwan Salaün, John A. Ottander, and Eric N. Johnson Georgia Institute of Technology, Atlanta, Georgia 3332-152 DOI: 1.2514/1.5234 Answering what is the bare minimum combination of avionics and vehicle platform design that enables useful autonomous indoor flight without a Global Positioning System (GPS) is required to understand the lower-cost bounds for indoor unmanned aerial system (UAS) technology. The GT Lama indoor UAS, capable of autonomously exploring indoor areas in the GPS-denied environment discussed here, was designed in an attempt to answer this question. The GT Lama weighs around 6 g (1.3 lb), has a diameter of approximately 7 cm (27.6 in.), and costs less than 9 U.S. dollars. Cost and weight savings are realized through development of an innovative indoor guidance, navigation, and control algorithm that uses only five small off-the-shelf low-cost range sensors rather than expensive and sophisticated sensors such as inertial measurement units, scanning laser range sensors, and GPS. The onboard software leverages the inherent stability of the coaxial rotorcraft platform and fuses information from the low-fidelity range sensors to detect and follow walls and other stationary obstacles. The algorithms are designed to encourage maximum exploration of the perimeter of an indoor environment in a reasonable amount of time. The avionics design and the guidance, navigation, and control algorithms used are discussed in detail and validated through flight tests. I. Introduction THE need for autonomous vehicles has been widely demonstrated for tasks such as search and rescue, disaster assessment, and military reconnaissance, to name a few. Miniature air vehicles (MAVs) are ideal candidates for such missions as they can use three-dimensional maneuvers to overcome obstacles that cannot be overcome by ground vehicles. However, significant technological challenges exist in order to ensure reliable operation in such environments. Most current algorithms for unmanned aerial system (UAS) guidance, navigation, and control (GNC) rely heavily on Global Positioning System (GPS) signals [1 3], and hence are not suitable for indoor navigation where GPS reception is poor at best. Furthermore, an indoor UAS must be sufficiently small in order to successfully navigate cluttered indoor environments, consequently limiting the amount of computational and sensory power that can be carried onboard. Finally, the UAS may need to be expendable when operating in dangerous or contaminated environments; hence, low-cost designs need to be explored. These restrictions pose significant technological challenges for the design of reliable MAV platforms capable of navigating cluttered areas in a GPS-denied environment. To allow for sufficient maneuverability, researchers have relied on rotorcraft-based MAVs. Many rotorcraft-based configurations, including quadrotors, ducted fans, and MAVs based on a conventional single-rotor design, are inherently unstable. To counter this lack of inherent stability, researchers have proposed the use of strapdown microelectromechanical systems (MEMS) inertial sensors (gyroscopes and accelerometers) to aid in the attitude stabilization of intrinsically unstable platforms (e.g., see [4,5] for quadrotor stabilization). To bound the biases from inertial sensors, other sensors providing position-related information are also needed, e.g., laser range finder [6], vision system [7,8], or both [9]. With all the required embedded sensors to enable stable flight of inherently unstable MAV platforms, the avionics system necessary for vehicle stabilization and indoor navigation ends up being heavy and expensive. On the other hand, if a rotorcraft platform that is stable in the attitude loop is used, then the required sensor load can be reduced, resulting in a significant decrease in the cost and complexity of the system. It is the purpose of this paper to establish the feasibility of such a low-cost lightweight approach based on inherently stable MAV platforms. To that effect, details of the design, development, and flight testing of the GT Lama UAS, which is capable of navigating cluttered and confined environments with a low-cost and low-weight embedded avionics system, are presented. The GT Lama weighs around 6 g, is 7 cm wide, and costs less than $9 U.S. dollars (USD) to build (based on pricing in 29). The GT Lama employs a novel approach to indoor GNC that does not require inertial sensors, a vision system, or GPS signals. Rather, it relies only on five commercially available low-cost low-fidelity range sensors and an event-based guidance algorithm that uses the internal geometry of indoor environments and leverages the inherent stability properties of the coaxial rotorcraft platform in an attempt to maximize the explored perimeter of an indoor area in a reasonable amount of time. The algorithms and GNC techniques developed here establish the requirements for a bare-minimum avionics and hardware combination that can result in useful indoor autonomous flight. Several behaviors of the presented algorithm are suboptimal when compared to what can possibly be achieved with UASs with more sophisticated sensor suites and mapping [simultaneous localization and mapping (SLAM)] capabilities (see, e.g., [6,9 11]. However, the algorithms discussed in this paper are by far computationally cheaper to implement, and the costs of some of the smaller laser scanners used for SLAM can be twice that of the costs of the entire GT Lama UAS (29 prices). Therefore, the GNC algorithms in this paper are expected to enable teams of extremely cheap expendable flying robots that can be deployed in an indoor environment in a launch-and-forget manner to transmit video signals from within. The discussion begins with the miniature rotorcraft platform employed for the development of the GT Lama in Sec. II, including the details of the sensing, computational, and communications hardware used. Next, a brief overview of the event-driven navigation, guidance, and control Presented as Paper 21-853 at the AIAA Guidance, Navigation, and Control Conference, Toronto, 2 5 August 21; received 18 August 21; revision received 11 July 212; accepted for publication 16 July 212. Copyright 212 by the authors. Published by the American Institute of Aeronautics and Astronautics, Inc., with permission. Copies of this paper may be made for personal or internal use, on condition that the copier pay the $1. per-copy fee to the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, MA 1923; include the code 194-3151/13 and $1. in correspondence with the CCC. Graduate Research Assistant, School of Aerospace Engineering. Student Member AIAA. School of Aerospace Engineering; currently Major, U.S. Air Force, Washington, DC. Member AIAA. Postdoctoral Fellow, School of Aerospace Engineering. Lockheed Martin Professor of Avionics Integration, School of Aerospace Engineering. Member AIAA. 21

22 CHOWDHARY ET AL. Table 1 Parameter Rotor diameter Takeoff weight Battery Remote control Technical details of the UAV platform Value 46 mm 41 g 8 mah 11.1 V LiPo 75 MHz FM radio Table 2 Range sensor manufacturer specifications and price ranges Sensor MaxSonar Sharp IR Range, m.15 6.45.2 1.5 Resolution, cm 2.54 1 Weight, g 4.3 4.8 Price, USD $25 $13 algorithm employed on the GT Lama is presented in Secs. III, IV, and V. Finally, flight-test results are presented in Sec. VI in which the GT Lama autonomously explores a typical indoor environment. II. Vehicle and Embedded Avionics System A. Aerial Platform A vehicle designed to traverse indoor environments must be sufficiently small and be able to maneuver tight corners. A traditional fixed-wing platform has poor hover performance (if it is capable of hovering at all), and hence is severely disadvantaged in this case. A natural choice then would be rotorcraft-based designs. However, most rotorcraft are unstable in flight and must have an inertial measurement unit (IMU) along with additional algorithms and sensors to estimate velocity, attitude, and angular rates in order to be effectively stabilized using closed-loop control laws. Due to restrictions on size and weight, a strapdown MEMS-based IMU must be used. The data from these sensors are susceptible to sensor drift and misalignment errors, which must be corrected using an external position fix [1]. Typically, this is achieved by using GPS signals [1 3], which are unavailable in indoor environments. A solution to this problem is to circumvent the attitude stabilization task by choosing a vehicle that has desirable stick-free stability properties in attitude. An example of such a vehicle is a coaxial miniature rotorcraft platform with counterrotating blades and a Bell stabilizer bar. The coaxial rotorcraft platform selected for this research is the Walkera E2 Lama, made by E-Sky. Some vehicle details are presented in Table 1. The vehicle is a counter-rotating coaxial helicopter with no tail rotor that has been augmented with an off-the-shelf attitude-hold system. The upper rotor is stabilized by a Bell stabilizer; the Bell stabilizer bar provides this vehicle with a passive stabilization system that results in a tendency of the vehicle to hold its attitude in space. The system is a four-channel helicopter with pitch, roll, yaw, and throttle controls. B. Flight Avionics With a stable attitude loop, the main task of the onboard controller is to provide position control by directly linking servo deflections to position measurements. These position measurements constitute relative altitude and relative distance to nearby features of the indoor environment. Considering restrictions imposed by indoor flight, the driving factors in sensor selection were maximum possible resolution and range with minimum possible weight, size, cost, and power. The MaxBotix LV-MaxSonar, and the SHARP GP2Y A2YKF were chosen. The Maxbotix sonar has a wide beam width and returns orthogonal range measurements within a 3 deg tilt range; hence, this sensor was chosen for altitude measurement. The SHARP infrared sensors have a narrow beam width and can be used to precisely measure point distances. Hence, these sensors were used for measuring the range to walls and obstacles. See Table 2 for detailed information on the sensors. The final configuration of sensors is shown in Fig. 1. The layout consists of one sonar range sensor pointed downward to measure the altitude, two IR range sensors installed with a 45 cm offset to measure the distance to obstacles in front of the rotorcraft, and two IR sensors arranged to measure the distance to obstacles on the right and left of the aircraft. The difference in range measurements between the two forward-looking IR sensors can also be used to estimate the heading of the aircraft. Further details of the sensor properties can be found in [12]. An ATmega128 microcontroller was used as the onboard flight computer for the GNC software. All software was programmed in C using the AVR Studio software development environment and uploaded to the ATmega using a JTAG connector. The ATmega128 processor with a 16 MHz clock speed was found to be satisfactory for the purpose of this effort. The IR range sensors have analog voltage outputs, which were read by onboard analog-to-digital input channels. The altitude sonar was read via serial port. The data were transmitted to the ground using a commercially available 2.4 GHz XBee XBP24-AWI-1 modem employing the Institute of Electrical and Electronics Engineers 82.15.4 standard. The XBee weighs less than 5 g, costs around $4 USD, and has a range of about 9 m (3 ft) in indoor environments. The final flight configuration with the platform, avionics, a larger battery, brushless motors, and a protective shroud with a diameter of 7 cm weighed only 65 g and had a total cost of less than $9 USD (value as of August 28). The final flight configuration is shown in Fig. 2. III. Navigation Algorithm A key focus of this effort was to enable navigation in indoor environments without relying on any external positioning signals. A traditional Kalman filter is ineffective in handling discontinuities and bad measurements from the sensors, as these cannot be modeled as zero mean Gaussian white noise. A bad measurement is defined as a measurement between the minimum and maximum valid outputs of the sensor that LV-MaxSonar-EZ1 TM data sheet, MaxBotix, Inc., Brainerd, MN, 27. SHARP GP2Y A2YKF Distance Measuring Sensor Unit Data Sheet, sheet number E4-A11EN, SHARP Corporation, Troy, MI, 26. ATMEL ATmega128 with AVR-H128 C Header board with 1-pin In Circuit Serial Programming connector, 4 KB Static Random Access Memory, data sheet, OLIMEX Ltd., Plovdiv, Bulgaria, 26 Further information can be found at http://standards.ieee.org/findstds/standard/82.15.4-211.html. Digi XBee 2.4 GHz XBee XBP24-AWI-1 6 mw Wire Antenna data sheet, Digi, Inc. (formally Maxstream), Minnetonka, MN, 28.

CHOWDHARY ET AL. 23 Fig. 1 Range sensor layout as viewed from above with the vehicle facing right. Infrared sensors are placed and oriented as shown, while the sonar is pointed downward for measuring altitude. appears to be uncorrelated with the previous and the latter measurements. When an update using a bad measurement occurs, the resulting large residual between the predicted measurement and the actual measurement will significantly change the state and its derivative, affecting the controller performance adversely. In addition, if an obstacle suddenly comes into the range of a sensor, a nonexistent velocity will be predicted again, adversely affecting the controller performance. To overcome the problems brought about due to bad measurements and popup obstacles, the Kalman filter was augmented with an outlier detection filter, as shown in Fig. 3. The outlier detection filter checks whether the residual for every new measurement is statistically probable (i.e., less than three standard deviations away from the residual covariance). If this is indeed the case, then the measurement is accepted and a filter update is performed. The details of this algorithm are described next. Let h denote the altitude measurement, let x denote the distance to an obstacle in front of the rotorcraft, and let y R and y L denote the distances to obstacles on the right and left of the rotorcraft. Then, the state vector is z h; x; y R ;y L, elements of which are assumed to be available as noisy sensor measurements. To estimate _z, a simple measurement model can be used [13]: _z 1 z (1) z _z Let be the state transition matrix, R be the measurement covariance matrix, Q be the process covariance, P be the state covariance, H be the observation matrix, and ^z be the state estimate. Choosing appropriate constants R and Q, a steady-state covariance P can be found by solving the discrete algebraic Riccati equation [13]. The Kalman gain K can then be computed as follows: K PH HPH R 1 (2) When a measurement is processed, the estimated state is first propagated forward to the current time: Then, the estimated state is updated using the measurement y: The covariance of the residual can be approximated by [13] ^z ^z (3) ^z ^z K y H ^z (4) H P Q H R (5) Fig. 2 Flight vehicle with sensors and protective shroud installed.

24 CHOWDHARY ET AL. Fig. 3 Flowchart of outlier detector used to reject bad measurements and detect discontinuities. To implement outlier detection, the following simple and computationally efficient scheme is used. If the residual is deemed improbable, the measurement is rejected but stored and the state is propagated without a measurement update. If the measurement is rejected four times in a row and all the rejected measurements are sufficiently similar, then a discontinuity (possibly due to an obstacle or change in the indoor geometry) is detected and the new measurement is accepted without altering the velocity estimate, thus ensuring smooth control. Figure 4 shows an example of the filter in operation. The heading of the rotorcraft is estimated using the relative range difference between the two forward-mounted IR sensors. Let the measurements from these sensors be denoted as x R and x L for the right and the left sensors, respectively, and let L denote the mutual horizontal offset between the two sensors. Then, an estimate of the relative heading can be given as xr x arctan L L (6) Figure 5 depicts the equations and the associated quantities used for detecting the heading and distance of the aircraft relative to a wall. IR sensors are accurate only within a limited range of an obstacle; hence, this heading estimate is highly susceptible to noise. This issue is handled in a computationally efficient manner by filtering the IR range measurements using an extended Kalman filter [13]. The orthogonal distance to the obstacle in front, denoted previously by x, can then be found by averaging x R and x L and correcting for the heading. Figure 6 shows the performance of the navigation algorithm attempting to estimate the wall distance and relative heading with respect to the wall using the two offset IR range sensors. This test demonstrates the wall heading estimation and control algorithm, as well as the longitudinal distance control algorithm. During this test, the vehicle was flying laterally along a wall, at a commanded distance of 1.14 m (45 in.), while trying to maintain a heading of deg relative to the wall normal vector. The difference between the two forward-looking IR sensors is used to estimate the heading, while the average of the two sensors is used to estimate the distance to the wall. The vehicle is navigating the environment shown in Fig. 7. Autonomous flight was initiated at 3 s, with turns occurring at approximately 4, 52, 66, and 8 s. Flight test data shown in Figs. 6 and 8 collected while flying this profile. 2 Altitude-Hold Maneuver 1.5 Altitude, m 1.5 Measurement Estimate Commanded Altitude Autopilot Switch (1=on) 5 1 15 2 25 3 35 4 Time, s Fig. 4 Altitude measurements and estimate showing the performance of the outlier detection routine.

CHOWDHARY ET AL. 25 Fig. 5 Two forward-looking IR (side-looking IR sensors omitted for clarity) sensors used to calculate vehicle heading with respect to the wall ( ). IV. Guidance Algorithm The task of the guidance algorithm is to plan a path such that the mission objectives are met. In this example, the presumed mission goal is to relay live video information from an indoor area of interest to a remote observer. Traditionally, the task of planning an optimum path such that mission requirements are satisfied is solved by using predefined global maps and the knowledge of the absolute information of the vehicle with respect to the map [14]. This approach, however, cannot be used in this case, as no absolute position information or a predefined map of the environment is available. MAVs operating in indoor environments need to simultaneously gather information about the immediate surrounding (also known as mapping) and find its position within this surrounding (also known as localization). Various approaches have been used toward solving the SLAM problem, with a common one being the integration of vision sensors with inertial sensors [15 17]. This approach relies on sophisticated measurements of the environment and needs significant computational resources for simultaneously forming a map and estimating the position of the vehicle. Since the main goal of this work was to reduce the cost and the weight of the aircraft as much as possible, an alternate approach was used that enables indoor area exploration without having to first solve the SLAM problem. The approach here is designed to work within any indoor environment enclosed (partially) by walls. Walls are easy to identify, have a smooth structure, and are built in a predictable manner. Furthermore, it is possible to traverse the complete perimeter of an indoor environment by simply detecting a wall and traversing alongside. Consequently, the guidance algorithm is designed to find a wall on its right, left, or in front. After detection, the algorithm points the rotorcraft toward the wall and attempts to maintains a predefined distance from the wall using forward-looking range sensors. Measurements from two forward-looking range sensors are combined to obtain a relative heading with respect to the wall. This information is then used in the heading controller that ensures that the rotorcraft maintains a constant heading with respect to the wall. To traverse the indoor environment, the vehicle simply flies sideways along the wall until it detects an obstacle or another wall in the direction of travel, thus triggering the corner guidance algorithm. The detected corners are maneuvered through open-loop turn logic. This approach can result in interesting behavior if there is a discontinuity in a wall, such as when an entire face of a building is missing. In this case, this approach would result in the system exiting the indoor environment and circling around the building by traversing the external perimeter. Furthermore, if the vehicle is Distance, m 2.5 2 1.5 1 Heading Hold Test Right IR Left IR Commanded Distance.5 1 2 3 4 5 6 7 8 9 Time, s 4 Fig. 6 Heading, deg 2 2 Heading Estimate Commanded Heading 4 1 2 3 4 5 6 7 8 9 Time, s Demonstration of the wall heading estimation and control algorithm, as well as the longitudinal distance control algorithm.

26 CHOWDHARY ET AL. Fig. 7 A typical flight test environment. The vehicle begins at the left side of the room and flies to the right while maintaining a specified distance and a relative heading with respect to the wall. initialized in the middle of a large hall, the approach would result in the vehicle flying to one side until it finds a wall. These behaviors are clearly suboptimal, but given the minimal choice of sensors and the lack of a closed-loop mapping (SLAM) algorithm, this is the best that can be expected. Furthermore, it is possible to minimize the likelihood of the vehicle entering into repetitive suboptimal behavior by adding a component of randomness to the guidance strategy. In essence, this approach can result in cheap expendable robots that can be distributed within an indoor environment to transmit video signals from different regions. On the onboard controller, this approach was implemented as an event-based algorithm, which switched through different guidance modes based on detection of events. Figure 9 presents a schematic of the guidance algorithm. The vehicle starts by entering the indoor arena through a specifically designed window entry mode (state S1). In this mode, an object detected on the forward-looking left or right IR sensors causes the lateral controller to adjust the flight path to remain centered on the window. Once the vehicle enters the indoor arena and walls are detected by the left or right IR sensor (events E2 or E3), the vehicle switches into left turn or right turn mode accordingly (states S2 or S3). In these modes, an open-loop left or right turn is commanded until the forward-looking IR sensors detect the wall (event E4). Once a wall is detected, the guidance 3 Longitudinal Distance Estimate Distance, m 2 1 1 2 3 4 5 6 7 8 9 1 Longitudinal Cyclic Command Cmd = ± 1.2.1.1.2 1 2 3 4 5 6 7 8 9 1 3 Lateral Wall Distance Distance, m 2 1 1 2 3 4 5 6 7 8 9 1 Lateral Cyclic Command Cmd = ± 1.2.1.1.2 1 2 3 4 5 6 7 8 9 1 Time, s Fig. 8 Longitudinal and lateral distances and cyclic commands recorded during a typical flight test through the environment shown in Fig. 7.

CHOWDHARY ET AL. 27 Fig. 9 Wall-following guidance algorithm. Specific sensor inputs cause the algorithm to progress to successive logic blocks. algorithm switches to wall follow mode (state S4). In this mode, the longitudinal controller maintains a predefined distance from the wall while the heading controller maintains the desired heading with respect to the wall. The vehicle then uses a predefined open-loop lateral cyclic servo deflection to traverse along the side of the wall to the right, using the right-facing sensor to detect walls and obstacles in the flight path. If a wall or obstacle is detected in the direction of flight, the vehicle enters inside turn mode (state S5, see Fig. 1a for a pictorial depiction), which is designed to either maneuver the corner (for concave corners) or fly around the obstacle. This is achieved by enforcing a predefined open-loop yaw command until no obstacle is seen by the right IR sensor. If one of the forward-looking IR sensors detects a step change to maximum range while the other sensor still reads near the estimated wall distance, a convex, or outside, corner has been detected and the vehicle enters the outside turn mode (state S6, see Fig. 1b for a pictorial depiction). In this mode, it yaws to the left in order to continue around the corner. At the conclusion of the inside or outside corner mode, the vehicle should be facing a wall; this is confirmed by verifying acceptable range measurements from the two front IR sensors. The vehicle then returns to wall-follow mode and continues flight. In this way, it is possible to traverse significant indoor areas in a reasonable amount of time. This logic was tested onboard the GT Lama in different indoor arenas and was demonstrated to ensure safe and effective indoor flight without reliance on GPS signal and inertial measurements, and using only five range sensors. The aforementioned event-based guidance algorithm uses various flags (such as wall detected, wall on right, etc.) to switch between different control modes. To ensure smooth switching, the flag values were filtered using a first-order filter; this ensures that a particular mode will be triggered only if the triggering flag has been consistently on for a while, effectively ensuring high confidence in the switches and reducing the possibility of chance switches. V. Control Algorithm In the traditional method for rotorcraft control, a position loop commands velocity, the velocity loop commands attitude, and the attitude loop achieves stabilization by using the actuators to control the angular rate. This approach is known as nested control loop stabilization and has been widely studied [14,18 2]. For the GT Lama, due to the lack of accurate angular rate and attitude information, the traditional method of nested control loops cannot be used. The problem is addressed by leveraging the inherent stick-free stability properties (in roll and pitch) of the coaxial rotorcraft platform and adding an off-the-shelf heading lock gyro to the control yaw. The position command is then directly linked to the actuator deflection using a proportional integral derivative (PID) control for providing servo deflections such that the vehicle is able to track a commanded relative position. The position commands are designed to ensure that the vehicle maintains a predefined relative distance from a wall and maintains relative altitude. Figure 11 shows a schematic of the approach. The control architecture is a PID design with gain scheduling applied such that the controller uses different gain values depending on where the vehicle is with respect to the wall and the direction of its relative velocity with respect to the wall. The rotorcraft dynamics around a trim point (such as hover) can be approximated by a linear model of the form [19,21,22] _x Ax B u u trim (7) Front Left IR Front Right IR Front Right IR Left IR Right IR Front Left IR Direction of Flight Left IR Right IR a) Inside turn Fig. 1 Direction of Flight b) Outside turn Depiction of inside- and outside-turns.

28 CHOWDHARY ET AL. Fig. 11 Leveraging the stability of the attitude-loop, position commands are linked directly to servo deflections. where x is the estimated state of the system including the position, velocity, and angular rates. The control input is given by u. Note that this control input is intended to provide a correction around the trim of the rotorcraft, given by u trim. Next follows a discussion of the altitude PID control loop design. Let the estimated relative altitude be given by h and the commanded altitude be given by h c, which can be a constant command or the output of a reference model chosen to characterize the response of the system: _h c A rm h c B rm r (8) where r t is a reference input to the reference model. The error between the estimated state and the command is This results in the error system: The PID control action can be summarized by the following equation: e h h c (9) _e Ae A A rm z c Bu B rm r (1) u K p e K d _e K i Z t t u t dt (11) In the preceding equation, instead of integrating the error e t as is traditionally done, the servo commands outputs by the controller are integrated (under the assumption that the servo output is linearly dependent on the error). In this way, the system can inherently handle actuator saturation and integration windup. Furthermore, servo commands are easier to measure since they are assigned by the controller. Closed-loop stability is ensured by choosing the PID gains K p 2<, K d 2<, and K i 2<such that the error system [Eq. (1)] is rendered stable through negative feedback. The key to successful and reliable implementation of PID control lies in the estimation of the state and its derivative. These are estimated using Kalman filter-based algorithms, as described in Sec. III. The control action is achieved by using four independent control loops: 1) The function of the altitude-hold control loop is to use the filtered measurements from the downward-pointed sonar for altitude control. A PID architecture is used, where the derivative of the position is calculated using the Kalman filter architecture as described in Sec. III. During vehicle operation, varying the battery voltage level affects the throttle trim value. The integral part of the controller is used to counteract this effect. Rather than integrating the position as is traditionally done, the servo commands output by the controller are integrated instead. As a result, the system can inherently handle actuator saturation and integration windup. Furthermore, servo commands are easier to measure since they are assigned by the controller. Figure 12 shows the schematic of the altitude control loop. The lateral and the longitudinal control loops have a similar architecture. 2) The function of the heading control loop is to control the heading of the vehicle. The heading information is formulated by using dual IR range sensors mounted with a mutual offset, as described in Sec. III. The heading hold controller maintains a relative heading with respect to a local reference, such as a wall. In inside turn and outside turn modes, as described in Sec. IV, the heading control uses open-loop commands for rotating around the z axis. 3) The function of the longitudinal position control loop is to ensure that the vehicle maintains a relative distance from a wall or obstacle in front of the vehicle to avoid collision and to ensure that the IR range sensors are in range. Longitudinal control is achieved by using forward-mounted IR measurements. The operation of the vehicle in the vicinity of a wall presents a unique challenge for tuning the PID gains. It was observed that the vehicle dynamics are dependent on the distance of the vehicle from the wall, possibly due to interaction of rotor-induced flow with the wall structure. It was observed that, if the vehicle is within a range of about.6 m (2 ft) of the wall, the airflow tends to pull the vehicle toward the wall. However, if the vehicle is farther than about.9 m (3 ft) from the wall, the airflow tends to push the vehicle away from the wall. To counteract this effect, a gain-scheduled controller was designed that uses high gains only if the vehicle is closer than.6 m (2 ft) from the wall and if the vehicle is approaching the wall. In all other quadrants of the error space, the controller interpolates between high and low gains dependent on the distance from the wall. A schematic showing the area of the error phase space where high gains are used is shown in Fig. 13. To improve the longitudinal position and heading measurements, the distance from the facing wall is kept in the range of.5 1.5 m. Above this distance, the IR sensors are unreliable, so the vehicle is commanded to perform slow open-loop forward flight until the wall is within range. Fig. 12 PID architecture for the altitude-hold controller, where KF denotes the Kalman filter. Longitudinal and lateral control loops use a similar architecture.

CHOWDHARY ET AL. 29 Fig. 13 Quadrant of the error phase space where high gain is used. 4) The lateral position control loop is used to detect and avoid obstacles in the lateral path of the vehicle during wall-following flight. When a wall or obstacle is detected in the flight path as the vehicle flies along the wall, the filtered range measurements from the IR sensor facing in the direction of flight are used to slow the vehicle and prevent it from hitting the wall. in addition, the guidance mode is switched to inside turn mode when the desired minimum lateral range from the wall is reached. The control loop architecture is similar to the altitude-hold controller. VI. Flight-Test Results In the final configuration, all GNC software was programmed using C programming language on the ATmega128 microcontroller serving as the onboard computer. The microcontroller read the data from the onboard sensors, performed the required GNC computations, and executed the commands by manipulating the servos using pulse width modulation (PWM) signals. For these tasks, a 2 Hz update rate for the controller was found to be sufficient. The microcontroller also communicated with an offboard ground station through the XBee modem at an update rate of 1 Hz. An independent 9 MHz data link was used to transmit live video information from the onboard camera to an independent ground station. The range data and vehicle status transmitted to the ground station using the XBee modem were used for monitoring vehicle status and postflight analysis. A ground control station (GCS) was developed based on an existing GCS for outdoor UAS [23]. The GCS was programmed in C/C++ and used open graphics library for graphical rendering. The GCS enabled real-time monitoring of all sensor data and real-time adjustment of control loop gains, and it functioned as a pilot interface during manual flight. A useful feature of the GCS is its ability to plot all sensor data in real time and the ability to save the underlying sequences as MATLAB or text data files for data analysis. A screen shot of the GCS during an autonomous flight is shown in Fig. 14. Fig. 14 Screen shot of GCS.

3 CHOWDHARY ET AL. Fig. 15 Altitude measurements and estimate showing the functioning of the outlier detector. To date (April 21), the aircraft has flown over 15 flights in fully autonomous mode and well over 1 flights where individual capabilities were tested. A typical fully autonomous flight test began with manual takeoff and flight to a desired altitude; the altitude control loop was then enabled, followed by the enabling of all other loops and the guidance logic. Flight times of approximately 7 min. were achieved with 135 mah 11.1 V lithium polymer battery packs, which were the only source of onboard power. Figure 15 shows the performance of the altitude control loop as the vehicle maneuvered an indoor arena at the Fifth International Aerial Robotics Competition held by the Association for Unmanned Vehicles International. It can be seen that the GNC algorithm is successful in separating sensor outliers from real discontinuities (obstacles) on the arena floor. The sonar-based PID altitude control loop showed excellent performance. The performance of the wall-following control loops for another flight (see Fig. 8) is shown in Fig. 15. In that figure, the subplot on the top shows the estimated distance to the wall as the rotorcraft maneuvers an indoor arena. The third subplot shows the distance to a wall that is in the path of the rotorcraft as it traverses to the right along a wall. The second subplot shows the longitudinal cyclic commands generated by the onboard control algorithm, which attempts to keep the rotorcraft between.5 and 1.52 m (2 and 6 in.) of the wall as the rotorcraft maneuvers along the wall and performs both inside and outside turns (discussed in Sec. IV). The fourth subplot shows the lateral cyclic commands generated by the onboard lateral position control algorithm, which engages when a wall or an obstacle is detected. The vehicle was successfully able to navigate a variety of indoor geometries autonomously. These included straight corridors, sharp corners, flight over obstacles, and flight through windows. As the system has no access to absolute position information, it is possible to imagine situations where the presented control architecture can be suboptimal. For example, the system has no way to distinguish between a corner, a window, or a door when the outside turn mode is activated. This could lead to chance situations where the vehicle enters a building through one window and leaves through another. Away to mitigate such situations is to add randomness to system behavior so that the probability of the system being stuck in repetitive loops is minimized. As tested, the system performance was acceptable given that no absolute position information was required, and no elaborate mapping of the environment was performed. Some improvement in attitude handling and the bandwidth of the control law may be achieved by the inclusion of gyroscopic rate dampers in the roll and pitch axes. VII. Conclusions The design, development, and flight testing of a fully autonomous, miniature unmanned aerial system (UAS) capable of exploring cluttered indoor environments without any external sensing aids has been presented. The choice of an off-the-shelf coaxial rotorcraft-based design with desirable stick-free properties enables a lightweight vehicle while retaining sufficient maneuverability. Furthermore, it was demonstrated that the passive attitude stability properties of the rotorcraft platform can be leveraged to develop an extremely low-cost guidance, navigation, and control (GNC) strategy based entirely on five commercially available low-cost low-range range sensors. The key innovations required to realize this goal were the use of a filtering algorithm capable of detecting and rejecting sensor-induced outliers and the development of an event-based guidance algorithm that uses the inherent structure of the indoor environment. The guidance algorithm detected and followed walls in an indoor environment to ensure that a maximum amount of indoor perimeter was explored. The algorithm did not require elaborate mapping and localization techniques, and hence was found suitable for onboard implementation on a low-cost low-power off-the-shelf microcontroller. Finally, flight-test results were presented that demonstrate the capability of the extremely low-cost ($9 U.S. dollars) lightweight (6 g) GT Lama rotorcraft UAS and the onboard GNC algorithm to explore cluttered and confined indoor environments using only five range sensors. These results demonstrate that it is possible to develop a fully autonomous indoor UAS without relying on elaborate sensors for full-state estimation and for forming a detailed map of the environment. Although it is clear that augmenting the presented method with better sensors and mapping tools will significantly improve the performance, this requires increased payload capability and power. The requirement for extra payload and sensory power on a single aircraft may be bypassed by distributing the sensing load over a fleet of indoor vehicles. Acknowledgments The authors would like to thank the members of the Georgia Institute of Technology Aerial Robotics team. In addition to the authors, the team members include Claus Christmann, Scott Kimbrell, Syed Shah, Allen Wu, Shusaku Yamaura, and many others. The authors also thank Jeong Hur and Suresh Kannan for help and advice. The views expressed in this paper are those of the authors and do not reflect the official policy or position of the U.S. Air Force, Department of Defense, or the U.S. Government. References [1] Kayton, M., and Fried, W. R., Avionics Navigation Systems, Wiley, New York, 1997, pp. 348 358. [2] Christophersen, H. B., Pickell, W. R., Neidoefer, J. C., Koller, A. A., Kannan, S. K., and Johnson, E. N., A Compact Guidance, Navigation, and Control System for Unmanned Aerial Vehicles, Journal of Aerospace Computing, Information, and Communication, Vol. 3, No. 5, May 26, pp. 187 213. doi:1.2514/1.18998

CHOWDHARY ET AL. 31 [3] Wendel, J., Maier, A., Metzger, J., and Trommer, G. F., Comparison of Extended and Sigma-Point Kalman Filters for Tightly Coupled GPS/INS Integration, AIAA Guidance Navigation and Control Conference, AIAA Paper 25-655, 25. [4] Guenard, N., Hamel, T., and Moreau, V., Dynamic Modeling and Intuitive Control Strategy for an X4-Flyer, International Conference on Control and Automation, Budapest, Hungary, 25, pp. 141 146. [5] Martin, P., and Salaün, E., The True Role of Accelerometer Feedback in Quadrotor Control, IEEE International Conference on Robotics and Automation, IEEE Publ., Piscataway, NJ, 21, pp. 1623 1629. [6] Grzonka, S., Grisetti, G., and Burgard, W., Towards a Navigation System for Autonomous Indoor Flying, IEEE International Conference on Robotics and Automation, IEEE Publ., Piscataway, NJ, 29, pp. 2878 2883. [7] Bouabdallah, S., and Siegwart, R., Full Control of a Quadrotor, IEEE/RSJ International Conference on Intelligent Robots and Systems, Roma, Italy, 27, pp. 153 158. [8] Guenard, N., Hamel, T., and Mahony, R., A Practical Visual Servo Control for an Unmanned Aerial Vehicle, IEEE Transactions on Robotics, Vol. 24, No. 2, 28, pp. 331 34. doi:1.119/tro.28.916666 [9] Achtelik, M., Bachrach, A., He, R., Prentice, S., and Roy, N., Stereo Vision and Laser Odometry for Autonomous Helicopters in GPS-Denied Indoor Environments, Proceedings of SPIE: The International Society for Optical Engineering, Vol. 7332, 29, pp. 733219. doi:1.1117/12.81982. [1] Thrun, S., Burgard, W., and Fox, D., Probablistic Robotics, MIT Press, Cambridge, MA, 25, pp. 281 38. [11] Shen, S., Michael, N., and Kumar, V., Autonomous Multi-Floor Indoor Navigation with a Computationally Constrained Micro Aerial Vehicle, Proceedings of the IEEE International Conference on Robotics and Automation, Shanghai, IEEE, 211, pp. 2 25. [12] Sobers, M. D., Chowdhary, G., and Johnson, E. N., Indoor Navigation for Unmanned Aerial Vehicles, AIAA Guidance Navigation and Control Conference, AIAA Paper 29-5658, 29. [13] Gelb, A., Applied Optimal Estimation, MIT Press, Cambridge, MA, 1974, pp. 18 189. [14] Johnson, E. N., and Kannan, S. K., Adaptive Trajectory Control for Autonomous Helicopters, Journal of Guidance, Control, and Dynamics, Vol. 28, No. 3, May June 25, pp. 524 538. doi:1.2514/1.6271 [15] Wu, A. D., and Johnson, E. N., Methods for Localization and Mapping Using Vision and Inertial Sensors, AIAA Guidance, Navigation, and Control Conference and Exhibit, AIAA Paper 28-7441, 28. [16] Jonghyuk, K., and Salah, S., Autonomous Airborne Navigation in Unknown Terrain Environments, IEEE Transactions on Aerospace and Electronic Systems, Vol. 4, No. 3, 24, pp. 131 145. doi:1.119/taes.24.1337472 [17] Chen, Z., Samarabandu, J., and Rodrigo, R., Recent Advances in Simultaneous Localization and Map-Building Using Computer Vision, Advanced Robotics, Vol. 21, 27, pp. 233 265. doi:1.1163/156855377813281 [18] Kannan, S. K., Adaptive Control of Systems in Cascade with Saturation, Ph.D. Thesis, Georgia Inst. of Technology, Atlanta GA, 25. [19] Chowdhary, G., and Lorenz, S., Control of a VTOL UAV via Online Parameter Identification, AIAA Guidance Navigation and Control Conference, AIAA Paper 25-649, 25. [2] Shim, H., Koo, T. J., Hoffman, F., and Sastry, S., A Comprehensive Study of Control Design for an Autonomous Helicopter, IEEE Conference on Decision and Control, Tampa, FL, IEEE, 1998, pp. 3653 3658. [21] Mettler, B., Modeling Identification and Characteristics of Miniature Rotorcrafts, Kluwer Academic, Norwell, MA, 23, pp. 12 2. [22] Chowdhary, G., and Lorenz, S., Non-Linear Model Identification for a Miniature Rotorcraft, Preliminary Results, American Helicopter Society 61st Annual Forum, Fort Worth, TX, 25. [23] Kannan, S. K., Koller, A. A., and Johnson, E. N., Simulation and Development Environment for Multiple Heterogeneous UAVs, AIAA Modeling and Simulation Technology Conference, AIAA Paper 24-541, Aug. 24. A. Srivastava Associate Editor