A Sliding Mode Control for Robot Manipulator

27
A Sliding Mode Control for Robot Manipulator Auralius Manurung RIS-Lab May, 2010

description

Sliding mode control for 2-link robot manipulator.Simulation was performed using Matlab with Simulink and Simmechanics.This documents contain many images. In order to view them clearly, you may need to download it.

Transcript of A Sliding Mode Control for Robot Manipulator

Page 1: A Sliding Mode Control for Robot Manipulator

A Sliding Mode Control for Robot Manipulator

Auralius Manurung

RIS-Lab

May, 2010

Page 2: A Sliding Mode Control for Robot Manipulator

Introduction

• At certain condition, precise modeling is not possible.

• Unmodeled external forces, frictions, etc may effect the stability.

• Robust and adaptive control can deal with modeling inaccuracies and suitable for nonlinear systems.

• Sliding mode control is a simple approach for robust control technique.

Page 3: A Sliding Mode Control for Robot Manipulator

SMC Derivation

• A system with dynamics f and we are giving control input u.

• Considering our system is a 2nd order system:

• For position and velocity control, we define sliding surface s as:

)(),()()( tutxftx n

xxxdt

ds ~~~

ufx

Page 4: A Sliding Mode Control for Robot Manipulator

• Setting and substituting :

• Since our dynamic model f is just an approximation, approximated control law that would achieve can be expressed as:

0s

xxfu

xxuf

xxx

s

d

d

d

~

0~

0~

0

ufx

xxfu d ~ˆˆ

0s

Page 5: A Sliding Mode Control for Robot Manipulator

• Graphical interpretation where system is pushed to slide in sliding surface with slope .

xx

0s

Slope =

Page 6: A Sliding Mode Control for Robot Manipulator

Switching Action

• Introducing switching action that will maintain system work in sliding surface:

• Overall control law can be expressed as:

0,1

0,0

0,1

)(

)(

s

s

s

ssign

ssignKusw

)(~ˆˆ ssignKxxfuuu dsw

Low frequency Control

High frequency Control

Page 7: A Sliding Mode Control for Robot Manipulator

• Chattering as a result of control switching

xx

0s

Slope =

Page 8: A Sliding Mode Control for Robot Manipulator

Smoothing

• Smoothing out discontinuities by introducing boundary layer thickness:

1,1

1,0

0,1

)(

)(

s

s

s

ssat

ssatKusw

x

x

0s

Slope =

Boundary layer

φ

Page 9: A Sliding Mode Control for Robot Manipulator

Simulation Example

• Two-link robot manipulator model:

• Lagrange-Euler dynamic model:

)(),()( GFM rr

Page 10: A Sliding Mode Control for Robot Manipulator

• Dynamic equation:

M11 = (m1 + m2) * r1^2 + m2 * r2^2 + 2 * m2 * r1 * r2 * cos(θ2);

M12 = m2 * r2 ^2 + m2 * r1 * r2 * cos(θ2);

M22 = m2 * r2 ^2;

F12 = m2 * r1 * r2 * sin(θ2);

g1 = (m1 + m2) * r1 * cos(theta2) + m2 * r2 * cos(θ1 + θ2);

g2 = m2 * r2 * cos(θ1 + θ2);

2

1

2

1

2

1

112

2112212

2

1

2212

1211

0

)(

u

u

gG

gG

F

FF

MM

MM

Page 11: A Sliding Mode Control for Robot Manipulator

Experiment 1: No Boundary Layer

• Input trajectory for each joint (i): θi(t) = -90+52.5(1-cos(1.26t)) • Initial condition: θ1(0) = -80 deg, θ2(0) = -70 deg • m1=0.5kg, m2 = 0.5kg • r1 = 1.0m, r2 = 0.8m • Ts = 1kHz, fixed-step, ode5 • Joint 1: K = 16, λ = 4, ø = 0; • Joint 2: K = 10, λ = 4, ø = 0;

Page 12: A Sliding Mode Control for Robot Manipulator
Page 13: A Sliding Mode Control for Robot Manipulator

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.18

-0.16

-0.14

-0.12

-0.1

-0.08

-0.06

-0.04

-0.02

0

0.02Tracking error of joint-1

Time (Seconds)

Tra

ckin

g e

rror

(rad)

Page 14: A Sliding Mode Control for Robot Manipulator

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.35

-0.3

-0.25

-0.2

-0.15

-0.1

-0.05

0

0.05Tracking error of joint-2

Time (Seconds)

Tra

ckin

g e

rror

(rad)

Page 15: A Sliding Mode Control for Robot Manipulator

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-30

-20

-10

0

10

20

30

40Torque at joint-1

Time (Seconds)

Torq

ue (

Nm

)

Chattering

Page 16: A Sliding Mode Control for Robot Manipulator

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-15

-10

-5

0

5

10

15

20Torque at joint-2

Time (Seconds)

Torq

ue (

Nm

)

Switching

Page 17: A Sliding Mode Control for Robot Manipulator

-0.18 -0.16 -0.14 -0.12 -0.1 -0.08 -0.06 -0.04 -0.02 0 0.02-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6Phase potrait of joint-1

e(t)

d(e

(t))

/dt

Switching

Page 18: A Sliding Mode Control for Robot Manipulator

-0.35 -0.3 -0.25 -0.2 -0.15 -0.1 -0.05 0 0.05-0.2

0

0.2

0.4

0.6

0.8

1

1.2Phase potrait of joint-2

e(t)

d(e

(t))

/dt

Switching

Page 19: A Sliding Mode Control for Robot Manipulator

Experiment 2: Introducing Boundary Layer

• Joint 1: K = 16, λ = 4, ø = 0.01;

• Joint 2: K = 10, λ = 4, ø = 0.01;

High frequency switching at joint torque does no longer exist (see next figures).

Page 20: A Sliding Mode Control for Robot Manipulator

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-25

-20

-15

-10

-5

0

5

10

15

20Torque at joint-1

Time (Seconds)

Torq

ue (

Nm

)

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-15

-10

-5

0

5

10Torque at joint-2

Time (Seconds)

Torq

ue (

Nm

)

Page 21: A Sliding Mode Control for Robot Manipulator

-0.35 -0.3 -0.25 -0.2 -0.15 -0.1 -0.05 0 0.05-0.2

0

0.2

0.4

0.6

0.8

1

1.2Phase potrait of joint-2

e(t)

d(e

(t))

/dt

-0.35 -0.3 -0.25 -0.2 -0.15 -0.1 -0.05 0 0.05-0.2

0

0.2

0.4

0.6

0.8

1

1.2Phase potrait of joint-2

e(t)

d(e

(t))

/dt

Chattering reduced

Chattering reduced

Page 22: A Sliding Mode Control for Robot Manipulator

Experiment III: Robustness Test

• Joint 1: K = 8, λ = 5, ø = 0.01;

• Joint 2: K = 8, λ = 5, ø = 0.01;

• m1=0.5kg, m2 = 1.0kg

• We added extra mass 0.5 kg to joint 2.

• Switching re-appears to maintain the trajectory in the sliding surface.

• It is possible to do tracking with more load by reducing the boundary layer to allow more switching to occur.

Page 23: A Sliding Mode Control for Robot Manipulator

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.35

-0.3

-0.25

-0.2

-0.15

-0.1

-0.05

0

0.05Tracking error of joint-2

Time (Seconds)

Tra

ckin

g e

rror

(rad)

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.18

-0.16

-0.14

-0.12

-0.1

-0.08

-0.06

-0.04

-0.02

0

0.02Tracking error of joint-1

Time (Seconds)

Tra

ckin

g e

rror

(rad)

Page 24: A Sliding Mode Control for Robot Manipulator

-0.18 -0.16 -0.14 -0.12 -0.1 -0.08 -0.06 -0.04 -0.02 0 0.02-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6Phase potrait of joint-1

e(t)

d(e

(t))

/dt

-0.35 -0.3 -0.25 -0.2 -0.15 -0.1 -0.05 0 0.05-0.2

0

0.2

0.4

0.6

0.8

1

1.2Phase potrait of joint-2

e(t)

d(e

(t))

/dt

Page 25: A Sliding Mode Control for Robot Manipulator

Conclusions

• Sliding mode control shows good performances for nonlinear system with parameter uncertainties and unmodeled disturbances.

• SMC is good control method for practical problems.

Page 26: A Sliding Mode Control for Robot Manipulator

References

• C. Su, T. Leung, A Sliding Mode Control with Bound Estimation for Robot Manipulators, IEEE Trans. On. Robotics and Automation, vol. 9, pp. 208-213, 1993

• J.E. Slotline, W. Li, Appled Nonlinear Control, Prentice Hall

• S. Tokat, I. Eksin, M. Guzelkaya, M. T. Soylemez, Design of A Sliding Mode Controller with A Nonlinear Time-varying Sliding Surface, SAGE Trans. of The Institute Measurement and Control, vol. 25, pp. 145-162, 2003

• C. Edwards, S. Spurgeon, Sliding Mode Control Theory and Applications, Taylor & Francis