Nonlinear Control for First-Order Nonholonomic Systemwith Hardware Restriction and DisturbanceM2013SC017 Shota WASHIZU
Supervisor：Isao TAKAMI

1Introduction

After the 1990s, various control methods of nonholonomic systems are proposed. Nonholonomic systems
have constraint conditions containing not only angles
but also angular velocities and angular accelerations ofgeneralized coordinates. Also these systems have outputs more than inputs, which are called under-actuatedsystem. The linear control theory is hard to apply because linear approximated systems at the equilibrium
point of these systems are not ensured the controllability. Additionally it is proven that systems cannot
be stabilized using by linear time-invariant state feedback even if the controllability of systems are ensured
in the meaning of nonlinear [1]. The canonical system
exists for first-order nonholonomic systems which are
represented by a symmetric aﬃne system. The canonical system is called chained system [2]. Various feedback
control strategies based on the chained system have been
applied because of its adaptability.
Control moment gyroscope (CMG), which is treatedin this research, is applied for attitude control of a large
scale spacecraft, for example International Space Station. CMG provides larger torque than a conventional
device by tilting the gimbal which is attached in thesame axis as spinning rotor. CMGs are generally appliedin cooperation [3]. In this research, the control for single CMG is discussed as a fundamental researches before
discussing a cooperation control of CMGs. CMG is thefirst-order nonholonomic system and its state equationis represented by a 2-input 3-state symmetric aﬃne system which has non-integrable constraint for angular velocities. In addition, CMG has the hardware restrictionof the motion range and singularity. Recently eﬃcientmethods are proposed for the single CMG, for example
the backstepping control for the chained system [4], theoptimal feedback control based on the output regulation[5].

2

Mathematical ModelIn this section, the mathematical model of CMG is derived. Firstly the equation of motion of CMG is derived
from Euler-Lagrange [7]. Secondly the hardware restriction and singularity are described. Lastly the state
equation which is obtained by the constraint condition
is converted to the chained system [4].
2.1

Equation of Motion

The schematic diagram of CMG (Model-750 unit by
Educational Control Products) is shown in Fig.1. CMG
consists of 3 rigid bodies which are Rotor1, Gimbal2 andGimbal3. Rotor1 and Gimbal2 are driven by DC motors.
A coulomb friction exists in Rotor1 [6]. Gimbal2 has therange of motion − π2 < q2 < π2 [7] and singularity q2 = 0
in the controller synthesis (details later). Synthesizing
the controller has to be considered under the following
restriction of the angle of Gimbal2.
0 < q2 <(1)

Note that Gimbal3 does not have any drive sources.
Gimbal3 is driven by the gyro torque which is generated by the law of conservation of angular momentum.
The control problem of the research is that the angle ofGimbal3 tracks the reference without error in case thata coulomb friction exists in Rotor1. The chained system
becomes complicated because the state equation can not
be represented as symmetric aﬃne system if the mathematical model has the friction. Therefore the influenceof the friction is ignored in the mathematical model.
The influence of the friction is dealt with the controller
with integrator.

q1

Gimbal3

Rotor1

T1
ω1

In this research, the tracking controller for CMG withnonholonomic constraint is synthesized. Firstly themathematical model of CMG is derived. It is well known
that a coulomb friction exists in CMG with this research[6]. However the influence of the friction is ignored in
the mathematical model because the chained system becomes complicated if the influence of the friction is considered. Secondly the chained system is derived by themathematical model. The chained system is obtained bya conversion method satisfying the hardware restriction.
Thirdly a tracking controller based on the backstepping
approach is synthesized. The influence of the friction
is ignored in a mathematical model. The diﬃculty tothereby occur is dealt with the controller with a integrator. The stability of the system including the integrator
is guaranteed theoretically based on Lyapunov function.
Lastly the eﬀectiveness of this research is illustrated bysimulations. The controller with integrator is comparedwith the controller without integrator.

π
2

q3
ω3

q2
ω2
T2

Gimbal2

Figure 1 Schematic Diagram of CMG
Let qi and ωi , (i = 1, 2, 3) be the angle and the angularvelocity of Rotor1, Gimbal2 and Gimbal3 respectively.
T1 and T2 are the torque spinning Rotor1 and tilting
Gimbal2. Equation of motions of each rigid bodies are
obtained as follows.
Rotor1:IR1y ω̇1 + IR1y ω̇3 cos q2 − IR1y ω2 ω3 sin q2 = T1

