University of Southampton Research Repository ePrints Soton Copyright © and Moral Rights for this thesis are retained by the author and/or other copyright owners. A copy can be downloaded for personal non-commercial research or study, without prior permission or charge. This thesis cannot be reproduced or quoted extensively from without first obtaining permission in writing from the copyright holder/s. The content must not be changed in any way or sold commercially in any format or medium without the formal permission of the copyright holders. When referring to this work, full bibliographic details including the author, title, awarding institution and date of the thesis must be given e.g. AUTHOR (year of submission) "Full thesis title", University of Southampton, name of the University School or Department, PhD Thesis, pagination http://eprints.soton.ac.uk UNIVERSITY OF SOUTHAMPTON Development of Technologies for Low–Cost Oceanographic Unmanned Aeronautical Vehicles by Matthew Bennett A thesis submitted in partial fulfillment for the degree of Doctor of Engineering in the Faculty of Engineering, Science and Mathematics School of Electronics and Computer Science April 2009 UNIVERSITY OF SOUTHAMPTON ABSTRACT FACULTY OF ENGINEERING, SCIENCE AND MATHEMATICS SCHOOL OF ELECTRONICS AND COMPUTER SCIENCE Doctor of Engineering by Matthew Bennett Oceanographic research vessels and buoys typically provide high-resolution, short- range measurements at a high sample rate. Satellites provide wide-range, low- resolution measurements at a low sample rate. Therefore a gap exists in oceano- graphic observation capability for medium-range, high-resolution measurements at a high sample rate. An Unmanned Aeronautical Vehicle (UAV) could bridge this gap. This research has provided a mission-ready autopilot and ground station for future oceanographic application by the National Oceanography Centre, Southampton. A sea landing is the only available option, which carries a low probability of UAV reuse and therefore requires a low-cost system. This and other application- specific requirements led to the development of all autopilot and ground station software. This research provided novel contributions of pseudo-derivative feedback controllers for flight control, the generation of optimised matrix calculations for high-frequency aircraft state estimates on a low-powered processor and the use of a finite impulse response filter for reduced aliasing of transmitted flight data. A novel in-flight method for autonomously optimising controller response has been developedandsuccessfullydemonstratedinrealisticsimulationandpracticalflight tests of a commercial model aircraft. This method does not require an experienced operator or known aircraft dynamics and provides a quantitative measurement of optimality. Two novel path tracking algorithms have been presented. The first controls the derivative of heading rate to command an achievable trajectory. The second con- trols the aircraft’s closing speed on the path by adjusting bank angle. The latter algorithm achieved a robust tracking performance under simulated high wind con- ditionsandpracticalflighttestsandissuitableforoceanographicUAVoperation. Contents List of Figures iv List of Tables viii List of Listings ix List of Symbols x Acknowledgements xiv 1 Introduction 1 1.1 Research Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Research Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 Research Contributions . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.4 Thesis Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2 Literature Review 7 2.1 Oceanographic UAV’s . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.1 Applications and Sensors . . . . . . . . . . . . . . . . . . . . 8 2.1.2 Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.1.3 Existing Systems . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2 Test Aircraft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2.1 Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2.2 Existing Systems . . . . . . . . . . . . . . . . . . . . . . . . 15 2.3 Autopilots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.3.1 Commercial Solutions . . . . . . . . . . . . . . . . . . . . . 18 2.3.2 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.4 Sensor Fusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.4.1 Commercial INS’s . . . . . . . . . . . . . . . . . . . . . . . . 26 2.4.2 Kalman Filter . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.4.3 Complementary Filter . . . . . . . . . . . . . . . . . . . . . 33 2.4.4 Attitude Representation . . . . . . . . . . . . . . . . . . . . 33 2.5 Direct Attitude Estimation . . . . . . . . . . . . . . . . . . . . . . . 36 2.5.1 Horizon Sensing . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.5.2 Multiple GPS Antennas . . . . . . . . . . . . . . . . . . . . 37 2.6 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 i CONTENTS ii 2.6.1 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . 38 2.6.2 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2.7 Path Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 2.8 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.8.1 Aircraft Dynamics . . . . . . . . . . . . . . . . . . . . . . . 49 2.8.2 Visualisation . . . . . . . . . . . . . . . . . . . . . . . . . . 53 2.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3 System Design 56 3.1 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.1.1 Choice of Software . . . . . . . . . . . . . . . . . . . . . . . 56 3.1.2 Aircraft Characterisation . . . . . . . . . . . . . . . . . . . . 56 3.1.3 Basic Simulation Model . . . . . . . . . . . . . . . . . . . . 59 3.1.4 Advanced Simulation Models . . . . . . . . . . . . . . . . . 60 3.2 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 3.2.1 Aircraft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 3.2.2 Autopilot . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 3.2.3 Communications and Safety . . . . . . . . . . . . . . . . . . 70 3.3 Autopilot Software . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 3.3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 3.3.2 Communications Protocol . . . . . . . . . . . . . . . . . . . 72 3.3.3 Data Streaming . . . . . . . . . . . . . . . . . . . . . . . . . 74 3.3.4 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.3.5 Sensor Fusion . . . . . . . . . . . . . . . . . . . . . . . . . . 82 3.3.5.1 Extended Kalman Filter . . . . . . . . . . . . . . . 83 3.3.5.2 Complementary Filter . . . . . . . . . . . . . . . . 92 3.4 Ground Station . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 3.4.1 Network Server . . . . . . . . . . . . . . . . . . . . . . . . . 95 3.4.2 User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . 97 3.5 Flight Test Results . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 3.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 4 Controller Tuning 109 4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 4.2 Generation of the Ideal Response . . . . . . . . . . . . . . . . . . . 110 4.3 Fitting Ideal Response to Measurement . . . . . . . . . . . . . . . . 112 4.4 Calculating and Mapping Optimality . . . . . . . . . . . . . . . . . 113 4.5 Maximisation Function . . . . . . . . . . . . . . . . . . . . . . . . . 117 4.6 Delay Compensation . . . . . . . . . . . . . . . . . . . . . . . . . . 119 4.7 Practical Considerations . . . . . . . . . . . . . . . . . . . . . . . . 121 4.7.1 Computation . . . . . . . . . . . . . . . . . . . . . . . . . . 121 4.7.2 Flight Testing . . . . . . . . . . . . . . . . . . . . . . . . . . 121 4.7.3 Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 4.7.4 Linear Interpolation . . . . . . . . . . . . . . . . . . . . . . 122 CONTENTS iii 4.7.5 Wind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 4.7.6 State Estimation . . . . . . . . . . . . . . . . . . . . . . . . 125 4.8 Flight Test Results . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 4.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 4.10 Further Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 5 Path Tracking 130 5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 5.2 Direct to Waypoint . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 5.3 Acceleration Controlled Tracking . . . . . . . . . . . . . . . . . . . 134 5.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 5.3.2 Algorithm Derivation . . . . . . . . . . . . . . . . . . . . . . 136 5.3.3 Practical Implementation . . . . . . . . . . . . . . . . . . . . 137 5.3.4 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . 140 5.3.5 Lag Compensation . . . . . . . . . . . . . . . . . . . . . . . 142 5.3.6 Flight Test Results . . . . . . . . . . . . . . . . . . . . . . . 144 5.4 Closing Speed Tracking . . . . . . . . . . . . . . . . . . . . . . . . . 144 5.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 5.4.2 Line Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . 145 5.4.2.1 Cross-track Speed . . . . . . . . . . . . . . . . . . 146 5.4.2.2 Along-track Speed . . . . . . . . . . . . . . . . . . 148 5.4.3 Orbit Tracking . . . . . . . . . . . . . . . . . . . . . . . . . 150 5.4.4 Complete Path Tracking . . . . . . . . . . . . . . . . . . . . 152 5.4.5 Flight Test Results . . . . . . . . . . . . . . . . . . . . . . . 154 5.4.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 6 Conclusions 158 A AVL Trainer 60 Model 163 B Autopilot Hardware Timings 169 C PDF Controller Listing 173 D True Airspeed Estimation 175 E Phugoid Analysis 178 References 182 List of Figures 2.1 Summary of EKF operation (based upon a similar diagram in [1]) . 31 2.2 PID controller structure . . . . . . . . . . . . . . . . . . . . . . . . 38 2.3 PDF controller structure . . . . . . . . . . . . . . . . . . . . . . . . 39 2.4 Brigham Young University UAV controller architecture [2] . . . . . 41 2.5 Simplified Piccolo controller architecture [3] . . . . . . . . . . . . . 42 2.6 Simplified MicroPilot controller architecture . . . . . . . . . . . . . 44 2.7 Lateral tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.8 Aerosonde lateral tracking [4] . . . . . . . . . . . . . . . . . . . . . 46 2.9 Approximate aircraft track for varying k using Aerosonde lateral tracking [4] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.1 Test aircraft geometry loaded in AVL . . . . . . . . . . . . . . . . . 58 3.2 Simulink model of test aircraft in flying environment . . . . . . . . 59 3.3 Simulink model execution visualised in FlightGear . . . . . . . . . . 60 3.4 Simulink model of realistic sensor hardware . . . . . . . . . . . . . . 61 3.5 Simulink model demonstrating complete autopilot functionality in a realistic environment . . . . . . . . . . . . . . . . . . . . . . . . . 62 3.6 Simulink model with core autopilot code executing in a realistic environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 3.7 The Trainer 60 ARF model aircraft . . . . . . . . . . . . . . . . . . 65 3.8 Static pressure sensor output voltage against altitude with desired range highlighted . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 3.9 Altitude resolution for 10, 12 and 16-bit ADC’s . . . . . . . . . . . 68 3.10 Dynamic pressure sensor output voltage against CAS with desired range highlighted . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 3.11 CAS resolution (on logarithmic scale) for 10, 12 and 16-bit ADC’s . 69 3.12 Autopilot software structure . . . . . . . . . . . . . . . . . . . . . . 72 3.13 Simulink representations of a PDF controller . . . . . . . . . . . . . 76 3.14 Poor altitude control of the Trainer 60 during flight test 19 . . . . . 77 3.15 Simulated low-level controller response for the Trainer 60 . . . . . . 79 3.16 Simulated mid-level controller response for the Trainer 60 . . . . . . 80 3.17 Simulated heading controller response for the Trainer 60 . . . . . . 80 3.18 Comparison between PDF and proportional heading control for the simulated Trainer 60 . . . . . . . . . . . . . . . . . . . . . . . . . . 81 3.19 Optimised C-code generator for matrix operations user interface . . 87 3.20 True and estimated bank angle from Trainer 60 simulation . . . . . 89 iv LIST OF FIGURES v 3.21 True and estimated elevation angle from Trainer 60 simulation . . . 89 3.22 True and estimated heading from Trainer 60 simulation . . . . . . . 89 3.23 True (dashed line) and estimated (solid line) gyroscope biases from Trainer 60 simulation . . . . . . . . . . . . . . . . . . . . . . . . . . 90 3.24 Heading comparison during aircraft turns in the Trainer 60 simulation 90 3.25 Heading comparison during aircraft turns in the Trainer 60 simula- tion with a 15 ms-1 northerly wind . . . . . . . . . . . . . . . . . . 91 3.26 Position comparison during aircraft turns in the Trainer 60 simulation 93 3.27 Ground heading comparison during aircraft turns in the Trainer 60 simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 3.28 Position comparison during aircraft turns with and without GPS lock in the Trainer 60 simulation . . . . . . . . . . . . . . . . . . . 95 3.29 Network server GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 3.30 Ground station GUI layout . . . . . . . . . . . . . . . . . . . . . . . 98 3.31 Custom moving map component embedded in ground station GUI . 99 3.32 Flight test data during low-level control of the Trainer 60 . . . . . . 101 3.33 Flight test data during mid-level control of the Trainer 60 . . . . . 102 3.34 High-level heading control of the Trainer 60 during flight test 14 . . 102 3.35 Comparison between realistic simulation and real flight data of the Trainer 60 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 3.36 Altitude and airspeed of the Trainer 60 during flight test 20 . . . . 104 3.37 MeasuredheadingrateduringagentlemanualturnoftheTrainer60 during flight test 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 4.1 Ideal response with varied σ . . . . . . . . . . . . . . . . . . . . . . 111 4.2 Ideal response matched to test flight data . . . . . . . . . . . . . . . 114 4.3 Optimality maps for the simulated Trainer 60’s PDF controllers . . 116 4.4 Start and end points for five bank angle optimisation runs . . . . . 118 4.5 Before and after bank angle optimisation for each run . . . . . . . . 119 4.6 Optimisation with 50ms and 300ms input delay . . . . . . . . . . . 120 4.7 Use of linear interpolation to correct optimality map artefacts . . . 123 4.8 Bank angle optimality map with variable 8 ms-1 wind . . . . . . . . 125 4.9 Optimality maps for estimated and true bank . . . . . . . . . . . . 126 4.10 Contour plot of the flight test first maximisation run . . . . . . . . 128 4.11 Optimality against iteration number during the flight test . . . . . . 128 5.1 Simulated track of the Trainer 60 with direct to waypoint tracking . 131 5.2 Measured track of the Trainer 60 with direct to waypoint tracking during flight test 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 5.3 Measured track of the Trainer 60 with direct to waypoint tracking and coloured by ground speed (in ms-1) . . . . . . . . . . . . . . . . 133 5.4 Simulated track of the Trainer 60 with direct to waypoint tracking and ∼15 ms-1 WNW wind . . . . . . . . . . . . . . . . . . . . . . . 133 5.5 Comparison between simulated aircraft body and ground heading rates under ∼15 ms-1 wind . . . . . . . . . . . . . . . . . . . . . . . 134 LIST OF FIGURES vi 5.6 Comparison between commanding heading rate and acceleration . . 135 5.7 Expected heading using different commanded states . . . . . . . . . 135 5.8 Tracking errors from the aircraft and ideal line between source and target waypoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 5.9 Identification of the desired aircraft path to align to the ideal line . 137 5.10 Calculation of d . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 max 5.11 Simulation of aircraft precisely following multiple ACT paths under ideal conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 5.12 SimulatedTrainer60followingmultipleACTpathsunderidealcon- ditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 5.13 Comparison between actual and commanded heading rates for the simulated Trainer 60 following ACT . . . . . . . . . . . . . . . . . . 141 5.14 Simulated Trainer 60 following multiple ACT paths using predicted heading and position under ideal conditions . . . . . . . . . . . . . 143 5.15 Simulated Trainer 60 following multiple ACT paths using predicted heading and position and estimated states with 15 ms-1 wind . . . . 143 5.16 Cross and along–track distances for line tracking . . . . . . . . . . . 145 5.17 Simulated Trainer 60 tracks with α˙ limited to fractions of ground c speed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 5.18 Simulated Trainer 60 tracks using closing speed tracking (κ = 11) in variable wind conditions . . . . . . . . . . . . . . . . . . . . . . . 149 5.19 Simulated Trainer 60 tracks as κ is varied from 14 to 5 . . . . . . . 150 5.20 Target lines for clockwise and anti-clockwise orbiting . . . . . . . . 151 5.21 Simulated Trainer 60 tracks using closing speed tracking (κ = 11) in variable wind conditions . . . . . . . . . . . . . . . . . . . . . . . 151 5.22 Simulated Trainer 60 track (orbit, κ = 11) demonstrating switch in orbit direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 5.23 Simulated Trainer 60 track (κ = 11) of a complete mission path with zero and 15 ms-1 northerly wind . . . . . . . . . . . . . . . . . 153 5.24 Trainer 60 tracks during flight test 19 using closing speed tracking to a line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 5.25 Simulated Trainer 60 tracking using closing speed tracking to a line and flight test 19 waypoints . . . . . . . . . . . . . . . . . . . . . . 155 5.26 Trainer 60 tracks during flight test 19 using closing speed tracking to an orbit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 5.27 On-board digital camera images taken during line tracking for flight test 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 5.28 Zoomed images of waypoints taken by the on-board camera during line tracking for flight test 19 . . . . . . . . . . . . . . . . . . . . . 156 5.29 On-board digital camera images taken during line tracking for flight test 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 B.1 Software component execution times under worst-case conditions . . 170 D.1 Comparison of TAS with CAS over the expected dynamic pressure range (P = 79.5 kPa) . . . . . . . . . . . . . . . . . . . . . . . 175 static LIST OF FIGURES vii D.2 Maximum temperature drop against minimum altitude that the fixed-temperature TAS estimate remains more accurate than CAS . 176 D.3 Worst-case fixed-temperature TAS estimation error due to differ- ence in true air temperature from T . . . . . . . . . . . . . . . . . 176 0 E.1 Phugoid motion of simulated Trainer 60 . . . . . . . . . . . . . . . 179 E.2 Comparison between controlled and uncontrolled elevator response to Phugoid motion of simulated Trainer 60 . . . . . . . . . . . . . . 179 E.3 Comparison between controlled and uncontrolled throttle response to Phugoid motion of simulated Trainer 60 (initial airspeed 18 ms-1) 180 E.4 Comparison between controlled and uncontrolled throttle response to Phugoid motion of simulated Trainer 60 (initial airspeed 22 ms-1) 180 E.5 Stabilisation of altitude controller response by airspeed control fol- lowing Phugoid motion of simulated Trainer 60 . . . . . . . . . . . 181 E.6 Comparison of slow and fast airspeed controller responses to con- trolled and uncontrolled altitude for the simulated Trainer 60 . . . . 181
Description: