Eindhoven University of Technology

MASTER

Control design including tyre behaviour for a mobile robot

Schouten, H.E.

Award date: 2007

Link to publication

Disclaimer This document contains a student thesis (bachelor's or master's), as authored by a student at Eindhoven University of Technology. Student theses are made available in the TU/e repository upon obtaining the required degree. The grade received is not published on the document as presented in the repository. The required complexity or quality of research of student theses may vary by program, and the required minimum study period may vary in duration.

General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights.

• Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain Control design including tyre behaviour for a mobile robot

H.E. Schouten DCT 2007.019

Master’s thesis

Coach: Ir. J. Ploeg (TNO)

Supervisor: Prof. dr. H. Nijmeijer

Committee: dr. ir. N. van de Wouw dr. ir. F.E. Veldpaus

TNO Science & Industry Business Unit Automotive Department Integrated Safety

Technische Universiteit Eindhoven Department Mechanical Engineering Dynamics and Control Group

Eindhoven, February, 2007 Preface

This report is the result of a traineeship at TNO Science & Industry, Business Unit Automotive, department Integrated Safety, in partial fulfillment of my graduation at the Technical University Eindhoven, faculty Mechanical Engineering. I would like to thank prof. dr. Henk Nijmeijer for his supervision and criticism and ir. Jeroen Ploeg at TNO for his support and guidance during this project. I would also like to thank dr. ir. N. van de Wouw and dr. ir. F.E. Veldpaus for participating in my graduation committee. Further, I would like to thank my family for their support and especially my parents for enabling me to go to college. And last but not least, I would like to thank my beloved girlfriend Jasmijn Kuijten for her mental support and the necessary distraction during this project.

Hanno Schouten

’s-Hertogenbosch, February, 2007

i Summary

This report focusses on the design of a controller for a high performance overactuated automatic guided vehicle. The objective is to develop a structured and generic con- troller that can independently control the position and the heading of the vehicle and includes non-linear tyre behaviour. A literature survey shows that the concept of the so-called multicycle controller is preferable for this control problem. The basic idea of the multicycle controller is to decentralize the tracking problem to overcome the overactuatedness. To do so, the vehicle is virtually divided into several smaller vehicles, each consisting of a wheel and a mass, which can be driven and steered: a unicycle. The multicycle controller consists therefore of multiple unicycle controllers. The field of robotics provides structured and generic solutions to design a unicy- cle controller. However, there are no unicycle controllers which are able to include non-linear tyre behaviour. Therefore a new unicycle model is derived, which includes a linear tyre model with relaxation effects, as commonly used in the field of . Input-output linearization is often used to design a unicycle controller. It appears however that this is not possible for the derived unicycle model, due to the included tyre model. Therefore, the model is first reduced by regarding the longitudinal wheel as a virtual input. A master position controller, which controls the position of a con- trol point in front of the wheel, is designed for this reduced model, using input-output linearization. It appears that the internal dynamics of this controller are stable if the length between the control point and the wheel is larger than the relaxation length in lateral direction. Second, a wheel slip controller is designed using full-state lineariza- tion. This slave controller controls the virtual input of the reduced model, the wheel slip, using the real input of the unicycle, the drive torque. To be able to use the designed controller in reality, two additional observers are designed, to estimate the longitudinal and lateral wheel slip. The stability of both wheel slip observers is proven, and simulations and real-time experiments show that both observes have a reasonably good performance. The behaviour of the designed unicycle controller and multicycle controller is an- alyzed using simulations. It appears that it is very important to have stable internal dynamics and that a lateral position error of the vehicle occurs during cornering. De- spite of this, the performance of the controller is well within the posed requirements. The effect of the observers on the behaviour of the designed multicycle controller is also analyzed using simulations. It appears that the errors of the designed wheel slip observers have only a small effect on the position error. The main position error is a result of the error of the estimated position. Due to the errors of the observers, the po- sition and heading error of the MB is larger than without the observers, but still within the posed requirements. The overall conclusion is that the designed controller has a good performance. Real-time experiments should be performed to test the behaviour of the controller in reality.

iii Samenvatting

In dit verslag wordt een regeling ontworpen voor een hoog-dynamisch overgeactueerd automatisch geleid voertuig. De doelstelling is om een gestructureerde en generieke regelaar te ontwerpen, welke onafhankelijk de positie en oriëntatie van het voertuig kan regelen en rekening houdt met niet-linear bandgedrag. Uit een literatuurstudie blijkt dat voor dit regelprobleem de voorkeur uitgaat naar het concept van de zogeheten ’multicycle’ regelaar. De essentie van de ’multicycle’ regelaar is het decentraliseren van het regelprobleem, om zo het probleem van de over- actuatie op te lossen. Op deze manier wordt het voertuig virtueel verdeeld in meerdere kleinere voertuigen, welke bestaan uit een wiel met een massa, die gestuurd en aange- dreven kunnen worden: een ’unicycle’. De ’multicycle’ regelaar bestaat daarom uit meerder ’unicycle’ regelaars. Vanuit het vakgebied van de robotica zijn gestructureerde en generieke methodes beschikbaar om een ’unicycle’ regeling te ontwerpen. Deze zijn echter niet in staat om rekening te houden met niet-linear bandgedrag. Daarom is een nieuw ’unicycle’ model ontwikkeld, inclusief een linear bandmodel met relaxatie effecten, zoals algemeen ge- bruikt in het vakgebied van de voertuig dynamica. Ingang-uitgang linearizatie is een vaak gebruikte techniek om een ’unicycle’ rege- laar te ontwerpen. Het blijkt echter dat dit niet mogelijk is voor het ontwikkelde ’unicy- cle’ model. Het model is daarom eerst gereduceerd door de wielslip als virtuele ingang te beschouwen. Door middel van ingang-uitgang linearizatie is een positie regeling ontworpen voor het gereduceerde model, welke de positie van een regel-punt voor het wiel regelt. Het blijkt dat de interne dynamica van deze regelaar stabiel is, zolang de afstand tussen het regel-punt en het wiel groter is dan de relaxatie lengte. Ten tweede is een wielslip regelaar ontworpen door middel van volledige linearizatie. Deze slaaf regeling regelt de virtuele ingang van het gereduceerde model, de wielslip, door middel van de werkelijke ingang van de ’unicycle’, het aandrijf koppel. Om deze ’unicycle’ regelaar te kunnen gebruiken zijn twee additionele schatters ontworpen, om de laterale en longitudinal wielslip te schatten. De stabiliteit van beide schatters is bewezen en simulaties en experimenten tonen aan dat de schatters vol- doende goed presteren. Het gedrag van de ontworpen ’unicycle’ regelaar en ’multicycle’ regelaar wordt ge- analyseerd door middel van simulaties. Het blijkt dat stabiele interne dynamica erg belangrijk is en dat tijdens een bocht een lateral positie fout ontstaat. Ondanks dit voldoet de prestatie van de regelaar ruim aan de gestelde eisen. Het effect van de schatters op het gedrag van de ontworpen ’multicycle’ regelaar wordt ook onderzocht door middel van simulaties. Het blijkt dat de fouten van de wielslip schatters een klein effect hebben op het gedrag van de regelaar. Het grootste deel van de positie fout is een resultaat van de fout van de geschatte positie. Ondanks de fouten van de schatters, voldoet de prestatie van de regelaar aan de gestelde eisen. De uiteindelijke conclusie is dat de ontworpen regelaar een goede prestatie levert, maar experimenten zullen nog uitgevoerd moeten worden om het gedrag in de werkelijkheid te kunnen testen.

v Glossary of symbols

Symbol Unit Description

x m x position in the global coordinate frame x˙ m/s first derivative of x x¨ m/s2 second derivative of x y m y position in the global coordinate frame y˙ m/s first derivative of y y¨ m/s2 second derivative of y ψ rad heading angle ψ˙ rad/s first derivative of ψ ψ¨ rad/s2 second derivative of ψ u m/s longitudinal velocity u˙ m/s2 longitudinal acceleration v m/s lateral velocity v˙ m/s2 lateral acceleration L m half of the vehicle’s length W m half of the vehicle’s width d m distance between cog and the corners ϕ rad angle between the vehicle’s longitudinal axis and the diagonal cog - center of gravity m kg mass h m height of the center of gravity g m/s2 gravitational constant ∆m kg load transfer R m wheel radius φ rad rotation angle of a wheel φ˙ rad/s rotational velocity of a wheel ξ - posture coordinate vector ξ˙ - global velocity vector R(ψ) - rotation matrix C - constraint matrix Σ - basis of the null-space of C η - generalized velocity vector η1 m/s forward velocity u ˙ η2 rad/s rotational velocity ψ δm - degree of mobility δs - degree of steerability δM - degree of maneuverability β - steering angle of conventional steering wheels Td Nm drive torque Ts Nm steer torque

vii Symbol Unit Description

2 Iψ kgm inertia around vertical axis 2 Iω kgm inertia around wheel axis v - input vector v1, v2 - inputs of posture dynamical unicycle model η - normalization parameter C N/rad lateral slip stiffness K N/rad longitudinal slip stiffness V m/s absolute velocity µ1 - lateral wheel slip µ2 - longitudinal wheel slip r - relative degree u - input (SISO) u - input vector (MIMO) y - output (SISO) y - output vector (MIMO) q - state vector z - new coordinates zl - linearizable subsystem of z znl - nonlinearized subsystem of z ν - new input (SISO) ν - new input (MIMO) H - decoupling matrix J - Jacobian matrix

Flong N longitudinal force Flat N lateral force α rad side α˙ rad/s first derivative of α κ - longitudinal slip κ˙ - first derivative of κ κ¨ - second derivative of κ ω rad/s wheel rotational velocity ω˙ rad/s2 wheel rotational acceleration Kn - longitudinal normalized slip stiffness Cn - lateral normalized slip stiffness Fz N vertical load σκ m relaxation length in longitudinal direction σα m relaxation length in lateral direction h - output vector cp - control point lcp m distance between cog and cp D - determinant Kp - matrix containing the proportional gains (position controller) Kv - matrix containing the differential gains (position controller) λ - pole location Kpκ - proportional gain (κ-controller) Kvκ - differential gain (κ-controller) ref - vector containing reference signals

viii Symbol Unit Description

ˆz - estimated states z L - matrix containing observer gains l - observer gain e - observer error vector ˙e - first derivative of e A - system matrix C - output matrix O - observability matrix t s time ev - observer error of v eα - observer error of α eκ - observer error of κ eω - observer error of ω umax m/s maximum forward velocity ts s sample time V - Lyapunov function V˙ - first derivative of V Acl - closed loop system matrix Ce N/rad lateral slip stiffness (exponential tyre model) Ke N longitudinal slip stiffness (exponential tyre model) µlat - lateral friction coefficient µlong - longitudinal friction coefficient d m distance between unicycles e - error of d E - root-mean-square error

Indices Description f front r rear or right l left s static or square long longitudinal lat lateral m number of outputs n number of states ref reference 0 initial max maximum min minimum o original

ix Contents

Preface i

Summary iii

Samenvatting v

Glossary of symbols vii

1 Introduction 1 1.1 Motivation ...... 1 1.2 Problem statement ...... 3 1.3 Outline of the report ...... 3

2 Literature survey 5 2.1 Controllers for an overactuated vehicle ...... 5 2.1.1 Additional control objectives ...... 5 2.1.2 Additional output ...... 6 2.1.3 Decentralize the tracking problem ...... 6 2.2 Unicycle models ...... 8 2.2.1 Unicycle models without tyre slip ...... 9 2.2.2 Unicycle models including tyre slip ...... 12 2.3 Theory of input-output linearization ...... 13 2.3.1 Relative degree ...... 13 2.3.2 Normal form ...... 15 2.3.3 Necessary conditions for input-output linearization ...... 16 2.4 Summary ...... 16

3 Modeling and control design 17 3.1 Unicycle model ...... 17 3.1.1 General equations of motion ...... 17 3.1.2 Equations of motion of a unicycle ...... 19 3.2 Unicycle controller ...... 22 3.2.1 Input-output linearization of the original model ...... 22 3.2.2 Input-output linearization of the reduced model ...... 23 3.2.3 Internal dynamics ...... 28 3.2.4 Longitudinal wheel slip controller ...... 30 3.2.5 Total controller ...... 32 3.3 Summary ...... 32

xi 4 Wheel slip observers 33 4.1 Design of the wheel slip observers ...... 33 4.1.1 Lateral wheel slip observer ...... 34 4.1.2 Longitudinal wheel slip observer ...... 36 4.2 Simulations with the wheel slip observers ...... 37 4.2.1 Longitudinal wheel slip observer ...... 38 4.2.2 Lateral wheel slip observer ...... 41 4.3 Experiments with the wheel slip observers ...... 46 4.3.1 Longitudinal wheel slip observer ...... 46 4.3.2 Lateral wheel slip observer ...... 48 4.4 Summary ...... 51

5 Analysis of the controller 53 5.1 Unicycle model ...... 53 5.2 Multicycle model ...... 57 5.3 Moving Base model ...... 59 5.3.1 Moving Base without observers ...... 59 5.3.2 Moving Base including wheel slip observers ...... 62 5.3.3 Moving Base including all observers ...... 66 5.4 Summary ...... 70

6 Conclusions and recommendations 71 6.1 Conclusions ...... 71 6.2 Recommendations ...... 72

Bibliography 75

A Stability of the lateral wheel slip observer 79 A.1 Lyapunov’s direct method ...... 79 A.2 Pole placement ...... 80

B Stability of the longitudinal wheel slip observer 83 B.1 Lyapunov’s direct method ...... 83 B.2 Pole placement ...... 84

C Reference trajectories 87 C.1 Line trajectories ...... 87 C.2 Circular trajectories ...... 89 C.3 J-turn trajectory ...... 91 C.4 Eight-shaped trajectory ...... 92

D Experiments with the wheel slip observers 95 D.1 Longitudinal wheel slip observer ...... 95 D.2 Lateral wheel slip observer ...... 96

E Exponential tyre model in observers 99 E.1 Design of the exponential wheel slip observers ...... 99 E.2 Simulations with the exponential wheel slip observers ...... 100

xii Chapter 1

Introduction

1.1 Motivation

Automatic Guided Vehicles (AGV’s) are widely used in industry nowadays. They are very useful for transportation (e.g. automatic forklifts) and can help to reduce costs and increase efficiency. AGV’s have been used in industry since the appearance of their initial prototype, a modified towing tractor in 1953. Today’s AGV’s are computer- controlled vehicles that not only transport materials, but are also becoming involved in more complex processes as well. With the expanded capabilities and increased reliabil- ity, AGV’s are becoming standard means of material handling across industry. Besides the use of AGV’s for material handling, they are increasingly used by com- panies across a wider spectrum of industry, for example the field of public transport. In this field there is an increasing need for personal rapid transport systems, for fast and individual transport of small groups of people. Several automatic people mover systems are currently used, for example the Parkshuttle in Rotterdam and the former ParkingHopper at Schiphol airport. There are two types of control objectives for a motion controller of an AGV. The first type of control objective is to control the lateral position of the vehicle, while driv- ing with a certain (constant) forward velocity. This means that the lateral and longi- tudinal behaviour are decoupled. For this type of AGV, a car-like configuration, with two steered wheels and two driven wheels, is most used. The second type of control objective is to let the center of the vehicle follow a time dependent spatial reference trajectory. This is a more complicated objective and therefore a four-wheel-steered and four-wheel-driven (4ws4wd) vehicle should be used in this case.

TNO Automotive has developed a high performance AGV for use in its VeHIL test facility. VeHIL is a hardware-in-the-loop test facility for the development of intelligent road vehicles. Vehicles equipped with driver assistance systems, such as Advanced Cruise Control and Collision Warning, can be tested and evaluated using VeHIL. The principle of VeHIL is to simulate only the relative motion of other vehicles with respect to the test vehicle. This allows for efficient, safe and reproducible testing [13]. The neighboring vehicles of the test vehicle are simulated by two AGV’s, equipped with a dummy vehicle body in order to resemble a real vehicle. Figure 1.1 shows a photograph of such an AGV without body, called the Moving Base (MB). Because in VeHIL only the relative motions are simulated, the position and the heading of the MB have to be controlled independently, to carry out the desired ma- noeuvres. When for example a take-over manoeuvre is simulated, the MB has to perform a crabwise motion. Therefore, the MB is equipped with four independently steered wheels, with a range of -350◦ till +350◦.

1 1. Introduction

Figure 1.1: TNO's AGV: the Moving Base.

To be able to simulate an emergency stop, the MB has to be able to accelerate and decelerate with 10 m/s2 in all directions. Because of these high acceleration levels, a considerable amount of weight transfer occurs, given the total mass of the vehicle (667 kg) and the height of the center of gravity (0.35 m). Because the maximum friction force a tyre can deliver is approximate proportional to the vertical load [26], the wheels should be driven in accordance to their actual vertical load. This means that the drive torque distribution across the four wheels should corresponds to the actual weight distribution. The MB is therefore equipped with four independently driven wheels. The installed power is 52 kW and the maximum velocity of the MB is 50 km/hr. Table 1.1 summarizes the main specifications of the MB.

Table 1.1: Specications of the Moving Base.

Vehicle mass (without body): 667 kg Wheel base: 1.4 m Track width: 1.4 m Center of gravity height 0.35 m Maximum velocity: 50 km/h Maximum acceleration: 10 m/s2 Installed power: 52 kW Steering angle range: [-350◦, +350◦]

The control objective of the MB is not only to control its position, but also to control its orientation angle. Because the MB has eight actuators (four driving and four steering motors) and the control objective comprises three degrees of freedom only, the MB can be characterized as being overactuated. This report focusses on the control design for this type of AGV. In the last couple of years, several controllers are designed for an overactuated high performance AGV. First, a controller is designed using the concept of a virtual force actuator [31]. Here, the desired force and moment, acting on the vehicle’s center of gravity to achieve the desired velocity, are determined first. After that, this virtual force and moment are translated to desired drive torques. This approach has however it’s limitations because tyre behaviour is not included.

2 1.2 Problem statement

Second, in [17] a controller is designed using the same approach as in [31], but now tyre behaviour is included. This results however in a real-time optimization problem, which needs a large computational effort. Finally, in [38] a so-called multicycle controller is designed, which decentralizes the tracking problem. This could be regarded as a true generic approach to design a controller for an overactuated vehicle. The basis of this multicycle controller is a unicycle controller, which includes linear tyre behaviour. This controller is designed using a structured and generic method, from the field of robotics. However, it is not possible to extend this controller with non-linear tyre behaviour. The control methods developed before do not take into account non-linear tyre be- haviour. The force generated by a tyre is a function of the slip between the wheel and the ground [26]. For small values of slip, the generated force is proportional to the slip. However, for large values of slip, the generated force shows saturation. A linear tyre model is therefore only valid for small values of slip, which implies that a linear tyre model is only valid for small accelerations. Another important effect is that the force response of a tyre shows a lag in time. This is a result of carcass compliance and known as the relaxation effect [26]. Because this lag is related to the traveled distance, it is important during low velocities. In the field of vehicle dynamics, a lot of research is done on (non-linear) tyre be- haviour. Therefore tyre behaviour is included using the vehicle dynamics point of view in this research. In this way the structured approach from the field of robotics is com- bined with the modeling of tyre behaviour from the fields of vehicle dynamics, to de- sign a new controller for an overactuated AGV.

1.2 Problem statement

This report focusses on the design of a controller for a high performance 4ws4wd AGV. The objective of this project can be summarized as:

Design a tracking controller for the position and orientation angle of a four-wheel-steered and four-wheel-driven automatic guided vehicle, which includes (non-linear) tyre behaviour.

1.3 Outline of the report

In this report a new controller for a high performance 4ws4wd AGV is designed. First, different control strategies are studied in chapter two. From this, it is concluded that the concept of the multicycle controller is preferable for this control problem. Because a multicycle controller consists of multiple unicycle controllers, a unicycle controller is needed. To be able to include non-linear tyre effects, a new unicycle controller is designed in chapter three, using a new unicycle model, which is derived from the vehicle dynamics point of view. To be able to apply this controller, all states of the unicycle model are needed. Therefore two additional observers are designed in chapter four, to estimate the longitudinal and lateral wheel slip. Both observers are tested using simulations and real-time experiments. In chapter five, the behaviour of the designed controller is analyzed by means of simulations. Finally, conclusions are given and recommendations are done in chapter six.

