introduction to multicopter design and control978-981-10-3382-7/1.pdf · besides as an rc toy,...

21
Introduction to Multicopter Design and Control

Upload: others

Post on 22-Mar-2020

62 views

Category:

Documents


9 download

TRANSCRIPT

Introduction to Multicopter Designand Control

Quan Quan

Introductionto Multicopter Designand Control

123

Quan QuanDepartment of Automatic ControlBeihang UniversityBeijingChina

ISBN 978-981-10-3381-0 ISBN 978-981-10-3382-7 (eBook)DOI 10.1007/978-981-10-3382-7

Library of Congress Control Number: 2017932434

© Springer Nature Singapore Pte Ltd. 2017This work is subject to copyright. All rights are reserved by the Publisher, whether the whole orpart of the material is concerned, specifically the rights of translation, reprinting, reuse ofillustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way,and transmission or information storage and retrieval, electronic adaptation, computer software,or by similar or dissimilar methodology now known or hereafter developed.The use of general descriptive names, registered names, trademarks, service marks, etc. in thispublication does not imply, even in the absence of a specific statement, that such names areexempt from the relevant protective laws and regulations and therefore free for general use.The publisher, the authors and the editors are safe to assume that the advice and information inthis book are believed to be true and accurate at the date of publication. Neither the publisher northe authors or the editors give a warranty, express or implied, with respect to the materialcontained herein or for any errors or omissions that may have been made. The publisher remainsneutral with regard to jurisdictional claims in published maps and institutional affiliations.

Printed on acid-free paper

This Springer imprint is published by Springer NatureThe registered company is Springer Nature Singapore Pte Ltd.The registered company address is: 152 Beach Road, #21-01/04 Gateway East, Singapore189721, Singapore

To my parents

Preface

The flight is always the dream of mankind. The kite was invented in China,possibly as far back to the fifth century. Beginning with the last years of the15th century, Leonardo da Vinci wrote about and sketched many designs forflying machines and mechanisms, including ornithopters, fixed-wing gliders,rotorcraft, and parachutes. On December 17, 1903, the Wright brothersinvented and built the world’s first successful airplane and made the firstcontrolled, powered, and sustained heavier-than-air human flight. Since1903, in the following one hundred years, many types of aircraft emerged.However, not too many people tried to pilot and enjoy their flying. Aircraftand pilots were still mysterious until small and micro multicopters wereapproaching consumers via the Radio Controlled (RC) toy market. Thismainly due to the huge improvement on the user experience via their salientfeatures: ease-of-use, high reliability, and easy maintainability. It hardly findsan aircraft as simple as multicopters. They do make more and more peoplereally pilot and enjoy flying. Besides as an RC toy, multicopters demonstrateother commercial applications as drones, including surveillance, search, andrescue missions. So far, multicopters have taken and consolidated theirdominance in the market of small aircraft. No matter defined as an RC toy ora drone, the multicopter is definitely an appropriate research target for stu-dents. This is because students have a chance to experience all phases fromdesign to flight testing within a short time. One more reason is that studentscan read and interact with the open-source code of multicopters to understandthe underline principle.

As an outcome of a course developed at Beihang University (BeijingUniversity of Aeronautics and Astronautics, BUAA), this book is intended asa textbook or introductory guide for senior undergraduate and graduatestudents, and as a self-study book for practicing engineers involved inmulticopters. With the intention of covering most design phases on hardwareand algorithms of multicopters, it has fifteen chapters which is divided intofive parts, including multicopter airframe and propulsion system design,modeling, perception, control, and decision. This book can also be used for asupplementary reading material for other unmanned flying systems. It aims toorganize the design principles adopted in engineering practice into a disci-pline and to emphasize the power of fundamental concepts. This book isfeatured with four salient characteristics.

vii

(1) Basic and practical. The most contents related to multicopters areself-contained, aiming at making this book understandable to readerswith the background of Electronic Engineering (EE). For such a pur-pose, the components are introduced starting from their functions andkey parameters. The introduction to the design process starts with theprinciple, while the modeling section starts with the theoreticalmechanics. The state estimation section starts with the measurementprinciple of sensors. Before talking about the control, the notions ofstability and controllability are introduced. In addition, most of basicand practical methods are presented. These methods are closely relatedto open-source autopilots which are often used now.

(2) Comprehensive and systematic. This book hopes to give a completepicture of multicopter systems rather than a single method or technique.Very often, the role of a single method or technique is not sufficient tomeet the users requirements or to solve a practical complex problem. Onthe other hand, improving other related methods or techniques willreduce the difficulty in a single method. For example, the improvementof the state estimation performance or the mechanical structure canavoid dealing with delay or vibration as a control problem. Throughthis, some complex controller design can be avoided. For an under-graduate student, basic knowledge has been obtained, such as mathe-matics, aerodynamics, materials, structures, electronics, filtering, andcontrol algorithms, which correspond to numerous courses. This book ishoped to combine them together to lay foundations for full stackdevelopers.