(2)

3

Gimbal2:(IG2x + IR1x )ω̇2 + I1 ω32 sin q2 cos q2+IR1y ω1 ω3 sin q2 = T2

(3)

Gimbal3:(I2 − I1 sin2 q2 )ω̇3 + IR1y ω̇1 cos q2−IR1y ω1 ω2 sin q2 − I1 ω2 ω3 sin 2q2 = 0,
I1 = IG2y + IR1y − IG2z − IR1x ,I2 = IG3y + IG2y + IR1y(4)

Physical parameters are as follows.
IR1x , IR1y : Moment of inertia of Rotor1[kg · m ],2

IG2x , IG2y , IG2z : MOI of Gimbal2[kg · m2 ],IG3y : MOI of Gimbal3[kg · m2 ]2.2

Conversion into the Chained System

Consider the state equation of Gimbal3 to derive thechained system. The case that the initial angular momentum of Gimbal3 is zero is considered to derive thechained system simply (chaiend system becomes complicated if Gimbal3 has angular momentum at initialcondition). Constraint equation of Gimbal3 is obtainedby integral of equation (4) as follows.
(I2 − I1 sin2 q2 )ω3 + IR1y ω1 cos q2 = 0(5)Constraint equation (5) means the law of conservationof angular momentum. Equation (5) contains not only
angles of the system but also angular velocities. Thissystem is called the first-order nonholonomic system.
Let q = [q1 q2 q3 ]T be states of the state equation. From
constraint equation (5), the following state equation is
obtained by regarding ω1 and ω2 as inputs.
[
]
[
]
1
0
0
q̇ =
ω1 + 1 ω2 ,(6)α(q2 )
0−IR1y cos q2α(q2 ) =I2 − I1 sin2 q2
System (6) is converted to the chained system by following coordinate and input conversions [2].
{{x1 = q1
u1 = ω1x2 = α(q2 ) ,,(7)
u2 = β(q2 )ω2x3 = q3

Controller Synthesis

In this section, the tracking controller for system (9)with conversion (8) to state equation (6) is synthesized.
Let xr = [x1r x2r x3r ]T be the tracking orbit and
u1r , u2r be tracking inputs. The reference system is defined as follows.
[
] [
]
]
ẋ1r
1 0 [
u1r
ẋ2r =
0 1
(10)
u2r
ẋ3r
x2r 0
Let xe = [x1e x2e x3e s3 ]T , xie = xi −xir , (i = 1, 2, 3) bethe∫ error between the state and the reference. Let s3 =(x3 − x3r )dt be the integral of the error between thefunction of the angle of Gimbal3 and the reference. The
integrator makes the system track the reference without
error when the coulomb friction exists in the system.
The error dynamics is obtained as follows.
ẋ = u1 − u1r 1eẋ2e = u2 − u2r ẋ3e = x2 (u1 − u1r ) + x2e u1rṡ3 = x3e

(11)

Control strategy of stabilizing system (11) have following steps.
Step A. Separate dynamics (11) into two subsystems
because stability of x3e depends on stability of x1e .
Stabilizing x1e by applying u1 firstly.
Step B. Synthesize stabilizing controller for the othersubsystem by applying remaining input u2 basedon the backstepping approach.
Step C. Calculate control torques T1 and T2 based on
the backstepping approach from obtained inputs forthe chained system.
3.1

Stabilize the Subsystem ∆1

System of xe is separated into following subsystems∆1 and ∆2 .
{
∆2 :

∆1 : ẋ1e = u1 − u1rẋ2e = u2 − u2rẋ3e = x2 (u1 − u1r ) + x2e u1rṡ3 = x3e

(12)
(13)

d
α(q2 )
dq2
It is well known that conversion (7) is the general
method. However the problem caused by the hardware restriction occur in the controller synthesis (details
later) if system (6) is converted into the chained system
by general method (7). Therefore following conversions
are applied in order to satisfy the problem [4].
{{x1 = α(q2 )u1 = β(q2 )ω2
x2 = q1,(8)
u2 = ω1x3 = q1 α(q2 ) − q3

At first, subsystem ∆1 is stabilized by applying feedback
as follows.

The chained system is obtained as follows.
[
] [
]
]
ẋ1
1 0 [
u1
ẋ2 =
0 1
u2
ẋ3
x2 0

Subsystem ∆2 is stabilized by applying the remaining
input u2 .
In the chained system by general method (7), stabilizing subsystem (12) means stabilizing the angle of Rotor1 firstly because x1 = q1 . In contrast, conversion
method (8) stabilizes the function of q2 firstly because
x1 = α(q2 ).

β(q2 ) =(9)

The nonlinear tracking controller is synthesized basedon chained system (9) with conversion (8).

ẋ1e = u1 − u1r = −k1 x1e , k1 > 0(14)

Subsystem ∆2 can be rewritten as follows when u1 − u1r
converses to zero by equation (14){ẋ2e = u2 − u2rẋ3e = x2e u1rṡ3 = x3e

(15)

3.2

Stabilize the Subsystem ∆2

3.3

Subsystem (15) is stabilized based on backstepping
approach. The dynamics of x3e and s3 can be stabilizedby x2e which is regarded as the virtual input. Note thatx2e is defined as the error between the state x2 and thereference x2r . The error x2e may become large because
the dynamics of x3e and s3 is stabilized by regarding x2e
as the virtual input. In the case of general method (7),x2e is defined by x2 = α(q2 ), i.e. x2e is a function of
the angle of Gimbal2. Gimbal2 has the restriction (1).
It is diﬃcult to satisfy restriction (1) with the generalformed chained system. In contrast, the chained system
by conversion (8) consists of x2 = q1 . Synthesizing thecontroller becomes easy by applying conversion (8) because the angle of Rotor1 does not have any restrictions.
Consider the condition to stabilize the dynamics ofx3e and s3 in the subsystem ∆2 by regarding x2e as thevirtual input. Lyapunov function candidate V1 (x3e , s3 )for the dynamics of x3e and s3 is chosen as follows.
V1 (x3e , s3 ) =1(x3e + u21r s3 )2 > 0
2(16)

Assume the following equation is satisfied.
x2e = −k2 u1r (x3e + u21r s3 ) − 2u̇1r s3 − u1r x3e , (17)k2 > 0
Then the time derivative of equation (16) is calculated
as follows.
V̇1 (x3e , s3 ) = −k2 u21r (x3e + u21r s3 )2 < 0(18)

The dynamics of x3e and s3 becomes asymptotically stable if assumption (17) is satisfied.
Consider the virtual input u2 to satisfy assumption(17). The error σ between the state x2e and right handside of equation (17) is defined as follows.

Calculate the Control TorqueControl torques T1 and T2 are derived by regarding
u1 and u2 as virtual inputs. The system of CMG isrepresented by equation (2)-(4) and equation (14) as
follows.
dβ(q )
 u̇1 = β(q2 )ω̇2 + γ(q2 )ω22 , γ(q2 ) = dq221(23)
 ω̇2 = f1 (q2 , ω1 , ω3 ) + IG2x +IR1x T2ẋ1e = u1 − u1ru̇2 = ω̇1 = f2 (q2 , ω1 , ω2 , ω3 ) + f3 (q2 )T1 σ̇ = u2 − u2r + (3u̇1r + k2 u̇1r + k2 u31r )x3e+(u21r + k2 u21r )x2e + (2ü1r + 3k2 u21r u̇1r )s3(24)22 ẋ3e = x2e u1r = σu1r − k2 u1r (x3e + u1r s3 )−2u1r u̇1r s3 − u21r x3e−I1 ω32 sin q2 cos q2 − IR1y ω1 ω3,
IG2x + IR1xf2a (q2 , ω1 , ω2 , ω3 )f2 (q2 , ω1 , ω2 , ω3 ) =,−I2 + I1 sin2 q2 + IR1y cos2 q2
f1 (q2 , ω1 , ω3 ) =f2a (q2 , ω1 , ω2 , ω3 ) = −(I2 − I1 sin2 q2 )ω2 ω3 sin q2+IR1y ω1 ω2 cos q2 sin q2+I1 ω2 ω3 sin 2q2 cos q2 ,f3 (q2 ) =I2 − I1 sin2 q22−IR1y (I2 − I1 sin2 q2 ) + IR1ycos2 q2

At first, the torque T2 is derived by backstepping approach. The error ξ between the state u1 and virtual
input (14) is as follows.
ξ1 = u1 − (u1r − k1 x1e )Lyapunov function candidate V3 (x1e , ξ1 ) for the dynamics of x1e and ξ1 is chosen as equation (26).
V3 (x1e , ξ1 ) =σ = x2e + k2 u1r (x3e + u21r s3 ) + 2u̇1r s3 + u1r x3e(19)Lyapunov function candidate V2 (x3e , s3 , σ) for the dynamics of x3e , s3 and σ is chosen as follows.

(25)

1 2
1
x + ξ2 > 0
2 1e 2 1(26)

The function u̇1 is chosen as follows.
u̇1 = −x1e + u̇1r − k1 ẋ1e − H1 ξ1 , H1 > 0(27)Time derivative of equation (26) is calculated as follows.
1
1
V2 (x3e , s3 , σ) = (x3e + u21r s3 )2 + σ 2 > 0
2
2

(20)

The input u2 is chosen as follows.
u2 = u2r − (3u̇1r + k2 u̇1r + k2 u31r )x3e−(u21r + k2 u21r )x2e − (2ü1r + 3k2 u21r u̇1r )s3−u1r (x3e + u21r s3 ) − k3 σ, k3 > 0 (21)The time derivative of equation (20) is calculated asfollows.
V̇2 (x3e , s3 , σ) = −k2 u21r (x3e + u21r s3 )2 − k3 σ 2 < 0 (22)The dynamics of x3e , s3 and σ becomes asymptoticallystable. Assumption (17) is satisfied by choosing u2 asequation (21) because the dynamics of σ converges tozero. Therefore the subsystem ∆2 becomes asymptotically stable.

V̇3 (x1e , ξ1 ) = −k1 x21e − H1 ξ12 < 0(28)

System (23) becomes asymptotically stable. Therefore
the control torque T2 is obtained from equation (23),(27) as follows.
T2 = {(IG2x + IR1x )(−β(q2 )f1 − γ(q2 )ω22 + u̇1r
−k1 ẋ1e − x1e − H1 ξ1 )}/β(q2 ) (29)Note that β(q2 ) = 0 in equation (29) is singularity. Control torque T2 becomes infinity if q2 goes to zero. In thesame way, the torque T1 is derived by backstepping approach. The error ξ2 between the state u2 and virtual
input (21) is as follows.
ξ2 = u2 − u2r + G1 x2e + G2 x3e + G3 s3 (30)
G1 = u21r + k2 u21r + k3 ,3
G2 = 3u̇1r + k2 u̇1r + k2 u1r + u1r + k3 u1r + k2 k3 u1r ,G3 = 2ü1r + 3k2 u21r u̇1r + u31r + 2k3 u̇1r + k2 k3 u31r

0.5

1
1
1
(x3e + u21r s3 )2 + σ 2 + ξ22 > 0
2
2
2
(31)
The function u̇2 is chosen as follows.
V4 (x3e , s3 , σ, ξ2 ) =

1.5

−0.5

V̇4 (x3e , s3 , σ, ξ2 ) = −k2 u21r (x3e +u21r s3 )2 −k3 σ2 −H2 ξ22 <0(33)
System (24) becomes asymptotically stable. Therefore
the control torque T1 is obtained from equation (24),(32) as follows.
T1 = (−f2 +u̇2r −Ġ1 x2e −G1 ẋ2e −Ġ2 x3e −G2 ẋ3e
(34)

Then the system of CMG becomes asymptotically stableby T1 and T2 .

Simulation

In this section, the eﬀectiveness of this research is illustrated by simulations. Simulations including a friction in Rotor1 are executed. The friction is estimatedby some experiments as follows.
{
0.5, ω1 > 0
0, ω1 = 0(35)
Fc =−0.5, ω1 < 0
The equation of motion of Rotor1 with friction is asfollows.
IR1y ω̇1 +IR1y ω̇3 cos q2 −IR1y ω2 ω3 sin q2 = T1 −Fc (36)
Initial conditions are given as follows.
T

[ q1

q2

q3 ] = [ 0

[ ω1

ω2

ω3 ] = [ 0

T

T

π
4

0 ] ,
0

References {are given as follows.
0(t < 5, t > 7)
ω1r =−1.008 (5 ≤ t ≤ 7)

0 ]

T

15
time [s]

20

25

30

(37)

[rad/sec],π[rad],
4
ω3r = ω1r α(q2 ) [rad/sec] (38)q2r = 0.5 sin(1.5t) +Where q3r is obtained by integral of ω3r . The control
problem is that Gimbal3, which does not have any drive
sources, tracks the reference without error. The angleof Gimbal2 tracks the sinusoidal reference satisfying restriction (1). The reference of the angular velocity ofRotor1 ω1r is calculated to let the reference for the angleof Gimbal3 go to 0.5[rad]. Gain parameters are chosen
by trial and error as follows.
k1 = 3, k2 = 7, k3 = 11, H1 = 18, H2 = 6(39)
Simulation results are shown in Fig.2 - 4. The solidline shows the proposed method (controller1) and thedashed line shows the controller without integrator (controller2). The dotted line shows the reference.

0
0

5

10

15
time [s]

20

25

30

Figure 3 Simulation of q2

0.5

angle [rad]0.4Time derivative of equation (31) is calculated as follows.

4

10

Figure 2 Simulation of ω1Ġ3 s3 − G3 ṡ3 − σ − H2 ξ2 )/f3 , H2 > 0 (32)−Ġ3 s3 −G3 ṡ3 −σ−H2 ξ2 )/f3 ,H2 >0

5

1

0.5

Controller1
ReferenceController2

−1

−1.5
0

u̇2 = (u̇2r − Ġ1 x2e − G1 ẋ2e − Ġ2 x3e − G2 ẋ3eController1
ReferenceController20angle [rad]velocity [rad/sec]

Lyapunov function candidate V4 (x3e , s3 , σ, ξ2 ) for the
dynamics of x3e , s3 , σ and ξ2 is chosen as equation (31).

0.3
0.2
Controller1
ReferenceController2

0.1
0
0

5

10

15
time [s]

20

25

30

Figure 4 Simulation of q3
The angular velocity of Rotor1 is shown in Fig.2. It
can be seen that the response ω1 is stabilized. The angleof Gimbal2 with the restriction is shown in Fig.3. As canbe seen that the response q2 tracks the reference under
the restriction (1). The angle of Gimbal3 is shown in
Fig.4. The steady-state error occurs in the response q3
applying for the controller2. In contrast, the response q3
tracks the reference without error by applying proposed
method in case that the friction exists in the system.
From these results, the control problem is satisfied byapplying the proposed method.

5

Conclusion

In this research, a nonlinear tracking control for firstorder nonholonomic system with restriction and friction
is proposed. The state equation is converted to thechained system which avoids the restriction. The tracking controller with integrator based on the backstepping method is synthesized. The integrator makes statestrack the reference without error when the coulomb friction exists in the system. The stability of the systemwith integrator is guaranteed theoretically by consisting
Lyapunov function. From simulation results, it can beseen that the response can track the reference without
error by the proposed method in case that the system
has restriction and friction.

References[1] R. W. Brockett: Asympototic stability and feedback stabilization. Diﬀerential Geometric Control Theory, pp. 181-191,
Boston, Birkhauser, 1983.
[2] F. Matsuno and J. Tsurusaki: Chained form transformation
algorithm for a class of 3-states and 2-inputs nonholonomic
systems and attitude control of a space robot. Proc. the 38th
IEEE CDC, pp. 2126-2131, 1999 .
[3] S. Sato and M. Takahashi: Singularity Escape of Satellitewith Control Moment Gyros Using Path Planning of Angular Momentum. The Japan Society of Mechanical Engineers,Vol. 79, No. 801, pp. 1526-1539, 2013.
[4] M. Reyhanoglu and J. van de Loo: State Feedback Tracking
of a Nonholonomic Control Moment Gyroscope. Proc. the45th IEEE CDC, pp. 6156-6161, 2006.
[5] K. Ishikawa, N. Sakamoto and D. Shiraki: Design of partial
optimal controller for a nonlinear system and application to
the attitude control of a control moment gyro. Proc. SICE
Annual Conference (SICE), pp. 1865-1871, 2013.
[6] S. Yang: Adaptive Control for Double-Integrator Class Systems in the Absence of Velocity Feedback. The Universityof Texas at Austin, Aerospace Engineering and Engineering
Mechanics Department, Austin, TX, 2012.
[7] T. R. Parks: Manual For Model 750 Control Moment Gyroscope. Educational Control Products, Bell Canyon, 1999.