Chapter 3

PID Control in Task Space

Abstract

Task space (or Cartesian space) is defined by the position and orientation of the end-effector of a robot. Joint space is defined by a vector whose components are the translational and angular displacements of each joint of a robotic link. In this chapter, linear PID in the task-space is proposed. The sufficient conditions for asymptotic stability are simple and explicit. The linear PID gains can be selected with these conditions directly. When the measurement of velocities it is not available, a velocity observer (position filter) is applied. The local asymptotic stability of the linear PID control with an observer is proven. The analysis provides explicit conditions for choosing the linear PID gains and the parameters of the velocity observer. We use a 4-DoF (degree-of-freedom) upper limb exoskeleton to verify our PID tuning conditions. The experimental results show that the proposed methodology provides an analytical tool for the robot controller design in the task space.

Keywords

Task space; Linear PID; Semiglobally asymptotic stability

3.1 Linear PID control in task space

The dynamics of the robot are derived from Euler–Lagrange equation as

M ( q ) q ¨ + C ( q , q ˙ ) q ˙ + g ( q ) = u

Image (3.1)

where qRnImage represents the joint positions. M(q)=KT+KRImage is the inertia matrix, C(q,q˙)={ckj}Image represents centrifugal force, ckj=i=1ncijkq˙iImage, k,j=1nImage, cijkImage is Christoffel symbols [131], and g(q)Image is the vector of gravity torques.

When the robot's end-effector contacts the environment, or a desired path for the end-effector is specified in task space such as visual space or Cartesian space, a task space coordinate system defined with reference to the environment is convenient for the study of contact motion.

We consider a nonredundant robot. The dimension of the task space is equal to the dimension of the joint space. Let xRnImage be a task-space vector defined by

x = h ( q ) , x ˙ = J q ˙

Image

where h()RnRnImage is the forward kinematics of the robot, which is a nonlinear transformation describing the relation between the joint and task space; x in the task-space is assumed that the robot manipulator is operating in a finite work space such that the Jacobian matrix J is of full rank.

Since x¨=Jq¨+J˙q˙Image the relations between the dynamic models of the task space and the joint space are [75]

M x x ¨ + C x x ˙ + g x = u x

Image (3.2)

where

M x = J T M J 1 C x = J T [ C M J 1 J ˙ ] J 1 g x = g ¯ x = J T g u x = J T u

Image (3.3)

MxImage, CxImage, and gxImage depend on q and q˙Image.

q and q˙Image can be computed from inverse kinematic and q˙=J1x˙Image. So MxImage, CxImage, and gxImage can be regarded as a function of x and x˙Image. The PID attendance control will not use MxImage and CxImage, only the following properties will be used to prove stability.

P3.1. The inertia matrix M(x)Image is symmetric positive definite, and

0 < λ m { M x ( x ) } M x λ M { M x ( x ) } β , β > 0

Image (3.4)

where λM{M}Image and λm{M}Image are the maximum and minimum eigenvalues of the matrix A.

P3.2. For the centrifugal and Coriolis matrix C(q,q˙)Image, there exists a number kc>0Image such that

C x ( x , x ˙ ) x ˙ k c x ˙ 2 , k c > 0

Image (3.5)

and M˙x2CxImage are skew symmetric, i.e.,

x T [ M ˙ x ( x ) 2 C x ( x , x ˙ ) ] x = 0

Image (3.6)

also

M ˙ x ( x ) = C x ( x , x ˙ ) + C x ( x , x ˙ ) T

Image (3.7)

P3.3. The gravitational torques vector g(q)Image and gx(x)Image is Lipschitz:

g x ( x ) g x ( y ) k g x y

Image (3.8)

The proof of the above properties is similar with the joint space case [85].

We design a linear stable PID control in task space to regulate the exoskeleton to the desired position. We define the regulation error as

x ˜ = x d x

Image

where xdImage is the desired position and orientation of the end-effector.

The objective of position control in task space is x˜0Image and x˜0Image when initial conditions are in arbitrary large domain of attraction. A linear PID control in task space law is

u x = K p x ˜ + K i 0 t x ˜ ( τ ) d τ + K d x ˜

Image (3.9)

where KpImage, KiImage, and KdImage are proportional, integral, and derivative gains. x=h(q)Image, x˙=Jq˙Image. By (3.3) the final control torque applied on each joint is

u = J T u x

Image (3.10)

Here, the Jacobian matrix J is known. We do not discuss the case of an uncertain Jacobian matrix [27].

Remark 3.1

Compared with the other task-space PID control, (3.9) has exactly the same form as the classical linear PID control of robot manipulators. In order to prove the stability, in [128] the PID is modified as

u x = K p x ˜ + K i 0 t y ( τ ) d τ + K d x ˜

Image (3.11)

where the integral term is changed as y=q˙+αx˜Image. In [27] the linear PID control is modified as

u x = K p s ( x ˜ ) + K i 0 t y ( τ ) d τ + K d x ˜

Image (3.12)