3 Chapter 2

Literature survey

This chapter provides an overview of the literature that constitutes the basis of this re- port. The first section describes different control strategies to control an overactuated vehicle, which is in this case a four wheel steered and four wheel driven (4ws4wd) ve- hicle. In this section the multicycle approach is explained in more detail. The basis of this approach is a unicycle controller. Therefore all known unicycle models are de- scribed in detail in the second section. The theory of input-output linearization, which forms the basis of the control design of a unicycle controller, is explained in the third section. Finally, this chapter is summarized in section four.

2.1 Controllers for an overactuated vehicle

The main difficulty of controlling a 4ws4wd vehicle is that this system is over-actuated; the number of actuators exceeds the number of spatial degrees of freedom. Therefore multiple actuators have to cooperate in an optimal way. To deal with this problem, different force allocation strategies are proposed in the literature. These methods can be divided into three groups, which are explained in the following subsections.

2.1.1 Additional control objectives

By defining additional control objectives, the control problem is not over-actuated any- more. Many different objectives are used, for example [2] and [36], where the drive torque is evenly distributed to each wheel. Other examples are: [1], where an objective is used to minimize the energy consumption and [14], where the total motor power is minimized. In [17] and [30], the relative tyre forces are equalized, which means that tyre slip is equal for all tyres. This last objective is very important for an high dynamic AGV, because in this way the load transfer, as a result of acceleration, is taken into account. These additional objectives are all used to distribute the driving forces. To deter- mine the steering angles, the concept of Instantaneous Center of Rotation (ICR) is used. The ICR represents the point around which a rigid body is rotating. In case of a vehicle, the perpendiculars to the plane of each wheel, drawn from the center of the wheel, are all concurrent in the ICR, see figure 2.1. Note that tyre slip is neglected here and that the ICR is located at a distance ∞ from the body, when the vehicle is driving in a straight line. Defining additional control objectives is the most used method to solve the problem of overactuation. However, it can result in a controller which needs a large computa- tional effort, due to real-time optimization, e.g. [17].

5 2. Literature survey

ICR

Figure 2.1: Top view of a 4ws4wd vehicle, showing the ICR.

2.1.2 Additional output

Instead of defining additional objectives, it is also possible to define additional outputs to deal with the overactuation of the vehicle. In [4], the so called fighting forces are defined, which are additional outputs that correspond with unfeasible actuator combi- nations. Because a fighting force is unwanted, these additional outputs are tracked to zero. Although this method looks general, the main difficulty is finding the fighting forces.

2.1.3 Decentralize the tracking problem

The last force allocation method can be described as decentralizing the tracking prob- lem. This method is first used in [5], where a control concept called compliant linkage is introduced for a four degrees-of-freedom (4DOF) vehicle, which consists of 2 differen- tial driven trucks connected by a compliant link. The tracking problem for the 4DOF vehicle is converted into two tracking problems for the differential driven trucks. In this way the tracking problem is not overactuated anymore. Inspired by this approach, a so-called multicycle controller is developed to control an overactuated vehicle in [38]. In this method the tracking problem of the vehicle’s center of gravity is converted into a separate tracking problem for every wheel. So the vehicle is virtually divided into several smaller vehicles, each one consisting of a mass and a wheel, which can be driven and steered: a unicycle. The advantage of this approach is that the tracking problem of a unicycle has been the subject of many studies. Therefore extensive literature is available about model- ing and controlling a unicycle. Another advantage is that this approach is general; it can be used for every overactuated vehicle, regardless of the number and location of the wheels. Because of these advantages, this method will now be explained in more detail.

The reference position and heading for every corner ij (i = f(ront), r(ear), j = l(eft), r(ight)) are calculated using figure 2.2. Here, a schematic top view of a 4ws4wd vehicle is shown, with L and W representing the half of the vehicle’s length and width re- spectively. The distance d between the vehicle’s√ center of gravity (cog) and the corners, where the wheels are attached, equals W 2 + L2 and the angle ϕ between the longi- W tudinal axis and the diagonal of the vehicle equals arctan( L ). The reference position (xfl yfl) for the front left corner becomes:

x = x + d cos(ψ + ϕ) fl cog (2.1) yfl = ycog + d sin(ψ + ϕ)

6 2.1 Controllers for an overactuated vehicle

. yfl

ψfl . xfl rl d v ϕ u ψ

L W y fr ψ rr

x

Figure 2.2: Top view of a 4ws4wd vehicle.

with (xcog ycog) representing the position of the center of gravity. The same approach is followed to calculate the reference position for the other corners. To make sure that the wheels are oriented in the direction of their velocity i.e. ac- cording to the ICR, the reference orientation angles ψij are calculated as follows:

y˙ij ψij = arctan( ) (2.2) x˙ ij with x˙ ij and y˙ij representing the velocity of corner ij in the x and y direction respec- tively. However, this equation has a singularity when x˙ ij equals zero, therefore in Matlab/Simulink the four quadrant arctangent (atan2) is used, because this function 1 returns ± 2 π when x˙ ij equals zero. Note that side-slip of the tyre is neglected here. The 4ws4wd vehicle must be capable of driving trajectories with high accelerations. Therefore it is very important to include load transfer in the control design. To do so, the mass of every unicycle is a function of the longitudinal acceleration u˙ and the lateral acceleration v˙ of the reference trajectory. When it is assumed that the mass is evenly distributed across the vehicle, the static mass msij of unicycle ij is:

1 m = m (2.3) sij 4

with total vehicle mass m. The total load transfer ∆mlong due to longitudinal accelera- tion u˙ is:

mh ∆ = u˙ (2.4) mlong Lg

with height h of the cog and gravitational constant g . The total load transfer ∆mlat due to lateral acceleration v˙ is:

mh ∆ = v˙ (2.5) mlat W g

7 2. Literature survey

Using (2.3), (2.4) and (2.5), the mass mij of unicycle ij becomes:

1 mh mh m = m − u˙ − v˙ fl 4 4Lg 4W g 1 mh mh mfr = m − u˙ + v˙ 4 4Lg 4W g (2.6) 1 mh mh m = m + u˙ − v˙ rl 4 4Lg 4W g 1 mh mh m = m + u˙ + v˙ rr 4 4Lg 4W g

Note that it is assumed that the mass mij is a point mass, located at the center of the unicycle. So in case of the Moving Base, where the wheels are located at the corners of the vehicle, the mass is shifted outwards. This results in a larger moment of iner- tia around the vertical axis. Therefore the feedforward term of the controller will be too large in case of a pure rotational acceleration ψ¨. This effect is however neglected, because ψ¨ is small compared to u˙ and v˙.

2.2 Unicycle models

In this section an overview will be given of the unicycle models found in the litera- ture. All known models have been developed from a robotics point of view, because unicycles are a concept only used in the field of robotics. A unicycle is the most simple Wheeled Mobile Robot (WMR), therefore a lot of literature is available about modeling and controlling a unicycle. A unicycle is described in two different ways; two indepen- dently driven wheels on a common axle, or one wheel that can be driven and steered. Here, the second description is used, because this corresponds with the real situation on a 4ws4wd vehicle.

A

2

B

Figure 2.3: Parking problem for a normal car.

According to the theory of robotics, WMR’s are characterized by kinematic con- straints. There are two kinds of constraints; position and velocity constraints, which describe the limitations of the position or the movability, respectively. WMR’s have ve- locity constraints, also called kinematic constraints that are not integrable [6]. Because of these constraints, WMR’s are nonholonomic systems, which means that they have a restricted mobility. Therefore, standard planning and control algorithms for holo- nomic systems cannot be used. A common example, used to explain this property, is a normal front wheel steered car. A car can reach every position in the horizontal plane,

8 2.2 Unicycle models but cannot move sideways. Figure 2.3 illustrates this; a car cannot move from A to B using path 1. Instead of path 1 it has to use a different path, for example path 2. The theory of robotics provides structured solutions to model a WMR [6]. The models of a WMR can be split up in models without tyre slip and models including tyre slip. In the fist subsection, unicycle models without tyre slip are explained and in the second section a unicycle model including tyre slip is discussed.

2.2.1 Unicycle models without tyre slip

In most WMR models the tyre slip is neglected. It is assumed that, because of the low accelerations, the necessary tyre forces are very small, so the slip is also very small. As a result of this assumption, every tyre has two constraints. The first constraint is the slip constraint, which states that the tyre cannot move in lateral direction. The second constraint is the roll constraint, which states that the forward velocity of a wheel is equal to the rotational velocity of a wheel multiplied by the wheel radius. All WMR models are based on these motion constraints. According to [6] there are four kinds of (state space) models of a WMR: 1. Posture kinematic model. 2. Configuration kinematic model. 3. Configuration dynamical model. 4. Posture dynamical model. Now these four models will be discussed for the unicycle case.

Posture kinematic model

The posture kinematic model is the most simple model. It describes the movement of the robot in the horizontal plane. The possible movements are determined by calculat- ing the null-space of the slip constraint matrix.

v Ts u ψ Td y u R φ

x

Figure 2.4: Unicycle model, showing a top-view (left) and a side-view (right).

First, two coordinate systems have to be defined; a global coordinate system and a local, body fixed coordinate system, see figure 2.4, where a unicycle model is depicted. The relation between the global velocities ξ˙, and the local velocities u, v and ψ, is:  u   v  = R(ψ)ξ˙ (2.7) ψ with longitudinal velocity u, lateral velocity v, heading angle ψ and posture coordinate ξ, which is equal to:  x  ξ =  y  (2.8) ψ

9 2. Literature survey and rotation matrix R(ψ), which is equal to:  cos ψ sin ψ 0  R(ψ) =  − sin ψ cos ψ 0  (2.9) 0 0 1

Now the slip constraint can be written as v = [0 − 1 0] R(ψ)ξ˙ =x ˙ sin(ψ) − y˙ cos(ψ) = 0 (2.10) and the roll constraint can be written as u − Rφ˙ = [1 0 0] R(ψ)ξ˙ − Rφ˙ =x ˙ cos(ψ) +y ˙ sin(ψ) − Rφ˙ = 0 (2.11) with wheel radius R and wheel rotational velocity φ˙. The slip constraint is the most im- portant constraint for the posture kinematic model, because this constraint describes the limitations of the movement of the robot in the horizontal plane. The slip con- straint is now written as: CR(ψ)ξ˙ = 0 (2.12) with slip constraint matrix C: C = [0 − 1 0] (2.13)

Finally the matrix Σ is defined, where the columns form a basis of the null-space of C, so CΣ = 0. Using (2.12), this can be written as: R(ψ)ξ˙ = Σ η (2.14) so ξ˙ = RT (ψ) Σ η (2.15) where η is an input vector with generalized velocities. A possible value for Σ is:  1 0  Σ =  0 0  (2.16) 0 1

Substituting (2.9) and (2.16) into (2.15) yields the posture dynamic model:

x˙ = cos(ψ)η1

y˙ = sin(ψ)η1 (2.17) ˙ ψ = η2 ˙ Herein represents η1 the forward velocity u and η2 represents the rotational velocity ψ around the vertical axis. Using this model, three important properties of a WMR can be derived [6]: 1. Degree of mobility

The degree of mobility δm is defined as:

δm = dim(N[C]) = 3 − rank[C] (2.18) where N[C] represents the null-space of C. The degree of mobility can be de- scribed as the number of degrees of freedom that can be manipulated without re-orienting the (conventional) steering wheels. For the unicycle the degree of mobility is equal to two, because the unicycle is regarded as a fixed wheel whose ’body’ can be steered.

10 2.2 Unicycle models

2. Degree of steerability

The degree of steerability δs is defined as:

δs = rank[C(β)] (2.19)

where C(β) is the part of C constructed from the constraints for the (conven- tional) steering wheels, which have steering angle β. The degree of steerability is equal to the number of independent conventional steering wheels. The degree of steerability is zero for a unicycle, because the unicycle does not have any steering wheels.

3. Maneuverability

The maneuverability δM is defined as:

δM = δm + δs (2.20)

The degree of maneuverability is equal to the number of spatial degrees of free- dom that can be manipulated from the inputs of the robot. For a unicycle δM is equal to two.

A WMR can be characterized by the first two properties, therefore a unicycle can be referred as a WMR of type (δm,δs) = (2,0). The posture kinematic model is the most simple model and therefore commonly used. This model is for example derived in [10], [20] and [38]. And many controllers for a unicycle type WMR are designed using this model, see [15], [18], [21], [23], [25] and [37]. This model can also be rewritten in polar coordinates [8], [40] or written in chained form [16], [24]. In [11] this model is extended with kinematic disturbances.

Conguration kinematic model

The configuration kinematic model is the posture kinematic model extended with the description of the wheel rotation variables. So, in case of a unicycle, the posture kine- matic model is extended with an equation describing the angle φ of the wheel. This extra equation is equal to the roll constraint, which is Rφ˙ −u = 0, with forward velocity u. The configuration kinematic model becomes:

x˙ = cos(ψ)η1

y˙ = sin(ψ)η1 ˙ (2.21) ψ = η2 η φ˙ = − 1 R Now all the configuration coordinates x, y, ψ and φ are known. This model can be related to the standard theory of nonholonomic mechanical systems [6] and is also derived in [10] and [38].

Conguration dynamic model

The inputs of the configuration kinematic model are velocities. However, in reality this are torques of the motors. The coupling between all configuration coordinates, gener- alized velocities and torques is made in the configuration dynamic model. Therefore two differential equations, describing the dynamics between the torque inputs and the configuration coordinates, are added. These equations are formulated using the La- grange formalism. With drive torque Td, steer torque Ts, moment of inertia Iψ around

11 2. Literature survey

the vertical axis and moment of inertia Iω around the wheel axis, this model becomes:

x˙ = cos(ψ)η1

y˙ = sin(ψ)η1 ˙ ψ = η2 η1 φ˙ = − (2.22) R RTd η˙1 = 2 mR + Iω Ts η˙2 = Iψ

This model describes the relations between the configuration coordinates and the in- puts, and is for example derived in [6], [10] and [38].

Posture dynamic model

A more common way to formulate the dynamic model is the posture dynamic model. The configuration dynamic model can be rewritten by defining a new input vector v. Note that in general, this is a static state feedback, which linearizes the relation between the inputs vi and the velocities ηi. After choosing only the posture coordinates, this results in the posture dynamic model:

x˙ = cos(ψ)η1

y˙ = sin(ψ)η1 ˙ (2.23) ψ = η2

η˙1 = v1

η˙2 = v2

with new inputs v1 and v2. This model is for example derived in [7], [10], [20], [38] and [39]. And in [15], [27], [28], [32], and [33], it is used to design a controller.

2.2.2 Unicycle models including tyre slip

As explained in the previous section, the WMR’s models are based on motion con- straints. In reality, these constraints are violated due to tyre slip, therefore the models have to be reformulated to include tyre slip. In [9] a unicycle model including (linear) tyre slip is derived. This model consists of a standard configuration dynamic model, extended with a part describing the ’slip’ dynamics. The new ’slip’ variable is multiplied by a small factor ε, so that this variable can change fast without having a lot of influence on the other slow variables. This model is formulated in a singular perturbation form, which is a standard form for a system with slow and fast dynamics. With lateral slip stiffness C, longitudinal slip

12 2.3 Theory of input-output linearization stiffness K and absolute velocity V of the wheel center, this model becomes:

x˙ = cos(ψ)η1 + sin(ψ)εµ1 + cos(ψ)εµ2

y˙ = sin(ψ)η1 − cos(ψ)εµ1 + sin(ψ)εµ2 ˙ ψ = η2 η φ˙ = − 1 + Rεµ R 2 2 2 εµ1η2R TdR ε(m − Iω)R Kµ2 η˙1 = − 2 + 2 + (2.24) R + 1 (R + 1)Iω V mIω Ts η˙2 = Iψ εCµ εµ˙ = η η + εη µ + 1 1 1 2 2 2 V m 2 εµ1η2 RTd ε(mR + Iω)Kµ2 εµ˙ 2 = − 2 − 2 + R + 1 (R + 1)Iω V mIω

Herein represents µ1 and µ2 the lateral and longitudinal wheel slip respectively. Models of WMR’s including tyre slip are not so often used, because they are more difficult and the advantages are not always very clear, e.g. [38]. This singular perturba- tion form is for example used in [19] and [22].

2.3 Theory of input-output linearization

To design a controller for a unicycle, input-output linearization is a common used tech- nique. The big advantage is that, after input-output linearization is applied, a standard linear controller can be used. The theory of input-output linearization is therefore ex- plained in this section, using [34] and [35]. First, the concept of the relative degree is explained. After that, the system can be written in normal form and using this, the feedback law can be determined. Finally, the necessary and sufficient conditions to be able to apply input-output linearization, are summarized.

2.3.1 Relative degree

The relative degree ri is defined as the number of differentiations of the output yi, required for at least one of the inputs to appear [35]. Using the relative degree, the order of the input-output dynamics is determined. This can be explained using the following (SISO) system: ˙q = f(q) + g(q)u (2.25) y = h(q)

Assume that the relative degree r is equal to two. The first time derivative of y is: ∂h ∂h ∂h y˙ = ˙q = f(q) + g(q)u = L h(q) + L h(q)u (2.26) ∂q ∂q ∂q f g

Herein represents Lf h(q) the Lie derivative of h(q) with respect to f(q), so ∂h(q) L h(q) = f(q) (2.27) f ∂q With a relative degree larger than one, the input u is not visible after one differentiation of the output. This means the last term is equal to zero, so 0 (2.28) Lg h(q)u = LgLf h(q)u = 0

13 2. Literature survey

The second derivative of the output is:

∂(L h(q)) y¨ = f ˙q = L L h(q) + L L h(q)u (2.29) ∂q f f g f

With a relative degree of two, the input u is visible after two differentiations, so

LgLf h(q)u 6= 0 (2.30)

With new coordinates zl1 = y and zl2 = Lf h(q), the input-output dynamics of this system can be written as:

z˙ = z l1 l2 (2.31)

z˙l2 = Lf Lf h(q) + LgLf h(q)u

So, with a relative degree of two, the input-output dynamics can be described by a second-order system. These input-output dynamics can be linearized with the follow- ing feedback law:

−1 u = (LgLf h(q)) (ν − Lf Lf h(q)) (2.32) and become: z˙ = z l1 l2 (2.33)

z˙l2 = ν with new input ν.

The relative degree of a MIMO system is obtained similarly to the SISO case, by differentiating the outputs until one of the inputs appear. Consider a MIMO system, with number of outputs m equal to the number of inputs, i.e. a square system. The output yi of a square MIMO system, has relative degree ri if

k (2.34) Lgj Lf hi(q) = 0 0 5 k 5 ri − 2

k for j = 1, ...m, with at least one of the Lgj Lf hi(q) 6= 0 for k = ri − 1. Differentiat- ing each element of y until one of the inputs appears, results in m equations. These equations can be written as:

 (r1)    y1 u1  ...  ... (2.35)   = b(q) + H(q)   (rm) ym um

(r1) with y1 representing the r1-th time derivative of y1. Here, b(q) is defined as:

 r1  Lf h1(q) b(q) =  ...  (2.36) rm Lf hm(q) and H(q), which is called the decoupling matrix, is defined as:

 r1−1 r1−1  Lg1 Lf h1(q) ... Lgm Lf h1(q) H(q) =  ......  (2.37) rm−1 rm−1 Lg1 Lf hm(q) ... Lgm Lf hm(q)

14 2.3 Theory of input-output linearization

2.3.2 Normal form

A square MIMO system, with n number of states, m number of outputs and total relative degree r = r1 + ... + ri < n, can be written in normal form by choosing new coordinates zl and znl [34]. The coordinates zl describe the linearizable subsystem, which is defined as:

1 0 1 r1−1 z = L h1(q), ..., z = L h1(q), l1 f lr1 f : (2.38) m 0 m rm−1 z = L hm(q), ..., z = L hm(q), l1 f lrm f

To complete this coordinate transformation n − r more coordinates znl have to be chosen. The coordinates znl describe the nonlinearized subsystem and have to be chosen in such way that the Jacobian J has full rank, with J defined as

∂z J = (2.39) ∂q with

 z1  l1  ...   z1   lr   1   :  z =   (2.40)  zm   l1   ...   zm   lrm  znl

