You are on page 1of 6

1 Problem Formulation

Consider a nonlinear MIMO system of the form

ż = F(z) + G(z)u (1)

where z ∈ Rn , F : Rn → Rn , u ∈ Rm and G : Rn → Rn × Rm
The dynamics of the desired trajectory is given by

żd = Fd (zd , h) (2)

where zd ∈ Rn is the state of the desired system trajectory whose dynamics is governed by Fd : Rn ×R p →
Rn and h ∈ R p be the external input that is being communicated through a communication channel.

The tracking error z̃e i.e. the difference between the actual trajectory of the system (1) and the desired
trajectory (2) is defined as
z̃e , z − zd (3)

The control input used for tracking the trajectory of the system (2) depends on tracking error, desired
trajectory state and external input. The control law can therefore be written as function of ξ , i.e. α(ξ ).
h iT
u = α(ξ ), ξ = z̃e zd h (4)

where α : R2n+p → Rm
The dynamics of tracking error can be further expressed as:

z̃˙e = F(z̃e + zd ) + G(z̃e + zd )α(ξ ) − Fd (zd , h) (5)

For the update of the controller, the control input requires the real time information of the external input
h. But with fluctuations or disturbances in the communication channel such as packet drops, lead to
aperiodic update due to no relevant information at each time. Hence, the control law is updated at non-
uniform time instant ti (i = 0, 1, 2, ...). In section 2.2 we will discuss a triggering condition for the update
of the control law.

2 System Modeling and Control Law for Trajectory tracking


According to the kinematic state and geometric relationship, the kinematic model of the vehicle in [3]
can be obtained as

ẋ(t) = v(t).cosθ (t)


ẏ(t) = v(t).sinθ (t) (6)
v
θ̇ (t) = w(t) = .tanδ (t)
L
where x, y and θ are the longitudinal position, lateral position and heading/orientation angle respectively.
L is the interaxle distance, and δ is the front wheel steering angle.
This model has two degrees of freedom with three output variables (x, y, θ ) and two input variables viz.
motion of the vehicle (v) and heading angle (w)

1
Therefore, considering the desired longitudinal position, lateral position and headway angle to be xd ,
yd , θd respectively, then the general system equation from (1) and (2) along with equation (6) can be
expressed as
h iT h iT
z= x y θ and zd = xd yd θd
Hence, the tracking error is given by
h iT h iT
z̃e = x̃e ỹe θ̃e = x − xd y − yd θ − θd (7)

2.1 Sliding Mode Control


The control law that is derived for tracking is based on SMC. Sliding surfaces s1 (t) and s2 (t) is defined
based on the tracking error(x̃e , ỹe and θ̃e )
h iT
S(t) = s1 (t) s2 (t) (8)

where s1 (t) = λ1 x̃e (9)


s2 (t) = λ2 ỹe + θ̃e (10)

Here λ1 and λ2 are non-zero positive sliding gain parameters with x̃e = x − xd , ỹe = y − yd and θ̃e =
θ − θd representing the states of the desired respective trajectories. After selection of sliding surfaces,
the discontinuous control input is to be designed such that it drives the state z towards the surface and
maintains it thereafter onto the surface.
A Lyapunov candidate function V is defined in terms of sliding surface as in (8) such as
1
V = S(t)T S(t) (11)
2
The global reaching condition is given as:

V̇ (z,t) 6 0 (12)

This reaching law [2] guarantees asymptotic stability of the system (1).
Gao and Hung in [1] proposed a reaching law that specifies the dynamics of the switching surface by the
differential equation:
Ṡ = −Psign(S) − Q · S (13)
where Ṡ = [ṡ1 , ṡ2 , ṡ3 ...ṡm ]T , sign(S) = [sign(s1 ), sign(s2 )....sign(sm )]T , P = diag[p1 , p2 , p3 ...pm ] and Q =
diag[q1 , q2 , q3 ...qm ] where pi , qi , (i = 1, 2...m) represents tuning parameters.
Hence, by adding the proportional rate term −Q·S, the state is forced to approach the switching manifolds
faster when S is large. Therefore, the sliding surfaces can be rewritten as:

ṡ1 = −p1 sign(s1 ) − q1 s1 (14)

ṡ2 = −p2 sign(s2 ) − q2 s2 (15)


The derivative of Lyapunov function defined in (11) is gievn by
∂V
= sT1 ṡ1 + sT2 ṡ2
∂t
= sT1 (−p1 sign(s1 ) − q1 s1 ) + sT2 (−p2 sign(s2 ) − q2 s2 )
= (−sT1 q1 s1 − sT2 q2 s2 ) + (−sT1 p1 sign(s1 ) − sT2 p2 sign(s2 ))
6 −ST QS − p1 |s1 | − p2 |s2 | 6 0 ∀pi , qi > 0

2
Now, from (9), we have
ṡ1 = λ1 (x̃˙e )

= λ1 (ẋ − ẋd ) (16)

Similarly, from (10)


