<<

DEGREE PROJECT IN MECHANICAL ENGINEERING, SECOND CYCLE, 30 CREDITS , SWEDEN 2019

Robust motion control strategies for -equipped naval vessels considering scaling effects

HENRIK STRÖMQVIST

KTH ROYAL INSTITUTE OF SCHOOL OF INDUSTRIAL ENGINEERING AND MANAGEMENT Examensarbete MMK 2019:399

Robusta rörelsestyrningsstrategier för bärplansutrustade vattenfarkoster rörande skalningseffekter

Henrik Strömqvist

Godkänt Examinator Handledare 2019-06-24 Lei Feng Binbin Lian Uppdragsgivare Kontaktperson Maritime Robotics Lab, KTH Ivan Stenius Sammanfattning Bärplansutrustade fartyg är inte något som är särskilt nytt. Tekniken går så långt tillbaka som början av 1900-talet och nya framsteg görs inom området. Huvudprincipen för bärplan är att använda flödesdynamik för att generera lyftkraft likt ett flygplan och lyfta fartygets skrov ur vattnet, vilket i sin tur minskar motståndet när farkosten förflyttar sig. På KTH har en ny typ av båt konstruerats som bygger på denna princip kallad FoilCart. Dess konstruktion gör att dess rörelsestyrning påminner om en inverterad pendel vilket är ett klassiskt kontrollproblem vilket kan lösas på många olika sätt. Tidigare studier har inriktat sig på rörelse runt lutningsaxeln, men FoilCart-prototypen innefattar även rörelse kring rullningsaxeln. Beteendet hos denna inverterade pendel är därför också mer komplext genom att vara i flera frihetsgrader, roterande och translaterande runt flera axlar. Tanken är att bedöma vilken inverkan detta har på övergripande robusthet och stabilitet genom att studera möjliga kopplingseffekter mellan rullning och lutning. Avhandlingen syftar också till att studera möjliga skalningseffekter när prototypens fysiska parametrar ändras. Detta görs som en viktig bedömning av farkosten som en autonom drönare, eftersom kanske kan användas för kartläggning av havsdjup där energieffektivitet är mycket väsentlig. Flera kontrollalgoritmer utvärderas så som klassiska PID och linjära kvadratiska metoder. Dessa används och testas genom simulering i Simscape Multibody som ett sätt att verifiera funktion. Ytterligare strategier för rörelsestyrning utvecklas även för att öka stabiliteten och robustheten genom att t ex öka mängden kontrollerbara variabler. Resultaten visar att kopplingseffekterna är minimala när systemet utsätts för störningar och pekar på att den förenklade reglerkonstruktionen är möjlig, men detta kan bara konstateras när rörelsen sker kring jämviktspunkten eftersom en linjärisering görs. När det gäller skalningseffekter behöver farkosten ett snabbare svar från kontrollern som i sin tur ställer högre krav på hårdvaran när farkosten skalas ner. Till exempel med relativt långsamma servos för att styra systemet uppstår ett oscillerande beteende. Ökad frekvens i reglerslingan innebär också en ökad förstärkning av högfrekvent brus vilket kan leda till oönskat beteende. Master of Science Thesis MMK 2019:399

Robust motion control strategies for hydrofoil-equipped naval vessels considering scaling effects

Henrik Strömqvist

Approved Examiner Supervisor 2019-06-24 Lei Feng Binbin Lian Commissioner Contact person Maritime Robotics Lab, KTH Ivan Stenius Abstract

Hydrofoil-equipped naval vessels are not new. The technique appeared at the beginning of the 20th century and there are still new developments within the field. The main principle of is to use to generate much like an aircraft and lift the hull of the craft out of the water, thus reducing while traversing the water surface. At KTH, Royal Institute of Technology a new craft called FoilCart has been built using this principle. Due to the design, the motion control resembles that of an inverted pendulum which is a classical control problem with many ways of reaching stable behavior. Previous studies have focused on pitch actuation, however the FoilCart incorporates roll actuation through hydrofoils as well which opens up new possibilities on movement.

The nature of this inverted pendulum is therefore also made more complex by being in several degrees of freedom, rotating and translating around multiple axes. The idea is to assess the impact this has on overall robustness and stability by studying possible coupling effects between roll and pitch. The thesis also aims to possible scaling effects when the physical parameters of the prototype are changed. This is done as an important assessment of the craft as an autonomous drone as the craft may be used for sea mapping purposes in which energy usage efficiency is essential.

Multiple control algorithms are considered, classic PID as well as linear quadratic methods and later on used and tested through simulation in Simscape Multibody as means of verification. Further strategies on motion control are developed to increase stability and robustness by extending the amount of controllable variables. Results show that the coupling effects are minimal when the system is disturbed and suggests that the rather simplified control design is feasible, this however can only be said when moving about the equilibrium point as a linearization is done. Concerning scaling effects the craft needs a faster response of control that puts higher requirements on hardware when scaled down. For example with relatively slow servos to actuate the system, it exhibits oscillatory behavior. Also measurement noise is amplified to a higher extend which may cause unwanted behavior. i

Acknowledgements

I would like to thank the team over at the Maritime Robotics Lab and especially the one working with the FoilCart-project, Ivan Stenius, Nicholas Honeth, An- ton Svensson and Fredrik Löfblom for providing me with more insights into naval and a better understanding of the project. I would also like to thank my supervisor Binbin Lian for all the help and discussions concern- ing difficulties and solutions as well as my examiner Lei Feng for interesting viewpoints and questions. Contents

1 Introduction 1 1.1 Background ...... 1 1.2 Problem definition ...... 4 1.3 Purpose ...... 4 1.4 Research question ...... 5 1.5 Research methodology & Scope ...... 5 1.6 Ethical considerations ...... 6

2 FoilCart Dynamics & Modelling 7 2.1 The FoilCart ...... 7 2.2 The Inverted Pendulum ...... 8 2.2.1 Broom on a cart ...... 8 2.2.2 Spherical pendulum on a cart ...... 8 2.2.3 Lagrangian mechanics ...... 10 2.2.4 Linearization & Decoupling ...... 13 2.2.5 FoilCart actuation and dynamics ...... 14 2.3 dynamics ...... 16

3 Control Design 19 3.1 The plant model ...... 19 3.1.1 Equations of motion ...... 19 3.2 Control algorithms ...... 20 3.2.1 PID ...... 21 3.2.2 LQ ...... 21 3.3 Controller choice ...... 26 3.4 State space representation ...... 30 3.4.1 Controllability ...... 31 3.5 Cascaded control ...... 32

ii CONTENTS iii

4 Simulation verification 35 4.1 Simulink modelling ...... 35 4.1.1 Disturbance modelling ...... 37 4.2 Test cases ...... 39 4.2.1 Case 1 ...... 40 4.2.2 Case 2 ...... 42 4.2.3 Case 3 ...... 44 4.3 System Scaling ...... 46 4.3.1 Parameters ...... 46

5 Results 48 5.1 Cases ...... 49 5.1.1 Case 1 ...... 49 5.1.2 Case 2 ...... 54 5.1.3 Case 3 ...... 63 5.1.4 Result analysis ...... 68 5.2 Closed loop placement ...... 69 5.3 Sensitivity & Complementary Sensitivity ...... 70

6 Conclusion & future work 73 6.1 Conclusion ...... 73 6.2 Future work ...... 74

Bibliography 76 List of Figures

1.1 Examples of types of existing hydrofoils. [3] ...... 2 1.2 Bell’s prototype hydrofoil- HD-4 in 1919. [5] ...... 2 1.3 Prototype design of the FoilCart project at MRL...... 4

2.1 Figure demonstrating the broom-on-a-cart dynamics...... 8 2.2 Figure demonstrating the broom-on-a-cart dynamics on a plane.9 2.3 Figure depicting the simplified actuation in the roll plane of the FoilCart...... 14 2.4 Figure depicting the simplified actuation in the pitch plane of the FoilCart...... 15 2.5 A comparison between MATLABs linearization tool for Simulink models and the derived mathematically model, the figure is a pole-zero mapping of the eigenvalues of the state space matrix. 16 2.6 Figure depicting some of the dynamics acting upon a moving wing profile...... 16 2.7 Figure showing the profile of a NACA0015-wing...... 17 2.8 Figure showing the varying lift/drag parameter with respect to angle of attack...... 18

3.1 Figure showing an example of an LQI setup...... 23 3.2 Figure showing an example of the sensitivity function compared between LQI and LQR...... 24 3.3 MATLAB’s application PID-tuner which is used to find a suit- able controller for the plant...... 26 3.4 A comparison between an LQR controller and the PID designed in previous figure...... 27 3.5 MATLAB’s application PID-tuner which is used to find a suit- able controller for the plant...... 28 3.6 A comparison on sensitivity between an LQR controller and the PID with changed parameters...... 29

iv LIST OF FIGURES v

3.7 Figure displaying the suggested cascaded setup for control. . . 32 3.8 Figure displaying MATLAB’s application PID-tuner...... 34

4.1 Figure showing a simplified FoilCart model designed in Simulink (Simscape Multibody)...... 35 4.2 Figure showing the controller setup designed in Simulink. . . . 36 4.3 Figure showing the Simscape Multibody setup for the model. . 37 4.4 Figure showing the Simscape model with the suggested distur- bance model...... 38 4.5 Figure showing the Simscape Multibody setup for the model in a simplified version for Case 1...... 40 4.6 Figure showing the forces acting on the simplified version of the model...... 41 4.7 Figure showing the controller setup designed in Simulink. . . . 41 4.8 Figure showing the more advanced version of the Simscape model. 42 4.9 Servo step response, it takes approximately 100 ms for the servo to reach it’s target...... 43 4.10 Figure showing the thrust controller in the Simulink model. . . 44 4.11 Figure showing the setup of the controller with auto-tuned PID blocks for a 5-DOF system...... 45 4.12 Figure showing the Simulink setup for enhancing the actuator angles...... 45

5.1 Comparison between LQ-controllers in pitch angle response for an impulse disturbance on the large craft...... 49 5.2 Comparison between LQ-controllers in roll angle response for an impulse disturbance on the large craft...... 49 5.3 Comparison between LQ-controllers in translational motion in y-direction for an impulse disturbance on the large craft. . . . . 49 5.4 Comparison between LQ-controllers in pitch angle response for a step disturbance on the large craft...... 49 5.5 Comparison between LQ-controllers in pitch angle response for an impulse disturbance...... 50 5.6 Comparison between LQ-controllers in roll angle response for an impulse disturbance...... 50 5.7 Comparison between LQ-controllers in translational motion in y-direction for an impulse disturbance on the small craft. . . . . 51 5.8 Comparison between LQ-controllers in pitch angle response for a step disturbance on the small craft...... 51 vi LIST OF FIGURES

5.9 Angle response in pitch and roll for impulse disturbance on large craft...... 52 5.10 Angle response in pitch and roll for step disturbance on large craft...... 52 5.11 Motion response in y-direction for impulse disturbance on large craft...... 52 5.12 Motion response in y-direction for step disturbance on large craft. 52 5.13 Angle response in pitch and roll for impulse disturbance on small craft...... 53 5.14 Angle response in pitch and roll for step disturbance on small craft...... 53 5.15 Motion response in y-direction for impulse disturbance on small craft...... 53 5.16 Motion response in y-direction for step disturbance on small craft. 53 5.17 Angle response in pitch and roll for impulse disturbance on large craft...... 54 5.18 Angle response in pitch and roll for step disturbance on large craft...... 54 5.19 Control output for impulse disturbance on large craft...... 55 5.20 Motion response in y-direction for impulse disturbance on large craft...... 55 5.21 Angle response in pitch and roll for impulse disturbance on small craft...... 56 5.22 Motion response in y-direction for impulse disturbance on small craft...... 56 5.23 Angle response in pitch and roll for impulse disturbance on large craft...... 57 5.24 Angle response in pitch and roll for step disturbance on large craft...... 57 5.25 Motion response in y-direction for impulse disturbance on large craft...... 57 5.26 Motion response in y-direction for step disturbance on large craft. 57 5.27 Control output for impulse disturbance on large craft...... 58 5.28 Control output for step disturbance on large craft...... 58 5.29 Angle response in pitch and roll for impulse disturbance on small craft...... 59 5.30 Angle response in pitch and roll for step disturbance on small craft...... 59 LIST OF FIGURES vii