When J has full rank, the mapping from q into z is a diffeomorphism, meaning that the mapping is differentiable and has a differentiable inverse. Note that when n equals r, there is no nonlinear subsystem, meaning that the system is fully linearizable. This is called full-state linearization or feedback linearization. Now the system can be written in normal form:

z˙1 = z1 l1 l2 ... = ... 1 z˙ = b1(q) + h1(q)u lr1 : (2.41) z˙m = zm l1 l2 ... = ... m z˙ = bm(q) + hm(q)u lrm ˙znl = r(q) + P(q)u

This system can be input-output linearized with the following feedback law:

 −1   h1(q) ν1 − b1(q) −1 u =  :   :  = H (q)(ν − b(q)) (2.42) hm(q) νm − bm(q) with new input ν. H is called the decoupling matrix and has to be invertible. After calculating the linearizing feedback, the internal dynamics have to be studied, because these dynamics have to be stable. The internal dynamics are the remaining dynamics when following a reference trajectory.

15 2. Literature survey

2.3.3 Necessary conditions for input-output linearization

To make sure input output linearization is possible, the following necessary and suffi- cient conditions have to be checked: 1. First of all, the system has to be square, so the number of outputs has to be equal to the number of inputs, otherwise there is no decoupling possible. 2. Second, the relative degrees have to be well defined, which means that a relative degree is equal for all values of q, otherwise there exist singular points. 3. Third, the decoupling matrix has to be invertible to be able to calculate the feed- back law. 4. Finally, the internal dynamics have to checked, because these dynamics have to be stable.

2.4 Summary

In this chapter an overview is provided of the literature that constitutes the basis of this report. First, three different force allocation strategies for an overactuated vehi- cle are described. From this it is concluded that the so-called multicycle approach is the preferred concept for this control problem, because of its general and structured approach. Second, all known unicycle models are described in detail, because the multicycle controller consists of multiple unicycle controllers. It is shown that there is only one known unicycle model including tyre slip. However, this model is more difficult and relaxation effects or non-linear tyre behaviour are not included. Finally, the theory of input-output linearization is explained for a square MIMO system. Using this theory, a unicycle controller is designed in the following chapter.

16 Chapter 3

Modeling and control design

In the previous chapter it is shown that the preferred concept, to design a controller for a high performance overactuated vehicle, is the so-called multicycle approach. The basis of the multicycle controller is a unicycle controller. Because of the shortcoming of the existing unicycle controllers, a new unicycle controller is designed in this chapter. To do so, a new unicycle model is derived in the first section. Using this model a uni- cycle controller is designed in the second section. Finally, this chapter is summarized in section three.

3.1 Unicycle model

In the literature survey it is shown that there are no unicycle models found with a non-linear tyre model or including relaxation effects. This is because the concept of a unicycle is only used in the field of robotics. In this field, tyre behaviour is often negligible, because of the low accelerations. The basis of all WMR models are the (nonholonomic) constraints of the tyres. Because these constraints are violated due to tyre slip, it is difficult to include tyre behaviour. In [38] a unicycle model including a linear tyre model is used. This model can however not be extended with non-linear tyre behaviour. In the field of vehicle dynamics, tyre behaviour is very important and therefore a lot of research is done on this subject. According to the theory of vehicle dynamics, a tyre can be seen as a (non-linear) friction element, which generates a force as a function of the slip between the tyre and the ground [26]. Because tyres are not described by constraints, a linear, or even a non-linear tyre model with relaxation effects, can be implemented into the equations of motion. Therefore, in this section a new unicycle model is derived from the vehicle dynam- ics point of view. In the first subsection, the general equations of motion of a two- dimensional body are derived. In the second subsection, these equations of motion are used to derive a unicycle model with a linear tyre model, including relaxation effects.

3.1.1 General equations of motion

The equations of motion are derived in the body fixed axis system, also known as the ISO axis system, see [26]. In figure 3.1 a two-dimensional body is depicted, showing the global position (x,y), heading angle ψ, longitudinal velocity u, lateral velocity v, longitudinal force Flong, lateral force Flat and steer torque Ts. Using Newton’s second law, the equations of motion expressed in the global axis

17 3. Modeling and control design

v

F u lat Ts Flong ψ y

x

Figure 3.1: Two-dimensional body, showing the global and body-xed axis system.

system are:

mx¨ = Flong cos(ψ) − Flat sin(ψ) (3.1)

my¨ = Flong sin(ψ) + Flat cos(ψ) (3.2) ¨ Iψψ = Ts (3.3) with acceleration x¨ in x-direction, acceleration y¨ in y-direction, mass m and moment of inertia Iψ around the vertical axis. Equations (3.1) and (3.2) can be written as:

 x¨   F  m = R long (3.4) y¨ Flat with  cos(ψ) − sin(ψ)  R = (3.5) sin(ψ) cos(ψ) so  F   x¨  long = m RT (3.6) Flat y¨

Now the accelerations x¨ and y¨ can be expressed in the body-fixed axis system. The velocities x˙ and y˙ expressed in the body-fixed axis system are:

 x˙   u cos(ψ) − v sin(ψ)   u  = = R (3.7) y˙ u sin(ψ) + v cos(ψ) v

Calculating the time derivative of (3.7), yields the accelerations:

 x¨   u˙   − sin(ψ) − cos(ψ)   u  = R + ψ˙ (3.8) y¨ v˙ cos(ψ) − sin(ψ) v

Substituting (3.8) into (3.6) yields:

 F   u˙   − sin(ψ) − cos(ψ)   u  long = m { + ψ˙ RT } Flat v˙ cos(ψ) − sin(ψ) v  u˙   0 −1   u  = m { + ψ˙ } v˙ 1 0 v  u˙ − vψ˙  = m (3.9) v˙ + uψ˙

18 3.1 Unicycle model

So the equations of motion of a two-dimensional body, expressed in the body fixed axis system, are: ˙ m(u ˙ − vψ) = Flong (3.10) ˙ m(v ˙ + uψ) = Flat (3.11) ¨ Iψψ = Ts (3.12)

3.1.2 Equations of motion of a unicycle

Now a unicycle model is derived using the equations of motion derived in the previous subsection. In figure 3.2 a schematic overview is given of the unicycle, which is here a tyre attached to a body, which can be driven and steered. In this figure the side slip angle α, total velocity V , wheel rotational velocity ω and effective wheel radius R are shown. Note that it is assumed that the unicycle is always driving forwards.

V

v α Ts u Flat Td Flong R y u ω Flong x

Figure 3.2: Unicycle model, top-view (left) and side-view (right).

The differential equation describing the longitudinal velocity u can be derived from (3.10): F u˙ = long + vψ˙ (3.13) m

The longitudinal force Flong is generated by the tyre. With a linear tyre model, Flong is a linear function of the longitudinal wheel slip κ:

Flong = K(Fz) κ (3.14) with longitudinal slip stiffness K(Fz). Note that combined slip (slip in longitudinal and lateral direction) is neglected here. It is assumed that K(Fz) is a linear proportional function of the vertical load Fz: F K(F ) = K z = K m (3.15) z n g n with gravitational constant g and constant longitudinal slip stiffness Kn, which can be regarded as the normalized longitudinal slip stiffness according to (3.15). Note that Fz is regarded as constant, so m is constant in the following equations. The longitudinal force Flong becomes:

Flong = Knm κ (3.16)

Substituting (3.16) into (3.13) yields: ˙ u˙ = Knκ + vψ (3.17)

19 3. Modeling and control design

The longitudinal wheel slip κ is defined as the difference between the forward velocity u and the forward velocity Rω of the tyre in the contact point, divided by u: Rω − u κ = (3.18) u with effective rolling radius R and wheel rotational velocity ω. A disadvantage of this definition of κ is that (3.18) has a singularity at u = 0. This problem is solved by rewriting this definition by including relaxation effects, using [29]. It is well known that the force response of a tyre shows a lag in time, which is a result of the carcass compliance. For more information about this phenomenon, see [26]. This lag is related to the traveled distance σ, which is typically one half revolution of the tyre. The distance σ is often referred to as relaxation length. To model this effect, the longitudinal wheel slip κ is described by the following differential equation: σ Rω − u κ κ˙ + κ = (3.19) u u with relaxation length σκ in the longitudinal direction. Note that, in this differential σκ equation, the time constant is u , which is equal to the time it takes to travel the dis- tance σκ. Rewriting (3.19) yields the non-linear differential equation describing κ: Rω − u − uκ κ˙ = (3.20) σκ which has no singularities for σκ 6= 0. The dynamics between ω and the drive torque Td can be derived by determination of the equilibrium of moments around the wheel axis, see figure 3.2:

Iωω˙ = Td − RFlong (3.21)

Substituting (3.16) into (3.21) yields: T − RK mκ ω˙ = d n (3.22) Iω The differential equation describing the lateral velocity v can be derived from (3.11):

F v˙ = lat − uψ˙ (3.23) m

The lateral force Flat is generated by the tyre. Similar to the longitudinal tyre model, the lateral tyre force is a linear function of the side slip angle α:

Flat = −Cnm α (3.24) with normalized lateral slip stiffness Cn. Substituting (3.24) into (3.11) yields the differ- ential equation describing the lateral velocity v: ˙ v˙ = −Cnα − uψ (3.25)

The lateral wheel slip α is defined as the angle between the forward velocity u and the total velocity V (see figure 3.2): v α = arctan( ) (3.26) u For small values of α, this can be written as: v α = (3.27) u 20 3.1 Unicycle model

Because of that, the relaxation effect in lateral direction can be included similarly to that in longitudinal direction. The lateral wheel slip α is then described by: σ v α α˙ + α = (3.28) u u with relaxation length σα in the lateral direction. In this way the singularity at u = 0 is prevented. This can be written as:

v − uα α˙ = (3.29) σα

Now all necessary equations are derived; the complete unicycle model, including a linear tyre model with relaxation length is:

x˙ = u cos ψ − v sin ψ (3.30) ˙ u˙ = Knκ + vψ (3.31) Rω − u − uκ κ˙ = (3.32) σκ T − RK mκ ω˙ = d n (3.33) Iω y˙ = u sin ψ + v cos ψ (3.34) ˙ v˙ = −Cnα − uψ (3.35) v − uα α˙ = (3.36) σα T ψ¨ = s (3.37) Iψ

The inputs of this model are the drive torque Td and the steer torque Ts, which corresponds to the real situation on the MB. The control objective is to control the position and the heading of the unicycle. So the outputs are the position (x, y), and the heading ψ. Note that the self-aligning moment of the tyre is neglected here. Now, the system can be written as:

˙q = f(q) + g(q)u (3.38)

y = ho(q) (3.39) with state q:

 x   u     κ     ω    q =  y  (3.40)    v     α     ψ  ψ˙ inputs u:

 T  u = d (3.41) Ts

21 3. Modeling and control design and  u cos ψ − v sin ψ   K κ + vψ˙   n   Rω−u−uκ   σκ   − RKnmκ   Iω    (3.42) f(q) =  u sin ψ + v cos ψ   ˙   −Cnα − uψ   v−uα   σ   α   ψ˙  0

 0 0   0 0     0 0   1   I 0     ω  g(q) = g1(q) g2(q) =  0 0  (3.43)    0 0     0 0     0 0  0 1 Iψ

 x  ho(q) =  y  (3.44) ψ

3.2 Unicycle controller

In this section a controller is designed for the unicycle model derived in the previous section. To design a controller for a unicycle, input-output linearization is a common used technique. The advantage is that, after input-output linearization is applied, a standard linear controller can be used. Therefore, input-output linearization, as ex- plained in section 2.3, will be used to design a unicycle controller in this section.

3.2.1 Input-output linearization of the original model

The first necessary condition is that the system has to be square, i.e. the number of inputs equals the number of outputs. The unicycle model is not square, because there are two inputs; Td and Ts and three outputs; x, y and ψ. To make this system square, the number of outputs have to be reduced. Therefore a new output y is defined, which is a function of the original outputs:     h1(q) x + lcp cos ψ y = hs(q) = = (3.45) h2(q) y + lcp sin ψ with lcp larger than zero [10]. This choice for the output function hs(q) can be ex- plained from a physical point of view: instead of controlling the position and the head- ing of the center of gravity, the position of a (virtual) control point (cp) is controlled. This control point is at distance lcp from the center of gravity, see figure 3.3. This will guarantee that not only the position (x,y), but also the orientation ψ converge to their reference values as long as the forward velocity is non-zero.

22 3.2 Unicycle controller

lcp

cp ψ y

x

Figure 3.3: Top view of the unicycle model, showing the control point.

The second condition is that both relative degrees are well defined for all values of q. To check this condition, the relative degrees r1 and r2 of output h1(q) and h2(q), respectively, are determined:

δh (q) L L0 h (q) = 1 g(q) = [0, 0] (3.46) g f 1 δq

δh (q) L L1 h (q) = L 1 f(q) g f 1 g δq ˙ = Lg {u cos ψ − v sin ψ − ψlcp sin ψ} l = [0, − sin ψ cp ] (3.47) Iψ and δh (q) L L0 h (q) = 2 g(q) = [0, 0] (3.48) g f 2 δq

δh (q) L L1 h (q) = L 2 f(q) g f 2 g δq ˙ = Lg {u sin ψ + v cos ψ + ψlcp cos ψ} l = [0, cos ψ cp ] (3.49) Iψ

1 So r1 is equal to two, except for ψ = 0 and r2 is equal to two, except for ψ = 2 π. This means that both relative degrees are not well defined for all values of q, so the second condition is not satisfied. The decoupling matrix H(q) is:

" l #  L L h (x) L L h (x)  0 − sin ψ cp g1 f 1 g2 f 1 Iψ (3.50) H(q) = = lcp Lg1 Lf h2(x) Lg2 Lf h2(x) 0 cos ψ Iψ which is not invertible, so the third condition is also not satisfied. This means that input-output linearization is not possible for this system.

3.2.2 Input-output linearization of the reduced model

The decoupling matrix H(q) of the original model is singular, because after two differ- entiations only the second input Ts is visible, whereas the first input Td is only visible after four differentiations. To make sure that input-output linearization is possible, both inputs should be visible after r differentiations of the outputs.

23 3. Modeling and control design

This can be realized by redefining the second input Ts, so that this input is also vis- ible after four differentiations. With new input T¨s, which is the second time derivative of the original input Ts, two states are added to the system and both relative degrees are equal to four. The original input can be obtained by integration of this new input, so the control law contains a double integrator. This technique is known as dynamic ex- tension [35]. When feedback linearization is applied, this results in a high order system with multiple poles in zero, which is therefore hard to control. A different approach is to reduce the model, instead of extending the model. By using κ as an input instead of Td, both inputs are visible after two differentiations. When input-output linearization is applied, this results in a linear second-order system, which can be easily controlled by a regular controller. Because the real input of the unicycle is Td, an additional controller is needed, which controls κ using Td. This κ- controller, which is assumed to be infinitely fast, is designed later on. First a position controller for the reduced unicycle model is designed. The reduced model can be written as:

˙q = f(q) + g(q)u (3.51)

y = hs(q) (3.52) with  x   u     y    q =  v  (3.53)    α     ψ  ψ˙

 κ  u = ref (3.54) Ts

 u cos ψ − v sin ψ  ˙  vψ     u sin ψ + v cos ψ   ˙  f(q) =  −Cnα − uψ  (3.55)  v−uα     σα   ψ˙  0

 0 0   Kn 0     0 0      g(q) = g1(q) g2(q) =  0 0  (3.56)    0 0     0 0  0 1 Iψ

    h1(q) x + lcp cos ψ hs(q) = = (3.57) h2(q) y + lcp sin ψ

24 3.2 Unicycle controller

Note that the first input of the reduced model is κref , which is the reference longitudi- nal slip for the κ-controller designed in section 3.2.4. By calculating both relative degrees, the decoupling matrix can be determined:

δh (q) L L0 h (q) = 1 g(q) = [0, 0] (3.58) g f 1 δq

δh (q) L L1 h (q) = L 1 f(q) g f 1 g δq ˙ = Lg {u cos ψ − v sin ψ − ψlcp sin ψ}

lcp = [cos ψKn, − sin ψ ] (3.59) Iψ

δh (q) L L0 h (q) = 2 g(q) = [0, 0] (3.60) g f 2 δq

δh (q) L L1 h (q) = L 2 f(q) g f 2 g δq ˙ = Lg {u sin ψ + v cos ψ + ψlcp cos ψ}

lcp = [sin ψKn, cos ψ ] (3.61) Iψ

So both relative degrees are equal to two and well defined for all values of q. The decoupling matrix becomes

" lcp #  L L h (x) L L h (x)  cos ψKn − sin ψ g1 f 1 g2 f 1 Iψ (3.62) H(q) = = lcp Lg1 Lf h2(x) Lg2 Lf h2(x) sin ψKn cos ψ Iψ

The determinant D of H(q) is: K l K l K l D = cos2 ψ n cp + sin2 ψ n cp = n cp (3.63) Iψ Iψ Iψ

So the decoupling matrix is invertible as long as lcp is not equal to zero. This require- ment can also be explained from a physical point of view: the orientation angle ψ would be undefined if the control point is located at the center of gravity. The reduced model consists of seven states and both relative degrees are equal to two, therefore the normal form of this model can be written as: (3.64) ˙zl1 = zl2 (3.65) ˙zl2 = b(q) + H(q)u

˙znl = r(q) + P(q)u (3.66)

The linearizable subsystem becomes:     h1(q) x + lcp cos ψ (3.67) zl1 = = h2(q) y + lcp sin ψ

 L h (q)   u cos ψ − v sin ψ − ψl˙ sin ψ  z = f 1 = cp (3.68) l2 ˙ Lf h2(q) u sin ψ + v cos ψ + ψlcp cos ψ

25 3. Modeling and control design

 L2 h (q)    f 1 u1 (3.69) ˙zl2 = 2 + H(q) Lf h2(q) u2 with δ L2 h (q) = {u cos ψ − v sin ψ − ψl˙ sin ψ} f(q) f 1 δq cp ˙ ˙ ˙ = cos ψ vψ + sin ψCnα − ψ cos ψ(v + ψe) ˙ 2 = sin ψCnα − cos ψ ψ lcp (3.70)

δ L2 h (q) = {u sin ψ + v cos ψ + ψl˙ cos ψ} f(q) f 2 δq cp ˙ ˙ ˙ = sin ψ vψ − cos ψCnα − ψ sin ψ(v + ψlcp) ˙ 2 = − cos ψCnα − sin ψ ψ lcp (3.71) and

" lcp # cos ψKn − sin ψ Iψ (3.72) H(q) = lcp sin ψKn cos ψ Iψ

Note that zl1 and zl2 represent the position and velocity of the control point respectively. Because the number of states is equal to seven and the total relative degree is equal to four, the order of the nonlinearized subsystem znl is equal to three. A possible choice ˙ T for znl is [v α ψ] , because with these coordinates the Jacobian J has full rank, with J defined as: ∂z J = (3.73) ∂q The nonlinearized subsystem equals:

z˙nl1 = −Cnznl2 − uznl3 1 u z˙nl2 = znl1 − znl2 (3.74) σα σα u2 z˙nl3 = Iψ Using (3.68), u can be written as: q 2 2 2 ˙ 2 2 ˙ (3.75) u = z + z − v − ψ lcp − 2vψlcp l21 l22 ˙ Substituting znl1 and znl3 for v and ψ respectively, yields: q 2 2 2 2 2 (3.76) u = z + z − z − z lcp − 2znl1 znl3 lcp l21 l22 nl1 nl3

The nonlinearized subsystem, expressed in z, becomes:

q 2 2 2 2 2 z˙nl1 = −Cnznl2 − znl3 z + z − z − z lcp − 2znl1 znl3 lcp l21 l22 nl1 nl3 1 z q z˙ = z − nl2 z2 + z2 − z2 − z2 l2 − 2z z l (3.77) nl2 nl1 l2 l2 nl1 nl3 cp nl1 nl3 cp σα σα 1 2 u2 z˙nl3 = Iψ

26 3.2 Unicycle controller

The linearizable subsystem, described by (3.64) and (3.65), can be feedback lin- earized with the following feedback law: u = H−1(q)(ν − b(q)) (3.78) with " cos ψ 1 sin ψ 1 # H−1(q) = Kn Kn (3.79) − sin ψ Iψ cos ψ Iψ lcp lcp This yields: 1 1 κref = [cos ψ , sin ψ ][ν − B(q)] Kn Kn 1 ˙ 2 = {cos ψ ν1 + sin ψ ν2 − cos ψ (sin ψ Cnα − cos ψ ψ lcp) Kn ˙ 2 − sin ψ (− cos ψCnα − sin ψ ψ lcp)} 1 ˙ 2 = {cos ψ ν1 + sin ψ ν2 + ψ lcp} (3.80) Kn and