The preparation and writing of this book have suffered me a lot. Fortu-nately, the Software and Control Lab, I stayed as a student (I have beenstaying here as a faculty since 2010), started to support the research onmulticopters since about 2007. Ruifeng Zhang and I devoted ourselves tobuilding quadcopters then. This made me almost witness the gold develop-ment period of small multicopters. Moreover, fortunately, public documentsare shared selflessly by developer teams of open-source autopilots, such asAPM and PX4, and numerous technique dissertations and papers are con-tributed by scholars all over the world. More importantly, this book couldnever have been written without the support and assistance from my studentsfrom BUAA Reliable Flight Control Group http://rfly.buaa.edu.cn/, which isa part of Software and Control Lab. Deep thanks go to graduate studentsJinrui Ren, Zhiyao Zhao, Guang-Xun Du, Xunhua Dai, Zibo Wei, HengDeng, Dongjie Shi, Yangguang Cai, Jiang Yan, Hongxin Dong, Jianing Fu,Zhenglong Guo, Jing Zhang, Yao Luo, Shuaiyong Zheng, Baihui Du andXiaowei Zhang for material preparation, chapter revision, and simulations.I would like to thank my colleague Prof. Zhiyu Xi, graduate students UsmanArif and Hanna Tereshchenko, and undergraduate student Kun Xiao for theircomments and hours of tireless proof reading. I would like to thank Prof. WeiHuo, Prof. Dawei Li at Beihang University, Mr. Yun Yu at DJI-Innovations,

viii Preface

Dr. Liang Zhu at AVIC Information Technology Co., Ltd for providing thevaluable suggestions. This book has been used in manuscript form in severalcourses at Beihang University and National University of Defense Tech-nology, and the feedback from students has been invaluable. Finally, I wouldlike to thank Mr. Xiang Guo for the traditional Chinese-style illustrations atthe beginning of each chapter.

Beijing, China Quan QuanDecember 2016

Preface ix

Contents

1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1 Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.1.1 Classification of Commonly Used SmallAircraft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.1.2 Unmanned Aerial Vehicle and ModelAircraft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.2 Remote Control and Performance Evaluation . . . . . . . . . 61.2.1 Remote Control of a Multicopter . . . . . . . . . . . 61.2.2 Performance Evaluation. . . . . . . . . . . . . . . . . . 101.2.3 Bottleneck . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.3 History of Multicopters . . . . . . . . . . . . . . . . . . . . . . . . 131.3.1 The First Stage (Before 1990): Dormancy

Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141.3.2 The Second Stage (1990–2005): Growing

Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.3.3 The Third Stage (2005–2010): Development

Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.3.4 The Fourth Stage (2010–2013): Activity

Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171.3.5 The Fifth Period (2013–): Booming Period . . . . 191.3.6 Conclusion Remark. . . . . . . . . . . . . . . . . . . . . 21

1.4 The Objective and Structure of the Book . . . . . . . . . . . . 211.4.1 Objective. . . . . . . . . . . . . . . . . . . . . . . . . . . . 211.4.2 Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Part I Design

2 Basic Composition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332.2 Airframe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.2.1 Fuselage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332.2.2 Landing Gear . . . . . . . . . . . . . . . . . . . . . . . . . 362.2.3 Duct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.3 Propulsion System . . . . . . . . . . . . . . . . . . . . . . . . . . . 372.3.1 Propeller . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372.3.2 Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

xi

2.3.3 Electronic Speed Controller . . . . . . . . . . . . . . . 432.3.4 Battery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

2.4 Command and Control System . . . . . . . . . . . . . . . . . . . 472.4.1 RC Transmitter and Receiver . . . . . . . . . . . . . . 472.4.2 Autopilot . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502.4.3 Ground Control Station . . . . . . . . . . . . . . . . . . 512.4.4 Radio Telemetry. . . . . . . . . . . . . . . . . . . . . . . 51

2.5 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

3 Airframe Design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573.1 Configuration Design . . . . . . . . . . . . . . . . . . . . . . . . . 59

3.1.1 Airframe Configuration . . . . . . . . . . . . . . . . . . 593.1.2 Aerodynamic Configuration . . . . . . . . . . . . . . . 66

3.2 Structural Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . 673.2.1 Design Principles of Airframe . . . . . . . . . . . . . 673.2.2 Anti-Vibration Consideration . . . . . . . . . . . . . . 673.2.3 Noise Reduction Consideration. . . . . . . . . . . . . 70

3.3 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