5.31 Motion response in y-direction for impulse disturbance on small craft...... 59 5.32 Motion response in y-direction for step disturbance on small craft. 59 5.33 Control output for impulse disturbance on small craft...... 60 5.34 Control output for step disturbance on small craft...... 60 5.35 Angle response in pitch and roll for impulse disturbance on small craft with quicker servo movement...... 61 5.36 Angle response in pitch and roll for step disturbance on small craft with quicker servo movement...... 61 5.37 Motion response in y-direction for impulse disturbance on small craft with quicker servo movement...... 62 5.38 Motion response in y-direction for step disturbance on small craft with quicker servo movement...... 62 5.39 Control output for impulse disturbance on small craft with quicker servo movement...... 62 5.40 Control output for step disturbance on small craft with quicker servo movement...... 62 5.41 Angle response for impulse disturbance on large craft...... 63 5.42 Angle response for step disturbance on large craft...... 63 5.43 Control output for impulse disturbance on large craft...... 64 5.44 Control output for step disturbance on large craft...... 64 5.45 Altitude response for impulse on large craft. Observe that the z-axis is inverted and positive values are "pointed downward". 64 5.46 Altitude response for step on large craft. Observe that the z-axis is inverted and positive values are "pointed downward". . . . . 64 5.47 Angle response for impulse disturbance on small craft...... 65 5.48 Angle response for step disturbance on small craft...... 65 5.49 Control output for impulse disturbance on small craft...... 66 5.50 Control output for step disturbance on small craft...... 66 5.51 Altitude response for impulse disturbance on small craft. Ob- serve that the z-axis is inverted and positive values are "pointed downward"...... 66 5.52 Altitude response for step disturbance on small craft. Observe that the z-axis is inverted and positive values are "pointed down- ward"...... 66 5.53 Figure showing the response in velocity in x-direction for an im- pulse disturbance on the small craft in case 3...... 67 5.54 Figure showing the response in velocity in x-direction for an im- pulse disturbance on the large craft in case 3...... 67 viii LIST OF FIGURES

5.55 Comparison of closed loop PZ-map for LQI control...... 70 5.56 Figure showing a comparison between the two models over sen- sitivity and complementary sensitivity functions for pitch control. 71 5.57 Figure showing a comparison between the two models over sen- sitivity and complementary sensitivity functions, for roll control. 71 List of Tables

3.1 A comparison between an LQR controller and the PID in the pole-zero plane when control loop is closed...... 27 3.2 A comparison between an LQR controller and the PID in the pole-zero plane when control loop is closed...... 28 3.3 The table lists some different pros and cons with two types of controllers...... 30

4.1 Large LQR Gain-vector ...... 39 4.2 Small LQR Gain-vector ...... 39 4.3 Large LQI Gain-vector ...... 39 4.4 Small LQI Gain-vector ...... 39

ix

Chapter 1

Introduction

1.1 Background

What is a hydrofoil? The simple but effective principle of hydrofoils is the use of flight dynamics by placing streamlined closely resembling those of an aircraft beneath a naval vessel; as the accelerates lift is generated and the ’s hull lifted out of the water. As the amount of water being displaced vastly decreases when the hull is above the waterline, less force is needed to maintain or change velocity thus improving fuel efficiency and performance [1].

Hydrofoils come in many shapes but may be split up into two distinct groups, surface-piercing and submerged [2], examples of this are shown in figure 1.1. Surface-piercing hydrofoils are prone to wave effects as they are interacting with the waterline, however they are self-stabilizing as the V-shaped foils gen- erates less lift as they are successively lifted out of the water, thus resulting in a foilborne equilibrium. A fully submerged T-shape could be considered the opposite as there are less wave effects but the need for active motion con- trol arises to constantly balance the vessel in an upright position, thus being considered as an inverted pendulum problem in multiple degrees of freedom.

1 2 CHAPTER 1. INTRODUCTION

Figure 1.1: Examples of types of existing hydrofoils. [3]

Hydrofoil techniques are not new. The principle of using flight dynamics to enhance the performance of naval vessels dates back as far as the beginning of the previous century. was the first person to develop a successful hydrofoil in 1911 [4], reaching a top speed as high as 80 km/h, which in comparison to the fastest steam-powered at the time reaching only 60 km/h is a significant improvement.

Figure 1.2: Bell’s prototype hydrofoil-boat HD-4 in 1919. [5] CHAPTER 1. INTRODUCTION 3

Passenger and military naval vessels alike use hydrofoils for improving performance. Even recreational activities like sailing and wave- and windsurf- ing have also picked up the technique [6]–[8]. The usefulness and vast appli- cation areas of hydrofoils cannot be understated.

During the past two decades the development within autonomous seafaring on surface as well as underwater has seen great progress [9]–[12]. For smaller surface-going crafts however the common problem of only reaching relatively low speeds remains. This is due to certain hydrodynamic constraints first de- scribed by William Froude in the 19th century which states a correlation be- tween the length of a ship and it’s generated wave [13]. This has resulted in a rule of thumb concerning maximum speed efficiency within naval architec- ture which can be summarized as the longer the ship, the easier it is to reach an efficient higher maximum speed. The actual real limit concerning speed is of course governed by the maximum output of the propulsion device.

To bypass this challenge, hydrofoils could be considered as means of gener- ating hydrodynamic forces. Smaller crafts called have been developed which are one-manned sailing vessels with fully submerged hydrofoils reach- ing speeds of 12 knots ( 22 kph) while remaining stable [14]–[16]. However this necessitates a person being on the craft while operating to remain stable as a fully submerged T-shaped hydrofoil must be actively balanced as men- tioned earlier. The question then arises, How can the challenge of stabilizing the craft in terms of motion control be met for autonomous purposes? Previous studies around the area have been made, for example pitch control for smaller crafts, pitch and roll for very large crafts [17]–[19], model verification for submerged double T-shape [20] but there is of course for improvement and further research.

At the Maritime Robotics Laboratory (MRL) at KTH a prototype has been de- veloped which builds on the principle of a single fully submerged T-shaped hydrofoil, also known as the canard-configuration. This setup can for exam- ple be seen in the context of human surfboarding, the needed active control for balancing comes from the human acting as a feedback-system by shifting weight to keep an upright position. The prototype’s motion is governed by the actuation from only two control surfaces: a rudder in the mast which mainly controls roll, and an flap in the tail which control pitch. 4 CHAPTER 1. INTRODUCTION

Figure 1.3: Prototype design of the FoilCart project at MRL.

1.2 Problem definition

The system itself can be considered as an inverted pendulum around multiple axes as the center of mass rests a certain length above the actuators and gravity acting upon it, making the motion control of the system an interesting aspect and objective. This in turn is coupled with the challenge of scaling the system to a smaller size and the resulting effects on robustness and stability. This could be compared to balancing a broom or a pen with a hand, there is a clear difference between what hand motions are needed to make them stable.

1.3 Purpose

The sizing issue stems from the previously mentioned limiting factors of ship length and its maximum efficient speed [13], which motivates the study to be made. By solving this issue and defining which sizes for vessels are viable it could add to the long term goal of MRL to create small autonomous vessels capable of moving throughout Swedish waters and quickly assemble depth mappings around the archipelago. For real implementation it is also interest- ing to look at physical limitations like computation and actuation speed. It is also necessary to not use any sort of external measurement with motion cap- CHAPTER 1. INTRODUCTION 5

ture devices or similar as later stages of the FoilCart-project will incorporate some autonomy.

1.4 Research question

The problem within the thesis may be defined into the following research ques- tions.

• Expanding on previous studies on active hydrofoils [17], [20], [21], how does another degree of freedom (roll) influence the robustness and sta- bility of a system like this?

• How does scaling affect the overall robustness and stability of the sys- tem? This question will focus on a size which is smaller than the current prototype (3x1 m,60 kg + 90kg payload) as the aim for the later stages of the overall project is autonomous mapping at sea.

1.5 Research methodology & Scope

The thesis is divided into separate phases:

• First to start with studying the motion control of inverted pendulums in multiple dimensions, also adding an underactuated element by having the pendulum on a rolling cart.

• Following with tries to implement similar techniques as mentioned above to the FoilCart. This includes and refining existing models in Simulink and studying flight dynamics and control. State-space model- ing and optimal control (LQR).

• With a working model the size aspect can be studied, sensitivity and ro- bustness as well as actuation are interesting areas. Also, what are the necessary loop frequencies needed to stabilize the system?

• Experimentation with computer models (Simulink) will include differ- ent types of disturbances and noise added to the system to survey the behavior. 6 CHAPTER 1. INTRODUCTION

1.6 Ethical considerations

Ethical considerations for this type of research would for example be the usage of extracted data. Falsifying and distorting data through voluntary (dismiss- ing "non-wanted" results) or involuntary (subconscious bias) means is a severe faux-pas in research and should always be watched out for. In this case with a fairly new technique the wish of the researcher is of course to further the knowledge but there could be some slight risk that some data is dismissed in favor of accelerating the use of the technique.

It should also be noted that this is such a new technique that some patents may be issued later on and as a student would mean carrying sensitive and important knowledge. Therefore it is important that the work done during the master thesis is properly taken care of in a legal context and satisfies all parties connected to the project. Chapter 2

FoilCart Dynamics & Modelling

2.1 The FoilCart

As mentioned previously, the main idea of using hydrofoils is to drastically lower the amount of drag induced by traversing water. The FoilCart is de- signed in such a way that when sufficient velocity is reached going forward, the main hull of the craft is lifted out of the water. This is possible due to the component mounted beneath the main hull (hydrofoil), closely resembling the shape of an aircraft, which generates lift as it is passing through the wa- ter. Drag is of course induced as with all shapes going through a medium, however it is significantly lowered in comparison with the main hull pushing water away (deplacing). Even though the medium is different, being water instead of air, the hydrofoil follows the same basic principles of aerodynamics and aircrafts, it is just a matter of different constants.

The FoilCart’s motion is entirely actuated and controlled from the hydrofoil, meaning that there are no flaps, rudders or sources of thrust connected to the main hull other than the hydrofoil itself. Therefore it is possible to view the entire vehicle as an aircraft in terms of motion control, however unlike regu- lar planes the FoilCart has its center of mass positioned a certain height above its actuators. This introduces some interesting mechanics as it combines an inverted pendulum control problem with that of an motion control. However since the main goal is to balance the vehicle it is best to first ana- lyze the system from an inverted pendulum control perspective and to later on incorporate flight dynamics.

7 8 CHAPTER 2. FOILCART DYNAMICS & MODELLING

2.2 The Inverted Pendulum

2.2.1 Broom on a cart The broom-on-a-cart control problem is a classical one within control theory. A cart representing a certain mass moves along an axis, actuated by a force. On top of the cart is a rod mounted able to rotate around an axis perpendicular to the movement of the cart. The principle is demonstrated in figure 2.1 [22].

Figure 2.1: Figure demonstrating the broom-on-a-cart dynamics.

The challenge is to keep the smaller mass represented by m in an upright po- sition by only using the force F, which also affects the movement of the cart. The system contains two degrees of freedom in terms of movement but only one actuator, thus making it what is known as an underactuated system. Not only is it underactuated but also highly non-linear as it incorporates angular movements which in turn introduces certain constraints for control. However, the system is a relatively simple one in terms of modeling as a result of being of dimension R2.

2.2.2 Spherical pendulum on a cart For the purpose of the thesis some complexity must be added to properly model the FoilCart. A first step is to extend the inverted pendulum on a cart CHAPTER 2. FOILCART DYNAMICS & MODELLING 9

to move on a plane instead of a line and add another rotational freedom, thus making it possible to rotate around the plane axes, i.e spherical motion. These are henceforth referred to as roll around the x-axis (γ) and pitch (β) around the y-axis.

The cart is actuated by two forces acting along the plane axes, Fy and Fx. The smaller mass mounted atop the rod can now move in a three-dimensional space R3, thus keeping the underactuated nature of the system. This would give a closer resemblance to the FoilCart moving in an xy-direction; still a sim- plification but a reasonable suggestion and first step.

Figure 2.2: Figure demonstrating the broom-on-a-cart dynamics on a plane.

However since there are two rotational freedoms the height of the mass m will depend on both angles. This introduces the use of Euler angles to describe the rotation. The principle idea is to rotate a three-dimensional vector by succes- sive rotational matrices, one matrix for each rotation around a certain axis. In this case there are two rotations, first pitch and second roll. 10 CHAPTER 2. FOILCART DYNAMICS & MODELLING

1 0 0  R(γ) = 0 cosγ −sinγ 0 sinγ cosγ

 cosβ 0 sinβ R(β) =  0 1 0  −sinβ 0 cosβ

Rtot = R(γ)R(β)

 cosβ 0 sinβ  Rtot =  sinβsinγ cosγ −sinγcosβ −cosγsinβ sinγ cosγcosβ

The position of the cart is simply defined as a three dimensional coordinate moving in a plane.

T pcart = (x1, y1, z1)

x1 = x y1 = y z1 = 0 (2.1) And the pendulum mass defined as movable in all three directions, however constrained by the cart position due to the link l.

T pmass = (x2, y2, z2)

x2 = x + lsinβ y2 = y − lsinγcosβ z2 = lcosγcosβ (2.2)