Iψ Iψ Ts = [− sin ψ , cos ψ ][ν − B(q)] lcp lcp Iψ ˙ 2 = {− sin ψ ν1 + cos ψ ν2 + sin ψ (sin ψ Cnα − cos ψ ψ lcp) lcp ˙ 2 − cos ψ (− cos ψCnα − sin ψ ψ lcp)}

Iψ = {− sin ψ ν1 + cos ψ ν2 + Cnα} (3.81) lcp With this feedback law the system can be written as: (3.82) ˙zl1 = zl2 (3.83) ˙zl2 = ν −1 ˙znl = r(q) + P(q) H (q)(ν − b(q)) (3.84) with decoupled and linearized input-output dynamics. This system can be controlled by a regular PD controller including feedforward: (3.85) ν = ˙zl2ref + Kv(zl2ref − zl2 ) + Kp(zl1ref − zl1 ) where Kp and Kv are diagonal 2 × 2 matrices containing the proportional and differ- ential gains respectively. The reference position zl1ref , reference velocity zl2ref and reference acceleration ˙zl2ref of the control point can be calculated as follows:   xref + lcp cos ψref (3.86) zl1ref = yref + lcp sin ψref

 x˙ − ψ˙ l sin ψ  z = ref ref cp ref (3.87) l2ref ˙ y˙ref + ψref lcp cos ψref

" # x¨ − ψ¨ l sin ψ − ψ˙ 2 l cos ψ ˙z = ref ref cp ref ref cp ref (3.88) l2ref ¨ ˙ 2 y¨ref + ψref lcp cos ψref − ψref lcp sin ψref ˙ ¨ Note that x˙ ref , y˙ref , ψref , x¨ref , y¨ref and ψref can be determined by calculating the time derivatives of (2.1) and (2.2).

27 3. Modeling and control design

3.2.3 Internal dynamics

The last necessary condition for input-output linearization is that the internal dynam- ics have to be stable. When the unicycle is driving along a straight line with a constant forward velocity u and initial position (x0 y0) of the control point, the linearizable sub- system zl becomes:   x0 +xt ˙ zl1 = y0 +yt ˙  x˙  ˙z = (3.89) l1 y˙     0 ν1 ˙zl2 = = 0 ν2

So the inputs ν1 and ν2 are equal to zero. This can also be explained from a physical point of view: when the unicycle is driving along a straight line with a constant forward velocity, no drive and steer torque are needed. Note that friction and are not included in the model. The nonlinearized subsystem znl becomes:

z˙nl1 = −Cnznl2 − uznl3 1 u z˙ = z − z nl2 nl1 nl2 (3.90) σα σα 1 Cn z˙nl3 = (− sin ψ ν1 + cos ψ ν2 + Cnznl2 ) = znl2 lcp lcp

Note that the original state u is used instead of expression (3.76). Because ν1 and ν2 are equal to zero and that the forward velocity u is constant, the nonlinearized subsystem becomes a linear system. The system matrix A of this subsystem becomes:

 0 −Cn −u  1 − u 0 (3.91) A =  σα σα  0 Cn 0 lcp The characteristic equation of this system equals: u C C u λ3 + λ2 + λ n + n = 0 (3.92) σα σα lcpσα Using the Routh-Hurwitz criteria, the stability of this system can be proven. For a third-order system the following two criteria have to be satisfied: 1. all coefficients of the characteristic equation have to be positive

Cnu Cnu 2. 2 − > 0 σα lcpσα The first criterion is satisfied when the forward velocity u is larger than zero. This can be understood from a physical point of view: when the unicycle is standing still, the heading angle ψ does not converge to the reference value. The second criterion is satisfied when lcp is larger than σα. This requirement for stability is also found during research of landing gear shimmy [3]. The internal dynamics are described by a linear third-order system, therefore three poles exist. Using Matlab, the eigenvalues can be determined. It appears that there are two complex poles and one real pole. As a result of the complex poles, the internal dynamics show oscillatory behaviour, which will be shown in chapter 5. Note that experiments with the MB in the past also showed this oscillatory behaviour, especially for low velocities. In [38], it is therefore suggested that lcp must be a function of the

28 3.2 Unicycle controller velocity, to prevent these oscillations for low velocities. To investigate this suggestion, the damping of the imaginary poles is studied furthermore. For simplicity reasons, the complex poles are regarded as poles of a second order system with the following transfer function:

2 ωn (3.93) H(s) = 2 2 s + 2ζωns + ωn with undamped natural frequency ωn and damping ratio ζ [12]. Herein represents −ζωn the real part of a pole and ωn represents the absolute distance between the origin and a pole location. By calculating ζ for different values of lcp and u, the damping ratio ζ can be plotted against lcp and u, see figure 3.4. Here, a second surface (in black) represents the surface where ζ equals zero. From this figure the requirements for stable internal dynamics can be seen: ζ becomes zero or negative for u = 0 and for lcp ≤ σα (lcp ≤ 0.22).

0.6

0.5

0.4

0.3

0.2

damping ratio 0.1

0

−0.1

−0.2 1

0.8 15 0.6 10 0.4

0.2 5

0 l [m] 0 cp u [m/s]

Figure 3.4: Damping ratio of the internal dynamics plotted against the forward velocity u and lcp.

From figure 3.4 it can be seen that the damping ratio decreases for a smaller velocity. By increasing lcp for smaller velocities, this effect can be compensated. This means that lcp must become a function of the forward velocity u, in order to keep the damping ratio at a certain level. In figure 3.5, lcp is plotted as a function of u, resulting in a damping ratio of 0.1. It can be seen that lcp becomes infinitely large when u approaches zero. This means that the steering torque Ts, determined by (3.81), approaches zero when u approaches zero. Based on experiments with the MB in the past, it is expected that this results in a well-damped steering behaviour for low velocities. However, numerical problems will occur when calculating the reference position of the control point with lcp equals infinitive. It is therefore suggested to pose an upper limit for lcp. This means that for very small velocities, the damping ratio will still decrease.

29 3. Modeling and control design

1

0.9

0.8

0.7 [m] cp l 0.6

0.5

0.4

0.3 0 5 10 15 u [m/s]

Figure 3.5: lcp as a function of u, resulting in a constant damping ratio of 0.1.

It can be concluded that the damping of the oscillating behaviour of the internal dy- namics can be made constant for all velocities, by making lcp a function of the velocity. However, for very small velocities the oscillating behaviour must be prevented using logic (e.g. turn off feedback). A velocity depending lcp is therefore not implemented during this project.

3.2.4 Longitudinal wheel slip controller

The real input of the unicycle is Td instead of κ, therefore an additional controller is needed, which controls κ using Td. The dynamics between Td and κ are described by (3.32) and (3.33). In this system, u can be seen as a time varying parameter from the (reduced) unicycle model, so this system can be written as:

˙q = f(q) + g(q)u (3.94) y = h(q) with  κ  q = (3.95) ω

u = Td (3.96)

" Rω−u(t)−u(t)κ # f(q) = σκ (3.97) − RKnmκ Iω

 0  g(q) = 1 (3.98) Iω

h(q) = κ (3.99)

30 3.2 Unicycle controller

For this SISO system a linearizing feedback is designed using the theory described in the literature survey. First, the relative degree is determined:

 0  Lgh(q) = [1 0] 1 = 0 (3.100) Iω

u(t) R  0  R LgLf h(q) = [− ] 1 = (3.101) σκ σκ Iω σκIω So the relative degree is equal to two and well defined for all values of q. With new coordinates zl1 = κ and zl2 =κ ˙ , the normal form of this system becomes:

˙z = z l1 l2 (3.102) 2 ˙zl2 = Lf h(q) + LgLf h(q)u with

" Rω−u(t)−u(t)κ # 2 u(t) R L h(q) = [− ] σκ f RKnmκ σκ σκ − Iω 2 Rω − u(t) − u(t)κ R Knmκ (3.103) = −u(t) 2 − σκ σκIω and R LgLf h(q) = (3.104) σκIω Because the relative degree is equal to the number of states, this system can be fully linearized with the following feedback law:

−1 2 Td = LgLf h(q) (ν − Lf h(q)) σκIω Rω − u(t) − u(t)κ (3.105) = {ν + u(t) 2 } + RKnmκ R σκ with new input ν. This results in the following linear system:

˙z = z l1 l2 (3.106)

˙zl2 = ν

This system can be controlled by a regular PD controller: (3.107) ν = Kvκ (zl2ref − zl2 ) + Kpκ (zl1ref − zl1 )

with differential gain Kvκ and proportional gain Kpκ. Because only zl1ref is deter- mined by the position controller, zl2ref have to be determined by calculating the time derivative of zl1ref . Note that no feedforward is used here, because it is expected that zl2ref will be too noisy to determine the time derivative ˙zl2ref needed for the feedfor- ward.

31 3. Modeling and control design

3.2.5 Total controller

Finally, a schematic overview of the total unicycle controller is given in figure 3.6. The total unicycle controller consists of four parts. The input of the controller is ref = ˙ ¨ T [xref yref ψref x˙ ref y˙ref ψref x¨ref y¨ref ψref ] . The first part is the position controller, which is described by (3.85). The second part is the input-output linearizing feedback law for the position controller, which is described by (3.80) and (3.81). The third part is the κ controller, which is described by (3.107) and the fourth part is the linearizing feedback law for the κ controller, which is described by (3.105). For the designed unicycle controller all states of the unicycle model are needed. However, κ and α are not estimated by the position and velocity observer currently used by TNO. Therefore two wheel slip observers are designed in the next chapter.

u ω κ

κ linearizing ν ν κ T position 1 linearizing ref controller feedback law d ref unicycle controller feedback law (3.107) (3.105) (3.30)-(3.37) (3.85) (3.80) ν2 (3.81) Ts

x y u v α ψ ψ

Figure 3.6: An overview of the total unicycle controller

3.3 Summary

To be able to include non-linear tyre behaviour into the controller design, a new uni- cycle controller is designed in this chapter. To do so, a new unicycle model is derived, using the theory of vehicle dynamics. This model includes a linear tyre model with relaxation effects. Using the theory of input-output linearization, a controller for this unicycle model is designed. It appears however that input-output linearization is not possible for this model. Therefore, the unicycle model is reduced by using the longitudinal wheel slip κ as a virtual input. Using this reduced model, a position controller is designed, which consists of an input-output linearizing feedback law and a PD controller. This position controller controls the position of a control point in front of the wheel instead of the center of the wheel, otherwise input-output linearization is not possible. The internal dynamics of this position controller is studied. It is shown that these dynamics, while driving along a straight line with constant velocity, are stable if lcp is larger than σα. It is also shown that the damping of the oscillatory behaviour of these dynamics can be made constant, when lcp is a function of the forward velocity u. Finally, a κ-controller is designed, which controls κ using Td. This controller con- sists of a full-state linearizing feedback law and a PD controller.

32 Chapter 4

Wheel slip observers

To apply the controller designed in the previous chapter, all states of the unicycle model are needed. A velocity and position observer, developed by TNO, is able to measure or estimate all states, except the lateral wheel slip α and the longitudinal wheel slip κ. Therefore two additional observers are designed in this chapter, to estimate α and κ. In the first section the design of both observers is explained. In the second section the designed observers are tested using simulations, and in the third section the ob- servers are tested using real-time experiments. Finally, this chapter is summarized in section four.

4.1 Design of the wheel slip observers

To estimate α and κ, two reduced-order observers are designed in this section. It is assumed that x, u, ω, y, v, ψ and ψ˙ are estimated or measured perfectly by the position and velocity observer of TNO. Using these ’measured’ states, α and κ are estimated, see figure 4.1, where an overview is given of the observers. Note that the wheel slip observes are designed for a unicycle, so every wheel needs its own observers.

reference Td controller unicycle Ts measured signals

. x, u, ω, y, v, ψ, ψ position and velocity observer α α estimator

κ κ estimator

Figure 4.1: An overview of the reduced order observers.

First, the approach used to design an observer with linear error dynamics [34] is explained. Consider a nonlinear system with inputs u, outputs y and states q:

˙q = f(q, u) (4.1) y = h(q)

33 4. Wheel slip observers

If this system can be written in the observer form:

˙z = Az + p(Cz, u) (4.2) y = Cz with p(Cz, u) some nonlinear function of the inputs and outputs, then the following observer can be designed:

ˆz˙ = Aˆz + p(y, u) + L(y − ˆy) (4.3) ˆy = Cˆz where L is a matrix containing the observer gains. With observer error e defined as e = z − ˆz, the observer error dynamics become linear:

e˙ = (A − LC)e (4.4) because the nonlinear term p(y, u) can be canceled. Furthermore, if the pair A, C is observable, the eigenvalues of (A − LC) can be placed at any desired location, by choosing L. Using this approach, an observer for the lateral wheel slip α and an observer for the longitudinal wheel slip κ are designed in the following subsections.

4.1.1 Lateral wheel slip observer

The purpose of the α-observer is to estimate α, using the available states from the position and velocity observer. Because u, v and ψ˙ can be ’measured’, it is proposed to use the following two state equations of the unicycle model to design an α-observer: ˙ v˙ = −Cnα − uψ (4.5) v − uα α˙ = (4.6) σα

With inputs u and ψ˙, and output v, this system can be written in the observer form, described by (4.2):

 v  z = (4.7) α

 0 −C  A = n (4.8) 1 0 σα

 −uψ˙  p = (4.9) − uα σα

C =  1 0  (4.10)

Now p becomes a function of z instead of y, therefore this term can not be canceled when calculating the observer error dynamics, so it is not possible to design an observer with linear error dynamics. This is not the case when u is seen as a time varying parameter u(t) instead of an input. The observer form then becomes:

 v  z = (4.11) α

34 4.1 Design of the wheel slip observers

 0 −C  A = n (4.12) 1 − u(t) σα σα

 −u(t)ψ˙  p = (4.13) 0

C =  1 0  (4.14) The observability of this system can be checked by calculating the observability ma- trix O:  C   1 0  O = = (4.15) CA 0 −Cn Because O has full rank, this system is observable. The observer, described by (4.3), becomes: ˙ ˙ vˆ = −Cnαˆ − u(t)ψ + l1(v − vˆ) (4.16) ˙ vˆ − u(t)ˆα αˆ = + l2(v − vˆ) σα where l1 and l2 represent the observer gains. With ev = v − vˆ and eα = α − αˆ, the observer error dynamics are described by:

e˙v = −l1 ev − Cn eα 1 u(t) (4.17) e˙α = ( − l2) ev − eα σα σα In appendix A.1 it is shown that these error dynamics are asymptotically stable for

l1 > 0 (4.18) 1 l2 < (4.19) σα u(t) > 0 ∨ u(t) = 0 (4.20)

To determine the feedback gains l1 and l2, pole placement is applied. Because this technique guarantees a certain pole location for linear time-invariant systems, the feedback gains ensure a pole location only for a constant velocity u. In appendix A.2 it is shown that the feedback gains become: u l1 = −2λα − (4.21) σα 2 1 2 u u 1 (4.22) l2 = (λα + 2λα + 2 ) + Cn σα σα σα with (real) pole location λα of the α-observer. These feedback gains only ensure pole location λα for constant velocity u. For a varying velocity, the pole location is no longer guaranteed. Therefore the calculated feedback gains have to satisfy the stability criteria (4.18) and (4.19) to ensure stability. In appendix A.2, it is shown that these stability criteria are satisfied for: umax λα < − (4.23) σα with maximum forward velocity umax. So it can be concluded that, when (4.20) and (4.23) hold, the observer error dynamics are asymptotically stable, with feedback gains l1 and l2 determined by (4.21) and (4.22), respectively.

35 4. Wheel slip observers

4.1.2 Longitudinal wheel slip observer

The purpose of the κ-observer is to estimate κ, using the available states from the position and velocity observer. Because u, ω and Td can be ’measured’, it is proposed to use the following two state equations of the unicycle model to design a κ-observer:

Rω − u − uκ κ˙ = (4.24) σκ T − RK mκ ω˙ = d n (4.25) Iω

With input Td and output ω, this system can be written in the observer form:

˙z = Az + p(Cz, u) (4.26) y = Cz with

 κ  z = (4.27) ω

" # − u(t) R A = σκ σκ (4.28) − RKnm 0 Iω

" # − u(t) p(Cz, u) = σκ (4.29) Td Iω

C =  0 1  (4.30)

Note that u(t) is again seen as a time varying parameter, otherwise p would become a function of z instead of y. The observability of this system can be checked by calculating the observability ma- trix O:

 C   0 1  O = = (4.31) CA − RKnm 0 Iω

Because O has full rank, this system is observable. The observer becomes:

˙ Rωˆ − u(t) − u(t)ˆκ κˆ = + l1(ω − ωˆ) σκ (4.32) ˙ Td − RKnmκˆ ωˆ = + l2(ω − ωˆ) Iω where l1 and l2 represent the observer gains. With eκ = κ − κˆ and eω = ω − ωˆ, the observer error dynamics are described by:

u(t) R e˙κ = − eκ + ( − l1) eω σκ σκ (4.33) RKnm e˙ω = − eκ − l2 eω Iω 36 4.2 Simulations with the wheel slip observers

In appendix B.1, it is shown that these error dynamics are asymptotically stable for: R l1 < (4.34) σκ l2 > 0 (4.35) u(t) > 0 ∨ u(t) = 0 (4.36)

To determine the feedback gains l1 and l2, pole placement is applied. Because this technique guarantees a certain pole location for linear time-invariant systems, the feedback gains ensure a pole location only for a constant velocity u. In appendix B.2 it is shown that the feedback gains become:

Iω 2 u u R (4.37) l1 = − (λκ + (2λκ + )) + RKnm σκ σκ σκ u l2 = −2λκ − (4.38) σκ with (real) pole location λκ of the κ-observer. These feedback gains only ensure pole location λκ for constant velocity u. For a varying velocity, the pole location is no longer guaranteed. Therefore the calculated feedback gains have to satisfy the stability criteria (4.34) and (4.35) to ensure stability. In appendix B.2, it is shown that these stability criteria are satisfied for:

umax λκ < − (4.39) σκ So it can be concluded that, when (4.36) and (4.39) hold, the observer error dynam- ics are asymptotically stable, with feedback gains l1 and l2 determined by (4.37) and (4.38), respectively.

4.2 Simulations with the wheel slip observers

In this section the designed observers are tested using simulations. The performance of the observers is checked by comparing the estimated values with those of the Moving Base (MB) simulation model. Because α and κ are not measured in reality, the values of the MB model are regarded as the real values. To ensure a fast and well damped behaviour of the observers, the pole locations λα and λκ are chosen to be negative and real. By shifting the poles to the left on the real axis, the feedback gains of the observer increase, which results in faster observer dy- namics. Because finally the observers have to run real-time on a computer with sample time ts, too fast observer dynamics can cause numerical problems. To determine the minimum pole location λmin, with which it is still possible to run the observers, the following rule of thumb [12] is used: 2 ts < (4.40) λmin

The used sample time in VeHIL is 0.002 s, therefore λα and λκ are chosen to be -500. Note that during all simulations in this section, the position and velocity estimator of TNO is not used. All necessary states are ’measured’ by ideal (non-existing) sensors.

37 4. Wheel slip observers

4.2.1 Longitudinal wheel slip observer

To test the performance of the κ-observer, several simulations are done with the MB model driving along a straight line, using the original controller. There are two dif- ferent line trajectories used: a low acceleration line trajectory, with a maximum lon- gitudinal acceleration of 1 m/s2 and a maximum forward velocity of 1.7 m/s, and a high acceleration line trajectory, with a maximum longitudinal acceleration of 7 m/s2 and a maximum forward velocity of 8.3 m/s. For more information about these line trajectories, see appendix C.1. In the first simulation the MB is driving the low acceleration line trajectory. In fig- ure 4.2, the observer error eω of the κ-observer is plotted. It can be seen that during acceleration and deceleration there occurs an error between ωˆ and ω. With a (maxi- mum) ω of about 7 rad/s, this is a small error of less than 1 %. Note that only the results of the front left wheel are shown, because the results of the other wheels are equal. In figure 4.3 the estimated longitudinal slip κˆ and the longitudinal slip κ of the MB model are plotted. It can be seen that there is a small error of κˆ during acceleration and deceleration.