where y(τ)=q˙+αs(x˜)Image, the position error x˜Image is filter by a scalar potential function s()Image. In [40], s()Image is a saturation function.

We only discuss the regulation case, i.e., x˙d=0Image, x˜=x˙Image. The PID control law can be expressed via the following equations:

u x = K p x ˜ K d x ˙ + f + ξ ξ ˙ = K i x ˜ , ξ ( 0 ) = ξ 0

Image (3.13)

We require that the linear control (3.13) is decoupled, i.e., Kp,KiImage, and KdImage are positive definite diagonal matrices. The closed-loop system of the robot (3.2) is

M x x ¨ + C x x ˙ + g x ( x ) = K p x ˜ K d x ˙ + ξ ξ ˙ = K i x ˜

Image

In matrix form, it is

d d t [ ξ x ˜ x ˜ ] = [ K i x ˜ x ˙ M x 1 ( C x x ˙ + g x K p x ˜ + K d x ˙ ξ ) ]

Image (3.14)

The equilibrium of (3.14) is [ξ,x˜,x˜]=[ξ,0,0]Image. Since at the equilibrium point, x=xdImage, the equilibrium is [gx(xd),0,0]Image. In order to move the equilibrium to origin, we define

ξ ˜ = ξ g x ( x d )

Image

The closed-loop equation becomes

M x x ¨ + C x x ˙ + g x ( x ) = K p x ˜ K d x ˙ + ξ ˜ + g x ( x d ) ξ ˜ = K i x ˜

Image (3.15)

Theorem 3.1

Consider the robot dynamic (3.2) controlled by the linear PID controller (3.13), the closed-loop system (3.15) is semiglobally asymptotically stable at the equilibrium [ξg(xd),x˜,x˜]T=0Image, provided that control gains satisfy

λ m ( K p ) 3 2 k g λ M ( K i ) β λ m ( K p ) λ M ( M x ) λ m ( K d ) β + λ M ( M x )

Image (3.16)

where β=λm(Mx)λm(Kp)3Image, kgImage satisfies (3.8).

Proof

We construct a Lyapunov function as

V = 1 2 x ˙ T M x x ˙ + 1 2 x ˜ T K p x ˜ + U x ( x ) k u + x ˜ T g x ( x d ) + 3 2 g x ( x d ) T K p 1 g x ( x d ) + α 2 ξ ˜ T K i 1 ξ ˜ + x ˜ T ξ ˜ α x ˜ T M x ˙ + α 2 x ˜ T K d x ˜

Image (3.17)

where ku=minx{Ux(x)}Image, Ux(x)=0tgx(x)Image, kuImage is added such that V(0)=0Image. α is a design positive constant.

1) We first prove that V is a Lyapunov function, V0Image. The term 12x˜TKpx˜Image is separated into three parts, and V=i=14ViImage:

V 1 = 1 6 x ˜ T K p x ˜ + x ˜ T g x ( x d ) + 3 2 g x ( x d ) T K p 1 g x ( x d ) V 2 = 1 6 x ˜ T K p x ˜ + x ˜ T ξ ˜ + α 2 ξ ˜ T K i 1 ξ ˜ V 3 = 1 6 x ˜ T K p x ˜ α x ˜ T M x x ˙ + 1 2 x ˙ T M x x ˙ V 4 = U x ( x ) k u + α 2 x ˜ T K d x ˜

Image (3.18)

By ku=minx{Ux(x)}Image, V40Image. It is easy to find

V 1 = 1 2 [ x ˜ g x ( x d ) ] T [ 1 3 K p I I 3 K p 1 ] [ x ˜ g x ( x d ) ] 0

Image

When α3λm(Ki1)λm(Kp)Image,

V 2 1 2 1 6 λ m ( K p ) x ˜ 2 x ˜ ξ ˜ + α λ m ( K i 1 ) 2 ξ ˜ 2 = 1 2 ( 1 3 λ m ( K p ) x ˜ 3 λ m ( K p ) ξ ˜ ) 2 0

Image

Because

y T A x y A x y A x | λ M ( A ) | y x

Image (3.19)

when α13λm(Mx)λm(Kp)λM(Mx)Image,

V 3 1 2 [ λ m ( M x ) x ˙ 2 2 α λ M ( M x ) x ˜ x ˙ + 1 3 λ m ( K p ) x ˜ 2 ] = 1 2 ( λ m ( M x ) x ˙ 1 3 λ m ( K p ) x ˜ ) 2 0

Image

Obviously, if

1 3 λ m ( K i 1 ) λ m 3 2 ( K p ) λ m 1 2 ( M ) λ M ( M )

Image (3.20)

there exists

1 3 λ m ( M x ) λ m ( K p ) λ M ( M x ) α 3 λ m ( K i 1 ) λ m ( K p )

Image (3.21)

This means if KpImage is sufficiently large or KiImage is sufficiently small, (3.20) is established, and V(x˙,x˜,ξ˜)Image is globally positive definite.

2) We now prove V˙0Image. Using ddtU(x)=x˙Tgx(x)Image, ddtgx(xd)=0Image and ddt[x˜Tg(xd)]=(ddtx˜)Tgx(xd)Image, the derivative of V is