2.2.3 Lagrangian mechanics To properly write the equations of motion without missing or erroneously de- fine Coriolis and centripetal effects which are acting in multiple directions, the usage of Euler-Lagrange derivation of dynamic equations is preferred. The general definition of the equation is CHAPTER 2. FOILCART DYNAMICS & MODELLING 11

d δL δL − = 0 (2.3) dt δq˙i δqi where q is the generalized coordinates L is equal to the difference between potential and kinetic energy.

L(qi, q˙i) = T (qi, q˙i) − V (qi) (2.4)

k X 1 2 T = mi||vi|| (2.5) 2 i=1 k X V = mi (2.6) i=1

Through Hamilton’s principle and the Lagrange-d’Alembert principle it is pos- sible to show that the equation holds for external forces, in this case the two actuating forces on the cart.

d δL δL − = Fext(q ˙i, qi) (2.7) dt δq˙i δqi

This gives the four differential equations

d δL δL − = Fx (2.8) dt δx˙ δx d δL δL − = Fy (2.9) dt δy˙ δy d δL δL − = 0 (2.10) dt δγ˙ δγ d δL δL − = 0 (2.11) dt δβ˙ δβ where T is equal to 1 1 T = Mv2 + mv2 (2.12) 2 1 2 2 12 CHAPTER 2. FOILCART DYNAMICS & MODELLING

and V equal to

V = mgz2 (2.13) where g is the gravitational acceleration. The velocities of the cart and pendu- lum are defined as

2 2 2 2 2 2 2 2 v1 =x ˙1 +y ˙1 +z ˙1 → v1 =x ˙ +y ˙ + 0 (2.14) 2 2 2 2 v2 =x ˙2 +y ˙2 +z ˙2 (2.15) ˙ x˙2 =x ˙ + βl cos β ˙ y˙2 =y ˙ − γl˙ cos γ cos β + βl sin γ sin β ˙ z˙2 = −γl˙ sin γ cos β − βl cos γ sin β

2 resulting in the following expression for v2, also the substitution of cosβ → cβ and sinβ → sβ is done to simplify the equation

2 2 2 ˙2 2 2 2 2 ˙ ˙ v2 =x ˙ +y ˙ + β l +γ ˙ l cβ − 2y ˙γlc˙ γcβ + 2βyls˙ γsβ + 2x ˙βlcβ (2.16)

After some calculations the four differential equations look like the following   d δL δL ˙2 ¨ − = Fx → (M + m)¨x − m(β lsβ − βlcβ) = Fx (2.17) dt δx˙ δx d δL δL − = F → (M+m)¨y−m(¨γlc c −βls¨ s −2γ ˙ βlc˙ s −(γ ˙ 2+β˙2)ls s ) = F dt δy˙ δy y γ β β γ γ β γ β y (2.18)   d δL δL ¨ 2 2 2 − = 0 → m(βl +yls ¨ γsβ +xlc ¨ β +γ ˙ l cβsβ + glcγsβ) = 0 (2.19) dt δβ˙ δβ   d δL δL 2 2 ˙ 2 − = 0 → m(¨γl c − ylc¨ γcβ − 2γ ˙ βl cβsβ + glsγcβ) = 0 (2.20) dt δγ˙ δγ β There is no understatement to say that the dynamics complexity increases heavily by introducing two more degrees of freedom in terms of movement, which further suggests that to mathematically model all six degrees would be an enormous task. Not only are the expressions longer but also highly non- linear, adding further difficulties to design control algorithms. CHAPTER 2. FOILCART DYNAMICS & MODELLING 13

2.2.4 Linearization & Decoupling To bypass the difficulty of dealing with non-linear equations, a linearization can be done to approximate the dynamics around a certain equilibrium point. In this case that would correspond to angles and angular velocities {γ, β, γ,˙ β˙} = 0. The trigonometric functions are approximated by their first Taylor expan- sion.

β ≈ 0 ⇒ cosβ ≈ 1 ∧ sinβ ≈ β γ ≈ 0 ⇒ cosγ ≈ 1 ∧ sinγ ≈ γ Rearranging the four differential equations eqs. (2.17) to (2.20)

˙2 ¨ Fx + m(β lsβ − βlcβ) x¨ = (2.21) M + m ¨ ˙ 2 ˙2 Fy + m(¨γlcγcβ − βlsβsγ − 2γ ˙ βlcγsβ − lsγcβ(γ ˙ + β )) y¨ = (2.22) M + m 2 2 −yls¨ γsβ − xlc¨ β − γ˙ l cβsβ − glcγsβ β¨ = (2.23) l2 ˙ 2 ylc¨ γcβ + 2γ ˙ βl cβsβ − glsγcβ γ¨ = 2 2 (2.24) l cβ and linearizing around the equilibrium point while also assuming that angu- lar velocities squared or multiplied with eachother are equal to zero as they themselves will be close to zero renders the equations.

¨ Fx − mβl x¨ = (2.25) M + m Fy + mγl¨ y¨ = (2.26) M + m −x¨ − gβ β¨ = (2.27) l y¨ − gγ γ¨ = (2.28) l

And solving the algebraic system of equations gives 14 CHAPTER 2. FOILCART DYNAMICS & MODELLING

Fx + mgβ x¨ = (2.29) M Fy − mgγ y¨ = (2.30) M −Fx − (M + m)gβ β¨ = (2.31) Ml Fy − (M + m)gγ γ¨ = (2.32) Ml

On a closer look these equations reveal something interesting; around the set equilibrium point the highly non-linear and coupled dynamical system can be simplified into two separate systems, i.e two separate underactuated inverted pendulums.

2.2.5 FoilCart actuation and dynamics Since the previous section provided evidence of the possibility to decouple the spherical inverted pendulum, the dynamics of the FoilCart can also be simpli- fied. In figure 2.3 the roll plane of the craft is shown, also important to observe is the change of coordinate convention which follows the one for aeronautics where the unit vector for z is pointing "downwards".

Figure 2.3: Figure depicting the simplified actuation in the roll plane of the FoilCart. CHAPTER 2. FOILCART DYNAMICS & MODELLING 15

Figure 2.4: Figure depicting the simplified actuation in the pitch plane of the FoilCart.

Observe that the model so far only incorporates balancing mechanics, forces like thrust and drag are left out as they are dealt with in another control loop, the thrust will equal the drag while running thus making the vehicle stay at rest. The forces in the figures figs. 2.3 and 2.4 are lift forces induced by turning the flaps and rudders of the craft, which are located in the bottom part of the mast and in the back of the craft. The actuation around the pitch plane is now considered a regular inverted pendulum which can be actuated directly as the force Fz gives a around the y-axis, this is slightly different from the derivation earlier, however with the use of MATLAB’s linearization tool for Simulink-models the decoupling effect still remains. 16 CHAPTER 2. FOILCART DYNAMICS & MODELLING

Figure 2.5: A comparison between MATLABs linearization tool for Simulink models and the derived mathematically model, the figure is a pole-zero map- ping of the eigenvalues of the state space matrix.

2.3 Wing dynamics

As the FoilCart traverses water it is held up above the waterline by the lift forces generated by it’s wings below. This is achieved by having the wings set a certain angle, also known as angle of attack, to illustrate this a figure is added below [23].

Figure 2.6: Figure depicting some of the dynamics acting upon a moving wing profile. CHAPTER 2. FOILCART DYNAMICS & MODELLING 17

The lift and drag components in the figure 2.7 can be modeled by the formula [24],[25].

1 2 ρv CAwing = F (2.33) 2

Where ρ equals the water density, Awing the wing area, v the velocity of the wing and F the drag or lift force. The constant C is a non-linear constant de- rived from fluid mechanical equations and is usually experimentally defined, there is one for each case CD and CL. In this case these parameters are extracted from XFOIL which is a simulation software for designing and analyzing wing profiles. The chosen profile is called NACA0015 which is a standardized defined by the National Advisory Committee for Aeronautics shown in the figure below [26].

Figure 2.7: Figure showing the profile of a NACA0015-wing.

The lift and drag constants are defined in the x-and z-directions with respect to the wing itself, unlike the figure 2.7 where drag and lift are defined as parallel and perpendicular to the movement direction. This however will simplify the simulation modelling later on. 18 CHAPTER 2. FOILCART DYNAMICS & MODELLING

Figure 2.8: Figure showing the varying lift/drag parameter with respect to angle of attack.

Even though the graphs are non-linear they can be approximated around zero. The lift constant CZ is a regular one degree polynomial with respect to angle of attack and the drag is a second order one. This is true for up til about a 15 degree angle, after that so called stalling is induced which is when the lifting force drops severely due to fluid dynamical effects and seizes to be a linearized model. However since the inverted pendulum needs to stay within a smaller angle in tilt, this issue is avoided. The two polynomials are defined as

2 CX = −0.0018α + 0.003α − 0.0314

CZ = −0.076α where α is equal to the angle-of-attack in degrees. Chapter 3

Control Design

3.1 The plant model

3.1.1 Equations of motion As shown earlier, the entire system can be decoupled into simpler systems and solved separately. To begin with, the roll actuation shown in figure 2.3 is like previously defined through Lagrangian mechanics. Now also adding a rotational inertia Ixx component from the hull as the system cannot really be modelled as a point of mass. The Lagrangian for the roll plane is

1 2 1 2 1 L = mv + Mv + Ixx − Mglcγ (3.1) 2 1 2 2 2 where the velocity of the foil mass v1 and velocity of the hull v2 in the y- direction squared are

2 2 2 2 2 2 v1 =y ˙ v2 = (y ˙ +γlc ˙ γ) + (γls ˙ γ) (3.2)

d δL δL 2 ( ) − = Fy → (M + m)¨y + Mlcγγ¨ − Mlsγγ˙ = Fy (3.3) dt y˙ δy

d δL δL 2 ( ) − = 0 → (Ml + Ixx)¨γ + Mlcγy¨ − Mglsγ = 0 (3.4) dt γ˙ δγ

Using the linearization from earlier for the trigonometric functions and solv- ing the algebraic system of equations renders similar equations to before

19 20 CHAPTER 3. CONTROL DESIGN

Mgl Ml γ¨ = γ − F (Ml)2 2 2 y (3.5) 2 (Ml + Ixx)(M + m) − (Ml) Ml + Ixx − M+m −(Ml)2g y¨ = 2 2 γ + WFy (3.6) (M + m)(Ml + Ixx) − (Ml) 1 (Ml)2 W = + 2 2 2 M + m (M + m) (Ml + Ixx) − (Ml) (M + m)

For the pitch plane the equation is simpler as there is a direct actuation around its angle with a torque defined by Fzr = T where r corresponds to the length of the foil body. This means that this part may be modeled as a regular inverted pendulum.

¨ Mglsinβ + T = Iyyβ (3.7)

As with previous linearization for sine around zero it becomes

Mglβ + Fzr β¨ = (3.8) Iyy

3.2 Control algorithms

The main idea of balancing the system is to control the angles, β and γ. As the decoupling of the system can be done around the equilibrium point as shown earlier, the system is divided into two SISO (single-input-single-output) sys- tems thus making it a relatively simple control task. However the translational movements in the xy-plane which is coupled with the pendulum leaning an- gles could also be of interest as many precious studies have suggested [27]– [29], which may incorporate a cascaded control strategy. But as a first step the control should only focus on the pendulum angles.

The requirements for the controller are less about rising/settling-times and more focused toward being very robust as the probability and range for mod- elling errors are extensive. This stems from the fact that the system is linearized and substantially simplified, both from a mechanical but also fluid dynamical perspective. CHAPTER 3. CONTROL DESIGN 21

3.2.1 PID Since the system is considered as two independent SISO systems a suitable controller could be the classical PID, which is a common strategy for control. The idea behind it is to create a control signal with respect to the error between a wanted reference and an actual value. This makes the control somewhat intuitive to understand and tune but also usually giving good response. De- fined in its parallel form it is a summation of three parameters: the error, its derivative and integral. Z ∞ d u(t) = Kpe(t) + Ki e(t)dt + Kd e(t) (3.9) 0 dt Or as more commonly, in the Laplace domain

Ki Ns U(s) = (Kp + + Kd )E(s) (3.10) s s + N

N An extra factor s+N has been added which acts as a low-pass filter for the derivative part. This is done as to prevent large sudden changes in the con- trol signal as measurement noise may enter the closed loop. It should also be mentioned that the integrating part of the controller may cause unwanted be- haviour as the control signal may saturate and cause the error to be integrated indefinitely above or below zero leading to wind-up effects. The tuning of the parameters are done manually, often studying resulting rise-time and over- shoot as result of pole placement defined by said parameters. It may also be done by studying the resulting sensitivity and complementary sensitivity func- tions which focus on noise rejection and uncertainties in the form of different disturbances and model variations, also known as loop-shaping [30]. However it will be difficult to study the scaling effects as the PID-parameters would be very arbitrarily set and not be determined through a set value much like an optimized controller would, which is why this type of controller should not be considered as a first choice. Leading to the next section which will find the best suited controller under certain constraints.