4 Modeling and Evaluation of Propulsion System . . . . . . . . . . 734.1 Problem Formulation. . . . . . . . . . . . . . . . . . . . . . . . . . 754.2 Propulsion System Modeling . . . . . . . . . . . . . . . . . . . . 75

4.2.1 Propeller Modeling . . . . . . . . . . . . . . . . . . . . . 754.2.2 Motor Modeling . . . . . . . . . . . . . . . . . . . . . . . 774.2.3 Electronic Speed Controller Modeling . . . . . . . . 794.2.4 Battery Modeling . . . . . . . . . . . . . . . . . . . . . . 80

4.3 Performance Evaluation. . . . . . . . . . . . . . . . . . . . . . . . 804.3.1 Solution to Problem 1 . . . . . . . . . . . . . . . . . . . 804.3.2 Solution to Problem 2 . . . . . . . . . . . . . . . . . . . 834.3.3 Solution to Problem 3 . . . . . . . . . . . . . . . . . . . 834.3.4 Solution to Problem 4 . . . . . . . . . . . . . . . . . . . 84

4.4 Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 874.5 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884.6 Appendix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

4.6.1 Procedure to Obtain Thrust Coefficientand Torque Coefficient . . . . . . . . . . . . . . . . . . 89

4.6.2 Procedure to Obtain the Motor EquivalentVoltage and Current . . . . . . . . . . . . . . . . . . . . 91

Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Part II Modeling

5 Coordinate System and Attitude Representation . . . . . . . . . 995.1 Coordinate Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

5.1.1 Right-Hand Rule . . . . . . . . . . . . . . . . . . . . . . 101

xii Contents

5.1.2 Earth-Fixed Coordinate Frameand Aircraft-Body Coordinate Frame. . . . . . . . . 101

5.2 Attitude Representation . . . . . . . . . . . . . . . . . . . . . . . . 1025.2.1 Euler Angles . . . . . . . . . . . . . . . . . . . . . . . . . 1025.2.2 Rotation Matrix . . . . . . . . . . . . . . . . . . . . . . . 1055.2.3 Quaternions . . . . . . . . . . . . . . . . . . . . . . . . . . 109

5.3 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

6 Dynamic Model and Parameter Measurement . . . . . . . . . . . 1216.1 Multicopter Control Model . . . . . . . . . . . . . . . . . . . . . 123

6.1.1 General Description . . . . . . . . . . . . . . . . . . . . 1236.1.2 Multicopter Flight Control Rigid Model . . . . . . 1246.1.3 Control Effectiveness Model . . . . . . . . . . . . . . 1276.1.4 Propulsor Model. . . . . . . . . . . . . . . . . . . . . . . 129

6.2 Multicopter Aerodynamic Drag Model . . . . . . . . . . . . . 1306.2.1 Blade Flapping. . . . . . . . . . . . . . . . . . . . . . . . 1306.2.2 Multicopter Aerodynamic Drag Model . . . . . . . 132

6.3 Multicopter Model Parameter Measurement . . . . . . . . . . 1326.3.1 Position of the Center of Gravity . . . . . . . . . . . 1336.3.2 Weight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1346.3.3 Moment of Inertia. . . . . . . . . . . . . . . . . . . . . . 1346.3.4 Propulsor Model’s Parameter Measurement . . . . 138

6.4 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

Part III Perception

7 Sensor Calibration and Measurement Model . . . . . . . . . . . . 1477.1 Three-Axis Accelerometer . . . . . . . . . . . . . . . . . . . . . . 149

7.1.1 Fundamental Principle . . . . . . . . . . . . . . . . . . . 1497.1.2 Calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . 1497.1.3 Measurement Model . . . . . . . . . . . . . . . . . . . . 151

7.2 Three-Axis Gyroscope. . . . . . . . . . . . . . . . . . . . . . . . . 1517.2.1 Fundamental Principle . . . . . . . . . . . . . . . . . . . 1517.2.2 Calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . 1527.2.3 Measurement Model . . . . . . . . . . . . . . . . . . . . 154

7.3 Three-Axis Magnetometer . . . . . . . . . . . . . . . . . . . . . . 1557.3.1 Fundamental Principle . . . . . . . . . . . . . . . . . . . 1557.3.2 Calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . 1557.3.3 Measurement Model . . . . . . . . . . . . . . . . . . . . 157

7.4 Ultrasonic Range Finder . . . . . . . . . . . . . . . . . . . . . . . 1577.4.1 Fundamental Principle . . . . . . . . . . . . . . . . . . . 1577.4.2 Calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . 1587.4.3 Measurement Model . . . . . . . . . . . . . . . . . . . . 158

7.5 Barometer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1587.5.1 Fundamental Principle . . . . . . . . . . . . . . . . . . . 1587.5.2 Calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . 1597.5.3 Measurement Model . . . . . . . . . . . . . . . . . . . . 159

