Motion Control-A SMC Approach
Asif Šabanović
Sabanci University, FENS, Istanbul 34956, Turkey
asif@sabanciuniv.edu
1.
Abstract
Motion control involves many diversified control problems of complex nonlinear systems. In this paper we will be addressing the SMC approach for multi-body mechanical systems control. The main feature of the SMC is constraint of the system motion into manifold in system state space. It will be shown that usage of the SMC methods is a natural way of addressing problems in motion control including constrained systems, redundant systems and functionally related systems to name some. The consistent application of the SMC methods leads to natural decomposition of system motion for redundant tasks and allows simple, straight forward dynamical decoupling of the multiple tasks.
2.
Introduction
Both theory of SMC systems and the control of multi-body systems are well developed and vast literature is available for both. SMC has been originally developed for dynamical systems [1] with discontinuous control and as such did not gain easy acceptance in the control of mechanical systems. Early works attempts of SMC application to mechanical systems [2] resulted in the chattering phenomena and triggered different approaches to control smoothing techniques. Later works [3] in SMC systems demonstrated applicability of these methods to electromechanical and mechanical systems and illustrated ways of eliminating or reducing chattering problems. The core idea of SMC is to constraint system motion in a manifold in system state space and reaching that manifold in the final time. Dynamics of constrained motion is of lower dimension then the original system and methods had been developed to write equations of motion of the constrained system, along with the efficient design procedures [2].
The body of literature on multi-body systems control is vast and includes solutions in many different frameworks. A comprehensive, consistent and well presented, different aspects of robotic systems control can be found in [4]. Basic feature of robotic multi-body systems is nonlinear dynamics with complex interconnecting terms and linearity in control input. The control problems in both configuration space and in the operational space of multi-body systems can be formulated as restriction of the motion to stay in some hyper-surface defined by the desired changes of the state variables. This formulation includes the constrained systems also. Such a structure of multi-body systems and the mathematical formulation of the control goal is consistent with SMC methods.
Paper is organized in the following way. In the third
section the configuration space description of multi-body systems and constraint/task formulation will be given. Additionally basics of SMC methods will be shown. In section four constraints in configuration and in the operational space will be discussed. It the fifth section the operational space control of redundant multi-body systems in SMC framework will be discussed.
3.
System Description and Basics of SMC
3.1. Basics of SMCLet dynamic system
( ) ( )
x,
t
B
x,
t
u
d
( )
x,
t
f
x
E
&
=
+
+
(1)where
E
∈
ℜ
n×nis full rank matrix,x
∈
ℜ
n×1 stands forthe state vector, f
( )
x,t ∈ℜn×1is vector function of state andtime,
( )
nmt∈ℜ×
x,
B is full column rank control distribution matrix,
u
∈
ℜ
m×1is the control vector andd
( )
x,
t
∈
ℜ
n×1 isdisturbance.
Let control system requirements are satisfied if system (1) is enforced to exhibit motion in manifold (so-called sliding mode)
( )
x
=
0
∈
ℜ
m×1σ
(2) Here( )
[
m]
Tσ ...
σ
1=
x
σ
is assumed continuous.The equations of motion are derived using so-called equivalent control method [1]. In this method control is found as solution of the algebraic equation
σ&
(
x
,
u
eq)
=
0
andsubstituted into (1). Having
(
∂
σ
( )
x
∂
x
)
=
G
as a full row rank matrix the equivalent control can be determined as(
)
(
( ) ( )
t
t
)
eq
GE
B
GE
f
x,
d
x,
u
=
−
−1 −1 −1+
(3) Control (3) has a specific meaning – if applied to system (1) it will enforce motion satisfying
σ&
(
x
,
u
eq)
=
0
- thusgenerating no change in the distance from the manifold (2). Assuming manifold (2) consistent initial conditions
σ
( )
0
=
0
application of the equivalent control (3) to system (1) gives equations of motion as
(
)
[
]
(
( ) ( )
)
( )
x
0
σ
x,
d
x,
f
GE
B
GE
B
I
x
E
=
+
−
=
−1 −1 −1t
t
&
(4)System (4) describes
(
n
−
m
)
order dynamics. The projection matrixP
=
I
−
B
(
GE
−1B
)
−1GE
−1 satisfies0
PB
=
andGE
−1P
=
0
. From these conditions it is easy todetermine that if
(
f
( ) ( )
x,
t
+
d
x,
t
)
=
Bξ
+
υ
then dynamics (4) will be reduced to( )
x
0
σ
Pυ
x
E
&
=
,
=
(5)Thus, sliding mode motion will not depend on the component
Bξ
of the so-called matching system dynamics Fukushima July 22-24, 2010and the matching disturbances.
Knowing equations of motion in sliding mode allows selection of manifold (2) to satisfy closed loop specification. Note that this can be realized prior to control input selection. Selection of the control input is now related to enforcing the stability of equilibrium
σ
( )
x
=
0
, or in other words enforcing sliding mode in manifold (2). Let Lyapunov function candidate beσ
Tσ
/
2
V
=
. Stability conditions requirederivative of the Lyapunov function candidate to be negative definite. Let
V
=
σ
Tσ
=
−
ρ
σ
TΨ
( )
σ
<
0
&
&
where function( )
σ
Ψ
satisfies component-vise conditions( )
(
Ψ
i)
sign
( )
isign
σ
=
σ
and letρ
>
0
. Then control input(
GE
B
)
Ψ
( )
σ
u
u
=
−
ρ
−1 −1eq (6)
will enforce stability of the equilibrium
σ
( )
x
=
0
. Strictly speaking sliding mode will be enforced in manifold (2) and is reached in finite time. In continuous time implementation functionΨ
( )
σ
should be discontinuous in order to guaranty the existence of the sliding mode. In the discrete-time implementationΨ
( )
σ
can be selected continuous (in the discrete-time sense) [3].For known
( )
u,
σ
and matrix(
GE
−1B
)
equivalentcontrol can be estimated from projection of the system dynamics into manifold (2)
(
GE
B
)
(
u
u
eq)
x
G
σ
&
=
&
=
−1−
(7)Using estimated equivalent acceleration instead of the exact one allows control input evaluation based on the measured function
( )
σ
and matrix(
GE
−1B
)
.3.2. Dynamics of Multi-body Systems
Configuration space dynamics of multi-body, rigid, fully actuated
n
−
dof system can be expressed as( )
q
q
b
( ) ( )
q,
q
g
q
τ
A
&&
+
&
+
=
(8)Where
q
∈
ℜ
n×1denotes the configuration vector;
( )
q
∈
ℜ
n×nA
stands for positive definite kinetic energymatrix (sometimes termed inertia matrix) with bounded strictly positive elements
0
<
a
ij−≤
a
ij( )
q
≤
a
ij+ hence( )
+−
≤
≤
A
A
A
q
, whereA ,
−A
+are two known scalars with bounds0
<
A
−≤
A
+;b
( )
q,
q
&
∈
ℜ
n×1stands for vectorCoriolis forces, viscous friction and centripetal forces and is bounded by b
( )
q,q& ≤ b+;( )
∈
ℜ
n×1q
g
stands for vector ofgravity terms bounded by g
( )
q ≤ g+;τ
∈
ℜ
nx1 stands forvector of generalized joint forces bounded by τ ≤
τ
+(In further text we will sometimes refer toτ
as the control vector or input force vector). Positive scalarsA ,
−A
+,b
+,τ
+ areassumed known where any induced matrix or vector norm may be used in their definition. The kinetic energy matrix depends on the current system configuration thus it reflects current system configuration.
4.
Control of Multi-body Systems
4.1. Constrained SystemsLet us analyze behavior of system (8) under assumption
that motion is required to satisfy
m
<
n
hard holonomicconstraints
( )
mm
n
<
ℜ
∈
=
0
×1,
q
φ
. Jacobian associated withconstraints is defined as
Φ
=
(
∂
φ
( )
q
∂
q
)
∈
ℜ
m×n,
m
<
n
and is assumed to have full row rank. Dynamics of system (8) in contact with constraint manifold can be described by:( ) ( )
q,
q
g
q
Φ
λ
τ
b
q
A
+
+
−
T=
&
&&
(9) Here∈
ℜ
m×1λ
stands for vector of Lagrange multipliers. Lagrange multipliers stand for the force vector needed to maintain system (9) in constraint manifold. There are many methods to determine Lagrange multipliers [5]. Here Lagrange multiplierλ
will be taken as virtual control input in system (9).Satisfying constraints
φ
( )
q
=
0
can be interpreted as enforcing zero velocity in constrained directions, or equivalently selecting Lagrange multipliers that enforce stability in manifoldσ
( ) ( )
q,
q
&
=
φ
&
q
=
Φ
q
&
=
0
. (Note that here matrixΦ
plays the same role as matrixG
in (7). If Lagrange multipliers are taken as control in (9), matrixΦ
Tcan be interpreted as control distribution matrix. The acceleration in the constrained direction is( )
q
ΦA
(
τ
b
g
)
ΦA
Φ
λ
Φ
&
q
&
&&
=
−1−
−
+
−1 T+
φ
(10)Lagrange multipliers satisfying
φ&&
( )
q
( )
t
=
0
can be determined as(
ΦA
Φ
)
ΦA
(
(
τ
b
g
)
Φ
q
)
λ
=
−
−1 T −1 −1−
−
+
&
&
(11) Here
Φ
#T=
(
ΦA
−1Φ
T)
−1ΦA
−1stands for the transpose of the generalized inverse of constraint Jacobian. It has the same structure as matrix
(
GE
−1B
)
−1GE
−1which appears inexpression for the equivalent control (3).
By inserting (11) into (9) equations of motion in manifold (7.58) can be obtained in the following form
(
)
( )
(
)
(
)
(
1)
1 1 1 1 1;
− − Φ − − − × Φ=
=
−
ℜ
∈
=
−
+
−
=
T T T T m T TΦ
ΦA
Λ
Γ
ΦA
Φ
ΦA
Φ
I
0
q
q
Φ
Λ
Φ
g
b
τ
Γ
q
A
φ
&
&
&&
(12)The structure of the projection matrix in (12) and (4) is the same – it is dynamically consistent null space projection matrix. This illustrates similarities in the description of the dynamics of constrained systems and systems with sliding modes – an expected result having in mind that in both cases motion of the system is forced to satisfy functional relationship defined by constraint manifold or the sliding mode manifold. Matrix Γ satisfies conditions
Γ
TΦ
T=
0
and 1
0
=
−
Γ
TΦA
. Constrained system (12) is describing(
n
−
m
)
order dynamics. That is easy to verify. By expressing velocity in constrained direction as[
Φ
Φ
]
q
q
Φ
&
M
&
&
=
=
Φ1 Φ2φ
we can determinem
components(
2 2)
1 1
1
Φ
Φ
q
q
&
=
−Φφ
&
−
Φ&
of the configuration space velocityvector. The remaining
(
n
−
m
)
components of the configuration vector are then describing motion in the unconstrained direction. Our aim is to find transformations ofvariables such that in the new set of variables dynamics in constrained and in unconstrained directions are dynamically decoupled. Let motion in unconstrained direction be
described by a velocity vector ( )1
1
∈
ℜ
− ×=
Φ &
Γ
q
nm&
ϕ
withfull row rank matrix
Φ
1∈
ℜ
(n−m)×n yet to be determined and nn×
ℜ
∈
Γ
null space projection matrix defined in (12).Let forces ×1
Φ
∈
ℜ
mf
and (− )×1Γ
∈
ℜ
n mf
acting in thecorresponding subspaces are projected into configuration space by the transpose of corresponding matrices
Φ
T and( )
TΓ
Φ
1 .New set of velocities
( )
φ &
&,
ϕ
and the corresponding forces can be expressed asq
J
q
Γ
Φ
q
&
&
&
&
&
ΦΓ⎥
=
ΦΓ⎦
⎤
⎢
⎣
⎡
=
⎥
⎦
⎤
⎢
⎣
⎡
=
1ϕ
φ
(13)Here
J
ΦΓ∈
ℜ
n×nstands for the Jacobian matrix. In order to have regular transformation JacobianJ
ΦΓhas to have full rank. That defines the selection of the matrixΓ
1=
Φ
1Γ
consistent with constraint Jacobian
Φ
. The accelerationΦΓ
q&&
can be expressed asq
J
q
J
q
&&
ΦΓ=
ΦΓ&&
+
&
ΦΓ&
(14) Insertion (8) and (13) into (14) yields system dynamics(
)
(
)
⎥⎦ ⎤ ⎢ ⎣ ⎡ + ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ + + − ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ = ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ − − Γ Φ − − − − q Γ q Φ g b A Γ g b ΦA f f Γ A Γ Φ A Γ Γ ΦA Φ ΦA & & & & && && 1 1 1 1 1 1 1 1 1 1 1 1 T T T T ϕ φ (15) The dynamical decoupling in (15) can be verified just by analyzing extradiagonal elements of the control distributionmatrix. These terms are T
1 1
Γ
ΦA
− andΓ
A
1Φ
T1 − . By
applying matrix inversion in block form and equalities
0 Γ ΦA− T
=
1 1 and ΓA−1ΦT=
01 the dynamics (15) can be
rearranged into two dynamically decoupled sub-systems
(
)
(
)
(
)
(
)
1 1 1 1 1 1 1 1 1 1 1 1 1 1;
− − Γ − − Φ Γ Γ − Γ Γ Φ Φ − Φ Φ
=
=
=
−
+
+
=
−
+
+
T TΓ
A
Γ
Λ
Φ
ΦA
Λ
f
q
Γ
Λ
g
b
A
Γ
Λ
Λ
f
q
Φ
Λ
g
b
ΦA
Λ
Λ
&
&
&&
&
&
&&
ϕ
φ
(16)4.2. Operational Space Dynamics and Control
In general operational space coordinates may represent any set of coordinates defining kinematic mapping between configuration space and the operational space. Assume task vector is given by
( )
p np
n
≤
ℜ
∈
ℜ
∈
=
xq,
x ×1
,
q ×1
,
x (17) By taking derivative of x
( )
q∈
ℜ
p×1 the following relationship is obtained( )
q J( )
qq x Jq Jq q q xx& ⎟⎟&= & &&= &&+&& ⎠ ⎞ ⎜⎜ ⎝ ⎛ ∂ ∂ = ; (18) Here ∈ℜp×1
x&& stands for the vector of operational space accelerations,
J
( )
q
∈
ℜ
p×n is task associated Jacobian matrix. Jacobian has full row rank for all permissible values of the task vector. The singularities are defined as configurations for whichdet
( )
J
( )
q
=
0
[4].Let, similarly to the procedure applied in the analysis of constrained systems, internal configuration of system (8) (we will also use term posture) consistent with given task be described by a minimal set of independent coordinates
∈
ℜ
(n−p)×1P
x
. Then we can decompose theconfiguration space velocity vector into the task velocity vector
x
&
=
J
q
&
and the task consistent posture vector x&P =(
JPΓ)
q& , where(
)
( )n p n P P= ∂x ∂q ∈ℜ − × J
stands for posture Jacobian and
Γ
stands for the task consistent null space projection matrix. Let operational space force be∈
ℜ
p×1x
f
, then vector of the configuration space forces induced by the operational space forces is T xx
J
f
τ
=
.Similarly
∈
ℜ
(n−p)×1 Pf
is the posture related force vector and corresponding configuration space force can be expressed as( )
P T PP
J
Γ
f
τ
=
.By concatenating the task and posture velocities the operational space velocity can be expressed as
( )
Γ
q
J
q
J
q
Γ
J
J
x
x
x
&
&
&
&
&
&
JP JP P P P=
⎥
⎦
⎤
⎢
⎣
⎡
=
⎥
⎦
⎤
⎢
⎣
⎡
=
⎥
⎦
⎤
⎢
⎣
⎡
=
(19) Here nn JP∈
ℜ
×J
is, due to the selection of the task and posture Jacobians, full rank Jacobian matrix. The acceleration can be written in the following form(
)
(
)
⎥⎦ ⎤ ⎢ ⎣ ⎡ + ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ + + − ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ = ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ − − − − − − q Γ q J g b A Γ g b JA f f Γ A Γ J A Γ Γ JA J JA x x & & & & && && P P P x T P P T P T P T P 1 1 1 1 1 1 (20) The control distribution matrix in (20) is not diagonal thus task and posture are dynamically coupled. Since task Jacobian is defined, and consequently the posture Jacobian is selected to be consistent with task, the decoupling can be then achieved due to selection of the matrix Γ . With(
I
J
J
)
Γ
=
−
# and generalized inverse(
1)
11
#
=
A
−J
TJA
−J
T −J
it is easy to verify relations(n p) p T P × − −
Γ
= 0
JA
1 and T (n p)p PA
−J
= 0
− ×Γ
1 . Then, theforce distribution matrix in (20) is block diagonal and its inverse will be also block diagonal and the dynamics (20) can be written as
(
)
(
)
(
1)
1(
1)
1 1 1;
− − − − − −=
=
=
−
+
+
=
−
+
+
T P P P T x P P P P P P x x x x PΓ
A
Γ
Λ
J
JA
Λ
f
q
Γ
Λ
g
b
A
Γ
Λ
x
Λ
f
q
J
Λ
g
b
JA
Λ
x
Λ
&
&
&&
&
&
&&
(21)The task and the posture become dynamically decoupled and forces
f
xandf
Pcan be selected separately. Note thesimilarities of the transformations with constrained systems Let task and posture tracking errors be
(
)
( )
(
)
( )
( )1 1,
,
,
,
× − ×ℜ
∈
−
=
ℜ
∈
−
=
p n P ref P P ref P P P p x ref ref xe
x
q
x
x
x
e
e
x
q
x
x
x
e
(22) Here xref andx
refP stand or the task and posturereferences. Then dynamics of the task and posture errors is
(
)
(
)
(
)
(
)
(
)
(
)
ref P P P P P P P P ref x x x x x x q Γ Λ g b A Γ Λ f Λ e x q J Λ g b JA Λ f Λ e && & & && && & & && − − + − = − − + − = − − − − 1 1 1 1 (23) Fukushima July 22-24, 2010Selecting manifolds
0
e
e
C
σ
0
e
e
C
σ
=
+
=
=
+
=
P P P P x x x x&
&
(24)The accelerations inducing no change in the rate of change of the rate of change
σ
&
x=
0
andσ
&
P=
0
(so-calledequivalent acceleration) can be simply obtained as
P P ref P eq P x x ref eq x
e
C
x
x
e
C
x
x
&
&&
&&
&
&&
&&
−
=
−
=
(25)The force inducing acceleration (25) in task and posture control can be expressed as equivalent controls in task and posture become
(
)
(
)
(
)
(
)
eq P P P P P eq P eq x x x eq xx
Λ
q
Γ
g
b
A
Γ
Λ
f
x
Λ
q
J
g
b
JA
Λ
f
&&
&
&
&&
&
&
+
−
+
=
+
−
+
=
− − 1 1 (26) Let, for task and posture, Lyapunov function candidate beselected in the form
V
ii
x
P
T i
i
= σ
σ
/
2
,
=
,
. Stabilityconditions require derivative of the Lyapunov function candidate to be negative definite. Let
( )
<
0
−
=
=
i i T i i i T i iV
&
σ
σ
&
ρ
σ
Ψ
σ
where functionΨ
i( )
σ
isatisfies component-vise
sign
(
Ψ
ii( )
σ
i)
=
sign
( )
σ
ii andlet
ρ
i>
0
. Then task and posture control input are( )
( )
P P P P eq P P x x x x eq x xσ
Ψ
Λ
f
f
σ
Ψ
Λ
f
f
ρ
ρ
−
=
−
=
(27)These forces can be expressed in more compact way by introducing the task and posture disturbance forces
dis x
f
andf
Pdisto obtain expressions similar to those obtained inthe acceleration control framework [6]
( )
(
)
( )
(
)
(
)
(
)
(
)
(
Γ
A
b
g
Γ
q
)
Λ
f
q
J
g
b
JA
Λ
f
σ
Ψ
x
Λ
f
f
σ
Ψ
x
Λ
f
f
&
&
&
&
&&
&&
P P P dis P x dis x P P P eq P P dis P eq P x x x eq x x dis x eq x−
+
=
−
+
=
−
+
=
−
+
=
− − 1 1ρ
ρ
(28)The equivalent forces and the disturbance forces can be estimated component-vise. Control (27) enforce stability of the equilibrium
σ
x=
0
andσ
P=
0
. Strictly speaking slidingmode will be enforced in the intersection of manifolds
0
σ
x=
andσ
P=
0
ifΨ
( )
σ
is selected such thatintersection is reached in finite time. In the discrete-time implementation
Ψ
( )
σ
can be selected continuous (in the discrete-time sense) [3]. The equations of motion in sliding mode are given by (24). If asymptotic convergence, instead of sliding mode is selected equations of motion are then given by( )
σ
0
Ψ
σ
σ
σ
+
i i=
T i i i T i&
ρ
.The configuration space force can be expressed as
P T P x Tf Γ f J τ= + (29)
Inserting (25), (28) and (29) into (8) results in the operational space desired acceleration
(
x
J
q
) (
Γ
x
Γ
q
)
J
q
&&
&&
&
&
&&
&
P&
des P P des des−
+
−
=
# # (30) Here x TΛ
J
A
J
#=
−1 stand for the task Jacobianpseudoinverse and
Γ
P#=
A
−1Γ
PTΛ
P stands for the postureJacobian
( )
J
PΓ
pseudoinverse. The result show fullcorrespondence with constrained system control. The solution offers a way of combining the task and the posture control or instead of posture, control of another task.
The application of the SMC leads to the same structure of the control in operational space and in the constrained systems. Such similarity is very important for the motion control of systems that may be constrained and at the same time need to implement certain task. The fact that dynamics of constrained systems and tasks are described by equations that have the same form and that projection of the velocities and the forces are consistent in both cases opens possibility of combining the constraints and tasks into an augmented description and treating them within the same framework.
4.3. Constraints in Operational Space
Assume configuration space dynamical model for
n
−
dof multi-body system as in (8), task defined byx
( )
q
∈
ℜ
m×1and operational space Jacobian matrix mn
m
n
x∈ℜ × , <
J .
Let select input force such that end-effecter is constrained to smooth surface defined by
( )
( )
ref( )
t
pp
m
n
<
<
ℜ
∈
=
φ
,
φ
×1,
φ q
x
(31) Theφ
ref( )
t
stands for the time dependent sufficiently smooth reference. Relation between operational space acceleration and acceleration in constrained direction can be expressed by twice differentiating (31)
( )
( )
⎟
∈
ℜ
p×m⎠
⎞
⎜
⎝
⎛
∂
∂
=
+
=
x
J
x
J
x
J
q
x
φ
φ
&&
φ&&
&
φ&
;
φ (32)
Here
∈
ℜ
p×m φJ
stands for constraint Jacobian inoperational space. Projection of operational space dynamics (21) in constrained direction can be written as
(
)
(
)
(
)
φ φ φ φ φ φ φ φ φ φ φ φ φφ
f
J
f
J
J
A
J
J
Λ
f
ν
Λ
J
Λ
x
J
μ
Λ
J
Λ
Λ
T x T T x x x x x x=
=
=
+
−
+
− − − − − 1 1 1 1 1&
&
&&
(33)Structure of the matrix
=
(
−1 T)
−1 x φ φφ
J
Λ
J
Λ
illustratesresult of the two consecutive transformations from configuration space - the projection into operational space and then projection into constrained direction.
Enforcing sliding mode in
σ
φ=
C
φe
φ+
e
φ=
0
,0
>
φC
with control errore
φ=
φ
−
φ
ref will guaranty convergence to equilibrium (31). The control forcef
φguarantying sliding mode motion in manifold
σ
φ=
0
is selected as(
)
( )
φ φ φ φ φ φ φ φ φ φ φ φ φ φρ
φ
φ
φ
σ
Ψ
e
C
ν
Λ
J
Λ
x
J
μ
Λ
J
Λ
f
Λ
f
f
−
−
=
+
−
=
+
=
− −&
&&
&&
&
&
&&
ref des x x x x dis des dis 1 1 (34)Here
φ&&
des stands for the desired acceleration in the constrained direction,φ&&
ref stands for the referenceacceleration.
As shown in analysis of constrained systems dynamics decoupling of the remaining
(
m
−
p
)
degrees of freedom requires projection in orthogonal complement subspace. This can be obtained by projecting operational space velocity into unconstrained directionz
&
=
J
zφx
&
=
J
zΓ
xφx
&
with(m p)m z
∈
ℜ
− ×J
as a full row rank matrix and mmxφ
∈
ℜ
×Γ
asnull space projection matrix
Γ
φI
J
φ#J
φ−
=
x associated with
constraint Jacobian in the operational space, and
(
1)
1 1 #=
− − T − x T x φ φ φ φΛ
J
J
Λ
J
J
stands for dynamically consistentpseudo inverse. The dynamics
z
&&
=
J
zφx
&&
+
J
&
zφx
&
can beexpressed as
(
)
(
)
(
)
φ φ φ φ φ φ φ φ φ φ φ z T z xz T z T x x z z z x z z x x z z zf
J
f
J
J
A
J
J
Λ
f
ν
Λ
J
x
J
μ
Λ
J
Λ
z
Λ
=
=
=
+
−
+
− − − − − 1 1 1 1 1&
&
&&
(35)Tracking of reference
z
ref can be enforced byestablishing sliding mode motion ins manifold
0
e
e
C
σ
z=
z z+
z=
,C
z>
0
, ref z z z e = − . Then desiredacceleration and corresponding force become
( )
(
J
Λ
μ
J
x
J
Λ
ν
)
Λ
f
σ
Ψ
e
C
z
z
z
Λ
f
f
1 1 − −−
+
=
−
−
=
+
=
x z z x x z z dis z z z z z ref des des z dis z z φ φ φ φ φ φ φρ
&
&
&
&&
&&
&&
(36)Operational space force can be expressed as
φ φ φ φ z T z T x
J
f
J
f
f
=
+
(37)This result is equivalent to concurrent task and posture control in operational space. If desired acceleration
φ&&
des is selected as control in constrained direction force tracking loop, then (37) realizes concurrent force control and motion control in operational space. The enforcement of constraints in operational space establishes algebraic relation between certain number of operational space coordinates and thus limiting the set of motions that can be realized by the system.If (31) describes hard constraints with
( )
t
≡
0
refφ
operational space interaction forceλ
φ TJ
f
int=
should be added to dynamics. Hereλ
stands forthe Lagrange multiplier. These multipliers can be determined using the same idea as applied in section 4.1
4.4. Hierarchy of Tasks in Operational Space
So far we have been analyzing dynamics and control issues for multi-body systems subject to constraints and the single task and the posture. The solution has been found in selecting primary goal (enforcement of the constraints) and then solving secondary goal by using projection into Null space. Let us now address issues in analysis and control of multi-body systems with constraints and multiple tasks. A
−
n
dof multi-body system is required to maintain functional constraints while fulfilling selected tasks;• Constraint is defined by function
φ
( )
q
=
0
∈
ℜ
mc×1with constraint Jacobian
Φ
∈
ℜ
mc×n;• One of the tasks is defined by
x
( )
q
∈
ℜ
mx×1 with taskJacobian Jx∈ℜmx×n;
• Second task is defined by
y
( )
q
∈
ℜ
my×1 with taskJacobian
J
y∈
ℜ
my×n• The priority of task
x
( )
q
is higher than priority of tasky
( )
q
; • All matricesΦ
∈
ℜ
mc×n , m n x∈
ℜ
x×J
and n m y y ×ℜ
∈
J
are assumed to have full row rank, thusconstraints and tasks are linearly independent,
• Without loss of generality let allocation of available configuration space degrees of freedom is such that constraints and tasks can be implemented concurrently and no free dof-s are left, thus
m
c+
m
x+
m
y=
n
. With these operational requirements application of the so far discussed approach we can write constraint-task velocity mapping in the following form⎥
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎢
⎣
⎡
=
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎣
⎡
=
⎥
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎢
⎣
⎡
=
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎣
⎡
2 _ _1 _ _ 2 _ _1 _ _;
,
J
J
Φ
J
y
x
η
q
J
J
Φ
y
x
φ
φ
&
&
&
&
(38) Matrices∈
ℜ
mx×n 1J
and∈
ℜ
my×n 2J
are assumed tohave full row rank and should be determined as function of constraint and task Jacobian matrices in such a way that dynamics of constraints and tasks are decoupled. By assumptions constraint-tasks Jacobian
J
∈
ℜ
n×n has full rankdet
( )
J
≠
0
. Formally constraint and task attributed velocities and accelerations can be expressed as,
;
η
J
q
J
q
q
J
η
&
=
&
&&
=
&&
+
&
&
(39) Configuration space force is[
]
[
x y]
T T T T T T y T x T Tf
f
f
f
J
J
Φ
J
f
J
f
J
f
J
f
Φ
τ
Φ Φ=
=
=
+
+
=
;
2 1 2 1M
M
(40) Here ×1,
×1,
×1 Φ∈
ℜ
c∈
ℜ
x∈
ℜ
yc m y m x mf
f
f
are controlforces associated with constraint and tasks.
The configuration space dynamics is then described by
( ) ( )
yc T xc T c T c T c Tf
J
f
J
f
Φ
f
J
τ
f
J
q
g
q
q,
b
q
A
2 1+
+
=
=
+
+
+
Φ&
&&
(41)By inserting (40) and (41) into (39) formally, the constraint-operational space dynamics can be expressed as
(
)
(
)
(
1)
1 1 − − −=
−
=
−
+
+
T cJ
JA
Λ
f
f
q
J
g
b
JA
Λ
η
Λ
&&
&
&
(42) The dynamical coupling are present in all three terms the inertia matrix Λand coupling forces
μ
( ) ( )
q,
q
&
,
ν
q
while constraint and tasks associated forces are decoupled. Here we would like to establish first dynamical decoupling at least for the acceleration induced forces and then apply sliding mode control. In order to find decoupling conditions let us first analyze constraint-operational space control distribution matrix⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎣
⎡
=
− − − − − − − − − − T T T T T T T T T 2 1 2 1 1 2 1 2 2 1 1 1 1 1 1 1 2 1 1 1 1 1J
A
J
J
A
J
Φ
A
J
J
A
J
J
A
J
Φ
A
J
J
ΦA
J
ΦA
Φ
ΦA
Λ
(43)Matrix Λ−1 shows the dynamical coupling of the acceleration terms. In order to have dynamically decoupled acceleration terms the extra-diagonal elements
Λ
ij(
i
≠
j
)
of control distribution matrix must be zero. That gives a set of matrix equations to be solved. If the following requirements are met then (43) will be reduced into block diagonal form
y x y c x c m m T m m T m m T × − × − × −
=
=
=
0
J
A
J
0
J
ΦA
0
J
ΦA
2 1 1 2 1 1 1 (44)These conditions will ensure the constraints and tasks dynamical decoupling. Recalling the structure of weighted pseudoinverse
J
#=
A
−1J
T(
JA
−1J
T)
−1 and its orthogonalcomplement
Γ
=
I
−
J
#J
we can verify that conditions (44) are met by selecting either J1 and J2 proportional to
orthogonal complement of the constraint Jacobian
Φ
. Under assumption that taskx
( )
q
has priority then matrix1
J
associate to this task should be selected asn m x Φ
∈
ℜ
x×= Γ
J
J
1 . Then c x m m T × −J
= 0
ΦA
1 1 is true. The equationsJ
A
−1Φ
T=
0
2 andJ
A
−J
=
0
T 1 1 2 lead tothe selection of matrix
J
2 asn m J m m T n m mc m T y x y y y × × − × Φ × −
ℜ
∈
=
⇒
=
ℜ
∈
=
⇒
=
1 y 2 1 1 2 y 2 1 2Γ
J
J
0
J
A
J
Γ
J
J
0
Φ
A
J
(45) Structure of matrixJ
2can be derived by combining these two solutions. This leads to(
1)
# 1 # 2J
I
Φ
Φ
J
J
J
=
y−
−
(46)More general solution for task hierarchy can be found in [7]. The transformation from configuration space into the constraint and operational spaces can be determined by premultiplying the configuration space equations of motion by ΦA−1, 1
1A−
J and 1
2A−
J respectively and recalling
y T x T T
f
J
f
J
f
Φ
τ
=
Φ+
1+
2 to obtain( )
( )
( )
( )
( )
y( )
y yc y y xc x x x x cf
f
q
ν
q
q,
μ
y
Λ
f
f
q
ν
q
q,
μ
x
Λ
f
f
q
ν
q
q,
μ
Λ
−
=
+
+
−
=
+
+
−
=
+
+
Φ Φ Φ Φ Φ&
&&
&
&&
&
&&
φ
(47) Here(
−1)
−1 Φ=
ΦA
Φ
TΛ
stands for the inertia matrix inthe constraint direction,
(
1)
11 1 − −
=
T xJ
A
J
Λ
and(
)
1 2 1 2 − −=
T yJ
A
J
Λ
stand for the inertia matrices in theoperational spaces; the
μ
i( )
q,
q
&
+
ν
i( )
q
,
i
=
Φ
,
x
,
y
stand for the projections of the configuration space disturbance( ) ( )
q,
q
g
q
b
&
+
and the velocity induced forces. They x
f
f
f
Φ,
,
stand for the control forces in the corresponding operational spaces.Having dynamics of the system decomposed as in (47) the application of the SMC method leads to the selection of the constraint control as in (33) and the task control as in (27) thus having
( )
( )
( )
y y y y eq y y x x x x eq x x eqσ
Ψ
Λ
f
f
σ
Ψ
Λ
f
f
σ
Ψ
Λ
f
f
ρ
ρ
ρ
φ φ φ φ φ φ−
=
−
=
−
=
(48)With sliding mode manifolds
ref y y y y y ref x x x x x ref
y
y
e
e
e
C
σ
x
x
e
e
e
C
σ
e
e
e
C
σ
−
=
+
=
−
=
+
=
−
=
+
=
;
;
;
&
&
φ
φ
φ φ φ φ φ (49)The result shows that the subsequent tasks in the hierarchy are executed in the orthogonal complement space of the preceding task. The closed loop dynamics in sliding mode reduces to
σ
φ=
0
,
σ
x=
0
,
σ
y=
0
[8].5.
Conclusions
The SMC control of the multi-body mechanical systems is discussed to some details. It has been shown that sliding mode methods can be directly applied for control in configuration and operational space. Moreover it has been shown that equations of motion of the constrained systems and task redundant systems can be found using equivalent control method. The dynamical decoupling of the constraints and tasks are obtained using general inverse which have the same structure as the sliding mode projection matrix.
6.
Acknowledgement
The work on this research is in part supported by TUBITAK project 108M520.
REFERENCES
[1] Utkin, V.I., Sliding Modes in Control Optimization, Springer-Verlag, 1992
[2] Slotine, J.J.E., Sliding Control Design for nonlinear systems,
International Journal of Control, No. 40, 421-434, 1984
[3] V. Utkin, J. Guldner and J. Shi, Sliding Mode Control in
Electromechanical Systems, Taylor&Francis, 1999
[4] Siciliano, Bruno; Khatib, Oussama (Eds.), 2008, Springer Handbook of Robotics, Hardcover ISBN: 978-3-540-23957-4 [5] Arnold, V.I., Mathematical Methods of Classical Mechanics,
2nd edn., Springer-Verlag, New York, 1989
[6] Ohnishi, K.; Shibata, M.; Murakami, T., 1996, Motion control for advanced mechatronics, Mechatronics, IEEE/ASME Transactions on, vol.1, no.1, pp.56-67
[7] O. Khatib, L. Sentis, J. Park and J. Warren, 2004, Whole-Body Dynamics Behavior and Control of Humal-Like Robots, International Journal of Humanoid Robotics Vol. 1, No. 1 (2004) 29–43
[8] A. Šabanović,, M. Elitaş, and K. Ohnishi, :Sliding Modes in Constrained Systems Control, IEEE Transaction on Industrial Electronics Vol 55, No.9, September 2008