3.2.2LQ A more modern approach is to use an LQ-based controller which stands for Linear-Quadratic. The idea is to design a full-state feedback controller which is optimized in terms of state changes and control input. This requires that all states are measurable which often is not the case and puts certain constraints 22 CHAPTER 3. CONTROL DESIGN

on systems. In the case that some states are not measurable an observer must be designed, i.e an estimation of what a certain state is. This could also be done in an optimization context, which is then called a Kalman filter [31].

Since an IMU with an internal filtering method will be used to measure an- gular displacements and velocities there is no need for these to be estimated as the sensor produces stable signals with low noise ratios. The question con- cerning robustness also arises if estimation is to be done in combination with an optimized controller, also known as LQG where there have been proofs that there are no guaranteed stability margins for such a setup [32].

The argument for choosing this type of control strategy lies in it’s relative sim- plicity of design but also that the result is the best possible one given certain weights in the process, something that is indeed relevant when analyzing the scaling of the entire system. It also seems to be a common strategy when con- sidering previous studies around inverted pendulums [33]–[37] with promis- ing results.

Given the linear time-invariant system with x(t) ∈ Rn and u(t) ∈ Rm

x˙(t) = Ax(t) + Bu(t)

y(t) = Cx(t) where A ∈ Rn×n, B ∈ Rn×m and C ∈ Rp×n The cost function is defined as Z ∞ T T Jr = (x(t) Qx(t) + u(t) Ru(t))dt (3.11) 0 where the optimal solution, i.e the feedback gain is given by

−1 T Kr = R B X (3.12) and X is the unique positive positive semi-definite solution to the algebraic Riccati equation [31]

AT X + XA − XBR−1BT X + Q = 0 (3.13) where Q and R are weight matrices where Q = QT ≥ 0 and R = RT > 0 CHAPTER 3. CONTROL DESIGN 23

LQR The simplest LQ-controller is just a regulator, also known as LQR. The aim of the controller is only to reject input disturbance and return to the zero state, i.e there is no reference/trajectory following of the controller. For a balancing pur- pose this type of controller seems feasible as the zero state would correspond to the equilibrium state.

LQI Following the steps of the LQR comes the LQI which has additional states added to it’s A-matrix. d x Ax + Bu Ax + Bu = = dt z r − y r − Cx

The state z is added as the error between a reference and output, thus making it into an added integrator, hence the I in LQI. The new augmented state matrix

 A 0 B A = ,B = aug −C 0 aug 0 is used like before to solve the Ricatti equation (3.13). An example of the spe- cific setup is shown in figure 3.1.

Figure 3.1: Figure showing an example of an LQI setup.

By doing this, not only is it possible for the controller to follow a reference, i.e a trajectory but it also increases the performance as can be seen in the figure below 3.2 where the sensitivity for the roll control is lowered immensely. 24 CHAPTER 3. CONTROL DESIGN

Figure 3.2: Figure showing an example of the sensitivity function compared between LQI and LQR.

−1 −1 The sensitivity S defined as S = (I + Kr(sI − A) B) [38] determines the performance of the controller in terms of disturbance rejection and sensitiv- ity toward model uncertainties. By adding an integrating factor in the con- troller, step disturbances and model errors are countered which is signified by the very low gain for lower frequencies in the diagram. For higher frequen- cies though the performance remain more or less the same between the two algorithms, however disturbances in the higher frequency span are seldom ex- pected.

Bryson’s Rule The choosing of weights Q and R is somewhat of an iterative process to find the most suitable setup. A suggested start is to use what is known as Bryson’s rule. Given two diagonal matrices 1 Q(i, i) = 2 i ∈ {1, 2, ..., n1} kxik∞ 1 R(j, j) = 2 j ∈ {1, 2, ..., n2} kujk∞ CHAPTER 3. CONTROL DESIGN 25

where each element is defined as one divided by the square of the infinity norm, i.e the maximum allowed value of a signal. The result would then be equal to one for each term in the cost function.

Z ∞ n1 n2 X 2 X 2 Jr = ( xi (t)Qii + uj (t)Rjj)dt (3.14) 0 n=i n=j

This way all state and control signals can be scaled properly to each other and depend on what the maximum allowed value is. For the purpose of this thesis this will be very useful when considering scaling effects.

Concerning the maximum allowed control effort it is relatively simple to de- fine. Since the linear model of the wings’ lifting force seizes to be linear at around a 15 degrees angle of attack the maximum lifting force, i.e control ef- fort should be the amount given at this angle with a few degrees margin. Since the rudder and flap are of equal size in the model they will have the same weight.The lift constant is, as mentioned previously dependent on angle of at- ◦ tack given in Wing Dynamics-section, Cx(α), where α = 12 , giving a margin of 3 degrees. 1 R(1, 1) = R(2, 2) = 1 2 2 (3.15) ( 2 ρwaterAwingCx(12)v )

Concerning the state weights Q, the importance will lie on the specific angles and not their respective velocities. For now at least, it is not important to con- strain turning rate as long as the correct angle is reached. Working on the same principle as the control effort, the angles must not reach non-linear areas and should remain below the magnitude of 15 degrees with some margin, thus giv- ing the following 1 Q(1, 1) = Q(2, 2) = π 2 (3.16) (12 · 180 )

The velocity states are weighted to zero as they are not of the same importance.

Q(3, 3) = Q(4, 4) = 0 (3.17)

For the augmented configuration for an LQI controller there are two more weights in the Q-matrix. These correspond to the integral of the error between 26 CHAPTER 3. CONTROL DESIGN

the reference and angle state. These are not defined through Bryson’s rule as it is difficult to determine a maximum allowed value for an integral. Therefore it is arbitrarily set to 100 after a few iterations of model simulations. In the end the Q-matrix will be the same for both sizes of crafts and only the R-matrix will vary thus providing some scaling effects.

3.3 Controller choice

Both LQ-control and PID have been presented as suitable methods of control- ling the angles of the system, but which one is actually more suitable than the other? One important aspect is robustness, which could be expressed as the sensitivity function S being as small as possible in magnitude over as wide frequency span as possible. This in turn would mean that the complementary sensitivity function T would be pushed to amplify higher frequencies of refer- ence signals but also measurement noise. This is due to the inherent nature of a feedback system where S + T = 1.

To further investigate this, the angular control of the larger craft in the roll plane, i.e the pendulum-on-a-cart model is used. For the PID-control the trans- fer function between the actuator force and angle output is used as plant for the loop design while the states of the angle, position and velocity are used for the LQ-control. The PID is designed with loop shaping in MATLAB’s applica- tion PID-Tuner.

Figure 3.3: MATLAB’s application PID-tuner which is used to find a suitable controller for the plant. CHAPTER 3. CONTROL DESIGN 27

In the figure above 3.3, a suitable controller is designed with peak of function T or the closed loop function of 2.17 dB which results in a relatively small overshoot. A bandwidth of around 100 rad/s and a margin phase of 60 degrees should provide sufficient stability and robustness.

Bode Diagram 20 T (PID) S (PID) T (LQR) 0 S (LQR)

-20

-40 Magnitude (dB) -60

-80

-100 -1 0 1 2 3 4 5 10 10 10 Frequency10 (rad/s) 10 10 10

Figure 3.4: A comparison between an LQR controller and the PID designed in previous figure.

The figure above where the LQR designed from the weighting criteria in pre- vious chapter and the PID mentioned in previous paragraph are compared in sensitivity and complementary sensitivity. The PID seem to give better per- formance with a higher bandwidth on the closed loop or T-function and good attenuation of disturbances for lower frequencies in S. However when inspect- ing where the closed loop poles end up in the system something interesting turns up.

Closed loop pole locations PID -956, -85, -18, -11 LQR -30±24i

Table 3.1: A comparison between an LQR controller and the PID in the pole- zero plane when control loop is closed.

One of the closed loop poles for the PID controller ends up far away in the left-half plane meaning that to properly capture the dynamics of the system 28 CHAPTER 3. CONTROL DESIGN

when discretizing, the sampling rate should be at least 10 times as fast as the fastest pole. This means that if this PID-controller is going to be used properly it puts immense requirements on the hardware.

Figure 3.5: MATLAB’s application PID-tuner which is used to find a suitable controller for the plant.

Trying to reiterate the previous step by lowering the phase margin seemed to change this significantly, lowering the bandwidth did only increase the peak of the T-function which would cause bigger overshoots which is rather bad for a linearized system. With a phase margin of 35 degrees instead the following pole-zero comparison could be made in table 3.2.

Closed loop pole locations PID -73±101, -19, -13 LQR -30±24i

Table 3.2: A comparison between an LQR controller and the PID in the pole- zero plane when control loop is closed.

The poles of the closed loop with the PID-controller are now more reasonably placed. But instead a new problem has come up, since the phase margin was lowered, meaning that the system would be less robust, the sensitivity function reaches a higher peak magnitude. CHAPTER 3. CONTROL DESIGN 29

Bode Diagram 10

0

-10

-20

-30

Magnitude (dB) -40

-50 S (PID) S (LQR) -60 -1 0 1 2 3 10 10 Frequency10 (rad/s) 10 10

Figure 3.6: A comparison on sensitivity between an LQR controller and the PID with changed parameters.

While the LQR never goes above 0 dB in magnitude the PID peaks at 3.75 dB. This introduces the tedious task of trying to find a PID-controller which is rea- sonably robust but also realizable in terms of hardware with reasonable sam- pling rate. This argues that the LQ-based controller should be used, not only would it be more feasible in a scaling context as mentioned earlier but also re- sults in good performance when studying the sensitivity and complementary sensitivity functions. Also including an integrating element into the controller as shown in the LQI example in previous section further attenuates lower fre- quencies in the sensitivity function. A table is displayed below showing the pros and cons of the different controllers to summarize this section. 30 CHAPTER 3. CONTROL DESIGN

LQ PID Pros Cons Pros Cons Finds the optimal Somewhat abstract Function is rather May give sensitivity solution given certain definition which isn’t straight forward and peaks constraints very intuitive intuitive Not inherently Seems to keep Controller tuning is Tuning is intuitive optimized the magnitude of not very intuitive the sensitivity below 1 Often very robust In this case Needing all states poles end up far Seems to place to be measured in LHP for wanted poles within to ensure robustness performance reachable bounds for hardware

Table 3.3: The table lists some different pros and cons with two types of con- trollers.

Based on this the choice ended up being the LQ-approach since all states are possible to measure and could work well when looking at scaling dynamics. This also coupled with the fact when studying previous work on inverted pen- dulums the LQ-control seems to perform better in general [36], [37].

3.4 State space representation

With the aim of using full-state feedback in the form of a linear-quadratic con- troller the system is presented in a state-space representation. x˙(t) = Ax(t) + Bu(t) y(t) = Cx(t) where T x(t) = γ β γ˙ β˙ F  u(t) = y Fz  0 0 1 0  0 0   0 0 0 1  0 0  A =  Mgl  B =  −Ml  (3.18)  2 2 0 0 0   Ml2+I −( M l ) (M+m)(Ml2+I )−(Ml)2 0  xx M+m   xx  0 Mgl 0 0 0 r Iyy Iyy CHAPTER 3. CONTROL DESIGN 31

3.4.1 Controllability The criterion for controllability is that the rank of the controllability matrix is equal to the number of states in the representation.

C = B AB A2B...An−1B where n is the number of states [39]. In the case where the angles are observed and controlled, i.e a 4x4 matrix this criterion holds. The controllability ma- trix is calculated with MATLAB’s ctrb()-command and rank is found by it’s rank()-command. This also holds when states are added in the case of the LQI- controller where a reference must be followed. Adding two more states which represent the integration of the error between the angles and their respective references gives a 6x6 A-matrix and the following controllability matrix rank is 6.

However an interesting dynamic arises when more states are observed, let’s say for example that the translational movement in the y-direction is to be added to the state-space. This is done as a way to not only keep the balance but also stand still which previous studies have demonstrated [27], [29], [40]. In the case of only using the regulator setup, i.e to only follow a zero-reference, the controllability matrix rank is 6 which is the same as the states observed.

T x(t) = γ β y γ˙ β˙ y˙ The focus of course lies on the balancing part of the inverted pendulum prob- lem, however since the aim is to have a functioning vehicle in the later stages of the FoilCart project the question around trajectory comes up. Since the hy- drofoil will act similar to an aircraft it is important to be able to set angle ref- erences. Hence the need for the previously suggested augmented state-space matrix which integrates the error. The 6x6 matrix gets two new states as be- fore, pitch and roll error, thus making it into a 8x8 matrix. A problem arises then as the controllability matrix only has rank 7 which is less than the number of states. The system becomes uncontrollable.