V ˙ = x ˙ T M x x ¨ + 1 2 x ˙ T M x x ˙ + x ˜ T K p x ˜ + g x ( x ) T x ˙ + x ˜ T g x ( x d ) + α ξ ˜ T K i 1 ξ ˜ + x ˜ T ξ ˜ + x ˜ T ξ ˜ α ( x ˜ T M x ˙ + x ˜ T M x ˙ + x ˜ T M x ¨ ) + α x ˜ T K d x ˜

Image (3.22)

Using (3.6), the first three terms of (3.22) become

x T g x ( x ) x ˙ T K d x ˙ + x ˙ T ξ ˜ + x ˙ T g x ( x d )

Image

Because (ddtx˜)Tgx(xd)=xTgx(xd)Image, and ξ˜=Kix˜Image, the first eight terms of (3.22) are

x T K d x + α x ˜ T ξ ˜ + x ˜ T K i x ˜

Image (3.23)

Now we discuss the last two terms of (3.22). From (3.7), we have

x ˜ T M x x ˙ = x ˜ T C x x ˙ + x ˜ T C x T x ˙

Image

From (3.15),

x ˜ T M x x ¨ = x ˜ T C x x ˙ x ˜ T g x ( x ) + x ˜ T K p x ˜ x ˜ T K d x ˙ + x ˜ T ξ ˜ + x ˜ T g x ( x d )

Image

Since (ddtx˜)TMxq˙=x˙TMxx˙Image, using (3.5) and (3.8) the last two terms of (3.22) are

α { x ˜ T K p x ˜ x ˙ T M x x ˙ + x ˜ T C x T x ˙ + x ˜ T [ g ( x d ) g ( x ) ] + x ˜ T ξ ˜ x ˜ T K d x ˙ } + α x ˜ T K d x ˜ α x ˙ T M x x ˙ α x ˜ T K p x ˜ + α k c x ˜ x ˙ 2 + α k g x ˜ 2 α x ˜ T K e x ˜ α x ˜ T ξ ˜

Image (3.24)

From (3.23) and (3.24),

V ˙ x ˙ T ( K d α M x α k c x ˜ ) x ˙ x ˜ T ( α ( K p + K e ) K i α k g ) x ˜ [ λ m ( K d ) α λ M ( M x ) α k c x ˜ ] x ˙ 2 [ α λ m ( K p ) λ M ( K i ) α k g ] x ˜ 2

Image

If

x ˜ λ M ( M x ) α k c

Image (3.25)

and

λ m ( K d ) ( 1 + α ) λ M ( M x ) λ m ( K p ) 1 α λ M ( K i ) + k g

Image (3.26)

then V˙0Image, x˜Image decreases. From (3.21), if

λ m ( K d ) λ M ( M x ) + 1 3 λ m ( M x ) λ m ( K p ) λ m ( K p ) 1 3 λ m ( K i 1 ) λ m ( K p ) λ M ( K i ) + k g

Image (3.27)

then (3.26) is established. Using (3.20) and λm(Ki1)=1λM(Ki)Image, (3.27) is (3.16). V˙Image is negative semidefinite.

3) Finally, we prove semiglobally asymptotic stability. Define a ball Σ of radius σ>0Image centered at the origin of the state space, which satisfies these conditions:

Σ = { x ˜ : x ˜ λ M ( M x ) α k c = σ }

Image

V˙Image is negative semidefinite on the ball Σ. There exists a ball Σ of radius σ>0Image centered at the origin of the state space on which V˙0Image. The origin of the closed-loop equation (3.15) is a stable equilibrium. Since the closed-loop equation is autonomous, we use LaSalle's theorem. Define Ω as

Ω = { X ( t ) = [ x ˜ , x ˙ , ξ ˜ ] R 3 n : V ˙ = 0 } = { ξ ˜ R n : x ˜ = 0 R n , x ˙ = 0 R n }

Image

From (3.22), V˙=0Image if and only if x˜=x˙=0Image. For a solution x(t)Image to belong to Ω for all t0Image, it is necessary and sufficient that x˜=x˙=0Image for all t0Image. Therefore it must also hold that x¨=0Image for all t0Image. We conclude that from the closed-loop system (3.15), if X(t)ΩImage for all t0Image, then

g x ( x ) = g x ( x d ) = ξ ˜ + g x ( x d ) ξ ˜ = 0

Image

implies that ξ˜=0Image for all t0Image. So x(t)=[x˜,x˙,ξ˜]=0R3nImage is the only initial condition in Ω for which X(t)ΩImage for all t0Image.

Finally, we conclude from all this that the origin of the closed-loop system (3.15) is locally asymptotically stable. Because 1αλm(Ki1)λm(Kp)Image, the upper bound for x˜Image can be

x ˜ λ M ( M x ) k c λ M ( K i ) λ m ( K p )

Image

It establishes the semiglobal stability of our controller, in the sense that the domain of attraction can be arbitrarily enlarged with a suitable choice of the gains. Namely, increasing KpImage the basin of attraction will grow. □