ṡ2 = λ2 (ẏ − ẏd ) + (θ̇ − θ̇d ) (17)

Therefore, from (14) and (16) we have

−p1 sign(s1 ) − q1 s1 = λ1 (ẋ − ẋd )


= λ1 (v.cos(θ ) − ẋd )

So,we have
λ1 ẋd − p1 sign(s1 ) − q1 s1
v= (18)
λ1 cos(θ )
Again from (15) and (17) we have

−p2 sign(s2 ) − q2 s2 = λ2 ỹ˙e + (θ̇ − θ̇d )


v
= λ2 ỹ˙e + ( tan(δ ) − θ̇d )
L
Hence, we get " #
L 
δ = tan−1 θ̇d − p2 sign(s2 ) − q2 s2 − λ2 ỹ˙e
v
or in terms of heading angle, we have

w = θ̇d − p2 sign(s2 ) − q2 s2 − λ2 ỹ˙e (19)

Equation (18) and (19) represents the derived control input for the system given in (6) ensuring asymptotic
convergence of the tracking error to 0 and thus stabilizing the system in presence of disturbance.

2.2 Triggered Sliding Mode Control


In this subsection, design of a control law with a triggering condition is discussed. As already mentioned
in section 1, as the communication channel undergoes packet drops, the controller do not possess the real
time information of input signal as well as of the tracking error at each time period, due to which event
triggering is not applicable directly. We aim to address the following questions of (i) how often should the
external input communicate with the controller, and (ii) after what duration should the controller update
the control law with the latest information of the input signal.
The following assumptions are considered for the design of triggered SMC law applied to the system
described in (6).

Assumption 1: Consider there exists a smooth Lyapunov function V : Rn → R+


0 for the system
given in (5) that satisfies

∂V ˙
γ1 (kz̃e k) 6 V (z̃e ) 6 γ2 (kz̃e k), z̃e 6 −γ(kz̃e k) (20)
∂ z̃e
Assumption 2: The functions F(.), G(.), Fd (.) and the control law α(.) are assumed to be Lipschitz
continuous [2] on compact sets.

3
Assumption 3: ∀t ≥ 0, ||z̃e (0)|| < σ , ||ḣ(t)|| 6 φ for a known σ > 0 and some φ > 0

When the transmission of input signal experience packet loss, the control law is updated based on the
latest information obtained i.e h(ti ) where ti 6 t be the time instant of receiving of the input signal. Also,
the dynamics of the desired trajectory that governs the evolution of tracking error is computed based on
h(ti ) obtained as in system (2). If we consider ti to be the time instants of successful reception of the input
signal, then for t ∈ [ti ,ti+1 ), differentiating (3) the error dynamics is given by:

z̃˙e = F(z̃e + zd ) + G(z̃e + zd )α(z̃e , zd , h(ti )) − Fd (zd , h(ti )) (21)

The error in the external input can be defined as ei = h(ti ) − h for t ∈ [ti ,ti+1 ), i ∈ {0, 1, 2, 3, ...}. Hence
system (20) can be rewritten as:

z̃˙e = F(z̃e + zd ) + G(z̃e + zd )α(z̃e , zd , h) − Fd (zd , h) + G(z̃e + zd )(α(z̃e , zd , h + ei )


− α(z̃e , zd , h)) − (Fd (xd , h + ei ) − Fd (xd , h)) (22)

The above system in (22) represents the perturbation that is obtained by differentiating equation (3).

2.2.1 Triggering condition for Trajectory Tracking

Let V (z̃e ) be a Lyapunov candidate function as per Assumption 1 for the system that is described in
(6). The derivative of Lyapunov function along the flow of the error dynamics can be expressed as
V̇ (z̃e ) = ∂V z̃˙e , which can further be expressed ussing the perturbed dynamics in (21) as:
∂ z̃e

∂V  
V̇ = F(z̃e + zd ) + G(z̃e + zd )α(z̃e , zd , h(ti )) − Fd (zd , h(ti )) (23)
∂ z̃e
Using (22), we can rewrite (23) as
∂V   ∂V 
V̇ = F(z̃e + zd ) + G(z̃e + zd )α(z̃e , zd , h) − Fd (zd , h) + G(z̃e + zd ) α(z̃e , zd , h + ei )
∂ z̃e ∂ z̃e
 ∂V  