0.05

[−] 0 ω e

−0.05 0 2 4 6 8 10 12 14 time [s]

Figure 4.2: Observer error eω (low acceleration).

−3 x 10 2 estimated κ 1.5 κ MB model 1

0.5

[−] 0 κ −0.5

−1

−1.5

−2 0 2 4 6 8 10 12 14 time [s]

Figure 4.3: Estimated κ and κ of the MB model (low acceleration).

38 4.2 Simulations with the wheel slip observers

0.4

0.3

0.2

0.1 [−] ω e 0

−0.1

−0.2

−0.3 0 1 2 3 4 5 6 time [s]

Figure 4.4: Observer error eω (high acceleration).

0.015 estimated κ κ 0.01 MB model

0.005

[−] 0 κ

−0.005

−0.01

−0.015 0 1 2 3 4 5 6 time [s]

Figure 4.5: Estimated κ and κ of the MB model (high acceleration).

In the second simulation the MB is driving the high acceleration line trajectory. In figure 4.4, the observer error eω is plotted and in figure 4.5, κˆ and κ are plotted. With a (maximum) ω of about 35 rad/s, the observer error during acceleration and deceleration is again less than 1 %. However, the error of κˆ during acceleration and deceleration is much larger than during the low acceleration trajectory. The error of κˆ is a result of the difference between the linear tyre model of the observer and the non-linear tyre model of the MB model. The MB tyre model is based on the equations derived by Pacejka [26]. In figure 4.6, the longitudinal tyre force Flong is plotted against κ for both tyre models. It can be seen that both models are equal around κ = 0. However, for κ < -0.01 and κ > 0.01, the models show a significant difference. Therefore, for large accelerations, the longitudinal slip stiffness K of the linear tyre model is larger than that of the MB model, so κˆ is too small. To improve the κ-observer, an exponential tyre model can be used. In appendix E it is shown that, with an exponential tyre model, κˆ shows a better match with κ for large accelerations. Note that, by shifting the poles to the left on the real axis, the feedback gains in- crease. With larger feedback gains, the error of ωˆ decreases. Simulations with a smaller sample time have shown that, with λκ equal to -2000, the error of the observer indeed

39 4. Wheel slip observers

2000 Linear tyre model 1500 MB tyre model

1000

500

[N] 0 long F −500

−1000

−1500

−2000 −0.02 −0.015 −0.01 −0.005 0 0.005 0.01 0.015 0.02 κ [−]

Figure 4.6: Flong plotted against κ for both tyre models.

−3 x 10 2 estimated κ 1.5 κ MB model 1

0.5

[−] 0 κ −0.5

−1

−1.5

−2 0 2 4 6 8 10 12 14 time [s]

Figure 4.7: Estimated κ and κ of the MB model, including friction (low acceleration).

0.015 estimated κ κ 0.01 MB model

0.005

[−] 0 κ

−0.005

−0.01

−0.015 0 1 2 3 4 5 6 time [s]

Figure 4.8: Estimated κ and κ of the MB model, including friction (high acceleration).

40 4.2 Simulations with the wheel slip observers decreases. However, in VeHIL the sample time can not be decreased, because of com- putational limitations. During previous simulations the friction in the drive line and the rolling resistance of the tyres where neglected. In reality these forces are not negligible, therefore the rolling resistance and the friction in the drive line are also modeled in the MB model. In the κ-observer, the rolling resistance and the friction in the drive line are modeled by subtracting these friction torques from the drive torque Td. To check the performance of the κ-observer including friction, the previous sim- ulations are repeated. In figure 4.7 and 4.8, κˆ and κ are plotted for the simulations including friction, for the low and high acceleration line trajectory. It can be seen that including friction does not affect the performance of the κ-observer.

4.2.2 Lateral wheel slip observer

To test the performance of the α-observer, several simulations are done with the MB driving (counterclockwise) along a circle, using the original controller. Two different circular trajectories are used: a low acceleration circular trajectory, with a maximum longitudinal and lateral acceleration of 1 m/s2 and a maximum forward velocity of 2.8 m/s, and a high acceleration circular trajectory, with a maximum longitudinal and lat- eral acceleration of 7 m/s2 and a maximum forward velocity of 7.2 m/s. For more information about these circular trajectories, see appendix C.2. In the first simulation the MB is driving the low acceleration circular trajectory. In figure 4.9, the observer error ev of the front left tyre is plotted. It can be seen that a very small steady-state error occurs. In figure 4.10, the estimated lateral slip αˆ and the ’real’ lateral slip α of the front left tyre are plotted. It can be seen that αˆ is too small. In figure 4.11, the observer error ev of the front right wheel is shown. It can be seen that the ev is smaller for the right wheel. In figure 4.12, αˆ and α of the front right wheel are plotted. It can be seen that αˆ of the right wheel is too large. Note that the results of the rear wheels are not shown, because they are equal to the results of the front wheels. In the second simulation the MB is driving the high acceleration circular trajectory. Again ev is very small for both wheels, so these values are not shown. In figure 4.13 and 4.14, αˆ and α of the front left wheel and front right wheel, respectively, are shown. From these figures it can be seen that for large accelerations αˆ is too small for both wheels.

−5 x 10 1

0

−1

−2

[−] −3 v e −4

−5

−6

−7 0 5 10 15 20 25 time [s]

Figure 4.9: Observer error ev of the front left tyre (low acceleration).

41 4. Wheel slip observers

−3 x 10 4 estimated α 3.5 α MB model 3

2.5

2 [−]

α 1.5

1

0.5

0

−0.5 0 5 10 15 20 25 time [s]

Figure 4.10: Estimated α and α of the MB model of the front left tyre (low acceleration).

−5 x 10 1

0

−1

−2

[−] −3 v e −4

−5

−6

−7 0 5 10 15 20 25 time [s]

Figure 4.11: Observer error ev of the front right tyre (low acceleration).

−3 x 10 4 estimated α 3.5 α MB model 3

2.5

2 [−]

α 1.5

1

0.5

0

−0.5 0 5 10 15 20 25 time [s]

Figure 4.12: Estimated α and α of the MB model of the front right tyre (low acceleration).

42 4.2 Simulations with the wheel slip observers

0.04 estimated α 0.035 α MB model 0.03

0.025

0.02 [−]

α 0.015

0.01

0.005

0

−0.005 0 2 4 6 8 10 time [s]

Figure 4.13: Estimated α and α of the MB model of the front left tyre (high acceleration).

0.04 estimated α 0.035 α MB model 0.03

0.025

0.02 [−]

α 0.015

0.01

0.005

0

−0.005 0 2 4 6 8 10 time [s]

Figure 4.14: Estimated α and α of the MB model of the front right tyre (high accelera- tion).

The error of αˆ is a result of three effects. The first and second effect are a result of the differences between the tyre model of the observer and that of the MB model. The first effect can be seen in figure 4.15, where the lateral tyre force Flat is plotted against α for both tyre models. Similar to the longitudinal tyre model, there is a significant difference between the linear tyre model of the observer and the non-linear tyre model of the MB, for large values of slip. From this figure it can be concluded that for large accelerations, the slip stiffness C of the observer is too large, so αˆ will be too small. When the average of the left and right αˆ is determined, it can be seen that the error indeed increases for large accelerations. Similar to the κ-observer, the α-observer can be improved by using an exponential tyre model, see appendix E. The second effect can be seen in figure 4.16, where the lateral slip stiffness C is plotted against the vertical force Fz. In case of the linear model, C is proportional with Fz, however the tyre model of the MB model shows a non-linear behaviour. From this figure it can be concluded that, for large vertical loads, the slip stiffness of the observer is too large, resulting in a smaller αˆ. For small vertical loads, this will result in a larger αˆ.

43 4. Wheel slip observers

3000 linear tyre model MB tyre model 2000

1000

[N] 0 lat F

−1000

−2000

−3000 −0.04 −0.03 −0.02 −0.01 0 0.01 0.02 0.03 0.04 α [−]

Figure 4.15: Flat plotted against α for both tyre models.

4 x 10 10 Linear model 9 MB model

8

7

C [N/rad] 6

5

4

3 500 1000 1500 2000 2500 F [N] z

Figure 4.16: C plotted against Fz for both tyre models.

The third effect is a result of the multicycle approach. During steady-state cornering v and α are constant, therefore the α-observer can be written as: ˙ u(t)ψ = −Cnαˆ + l1(v − vˆ) (4.41) vˆ + u(t)ˆα = l2(v − vˆ) (4.42) σα When assumed that the error of vˆ is very small, (4.42) becomes:

vˆ = −u(t)ˆα (4.43)

v which is equal to the definition α = − u . Equation (4.41) becomes: F u(t)ψ˙ = −C αˆ = − lat (4.44) n m which means that the lateral tyre force equals the centripetal force muψ˙. Because it is assumed that the mass of the unicycle is located at the center of the unicycle, the mass

44 4.2 Simulations with the wheel slip observers is shifted outwards in case of the MB. As a result of this, the mass of the inner unicycles is virtually driving on a smaller radius, resulting in a smaller centripetal force, so αˆ is smaller for the inner (left) wheels. For the outer unicycles the centripetal force is too large, resulting in a larger αˆ for the right wheels. Note that, by shifting the poles to the left on the real axis, the error of vˆ will decrease, so the error of αˆ will also decrease. This is a minor effect, which is already mentioned in case of the κ-observer.

−3 x 10 4 estimated α 3.5 α MB model 3

2.5

2 [−]

α 1.5

1

0.5

0

−0.5 0 5 10 15 20 25 time [s]

Figure 4.17: Estimated α and α of the MB model of the front left tyre, including friction (low acceleration).

0.04 estimated α 0.035 α MB model 0.03

0.025

0.02 [−]

α 0.015

0.01

0.005

0

−0.005 0 2 4 6 8 10 time [s]

Figure 4.18: Estimated α and α of the MB model of the front left tyre, including friction (high acceleration).

During previous simulations the friction in the drive and steer line and the rolling resistance of the tyres where neglected. In reality these forces are not negligible, there- fore the same simulations are done including friction. In the α-observer, the friction in the steer line is modeled by subtracting the friction torque from the steer torque Ts. Due to friction, the controller shows a decreased performance, which results in oscillations of the steering angles of the wheels. In figure 4.17, αˆ and α of the front left wheel are plotted for this simulation. It can be seen that, due to the oscillations of the steering angles, α is also oscillating. By comparing this figure with figure 4.10, it can be

45 4. Wheel slip observers seen that despite these oscillations, the performance of the α-observer is not changed. This is also the case for the high acceleration circular trajectory, compare figure 4.18 with figure 4.13.

4.3 Experiments with the wheel slip observers

To test the designed observers in reality, real-time experiments are done with the Mov- ing Base in VeHIL. For these experiments the same trajectories and controller are used as in the simulations. By comparing the experiments with the simulations, the simula- tion model can be validated. Because κ and α are not measured in reality, the estimated values are compared to the estimated values during the simulations. In this way it can be checked if the designed observers are robust against signal noise. During the experiments the position and velocity observer of TNO is used. There- fore this observer is also used during the simulations in this section. This observer can have a significant error, therefore it is important to test the designed observers in combination with the position and velocity observer.

4.3.1 Longitudinal wheel slip observer

Three states of the unicycle model are needed for the κ-observer: the wheel rotational velocity ω, which is a measurement, the drive torque Td, which is the input, and the forward velocity u, which is a parameter. In figure 4.19 and 4.20, these states are plotted for the simulation and the experiment with the low and high acceleration line trajectories. From both figures it can be seen that there is a good match between the experiment and the simulation. Only Td shows some noise and small differences. In figure 4.21 and 4.22, the estimated κ during the experiment and during the simulation for the low and high acceleration line trajectories are shown. To improve the visibility of the results, the results are filtered by a low pass filter with a time constant of 0.1 s. See appendix D.1 for the unfiltered results. During the low acceleration experiment, κˆ shows an offset at constant velocity, see figure 4.21. This is a result of a known error of the modeled friction in the drive line and the modeled rolling resistance. Therefore the drive torque Td of the observer is too large, see figure 4.19, which results in a larger κˆ. During acceleration and deceleration, the error of κˆ is also similar to the error of Td, so this is also a result of the error of the modeled friction and rolling resistance. During the high acceleration experiment, κˆ shows some small errors, see figure 4.22. These errors are also similar to the errors of Td, see figure 4.20, so this is a result of the error of the modeled friction and rolling resistance. From both experiments it can be concluded that the κ observer is robust against signal noise. It can also be concluded that the experiments show a good match with the simulations. The difference of the estimated κ during the experiments and during the simulations are mainly a result of the error of the modeled friction and rolling resistance.

46 4.3 Experiments with the wheel slip observers

wheel rotational velocity ω 8 6 4 experiment 2 simulation [rad/s] ω 0 2 0 2 4 6 8 10 12 14 drive torque Td 15 10 5 [N/m] d

T 0 5 10 0 2 4 6 8 10 12 14 forward velocity u 2 1.5 1 0.5 u [m/s] 0 0.5 0 2 4 6 8 10 12 14 time [s]

Figure 4.19: ω, Td and u during experiment and simulation (low acceleration).

wheel rotational velocity ω 40 30 20 experiment simulation

[rad/s] 10 ω 0 10 0 1 2 3 4 5 6 drive torque T 50 d

0 [N/m] d T 50

100 0 1 2 3 4 5 6 forward velocity u 10

5

u [m/s] 0

5 0 1 2 3 4 5 6 time [s]

Figure 4.20: ω, Td and u during experiment and simulation (high acceleration).

47 4. Wheel slip observers

−3 x 10 2.5 experiment 2 simulation 1.5

1

0.5

slip [−] 0

−0.5

−1

−1.5

−2 0 2 4 6 8 10 12 14 time [s]

Figure 4.21: Filtered κˆ during experiment and simulation (low acceleration).

0.015 experiment simulation 0.01

0.005

0 slip [−]

−0.005

−0.01

−0.015 0 1 2 3 4 5 6 time [s]

Figure 4.22: Filtered κˆ during experiment and simulation (high acceleration).

4.3.2 Lateral wheel slip observer

Three states of the unicycle model are used by the α-observer: the lateral velocity v, which is a measurement, the rotational velocity ψ˙, which is the input, and the forward velocity u, which is a parameter. In figure 4.23 and 4.24, u and v are plotted for the low and high acceleration circular tests. From these figures it can be seen that the longitu- dinal velocity u of the experiments and the simulations matches quite good. The lateral velocity v is however uncorrelated, although the order of magnitude is equal. This is a result of the error of the velocity and position observer. This observer combines odom- etry measurements with absolute position measurement of a magnetic grid. Because lateral velocity of the tyre can not be measured using odometry, it is hard to estimate v. In figure 4.25 and 4.26, αˆ during the experiment and the simulation are plotted for both circular trajectories. To improve the visibility of the results, αˆ is filtered by a low-pass filter with a time-constant of 0.1 s. In appendix D.2 the unfiltered results are shown. Here, it can be seen that the unfiltered αˆ is very noisy.

48 4.3 Experiments with the wheel slip observers

longitudinal velocity u 3 experiment 2.5 simulation 2 1.5 [m/s]

u 1 0.5 0 0.5 0 2 4 6 8 10 12 14 16 18 20 time [s] lateral velocity v 0.015 experiment 0.01 simulation 0.005 0 [m/s]

v 0.005 0.01 0.015 0.02 0 2 4 6 8 10 12 14 16 18 20 time [s]

Figure 4.23: u and v during the simulation and experiment (low acceleration)

longitudinal velocity u 7 experiment 6 simulation 5 4

[m/s] 3 u 2 1 0 1 0 1 2 3 4 5 6 7 time [s]

lateral velocity v 0.06 experiment 0.04 simulation

0.02

0 [m/s] v 0.02

0.04

0.06 0 1 2 3 4 5 6 7 time [s]

Figure 4.24: u and v during the simulation and experiment (high acceleration)

49 4. Wheel slip observers

From figure 4.25 and 4.26, it can be seen that, despite of the error of the position and velocity observer, αˆ matches quite good, although a small offset is visible. From these experiments it can be concluded that, although αˆ can be very noisy, the α-observer is robust against signal noise. It can also be concluded that there are significant differences between the experiments and the simulations, due to the error of the position and velocity observer. Despite of these differences, αˆ of the experiments and the simulations show a reasonably good match.

−3 x 10 7 experiment 6 simulation 5

4

3

slip [−] 2

1

0

−1

−2 0 5 10 15 20 25 time [s]

Figure 4.25: Filtered αˆ during experiment and simulation (low acceleration)

0.035 experiment 0.03 simulation

0.025

0.02

0.015 slip [−] 0.01

0.005

0

−0.005 0 2 4 6 8 10 time [s]

Figure 4.26: Filtered αˆ during experiment and simulation (high acceleration)

50 4.4 Summary

4.4 Summary

In this chapter two additional observers are designed, to estimate the longitudinal wheel slip κ and the lateral wheel slip α. The stability of both observers is proven for u = 0 and u > 0. The κ-observer is tested using simulations with a line trajectory. It is shown that κˆ matches good with κ of the MB model for small longitudinal accelerations. For large longitudinal accelerations however, the κ-observer shows an error, because the tyre model of the observer is not equal to that of the MB model. The α-observer is tested using simulations with a circular trajectory. It is shown that, for small lateral accelerations, αˆ of the inner wheels matches good with α of the MB model, but αˆ of the outer wheels is too large. For large lateral accelerations, αˆ of the outer wheels shows a good match, but αˆ of the inner wheels is too small. This is a result of the multicycle approach and differences between the tyre model of the observer and that of the MB model. Finally, real-time experiments are done with the Moving Base in VeHIL. It is shown that both observers are robust against signal noise and that the MB model is very ac- curate, except for the modeled friction. Despite of the error of the position and velocity observer, the wheel slip observers show a reasonably performance.

51 Chapter 5

Analysis of the controller

In this chapter the behaviour of the designed multicycle controller is analyzed using (time domain) simulations. In the first section, the unicycle controller is analyzed using simulations with a unicycle model. After that, the concept of the multicycle con- troller is tested in the second section, using simulations with a multicycle model. In the third section, the behaviour of the multicycle controller is analyzed, using simulations with the Moving Base model. Finally, this chapter is summarized in section four.

5.1 Unicycle model

In this section, the behaviour of the unicycle controller is analyzed using simulations with a unicycle model. The unicycle model is equal to the model derived in section 3.1.2, described by equations (3.30) - (3.37). This model consists of a wheel and a (point) mass, which can be driven and steered without friction. All states are measured by non- existing sensors, so no observers are needed. The controller gains used the following simulations are: Kp = 8, Kv = 3, Kpκ = 6000 and Kvκ = 200. Note that these simulations are only to demonstrate the behaviour of the designed controller, so no extensive tuning of the controller is performed. To test the transient and steady-state behaviour in longitudinal direction, a sim- ulation is made with the extended line trajectory. This traject is similar to the high acceleration line trajectory, except that the length of this traject is increased to en- sure steady-state behaviour. The maximum longitudinal acceleration is 7 m/s2 and the maximum forward velocity is 8.2 m/s. Note that the simulation is stopped before decelerating to stand-still. For more information about this trajectory, see appendix C.1.

First, the transient behaviour is analyzed. In figure 5.1, the reference longitudinal slip κref and the realized longitudinal slip κ for this simulation are plotted. From this figure it can be seen that significant errors between κref and κ occur. This is a result of the lack of feedforward of the κ-controller. In figure 5.2, the longitudinal position error is plotted, which is defined as the ref- erence position minus the realized position. It can be seen that the longitudinal error has a phase lag with respect to the error of the κ controller. The transient position error is therefore likely to be mainly a result of the error of the κ controller.

Second, the steady-state behaviour in longitudinal direction is analyzed. In figure 5.1, it can be seen that there is a small steady-state offset of the κ controller. As a result of this offset, the position controller has also a steady-state offset, see figure 5.2. This offset is a result of numerical inaccuracy, because this offset reduces when a smaller sample time is used. By adding a integral action to the PD position controller, this steady-state

53 5. Analysis of the controller

−3 x 10 20 κ ref κ 15

10 [−] κ 5

0

−5 0 1 2 3 4 5 6 7 8 time [s]

Figure 5.1: The reference longitudinal slip κref and the realized longitudinal slip κ.