Contents xiii

7.6 2D Laser Range Finder . . . . . . . . . . . . . . . . . . . . . . . . 1597.6.1 Fundamental Principle . . . . . . . . . . . . . . . . . . . 1597.6.2 Calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . 1597.6.3 Measurement Model . . . . . . . . . . . . . . . . . . . . 1597.6.4 Supplement: LiDAR . . . . . . . . . . . . . . . . . . . . 160

7.7 Global Positioning System . . . . . . . . . . . . . . . . . . . . . . 1627.7.1 Fundamental Principle . . . . . . . . . . . . . . . . . . . 1627.7.2 Calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . 1637.7.3 Measurement Model . . . . . . . . . . . . . . . . . . . . 1637.7.4 Supplement: Latitude-and-Longitude

Distance and Heading Calculation. . . . . . . . . . . 1647.8 Camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

7.8.1 Fundamental Principle . . . . . . . . . . . . . . . . . . . 1657.8.2 Measurement Model . . . . . . . . . . . . . . . . . . . . 1667.8.3 Calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . 1687.8.4 Some Toolboxes. . . . . . . . . . . . . . . . . . . . . . . 170

7.9 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172

8 Observability and Kalman Filter. . . . . . . . . . . . . . . . . . . . . 1738.1 Observability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175

8.1.1 Linear System . . . . . . . . . . . . . . . . . . . . . . . . 1758.1.2 Continuous-Time Nonlinear System . . . . . . . . . 179

8.2 Kalman Filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1838.2.1 Objective. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1848.2.2 Preliminary . . . . . . . . . . . . . . . . . . . . . . . . . . 1848.2.3 Theoretical Derivation . . . . . . . . . . . . . . . . . . . 1858.2.4 Multirate Kalman Filter . . . . . . . . . . . . . . . . . . 192

8.3 Extended Kalman Filter. . . . . . . . . . . . . . . . . . . . . . . . 1938.3.1 Basic Principle . . . . . . . . . . . . . . . . . . . . . . . . 1938.3.2 Theoretical Derivation . . . . . . . . . . . . . . . . . . . 1938.3.3 Implicit Extended Kalman Filter . . . . . . . . . . . . 195

8.4 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196

9 State Estimation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1999.1 Attitude Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . 201

9.1.1 Measuring Principle . . . . . . . . . . . . . . . . . . . . 2019.1.2 Linear Complementary Filter . . . . . . . . . . . . . . 2049.1.3 Nonlinear Complementary Filter . . . . . . . . . . . . 2079.1.4 Kalman Filter . . . . . . . . . . . . . . . . . . . . . . . . . 208

9.2 Position Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . 2099.2.1 GPS-Based Position Estimation . . . . . . . . . . . . 2099.2.2 SLAM-Based Position Estimation . . . . . . . . . . . 210

9.3 Velocity Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . 2149.3.1 Optical-Flow-Based Velocity Estimation

Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

xiv Contents

9.3.2 Aerodynamic-Drag-Model-Based VelocityEstimation Method . . . . . . . . . . . . . . . . . . . . . 218

9.4 Obstacle Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . 2209.4.1 Focus of Expansion Calculation . . . . . . . . . . . . 2209.4.2 Time to Collision Calculation. . . . . . . . . . . . . . 221

9.5 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224

Part IV Control

10 Stability and Controllability . . . . . . . . . . . . . . . . . . . . . . . . 22710.1 Definition of Stability . . . . . . . . . . . . . . . . . . . . . . . . . 22910.2 Stability Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230

10.2.1 Stability of Multicopters . . . . . . . . . . . . . . . . . 23010.2.2 Some Results of Stability . . . . . . . . . . . . . . . . 231

10.3 Basic Concepts of Controllability . . . . . . . . . . . . . . . . . 23610.3.1 Classical Controllability. . . . . . . . . . . . . . . . . . 23610.3.2 Positive Controllability . . . . . . . . . . . . . . . . . . 237

10.4 Controllability of Multicopters . . . . . . . . . . . . . . . . . . . 23810.4.1 Multicopter System Modeling . . . . . . . . . . . . . 23810.4.2 Classical Controllability. . . . . . . . . . . . . . . . . . 24010.4.3 Positive Controllability . . . . . . . . . . . . . . . . . . 24010.4.4 Controllability of Multicopter Systems . . . . . . . 24310.4.5 Further Discussions. . . . . . . . . . . . . . . . . . . . . 247

10.5 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24710.6 Appendix: Proof of Lemma 10.17. . . . . . . . . . . . . . . . . 248Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250

11 Low-Level Flight Control . . . . . . . . . . . . . . . . . . . . . . . . . . 25111.1 Framework of Low-Level Flight Control