Remark 3.2

The tuning procedure of the parameters can be calculated from the conditions (3.16). It is more simple than the tuning procedures in [27,40,72,128]. PID controllers are not linear, and the conditions for the PID gains are not explicit. The upper or lower bounds of PID gains need the maximum eigenvalue of MxImage in (3.16), it can be estimated without calculating MxImage. For a robot with only revolute joints,

λ M ( M x ) β , β n ( max i , j | m i j | )

Image

where mijImage stands the ijth element of MxImage, MxRn×nImage. A β can be selected such that it is much bigger than all elements.

Remark 3.3

It is well known that without the gravity force gxImage in (3.2), PD control with any positive gains can drive the closed-loop system asymptotic stability. The main objective of the integral action can be regarded to cancel the gravity torque. In order to decrease integral gain, the estimated gravity is applied to the PID control (3.13). The PID control with an approximate gravity compensation gˆxImage is

u x = K p x ˜ K d x ˙ + g ˆ x + ξ ξ ˙ = K i x ˜ , ξ ( 0 ) = ξ 0

Image (3.28)

If we define

g ˜ x = g x g ˆ x U ˜ x = 0 T g ˜ x , U ˜ ( 0 ) = 0

Image

g˜xImage also satisfies Lipschitz condition (3.8)

g ˜ x ( a ) g ˜ x ( b ) k ˜ g x a b

Image

The new Lyapunov function in the above proof is

V = 1 2 x ˙ T M x x ˙ + 1 2 x ˜ T K p x ˜ + U ˜ x k ˜ u + x ˜ T g x ( x d ) + 3 2 g x ( x d ) T K p 1 g x ( x d ) + α 2 ξ ˜ T K i 1 ξ ˜ + x ˜ T ξ ˜ α x ˜ T M x ˙ + α 2 x ˜ T K d x ˜

Image

where k˜u=minq{U˜x}Image. The above theorem is also correct for the PID control with an approximate gravity compensation (3.28). The condition for PID gains (3.16) becomes

λ m ( K p ) 3 2 k ˜ g , λ M ( K i ) 3 β 2 k ˜ g λ M ( M )

Image

where k˜gkgImage, β=λm(M)λm(Kp)3Image.

In a redundant case, for example, qR7Image. Define x1R6Image to be the task space vector

x 1 = K ( q )

Image

where x1Image is the position and orientation of the end-effector in base coordinates. K()R7R6Image is the forward kinematics of the robot, which is a nonlinear transformation describing the relation between the joint and task space. The Cartesian velocity vector x˙=[uT,vT]TR6Image, uR3Image is the linear velocity, vR3Image is the angular velocity. Besides the original control task for the end-effector, the joint space of the 7-DoF exoskeleton are also subjected to some constraints, because the exoskeleton is fixed with a human arm. We define one constraint task as

x a = h ( q )

Image

where xaImage is a scalar. The augmented task space is defined as

x = [ x 1 x a ] R 7

Image

The derivative of x is given as

x ˙ = [ x ˙ 1 x ˙ a ] = [ K q h q ] = [ J 1 q ˙ h ˙ q ˙ ] = J q ˙

Image (3.29)

where J=[J1,h˙]TR7×7Image is the Jacobian matrix in the augmented task space. In order to design a control which is free of the definition of the augmented task space xaImage, we choose h˙Image as the null space of J1Image,

h ˙ T = [ I J 1 T ( J 1 J 1 T ) 1 J 1 ] b

Image (3.30)

where bR7Image is a small vector. It is assumed that the exoskeleton is operating in a finite work-space such that J is nonsingular. Since x¨=Jq¨+J˙q˙Image the relations between the dynamic models of the task space and the joint space are

M x x ¨ + C x x ˙ + g x = u x f

Image (3.31)

In the case of the DoF of the robot is less than 6, the demission of the Jacobian will be the same as (3.10).

3.2 Linear PID control with velocity observers

In contrast to the high precision of the position measurements by the optical encoders, the measurement of velocities by tachometers may be quite mediocre in accuracy, specifically for certain intervals of velocity. The common idea in the design of PID controllers, which requires velocity measurements, has been to propose state observers to estimate the velocity. In the PI2D [106], semiglobal asymptotic stability was proved with one additional filtered derivative action.

We will not use x˙=Jq˙Image to obtain x˙Image. A filter/observer will be used to calculate x˙Image from x=K(q)Image. We use a first-order and zero-relative position filter to estimate velocity [85]:

υ i ( s ) = b i s s + a i x i ( s ) , i = 1 n

Image (3.32)

where υi(s)Image is an estimation of x˙iImage, aiImage, and biImage are the elements of diagonal matrices A and B, A=diag{ai}Image, B=diag{bi}Image, ai>0Image, bi>0Image. The transfer function (3.32) can be realized by