0.6

0.5

0.4

0.3

0.2

longitudinal error [m] 0.1

0

−0.1 0 1 2 3 4 5 6 7 8 time [s]

Figure 5.2: The position error in longitudinal direction.

error can become zero. To test the transient and steady-state behaviour in lateral direction, a simulation is made with a j-turn trajectory. During this trajectory, the unicycle is accelerating along a straight line, with a maximum acceleration of 7 m/s2, to a forward velocity of 7.2 m/s. From around t = 2.5 s, the trajectory is turned to a circular trajectory, resulting in a ’step’ steer input. During the circular part, the lateral acceleration is 7 m/s2. For more information about the j-turn trajectory, see appendix C.3. Because during a j-turn the heading of the unicycle is not constant, the position error of the control point (cp) is not equal to the error of the center of gravity (cog). The controller controls the position of the cp, so the error of the cp is important to study the behaviour of the designed controller. However, eventually the cog needs to follow a certain trajectory, so the position error of the cog is also very important.

54 5.1 Unicycle model

First, the transient behaviour in lateral direction is analyzed. In figure 5.3, the lateral position error of the cp and of the cog are plotted. It can be seen that the transient position error of the cog is not equal to that of the cp. This is a result of the internal dynamics, as will be explained later on.

0.04 cp cog 0.03

0.02

0.01

lateral error [m] 0

−0.01

−0.02 2 4 6 8 10 12 time [s]

Figure 5.3: The position error of the control point (cp) and the center of gravity (cog) in lateral direction.

Second, the steady-state behaviour in lateral direction is analyzed. In figure 5.3, it can be seen that the steady-state error of the cp is negligible small. However, when zoomed in, it can be seen that this error is not zero. This is a result of the PD position controller. By adding an integral action, the error of the cp can become zero. Despite of the small error of the cp, the steady-state error of the cog is significant. This is a result of the side slip angle of the unicycle, because this side slip is not taken into account when the reference heading of the unicycle is determined, see section 2.1.3, equation (2.2). In figure 5.4, a schematic overview of the unicycle during steady- state cornering is given. From this figure it can be seen that, although the lateral error of the cp is negligible small, the lateral error of the cog is significant due too side slip.

reference cog reference cp cp −α

V

Figure 5.4: The unicycle model during steady-state cornering, showing the oset of the cog as a result of the side slip angle α.

The steady-state lateral position error of the cog will decrease when the side slip angle is taken into account, when the reference heading of the unicycle is determined. Equation (2.2) then becomes:

y˙ij ψij = arctan( ) − αij (5.1) x˙ ij This is illustrated in figure 5.5, where a schematic overview of the unicycle is given during steady-state cornering when α is taken into account. It can be seen that the

55 5. Analysis of the controller reference path of the cp is shifted inwards of the circle, and therefore no lateral position error of the cog occurs due to side slip. A disadvantage of this approach is that this yields an additional feedback loop in the controlled unicycle: the reference trajectory is dependent on the current (estimated) side slip angle. It is likely that this extra feedback loop can cause stability problems.

reference cp

cp reference cog −α V

Figure 5.5: The unicycle model during steady-state cornering, when the side slip angle α is taken into account.

During these simulations the used lcp equals 0.35, which is a trade off between the lateral position error and the smoothness (damping) of the steering behaviour, as explained in section 3.2.3 In figure 5.3, small oscillations of the cog are visible, due to oscillations of the internal dynamics. By increasing lcp, the damping of these dynamics increases, resulting in a more smooth steering behaviour. In section 3.2.3 it is shown that the internal dynamics, while driving along a straight line with a constant velocity, are stable for lcp > σα. To demonstrate this, a simulation is made with the extended line trajectory, with lcp < σα. At t = 1.5 s, the reference position is shifted 0.01 m in lateral direction. In figure 5.6, the lateral position error of the cp and that of the cog are plotted. It can be seen that the unicycle shows unstable behaviour as a result of unstable internal dynamics. However, the error of the cp is reasonably small, meaning that the controller shows a reasonably good performance. This demonstrates the importance of stable internal dynamics for this controller.

0.02 cp 0.015 cog

0.01

0.005

0

−0.005 lateral error [m]

−0.01

−0.015

−0.02 1 2 3 4 5 6 7 8 time [s]

Figure 5.6: Unstable internal dynamics.

56 5.2 Multicycle model

Finally, it can be concluded that, due to the used concept of a (virtual) control point, the lateral position error of the center of gravity is not fully controllable. This lateral error is also determined by the internal dynamics, which can be influenced by lcp and the driven trajectory.

5.2 Multicycle model

In this section the concept of the multicycle controller is tested, using a multicycle model. This model consists of four unicycle models, all equal to the model used in the previous section. The only difference is that the mass of every unicycle is a function of the reference accelerations, see section 2.1.3, equations (2.6). Note that all states of the multicycle model are measured using non-existing sensors, so no observers are used. The multicycle controller consists of four unicycle controllers, which all have the same controller gains as during the simulations with the unicycle model. The only dif- ference is that the load transfer is taken into account by the controller, using equations (2.6). The unicycles of the multicycle model are not linked to each other, so the mu- tual distances can vary. By looking at these mutual distances, some insight can be achieved about the constraint forces between the tyres of a real vehicle, when using this multicycle controller. In figure 5.7 a schematic overview of the multicycle model is given, showing the lateral distance dlat,f and dlat,r between the front and rear unicy- cles respectively and the longitudinal distance dlong,l and dlong,r between the left and right unicycles respectively. With initial width 2W , the lateral distance error elat,i with i = f, r, can be defined as:

elat,i = dlat,i − 2W (5.2)

With initial length 2L, the longitudinal distance error elong,i with i = l, r, can be defined as:

elong,i = dlong,i − 2L (5.3)

dlat,f

fl fr

dlong,l dlong,r W L

rl rr

dlat,r

Figure 5.7: A schematic overview of the multicycle model.

Using simulations with the (extended) line trajectory, it can be shown that these errors are equal to zero for the whole trajectory. This means that all unicycles have the

57 5. Analysis of the controller same position errors, despite of the load transfer. Therefore it can be concluded that the multicycle controller is able to deal with load transfer. Using a simulation with the j-turn trajectory, it can be shown that the mutual dis- tances are not constant when the unicycles have a different acceleration profile. This is demonstrated in figures 5.8 and 5.9, where the longitudinal and lateral errors are plotted for a simulation with the j-turn trajectory. From these figures it can be seen that errors occur in both directions, especially during transient behaviour. As a result of these mutual errors, there will be interaction between the wheels in case of a real vehicle. This can result in additional wheel slip or parasitic dynamics of the frame. From both simulations it can be concluded that the multicycle approach works very well for trajectories where all wheels have equal acceleration levels. For trajectories where the wheels have different acceleration levels, interaction of forces between the wheels can occur, especially during transient behaviour.

−3 x 10 8 e long,l e 6 long,r

4

2 longitudinal error [m]

0

−2 2 4 6 8 10 12 time [s]

Figure 5.8: The longitudinal errors during the j-turn trajectory.

0.02 e lat,f 0.01 e lat,r

0

−0.01

−0.02 lateral error [m] −0.03

−0.04

−0.05 2 4 6 8 10 12 time [s]

Figure 5.9: The lateral errors during the j-turn trajectory.

58 5.3 Moving Base model

5.3 Moving Base model

To analyze the behaviour the multicycle controller on an AGV, several simulations are made with a simulation model of the Moving Base (MB). This model is provided by TNO and includes friction in the steer and drive line and a non-linear tyre model, which includes relaxation effects, self-aligning torque and rolling resistance of the tyres. Note that in section 4.3, it is shown that this model is very accurate. During the following simulations the friction and the rolling resistance are taken into account by the controller. This is done by adding a friction and a resistance torque to the drive torque Td and the steer torque Ts determined by the controller. The MB model has more damping than the multicycle model, because of a different tyre model, the modeled friction and the (infinite stiff) coupling between the wheels. Therefore the controller gains are about ten times larger for the simulations with the MB model. The controller gains for the following simulations are: Kp = 80, Kv = 35, Kpκ = 40000 and Kvκ = 0. Note that no differential action is used in the κ-controller, because κ of the MB model is varying too fast to determine a useful κ˙ . The requirement for the controller is that the absolute error in lateral and longitudi- nal direction is smaller than 0.5 m. The absolute error of the heading must be smaller than 1o, which is about 0.017 rad. Note that only the simulations with the high acceler- ation trajectories are regarded, because it can be shown that the errors are smaller for low acceleration trajectories. In the first subsection, simulations are made with the multicycle controller and the MB without observers. By simulating the MB without any of the observers, the effect of the interaction of the wheels can be studied. In the second subsection, these simulations are repeated including the wheel slip observers and in the third subsection the position and velocity observer of TNO is also included. In this way the effect of the observers on the behaviour of the controller can be studied.

5.3.1 Moving Base without observers

First, the longitudinal transient behaviour is tested, using the (extended) line trajectory. To demonstrate the behaviour of the κ-controllers, the reference longitudinal slip κref and the realized longitudinal slip κ of the front left wheel and the rear left wheel, are plotted in figures 5.10 and 5.11, respectively. From these figures it can be seen that κref is equal for both wheels. However, the rear κ-controller shows an overshoot, this in contrast to the simulation with the unicycle model. This overshoot is a result of the differences between the linear tyre model, used to design the controller, and the non-linear tyre model of the MB model. The linearizing feedback law of the κ-controller is described by:

σκIω Rω − u(t) − u(t)κ (5.4) Td = {ν + u(t) 2 } + RKnmκ R σκ

The last term of this feedback law is equal to RFlong, so this can be seen as a com- pensating torque for the generated tyre force Flong. With a linear tyre model, this tyre force is too large for large slip values. Therefore Td will be too large, so an overshoot can occur. It appears that the PD controllers of the rear κ-controllers are not able to pre- vent this overshoot, because the rear tyre force is much larger due to the load transfer. Note that this overshoot does not occur for small accelerations. It is expected that this overshoot can be prevented, by including an exponential tyre model in the controller design. Note that κref and κ of the right wheels are similar to those of the left wheels, so these values are not shown. To demonstrate the performance of the total controller, the longitudinal position error of the cog of the MB is plotted in figure 5.12. This longitudinal position error is

59 5. Analysis of the controller

−3 x 10

16 κ ref 14 κ

12

10

8 slip [−] 6

4

2

0 0 0.5 1 1.5 2 2.5 3 3.5 4 times [s]

Figure 5.10: The reference longitudinal slip κref and the realized longitudinal slip κ of the front left wheel.

−3 x 10

16 κ ref 14 κ

12

10

8 slip [−] 6

4

2

0 0 0.5 1 1.5 2 2.5 3 3.5 4 times [s]

Figure 5.11: The reference longitudinal slip κref and the realized longitudinal slip κ of the rear left wheel.

defined as the reference position minus the realized position. It can be seen that, as a result of the overshoot of the rear κ-controllers, the MB has a transient position lead. The maximum (absolute) longitudinal position error is about 0.011 m, which is much smaller than the requirement of 0.5 m.

Second, the longitudinal steady-state behaviour is analyzed. From figure 5.12, it can be seen that there is a small steady-state error. This can be improved by adding an integral action to the position controller. In chapter 4.3 it is shown that the modeled friction and rolling resistance are not equal to reality. Therefore it is expected that this steady-state error will be larger in reality.

To test the lateral behaviour of the controller, a simulation is made with the j-turn

60 5.3 Moving Base model

0.01

0.005

0 longitudinal error [m] −0.005

−0.01 0 0.5 1 1.5 2 2.5 3 3.5 4 time [s]

Figure 5.12: The longitudinal position error of the MB.

0.2

0.15

0.1

0.05 lateral error [m]

0

−0.05 2 4 6 8 10 12 14 16 18 20 time [s]

Figure 5.13: The lateral position error of the MB.

trajectory. In figure 5.13 the position error of the cog in lateral direction is shown. By comparing this figure with figure 5.3, it can be seen that the order of magnitude of the transient error is similar to that of the unicycle model, however the damping is much larger. In figure 5.13 it can also be seen that the steady-state error is much larger than in case of the unicycle. This is mainly a result of the self-aligning torque of the tyres. Since this is not modeled in the unicycle model, it is not taken into account by the controller. Similar to the unicycle case, the lateral error of the cog is also a result of the internal dynamics and the PD position controller. The maximum (absolute) lateral position error is about 0.035 m, which is much smaller than the requirement of 0.5 m. In figure 5.14 the error of the heading of the MB is plotted, with the heading error being defined as the reference heading angle minus the realized heading angle. It can be seen that there is a lead, especially during transient behaviour. This is a result of

61 5. Analysis of the controller

−3 x 10 2

0

−2

−4

−6 heading error [rad] −8

−10

−12 2 4 6 8 10 12 14 16 18 20 time [s]

Figure 5.14: The heading error of the MB.

the multicycle concept. In case of the MB, the mass is virtually shifted outwards, so the feedforward is too large during a rotational acceleration, which results in a lead of the heading. The maximum (absolute) heading error is about 0.005 rad, which is much smaller than the requirement of 0.017 rad. In the previous section it is shown that there will occur crosstalk for this trajectory. From this simulation it can be concluded that, despite of this effect, the controller shows a good performance within the posed requirements.

5.3.2 Moving Base including wheel slip observers

In the previous subsection, the lateral wheel slip α and the longitudinal wheel slip κ where measured by non-existing sensors. In reality these values have to be estimated by the observers designed in chapter 4. Now, previous simulations are repeated in- cluding the α- and κ-observers. In this way the influence of these observers on the behaviour of the controller can be studied.

First, the simulation with the (extended) line trajectory is repeated. In figures 5.15 and 5.16, κref and κ of the front left wheel and the rear left wheel are plotted. From these figures, it can be seen that κref is increased and that the κ-controller of the front wheel shows an overshoot. This overshoot is however smaller than during previous simula- tion. As shown in chapter 4, κˆ is smaller than κ, therefore the tyre force compensation in the linearizing feedback law of the κ-controller is smaller, see (5.4). This means that, as a result of the κ-observer error, the performance of the κ-controllers increased. The overshoot of the front wheel is probably a result of the large value of κref . The MB tyre model shows significant saturation behaviour for such a large slip value. In figure 5.17, the longitudinal position error is plotted for this simulation. As a result of the decreased overshoot of the κ-controllers, the MB is now lagging behind. The maximum (absolute) longitudinal position error is decreased to about 0.009 m, which is much smaller than the requirement of 0.5 m. To be able to compare these results with the previous results, the errors of κ and the position are quantified by calculating the root-mean-square error E: r Pn e2 E = i=1 i (5.5) n 62 5.3 Moving Base model

−3 x 10

16 κ ref 14 κ

12

10

8 slip [−] 6

4

2

0 0 0.5 1 1.5 2 2.5 3 3.5 4 times [s]

Figure 5.15: The reference longitudinal slip κref and the realized longitudinal slip κ of the front left wheel.

−3 x 10

16 κ ref 14 κ

12

10

8 slip [−] 6

4

2

0 0 0.5 1 1.5 2 2.5 3 3.5 4 times [s]

Figure 5.16: The reference longitudinal slip κref and the realized longitudinal slip κ of the rear left wheel.

with error e and number of samples n. In table 5.1, the root-mean-square error Eκ of κ and the root-mean-square error Elong of the longitudinal position are shown, for this simulation and previous simulation with the MB and the (extended) line trajectory. Note that in case of Eκ, the error e and the number of samples n are summed over all four wheels. From this table it can be concluded that the performance of the κ- controllers is increased, because of the reduced overshoot. It is however expected that the performance of the κ-controllers will not increase for low accelerations, because no overshoot occurs for low accelerations. Although the maximum position error is decreased, Elong is increased.

63 5. Analysis of the controller

0.01

0.005

0 longitudinal error [m] −0.005

−0.01 0 0.5 1 1.5 2 2.5 3 3.5 4 time [s]

Figure 5.17: The longitudinal position error of the MB.

Table 5.1: Root-mean-square errors for the (extended) line trajectory without observers and including the wheel slip observers.

without including wheel observers slip observers

Eκ 0.00104 0.00038 Elong 0.00246 0.00327

Second, the simulation with the j-turn is repeated including the wheel slip observers. In figure 5.18 the lateral position error is plotted. By comparing this figure with figure 5.13, it can be seen that the transient behaviour is less damped. As a result of the error of the α-observer, the system is not exactly linearized anymore, resulting in (small) os- cillations. Despite of this, the steady-state error is decreased. The maximum (absolute) lateral position error is decreased to about 0.025 m, which is much smaller than the requirement of 0.5 m. In figure 5.19 the heading error is plotted for the j-turn trajectory. By comparing this figure with figure 5.14, it can be seen that the transient error is increased. The maximum (absolute) heading error is increased to about 0.011 rad, which is still smaller than the requirement of 0.017 rad. For this trajectory the errors are also quantified using the root-mean-square error. In table 5.2 the root-mean-square error Elat of the lateral position and the root-means- square error Eψ of the heading are shown for this simulation and the previous sim- ulation with the MB and the j-turn trajectory. It can be seen that Elat is decreased, because of the α-observer error. As a result of the increased transient heading error, Eψ is increased.

64 5.3 Moving Base model

0.2

0.15

0.1

0.05 lateral error [m]

0

−0.05 2 4 6 8 10 12 14 16 18 20 time [s]

Figure 5.18: The lateral position error of the MB.

−3 x 10 2

0

−2

−4

−6 heading error [rad] −8

−10

−12 2 4 6 8 10 12 14 16 18 20 time [s]

Figure 5.19: The heading error of the MB.

Table 5.2: Root-mean-square errors for the j-turn trajectory without observers and in- cluding the wheel slip observers.

without including wheel observers slip observers

Elat 0.03188 0.02120 Eψ 0.00138 0.00171

65 5. Analysis of the controller

5.3.3 Moving Base including all observers

In the previous subsection the position and the velocity of the MB is measured by non- existing sensors. In reality these values have to be estimated by the position and velocity observer of TNO. To study the effect of this observer on the behaviour of the controller, the previous simulations are repeated including the position and velocity observer.

First the simulation with the (extended) line trajectory is repeated. The results of the κ-controllers are not shown, because there are no visible differences with figures 5.15 and 5.16. This is because the only state used for the κ-controller and estimated by the position and velocity observer is the forward velocity u. In section 4.3 it is shown that u is estimated very well, so the error of the κ-controllers is only slightly decreased.

0.01

0.005

0 longitudinal error [m] −0.005

−0.01 0 0.5 1 1.5 2 2.5 3 3.5 4 time [s]

Figure 5.20: The longitudinal position error of the MB.

−3 x 10 6

5

4

3

2

longitudinal error [m] 1

0

−1 0 0.5 1 1.5 2 2.5 3 3.5 4 time [s]

Figure 5.21: The longitudinal error of the of the estimated position.

66 5.3 Moving Base model

In figure 5.20 the longitudinal position error is plotted for this simulation. Note that the position error of the controller is defined as the reference position minus the realized position. By comparing this figure with figure 5.17, it can be seen that the transient error of the position controller is reduced. This is a result of the error of the estimated position, see figure 5.21, where the longitudinal error of the estimated position is plotted. This error is defined as the real position minus the estimated po- sition, so a positive error means that the estimated position is lagging behind. Due to this error of the position observer, the MB now shows a steady-state position lead. The maximum (absolute) longitudinal position error is decreased to about 0.007 m, which is much smaller than the requirement of 0.5 m.

In table 5.3, the root-mean-square errors Eκ and Elong are shown for all the simu- lations with the MB and the (extended) line trajectory. It can be seen that Eκ is slightly increased, because of the small error of the estimated u. As a result of the lag of the estimated position, Elong is decreased.

Table 5.3: Root-mean-square errors for all simulations with the MB and the (extended) line trajectory.

without including wheel including all observers slip observers observers

Eκ 0.00104 0.00038 0.00039 Elong 0.00246 0.00327 0.00226

Second, the j-turn is simulated including all observers. In figure 5.22 the lateral posi- tion error is plotted. From this figure it can be seen that large oscillations occur. This is a result of the error of the estimated position, see figure 5.23 where the lateral position error of the estimated position is plotted. The maximum (absolute) lateral position er- ror is increased to about 0.21 m, which is still smaller than the requirement of 0.5 m.

0.2

0.15

0.1

0.05 lateral error [m]

0

