Title: Software Enabled Control for Intelligent Uninhabited Air Vehicles UAVs GTMax Final Exp' Working Grou
1Software Enabled Controlfor Intelligent
Uninhabited Air Vehicles (UAVs)GTMax Final Exp.
Working Group
- Principal Investigators
- Daniel Schrage (AE) George Vachtsevanos (ECE)
- School of Aerospace Engineering School of
Electrical and Computer Engineering - Georgia Tech Georgia Tech
- Atlanta, GA 30332 Atlanta, GA 30332
- daniel.schrage_at_ae.gatech.edu george.vachtsevanos_at_e
ce.gatech.edu - (404) 894-6257 (404) 894-6252
- Co-PIs and Key Personnel
- Bonnie Heck (ECE), Eric Johnson (AE), J.V.R.
Prasad (AE), Linda Wills (ECE)
controls.ae.gatech.edu/projects/sec
2GTMax Hardware Components
- Flight Computers
- 266MHz 850 MHz Embedded PCs, Ethernet, Flash
Drives - Sensors
- Inertial Measurement Unit (x2)
- Differential GPS
- Magnetometer
- Sonar and Radar Altimeters
- Vehicle Telemetry (RPM, Voltage, Pilot Inputs)
- Data Links
- 11 Mbps Ethernet Data Link
- RS-232 Serial Data Link
3Sensors IMU
- ISIS Inertial Measurement Unit (ISIS-IMU)
- Acceleration and angular velocity triads
- Analog or 100Hz digital output
- 160 deg/sec max angular rate 11G max acceleration
(as configured for the digital interface) - 1.1 deg/sec and 0.003G standard deviations
measured with rotor spinning at flight RPM - Ours is a special order that takes a 12VDC input
- www.inertialscience.com
4Sensors Differential GPS
- NovAtel RT-2 Differential GPS (MiLLenium Card)
- Carrier phase tracking
- Output of position and velocity used, WGS-84
- 5Hz update rate
- Differential correction from ground station
communicated over both datalinks (every 2
seconds) - 2 cm CEP specification
- www.novatel.com
5Sensors Magnetometer
- Honeywell 3-axis magnetometer HMR-2300
- Measures strength of magnetic field in 3
directions - 20 Hz digital output
6Sensors Radar Altimeter
- Radar Altimeter
- Distance from terrain
- Range 5 to 2300 ft
- 10 Hz
7Sensors Sonar Altimeter
- Custom built sonar ranging system
- Polaroid range sensor
- Distance from terrain
- 0.5 ft to 10 ft
- 10 Hz
8Actuators Helicopter Interface
- Yamaha R-Max modified with the same digital
interface used in their Autonomous R-Max - Has four RS-232 interfaces
- Send actuator commands, turn on/off stability
augmentation (50 Hz) - Get commands as received from safety pilot radio
- Get Yamaha IMU data (for its SAS)
- Get other telemetry
- RPM, Voltage
- Actuator command source
9Dalalinks FreeWave
- FreeWave wireless modem
- 9600 baud (other settings possible)
- Tested up to about 2 miles with helicopter on the
ground (worst case)
10Dalalinks AeroNet
- AeroNet wireless ethernet
- Have seen as high as 11 Mb per sec in flight
- Short range, lt ¼ mile
11Processors
- Primary flight computer
- 266 MHz Pentium
- 30 Mb flash drive
- Secondary computer (under construction)
- 850 MHz Pentium
- 500 Mb flash drive
- Ethernet hub onboard
12Baseline Software
- Operating Systems
- Onboard (Flight) Software VxWorks or QNX
- Simulation Windows or Linux
- Languages and Libraries
- C/C, Utilizes OpenGL API
- No Special Compilers Needed (We Use Visual
Studio on Windows or gcc on Linux)
13Baseline Software Overview
- Onboard software
- Primary flight computer
- GCS software
- Runs on ground control station
- Simulation software
- Not used in flight
- All of the above included in GCS/Simulation build
- Only onboard software include in onboard or OCP
build
14Baseline Onboard Software
- Navigation
- 17 State Extended Kalman Filter Navigation System
- Vehicle Position
- Vehicle Velocity
- Vehicle Attitude
- Accelerometer Biases
- Gyro Biases
- Terrain Height
- All Attitude Capable
- 100 Hz Updates
- Flight Operational
- Control
- Adaptive Neural Network Trajectory Following
Controller - Neural Network
- 16 Inputs
- 5 Hidden Layer Neurons
- 6 Outputs for 6 Degrees of Freedom
- Can Also Be Configured as a Conventional
Inverting Controller - Flight Operational
15Baseline Navigation Filter
- Extended Kalman Filtering Approach Used to
Integrate Sensor Data in Real Time - IMU Data is Propagated at 100 Hz and Discretely
Updated by All Other Sensor Measurements
Acc. / Rate
IMU
Position/ velocity
Vehicle
DGPS
Extended Kalman Filter
F M
X
azimuth
Magnetometer
h
Sonar/Radar
More Sensors
16Communications
- Generic communication routines
- Supports serial data reading and writing
- Can re-route this data through Ethernet or as
memory within an a single executable - Most operating system specific software is
limited to these routines (maybe they should
replaced with ACE routines) - Used for
- all onboard serial interfaces
- all GCS serial interfaces
- a redundant datalink through the wireless
Ethernet - Data received on a link can be saved to a file
17Data recording
- Record any onboard data at fixed rate into a
binary file - Can start/stop recording from GCS
- Download normally over wireless Ethernet
18Baseline GCS Software
- Monitor onboard systems
- Send reconfiguration commands
- Probe onboard data
- Initiate data recording, download data
- Set up, preview, and upload flight plan
19Available Data
- Available Onboard
- Raw Sensor Data, Pilot Inputs
- Processed Navigation Solution
- Ground Station Communication
- Available On the Ground
- Network Connection to Onboard Computers
- Available Inputs
- Desired Continuous Trajectory for Baseline
Autopilot - Servo Commands (If We Trust You)
20Simulation Tools
- Hardware In the Loop Simulation Capable
- The Desktop Computer Simulation Utilizes
- Actual Flight Software
- Actual Ground Control Station Software
- Flight Test Verified Dynamic Model of Helicopter
- Flight Test Verified Model of All
Sensors/Actuators - Scene Generation Capability
21Potential Actuator Failure Scenarios
Scenario
Description
Effect
Reconfiguration
Main rotor collective is stuck in a known
position.
Vertical acceleration can not be controlled by
the collective.
Use RPM to control vertical acceleration.
1. Stuck Collective
Use altitude (or vertical acceleration) to
compensate for loss of rpm control (i.e.,
Autorotation).
Throttle is stuck in a known position or goes to
zero (engine failure).
RPM can not be governed as is traditionally done.
2. Throttle Stuck / Engine Failure
Use thrust and collective control to control yaw
acceleration.
3. Tail Rotor Stuck / Transmission Failure
Tail rotor is stuck at a given pitch or stops
rotating altogether.
Yaw acceleration can not be controlled by the
tail rotor.
22Summary Procedure
- Develop Scenario and Test Plan
- Define and Implement Interface(s)
- SITL Simulation
- HITL Simulation
- Flight Test
23Interfaces
- Georgia Tech maintains and releases baseline
software in CVS - Simulation
- Primary flight computer software
- Ground Control Station
- Empty secondary flight computer build
- You may make changes to produce intermediate
results but these changes to anything other than
the secondary flight computer build will
(probably) not be flown
24Interfaces (Mid-term)
- Each collaborator works with Georgia Tech to
develop software that adds functionality to the
Empty secondary computer build - Trajectory generation, obstacle avoidance
- Fault detection, reconfiguration
- Transition management
- Controls, aggressive maneuvers
- Etc.
- The work with GT includes
- Messages between the primary and secondary
computer - Interaction with baseline control or navigation
25Flight Computer Interface
Signal LimitInfo Position(x,y,z) Velocity(x,y,z)
Acceleration(x,y,z) Time Delf, Delm(x,y,z) Rpm
Limit Avoidance Component
50 Hz
Low Level Flight Controller, Navigator
Datalink Component
LimitInfo
LimitDecl
Signal LimitDeclaration AccelerationLimit(x,y,z)
Ethernet UDP Comm
UAVState
50 Hz
Mission Trajectory Planning Component
SetPoint
25 Hz
Signals UAVState SetPoint Position(x,y,z) Veloc
ity(x,y,z) Phi, Theta, Psi p, q, r
Primary Flight Computer
Secondary Flight Computer
26Sample Messages (Trajectory Planner)
- From Primary
- Status of navigation system
- Status of GPS
- Status of sonar
- Weight on skids
- Autopilot engaged
- Onboard time
- Position of vehicle
- Velocity of vehicle
- Attitude
- Altitude above terrain
- To Primary
- Position command
- Velocity command
- Attitude command
27Software in the Loop (SITL) Secondary Flight
Computer
Actuator Raw Data
Sensor Raw Data
Sensor Drivers
Actuator Driver
Sensor Data
State Estimate
Flight Controller
Navigation Filter
Control
Command Vector
Simulation of Primary Flight Computer,
Helicopter, Sensors
Datalinks Ground Control Station
OCP Mid-Level ControlComponents
Navigation DataTrajectory Commands
Sim of Second Computer
28Hardware in the Loop (HITL) Secondary Flight
Computer
Actuator Raw Data
Sensor Raw Data
Sensor Drivers
Actuator Driver
Sensor Data
State Estimate
Flight Controller
Navigation Filter
Control
Command Vector
Simulation of Primary Flight Computer,
Helicopter, Sensors
Datalinks Ground Control Station
OCP Mid-Level ControlComponents
Navigation DataTrajectory Commands
Second Computer
29Flight Configuration
Actuator Raw Data
Sensor Raw Data
Sensor Drivers
Actuator Driver
Sensor Data
State Estimate
Flight Controller
Navigation Filter
Control
Command Vector
Primary Flight Computer
Datalinks Ground Control Station
OCP Mid-Level ControlComponents
Navigation DataTrajectory Commands
Second Computer
30Interfaces (Final Experiments)
- Objective
- Results from Mid-term work are combined into a
single scenario and system configuration