{ z ˙ = A ( z + B x ) x ˙ ˜ = z + B x

Image

The linear PID control (3.13) becomes

u x = K p x ˜ K d v + f + ξ ξ ˙ = K i x ˜ , ξ ( 0 ) = ξ 0 z ˙ = A ( z + B x ) υ = z + B x

Image (3.33)

where Kp,KiImage, and KdImage are positive definite diagonal matrices; aiImage and biImage in (3.32) are positive constants.

The closed-loop system of the robot (3.1) is

d d t [ ξ υ q ˙ ] = [ K i x ˜ A υ + B x ˙ M x 1 ( C x x ˙ g x ( x ) + K p x ˜ K d υ + ξ ˜ + g x ( x d ) ) ]

Image (3.34)

The equilibrium of (3.34) is [ξ˜,υ,x˙]=[0,0,0]Image.

Theorem 3.2

Consider the robot dynamic (3.2) controlled by the linear PID controller (3.33). A and B satisfy

λ M ( A ) λ m 2 ( A ) λ m ( K d ) λ m ( B ) λ M ( B ) λ M ( B ) 1 4 λ m ( K d ) λ m ( M x ) λ M 2 ( M x ) λ m ( B α I ) 1 2 λ m ( A )

Image (3.35)

where α>0Image, the closed-loop system (3.34) is locally asymptotically stable at the equilibrium w=[ξgx(xd),x˜,x˜]T=0Image, in the domain of attraction:

x ˜ λ m ( M x ) α k c [ λ m ( B α I ) 1 2 λ m ( A ) ] + 1 α υ

Image (3.36)

provided that control gains satisfy

λ m ( K p ) 1 2 λ M ( K p ) 1 α [ λ M ( K i ) + λ M ( A 1 B K i ) + 1 + 2 α 2 k g + α 2 2 λ M ( K d ) + α 2 λ M ( A 1 K i ) λ m ( K d ) k g + 1 2 α λ M ( A 1 K i ) + 1 2 α λ M ( K p ) + κ ( M x ) λ M ( M x ) λ M ( A ) 2 λ m ( A B 1 I ) 1 λ M ( K i ) α 3 λ m ( K p )

Image (3.37)

where kgImage satisfies (3.8), κ(Mx)Image is the condition number of MxImage.

Proof

We construct a Lyapunov function as

V c = 1 2 x ˙ T M x x ˙ + 1 2 x ˜ T K p x ˜ + U ( x ) k u + x ˜ T g x ( x d ) + 3 2 g x ( x d ) T K p 1 g x ( x d ) + α 2 ξ ˜ T K i 1 ξ ˜ α x ˜ T M x x ˙ + x ˜ T ( I + A 1 B ) ξ ˜ + 1 2 υ T B 1 K d υ υ T M x x ˙ + υ T A 1 ξ ˜

Image (3.38)

where ku=minx{U(x)}Image, U(x)Image is defined in (3.3), kuImage is added such that V(0)=0Image. α is a design positive constant.

1) We first prove that V0Image. The term 12x˜TKpx˜Image is separated into three parts, and Vc=i=16ViImage:

V 1 = 1 6 x ˜ T K p x ˜ + x ˜ T g x ( x d ) + 3 2 g x ( x d ) T K p 1 g x ( x d ) V 2 = 1 6 x ˜ T K p x ˜ + x ˜ T ξ ˜ + α 2 ξ ˜ T K i 1 ξ ˜ V 3 = 1 6 x ˜ T K p x ˜ α x ˜ T M x x ˙ + 1 4 x ˙ T M x x ˙ V 4 = 1 4 υ T ( B 1 K d ) υ + υ T A 1 ξ ˜ + ξ ˜ T ( A 1 B ) ξ ˜ V 5 = 1 4 υ T ( B 1 K d ) υ υ T M x x ˙ + 1 4 x ˙ T M x x ˙ V 6 = U ( x ) k u 0

Image

Here V1Image and V2Image are the same as (3.18), i.e.

λ M ( K i ) α 3 λ M ( K p )

Image (3.39)

For V3Image, if α16λM(Kp)λM(Mx)λM(Mx)Image

V 3 1 2 ( 1 2 λ M ( M x ) x ˙ 1 3 λ M ( K p ) x ˜ ) 2 0

Image

Because λM(AB)λM(B1)λM(A)Image and λM(B1)=1λM(B)Image, it is easy to find that,

if λM(A1)λM(B1Kd)λM((A1B))Image or λM(A)λM(A)λM(Kd)λM(B)λM(B)Image

V 4 1 2 ( 1 2 λ M ( B 1 K d ) υ 2 2 λ M ( A 1 ) υ ξ ˜ + 2 λ M ( ( A 1 B ) ) ξ ˜ 2 ) 0

Image

If λM(Mx)12λM((B1Kd))λM(Mx)Image or λM(B)14λM(Kd)λM(Mx)λM(Mx)Image,

V 5 = 1 2 [ 1 2 υ T K d B 1 υ + 2 υ T M x x ˙ + 1 2 x ˙ T M x x ˙ ] 0

Image

Because V60Image, obviously there exist α, A, and B such that

α 2 1 6 λ M ( K p ) λ M ( M x ) λ M 2 ( M ) λ M ( A ) λ M 2 ( A ) λ M ( K d ) λ M ( B ) λ M ( B ) λ M ( B ) 1 4 λ M ( K d ) λ M ( M x ) λ M 2 ( M x )

Image (3.40)

This means if KpImage is sufficiently large or KiImage is sufficiently small, (3.20) is established, and Vc(x˙,x˜,ξ˜)Image is globally positive definite.

2) Now we compute the derivative of VcImage:

V ˙ c = x ˙ T M x x + 1 2 x ˙ T M x x ˙ + x ˜ T K p x ˜ + g x ( x ) T x ˙ + x ˜ T g x ( x d ) + α ξ ˜ T K i 1 ξ ˜ α ( x ˜ T M x x ˙ + x ˜ T M x x ˙ + x ˜ T M x x ) + x ˜ T ( I + A 1 B ) ξ ˜ + x ˜ T ( I + A 1 B ) ξ ˜ + υ ˙ T ( B 1 K d ) υ υ ˙ T M x x ˙ + υ T M x x ˙ + υ T M x x + υ ˙ T A 1 ξ ˜ + υ T A 1 ξ ˜

Image (3.41)

Using (3.34) and (3.6), the first six terms of (3.41) become

x ˙ T K d υ + x ˙ T ξ ˜ + α x ˜ T ξ ˜

Image (3.42)

The 7th term of (3.41) is

α { x ˜ T K p x ˜ x ˙ T M x x ˙ + x ˜ T C T x ˙ + x ˜ T [ g x ( x d ) g x ( x ) ] + x ˜ T ξ ˜ x ˜ T K d υ } α x ˜ T K p x ˜ + α k g x x ˜ 2 + α x ˙ T M x x ˙ + α x ˜ T C T x ˙ α x ˜ T ξ ˜ + α x ˜ T K d υ

Image (3.43)

Using υ˙=Aυ+Bx˙Image, and x˜=x˙Image, the terms of 8th–10th of (3.41) are

x ˙ T ξ ˜ + x ˜ T K i x ˜ + x ˙ T A 1 B ξ ˜ + x ˜ T A 1 B K i x ˜ + x ˙ T K d υ υ T A B 1 K d υ

Image (3.44)

The 11th term of (3.41) is

υ T A M x x ˙ x ˙ T B M x x ˙ υ T C x ˙ υ T C T x ˙ + υ T C T x ˙ υ T K p x ˜ + υ T K d υ υ T ξ ˜ υ T [ g x ( x d ) g x ( x ) ]

Image (3.45)

Using (3.5),

α x ˜ T C T x ˙ υ T C x ˙ k c α x ˜ υ x ˙ 2

Image

Using ξ˜=Kix˜Image and υ˙=Aυ+Bx˙Image, the last two terms of (3.41) are

υ T ξ ˜ x ˙ T A 1 B ξ ˜ υ T A 1 K i x ˜

Image (3.46)

Combine (3.42), (3.43), (3.44), (3.45), and (3.46)

V ˙ x ˙ T B M x x ˙ υ T A B 1 K d υ α x ˜ T K p x ˜ + α k g x x ˜ 2 + α x ˙ T M x x ˙ + k c α x ˜ υ x ˙ 2 + x ˜ T K i x ˜ + x ˜ T A 1 B K i x ˜ + υ T K d υ + 1 2 k g x υ 2 + 1 2 k g x x ˜ 2 + x ˜ T ( α K d K p A 1 K i ) υ + x ˙ T A M x υ

Image (3.47)

Using (3.19), (3.47) is

V ˙ x ˙ T { λ M ( B M x α M x ) k c α x ˜ υ 1 2 κ ( M x ) λ M ( A M x ) } x ˙ υ T [ λ M ( A B 1 K d K d ) 1 2 k g x 1 2 α λ M ( K e ) κ ( M x ) 2 λ M ( A M x ) ] υ α k g x 1 2 k g x x ˜ T [ λ M ( α K p K i A 1 B K i ) α 2 λ M ( K e ) ] x ˜

Image (3.48)

where Ke=αKdKpA1KiImage. In order to assure V˙0Image in (3.48), we need

λ M ( B M x α M x ) k c α x ˜ υ + 1 2 κ ( M x ) λ M ( A M x ) λ M ( A B 1 K d K d ) 1 2 k g x + 1 2 α λ M ( K e ) + κ ( M x ) 2 λ M ( A M x ) λ M ( α K p K i A 1 B K i ) 1 + 2 α 2 k g x + α 2 λ M ( K e )

Image (3.49)

Using λi(A)λM(B)λi(AB)λi(A)λM(B)Image, i can be “MxImage” or “MxImage,” and the last condition of (3.49) can be replaced by

x ˜ 1 α υ 1 α k c [ λ M ( B α I ) λ M ( M x ) 1 2 κ ( M x ) λ M ( M x ) λ M ( A ) ]

Image

It is the attraction area (3.36).

Using λi(A)+λM(B)λi(A+B)λi(A)+λM(B)Image, the second condition of (3.49) is