−0.05 2 4 6 8 10 12 14 16 18 20 time [s]

Figure 5.22: The lateral position error of the MB.

67 5. Analysis of the controller

0.05

0

−0.05

−0.1 lateral error [m]

−0.15

−0.2 2 4 6 8 10 12 14 16 18 20 time [s]

Figure 5.23: Lateral position error of the estimated position.

−3 x 10 2

0

−2

−4

−6 heading error [rad] −8

−10

−12 2 4 6 8 10 12 14 16 18 20 time [s]

Figure 5.24: The heading error of the MB (j-turn).

In figure 5.24 the heading error for this simulation is plotted. It can be seen that the steady-state error increased. The maximum (absolute) heading error is still about 0.011 rad, which is smaller than the requirement of 0.017 rad.

Table 5.4: Root-mean-square errors for all simulations with the MB and the j-turn trajectory.

without including wheel including all observers slip observers observers

Elat 0.03188 0.02120 0.07151 Eψ 0.00138 0.00171 0.00189

68 5.3 Moving Base model

In table 5.4, the root-mean-square errors Elat and Eψ are shown for all the simu- lations with the MB and the j-turn trajectory. It can be seen that Elat is increased a lot, due to the error of the estimated position. Because of the increased steady-state heading error, Eψ is also increased.

Finally, the performance of the designed multicycle controller is demonstrated using an (high acceleration) eight-shaped trajectory. During this trajectory, the heading is kept constant. The maximum tangential acceleration is 5 m/s2 and the maximum tangential velocity is 5.8 m/s. The maximum acceleration perpendicular to the trajectory is 8.4 m/s2. See appendix C.4 for more information about this trajectory. In figure 5.25, 5.26 and 5.27 the longitudinal position error, the lateral position error and the heading error, respectively, are plotted. It can be seen that the maximum (absolute) position error in longitudinal and lateral direction are about 0.27 m and 0.18 m, respectively. This is within the posed requirement of 0.5 m. The maximum (absolute) heading error is about 0.0030 rad, which is also smaller than 0.017 rad, so it can be concluded that the controller shows a good behaviour within the posed requirements.

0.2

0.1

0

−0.1 longitudinal error [m]

−0.2

−0.3 0 2 4 6 8 10 12 time [s]

Figure 5.25: The longitudinal position error of the MB during the eight-shaped trajec- tory.

0.15

0.1

0.05

0

−0.05 lateral error [m] −0.1

−0.15

−0.2 0 2 4 6 8 10 12 time [s]

Figure 5.26: The lateral position error of the MB during the eight-shaped trajectory.

69 5. Analysis of the controller

−3 x 10 4

3

2

1

0

heading error [rad] −1

−2

−3 0 2 4 6 8 10 12 time [s]

Figure 5.27: The heading error of the MB during the eight-shaped trajectory.

5.4 Summary

In this chapter the behaviour of the designed controller is analyzed using several sim- ulations. First, the unicycle is tested using a unicycle model. It is shown that a steady- state lateral position error of the center of gravity occurs. This is a result of the used concept of a (virtual) control point, therefore is the lateral position error of the center of gravity also determined by the internal dynamics. It is demonstrated that it is very important to have stable internal dynamics, otherwise unwanted oscillations can occur, which result in unstable controller behaviour. Second, the concept of the multicycle controller is tested, using simulations with a multicycle model. It is shown that for trajectories where the wheels do not have equal accelerations, the wheels have different position errors, which results in interaction of forces between the wheels. Finally, the multicycle controller is tested, using simulations with the Moving Base model. It is shown that the κ-controllers of the rear wheels show an overshoot during a large acceleration. During steady-state cornering a significant lateral position error occurs. When the wheel slip observers are included, the overshoot of the κ-controllers and the lateral position error during steady-state cornering decrease. When the position and velocity observer of TNO is included, the position error increases due to the error of the estimated position. Finally, a simulation is made with an high acceleration eight- shaped trajectory. It is shown that the controller shows a good behaviour within the posed requirements.

70 Chapter 6

Conclusions and recommendations

In this report, the control design for an high performance 4ws4wd AGV is considered. The objective of the controller is to let the position and the heading of the vehicle follow a certain time-dependent reference trajectory. The controller has to be able to include non-linear tyre behaviour, therefore a new multicycle controller is designed. To be able to use this controller, two additional observers are designed to estimate the longitudinal and lateral wheel slip. The following conclusions and recommendations summarize the main results of this research.

6.1 Conclusions

Control concept To design a controller for an overactuated vehicle, the concept of decentralizing the tracking problem is used. The so-called multicycle controller converts the tracking problem of the vehicle’s center of gravity into a separate tracking problem for every wheel, i.e. a unicycle. The advantage of this approach is that extensive literature is available about controlling a unicycle and that this approach is generic with respect to the number and location of the wheels.

Unicycle controller To be able to include non-linear tyre behaviour in the controller design, a new unicy- cle model is derived, as commonly used in the field of vehicle dynamics. This model includes a linear tyre model with relaxation effects. It appears that input-output lin- earization is not possible for this model, due to the included tyre model. The controller consists therefore of a position controller and a (slave) longitudinal slip controller. The position controller consists of an input-output linearizing feedback law and PD con- troller. Instead of controlling the position of the center of gravity, the position of a control point in front of the wheel is controlled. Otherwise input-output linearization is not possible for the position controller. The longitudinal wheel slip controller con- sists of a full-state linearizing feedback law and PD controller. It is shown that the internal dynamics of the position controller, while driving along a straight line with a constant forward velocity, are stable if the length between the con- trol point and the tyre is larger than the relaxation length in lateral direction. These internal dynamics are important, because they influence the lateral position error of the center of gravity of the unicycle.

71 6. Conclusions and recommendations

Observers To be able to use the designed controller, two observers are designed additional to the position and velocity observer already used. These additional observers estimate the longitudinal and the lateral wheel slip. Both observers are reduced-order observers with linear error dynamics, of which the stability is proven. The performance of these observers is tested by comparing the estimated slip values with those of the MB model. Due to a different tyre model of the observers and the MB model, the estimated slip values are too small for large accelerations. Furthermore, errors of the estimated lateral slip occur, as result of the multicycle approach. Finally, both observers are tested using real-time experiments with the real Moving Base. Because the real slip is not measured, the estimated values during the experi- ments are compared to the estimated values during the simulations. It is shown that both observers are robust against signal noise and that only small errors occur despite of the significant error of the position and velocity observer. It can be concluded that both observers show a reasonably good performance both in the simulations and in reality.

Multicycle controller The behaviour of the designed multicycle controller is analyzed using simulations. It appears that for trajectories where the wheels have different acceleration profiles, in- teraction of forces between the wheels occur. However, no significant errors occur due to this effect. As a result of the PD position controller, the lateral wheel slip and the self-aligning torque of the tyres, a lateral offset occurs during cornering. Despite of these effects, the error of the position and the heading of the MB is well within the posed requirements. Finally, the effect of the observers on the behaviour of the controller is studied. It appears that the main position error of the MB is caused by the position and velocity observer. The error of the wheel slip observers results in less damping, but a smaller steady-state error. Due to the errors of the observers, the position and heading error of the MB is larger, but still within the posed requirements. The overall conclusion is that the designed controller has a good performance, but real-time experiments with the Moving Base should be performed, to evaluate the controllers performance in reality.

6.2 Recommendations

Position and velocity observer The position error of the MB is mainly a result of the error of the estimated position and velocity. The estimation of the lateral (and longitudinal) velocity can be improved by adding velocity measurements of an optical sensor (e.g. Corrsys).

Non-linear tyre model In appendix E, it is shown that the wheel slip observers show a better performance, when an exponential tyre model is used in the observers. The stability of these ob- servers should however be studied. Similar to the wheel slip observers, it is expected that the controller will show a bet- ter performance when an exponential tyre model is used. Because the derived unicycle model can be extended with an exponential tyre model, it is expected that the controller can also include an exponential tyre model.

72 6.2 Recommendations

Self-aligning torque To improve the lateral behaviour of the controller, it is recommended to include the self-aligning torque of the tyres. By including the self-aligning torque into the unicycle model, a unicycle controller can be designed, which is able to take this effect into ac- count.

Side slip angle As explained in chapter 5.1, the lateral position error can be reduced when the side slip angle is taken into account when the reference heading angle of the unicycle is deter- mined. This results however in an additional feedback loop, therefore the stability of the controlled unicycle, with this additional feedback, should be studied.

Velocity dependency As explained in chapter 3.2.3, the damping of the internal dynamics for low velocities can be improved when the length between the control point and the wheel is depend- ing on the forward velocity. This should be implemented and tested using simulations and experiments.

Control center of gravity Because input-output linearization is applied to design a unicycle controller, the posi- tion of a (virtual) control point is controlled. The lateral position error of the center of gravity is therefore also determined by the internal dynamics. It is recommended to investigate if a controller can be designed, which controls the center of gravity using a different control technique.

Estimated wheel slip versus real values The performance of the wheel slip observers is analyzed by comparing the estimated values with those of the MB model. When the wheel slip is measured in reality, using for example a Corrsys, the estimated values can be compared with the real slip values. The performance of the wheel slip observers can therefore be studied more precisely.

Robustness The parameter sensitivity of the designed controller is not studied in this research. Due to model errors and parameters errors, the input-output dynamics of the position and longitudinal wheel slip controller will not be exactly linearized. This can result in a de- creased performance of the controller, therefore the robustness of the controller should be studied.

Experiments and benchmark Finally, it is recommended to test the designed multicycle controller in reality. Due to unmodeled effects (e.g. turn-slip of the tyres), it is expected that the position and heading error will be larger in reality. Furthermore, the performance of the designed controller should be compared with the controllers already designed.

73 Bibliography

[1] R. Balasubramanian and T.R. Balch. Energy-optimal trajectories for overactuated robots. Master’s thesis, Carnegie Mellon University, 2002. [2] J.D. Bendtsen, P. Anderson, and T.S. Pedersen. Robust feedback linearization- based control design for a wheeled mobile robot. 6th International Symposium on Advanced Vehicle Control, pages 9–13, September 2002. [3] I.J.M. Besselink. Shimmy of aircraft main landing gears. PhD thesis, Technical University Delft, 2000. [4] J Boot. ATV control, regulating a 4wd/4ws autonomous guided vehicle. Master’s thesis, Technical University Eindhoven, March 2005. DCT 2005.31. [5] J. Borenstein. Control and kinematic design of multi-degree-of-freedom mobile robots with compliant linkage. IEEE Transactions on Robotics and Automation, 11(1):21–35, February 1995. [6] G. Campion, G. Bastin, and B. D’Andréa-Novel. Structural properties and classifi- cation of kinematic and dynamic models of wheeled mobile robots. IEEE Transac- tions on Robotics and Automation, 12(1), February 1996. [7] G. Campion, B. D’Andréa-Novel, and G. Bastin. Modelling and state feedback con- trol of nonholonomic mechanical systems. Proceedings of the 30th IEEE Conference on Decision and Control, pages 1184–1189, December 1991. [8] D. Chwa. Sliding-mode tracking control of nonholonomic wheeled mobile robots in polar coordinates. IEEE Transactions on Control Systems Technology, 12(4), July 2004. [9] B. D’Andréa-Novel, G. Campion, and G. Bastin. Control of wheeled mobile robots not satisfying ideal velocity constraints: a singular perturbation approach. Inter- nation Journal of Robust and Nonlinear Control, 5:243–267, 1995. [10] C. Canudas de Wit, B. Siciliano, and G. Bastin. Theory of Robot Control. Springer, 1996. ISBN: 3-54-076054-7. [11] W.E. Dixon, D.M. Dawson, and E. Zergeroglu. Tracking and regulation control of a mobile robot system with kinematic disturbances: a variable structure-like approach. Journal of Dynamic Systems, Measurements and Control, 122:616–623, December 2000. [12] G.F. Franklin, J.D. Powell, and A. Emami-Naeini. Feedback control of dynamical systems. Addison-Wesley Publishing Company Inc, 3rd edition, 1994. ISBN: 0- 201-52747-2. [13] O.J. Gietelink, J. Ploeg, B. de Schutter, and M. Verhaegen. Vehil: A test facility for validation of fault management systems for advanced driver assistance systems. Proceedings of the 1st IFAC Symposium on Advances in Automotive Control, 2004.

75 BIBLIOGRAPHY

[14] R. Holmberg and O. Khatib. Development and control of a holonomic mobile robot for mobile manipulation tasks. International Journal of Robotics Research, 19(11):1066–1074, 2000.

[15] Z. Jiang and H. Nijmeijer. Tracking control of mobile robots: a case study in backstepping. Automatica, 33(7):1393–1399, 1997.

[16] B. Kim and P. Tsiotras. Controllers for unicycle-type wheeled robots: theoretical results and experimental validation. IEEE Transactions on Robotics and Automation, 18(3), June 2002.

[17] R Leenen. Motion control design for a 4ws and 4wd overactuated vehicle. Master’s thesis, Technical University Eindhoven, Januari 2004. DCT 2003.121.

[18] E. Lefeber, J. Jakubiak, K. Tchon,´ and H. Nijmeijer. Observer based kinematic tracking controllers for a unicycle-type mobile robot. Proceedings of the 2001 IEEE International Conference on Robotics & Automation, pages 21–26, May 2001.

[19] W. Leroquais and B. D’Andréa-Novel. Vibrational control of wheeled mobile robots not satisfying ideal velocity constraints: the unicycle case. European Control Con- ference. Bruxelles, Belgique, 1997.

[20] A. De Luca and G. Oriolo. Modeling and control of nonholonomic mechanical system. Springer-Verlag, 1995.

[21] A. Mazur. New approach to designing input-output decoupling controllers for mobile manipulators. Bulletin of the polish acedemy of sciences, 53(1), 2005.

[22] I. Motte and G. Campion. Control of sliding mobile robots: a slow manifold approach. Mathematical Theory of Networks and Systems, 2000.

[23] C. Nielsen and M. Maggiore. Maneuver regulation via transverse feedback lin- earization: theory and examples. Proceedings of the IFAC Symposium on Nonlinear Control Systems (NOLCOS), September 2004.

[24] W. Oelen, H. Berghuis, H. Nijmeijer, and C. Canudas de Wit. Hybrid stabilizing control on a real mobile robot. IEEE Robotics and Automation Magazine, pages 16–23, June 1995.

[25] G. Oriolo, A. De Luca, and M. Vendittelli. WMR control via dynamic feedback linearization; design, implementation and experimental validation. IEEE Transac- tions on Control Systems Technology, 10(6), November 2002.

[26] H.B. Pacejka. Tyre and Vehicle Dynamics. Butterworth-Heinemann, 2002. ISBN: 0-7506-5141-5.

[27] K. Pathak and S.K. Agrawal. Planning and control of nonholonomic unicycle us- ing ring shaped local potential fields. Preceeding of the 2004 American Control Con- ference, pages 2368–2373, July 2004.

[28] K. Pathak and S.K. Agrawal. An integrated path planning and control framwork for nonholonomic unicycles. Preceedings of the 2005 IEEE International Conference on Robotics ans Automation, pages 4605–4610, April 2005.

[29] J. Ploeg. TNO formulasheet, help document ATS/lib: Tyre. TNO Automotive, 2000.

[30] J. Ploeg. TNO workdocument, werkpakket 02: Regeling en Simulatie. TNO, March 2003.

76 BIBLIOGRAPHY

[31] J. Ploeg, A.C.M. van der Knaap, and D.J. Verburg. Ats/agv - design, implementa- tion and evaluation of a high permormance agv. Proceedings of the IEEE Intelligent Vehicle Symposium, 2002. [32] J. Ploeg, J.P.M. Vissers, and H. Nijmeijer. Control design for an overactuated wheeled mobile robot. 4th IFAC Symposium on Mechatronic Systems, Heidelberg, pages 127–132, 2006. [33] N. Sarkar, X. Yun, and V. Kumar. Control of mechanical systems with rolling constraints: applications to dynamic control of mobile robots. The International Journal of Robotics Research, 13(1):55–69, February 1994. [34] S. Sastry. Nonlinear systems: analysis, stablitity and control. Springer-Verlag, 1999. ISBN: 0-387-98513-1.

[35] J.E. Slotine and W. Li. Applied nonlinear control. Prentice Hall International Inc, 1991. ISBN: 0-13-040890-5. [36] M.J. Sørenson. Artificial potential field approach to path tracking for a non- holonomic mobile robot. The 11th Mediterranean Conference on Control and Au- tomation, 2003. [37] H.G. Tanner and K.J. Kyriakopoulos. Discontinuous backstepping for stabilization of nonholonomic mobile robots. Proceedings of IEEE International Conference on Robotics and Automation, pages 3948–3953, May 2002. [38] J.P.M. Vissers. The control design for an overactuated vehicle. Master’s thesis, Technical University Eindhoven, August 2005. DCT 2005.114. [39] D. Wang and G. Xu. Full-state tracking and internal dynamics of nonholonomic wheeled mobile robots. IEEE/ASME Transactions on Mechatronics, 8(2):203–214, June 2003. [40] J. Yang and J. Kim. Sliding mode motion control of nonholonomic mobile robots. IEEE Transactions on Control Systems Technology, pages 15–23, May 1999.

77 Appendix A

Stability of the lateral wheel slip observer

In the first section of this appendix the stability of the α-observer, designed in section 4.1.1, is proven using Lyapunov’s direct method. In the second section, the feedback gains of the α-observer are determined and it is shown that the system is asymptotically stable, with these feedback gains.

A.1 Lyapunov's direct method

The error dynamics of the α-observer are described by:

e˙v = −l1 ev − Cn eα 1 u(t) (A.1) e˙α = ( − l2) ev − eα σα σα with equilibrium point (0, 0). The stability of this system can be proven with the fol- lowing Lyapunov function [34]:

1 1 2 1 2 (A.2) V (ev, eα) = ( − l2) ev + Cn eα 2 σα 2

1 which is a positive definite function as long as l2 < . The time derivative of V is: σα 1 V˙ (ev, eα) = ( − l2) eve˙v + Cn eαe˙α σα 1 2 u(t) 2 (A.3) = −( − l2)l1 ev − Cn eα σα σα

This is a negative definite function for l1 > 0 and u(t) > 0. This means that the observer error dynamics are asymptotically stable for:

l1 > 0 (A.4) 1 l2 < (A.5) σα u(t) > 0 (A.6)

However, for u(t) = 0, V˙ becomes:

˙ 1 2 (A.7) V = −( − l2)l1 ev σα 79 A. Stability of the lateral wheel slip observer

which is independent of eα and equal to zero for ev = 0. This proves that, for u(t) = 0, the observer error dynamics are stable, but this does not prove asymptotic stability. To prove that this system is also asymptotically stable for u(t) = 0, the principle of La Salle [34] is used. n ˙ Consider a set D ∈ R , where V 5 0, with number of states n. Define set S ∈ D, ˙ ˙ where V = 0. Because V 5 0 in D, all solutions starting in D will go to S. From (A.7) it follows that ev = 0 in S, so the observer error dynamics in S become: e˙ = C e v n α (A.8) e˙α = 0 because ev and u(t) are equal to zero. In S, there is only one equilibrium point, with eα = 0. Therefore, all solutions in S, will approach this equilibrium point for t → ∞. So, it can be concluded that all solutions starting in D, will approach the equilibrium point {ev, eα} = {0, 0}. This proves that the observer error dynamics are also asymp- totically stable for u(t) = 0. Note that the stability is proven for u(t) > 0 and for u(t) = 0. The stability is not proven for u(t) varying between both cases. This can however be shown by means of simulations, see section 4.2.2.

A.2 Pole placement

To determine the feedback gains, pole placement is applied in this section. With a constant forward velocity u, the α-observer has linear, time-invariant error dynamics: ˙ ˙ vˆ = −Cnαˆ − uψ + l1(v − vˆ) (A.9) ˙ vˆ − uαˆ αˆ = + l2(v − vˆ) σα

The poles of this system are placed in λα, which is a (negative) real number to ensure well-damped behaviour. The closed-loop system matrix Acl is:   −l1 −Cn Acl = 1 u (A.10) − l2 − σα σα

The characteristic equation of Acl is:

2 u u 1 (A.11) λα + λα(l1 + ) + l1 + Cn(− + l2) = 0 σα σα σα Solving this equation yields: r 1 u 1 u 2 4l1u 1 λα = − (l1 + ) ± (l1 + ) − − 4Cn(− + l2) (A.12) 2 σα 2 σα σα σα