The reason behind this is that the states of the y-direction cannot be controlled independently from the roll angle states and vice-versa, this comes from the fact that only one force actuates to control them both. The conclusion then is to only care about the angle in an inner balancing loop and move the trans- lational movement to an outer loop. This seems to be a viable strategy when considering previous studies [27], [29], [40]. 32 CHAPTER 3. CONTROL DESIGN

3.5 Cascaded control

Continuing from the previous section, an inner balancing loop will control the roll and pitch angles and omit the translational movements due to dynamical constraints. Movement in the x-direction will mainly be affected by the thrust provided by the , also acting as a disturbance on the pitch angle. The y-direction will incorporate a controller in a cascaded fashion where the inner loop of the roll balancing will follow a reference provided by an outer loop controlling the translational velocity.

Figure 3.7: Figure displaying the suggested cascaded setup for control.

This means that the transfer function between y˙ and γ is needed to find a suit- able controller. The equation of motion derived earlier (3.4) gives the following relation after linearization around the equilibirum.

2 Mglγ − (Ml + Ixx)¨γ y¨ = (3.19) Ml The equation becomes after a Laplace transform

2 2 Mgl − s (Ml + Ixx) s2Y = Γ (3.20) Ml Giving the transfer function between y˙ and γ

2 2 sY Mgl − (Ml + Ixx)s = (3.21) Γ Mls This in itself is a problem since the transfer function is non-causal by the fact that there are more zeroes than poles. To bypass this issue a first-order low pass filter may be added to the velocity input as to provide another pole. Since the CHAPTER 3. CONTROL DESIGN 33

outer movement is expected to be rather slow the low-pass filter itself can be assumed to be slow as well, thus is s = 10 suggested for this implementation.

2 2 sY λ Mgl − (Ml + Ixx)s λ · = · (3.22) Γ s + λ Mls s + λ

Therefore the transfer function G2 is on the form

αs2 + η ζs2 + σs A suggested controller is a low-pass filtered PID on the parallel form

Ki Kds C2 = Kp + + s Tf s + 1

Therefore will the pole positions of the closed loop G2C2/(1+G2C2) be defined by

4 3 (αTf Kp + Kdα + ζTf )s + (Kpα + KiTf α + ζ + σTf )s 2 + (Kiα + Tf Kpη + Kdη + σ)s + (Kpη + KiTf η)s + Kiη = 0 (3.23)

th A 4 -order polynomial with four constants Kp,Ki,Kd and Tf makes it into a solvable Diophantine equation. However instead of placing poles by solving this equation it can instead be done by MATLAB’s application PID-tuner to manually tune the closed loop response, an example is shown in figure 3.8. 34 CHAPTER 3. CONTROL DESIGN

Figure 3.8: Figure displaying MATLAB’s application PID-tuner.

Provided the response being much slower than the inner balancing loop, i.e that the outer loop poles are closer to the origin than the inner loop poles, it is possible to provide and control a trajectory of the vehicle. Also since the translational velocity in the y-direction will be measured with a GPS which has a relatively slow sampling rate this setup seem the most viable. Chapter 4

Simulation verification

4.1 Simulink modelling

The main tool for investigating the dynamics in this thesis is the Simscape Multibody library located within Simulink. A simplified model has been de- signed to approximate the behaviour of the actual FoilCart prototype where previously mentioned estimations of drag and lift forces have been added. The model is displayed in figure 4.1

Figure 4.1: Figure showing a simplified FoilCart model designed in Simulink (Simscape Multibody).

35 36 CHAPTER 4. SIMULATION VERIFICATION

The main components are mostly made up of the NACA-profile mentioned earlier in the Wing Dynamics-section, making up the front and back wings as well as the rudder. This is done for the sake of simplicity but it is of course possible to further explore different possible profiles for each area. The spe- cific size of the wings can be changed, as long as the ratio between length and width remains the same as this has an impact on fluid dynamic parameters. The wings are also assumed to be of very light weight as they are made of carbon-fiber based material.

The ellipsoid mounted on the foil is an estimation of the inertia of the main hull and its contents. Since most of the weight will be centered around a point above the mast/rudder like batteries, electronics and a payload this would be an arbitrary guess to how it all would be placed. The hull itself is bigger but also made of a lightweight material thus having a somewhat small impact on the overall inertia. However the estimation should be taken into consideration when designing the control system as a model uncertainty.The controller setup mentioned in previous chapter looks like the following in Simulink.

Figure 4.2: Figure showing the controller setup designed in Simulink. CHAPTER 4. SIMULATION VERIFICATION 37

Figure 4.3: Figure showing the Simscape Multibody setup for the model.

4.1.1 Disturbance modelling The external disturbances acting on the craft are expected to be many. Wind and wave movements induce forces upon the foils which are difficult to model properly which further motivates the goal to focus on robustness toward model uncertainties. The dynamics surrounding wave motion in water are too com- plicated to be included in the scope of this thesis but could very well be part of the suggested future work. The wind though could be simplified into a flow perpendicular to the forward movement of the FoilCart. 38 CHAPTER 4. SIMULATION VERIFICATION

Figure 4.4: Figure showing the Simscape model with the suggested distur- bance model.

The wind flows toward a flat surface mounted in said forward direction, em- ulating the entire side of the main hull of the craft. With the equation (2.33) a side wind can therefore be modelled to hit the craft with varying strength by changing the wind velocity. Having the wind as a disturbance is a fitting way to include the scaling effects as the hull area will affect how much force is induced. The suggested model is to use two types of disturbances, step and impulse which would correspond to a constant blowing wind and a stronger gust of wind. The suggested wind velocities are 8 m/s step and 12 m/s impulse hitting an area of 1.5 m2 (3 · 0.5m) for the large craft and 0.375 m2 (1.5 · 0.25m) for the small craft.

This gives an impulse of 2 seconds and a step force of 320 and 140 N respec- tively for the large craft; the smaller one 80 and 35 N. The choices made here are of course rather arbitrary but work as a gauging mechanism to provide an idea of what magnitude of forces are allowed as disturbances. It is also only pushing the craft to the side and not factoring in that the majority of the hull is going to be in front of the center of mass, thus inducing a yaw motion. Since that type of motion is not included in this model it remains to be further inves- tigated, however that will probably be controlled by individually steering the propellers and not the control surfaces of the craft to counter this effect. CHAPTER 4. SIMULATION VERIFICATION 39

4.2 Test cases

The modelling has consisted of many phases where multiple models have been designed and tested. To present this structure a couple of cases have been se- lected to demonstrate the overall work progress. The resulting parameters for the controllers are presented in the table below.PID-parameters for the outer loop controller, controller form as defined in (3.10).

PID parameter Kp Ki Kd N Large 0.0416 0.00345 -0.0266 0.639 Small 0.0438 0.00374 -0.0178 0.408

Table 4.1: Large LQR Gain-vector

K-vector element γ β γ˙ β˙ F_y -8614 0 -287 0 F_x 0 8604 0 594

Table 4.2: Small LQR Gain-vector

K-vector element γ β γ˙ β˙ F_y -1896 0 -31 0 F_x 0 1895 0 62

Table 4.3: Large LQI Gain-vector ˙ K-element γ β γ˙ β γint βint F_y -9197 0 -296 0 14592 0 F_x 0 9802 0 634 14592 0

Table 4.4: Small LQI Gain-vector ˙ K-element γ β γ˙ β γint βint F_y -1961 0 -32 0 3648 0 F_x 0 2023 0 64 0 -3648 40 CHAPTER 4. SIMULATION VERIFICATION

4.2.1 Case 1 The most simple case consist of the previously presented model created in Simulink 4.1. The cart moves in the xy-plane and may rotate around these axes as well, the z-direction is locked and it is assumed that sufficient lift is generated by the main front wings, meaning that they will have a static angle of attack corresponding to this lifting force which also will induce some drag. The actuating forces are the ones presented in figures 2.3 and 2.4, i.e no turn- ing of wings themselves to generate forces. The case is then split up into two sub-cases.

Figure 4.5: Figure showing the Simscape Multibody setup for the model in a simplified version for Case 1. CHAPTER 4. SIMULATION VERIFICATION 41

Figure 4.6: Figure showing the forces acting on the simplified version of the model.

1.1 Sub-case The focus is the balancing, i.e translational movement is not controlled. There will only be an external force acting as thrust from the propellers mounted on the front wings as well as side wind and gusts. A figure demonstrating the controller is shown in figure 4.7

Figure 4.7: Figure showing the controller setup designed in Simulink. 42 CHAPTER 4. SIMULATION VERIFICATION

1.2 Sub-case The translational movement in the y-direction is controlled by previously pre- sented cascaded setup but the thrust from the propellers remain fixed. Distur- bances like side wind and gusts are included.

4.2.2 Case 2 Built on the previous case the model is now augmented with turnable wings. Instead of having direct forces acting on the system as described in figures 2.3 and 2.4 they will now be induced by turning the wings to get a certain angle of attack.This will not only create lifting forces but also induce more drag on the vehicle. This also includes a slight delay as the turn will not be made instantly which is physically impossible, but instead a short transition as to emulate a servo. The emulation itself acts as a low-pass filter with a suggested rise-time of 100 ms.

Figure 4.8: Figure showing the more advanced version of the Simscape model.

Servos are usually velocity-controlled and turn with the same speed no matter the control error size, thus not really correspond to a proper low-pass filter where the target is reached within the same time-spans. An arbitrary RC-servo CHAPTER 4. SIMULATION VERIFICATION 43

turns at a rate of 60 degrees in around 200-300 milliseconds [41]; as the control surfaces of the craft are not moving beyond a quarter of that amount it would therefore reach it’s target in less than 50-75 ms. Then if the assumption that all angle references are reached in 100 ms by using a low-pass filter it can be seen as the worst-case scenario of turning rates.

Figure 4.9: Servo step response, it takes approximately 100 ms for the servo to reach it’s target.

2.1 Sub-case Closely resembling 1.1 as no translational movement is controlled except the thrust force, the main goal is to control the pitch and roll angles. The thrust is now extended to use a PID-controller to adjust to certain drag and keep a specific speed, it will start at 6 m/s with a reference of 8 m/s. The controller is created by MATLAB’s PID-tuner function in Simulink. The external wind disturbances remain like the previous cases. 44 CHAPTER 4. SIMULATION VERIFICATION

Figure 4.10: Figure showing the thrust controller in the Simulink model.

2.2 Sub-case Same as with 1.2 but with the augmented model, the translational movement is controlled with the cascaded setup and thrust is controlled with a PID- controller. The external wind disturbances remain like the previous cases.

4.2.3 Case 3 Extending the model further by adding another degree of freedom, movement in the z-direction. The vehicle may now move in all translational directions and rotate around x- and y-directions. To control the height a low-pass filtered error feedback PID is implemented in a cascaded fashion to give a reference to the pitch control in the inner loop. Due to scope limitations this is not par- ticularly investigated in terms of mathematical definitions and control analy- sis. Instead this serves as more of a proof-of-concept of the model. A fitting PID controller is defined through the auto-tuning function of PID-blocks in Simulink. CHAPTER 4. SIMULATION VERIFICATION 45

Figure 4.11: Figure showing the setup of the controller with auto-tuned PID blocks for a 5-DOF system.

Also added to the system is an enhancement of the translation between actu- ating force from flap and rudder to their respective angle. Previously it was simply a gain F = α 1 2 (4.1) 2 ρv ACL where velocity was set at 8 m/s. The change here is to break out the velocity and actually measure it and then use its square as parameter.

Figure 4.12: Figure showing the Simulink setup for enhancing the actuator angles. 46 CHAPTER 4. SIMULATION VERIFICATION

This will then mean that for lower velocities the angle is going to be bigger to provide the actual requested force.

4.3 System Scaling

As being an objective for the thesis, the scaling dynamics must be included in the model. To attack this problem the model has been built in two sizes, one corresponding to the actual prototype which has been built in the lab and one which has been scaled down to half it’s size. This means that all parameters in figure 4.1 have been halved, as well as the ellipsoid radii and hull side area, however the bigger change is that the overall weight has been scaled down by a factor of 10 as the required smaller prototype must be light-weight and easy to handle from a user perspective; carrying and moving an autonomous craft should be a simple task.

4.3.1 Parameters A table is presented below with the approximate parameters that follow the physical prototype of the FoilCart. These are later on referred to as the Large- model which will be used to study scaling dynamics.