λ M [ ( A B 1 I ) K d ] λ M ( A B 1 I ) λ M ( K d ) 1 2 k g x + 1 2 α λ M ( K e ) + κ ( M x ) 2 λ M ( M x ) λ M ( A ) 1 2 k g x + 1 2 α λ M ( K e ) + κ ( M x ) 2 λ M ( A M x )

Image (3.50)

It is the condition for KdImage in (3.37).

The third condition of (3.49) is

λ M ( α K p ) λ M ( K i ) + λ M ( A 1 B K i ) + 1 + 2 α 2 k g x + α 2 λ M ( K e )

Image

It is the condition for KpImage in (3.37). The condition for KiImage in (3.37) is obtained from (3.39). The rest part of the proof is the same as Theorem 3.1. □

Remark 3.4

The conditions (3.35) and (3.37) decide how to choose the PID gains. The first condition of (3.37) is

λ m ( K p ) 1 α λ M ( K i ) + Ω Ω = 1 α [ λ M ( A 1 B K i ) + 1 + 2 α 2 k g + α 2 λ M ( K d ) + 1 2 λ M ( A 1 K i ) ] + 1 2 α λ M ( K p )

Image

the third condition of (3.37) is λm(Kp)3αλM(Ki)Image, and they are compatible. When KiImage is not big, these conditions can be established. The second condition of (3.37) and the third condition of (3.35) are not directly compatible. We first let α as small as possible, and KpImage as big as possible. So KiImage cannot be big. These requirements are reasonable for our real control. If we select B=βA+αIImage, form the third condition of (3.35), β12Image. The second condition of (3.37) requires λm(AB1I)>12Image. There exists 1>β12Image and a small α such that λm[A(βA+αI)1I]>12Image. After A and B are decided, we use the second condition of (3.37) to select KdImage.

3.3 Experimental results

We have constructed the heavy duty exoskeleton robot, CINVESRobot-1, shown in Fig. 3.1. It has a 4-DoF. The computer control platform for our upper limb exoskeleton is an Intel Pentium [email protected] GHz processor and 2GB RAM. The operation software are Windows XP with Matlab 7.2 + WinCon. The real-time control programs are the Real-Time Target.

Image
Figure 3.1 The heavy duty exoskeleton robot (CINVESRobot-1).

The running frequency of the CPU processor in each module is a 1.0 GHz processor. The communication rate of the CAN bus is set as 5K bps. We use 500 Hz as the sampling frequency as the control loop. So the sampling/control speed is much lower than the modules and their communication rate. In this way, each module has enough time to finish its job assigned by the upper PC, and send back the positions to the PC. The CAN bus does not have a separate clock signal for synchronization. When the bus is idle, the synchronization starts, and resynchronization occurs on every recessive to dominant transition during the frame. So all nodes on the CAN bus operate at the same bit rate with respect to noise, phase shifts, and oscillator drift.

The users left-hand is an enable button which released the brakes on the device and engaged the motor. We use three types modules for the four joints: PowerCube PR110Image, PR90Image, and PR70Image. The power supply for PR110Image is 48VDC, and for PR90Image and PR70Image are 24VDC. The normal torques are 142 Nm, 72 Nm, and 23 Nm. The weight of these modules are 5.6 kg, 3.4 kg, and 1.7 kg.

The first joint of the 4-DoF exoskeleton is mounted on the ground. It needs to hold all other joints. The dimension of the exoskeleton is about 1 m. The maximum load for Joint-1 is about 15 kg, i.e., it can other two PR90Image and five PR70Image modules. The second joint of this exoskeleton uses PR90Image module. The third and fourth joints use PR70Image module. The Joint-2 can be connected by the other five PR70Image modules. Joint-3 can hold 7.8 kg, if the dimensions of Joint-4, Joint-5, etc., are estimated as 0.3 m. So Joint-3 can be connected by another PR70Image modules.

We use the following task space controller to regulate the robot position x such that x can follow xdImage:

u = J T K p x ˜ + J T K i 0 t x ˜ ( τ ) d τ + J T K d x ˜

Image

where x˜=xdK(q)Image.

The two theorems in this chapter give sufficient conditions for the minimal values of proportional and derivative gains and maximal values of integral gains. We use the above parameters to estimate the upper and lower bounds of the eigenvalues of the inertia matrix M(q)Image, and kgImage in (3.8), i.e., λM(M)=3Image, λm(M)=1Image, kg=10Image. We choose α=4λM(Ki)λm(Kp)Image such that λM(Ki)α3λm(Kp)Image is satisfied. We select α=0.08Image; A is chosen as A=diag(30)Image, β=712Image, so B=diag(17.58)Image. The gains of the PID controller in task space are

K i = d i a g [ 5 , 4 , 5 , 6 ] K p = d i a g [ 320 , 280 , 210 , 250 ] K d = d i a g [ 410 , 400 , 420 , 430 ]

Image