Both poles are chosen to be equal, therefore l1 becomes: u l1 = −2λα − (A.13) σα The second term is zero when:

u 2 4l1u 1 (l1 + ) − − 4Cn(− + l2) = 0 (A.14) σα σα σα Substituting A.13 yields:

2 2 8λαu 4u 4Cn (A.15) (−2λα) + + 2 − + 4Cnk2) = 0 σα σα σα 80 A.2 Pole placement so

2 1 2 u u 1 (A.16) l2 = (λα + 2λα + 2 ) + Cn σα σα σα To ensure stable error dynamics of the observer for a varying forward velocity u(t), the calculated feedback gains have to satisfy the requirements following from the Lya- punov analysis of the previous section. Combining (A.4) and (A.13) yields:

u(t) u(t) −2λα − > 0 → λα < − (A.17) σα 2σα Combining (A.5) and (A.16) yields:

2 1 2 u(t) u(t) 1 1 (A.18) (λα + 2λα + 2 ) + < Cn σα σα σα σα so

2 2 u(t) u(t) (A.19) λα + 2λα + 2 > 0 σα σα Using the ABC formula the root can be determined: s 2 2 1 −2u(t) 1 4u(t) 4u(t) u(t) (A.20) λα = ± 2 − 2 = − 2 σα 2 σα σα σα

There is only one solution, which means that (A.19) holds for:

u(t) λα 6= − (A.21) σα

With the range of u(t) between 0 and umax, (A.17) and (A.21) can be combined in:

umax λα < − (A.22) σα

So, it can be concluded that the α-observer is asymptotically stable, when λα is chosen in such a way that (A.22) is satisfied.

81 Appendix B

Stability of the longitudinal wheel slip observer

In the first section of this appendix the stability of the κ-observer, designed in section 4.1.2, is proven using Lyapunov’s direct method. In the second section, the feedback gains of the κ-observer are determined and it is shown that the system is asymptotically stable, with these feedback gains.

B.1 Lyapunov's direct method

The error dynamics of the κ-observer are described by: u(t) R e˙κ = − eκ + ( − l1) eω σκ σκ (B.1) RKnm e˙ω = − eκ − l2 eω Iω with equilibrium point (0, 0). The stability of this system can be shown with the fol- lowing Lyapunov function:

1 RKnm 2 1 R 2 (B.2) V (eκ, eω) = eκ + ( − l1) eω 2 Iω 2 σκ R which is a positive definite function as long as l1 < . The time derivative of V is: σκ

RKnm R V˙ (eκ, eω) = eκe˙κ + ( − l1) eωe˙ω Iω σκ RKnmu(t) 2 R 2 (B.3) = − eκ − l2( − l1) eω Iωσκ σκ which is a negative definite function for l2 > 0 and u(t) > 0. This means that the observer error dynamics are asymptotically stable for: R l1 < (B.4) σκ l2 > 0 (B.5) u(t) > 0 (B.6)

However, for u(t) = 0, V˙ becomes:

˙ R 2 (B.7) V = −l2( − l1) eω σκ 83 B. Stability of the longitudinal wheel slip observer

which is independent of eκ and equal to zero for eω = 0. This proves that, for u(t) = 0, the observer error dynamics are stable, but this does not prove asymptotic stability. To prove that this system is also asymptotically stable for u(t) = 0, the principle of La Salle [34] is used. n ˙ Consider a set D ∈ R , where V 5 0, with number of states n. Define set S ∈ D, ˙ ˙ where V = 0. Because V 5 0 in D, all solutions starting in D will go to S. From (B.7) it follows that eω = 0 in S, so the observer error dynamics in S become:

e˙κ = 0 (B.8) RKnm e˙ω = − eκ Iω because eω and u(t) are equal to zero. In S, there is only one equilibrium point, with eκ = 0. Therefore, all solutions in S, will approach this equilibrium point for t → ∞. So, it can be concluded that all solutions starting in D, will approach the equilibrium point {eκ, eω} = {0, 0}. This proves that the observer error dynamics are also asymp- totically stable for u(t) = 0. Note that the stability is proven for u(t) > 0 and for u(t) = 0. The stability is not proven for u(t) varying between both cases. This can however be shown by means of simulations, see section 4.2.1.

B.2 Pole placement

To determine the feedback gains, pole placement is applied in this section. With a constant forward velocity u, the κ-observer has linear, time-invariant error dynamics:

u R e˙κ = − eκ + ( − l1) eω σκ σκ (B.9) RKnm e˙ω = − eκ − l2 eω Iω

The poles of this system are placed in λκ, which is a (negative) real number to ensure well-damped behaviour. The closed-loop system matrix Acl is:

 u R  − − l1 σκ σκ (B.10) Acl = RKnm − −l2 Iω

The characteristic equation of Acl is:

2 u u RKnm R (B.11) λκ + λκ( + l2) + l2 + ( − l1) = 0 σκ σκ Iω σκ Solving this equation yields: r 1 u 1 u 2 4l2u 4RKnm R λκ = − ( + l2) ± ( + l2) − − ( − l1) (B.12) 2 σκ 2 σκ σκ Iω σκ

Both poles are chosen to be equal, therefore l2 becomes: u l2 = −2λκ − (B.13) σκ The second term is zero when:

u 2 4l2u 4RKnm R ( + l2) − − ( − l1) = 0 (B.14) σκ σκ Iω σκ 84 B.2 Pole placement

Substituting (B.13) yields:

2 u u 4RKnm R (−2λκ) + (8λκ + 4 ) − ( − l1) = 0 (B.15) σκ σκ Iω σκ This can be written as:

4RKnm R 2 u u (B.16) ( − l1) = 4λκ + (8λκ + 4 ) Iω σκ σκ σκ so

Iω 2 u u R (B.17) l1 = − (λκ + (2λκ + )) + RKnm σκ σκ σκ To ensure stable error dynamics of the observer for a varying forward velocity u(t), the calculated feedback gains have to satisfy the requirements following from the Lya- punov analysis of the previous section. Combining (B.4) and (B.17) yields:

Iω 2 u(t) u(t) (B.18) − (λκ + (2λκ + )) < 0 RKnm σκ σκ or

2 u(t) u(t) (B.19) λκ + (2λκ + ) > 0 σκ σκ Using the ABC formula the root can be determined: s 1 2u(t) 1 4u(t)2 4u(t)2 u(t) λκ = − ± − = − (B.20) 2 σκ 2 σκ σκ σκ

There is only one solution, which means that (B.18) holds for:

u(t) λκ 6= − (B.21) σκ Combining (B.5) and (B.13) yields:

u(t) −2λκ − > 0 (B.22) σκ so u(t) λκ < − (B.23) 2σκ

With the range of u(t) between 0 and umax, (B.21) and (B.23) can be combined in:

umax λκ < − (B.24) σκ

So, it can be concluded that the κ-observer is asymptotically stable, when λκ is chosen in such a way that (B.24) is satisfied.

85 Appendix C

Reference trajectories

In this appendix, more information about the used reference trajectories is given. All trajectories have a non-rolling start (x = 0, y = 0), from which the velocity is increased to a prescribed velocity with a prescribed acceleration. At the end of the trajectory, the velocity is decreased to zero with a prescribed deceleration. Note that the trajectories are constructed in such a way that all reference accelerations are continue. In the first section the line trajectories are described. In the second section the cir- cular trajectories are explained and in the third section the j-turn trajectory is described. Finally, the eight-shaped trajectory is explained in section four.

C.1 Line trajectories

To test the κ-observer, two different line trajectories used: a low acceleration and a high acceleration. In case of the low acceleration line trajectory, the maximum longitudinal acceleration and deceleration are 1 m/s2 and the maximum forward velocity is 1.7 m/s. In figure C.1 the position of the low acceleration line trajectory is plotted and in C.2 the longitudinal and lateral acceleration are plotted.

10

5

0 y [m]

−5

−10

0 5 10 15 20 25 x [m]

Figure C.1: Position of low acceleration line trajectory.

87 C. Reference trajectories

1 ] 2 0.5

0

−0.5

acceleration [m/s −1 0 5 10 15 time [s] 1 ] 2 0.5

0

−0.5

acceleration [m/s −1 0 5 10 15 time [s]

Figure C.2: Longitudinal (upper gure) and lateral (lower gure) acceleration of the low acceleration line trajectory.

In case of the high acceleration line trajectory, the maximum longitudinal acceler- ation and deceleration are 7 m/s2 and the maximum forward velocity is 8.3 m/s. In figure C.3 the position of the high acceleration line trajectory is plotted and in C.4 the longitudinal and lateral acceleration are plotted. In chapter five the extended line trajectory is used to test the controller. The acceler- ations and velocity are equal to those of the high acceleration line trajectory. The length is however increased to ensure stead-state behaviour. Note that the simulations with the extended line trajectory are stopped before decelerating to stand-still.

10

5

0 y [m]

−5

−10

0 5 10 15 20 25 x [m]

Figure C.3: Position of high acceleration line trajectory.

88 C.2 Circular trajectories

10 ] 2 5

0

−5

acceleration [m/s −10 0 1 2 3 4 5 6 time [s] 1 ] 2 0.5

0

−0.5

acceleration [m/s −1 0 1 2 3 4 5 6 time [s]

Figure C.4: Longitudinal (upper gure) and lateral (lower gure) acceleration of the high acceleration line trajectory.

C.2 Circular trajectories

To test the α-observer, two different circular trajectories used: a low acceleration and a high acceleration. In case of the low acceleration circular trajectory, the maximum longitudinal and lateral acceleration (and deceleration) are 1 m/s2 and the maximum forward velocity is 2.8 m/s. In figure C.5 the position of the low acceleration circular trajectory is plotted and in figure C.6 the longitudinal and lateral acceleration are plot- ted for this trajectory. Note that all circular trajectories are driven counterclockwise.

14

12

10

8 y [m] 6

4

2

0 −8 −6 −4 −2 0 2 4 6 8 x [m]

Figure C.5: Position of the low acceleration circular trajectory.

89 C. Reference trajectories

1 ] 2 0.5

0

−0.5

acceleration [m/s −1 0 5 10 15 20 25 time [s] 1.5 ] 2 1

0.5

0

acceleration [m/s −0.5 0 5 10 15 20 25 time [s]

Figure C.6: Longitudinal (upper gure) and lateral (lower gure) acceleration of the low acceleration circular trajectory.

In case of the high acceleration circular trajectory, the maximum longitudinal and lateral acceleration (and deceleration) are 7 m/s2 and the maximum forward velocity is 7.2 m/s. In figure C.7 the position of the high acceleration circular trajectory is plotted and in figure C.8 the longitudinal and lateral acceleration are plotted for this trajectory.

14

12

10

8 y [m] 6

4

2

0 −8 −6 −4 −2 0 2 4 6 8 x [m]

Figure C.7: Position of the high acceleration circular trajectory.

90 C.3 J-turn trajectory

10 ] 2 5

0

−5

acceleration [m/s −10 0 2 4 6 8 10 time [s] 8 ] 2 6

4

2

acceleration [m/s 0 0 2 4 6 8 10 time [s]

Figure C.8: Longitudinal (upper gure) and lateral (lower gure) acceleration of the high acceleration circular trajectory.

C.3 J-turn trajectory

In chapter five simulations are done with a j-turn trajectory to test the designed con- troller. This trajectory consists of two parts. The first part is a high acceleration line trajectory. From a non-rolling start, the velocity is increased to 7.2 m/s with a longitu- dinal acceleration of 7 m/s2. The second part consists of a circular trajectory. Around t = 2.5 s, the trajectory is turned to a circular trajectory with a lateral acceleration of 7 m/s2. In figure C.9 the position of the j-turn trajectory is plotted and in figure C.10, the heading angle of this trajectory is plotted. In figure C.11 the longitudinal and lateral acceleration are plotted for this trajectory.

16

14

12

10

8 y [m] 6

4

2

0 0 5 10 15 20 x [m]

Figure C.9: Position of the j-turn trajectory.

91 C. Reference trajectories

18

16

14

12

10

8

6 heading angle [rad]

4

2

0 0 5 10 15 20 time [s]

Figure C.10: Heading angle of the j-turn trajectory.

10 ] 2

5

0

acceleration [m/s −5 0 5 10 15 20 time [s] 8 ] 2 6

4

2

acceleration [m/s 0 0 5 10 15 20 time [s]

Figure C.11: Longitudinal (upper gure) and lateral (lower gure) acceleration of the j-turn trajectory.

C.4 Eight-shaped trajectory

In chapter five a simulation is done with the eight-shaped trajectory to demonstrate the performance of the designed multicycle controller. During this trajectory, the heading is fixed to 0 rad, therefore the longitudinal and lateral direction are equal to the x and y direction, respectively. The tangential acceleration is 5 m/s2 and the tangential velocity is 5.3 m/s. With a radius of 3.4 m, this results in a centripetal acceleration of 8.4 m/s2.

92 C.4 Eight-shaped trajectory

10

8

6

4 y [m] 2

0

−2

−4 0 5 10 15 x [m]

Figure C.12: Position of the eight-shaped trajectory.

10 ] 2 5

0

−5

acceleration [m/s −10 0 2 4 6 8 10 12 time [s] 10 ] 2 5

0

−5

acceleration [m/s −10 0 2 4 6 8 10 12 time [s]

Figure C.13: Longitudinal (upper gure) and lateral (lower gure) acceleration of the eight-shaped trajectory.

93 Appendix D

Experiments with the wheel slip observers

In this appendix the unfiltered results of the experiments with the κ- and α-observer in section 4.3 are shown. In the first section κˆ during the experiment and during the simulation for the low and high acceleration line trajectories are plotted. In the second section αˆ during the experiment and during the simulation for the low and high acceleration circular trajectories are plotted.

D.1 Longitudinal wheel slip observer

−3 x 10 2.5 experiment 2 simulation 1.5

1

0.5

slip [−] 0

−0.5

−1

−1.5

−2 0 2 4 6 8 10 12 14 time [s]

Figure D.1: Unltered κˆ during experiments and simulations (low acceleration).

95 D. Experiments with the wheel slip observers

0.015 experiment simulation 0.01

0.005

0 slip [−]

−0.005

−0.01

−0.015 0 1 2 3 4 5 6 time [s]

Figure D.2: Unltered κˆ during experiments and simulations (high acceleration).

D.2 Lateral wheel slip observer

0.015 experiment simulation 0.01

0.005 slip [−] 0

−0.005

−0.01 0 5 10 15 20 25 time [s]

Figure D.3: Unltered αˆ during experiments and simulations (low acceleration).

96 D.2 Lateral wheel slip observer

0.04 experiment simulation 0.03

0.02

0.01 slip [−] 0

−0.01

−0.02

0 2 4 6 8 10 time [s]

Figure D.4: Unltered αˆ during experiments and simulations (high acceleration).

Note that, during both experiments, αˆ is very noisy. This high-frequency noise is a result of measurement noise of ψ˙.

97 Appendix E

Exponential tyre model in observers

To improve the performance of the wheel slip observer, an exponential tyre model can be used instead of a linear tyre model. A linear tyre model is only realistic for small values of slip. In reality, the generated tyre force shows saturation for large slip values. Therefore an exponential tyre model is more realistic. In the first section of this appendix, an α- and κ-observer with an exponential tyre model are designed. In the second section the designed observers are tested using simulations.

E.1 Design of the exponential wheel slip observers

To design an α-observer with an exponential tyre model, the following tyre model in lateral direction is used: 1 − e−Ceα Flat = µlatmg ( ) (E.1) 1 + e−Ceα with lateral slip stiffness coefficient Ce and lateral friction coefficient µlat, which de- termines the maximum lateral force. This exponential tyre model shows a very good match with the MB tyre model, within the used range of −0.04 < α < 0.04. This can be seen in figure E.1, where the lateral force Flat is plotted as a function of α for the MB tyre model, the linear tyre model and the exponential tyre model. From this figure it can be expected that the observer, with an exponential tyre model, will show a better match with the MB model, for large accelerations. With this exponential tyre model, the α-observer, described by (4.16), becomes: 1 − e−Cαˆ vˆ˙ = −µ g ( ) − u(t)ψ˙ + l (v − vˆ) (E.2) lat 1 + e−Cαˆ 1

˙ vˆ − u(t)ˆα αˆ = + l2(v − vˆ) (E.3) σα The observer error dynamics, of the α-observer with an exponential tyre model, are described by: 1 − e−Cα 1 − e−Cαˆ e˙ = −l e + µ g ( − ) (E.4) v 1 v lat 1 + e−Cα 1 + e−Cαˆ 1 u(t) e˙α = ( − l2) ev − eα (E.5) σα σα

99 E. Exponential tyre model in observers

3000 MB tyre model 2000 Linear tyre model Exponential tyre model

1000

0

lateral force [N] −1000

−2000

−3000 −0.04 −0.03 −0.02 −0.01 0 0.01 0.02 0.03 0.04 α [−]

Figure E.1: Lateral tyre force as a function of α, for the MB tyre model, the linear tyre model and the exponential tyre model.

These error dynamics are no longer linear and a Lyapunov function, which proves sta- bility, is not (yet) found. Furthermore, the feedback gains can not be determined by pole placement, because the observer error dynamics are non-linear.

Using the same exponential tyre model, a κ-observer with an exponential tyre model can be designed. The κ-observer becomes:

Rωˆ − u(t) − u(t)ˆκ κ˙ = + l1(ω − ωˆ) (E.6) σκ

1−e−Keκˆ Td − Rµlongmg ( 1+e−Keκˆ )ˆκ ω˙ = + l2(ω − ωˆ) (E.7) Iω with longitudinal slip stiffness coefficient Ke and longitudinal friction coefficient µlong. Similar to the α-observer with an exponential tyre model, the observer error dy- namics are no longer linear and a Lyapunov function which proves stability is not (yet) found. Furthermore, the feedback gains can not be determined by pole placement, because the observer error dynamics are non-linear.

E.2 Simulations with the exponential wheel slip ob- servers

In this section the simulations of section 4.2 without friction are repeated. First the κ-observer is tested using the low and high acceleration line trajectories. In figure E.2 and E.3, κˆ of the exponential and linear observer are plotted together with κ of the MB model for the low and high acceleration line trajectories. From these figures it can be seen that, for large accelerations, κˆ of the exponential observer is larger. This results in a better match with κ of the MB model, as already expected. For small accelerations however, κˆ is slightly smaller, because the stiffness around κ = 0 is slightly larger than that of the MB model. Second the α-observer is tested using the low and high acceleration circular trajec- tories. In figure E.4 and E.5 the estimated α of the exponential and linear observer are

100 E.2 Simulations with the exponential wheel slip observers

−3 x 10 2 exponential observer 1.5 linear observer MB model 1

0.5

[−] 0 κ −0.5

−1

−1.5

−2 0 2 4 6 8 10 12 14 time [s]

Figure E.2: κˆ of the linear and exponential observer together with κ of the MB model (low acceleration).

0.015 exponential observer 0.01 linear observer MB model

0.005

[−] 0 κ

−0.005

−0.01

−0.015 0 1 2 3 4 5 6 time [s]

Figure E.3: κˆ of the linear and exponential observer together with κ of the MB model (high acceleration).

plotted together with the MB model for the low and high acceleration circular trajec- tories. From these figures it can be seen that, for small accelerations, αˆ is decreased, because the stiffness around α = 0 is slightly larger. For large accelerations, αˆ is in- creased, which results in a better match with the MB model. Note that during the last simulation, the error of αˆ is still significant, see figure E.5. This means that the other two effects, explained in section 4.2.2, are also very important. From these simulations it can be concluded that, although the stability of both ob- servers is not proven, both exponential observers show a better match with the MB model for large accelerations. For small accelerations however, the match with the MB model is slightly decreased.

101 E. Exponential tyre model in observers

−3 x 10 3

2.5

2

1.5 [−] α 1

0.5 exponential observer 0 linear observer MB model −0.5 0 5 10 15 20 25 time [s]

Figure E.4: αˆ of the linear and exponential observer together with α of the MB model (low acceleration).

0.03

0.025

0.02

0.015 [−] α 0.01

0.005 exponential observer 0 linear observer MB model −0.005 0 2 4 6 8 10 time [s]

Figure E.5: αˆ of the linear and exponential observer together with α of the MB model (high acceleration).

102