of Multicopters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25311.2 Linear Model Simplification. . . . . . . . . . . . . . . . . . . . . 254

11.2.1 Horizontal Position Channel Model. . . . . . . . . . 25511.2.2 Altitude Channel Model . . . . . . . . . . . . . . . . . 25511.2.3 Attitude Model . . . . . . . . . . . . . . . . . . . . . . . . 256

11.3 Position Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25611.3.1 Basic Concept . . . . . . . . . . . . . . . . . . . . . . . . 25611.3.2 Euler Angles as Output . . . . . . . . . . . . . . . . . . 25711.3.3 Rotation Matrix as Output . . . . . . . . . . . . . . . . 262

11.4 Attitude Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26511.4.1 Basic Conception . . . . . . . . . . . . . . . . . . . . . . 26511.4.2 Euler Angles Based Attitude Control. . . . . . . . . 26611.4.3 Rotation Matrix Based Attitude Control. . . . . . . 26611.4.4 Robust Attitude Control . . . . . . . . . . . . . . . . . 267

11.5 Control Allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . 27411.5.1 Basic Concept . . . . . . . . . . . . . . . . . . . . . . . . 27411.5.2 Implementation of Control Allocation

in Autopilots . . . . . . . . . . . . . . . . . . . . . . . . . 275

Contents xv

11.6 Motor Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27711.6.1 Closed-Loop Control. . . . . . . . . . . . . . . . . . . . 27711.6.2 Open-Loop Control. . . . . . . . . . . . . . . . . . . . . 277

11.7 Comprehensive Simulation. . . . . . . . . . . . . . . . . . . . . . 27711.7.1 Control Objective and System Parameter

Setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27711.7.2 Euler Angles Based Attitude Control

Combined with Euler Angles Based PositionControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278

11.7.3 Rotation Matrix Based Attitude ControlCombined with Rotation Matrix BasedPosition Control . . . . . . . . . . . . . . . . . . . . . . . 280

11.7.4 Robust Attitude Control . . . . . . . . . . . . . . . . . 28211.8 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285

12 Position Control Based on Semi-Autonomous Autopilots . . . 28712.1 Problem Formulation. . . . . . . . . . . . . . . . . . . . . . . . . . 289

12.1.1 Structure of Multicopter with SAA . . . . . . . . . . 28912.1.2 Models of Three Channels . . . . . . . . . . . . . . . . 28912.1.3 Objective of Position Control . . . . . . . . . . . . . . 291

12.2 System Identification. . . . . . . . . . . . . . . . . . . . . . . . . . 29112.2.1 Procedure and Toolboxes of System

Identification . . . . . . . . . . . . . . . . . . . . . . . . . 29112.2.2 Model Used in System Identification. . . . . . . . . 293

12.3 Position Controller Design . . . . . . . . . . . . . . . . . . . . . . 29612.3.1 PID Controller . . . . . . . . . . . . . . . . . . . . . . . . 29712.3.2 Additive-Output-Decomposition-Based

Dynamic Inversion Control . . . . . . . . . . . . . . . 29712.4 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300

12.4.1 System Identification. . . . . . . . . . . . . . . . . . . . 30012.4.2 Control Design. . . . . . . . . . . . . . . . . . . . . . . . 30412.4.3 Comparison of Tracking Performance . . . . . . . . 305

12.5 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308

Part V Decision

13 Mission Decision-Making . . . . . . . . . . . . . . . . . . . . . . . . . . 31313.1 Fully-Autonomous Control . . . . . . . . . . . . . . . . . . . . . 315

13.1.1 Brief Introduction . . . . . . . . . . . . . . . . . . . . . . 31513.1.2 Mission Planning . . . . . . . . . . . . . . . . . . . . . . 31613.1.3 Path Planning. . . . . . . . . . . . . . . . . . . . . . . . . 318

13.2 Semi-Autonomous Control. . . . . . . . . . . . . . . . . . . . . . 32813.2.1 Three Modes of SAC . . . . . . . . . . . . . . . . . . . 32913.2.2 Radio Control . . . . . . . . . . . . . . . . . . . . . . . . 33013.2.3 Automatic Control . . . . . . . . . . . . . . . . . . . . . 33113.2.4 Switching Logic Between RC and AC . . . . . . . 333

xvi Contents

13.3 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336

14 Health Evaluation and Failsafe . . . . . . . . . . . . . . . . . . . . . . 33714.1 Purpose and Significance of Decision-Making

Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33914.2 Safety Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339

14.2.1 Communication Breakdown . . . . . . . . . . . . . . . 33914.2.2 Sensor Failure . . . . . . . . . . . . . . . . . . . . . . . . 34014.2.3 Propulsion System Anomaly . . . . . . . . . . . . . . 341