Parameter Large Small Hull mass, M [kg] 150 15 2 Hull inertia x-axis, Ixx [kgm ] 3.9 0.1 2 Hull inertia y-axis, Iyy [kgm ] 20.5 0.56 Foilbody mass, m [kg] 0.85 0.1 Frontwing length [m] 0.5 0.25 Backwing length [m] 0.5 0.25 Foilbody length, r [m] 1 0.5 Rudder wing length [m] 0.5 0.25 Rudder height, l [m] 1 0.5 3 Water density, ρwater [kg/m ] 1000 ——- Air density, ρair[kg/m^3$] 1.225 ——-

Looking back at the inverted pendulum definition presented in chapter 2 Sys- tem Dynamics & Modelling and it’s following transfer functions and state space representations, the open loop system have the following poles for angular control. CHAPTER 4. SIMULATION VERIFICATION 47

Craft Poles Freq. (rad/s) Large -2.05, -2.05, -14.4±11.76i, -30.02±24.31i 2.05, 18.6, 38.6 Small -2.09, -2.09 ,-30.76±28.31i, -61.10±56.14i 2.09, 41.8, 83

The smaller model has its right half-plane poles further to the right, indicating that it expresses a faster physical response; this is perfectly reasonable as a smaller pen falls quicker than a long stick. This in turn means that a higher bandwidth of the closed loop system is needed to provide sufficient stability. Chapter 5

Results

The main idea of the results is to study how different scales of the model be- have and get an estimate of how sensitive it is to certain disturbances. It is also interesting to study certain coupling effects between variables, how much is roll and pitch affected by eachother as they are controlled separately? As the LQ-approach has been chosen as balancing angle controller it remains to see how well an LQR and an LQI behaves and wheter they are suitable algorithms for this purpose. The results will be presented as a work progress throughout the thesis project where increasing complexity is added to the model to get closer to the actual physical world.

As mentioned earlier, due to scope limitations the third case incorporates lin- earizations done by MATLAB as means of finding suitable controllers for al- titude control; this is more of a way to show a proof-of-concept instead of a deeper dynamic analysis.

48 CHAPTER 5. RESULTS 49

5.1 Cases

5.1.1 Case 1

1.1 Large

Figure 5.1: Comparison between LQ- Figure 5.2: Comparison between LQ- controllers in pitch angle response for controllers in roll angle response for an impulse disturbance on the large an impulse disturbance on the large craft. craft.

Figure 5.3: Comparison between LQ- Figure 5.4: Comparison between LQ- controllers in translational motion in controllers in pitch angle response for y-direction for an impulse distur- a step disturbance on the large craft. bance on the large craft. 50 CHAPTER 5. RESULTS

The results in this case suggest that the LQI has a better response remaining stable while the LQR does not. This might stem from the earlier discussion on the resulting sensitivity function where the LQI lowers the sensitivity exceed- ingly for lower frequencies. In figs. 5.1 to 5.3 can the behavior of an impulse disturbance be seen. The LQI controller seems to be able to stay upright as the roll and pitch angles go toward zero while the LQR experiences instability by showing an unstable increase of angular output of 2.4 degrees per second and increasing in figure 5.2. However for step disturbances neither control al- gorithm can stay upright, an example of the response is shown for the pitch response in figure 5.4. Also the translational velocity in the y-direction is not returning to zero as it is not controlled in this case which can be seen in figure 5.3 where it reaches a steady state velocity of 5.1 m/s. The principal conclu- sion from this is that the LQR control algorithm should be rejected as a feasible option and that the LQI should be used in the later cases.

1.1 Small The smaller craft seemed to be much more sensitive to disturbances in terms of magnitude, the first suggested scaling by dividing the hull size in half, i.e 1.5 meters long and 0.25 meters high induced too much force acting on the hull. Making the hull somewhat shorter, 1 meter instead of 1.5 seemed to produce satisfying results. However this gives rather small disturbance magnitudes of 53 respectively 23.5 N in impulse and step.

Figure 5.5: Comparison between LQ- Figure 5.6: Comparison between LQ- controllers in pitch angle response for controllers in roll angle response for an impulse disturbance. an impulse disturbance. CHAPTER 5. RESULTS 51

Figure 5.7: Comparison between LQ- Figure 5.8: Comparison between LQ- controllers in translational motion in controllers in pitch angle response for y-direction for an impulse distur- a step disturbance on the small craft. bance on the small craft.

The results show the same pattern as for the large craft in figs. 5.5 to 5.7 for which the LQR controller doesn’t provide stability; an even higher change of roll angle at 4.8 degrees per second and increasing for the LQR. Also that nei- ther controller can handle a step disturbance which is displayed in figure 5.8. The sideways motion of the LQI reaches a steady state velocity of 9.2 m/s which is a rather high number suggesting that the drag modeling may have too little impact on the motion.

The conclusion here is that the LQR should be discarded as a feasible algo- rithm for the smaller craft as well but also suggest that translational movement in the y-direction may be controlled for improved performance. 52 CHAPTER 5. RESULTS

1.2 Large with LQI

Figure 5.9: Angle response in pitch Figure 5.10: Angle response in pitch and roll for impulse disturbance on and roll for step disturbance on large large craft. craft.

Figure 5.11: Motion response in y- Figure 5.12: Motion response in direction for impulse disturbance on y-direction for step disturbance on large craft. large craft.

The results in this case show satisfying results as an outer loop controlling the translational velocity is implemented which can be seen in the response in figs. 5.11 and 5.12. A relatively fast response for angle correction is shown in figs. 5.9 and 5.10 finding a settling time of around 10 seconds, reaching a peak angle output of -9.6 degrees for impulse and -5.4 degrees for step. There is a rather slow response for velocity in y-direction however as displayed in figure CHAPTER 5. RESULTS 53

5.12 for a step disturbance taking around 45 seconds to settle. For the impulse one in figure 5.11 it has similar settling time to its roll angle of 10 seconds and peaking at 4 meters per second. Also when comparing to the previous angle response in figure 5.2 there is first a negative tilt almost five times as much than before.

1.2 Small with LQI

Figure 5.13: Angle response in pitch Figure 5.14: Angle response in pitch and roll for impulse disturbance on and roll for step disturbance on small small craft. craft.

Figure 5.15: Motion response in y- Figure 5.16: Motion response in direction for impulse disturbance on y-direction for step disturbance on small craft. small craft. 54 CHAPTER 5. RESULTS

For the smaller model of the craft the same pattern of behavior as the large one is shown in figs. 5.13 to 5.16. There is a larger negative tilt in roll before reaching stability measuring around 2.5 times the previous result in 5.6. A higher translational velocity is reached at 5.9 meters per second for the impulse and 2.6 for the step, which is lower than before thus supporting the idea of using an other loop to control this motion.

5.1.2 Case 2

2.1 Large with LQI

Figure 5.17: Angle response in pitch Figure 5.18: Angle response in pitch and roll for impulse disturbance on and roll for step disturbance on large large craft. craft. CHAPTER 5. RESULTS 55

Figure 5.19: Control output for im- Figure 5.20: Motion response in y- pulse disturbance on large craft. direction for impulse disturbance on large craft.

Adding complexity to the model has resulted in some coupling effects which can be seen in for example figs. 5.17 and 5.19. The pitch angle is slightly af- fected by the side-wind disturbance in figure 5.17 at T=6 seconds as is the flap control output shown in figure 5.19, peaking at 0.08 degrees and 0.23 degrees respectively while roll and its rudder control output at 2.1 and 6.5 degrees, thus showing that the coupling is relatively small and the suggestion to view pitch and roll as completely separate entities is still valid. This suggests that robustness is not largely affected when adding dimensions to the inverted pen- dulum problem and moving about the equilibrium point.

The same behaviour of translational motion remain as before, without it being controlled the craft remains in motion drifting in the y-direction at 4.9 meters per second as shown in figure 5.20. Also the step disturbance causes the sys- tem to become unstable as shown in figure 5.18 where both roll and pitch angle change several hundred degrees in less than two seconds and increasing. 56 CHAPTER 5. RESULTS

2.1 Small with LQI

Figure 5.21: Angle response in pitch Figure 5.22: Motion response in y- and roll for impulse disturbance on direction for impulse disturbance on small craft. small craft.

For the smaller model not even a minor impulse disturbance can be handled by the system without the craft falling over as shown in figs. 5.21 and 5.22. After 6 seconds the craft is hit with a gust of wind over 2 seconds and both angle and translational motion are accelerated out of stability. This might suggest that only using the inner angle controller only for the smaller craft will be impossible. Since not even the impulse could be handled the step did not either CHAPTER 5. RESULTS 57

2.2 Large with LQI

Figure 5.23: Angle response in pitch Figure 5.24: Angle response in pitch and roll for impulse disturbance on and roll for step disturbance on large large craft. craft.

Figure 5.25: Motion response in y- Figure 5.26: Motion response in direction for impulse disturbance on y-direction for step disturbance on large craft. large craft. 58 CHAPTER 5. RESULTS

Figure 5.27: Control output for im- Figure 5.28: Control output for step pulse disturbance on large craft. disturbance on large craft.

As before in previous cases, adding an outer loop controlling translational mo- tion in the y-direction brings more stability. The roll tilting is increased in the response but in return the craft doesn’t drift sideways as can be seen in figs. 5.25 and 5.26 where the motion in the y-direction goes to zero after reach- ing a peak of 4.2 and 2.3 meters per second respectively. It reaches a peak roll angle of -10 degrees after being disturbed at T=6s, while its coupling effect on pitch remains very small only reaching a peak of 0.05 degrees which is shown in figure 5.23. For the step shown in figure 5.24 no discernible coupling effect may be observed between roll and pitch thus suggesting that for disturbances in smaller magnitude the systems are almost completely decoupled.

The flap and rudder angles are also within reasonable values in figs. 5.27 and 5.28 not going over 12 degrees where some non-linear effects may arise. A slight coupling effect may be observed in 5.27 as the rudder reaches 4.6 degrees while the flap 0.3 degrees shortly after the impulse disturbance at T=6 seconds. As with the angular response the coupling for step on the control output there is nothing to be observed in figure 5.28. CHAPTER 5. RESULTS 59

2.2 Small with LQI

Figure 5.29: Angle response in pitch Figure 5.30: Angle response in pitch and roll for impulse disturbance on and roll for step disturbance on small small craft. craft.

Figure 5.31: Motion response in y- Figure 5.32: Motion response in direction for impulse disturbance on y-direction for step disturbance on small craft. small craft. 60 CHAPTER 5. RESULTS

Figure 5.33: Control output for im- Figure 5.34: Control output for step pulse disturbance on small craft. disturbance on small craft.

To suggest that these results show a stable performance is questionable. At T=6 seconds the system is disturbed by both impulse and step. The angular response in figure 5.29 shows strange behavior as it seems to be stable at the peaking point at -19.3 degrees around T=9 seconds but 4 seconds later starts oscillating heavily reaching amplitudes of almost 14 degrees. After it seems to stabilize just until it again starts to oscillate heavily in an amplitude of almost 15 degrees and never stops. This is also expressed in the translational side mo- tion in figure 5.31 where it oscillates in amplitudes between 9-10 meters per second at T=12 seconds and T=29 seconds. The effect is somewhat lesser for the step disturbance as seen in figs. 5.30 and 5.32. The amplitude of the oscilla- tion reaches 10 degrees in amplitude for the roll angle response while reaching 7 meters per second in amplitude.

The biggest difference is of course that the system reaches a steady state af- ter the oscillations as after T=10 seconds the roll angle stays at 15 degrees and slowly move toward no sideways motion. This suggests that smaller distur- bances may be handled by the system but show a rather sensitive and close to unstable predisposition. The control output for impulse in figure 5.33 show the control signal hitting the saturation limit at 12 degrees after T=29 seconds which probably is why the system never completely stabilizes as this doesn’t happen for the step disturbance case.

The strong oscillating behaviour shown in figs. 5.29 to 5.34 is probably caused by the servo emulation where there is a delay of 100 ms. For a control loop running at more than 131.2 Hz for a satisfying performance it isn’t strange that CHAPTER 5. RESULTS 61

it has a strong effect on the system. The assumption that the servo always reaches it’s target in 100 ms is a rather harsh one to make and could maybe be lessened. Instead say that it is 50 ms which is still within reasonable bounds and test to see the results. The conclusion here is that there would be higher requirements for the actuators used in a smaller craft.

2.2 Small with LQI and faster servos

Figure 5.35: Angle response in pitch Figure 5.36: Angle response in pitch and roll for impulse disturbance on and roll for step disturbance on small small craft with quicker servo move- craft with quicker servo movement. ment. 62 CHAPTER 5. RESULTS

Figure 5.37: Motion response in y- Figure 5.38: Motion response in direction for impulse disturbance on y-direction for step disturbance on small craft with quicker servo move- small craft with quicker servo move- ment. ment.

Control output Case 2.2 Impulse

Flap 2 Rudder 0

-2

-4

