N° thesis:
FINAL PROJECT
Presented to
LOS ANDES UNIVERSITY ENGINEERING FACULTY
DEPARTMENT OF ELECTRIC AND ELECTRONIC ENGINEERINGS
Submitted in partial fulfillment of the requirements for the award of the degree of
MASTER OF SCIENCE IN
ELECTRONIC AND COMPUTER ENGINEERINGS
by
Camilo Garc´ıa Tenorio
Bond Graph Approach to Interconnection and Damping Assignment Passivity-based Control:
Application to Traction Control
Thesis defended on july 17 2014 in front of the jury: Jury composition
Advisor: Nicanor Quijano, Associate Professor, Los Andes University Co-Advisor: Luis Mu˜noz, Assistant Professor, Los Andes University
Jury: Alain Gauthier, Full Professor, Los Andes University Carlos Ocampo, Assistant Professor, Technical University of Catalunya
Abstract
In recent years, the control technique interconnection and damping assign-ment passivity-based control has been a very important topic of research, this is because of the energetic interpretation that it gives to the problem of controlling systems with Port Hamiltonian structure, which in turn describes systems in terms of their energy function. This article addresses this prob-lem and gives some examples in which the technique can be applied on the vehicle control dynamics, introducing a way of defining new interconnection and damping matrices based on the bond graph modeling approach.
Contents
1 Problem Definition 1
2 IDA-PBC 3
2.1 Concept of IDA-PBC . . . 3
2.2 Invariant Sets . . . 5
2.3 Casimir Functions . . . 5
2.4 Port-Hamiltonian System models . . . 6
2.5 Energy Shaping . . . 8
2.6 ES with IDA . . . 10
3 Bond Graphs 12 3.1 Junction Structures . . . 14
3.2 Bond Graph Example . . . 16
4 Bond Graphs Applied to IDA-PBC 18 5 Examples 21 5.1 Energy Shaping Example . . . 21
5.2 Quarter Vehicle Suspension Control . . . 25
5.2.1 Simulation Results . . . 28
6 Discussion 31 7 Conclusion 32 A Simulation Code 33 A.1 QCarData . . . 33
A.2 QCarODE . . . 35
List of Figures
1.1 Wheel-Terrain Interaction. . . 2
2.1 Feedback Interconnection. . . 4
3.1 Generic bond graph. . . 12
3.2 Interconnection of systems A and B. . . 13
3.3 Integral Causality. . . 14
3.4 Zero junction. . . 15
3.5 One junction. . . 15
3.6 Two port elements. . . 16
3.7 Simple mass spring system . . . 17
3.8 Bond graph of simple mass spring system. . . 17
4.1 Coupled masses. . . 19
4.2 Bond graph of coupled masses. . . 19
4.3 Bond graph with added modulated gyrator. . . 20
5.1 Bristle deflection. . . 22
5.2 Force vs. relative velocity with ko = 100, θ = 1, µc = 0.8, µs= 1.5,vs= 5 and α= 2 . . . 23
5.3 Invariant set. . . 25
5.4 Quarter car suspension model. . . 25
5.5 Quarter Vehicle . . . 26
5.6 Bond graph quarter vehicle with adds gyrator. . . 27
5.7 Response of the system with v = 2 (m/s) . . . 29
Chapter 1
Problem Definition
The objective of this thesis is to present a more systematic approach to the IDA-PBC technique, as a mean to do that, two examples related to the traction control problem will be presented: one to illustrate the use of IDA-PBC on non linear systems and the second to show the use of the proposed approach.
The problem of traction control in longitudinal dynamics arrises when there is a wheel slip component in the interaction of the wheel with the terrain. This happens when the torque delivered by the the motor exceeds the adherence capacity of the wheel and the terrain. Figure 1.1 shows the wheel terrain interaction in longitudinal dynamics. The traction force applied into the vehicle has two components: the normal force perceived by the wheel and the coefficient of friction as a function of the longitudinal velocity of the vehicle and the angular velocity of the wheel given by,
F =µ(v, w)N
To improve traction, both, the coefficient of friction and the normal force have to be maximized, the first by finding and tracking the wheel slip com-ponent that maximizes its value [1].
The normal force perceived by the wheel is closely related to the suspen-sion, this can be seen in Figure 1.1, where the road disturbance can affect the normal force and subsequently, have a handle on performance. The way to cope with this problem is to make the suspension stiff. The problem of having a stiffer suspension is that the main purpose of the suspension, which
Fr
Ff
Nr
Nf N
F w v
Figure 1.1: Wheel-Terrain Interaction.
is isolating the vibrations produced by the road input perturbation, worsens and therefore the comfort of the passengers.
In order to present the use of IDA-PBC on non linear systems, an approx-imation to the solution of the tracking of the optimal wheel slip component will be presented, as developed by [2]. A solution to the suspension stiff -ness problem will be presented using the IDA-PBC technique complimented with the bond graph approach over a lumped linear suspension model. The solution will be in terms of augmenting the stiffness of the suspension to handle on performance while the controller handles on comfort and there-fore reducing the gap between the two possible choices for tuning a vehicle suspension.
Chapter 2
IDA-PBC
Many dynamical systems can be described by Port Hamiltonian (PH) mod-els, where the energy of the system, the interconnection matrix and the damping matrix are emphasized. These intrinsic properties of the system are suitable within the passivity based control (PBC) framework that ex-ploits these properties to control systems via energy/storage function, whose minimum is at a desired equilibrium point. An extension of PBC is the in-terconnection and damping assignment passivity-based control (IDA-PBC) where the goal is to assign a new interconnection, damping matrices and energy function to the PH system to achieve control objectives [3].
Classical control design is traditionally based on a signal processing view-point, where the plant to be controlled and the controller are signal processing devices that transform some input signals into outputs. The energy approach leaves aside this classical viewpoint and adopts a behavioral approach [4]. With this in mind, the design of the controller is reduced to define a set of equations additional to the differential and algebraic equations of the system imposing a desired behavior over it.
2.1
Concept of IDA-PBC
Parting from a dynamical system model that is an energy processor with portsu andy (i.e., inputs and outputs) whose conjugate is power, (e.g., flow and effort variables, force-velocity, or voltage-current in mechanical transla-tion and electric systems),
u⊤y= power
with states x ∈ X of the space state of the system (e.g., X = Rn) and
equation given by,
H[x(t)]−H[x(0)]
! "# $
Stored E
=
% t
0
u⊤(s)y(s)ds
! "# $
Supplied E
− d(t)
!"#$ Disipated E
The controller is also an energy processing dynamical system with ports uc
and yc whose conjugate is power,
u⊤cyc = power
with states ξ ∈ Xc of the space state of the controller (e.g., Xc = Rm) and
energy function Hc(ξ) : Xc → R that satisfies the energy balance equation
given by,
H[ξ(t)]−H[ξ(0)]
! "# $
Stored E
=
% t
0
u⊤c (s)yc(s)ds
! "# $
Supplied E
− d(t)
!"#$ Dissipated E
With this at hand, the strategy consists in making a feedback interconnection between the systems as depicted in Figure 2.1. In which (with input v = 0) u⊤y = u⊤u
c = u⊤cu = −u⊤c yc (i.e., power preserving interconnection), to
achieve a total desired energy function Hd(x,ξ) = H(x) +Hc(ξ).
u y
yc uc
Πu,y
Πuc,yc
v
Figure 2.1: Feedback Interconnection.
The problem now is that the added energy of the controller has its dynam-ics living in a different space than the original dynamical system. Then, the choice for the controller energy, which is freely assignable, is not clear. The way to couple the energy functions is via Casimir functions [3], by restricting the motion of the closed loop system to a certain subspace of the extended space state (x,ξ)∈X×Xc (i.e., generate invariant sets where the trajectories
2.2
Invariant Sets
Considering the dynamical system given by, ˙
x=f(x), x∈Rn
a set M⊂Rn is invariant with respect to the flow of the system if,
x(0)∈M⇒x(t)∈M, ∀t≥0
which means that if the states x start in the set, they remain in the set. Defining this set as,
M!{x∈Rn|D(x) = 0} (2.1)
given the function D(x) : Rn → Rn−m, D ∈ C1, the set M (Characterized
by the roots of the function D(x)) defined by Equation (2.1), is invariant if the partial differential equation (PDE) ˙D|x∈M = 0 is satisfied. That is, if the time derivative of the function evaluated at the manifold is null.
2.3
Casimir Functions
Applying the aforementioned definition of invariant sets to the systems feedback interconnection, the desired form of the invariant set, where the desired system lives all the time has the form,
Ω!{(x,ξ)∈X ×Xc|C(x,ξ) = 0}
withC(x,ξ) =ξ−F(x), rendering the dynamics dependent of the the desired energy function Hd(x,ξ) =H(x) +Hc(F(x)) in which the controller energy
is in terms of the systems space stateX, and thus, coupling the states of the controller with the states of the plant as ξ = F(x). This is achieved if and only if the PDE,
˙
C(x,ξ) = ˙ξ−F˙(x) = 0 (2.2) is satisfied. The solution of the PDE Equation (2.2), is very difficult if the system is addressed in the classical way. That means not taking into ac-count the specific energy function or the geometry of the dynamics that Port-Hamiltonian (PH) systems provide. Additionally, the solutions are de-pendent of the energy of the system H(x) and the energy of the controller Hc(ξ) giving as a result a set of non linear PDEs which is why Casimir
func-tions are used. Casimir funcfunc-tions are solufunc-tions that define subspaces that are invariant for all energy functions that achieve independence of the function F(x) and the energy functions of the plant H(x) and the controller Hc(ξ)
Definition 2.3.1 (Casimir function). Consider the dynamic system with states x ∈ X and Hamiltonian energy function H(x) : X → R. A function C(x) :X →Ris a Casimir function if and only ifC˙(x) = 0 for every possible choice of energy function H(x)
Proposition 2.3.1. Assume a function C(x,ξ) = ξ−F(x) exists, for the function F(x) :Rn→Rm such that the set,
Ω!{(x,ξ)∈X ×Xc|C(x,ξ) = 0} (2.3)
of the interconnected system is invariant, then for all Φ(ξ) : Rm → R, the
function Equation (2.4), satisfies Equation (2.5).
Hd(x,ξ) = H(x) +Hc(ξ) +Φ(F(x)) (2.4)
˙
Hd(x,ξ)≤v⊤y (2.5)
The new energy function is Hd(x,ξ), which given F(x), can be shaped
select-ing Hc(ξ) and Φ(F(x)).
The main result is that energy shaping is possible if the set of partial differential equations has a solution and the system can be represented as PH.
2.4
Port-Hamiltonian System models
A PH system is a dynamical system characterized by,
Π(u,y) = &
˙
x = [I(x)−R(x)]∇xH(x) +g(x)u
y =g(x)⊤∇
xH(x)
(2.6)
where u⊤y has units of power, −I(x) = I⊤(x) (skew symetric) is the inter-connection matrix, R(x) = R⊤(x)≥0 is the damping matrix and g(x) is the input matrix. This systems have the property of being cyclo-passive as in,
˙
H(x) =−∇xH⊤(x)R(x)∇xH(x) +u⊤y
≤u⊤y
which means that the storage function H(x) of the system is allowed to be negative and the passivity condition is only satisfied under certain closed trajectories of the system. Different from passive systems, where H(x)≥0.
If the controller is defined as another PH dynamical system characterized by,
Πc(ξ) = &
˙
ξ = [Ic(ξ)−Rc(ξ)]∇ξHc(ξ) +gc(ξ)uc
yc =gc⊤(ξ)∇ξHc(ξ)
where u⊤cyc has units of power, −Ic(ξ) = Ic⊤(ξ) (skew symetric) is the
con-troller interconnection matrix, Rc(ξ) =R⊤c (ξ)≥0 is the controller damping
matrix andg(ξ) is the controller input matrix. This system has the property of being cyclo-passive as in,
˙
H(x) = −∇ξHc⊤(ξ)R(ξ)∇ξH(ξ) +u⊤c yc
≤u⊤c yc (2.7)
As the interconnection of two cyclo-passive systems is cyclo-passive, the interconnection of the original system and the controller is the desired cyclo-passive system represented by,
Πd(x,ξ)= ⎧ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎩ + ˙ x ˙ ξ ,
= [If b(x,ξ)−Rf b(x,ξ)]
+
∇xH(x)
∇ξHc(ξ)
, + y yc , = +
g(x) 0 0 gc(ξ)
, +
∇xH(x)
∇ξHc(ξ)
, (2.8)
where the matrices If b(x,ξ) and Rf b(x,ξ) are defined as follows,
If b(x,ξ) =
-I(x) −g(x)g⊤
c (ξ)
gc(ξ)g⊤(x) Ic(ξ)
.
Rf b(x,ξ) =
-R(x) 0 0 Rc(ξ)
.
As a direct consequence of the feedback interconnection of the systems, we are looking for solutions to the PDE given by,
/
∂⊤C(x,ξ)
∂x
∂⊤C(x,ξ)
∂ξ
0
[If b(x,ξ)−Rf b(x,ξ)] = 0 (2.9)
that is independent of the energy functions of the system and the energy function of the controller. Therefore exploiting the geometric structure of PH systems and simplifying the PDE that has to be solved. Rewriting and operating over Equation (2.9), we arrive at the conclusion that C(x,ξ) is a solution of the PDE Equation (2.9), and a Casimir for the interconnected
system Equation (2.7), if and only if the Equations (2.10) through (2.14), are satisfied.
∂⊤C(x,ξ) ∂x I(x)
∂C(x,ξ)
∂x =
∂⊤C(x,ξ) ∂ξ Ic(ξ)
∂C(x,ξ)
∂ξ (2.10)
R(x)∂C(x,ξ)
∂x = 0 (2.11)
Rc(ξ)∂C(∂ξx,ξ) = 0 (2.12)
∂⊤C(x,ξ)
∂x I(x) =−
∂⊤C(x,ξ) ∂ξ gc(ξ)g
⊤(x) (2.13) ∂⊤C(x,ξ)
∂ξ Ic(ξ) =
∂⊤C(x,ξ) ∂x g(x)g
⊤
c (ξ) (2.14)
As the Casimir C(x,ξ) = F(x)−ξ, The set of PDEs. reduce to Equations (2.15) through (2.18).
∂⊤F(x) ∂x I(x)
∂F(x)
∂x =Ic(ξ) (2.15)
R(x)∂F(x)
∂x = 0 (2.16)
Rc(ξ) = 0 (2.17)
∂⊤F(x)
∂x I(x) =−gc(ξ)g
⊤(x) (2.18)
Substituting Equation (2.18), into Equation (2.8), and evaluating for the dynamics x of the original system yields,
˙
x= [I(x)−R(x)]∇xH(x)−g(x)gc⊤(ξ)∇ξHc(ξ) (2.19)
This means that is possible to assign a new interconnection, a new damp-ing and shape the energy of the system with the feedback interconnection of another dynamical system.
2.5
Energy Shaping
For example, taking a PH system of the form Equation (2.6), and applying a controller in feedback interconnection that consists of a simple integrator given by,
Πc(ξ) = &
˙
ξ =uc
The goal is to render the dynamics of the system to a desired state without changing the interconnection, just by adding new energy to achieve a desired energy of the system Hd(x) :X →R, as can be seen in,
˙
x= [I(x)−R(x)]∇xH(x) +g(x)u
= [I(x)−R(x)]∇xH(x) +g(x)β(x)
= [I(x)−R(x)]∇xHd(x) (2.20)
in which the input to the PH system is a function u = ∇ξHc(ξ) = β(x).
Defining the left annihilator g⊥(x) and the left inverseg+(x) of g(x) as,
g⊥(x)g(x) = 0 (2.21)
g+(x)g(x) = 1 (2.22)
and premultiply Equation (2.20), the result is given by, g⊥(x) [I(x)−R(x)]∇xH(x) =
g(x)⊥[I(x)−R(x)]∇Hd(x)
0 =g(x)⊥[I(x)−R(x)]· (∇xHd(x)− ∇xH(x))
=g(x)⊥[I(x)−R(x)]∇Ha(x) (2.23)
that represents the set of PDEs that have to be solved.
The control law when the added energy function has been stablished upon the solution of the PDEs is given by,
g+(x) [I(x)−R(x)]∇xH(x) +β(x) =
g(x)+[I(x)−R(x)]∇Hd(x)
β(x) = g(x)+[I(x)−R(x)] (∇xHd(x)− ∇xH(x))
=g(x)+[I(x)−R(x)]∇Ha(x) (2.24)
exploiting the PH form of the system.
As the set Ω defined in Equation (2.3) that couples the dynamics of the plant and the controller is characterized by the roots of the CasimirC(x,ξ),ξ can be selected as the solution of the homogeneous Equation (2.23), as ξ(x) then, a function Φ(ξ) can be selected as the added energy to the system;
Φ(ξ(x)) = Ha(x) in order to assign the desired energy of the system Hd(x)
as,
and solve for the control law as,
β(x) =−∂Φ(ξ)
∂ξ (2.26)
As mentioned, this particular case of energy shaping (ES) corresponds to the case in which neither the interconnection or the damping is changed, in order to do so, energy shaping with interconnection and damping assignment will be presented next.
2.6
ES with IDA
With a similar analysis as the one made for the energy shaping case, Equa-tions (2.21) through (2.24), and defining the matricesIa(x) andRa(x) as the
added interconnection and damping matrices, given by, Id(x) =I(x) +Ia(x)
and
Rd(x) =R(x) +Ra(x)
the PDE to be satisfied is given by,
0 =g⊥(x) ([Ia(x)−Ra(x)]∇xH(x)
+ [Id(x)−Rd(x)]∇xHa(x)) (2.27)
and the control law is given by,
β(x) =gc⊤(ξ)∇ξHc(ξ)
g+(x) ([Ia(x)−Ra(x)]∇xH(x)
+ [Id(x)−Rd(x)]∇xHa(x)) (2.28)
Recall from Section 2.5 that the set Ω is characterized by the roots of the Casimir C(x,ξ). This means that ξ can be selected as the solution of the homogeneous Equation (2.27). With ξ as a function of the systems state variables (i.e., ξ(x)). This is equivalent to finding a solution of the PDE,
Having deduced the function ξ(x) that characterizes the coupling dynam-ics, the function Φ(ξ(x)) from Proposition 2.3.1 can be selected as the added energy of the systemHa(x) = Φ(ξ). This function works as a tuning
param-eter for the resulting controller and consequently, the desired energy of the system. The problem now is that the selection of the desired interconnection and damping matrices is not clear, and in the literature there is no clear way of doing so.
The problem now is to get the PH system mathematical representation that allows the coupling of the dynamics independent of the energy functions. Towards the solution of this problem, the bond graph approach is a graphic oriented methodology that achieves the PH representation.
Chapter 3
Bond Graphs
Bond graphs are graphical representations of dynamical systems that con-sist in subsystems ports (i.e., inputs and outputs) linked together by lines representing “power bonds”. They are called power bonds because the prod-uct of the bond variables is power and the bond itself represents the power flow of the system through the the system ports.
In the scope of IDA-PBC design, the bond graph methodology serves as an aid to replace the slow, complex and inefficient signal flow classical approach for a picture that models the physical system in PH form. This picture consists of a group of properly interconnected set of simple elements and from which, the derivation of equations for numerical solutions can be done, either manually or automated in a very simple manner. For a detailed theory see [6].
An important characteristic of the elements being interconnected is the presence of a port with a pair of dual variables whose conjugate gives the power exchange with the environment or with other element (i.e., effort and flow variables). This represents a perfect approach to get the mathematical system representation as it fits the dynamic system description from Chapter 2. A generic bond graph is depicted in Figure 3.1.
JS
R
C
,
I
SF
SE
eSF eSE
fSE
fSF
eR eC,I
fR fC,I
Where C,I stands for C-type and I-type storage elements, R for R-type dissipative elements, SF for sources of flow elements and SE for sources of effort elements. All these elements are interconnected by a power conserving junction structure JS. Each bond has an associated power variables where eα ∈ E stands for the effort power variable and fα ∈ F for the flow power variable. It is important to note that in the bond graph approach different energetic domains can be described under the same unified power description using generalized variables. For example, if two systems A and B exchange power, the idea is to interconnect the systems with a bond as depicted in Figure 3.2.
A ef B
Causal Stroke
Figure 3.2: Interconnection of systems A and B.
The half arrow in the bond represents the positive direction of the power flow, if the power P(t) = e⊤(t)f(t) ≥ 0 means that power flows from A to B and if P(t) ≤ 0 then, is flowing from B to A. The causal stroke, if present, does represent the positive direction of the specified effort. As the causal stroke describes the the positive direction of the specified effort for the energy storage elements, only integral causality will enter our scope. This representation is very useful as it can interconnect a complex system in smaller more simple systems.
Two other types of variables that are very important in the description of dynamic systems are the energy variables of the system, which are: gen-eralized momentum p(t) ∈ X and generalized displacement q(t) ∈ X, these variables play an important role as they will be the state variables of the dynamic systems. On those terms, the relation between power and energy variables is depicted in Figure 3.3.
The energyE(t), that has passed into or out of a port is the time integral of the power P(t). The general case for the energy of the system in terms of kinetic energy as a function of momenta p(t) and potential energy as a function of displacements q(t) is given by,
E(t)≡
% t
P(t)dt =
% t
C :ΦC
f= ˙q e
I :ΦI
e= ˙p f
=
=
!
! Φ−1
C
Φ−1
I
e
f e
f
q
p
Figure 3.3: Integral Causality.
As the relation between energy and power variables can also be written as dp(t) = e(t)dt and dq(t) = f(t)dt
E(t) =
% t
e(t)dq(t) =
% t
f(t)dp(t)
q(t) and p(t) are called energy variables because efforts are functions of dis-pelacements and flows are functions of momentum, so the energy of the systems can be written as,
E(q(t)) =
% q
e(q(t)) dq E(p(t)) =
% p
f(p(t)) dp that for linear systems,
E(q(t)) =
% q q
Cdq =
q2
2C E(p(t)) =
% q p
Idp =
p2
2I
3.1
Junction Structures
Having the discrete elements defined and the energy exchange in the ports, the elements can be connected using two different types of junctions. These junctions in electrical terms represent the “parallel” and “series” connection of elements, that can be generalized and found in different energetic domains. The first junction is the zero junction or common effort junction, its symbol is a “0” with bonds emanating from it as shown in Figure 3.4.
.. 0.. e1 .
f1
.. e2
. f2
.. e3
. f3
Figure 3.4: Zero junction.
This element is ideal in that power is neither dissipated nor stored, this implies that,
e1(t)f1(t) +e2(t)f2(t) +e3(t)f3(t) = 0
and as is defined as the common effort junction, and just like a node in electrical systems, all its efforts are equal, thus,
e1(t) =e2(t) =e3(t)
this yield that the relation between the flows is given by, f1(t) +f2(t) +f3(t) = 0
The second junction is the one junction or common flow junction, its sym-bol is a “1” with bonds emanating from it as shown in Figure 3.5.
.. 1.. e1 .
f1
.. e2
. f2
.. e3
. f3
Figure 3.5: One junction.
This element is ideal in that power is neither dissipated nor stored, this implies that,
e1(t)f1(t) +e2(t)f2(t) +e3(t)f3(t) = 0
and as is defined as the common flow junction, and just like a closed current loop in electrical systems, all its flows are equal, thus,
f1(t) = f2(t) =f3(t)
this yield that the relation between the efforts is given by, e1(t) +e2(t) +e3(t) = 0
Another important structure in the bond graph system representation are the two port elements: the transformer and the gyrator that have the prop-erty of energy conservation given by,
e1(t)f1(t) = e2(t)f2(t)
These elements in their modulated representation are depicted in Figure 3.6. Where m and r are the modulus of the elements. The relation between the force and velocities of the modulated transformer and gyrator is given by,
e1 =me2 mf1 =f2
e1 =rf2 rf1 =e2
e1
f1 M T F e2 f2 m
e1
f1 M GY e2 f2 r
Figure 3.6: Two port elements.
Having these elements defined, the result is that the desired PH form of dynamical systems can be achieved.
3.2
Bond Graph Example
For example, a simple mass spring system depicted in Figure 3.7, can be represented as a single system, as can be seen in Figure 3.8. With space state equation given by,
˙
p=−Kq ˙
q = p m
and as the energy function of the system is, H(p, q) =H(p) +H(q)
= p
2
2I + q2
2C = p
2
2m + q2K
this, allows the system to be represented in its PH form as,
-˙ p ˙ q
.
=
-0 −1
1 0
.
∇pqH(p, q)
K
m
x
Figure 3.7: Simple mass spring system
.. 1. C : 1/K ec ..
˙
q .. I :m ˙
p .
fI
Figure 3.8: Bond graph of simple mass spring system.
Or, the system can be represented as an interconnection of systems as in Figure 3.2, where system A is the spring and system B is the mass. Being the effort on the interconnected bond the force of the spring e=F and the flow, the velocity of the mass f =v. The systems equations of this approach are given by,
Πm :
&
˙ p =F
y =v = mp Πs :
&
˙ q =v
y =F =−Kq
The objective now is to present how some aggregate elements over the bond graph in terms of modulated gyrators and modulated transformers can narrow down the selection of the desired interconnection and damping matrices to achieve control objectives in the IDA-PBC methodology.
Chapter 4
Bond Graphs Applied to
IDA-PBC
The network topology and relations between the elements can be exploited within the bond graph framework, the basis of IDA-PBC is to assign a new interconnection and damping matrices while shaping the energy of the sys-tem to achieve control objectives. In that line of thought, the bond graph approach provides a way to physically understand what the technique is at-tempting.
For example, consider the two masses coupled by a spring in a surface with friction Rb as depicted in Figure 4.1, with its bond graph representation in
Figure 4.2 and PH form given by,
⎡ ⎣pp˙˙12
˙ q
⎤
⎦=
⎡
⎣−0Rb −0Rb −11
1 −1 0
⎤ ⎦ ⎡ ⎢ ⎣ p1 I1 p2 I2 q C ⎤ ⎥ ⎦+ ⎡
⎣−01
0
⎤
⎦Fc (4.1)
with Hamiltonian energy function, H(p, q) = p
2 1
2I1
+ p
2 2
2I2
+ q 2 2C and equilibria 7 p∗
1 p∗2 q∗
8
=/−Fc∗I1
2Rb −
Fc∗I2
2Rb −
Fc∗C
2 0
C
I
1
I
2v1 v2
F
cFigure 4.1: Coupled masses.
.. 1. Fc
.
Rb .
I1
. ˙ p1
. fp1
. 0
. e1
. f1
.
C
.
ep1
.
˙ q1
. 1
. e2
. f2 . I2 . ˙ p2 .
fp2
. Rb
Figure 4.2: Bond graph of coupled masses.
A simple choice to add an interconnection term is to couple the momenta p1andp2in the interconnection matrix, which gives a desired Interconnection
matrix,
Id(p, q) =
⎡
⎣α0 −0α −11
1 −1 0
⎤
⎦ (4.3)
The homogeneous part of the PDEs to be solved with the left annihilator g⊥(x) is given by,
0 =70 1 18
⎡
⎣−αRb −−Rαb −11
1 −1 0
⎤
⎦∇xHa(p1, p2, q)
=(α+ 1)∂Ha ∂p1 −
(Rb+ 1)
∂Ha
∂p2
+ ∂Ha
∂q (4.4)
where ξ =p1 +p2−(α−Rb)q satisfies the set.
Now, the choice of the added energy to the system, Ha(x) = Φ(ξ) can be
selected as a quadratic function that has a minimum in the desired equilibria is given by,
Φ(ξ) = Kp 2 (ξ−ξ
∗)2+l
Evaluating Equation (2.28) gives the control law β(x) as in the following equations,
β(x) = −(2RbKp(ξ−ξ∗) +
αp2
I2
+ 2Rblc) (4.6)
in steady state, β(x) =F∗
c,
lc =−
F∗
c
2Rb −
αp∗
2
2I2Rb
β(x) = −2RbKp(ξ−ξ∗)−
α I2
(p2−p∗2) +Fc∗ (4.7)
This approach with the choice of the desired interconnection matrix is equivalent within the bond graph methodology to adding a modulated gyra-tor between the inertial elements as depicted in Figure 4.3.
.. 1. Fc . Rb . I1 . ˙ p1 . fp1
. 0
. e1
. f1
.
C
.
ep1
.
˙ q1
. 1
. e2
. f2 . I2 . ˙ p2 .
fp2
. Rb
.
GY :α
.
egy1 .
fgy1 .
fgy2 .
egy2
Figure 4.3: Bond graph with added modulated gyrator.
So, the proposed methodology for implementing the IDA-PBC technique is to obtain the system diagram in integral causality and explore the possibility of adding modulated transformers, modulated gyrators or damping elements to render the system dynamics as desired. The general rule is to couple “1” and “0” junction structures as follows: two structures of the same type are coupled with modulated gyrator and two structures of different type are coupled with modulated transformers to preserve the integral causality of the system. This approach applied to the vehicle dynamics can be done to a quarter car linear lumped suspension system.
Chapter 5
Examples
Having defined the IDA-PBC technique and the proposed approach for mak-ing the process more systematic, two examples will be presented: the first showing the use of IDA-PBC to control a non linear system parting from its PH formulation and the second, showing the proposed approach on a linear system parting from the system description and going through all the design process.
5.1
Energy Shaping Example
In this example, the problem of tracking the optimal wheel slip component in the maximization of the longitudinal force will be addressed. Solutions to this problem has been proposed in terms of regular PID controllers and PID controllers tuned by fuzzy logic [7, 8]. Additionally, estimations of the maximum admissible torque assuming that the terrain characteristics are known [9] and more recently, there has been developments using IDA-PBC to get a solution of the problem [2], which corresponds to the example shown here.
Due to the fact that the LuGre friction model has a nice PH representation, makes the problem suitable to woe with IDA-PBC. The PH quasi physical representation of the LuGre model that takes into account the Coulomb, viscous and Stribeck effects and is based on the average bristle deflection considering the interaction between surfaces as depicted in Figure 5.1. The
dynamical system has the form given by, ˙
z =v−σo|v| h(v)z
h(v) = θ9µc + (µs−µc)e−| v vs|
α:
Fx =σoz
where v is the relative velocity between the bodies in contact, σo is the
stiffness of the bristles,h(v) is the function that models the Stribeck effect,µc
is the Coulomb friction constant,µs is stiction constant, Fx is the tangential
friction force, θ is a constant to model uncertainties in the friction level, α is a constant to shape the Stribeck effect and vs is the Stribeck velocity
that determines how h(v) varies within its boundsµc ≤h(v)≤µs−µc. The
longitudinal friction force in steady state with respect to the velocity between the surfaces is depicted in Figure 5.2.
v
z
Figure 5.1: Bristle deflection.
For the problem at hand this model has to be coupled with the longitudinal dynamics of the vehicle, for simplicity, the system to consider is a quarter car model without suspension, with total mass m, wheel moment of inertia Iw,
wheel radius r, forward velocity v, related momentumpv, rotational velocity
w and related momentum pw. As proposed by [2] in the braking case and
changing the signs in the interconnection matrixI(pv, pw, z) of the system to
account for acceleration, the quarter car model coupled with the LuGre PH model has the form Equation (5.1), with energy function given by Equation
−15 −10 −5 0 5 10 15 −1.5 −1 −0.5 0 0.5 1 1.5
v[ m /s]
F x [N ] S te a d y st a te
Figure 5.2: Force vs. relative velocity with ko = 100, θ = 1, µc = 0.8,
µs= 1.5,vs= 5 and α= 2
.
(5.2), and input torque τ.
⎡ ⎣pp˙˙wv
˙ z
⎤
⎦=
⎡
⎣ 00 00 −1r
−1 r −gt(pv, pw)
⎤ ⎦ ⎡ ⎣ pv m pw Iw
σoz
⎤
⎦+
⎡
⎣0r
0
⎤
⎦τ (5.1)
H(pv, pw, z) =
p2
v
2m + p2
w
2Iw
+σoz
2
2 (5.2)
As this representation only allows to have a null relative speed at equilibrium, z∗ = 0, rp∗
w Iw −
p∗
v
m = 0. An alternative representation is presented where it
is possible to stabilize a relative velocity. This alternative representation, discarding the convective losses associated with the rolling speed, is in terms of the relative momentumpr =mrvr with relative mass as in Equation (5.3),
and resulting system given by Equation (5.4),
mr =
;
1 m +
r2
Iw
<−1
(5.3) -˙ pr ˙ z . =
-0 −1
1 −go(pr)
. - pr
mr
koz
.
+
-−mrr Iw
0
.
τ
with ko =σoFn, where Fn is the normal force and the function that models
the Stribeck effect go(pr) given by,
go(pr) = |
pr|
mrFnh(pr)
h(pr) =θ
9
µc + (µs−µc)e−| pr mr vs|
α:
With this at hand the energy shaping technique consists in getting the partial differential equations from Equation (2.23), and solving for Equation (2.24), for this case, g⊥(p
r, z) = [0 1] and the PDE reduce to,
∇prHa(pr, z)−go∇zHa(pr, z) = 0 (5.5)
and as the invariant set that couples the dynamics is represented by the roots of the Casimir, the function ζ =F(x) can be selected as the solution of the homogeneous equation as,
ζ =z+
% pr
go(s) ds (5.6)
Now, the choice of Ha(F(x)) =Ha(ζ) can be selected as a quadratic
func-tion Ha(ζ) = a(ζ−ζ∗)2+b(ζ−ζ∗) in which the following equations,
∇prHa(pr, z) =
dHa(ζ)
dζ ∂ζ ∂pr
= dHa(ζ) dζ go(pr) ∇zHa(pr, z) =
dHa(ζ)
dζ ∂ζ ∂z =
dHa(ζ)
dζ hold for the solution of the PDE Equation (5.5).
As Equation (5.6) can not be integrated. The alternative is to use the bound of the function h(pr)≤µs−µc. With a choice of,
ˆ
f(pr, z) = z+
p2
r
2m2
rµˆs
(5.7) where ˆµs ≥ µs. the invariant set that couples the states of the system
and the states of the controller is depicted in Figure 5.3. This means that energy shaping is possible by interconnecting a simple integrator with the original system and having a matching function Equation (5.7) to couple the dynamics.
−1
−0.5 0
0.5 1
x 10−3
−10
−8
−6
−4
−2 0 2 4 6 8 10
−1
−0.5 0 0.5 1 1.5 2 x 10−3
z pr
F
(
pr
,z
)
Figure 5.3: Invariant set.
5.2
Quarter Vehicle Suspension Control
The proposed system to control is depicted in Figure 5.4, the quarter car sprung massM, with velocity from equilibriumvM is supported by damperb
and springk. The spring and damper system along with the wheel, represent the unsprung mass mof the system with velocity from equilibrium vm. Also,
the wheel stiffness in its interaction with the road is modeled as a spring with stiffness kt. The road disturbance is modeled as a flow Sf :vin.
Connection to body massM
Spring (ks) and Damper (bs)
Wheel (stiffnesskt)
Unsprung massm
M
m
ks bs
kt
vM
vm
vin
Figure 5.4: Quarter car suspension model.
The proposed controller consists in installing a flow actuatorSf :Vc which
will be controlled to improve the comfort on the sprung mass. The lumped system model and the bond graph that represents the quarter car vehicle
M
m
ks bs
kt
vM
vm
vin Sf
(a) Suspension system.
.. 0.
Sf :vin
. C: 1/kt
.ekt . ˙ qt . 1 .
I:m
. ˙ ps . fm . 0 . 1 .
R:b
. eb . fb . 0 .
Sf :Vc
.
C: 1/k
. ek . ˙ qs . 1 .
I:M
. ˙
pus
.
fM
(b) Bond graph.
Figure 5.5: Quarter Vehicle
suspension system is depicted in Figure 5.5, where the state variables of the system are x = [ps pus qs qt]⊤ and represent the sprung mass
momen-tum, unsprung mass momenmomen-tum, suspension spring displacement and wheel spring displacement respectively. The system has Hamiltonian energy func-tion given by,
H(x) = p
2
s
2M + p2
us
2m + 1 2q
2
sk+
1 2q
2
tkt
where the terms related to the momenta (i.e.,ps, pus) represent the
sys-tems kinetic energy and the terms related to the displacement (i.e., qs, qt)
the systems potential energy. The derivate of the state variables is labeled on the graph as to easily follow causality to get the system equations in terms of the generalized momenta and displacements as in Equation (5.8), with its equilibria, Equation (5.9).
⎡ ⎢ ⎢ ⎣ ˙ ps ˙ pus ˙ qs ˙ qt ⎤ ⎥ ⎥ ⎦= ⎡ ⎢ ⎢ ⎣
−b b 1 0
b −b −1 1
−1 1 0 0
0 −1 0 0
⎤ ⎥ ⎥ ⎦ ⎡ ⎢ ⎢ ⎣
ps/M
pus/m
qsk
qtkt
⎤ ⎥ ⎥ ⎦− ⎡ ⎢ ⎢ ⎣ 0 0 1 0 ⎤ ⎥ ⎥ ⎦Vc+
⎡ ⎢ ⎢ ⎣ 0 0 0 1 ⎤ ⎥ ⎥
⎦vin (5.8)
x∗=
;
−VcM,0,−Vcb
k,0
<
(5.9)
For this system there are multiple choices to add gyrators or transformers to interconnect the different junction structures and change the interconnection
and damping matrix. The selected one is coupling the two “0” junctions with a modulated gyrator as depicted in Figure 5.6.
.. 0.
Sf :vin
. C : 1/kt .ekt
. ˙ qt . 1 .
I :m
. ˙ ps . fm . 0 . 1 .
R:b
. eb . fb . 0 .
Sf :Vc
.
C : 1/k
. ek . ˙ qs . 1 . I :M
. ˙ pus . fM .
GY : 1/α
. egy1
. fgy1
. fgy2
. egy2
Figure 5.6: Bond graph quarter vehicle with adds gyrator.
This represents an interesting choice of addition of a modulated gyrator because the desired interconnection and damping matrices are given by,
Id(x) =
⎡ ⎢ ⎢ ⎣
0 0 1 0
0 0 −1 1
−1 1 0 α 0 −1 −α 0
⎤ ⎥ ⎥ ⎦
Rd(x) =
⎡ ⎢ ⎢ ⎣
b −b 0 αb −b b 0 −αb
0 0 0 0
−αb αb 0 α2b ⎤ ⎥ ⎥ ⎦
This, gives as a result, an interconnection matrix that evidently couples the two displacements, as opposed to the damping matrix, whose result is far from evident.
This choice of interconnection and damping matrices gives the homoge-nous part of the evaluation of the PDE Equation (2.27) as,
0 =αb∂Ha(ξ) ∂ps −
(αb+ 1)∂Ha(ξ) ∂pus
−α∂Ha(ξ) ∂qs −
(α2b−1)∂Ha(ξ) ∂qt
that with a simple choice of,
ξ=ps+pus−αbqs+qt
satisfies the set.
Taking a choice for the added energy of the system Ha(x) = Φ(ξ) as a
quadratic function that has a minimum at the desired equilibria as in,
Φ(ξ) = Kp 2 (ξ−ξ
∗)2+l
cξ
Evaluating Equation (2.28) gives the control law β(x) as, β(x) =αKp(ξ−ξ∗) +αktqt+αlc
in steady state β(x) =V∗
c
β(x) =αKp(ξ−ξ∗) +αkt(qt−qt∗) +Vc∗ (5.10)
The control law Equation (5.10) represents a linear state feedback, with the aggregate information of the physical representation of the coupling term α and the energetic information of the total energy of the system.
5.2.1
Simulation Results
The deduced control law was applied into the original system Equation (5.8) with system parameters defined in Table 5.1, with a disturbance vin
with the shape of half a sine wave of height h, lengthd at speed v, vin =πh
v dcos
;
πvt d
<
(5.11)
Figures 5.7 and 5.8 show the systems sprung mass velocity with and with-out controller Vc for two different velocities. Along with the velocity
distur-bance input vin.
From the simulation results, in Figures 5.7 and 5.8, the maximum velocity of the sprung mass is drastically reduced. For the case of longitudinal ve-locity v = 2 (m/s), a reduction of 95.28% was achieved and for the case of longitudinal velocityv = 10 (m/s), a reduction of 88.58% was achieved. This means that a stiffer suspension can be installed in the vehicle to handle on
0 1 2 3 4 5 6 7 8 9 10 −1 −0.5 0 0.5 1 Time (s) Velocity (m/s) vM
vi n
0 1 2 3 4 5 6 7 8 9 10
−1 −0.5 0 0.5 1 Time (s)
Input Velocity (m/s)
Vc
0 1 2 3 4 5 6 7 8 9 10
−2000 0 2000 4000 Time (s) Force (N)
Fkt
(a) Free response.
0 1 2 3 4 5 6 7 8 9 10
−0.5 0 0.5 Time (s) Velocity (m/s) vM
vi n
0 1 2 3 4 5 6 7 8 9 10
−0.5
0 0.5 1
Time (s)
Input Velocity (m/s)
Vc
0 1 2 3 4 5 6 7 8 9 10
−1000 0 1000 2000 Time (s) Force (N)
Fkt
(b) Controlled response.
Figure 5.7: Response of the system with v = 2 (m/s)
0 1 2 3 4 5 6 7 8 9 10
−2 −1 0 1 2 Time (s) Velocity (m/s) vM
vi n
0 1 2 3 4 5 6 7 8 9 10
−1 −0.5 0 0.5 1 Time (s)
Input Velocity (m/s)
Vc
0 1 2 3 4 5 6 7 8 9 10
−5000 0 5000
Time (s)
Force (N)
Fkt
(a) Free response.
0 1 2 3 4 5 6 7 8 9 10
−2 −1 0 1 2 Time (s) Velocity (m/s) vM
vi n
0 1 2 3 4 5 6 7 8 9 10
−5
0 5
Time (s)
Input Velocity (m/s)
Vc
0 1 2 3 4 5 6 7 8 9 10
−1
−0.5
0 0.5 1x 10
4
Time (s)
Force (N)
Fkt
(b) Controlled response.
Parameter Value
M 320 [kg]
m 53.3 [kg]
k 1.26e4 [N/m]
b 750 [Ns/m]
kt 1.26e5 [Ns/m]
h 0.25 [m]
d 1 [m]
Kp 10 [-]
α 0.001 [-]
Table 5.1: Simulation Paramenters.
performance while the controller handles on comfort. For the case of longi-tudinal velocityv = 2 (m/s), there is no detriment in the adherence capacity of the wheel, although, for the longitudinal velocity v = 10 (m/s) there is a detriment, this is not really a problem because the suspension system is a low pass filter that is tuned, for this case, to have a higher cut frequency (3 times higher) than a regular suspension tuned for comfort. This means that the controller can be set up to have a gain Kp dependent on linear velocity
Chapter 6
Discussion
This proposed approach of incorporating the bong graph modeling method-ology within the IDA-PBC technique, achieves the control objective by shap-ing both potential and kinetic energy. This as a result, gives more degrees of freedom to the solution of different control objectives. This is because the added energy of the system Φ(x) can have a wider range for selection. This selection of added energy function is a topic not yet covered by the literature and different choices, can lead to different performance of the systems.
The simulations that show the performance of the active suspension in this article assume a system where the actuator dynamics and restrictions are not taken into account. This leads to the fact that an arbitrary amount of velocity can be injected on the system to achieve the control objectives. This represents a problem because the velocity actuator may not be able to produce the desired velocities. Within the bond graph approach, this problem can have a solution, as the method can be applied to model specific actuator dynamics (e.g., pneumatic or hydro-pneumatic means).
Chapter 7
Conclusion
A IDA-PBC control law has been proposed to reduce the velocity over the sprung mass of a linear lumped system of a quarter vehicle suspension. The control law allows to impose a desired behavior in which a better un-derstanding of the effects that the added matrices (Ia(x) andRa(x)) have on
the system has been achieved, by closely relating them to the original formu-lation of the problem by adding interconnection terms that are modulated transformers and modulated gyrators, which are basic elements within the bond graph methodology. This leads to a more systematic procedure to the choice of the added matrices.
Appendix A
Simulation Code
This appendix contains the simulation files used for results. The main file is “QCarData.m” from which the resulting figures are produced.
A.1
QCarData
1 %Script used for the simulation of the quarter car ... dynamics and its
2 %respective control.
3 clear all
4 close all
5 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
6 %Definition of simulation constants for the car
7 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 M=320; %[kg] Sprung mass
9 m=M/8; %[kg] Unsprung mass
10 k=(M*(2*pi)ˆ2)*3; %[N/m] Suspension spring stiffness
11 kt=5*k; %[N/m] Tire spring stiffness
12 b=0.3*2*sqrt(k*m); %[Ns/m] Suspension damper resistance
13 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
14 %Definition of simulation constants for the road
15 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
16 h=0.05; %[m] Height of the input bump
17 d=1; %[m] Lenght of the input bump
18 19
20 %The first set of simulation do not declare cells for ... different speeds of
21 %the run, just one v 22
24
25 kp=10; %Controller gain constant
26 a=.0005; %Coupling factor constant
27 p1a=0; %Desired equilibrium for the momentum p1
28 29
30 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
31 %Simulation
32 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
33 %Initial conditions
34 IC=[0 0 0 0];
35 tspan=[0 10];
36
37 [T,SV]=ode23s(@(t,X)QcarODE(t,X,M,m,k,kt,b,v,d,h,kp,a,p1a)...
38 ,tspan,IC);
39 40
41 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
42 %Post processing
43 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
44 %DSV=zeros
45 for i=1:length(T);
46 [DSV(i,:),vin(i,:),F(i,:),Vel(i,:),Vin(i,:),EKT(i,:)]=...
47 QcarODE(T(i,:),SV(i,:),M,m,k,kt,b,v,d,h,kp,a,p1a);
48 end 49
50 figure
51 subplot(3,1,1);
52 plot(T,[SV(:,1)/M vin]);
53 h=legend('$v M$','$v {in}$');
54 set(h,'Interpreter','latex')
55 xlabel('Time (s)');ylabel('Velocity (m/s)')
56 subplot(3,1,2);
57 plot(T,Vin);
58 h1=legend('$V c$');
59 set(h1,'Interpreter','latex')
60 xlabel('Time (s)');ylabel('Input Velocity (m/s)')
61 subplot(3,1,3);
62 plot(T,EKT);
63 h=legend('$F {k {t}}$');
64 set(h,'Interpreter','latex')
A.2
QCarODE
1 function [XX,vin,F,Vel,Vin,ekt] = ...
QcarODE(t,X,M,m,k,kt,b,v,d,h,kp,a,p1a)
2 %QcarODE Displays the set of Ordinary Differential ... Equations of the half
3 %car model in generalized energy variables
4 % The variable p is for generalized momenta and the ...
variable q is for
5 % generalized displacement
6
7 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 %Definition of state vector
9 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
10 %The state vector XX is composed by the generalized energy ... variables;
11
12 % p1 for the momentum of the sprung mass 13 % p2 for the momentum of the unsprung mass
14 % q1 for the displacement of the suspension spring 15 % q2 for the displacement of the tire spring
16 17
18 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
19 %velocity disturbance function
20 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
21 %The velocity disturbance is aquired by the inputV ... function that takes the
22 %simulation time t, the forward velocity of the car v, the ... height of the
23 %bump h and the length of the bump d to give the value of ... the bump velocity
24 %disturbance
25 vin=inputV(t,v,h,d);
26
27 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
28 %Control law
29 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
30 %The control law deduced consist of....
31 Vca=−p1a/M;
32 q1a=−Vca*b/k;
33 xi=X(1)+X(2)−a*b*X(3)+X(4);
34 xia=p1a+0−a*b*q1a+0;
35
36 Vc=a*kp*(xi−xia)+a*kt*X(4)+Vca;
37
39 %State equations
40 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
41 42
43 dp1=−X(1)*b/M+X(2)*b/m +X(3)*k ;
44 dp2=+X(1)*b/M−X(2)*b/m −X(3)*k+X(4)*kt ;
45 dq1=−X(1)/M +X(2)/m −Vc ;
46 dq2= −X(2)/m +vin ;
47 48
49 XX=[dp1;dp2;dq1;dq2];
50
51 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
52 %Forces
53 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
54 %Force on the damper
55 er=−b*X(1)/M+b*X(2)/m;
56 %Force on the suspension spring
57 ek=k*X(3);
58 %Force on the tire spring
59 ekt=kt*X(4);
60
61 F=[er ek ekt];
62 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
63 %Velocities
64 %−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
65 %Velocity of sprung mass
66 vM=X(1)/M;
67 %Velocity of unsprung mass
68 vm=X(2)/m;
69
70 Vel=[vM vm];
71 Vin=Vc;
72 73 end
A.3
inputV
1 function [vi] = inputV(t,v,h,d)
2 %UNTITLED2 Summary of this function goes here
3 % Detailed explanation goes here
4 if (v*t/d)≤1
5 vi=pi*h*v/d*cos(pi*v*t/d);
6 else
7 vi=0;
8 end 9 10 end
References
[1] C. Canudas de Wit and P. Tsiotras, “Dynamic tire friction models for vehicle traction control,” in Decision and Control, 1999. Proceedings of the 38th IEEE Conference on, vol. 4, pp. 3746–3751 vol.4, 1999.
[2] J. Koopman, D. Jeltsema, and M. Verhaegen, “Wheel slip control us-ing energy shapus-ing,” in Decision and Control (CDC), 2010 49th IEEE Conference on, pp. 2916–2921, 2010.
[3] R. Ortega, A. van der Schaft, B. Maschke, and G. Escobar, “Interconnec-tion and damping assignment passivity-based control of port-controlled hamiltonian systems,”Automatica, vol. 38, no. 4, pp. 585 – 596, 2002. [4] J. Willems, “Paradigms and puzzles in the theory of dynamical systems,”
Automatic Control, IEEE Transactions on, vol. 36, no. 3, pp. 259–294, 1991.
[5] R. Ortega, A. van der Schaft, F. Castanos, and A. Astolfi, “Control by interconnection and standard passivity-based control of port-hamiltonian systems,” Automatic Control, IEEE Transactions on, vol. 53, pp. 2527– 2542, Dec 2008.
[6] D. C. Karnop, D. L. Margolis, and R. C. Rosenberg, System Dynamics Modeling and Simulation of Mechatrinic Systems. John Wiley & Sons, INC, 4 ed., 2006.
[7] L. Shoubo, L. Chenglin, C. Shanglou, and W. Lifang, “Traction control of hybrid electric vehicle,” in Vehicle Power and Propulsion Conference, 2009. VPPC ’09. IEEE, pp. 1535–1540, 2009.
[8] J. Zhang, C. Yin, and J. Zhang, “Use of fuzzy controller for hybrid trac-tion control system in hybrid electric vehicles,” inMechatronics and Au-tomation, Proceedings of the 2006 IEEE International Conference on, pp. 1351–1356, 2006.
[9] J.-S. Hu, D. Yin, Y. Hori, and F.-R. Hu, “A new mtte methodology for electric vehicle traction control,” inElectrical Machines and Systems, 2009. ICEMS 2009. International Conference on, pp. 1–6, 2009.