− α(z̃e , zd , h) + (Fd (zd , h) − Fd (zd , h + ei )
∂ z̃e
Using the upper bound on the derivative of Lyapunov funcion from Assumption 1, we obtain
∂V  
V̇ 6 −γ(||z̃e ||) + G(z̃e + zd ) α(z̃e , zd , h + ei ) − α(z̃e , zd , h)
∂ z̃e
∂V  
+ Fd (zd , h) − Fd (zd , h + ei ) (24)
∂ z̃
For the stability of the perturbed system in (22), the above equation in (24) should be negative semi-
definite i.e. V̇ 6 0. Hence, we now derive upper bounds on the second and third term that will guarantee
V̇ 6 0
The Lyapunov candidate function as in (11) is defined as
1
V (z̃e ) = ST S
2
 T  
1  λ1 x̃e   λ1 x̃e 
=
2 λ2 ỹe + θ̃e λ2 ỹe + θ̃e
1h i
= λ12 x̃e2 + λ22 ỹ2e + 2λ2 ỹe θ̃e + θ̃e2
2

4
The partial derivative of V (z̃e ) can be expressed as

∂V h i
= λ12 x̃e λ22 ỹe + λ2 θ̃e θ̃e + λ2 ỹe (25)
∂ z̃e
Now, let us consider the second term of equation (24). By assumption 2, the function α(.) is Lipschitz
continuous on compact sets. Let Gh be the Lipschitz constant of α(.) restricted to its third argument i.e.
h. Then
||α(z̃e , zd , h + ei ) − α(z̃e , zd , h)|| 6 Gh ||ei || (26)
∂V
Now, expanding the term ∂ z̃e G(z̃e + zd ) we have

 
cosθ (t) 0
∂V h i 
G(z̃e + zd ) = λ12 x̃e λ22 ỹe + λ2 θ̃e θ̃e + λ2 ỹe  sinθ (t) 0
∂ z̃e  
0 1
 T
2 2
λ x˜e cosθ (t) + (λ2 ỹe + λ2 θ̃e )sinθ (t)
= 1  (27)
θ̃e + λ2 ỹe

Let us define

∂V (w)
β (||z̃e ||) = max G(w + zd )
||w||6||z̃e || ∂w
 T

∂V β 1 (||z̃ ||)
e 
= max G(z̃e + zd ) where β (||z̃e ||) =  (28)
||z̃e || ∂ z̃e β2 (||z̃e ||)

Hence we obtain from equation (27)



2 2

β1 (||z̃e ||) = max λ1 x˜e cosθ (t) + (λ2 ỹe + λ2 θ̃e )sinθ (t)

||z̃e ||
 
h
i  x̃e 
2 2
= max λ1 cosθ (t) λ2 sinθ (t) λ2 sinθ (t)   ỹe 

||z̃e ||
θ̃e
h i

6 max λ12 cosθ (t) λ22 sinθ (t) λ2 sinθ (t) z̃e (29)
||z̃e ||

Similarly we get
 
h
i  x̃e 
β2 (||z̃e ||) = max 0 λ2 1  ỹe 

||z̃e ||
θ̃e
h i

6 max 0 λ2 1 z̃e (30)
||z̃e ||

Using (29) and (30) in the equation (28) and using equation (26) we obtain the following bound on the
second term of RHS of (24)
∂V  
G(z̃e + zd ) α(z̃e , zd , h + ei ) − α(z̃e , zd , h) 6 β (||z̃e ||)Gh ||ei || (31)
∂ z̃e

5
Again, we now derive an upper bound on the third term in the RHS of (24).By assumption 2,the function
Fd (.) is Lipschitz continuous on compact sets. Let Lh be the Lipschitz constant of Fd (.) restricted to its
second argument i.e. h. Then

||Fd (zd , h) − Fd (zd , h + ei )|| 6 Lh ||ei || (32)

Let us define

∂V
φ (||z̃e ||) = max
∂ w
||w||6||z̃e ||


∂V
= max
||z̃e || ∂ z̃e

From equation (25) we get


  
λ 2 0 0 x̃
 1   e 
φ (||z̃e ||) = max  0 λ22   ỹe 

λ2   
||z̃e || 
0 λ2 1 θ̃e
 
λ 2 0 0
 1 
6 max  0 λ22  z̃e (33)

λ2 
||z̃e || 
0 λ2 1

From equation (32) and (33),the upper bound on the third term of RHS of (24) is given as

∂V  
Fd (zd , h) − Fd (zd , h + ei ) 6 φ (||z̃e ||)Lh ||ei || (34)
∂ z̃
Using (31) and (34), inequality (24) can be written as

V̇ 6 −γ(||z̃e ||) + β (||z̃e ||)Gh ||ei || + φ (||z̃e ||)Lh ||ei ||

Hence, we have
γ(||z̃e (t)||)
||ei (t)|| 6 (35)
β (||z̃e (t)||)Gh + φ (||z̃e (t)||)Lh
Using the above triggered condition one can ensure V̇ 6 0
For a quick recall, ei is the error caused by the unavailability of the input signal at all time instants due
to packet drops. The violation of threshold condition (35) is the necessary and sufficient for the update of
packet in order to ensure the desired trajectory tracking.

References
[1] Weibing Gao and James C Hung. Variable structure control of nonlinear systems: A new approach.
IEEE transactions on Industrial Electronics, 40(1):45–55, 1993.

[2] H.K. Khalil. Nonlinear Systems. Pearson Education. Prentice Hall, 2002.

[3] I. Kolmanovsky and N. H. McClamroch. Developments in nonholonomic control problems. IEEE


Control Systems Magazine, 15(6):20–36, 1995.

You might also like