-6

Angle (degrees) -8

-10

-12 10 20 30 40 50 Time (s)

Figure 5.39: Control output for im- Figure 5.40: Control output for pulse disturbance on small craft with step disturbance on small craft with quicker servo movement. quicker servo movement.

The results here show much more stable performance. By assuming that the servos are acting faster than before the delay doesn’t seem to affect the re- sponses in any particular manner.The control output is saturated at 12 degrees for a short moment in figure 5.39 but doesn’t seem to destabilize the system as before. As mentioned previously after 12 degrees with some margin there are non-linear dynamics which may affect the results severely which is why this saturation is implemented. Results remain similar to previous ones for CHAPTER 5. RESULTS 63

sideways motion in the y-direction as shown in figs. 5.37 and 5.38 where the step disturbance results in a very slow response while the impulse one is a bit quicker. The angular response for the impulse in figure 5.35 reaches -19 de- grees in roll which is a rather big one considering the error for the dynamics increases as it strays from the equilibrium point, any way it remains stable. The coupling effect however seems to be very small in comparison as the peak of the pitch is only 0.3 degrees at T=8 seconds. For the step disturbance, as pre- viously, no coupling effect may be observed although the steady state leaning angle shown in figure 5.36 stays at -14.7 degrees which could make the system much less robust as it is rather far from the equilibrium point, i.e further dis- turbances with such a big modeling error may cause instabilities.

One could re-tune the inner balancing loop to run at a lower frequency as means to avoid oscillations but as the weights for the controller are constrained by Bryson’s rule in this case it instead puts higher requirements on the hard- ware.

5.1.3 Case 3

Large

Figure 5.41: Angle response for im- Figure 5.42: Angle response for step pulse disturbance on large craft. disturbance on large craft. 64 CHAPTER 5. RESULTS

Figure 5.43: Control output for im- Figure 5.44: Control output for step pulse disturbance on large craft. disturbance on large craft.

Figure 5.45: Altitude response for im- Figure 5.46: Altitude response for pulse on large craft. Observe that the step on large craft. Observe that the z-axis is inverted and positive values z-axis is inverted and positive values are "pointed downward". are "pointed downward".

Continuing on with the third case which incorporates movement vertical move- ment along the z-axis it seems to follow previous pattern of behavior. The an- gle response for the impulse case in figure 5.41 reaches -9.4 degrees as peak which is slightly less than for its corresponding result in case 2.2. The coupling effect remains small as well with pitch angle reaching 0.36 degrees which also does not stray far from its previous result in case 2.2. Concerning the pitch control signal it can be observed in both figs. 5.43 and 5.44 that a rather big change happens in the beginning of the simulation with a negative peak of - 9 degrees. This is to be expected as the system needs to find an equilibrium CHAPTER 5. RESULTS 65

point where it doesn’t lose altitude and does so by actuating the flap which also doesn’t saturate in this case.

A small coupling effect may be observed for the impulse case in figure 5.43 where the flap moves between -0.11 and 0.11 degrees shortly after the distur- bance at T=30 seconds which is bigger than the result in case 2.2 of 0.05 degrees (figure 5.27). The altitude experiences as small change as well of 2 cm which can be seen in figure 5.45, which is a rather small number since it moves 50 cm in total upward. For the step however it remains as before in previous cases with no coupling effect.

Small

Figure 5.47: Angle response for im- Figure 5.48: Angle response for step pulse disturbance on small craft. disturbance on small craft. 66 CHAPTER 5. RESULTS

Figure 5.49: Control output for im- Figure 5.50: Control output for step pulse disturbance on small craft. disturbance on small craft.

Figure 5.52: Altitude response for Figure 5.51: Altitude response for im- step disturbance on small craft. Ob- pulse disturbance on small craft. Ob- serve that the z-axis is inverted and serve that the z-axis is inverted and positive values are "pointed down- positive values are "pointed down- ward". ward".

The smaller craft show a bigger difference in roll angle for the impulse case when comparing to the 2.2 case, instead of leaning up to -19 degrees it has a lower peak of -15.6 degrees. This is probably due to the change of actuation translation between rudder angle and requested force as it takes actual velocity as parameter. The induced drag by actuating the control surfaces lowers the velocity; a dip to 7.3 meters per second in figure 5.53 would mean a difference of 82 − 7.32 = 10.7 if the vehicle is always assumed to at 8 meters per CHAPTER 5. RESULTS 67

second which is a rather big difference. This probably explains why there is a bigger change between case 2.2 and 3 for the small craft than the large one in roll response when comparing figs. 5.53 and 5.54. Due to the much larger iner- tia the drag has less impact on the bigger vessel which in turn would have less impact when calculating rudder and flap angle. However the conclusion here is that incorporating the measurement of velocity in x-direction could maybe increase the performance when bigger changes are in effect as shown above.

Figure 5.53: Figure showing the response in velocity in x-direction for an im- pulse disturbance on the small craft in case 3.

Figure 5.54: Figure showing the response in velocity in x-direction for an im- pulse disturbance on the large craft in case 3. 68 CHAPTER 5. RESULTS

As before the coupling effect is not observed for the step disturbance for the small craft in roll-, pitch-, control- or altitude signals. For the impulse however a larger coupling effect is observed between roll and pitch as the pitch moves between 0.7 and -0.15 degrees in figure 5.47 compared to 0.3 and 0 in case 2.2, figure 5.35. The altitude response also experiences a slight change in figure 5.51, where it moves between 4 and -4.5 centimeters from the steady state at 0, which is a bigger change in comparison to its relative rudder height of 50 cm; the large craft had only 2 cm for an height on 100 cm, which again may be caused by the rather big change in inertia.The fact remains though that the coupling is over all rather small even though another degree of freedom has been added.

The results here point toward a feasibility for the suggested strategy presented earlier using an inner loop with an outer cascaded translational side movement loop together with an altitude controller connected to the pitch controller.

5.1.4 Result analysis Looking at the simulation results it can easily be seen that adding an outer control loop further stabilizes the system. But why does this happen? It might be because in the simplified model for a pendulum on a cart no assumption of dampening in the form of drag is made along the translational axis. The rudder representing a flat board being moved perpendicular to its orientation causes drag. But since the drag is modeled in a non-linear fashion depending on a squared velocity it is reduced to zero when linearizing around the equi- librium point where y˙ ≈ 0 → y˙2 = 0. For impulses it is possible to balance but with a drift, the problem arises when a step disturbance is involved. As the controller tries to keep the angles at zero without taking the translation into consideration the craft starts to accelerate, thus straying from the initial assumption. The drag increases and becomes a rather big disturbance which the controller tries to handle; since the translation is not part of its algorithm it will just keep accelerating. This creates an ever increasing torque around the roll axis, where drag and disturbance work in one direction and the rudder control in the other; when the rudder saturates at 12 degrees the craft falls over.

This argues that an outer controller must be implemented targeting the trans- lation which is also confirmed by the simulation results. However this gives rise to another problem. The outer transfer function of the roll controller con- tains right-half plane zeroes which not only causes the initial negative tilt in CHAPTER 5. RESULTS 69

angle response but also constrains the system to only act at a certain maximum speed. To get acceptable performance the highest bandwidth of the outer loop can only be around half the frequency of the RHP-zero [42] which would cor- respond to around 1.5 rad/s for the large craft and 2.2 rad/s for the smaller one. Although with the suggested option of reading translational movement with GPS which would be the principal constraint due to its low sampling rate it should be noted that this constraint exists if other sensor solutions were to be considered. Studying the transfer closer and how the RHP-zeroes are defined

r Mgl z = 2 (5.1) Ml + Ixx it is possible to see that the length of the pendulum rod or in this case the rud- der will have a big impact on the constraint, if for example the inertia Ixx were to be omitted since it is so comparatively small to the mass of the hull.

rg z = (5.2) l meaning that the longer the rudder is the lower the maximum bandwidth of the outer loop. The suggestion to use GPS is also a difficult task, not only be- cause its relatively low sampling rate but also it’s accuracy. One could argue that a Kalman-filter to be used instead to estimate the position or velocity, how- ever this necessitates a well defined and accurate model which incorporates more fluid dynamics which is not only more difficult but also computationally more intense.

5.2 Closed loop placement

The poles of the closed loop, or the eigenvalues, of the closed loop state-space matrix for the LQI-controller are presented in the figure 5.55 below. 70 CHAPTER 5. RESULTS

Figure 5.55: Comparison of closed loop PZ-map for LQI control.

As expected the poles for the smaller craft are placed further out in the right- half plane thus requiring a faster response of the controller.

Craft Poles Freq. (rad/s) Large -2.05, -2.05, -14.4±11.76i, -30.02±24.31i 2.05, 18.6, 38.6 Small -2.09, -2.09 ,-30.76±28.31i, -61.10±56.14i 2.09, 41.8, 83

Assuming that the recommended bandwidth of the controller should be at least ten times faster than the fastest pole of the closed loop system to give good performance. The large model should therefore have a sampling rate of at least 386 rad/s which equals 61.43 Hz and the smaller at least 830 rad/s which equals 132.1 Hz.

5.3 Sensitivity & Complementary Sensitivity

One way to study how scaling affects the system is to look at the sensitivity and complementary sensitivity functions of the inner balancing loop. As pre- viously mentioned the sensitivity for a full state feedback controller is defined CHAPTER 5. RESULTS 71

−1 −1 as S = (I + Kr(sI − A) B) and due to the relationship with the comple- mentary sensitivity function T where the sum of the two always equals one, S + T = 1, gives the following Bode-diagrams for the roll and pitch dynamics.

Figure 5.56: Figure showing a comparison between the two models over sen- sitivity and complementary sensitivity functions for pitch control.

Figure 5.57: Figure showing a comparison between the two models over sen- sitivity and complementary sensitivity functions, for roll control. 72 CHAPTER 5. RESULTS

As the system shifts in scale so does the weighting parameters defined from Bryson’s rule which affect the controller design algorithm. For the smaller craft there is a higher bandwidth for measurement noise amplification, signified by the T-function shifting to the right in the diagram. Concerning the S-functions they are also shifted to the same extent, however never reaching above 1 in magnitude. Chapter 6

Conclusion & future work

6.1 Conclusion

The suggestion to model the FoilCart as an inverted pendulum in multiple di- mensions problem seems to be a feasible option as the results point toward a stable functionality. The smaller model though seem to be very sensitive to outer disturbances, this is probably an effect of the actual hull being of exten- sively lighter weight but also shorter pendulum length. Adding more dimen- sions to the problem and studying the robustness and stability of the system as defined in the research question - How does another degree of freedom (roll) influence the robustness and stability of a system like this? - have given some interesting results. Since the problem is defined as an inverted pendu- lum which is linearized it turns out that the spherical nature of it can be split up into two separate systems to control.

Looking at the results the actual coupling effect, i.e where disturbances in the roll plane affect the pitch seem to be relatively small, thus suggesting that the stability and robustness remain unchanged when adding another degree of freedom. This however would only be the case when linearizing and therefore puts a constraint on the system only being able to actuate around the equilib- rium point. This could mean a problem when doing more demanding maneu- vers like tighter turns in a banking motion where roll and pitch act together to make a turn. In this thesis these kind of movements are not explored but may pose some difficulties further on. Employing a more aeronautical focus could maybe provide some better results as the system also can be seen as a winged aircraft with displaced center-of-mass. Also adding to the fact that the entire model is extensively simplified in terms of fluid dynamics due to mechatronic

73 74 CHAPTER 6. CONCLUSION & FUTURE WORK

relevancy but also limitations on the used software, Simulink. The conclusion though is that from an inverted pendulum perspective some control can be at- tained and suggests that the designed controller may work in a real physical setting.

Concerning the scaling effects and the research question - How does scaling affect the overall robustness and stability of the system? - some interest- ing dynamics arise. Since the choice being a linear quadratic controller an optimized solution can be derived thus giving the best option with a certain weighting. Of course can these weights be changed to a more fitting response and is usually done in an iterative manner but having them hard constrained by their maximum allowed state values by Bryson’s rule present some interest- ing results. The sensitivity and complementary sensitivity functions are sim- ply shifted higher up in amplified frequencies and not changed in peak values, meaning that for example measured noise will be amplified to the same extent but only in differing frequencies. This is an important aspect when looking at relevant sensors like an IMU which measures angular positions and velocities. The same IMU will probably be used for both a bigger and smaller craft and therefore should the results be of interest. The other interesting aspect is that the sensitivity function never reaches above a magnitude of one which prob- ably is due to the inherent nature of LQR-controllers [38], having a possible positive impact on controller rejection of disturbances and uncertainties.

6.2 Future work