14.3 Health Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34114.3.1 Pre-Flight Health Check . . . . . . . . . . . . . . . . . 34114.3.2 In-Flight Health Evaluation . . . . . . . . . . . . . . . 342

14.4 Failsafe Suggestions . . . . . . . . . . . . . . . . . . . . . . . . . . 34514.4.1 Communication Failsafe . . . . . . . . . . . . . . . . . 34614.4.2 Sensor Failsafe . . . . . . . . . . . . . . . . . . . . . . . . 34614.4.3 Propulsion System Failsafe . . . . . . . . . . . . . . . 346

14.5 A Safe Semi-Autonomous Autopilot Logic Design . . . . . 34714.5.1 Requirement Description . . . . . . . . . . . . . . . . . 34714.5.2 Multicopter State and Flight Mode Definition. . . 34814.5.3 Event Definition . . . . . . . . . . . . . . . . . . . . . . . 34814.5.4 Autopilot Logic Design . . . . . . . . . . . . . . . . . . 35014.5.5 Demand and Decision-Making Table. . . . . . . . . 354

14.6 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361

15 Outlook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36315.1 Related Technology Development. . . . . . . . . . . . . . . . . 365

15.1.1 Propulsion Technology . . . . . . . . . . . . . . . . . . 36515.1.2 Navigation Technology . . . . . . . . . . . . . . . . . . 36615.1.3 Interactive Technology . . . . . . . . . . . . . . . . . . 36715.1.4 Communication Technology. . . . . . . . . . . . . . . 36815.1.5 Chip Technology . . . . . . . . . . . . . . . . . . . . . . 36815.1.6 Software Platform Technology . . . . . . . . . . . . . 36915.1.7 Air Traffic Control Technology . . . . . . . . . . . . 36915.1.8 Concluding Remark . . . . . . . . . . . . . . . . . . . . 370

15.2 Demand and Technology Innovation . . . . . . . . . . . . . . . 37015.2.1 Innovation Level . . . . . . . . . . . . . . . . . . . . . . 37015.2.2 Application Innovation . . . . . . . . . . . . . . . . . . 37015.2.3 Performance Innovation. . . . . . . . . . . . . . . . . . 372

15.3 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37515.3.1 Risks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37515.3.2 Suggestions . . . . . . . . . . . . . . . . . . . . . . . . . . 375

15.4 Opportunities and Challenges . . . . . . . . . . . . . . . . . . . . 37615.4.1 Opportunities . . . . . . . . . . . . . . . . . . . . . . . . . 37615.4.2 Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . 376

References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381

Contents xvii

Acronyms

2D Two-dimensional3D Three-dimensional4D Four-dimensionalABCF Aircraft-Body Coordinate FrameAC Alternating CurrentAC Automatic ControlACAI Available Control Authority IndexANN Artificial Neutral NetworkAOD Additive Output DecompositionAOPA Aircraft Owners and Pilots AssociationAPI Application Programming InterfaceAPM ArduPilot MegaASD Additive State DecompositionATE Automatic Trigger EventBMS Battery Management SystemC/A Coarse/AcquisitionCCF Camera Coordinate FrameCES Consumer Electronics ShowCF Carbon FiberCFD Computational Fluid DynamicsCIFER Comprehensive Identification from FrEquency ResponseCoG Center of GravityDC Direct CurrentDGPS Differential Global Position SystemDIC Dynamic Inversion ControlDMS Degree-Minute-SecondDoC Degree of ControllabilityDoF Degree of FreedomDSP Digital Signal ProcessorEE Electronic EngineeringEFCF Earth-Fixed Coordinate FrameEFSM Extended-Finite-State-MachineEKF Extended Kalman FilterEMF ElectroMotive ForceESC Electronic Speed ControllerESI External System IndependenceFAC Fully-Autonomous ControlFFT Fast Fourier Transform

xix

FM Frequency ModulationFOC Field Oriented ControlFoE Focus of ExpansionFPV First-Person ViewFSM Finite-State-MachineGCS Ground Control SystemGNSS Global Navigation Satellite SystemGNU GNU’s Not UnixGPS Global Position SystemGWN Gaussian White NoiseIARC International Aerial Robotics CompetitionICF Image Coordinate FrameIEKF Implicit Extended Kalman FilterIMU Inertial Measurement UnitINCOSE International Council On Systems EngineeringINS Inertial Navigation SystemIoD Internet of DronesIRF Inertial Reference FrameLGPL Lesser General Public LicenseLIDAR LIght Detection And RangingLiPo Lithium PolymerLQE Linear Quadratic EstimateMBSE Model-Based Systems EngineeringMEMS Micro-Electro-Mechanical SystemMIE Manual Input EventMIMO Multi-Input Multi-OutputNAVSOP NAVigation via Signals of OPportunityNED North East DownNiMH Nickel Metal HydrideOCV-SoC Open Circuit Voltage and SoCPCM Pulse Code ModulationPCS PieCeSPD Proportional-DerivativePEM Prediction-Error MinimizationPI Proportional-IntegralPID Proportional-Integral-DerivativePPM Parts-Per-MillionPPM Pulse Position ModulationPRBS Pseudo-Random Binary SignalPTAM Parallel Tracking And MappingPWM Pulse Width ModulationPWM Pulse Width ModulatedRC Remote ControlRC Remote ControllerRC Radio ControlledRMAH Reserved Maximum Ampere-HourRPM Revolution Per MinuteRPV Remote-Person ViewRTK Real-Time Kinematic