Each control scheme moved to each target once in random order. Four repetitions were repeated for each subject. A total of 395 trails were recorded consisting of 118 trials for manual control, 134 trials for joint space control, and 143 trials for task space. Since the exact positions in task space are not available (in fact we do not have a visual system), we cannot compare the position regulation errors in the task space. We use the power exchange, defined by the product of the recorded force/torque and its respective velocity at each sensor, as an index to evaluate the task space control. The less power the controller used, the better the controller is.

Fig. 3.2 shows the average power exchange for manual control, joint space PID control and task space PID control after they have been normalized with respect to time.

Image
Figure 3.2 Average power exchange.

The energy exchange, which is between the exoskeleton and subject was calculated for each trial by integrating the power. Additionally, the negative and positive components of the energy were each computed separately. Table 3.1 shows the mean energy for all trials with its 95%Image confidence interval.

Table 3.1

Energy exchange

Manual Joint Space Task Space
Total 9.29 ± 1.11 19.55 ± 1.04 17.43 ± 1.01
Negative −6.92 ± 0.34 −0.25 ± 0.34 −0.098 ± 0.33
Positive 16.21 ± 1.10 19.81 ± 1.03 17.52 ± 0.99

Image

We can see that

1) the energy power exchange: manual control has a sharp drop with a negative power peaking about 58 WImage, followed by a steep increase to a positive power of around 65 WImage and finally has a decline to around 10 WImage. The sharp decrease is due to the device falling slightly after the breaks are disengaged. Joint and task space control have a similar rise and fall on the power curve but without the initial drop as the controllers prevented the exoskeleton from falling when the breaks were released. As the subject lowers the arm, gravity pulls it in the same direction as the motion creating a very low power.

2) Energy: the total energy for manual control is lowest for all the controllers. Because the task space PID control has almost no negative power, we would expect them to have a higher energy than the manual control.

The second experiment is to draw several “8.” In order to control the 4-DoF exoskeleton, we use three forces [Fx,Fy,Fz]Image and one torque TxImage as the input fdImage. The admittance control is to generate desired trajectories of the four joints from fdImage, and to move the end-effector of the exoskeleton robot from an initial position into a desired position. The PID admittance control in task space is

x ˙ d = B a f d + D a 0 t f d ( υ ) d v + M a f ˙ d

Image (3.51)

where BaImage, DaImage, and MaImage are human impedance parameters, which depend on each one's feelings. In this paper, we select

B p = d i a g [ 124 , 120 , 50 , 120 ] D a = d i a g [ 2 , 1 , 2 , 2 ] M a = d i a g [ 410 , 410 , 200 , 300 ]

Image (3.52)

Here, the forces [Fx,Fy,Fz]Image generate three-dimension trajectories [x,y,z]Image, while the torque TxImage gives the orientation of the end-effector; see Fig. 3.3.

Image
Figure 3.3 The orientation of the end-effector.

The trajectory of the end-effector in the tasks pace is shown in Fig. 3.4. Here, the trajectory in 3D space is calculated from forward kinematic of the exoskeleton, because we do not have effective 3D motion tracking system to show it.

Image
Figure 3.4 The trajectory of the end-effector.

We can see that the upper limb exoskeleton can be controlled by a force sensor, and move freely. It can draw an “8” within 6 seconds. The accuracy of the movement depends on the human model, i.e., the human has to transfer a 3D “8” into corresponding forces.

3.4 Conclusions

In this chapter, the classical linear PID is applied for the exoskeleton robot control in task space. We analyze classic linear PID control in the task space. The semiglobal and local asymptotic stability conditions are more simple than the others, and these conditions give an explicit method to decide the PID gains in the task space. The above new approaches are successfully applied to the CINVESTAV 4-DoF exoskeleton robot.

Bibliography

[27] C.C. Cheah, S. Kawamura, K. Lee, S. Arimoto, PID control of robotic manipulator with uncertain jacobian matrix, IEEE Int. Conf. Robot. Autom. 1999:494–499.

[40] R. Garrido, E. Canul, A. Soria, Task space robot control using an inner PD loop, IEEE Int. Conf. Robot. Autom. 2009;1268(1274).

[72] R. Kelly, V. Santibáñez, L. Perez, Control of Robot Manipulators in Joint Space. London: Springer-Verlag; 2005.

[75] O. Khatib, Inertial properties in robotic manipulation: an object-level framework, Int. J. Robot. Res. 1995;14(1):19–36.

[85] F.L. Lewis, K. Liu, A. Yesildirek, Neural net robot controller with guaranteed tracking performance, IEEE Trans. Neural Netw. 1995;6(3):703–715.

[106] R. Ortega, A. Loria, R. Kelly, A semiglobally stable output feedback PI2D regulator for robot manipulators, IEEE Trans. Autom. Control 1985;40(1):1432–1436.

[128] Y. Su, C. Zheng, A simple PID control for asymptotic visual regulation of robot manipulators, Int. J. Robust Nonlinear Control 2011;21:1525–1540.

[131] M.W. Spong, M. Vidyasagar, Robot Dynamics and Control. Canada: John Wiley & Sons Inc.; 1989.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.248.24