This thesis has only scratched on the surface of controlling the motion dynam- ics of the FoilCart-project. First of all, the model has been linearized around it’s maximum speed which is 8 m/s or around 15 knots. For a wider range of operability multiple controllers must be designed for a more adapted ap- proach, where controller parameters are shifted as states change. Also the fact that the controller is working around a linearized equilibirum point suggests that non-linear control methods may be explored for enhanced performance, this however presents a daunting task as the equations of motion tend to be very complex, especially if the aim is to include all six degrees of freedom.

However, to include all six degrees of freedom is an important aspect which must be investigated. The model presented in this report is controlled by as- suming it’s dynamics to be closely resembling that of an inverted pendulum CHAPTER 6. CONCLUSION & FUTURE WORK 75

on a cart, where the cart does not turn in the yaw-direction which corresponds to the z-axis. This could have a big impact on the actual control since the roll angle balancing may be handled by turning slightly around the yaw-axis; it is like imagining how a bicycle turns as the user leans slightly in the roll-plane.

Secondly, the actual fluid dynamics have been very simplified in this case which is another dimension of the problem. Such a simplicity has been chosen due to mechatronic relevancy but also due to software constraints. Simscape is a compelling tool for doing analysis of dynamical systems, provided that the systems are somewhat mechatronic in nature. Actuators, electronics, classical mechanics and thermodynamics are examples of domains where the software is really powerful but when it comes to actual fluid mechanics it falls short. A suggested future work can be focused on trying to incorporate this into the model by other means than Simscape. Bibliography

[1] Hydrofoil Basics | Massachusett’s Institute of Technology. [Online]. Avail- able: http : / / lancet . mit . edu / decavitator / Basics . html (visited on 01/23/2019). [2] A. J. Acosta, “Hydrofoils and Hydrofoil Craft”, en, Annual Review of Fluid Mechanics, vol. 5, no. 1, pp. 161–184, Jan. 1973, ISSN: 0066-4189, 1545- 4479. DOI: 10.1146/annurev.fl.05.010173.001113. [Online]. Available: http : / / www . annualreviews . org / doi / 10 . 1146 / annurev.fl.05.010173.001113 (visited on 01/23/2019). [3] Hydrofoil types. [Online]. Available: https://en.wikipedia.org/ wiki/Hydrofoil#/media/File:Hydrofoil_types.svg (visited on 01/23/2019). [4] Hydrofoil | The Canadian Encyclopedia. [Online]. Available: https : / / www.thecanadianencyclopedia.ca/en/article/hydrofoil (visited on 01/18/2019). [5] Alexander Graham Bell’s HD-4 on a test run, c.1919. [Online]. Available: https://en.wikipedia.org/wiki/Hydrofoil#/media/File: Bell_HD-4.jpg (visited on 01/18/2019). [6] T. A. Barden and J. R. Binns, “On the Road to Establishing Ventilation Probability for Moth Sailing Dinghies”, en, Australasian Fluid Mechanics Conference, vol. 18, p. 4, 2012. [7] P. Conti and F. Rocchini, “A Real-Time Simulator of Foiling Catama- rans”, en, in Sports Science Research and Technology Support, J. Cabri, J. Barreiros, and P. Pezarat Correia, Eds., ser. in Com- puter and Information Science, Springer International Publishing, 2015, pp. 57–70, ISBN: 978-3-319-25249-0. [8] L. Hamilton, Force of Nature: Mind, Body, Soul (And, of Course, Surfing), en. Rodale, Aug. 2010, Google-Books-ID: KS7CAAAAQBAJ, ISBN: 978- 1-60961-102-6.

76 BIBLIOGRAPHY 77

[9] C. Meinig, N. Lawrence-Slavas, R. Jenkins, and H. M. Tabisola, “The use of Saildrones to examine spring conditions in the Bering Sea: Vehicle specification and mission performance”, in OCEANS 2015 - MTS/IEEE Washington, Oct. 2015, pp. 1–6. DOI: 10.23919/OCEANS.2015.7404348. [10] J. Manley and S. Willcox, “The Wave Glider: A persistent platform for ocean science”, in OCEANS’10 IEEE SYDNEY, May 2010, pp. 1–5. DOI: 10.1109/OCEANSSYD.2010.5603614. [11] R. P. Stokey, A. Roup, C. v. Alt, B. Allen, N. Forrester, T. Austin, R. Goldsborough, M. Purcell, F. Jaffre, G. Packard, and A. Kukulya, “De- velopment of the REMUS 600 autonomous underwater vehicle”, in Pro- ceedings of OCEANS 2005 MTS/IEEE, Sep. 2005, 1301–1304 Vol. 2. DOI: 10.1109/OCEANS.2005.1639934. [12] C. C. Eriksen, T. J. Osse, R. D. Light, T. Wen, T. W. Lehman, P. L. Sabin, J. W. Ballard, and A. M. Chiodi, “Seaglider: A long-range autonomous underwater vehicle for oceanographic research”, IEEE Journal of Oceanic Engineering, vol. 26, no. 4, pp. 424–436, Oct. 2001, ISSN: 0364-9059. DOI: 10.1109/48.972073. [13] MIT School of Engineering | » What is the relationship between the length of a boat and its maximum speed?, en-US. [Online]. Available: https:// engineering.mit.edu/engage/ask-an-engineer/what-is- the-relationship-between-the-length-of-a-boat-and- its-maximum-speed/ (visited on 01/23/2019). [14] A. Andersson, A. Barreng, E. Bohnsack, L. Larsson, L. Lundin, G. Olan- der, R. Sahlberg, E. Werner, C. Finnsgård, A. Persson, M. Brown, and J. McVeagh, “Design of a Foiling Optimist”, Journal of Sailboat Technology, vol. 2018, no. 6, pp. 1–24, [15] S. Karlsson and J. Urde, “Hydrofoiling Europe-Dinghy”, en, Master’s thesis, Lund University, Lund, 2018. [16] M. Findlay and S. Turnock, “Investigation of the effects of hydrofoil set- up on the performance of an international moth dinghy using a dynamic VPP”, School of Engineering Sciences, University of , UK, Tech. Rep., May 2008. [17] G. D. Bousquet, M. S. Triantafyllou, and J. E. Slotine, “Control of a flexi- ble, surface-piercing hydrofoil for high-speed, small-scale applications”, in 2017 IEEE/RSJ International Conference on Intelligent Robots and Sys- tems (IROS), Sep. 2017, pp. 4203–4208. DOI: 10 . 1109 / IROS . 2017 . 8206282. 78 BIBLIOGRAPHY

[18] J. Bai and Y. Kim, “Active motion control of high-speed vessels in waves by hydrofoils”, English, in 9th International Conference on Fast Sea Trans- portation, FAST 2007, 2007, pp. 463–471. [Online]. Available: www.scopus. com. [19] S.-H. Kim and H. Yamato, “An experimental study of the longitudinal motion control of a fully submerged hydrofoil model in following seas”, Ocean Engineering, vol. 31, no. 5, pp. 523–537, 2004, ISSN: 0029-8018. DOI: https://doi.org/10.1016/j.oceaneng.2003.10.003. [On- line]. Available: http : / / www . sciencedirect . com / science / article/pii/S0029801803002105. [20] G. P. van Marrewijk, J. K. Schonebaum, and A. L. Schwab, “An Experi- mentally Validated Dynamical Model of a Single-Track Hydrofoil Boat”, en, NAVALENGINEERS JOURNAL, p. 22, [21] M. S. Mahmud, “The applicability of hydrofoils as a ship control device”, English, Journal of Marine Science and Application, vol. 14, no. 3, pp. 244– 249, 2015. [Online]. Available: www.scopus.com. [22] Krishnavedala, Cart pendulum. [Online]. Available: https://upload. wikimedia.org/wikipedia/commons/0/00/Cart-pendulum. svg (visited on 04/10/2019). [23] B. Kosiorek, 775px-Lift-force-en.svg.png (PNG-bild, 775 500 pixlar). [On- line]. Available: https://upload.wikimedia.org/wikipedia/ commons / thumb / d / d7 / Lift - force - en . svg / 775px - Lift - force-en.svg.png (visited on 04/12/2019). [24] The Drag Equation. [Online]. Available: https : / / www . grc . nasa . gov/www/k-12/airplane/drageq.html (visited on 04/12/2019). [25] The Lift Equation. [Online]. Available: https://www.grc.nasa.gov/ www/k-12/airplane/lifteq.html (visited on 04/12/2019). [26] NACA Overview. [Online]. Available: https://history.nasa.gov/ naca/overview.html (visited on 04/12/2019). [27] U. Nagarajan, B. Kim, and R. Hollis, “Planning in high-dimensional shape space for a single-wheeled balancing mobile robot with arms”, in 2012 IEEE International Conference on Robotics and Automation, May 2012, pp. 130– 135. DOI: 10.1109/ICRA.2012.6225065. [28] M. Shomin, “Navigation and Physical Interaction with Balancing Robots”, en, PhD thesis, Carnegie Mellon University, Pittsburgh, 2016. BIBLIOGRAPHY 79

[29] F. Peker, I. Kaya, E. Cokmez, and S. Atic, “Cascade Control Approach for a Cart Inverted Pendulum System Using Controller Synthesis Method”, in 2018 26th Mediterranean Conference on Control and Automation (MED), Jun. 2018, pp. 1–6. DOI: 10.1109/MED.2018.8442552. [30] S. Skogestad and I. Postlethwaite, “Loop shaping”, in Multivariable Feed- back Control - Analysis and Design, Second Edition, vol. 2005, John Wiley & Sons Ltd, pp. 42–45. [31] ——, “LQG control”, in Multivariable Feedback Control - Analysis and De- sign, Second Edition, vol. 2005, John Wiley & Sons Ltd, pp. 344–346. [32] J. Doyle, “Guaranteed margins for LQG regulators”, IEEE Transactions on Automatic Control, vol. 23, no. 4, pp. 756–757, Aug. 1978, ISSN: 0018-9286. DOI: 10.1109/TAC.1978.1101812. [33] P. Bakaráˇc,M. Klauˇco,and M. Fikar, “Comparison of inverted pendulum stabilization with PID, LQ, and MPC control”, in 2018 Cybernetics Infor- matics (K I), Jan. 2018, pp. 1–6. DOI: 10.1109/CYBERI.2018.8337540. [34] M. Hamza, a. Q. Zahid, F. Tahir, and Z. Khalid, “Real-Time Control of an Inverted Pendulum: A Comparative Study”, in 2011 Frontiers of Informa- tion Technology, Dec. 2011, pp. 183–188. DOI: 10.1109/FIT.2011.41. [35] I. Soto and R. Campa, “Modelling and Control of a Spherical Inverted Pendulum on a Five-Bar Mechanism”, International Journal of Advanced Robotic Systems, vol. 12, p. 1, 2015. DOI: 10.5772/60027. [36] H. F. Murcia and A. E. González, “Performance comparison between PID and LQR control on a 2-wheel inverted pendulum robot”, in 2016 IEEE Colombian Conference on Robotics and Automation (CCRA), Sep. 2016, pp. 1– 6. DOI: 10.1109/CCRA.2016.7811420. [37] E. Sara Varghese, A. K Vincent, and V. Bagyaveereswaran, “Optimal con- trol of inverted pendulum system using PID controller, LQR and MPC”, IOP Conference Series: Materials Science and Engineering, vol. 263, p. 052 007, 2017. DOI: 10.1088/1757-899X/263/5/052007. [38] S. Skogestad and I. Postlethwaite, “Robustness properties”, in Multivari- able Feedback Control - Analysis and Design, Second Edition, vol. 2005, John Wiley & Sons Ltd, p. 349. [39] ——, “State controllability and state observability”, in Multivariable Feed- back Control - Analysis and Design, Second Edition, vol. 2005, John Wiley & Sons Ltd, pp. 127–128. 80 BIBLIOGRAPHY

[40] C. Zhang, H. Hu, D. Gu, and J. Wang, “Cascaded control for balanc- ing an inverted pendulum on a flying quadrotor”, en, Robotica, vol. 35, no. 06, pp. 1263–1279, Jun. 2017, ISSN: 0263-5747, 1469-8668. DOI: 10. 1017 / S0263574716000035. [Online]. Available: https : / / www . cambridge.org/core/product/identifier/S0263574716000035/ type/journal_article (visited on 03/06/2019). [41] HITEC, HS-645mg High Torque, Metal Gear Premium Sport Servo | HITEC RCD USA. [Online]. Available: https://hitecrcd.com/products/ servos / sport - servos / analog - sport - servos / hs - 645mg / product (visited on 06/05/2019). [42] S. Skogestad and I. Postlethwaite, “Frequency response: Bandwidth lim- itation”, in Multivariable Feedback Control - Analysis and Design, Second Edition, vol. 2005, John Wiley & Sons Ltd, pp. 185–186. TRITA TRITA-ITM-EX 2019:399

www.kth.se