xx Acronyms

RTL Return-To-LaunchSAA Semi-Autonomous AutopilotSAC Semi-Autonomous ControlSCM Single Chip MicrocomputerSDK Software Development KitSF Slow FlyerSLAM Simultaneous Localization And MappingSoC State-of-ChargeSyNAPSE Systems of Neuromorphic Adaptive Plastic Scalable

ElectronicsTDoA Time Difference of ArrivalToF Time of FlightTSE Text-Based Systems EngineeringTTC Time To Contact/CollisionUAS Unmanned Aerial SystemUAV Unmanned Aerial VehicleUHF Ultra High FrequencyUTM Unmanned aerial system Traffic Management systemUWB Ultra Wide BandVLoS Visual Line of SightVTOL Vertical Take-Off and Landing

Acronyms xxi

Symbols

¼ Equality� Approximately equal� Same order of magnitude or probability distribution, Definition. x, y means that x is defined to be another name

for y, under certain assumption� Congruence relation2 Belong to? Perpendicular� Cross product� Multiplication of quaternionsB B o; dð Þ, n 2 R

mj n� ok k� df g; and the notation x tð Þ !B o; dð Þ means min

y2B o;dð Þx tð Þ � yk k ! 0

C Set of complex numbersD D ¼ D D ¼ dij

� �; dij ¼ 0 if i 6¼ j

��� �; diagonal matrix set

P P ¼ P P[ 0jf g; positive definite matrix setR;Rn;Rn�m Set of real numbers, Euclidean space of dimension n;

Euclidean space of dimension n� mRþ Set of positive real numbersS S ¼ S S ¼ ST

��� �; symmetric matrix set

Z IntegerZþ Positive integerSO 3ð Þ SO 3ð Þ, AjATA ¼ I3; det Að Þ ¼ 1;A 2 R

3� �

e1; e2; e3 Unit vectors, e1 ¼ 1 0 0½ T; e2 ¼ 0 1 0½ T;e3 ¼ 0 0 1½ T

In Identify matrix of dimension n� n0n�m Zero matrix of dimension n� mx Scalex Vector, xi represents the ith element of vector x

_x; dxdtThe first derivative with respect to time t

x̂ An estimate of xx½ �

x½ � ,0 �x3 x2x3 0 �x1�x2 x1 0

24

35�

; x 2 R3

ix Vector x represented in frame i: For example, ex;bx representthe vector x represented in frame oexeyeze and frame obxbybzb;respectively

xxiii

A Matrix, aij represents the element of matrix A at the ith rowand the jth column

AT Transpose of AA�T Transpose of inverse A

Ay Moore-Penrose pseudoinverse of A

det Að Þ Determinant of Atr Að Þ

Trace of a square matrix A; tr Að Þ, Pni¼1

aii;A 2 Rn�n

q Quaternion, qeb represents the rotation from the frameobxbybzb to the frame oexeyeze

q Conjugate quaternionq�1 Inverse quaternion

�ð Þ kð Þ The kth derivative with respect to time t

r gradientCov x; yð Þ Covariance, Cov x; yð Þ,E x� E xð Þð Þ y� E yð ÞT

� �� �,

Cov xð Þ,E x� E xð Þð Þ x� E xð ÞT� �� �

C A;Bð Þ Controllability matrix of pairs A;Bð Þ;C A;Bð Þ ¼ ½BAB � � �An�1B

E xð Þ The expectation of the random variable xLfh The Lie derivative of the function h with respect to the vector

field fLifh The ith order derivative of Lfh; Lifh ¼ r Li�1

f h� �

fO A;CT� �

Observability matrix of pairs A;Cð Þ;

O A;CT� � ¼CT

CTA...

CTAn�1

26664

37775

vex �ð Þ vex x½ �� �

, xVar xð Þ The variance of the random variable x;

Var xð Þ,E x� E xð Þð Þ2� �

�j j Absolute value�k k Euclidean norm, xk k,

ffiffiffiffiffiffiffiffixTx

p; x 2 R

n

�k k1 Infinity norm, xk k1¼ max x1j j; � � � ; xnj jf g; x 2 Rn

a Specific force of a multicopter, a 2 R3: For example, ea;ba

represent the vector a in frame oexeyeze and frame obxbybzb;respectively. axi ; ayi ; azi represent the specific force compo-nents along axes oixi; oiyi; oizi; respectively, i ¼ e,b: (m/s2)

bam Calibrated specific force measured accelerometer in frameobxbybzb, i.e., bam¼ ½ axbm aybm azbm T (m/s2)

bdbaro Bias of the altitude estimated by a barometer (m)Bf Control effectiveness matrix of a multicopter with efficiency

parameterscM Lumped parameter torque coefficient (N �ms2/rad2)cT Lumped parameter thrust coefficient (N � s2/rad2)

xxiv Symbols

CR Constant parameter. It can represent the slope of the linearrelationship from the throttle command to the motor speed

dbaro Height measured by a barometer (m)dsonar Distance measured by an ultrasonic range finder (m)f Total thrust acting on a multicopter (N)f Thrust vector acting on a multicopter, f 2 R

3. For example,ef;bf represent the vector f in frame oexeyeze and frameobxbybzb; respectively. fxi ; fyi ; fzi represent the componentthrusts along axes oixi; oiyi; oizi; respectively, i = e,b. Or, itrepresents the propeller thrust vector (N)

g Acceleration of gravity (m/s2)J Multicopter moment of inertia, J 2 R

3�3; Jxx; Jyy; Jzz arecentral principal moments of inertia, Jxy; Jyz; Jxz are productsof inertia (kg �m2)

kdrag Drag coefficient due to blade flapping, kdrag 2 Rþ . It can beused to determine the drags applied to the rotating blades

m Multicopter mass (kg)M Propeller torque (N �m), or a positive integerMi Reaction torque generated by the ith propeller (N �m)bmm Calibrated magnetic field measured by a magnetometer in

frame obxbybzb, i.e., bmm ¼ ½mxb myb mzb Tem Magnetic field in frame oexeyezeMnr Control effectiveness matrix, Mnr 2 R

4�nr

nr Number of propulsorsN Motor speed (RPM), or a positive integerobxbybzb Aircraft-body coordinate frameoexeyeze Earth-fixed coordinate framep Position of the center of a multicopter, p 2 R

3: For example,ep;bp represent the vector p in frame oexeyeze and frameobxbybzb; respectively. pxi ; pyi ; pzi represent the positioncomponents along axes oixi; oiyi; oizi; respectively,i = e,b. (m)

pGPS Position measured by a GPS receiver, pGPS 2 R3. For

example, (pxGPS; pyGPS) represents the measured 2D locationby a GPS receiver (m)

ph Horizontal position, ph ¼ ½ pxe pye T (m)R̂ Rotation matrix estimate~R Error between Rm and R̂; i.e., ~R ¼ R̂TRm

Rba Rb

a 2 SO 3ð Þ represnets the rotation matrix rotating vectorsfrom frame a to frame b

Rm Measured rotation matrixTm Time constant. It can determine the dynamic response of

motorsv velocity (also called linear velocity) of the center of a

multicopter, v 2 R3. For example, ev;bv represent the vector v

in frame oexeyeze and frame obxbybzb; respectively. vxi ; vyi ; vzirepresent the velocity components along axes oixi; oiyi; oizi;respectively, i ¼ e,b: (m/s)

Symbols xxv

_vxi ; _vyi ; _vzi Acceleration components of a multicopter along axesoixi; oiyi; oizi; respectively, i ¼ e,b: (m/s2)

W Matrix that represents the relationship between the attituderate and the aircraft body’s angular velocity

hm Measured pitch angle (rad)H Eular angles,H ¼ / h w½ T; where h;/;w are pitch angle,

roll angle, and yaw angle, respectivelys Torque s 2 R

3; where sx; sy; sz represent the torquecomponents along axes obxb; obyb; obzb; respectively, (N �m)

r Throttle commandwGPS Yaw angle estimated by GPS (rad)wm Measured yaw angle (rad)wmag Yaw angle estimated by a magnetometer (rad)x Angular velocity of a multicopter, x 2 R

3: For example,ex;bx represent the vector x in frame oexeyeze and frameobxbybzb; respectively. xxi ;xyi ;xzi represent the angularvelocity components along axes oixi; oiyi; oizi; respectively,i ¼ e,b: (rad/s)

bxm Calibrated angular velocity measured by a gyroscope in frameobxbybzb (rad/s)

- Angular speed of a propeller (rad/s)-b Constant parameter. It is the constant term of the linear

relationship from the throttle command to the motor speed-k Angular speed of the kth propeller, -k 2 Rþ (rad/s)-ss Steady-state speed of a motor (rad/s)

xxvi Symbols