0% found this document useful (0 votes)
46 views

Robust Trajectory Control: Robotics 2

The document describes the design of a robust trajectory control system for robots with uncertain dynamics. It formulates the control problem, presents the closed-loop error equations, and describes the solution approach of adding an external robust control term based on bounds of the dynamic uncertainties. It then provides the design steps: 1) define the linear control law with robust term, 2) bound the nonlinear terms, 3) solve a Lyapunov equation, 4) define the discontinuous robust term. Stability of the closed-loop system is analyzed, and a smoother robust controller is presented to avoid chattering. A case study of a single-link robot is provided to illustrate the calculations.

Uploaded by

zhaodong.liang
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views

Robust Trajectory Control: Robotics 2

The document describes the design of a robust trajectory control system for robots with uncertain dynamics. It formulates the control problem, presents the closed-loop error equations, and describes the solution approach of adding an external robust control term based on bounds of the dynamic uncertainties. It then provides the design steps: 1) define the linear control law with robust term, 2) bound the nonlinear terms, 3) solve a Lyapunov equation, 4) define the discontinuous robust term. Stability of the closed-loop system is analyzed, and a smoother robust controller is presented to avoid chattering. A case study of a single-link robot is provided to illustrate the calculations.

Uploaded by

zhaodong.liang
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

Robotics 2

Robust Trajectory Control

Prof. Alessandro De Luca


Problem formulation
  given the real robot, modeled by

  assuming an estimated feedback linearization control

  we would like to design so as to obtain


  asymptotic stability of the closed-loop system
  the best possible trajectory tracking performance
  the linear feedback choice is not enough...

  questions:
  which should be the conditions on the estimates?
  can we guarantee stability/performance, based on known
bounds on the uncertainties?
Robotics 2 2
Closed-loop equations -1

  under uncertain conditions (estimated ≠ real dynamic


coefficients), feedback linearization is only approximate
and the closed-loop equations are still nonlinear

where depends on the amount of uncertainty

Robotics 2 3
Closed-loop equations -2

  closed-loop state equations are written as

  closed-loop error equations with respect to a desired


are rewritten as note that errors
are defined here
with opposite
signs w.r.t. usual

Robotics 2 4
Solution approach

  add an external robust control term/loop


  based on computable bounds on the uncertainties
  based on the theory of guaranteed stability for
nonlinear uncertain system
  Lyapunov-based analysis
  a discontinuous control law will result
  difficult to implement because of chattering effects
  smoothed version with only uniformly ultimate
boundedness (u.u.b. stability) of the tracking error

Robotics 2 5
Working assumptions
1.  bound on the desired trajectory

2.  bound on the estimate of the robot inertia matrix

with , holding for all configurations


3.  bound on the estimate of nonlinear dynamic terms

with a known function , bounded for all


  as a general rule, exploiting the model structure (e.g., its
linear parameterization) may lead to more stringent bounds

Robotics 2 6
Bound on the inertia matrix
  assumption 2. can always be satisfied, knowing some upper and
lower bounds (that always exist due to the positive definiteness)
on the inverse of the inertia matrix

  it is then sufficient to choose as estimate

with

  in fact, using the SVD factorization of the inverse inertia matrix, it


can be shown that (see Appendix A)

Robotics 2 7
Control design – step 1
  linear control law with an added robust term

where the PD gains are diagonal and positive matrices


  we obtain

being

where has all eigenvalues with negative real part,


and

Robotics 2 8
Control design – step 2
  (same) bound on nonlinear terms and added robust term

  we can use the previous data and implicitly define the


bound from

yielding the well-defined (since ), limited and


possibly time-varying function

Robotics 2 9
Control design – step 3
  solve an associated (linear) Lyapunov equation, for any
given symmetric matrix

finding the unique (symmetric) solution matrix


  finally, define the discontinuous robust term as

that also satisfies, by its own structure,

Robotics 2 10
Solving the Lyapunov equation
  in general, using lyap in Matlab (only once, in advance)
  closed-form solution in an interesting scalar case (one
robot joint/link), to get a “feeling”...

choose, e.g., ⇒ find

so that (also in the n-dof case)


Robotics 2 11
Stability analysis
Theorem 1
Defining , the presented robust control law
with the discontinuous term is such that along
the trajectories of the closed-loop error system
Proof

if ⇒

if ⇒ ⇒
note: because of the discontinuity
we cannot directly conclude on the
(global) asymptotic stability of e=0 ⇒
Robotics 2 12
A smoother robust controller

  for any given (small) , define the continuous


robust term as

Theorem 2
With the above continuous robust control law, any solution
, with , of the closed-loop error system is
uniformly ultimately bounded with respect to a suitable set
(a neighborhood of the origin)
Proof in Appendix B
Robotics 2 13
Case study: Single-link under gravity
model (no friction)

error equations

known bounds for control design

Robotics 2 14
Calculations for robust control
% real robot % bounding dynamic terms
I=5; mgd=7; % inertia
% initial robot state m=1/I_max; M=1/I_min;
th0=0;thp0=0; c=(M+m)/2;
% range of uncertainties alpha=(M-m)/(M+m);
I_min=5; I_max=10; Ihat=1/c; % =6.6667
mgd_min=5;mgd_max=7; % nonlinear terms (only gravity)
% linear tracking stabilizer gains Mphi=M*(mgd_max-mgd_min);
kp=25; kd=10; % two poles in -5 mgdhat=5;
% overall bounding
% robust control part rho0=Mphi/(1-alpha) % =0.6
% Lyapunov matrix P and b^T P term rho1=alpha/(1-alpha) % =0.5
A=[0 1; -kp -kd]; % smoothed version
q=1; Q=q*eye(2); epsilon=5*10^-4;
P=lyap(A',Q); % solve A'*P+P*A+Q=0
b=[0 1];
bP=b*P; % =[0.02 0.052] red values are used in Simulink

Robotics 2 15
Results
first trajectory – feedback linearization, no robust loop
0.04 10

0.02
5

0
0
position error (rad)

torque (Nm)
−0.02
−5
−0.04

−10
−0.06

−0.08 position error −15


control torques
−0.1 −20
0 5 10 15 20 25 30 0 5 10 15 20 25 30
time (s) time (s)

0.2

0.15

0.1
velocity error (rad/s)

0.05

non-zero initial error


0

on velocity
−0.05

−0.1

−0.15
velocity error
−0.2
0 5 10 15 20 25 30
time (s)

Robotics 2 16
Results
first trajectory – discontinuous robust control
0.04 10

0.02
5

0
0
position error (rad)

torque (Nm)
−0.02
−5
−0.04

−10
−0.06

−0.08 position error −15


control torques
−0.1 −20
0 5 10 15 20 25 30 0 5 10 15 20 25 30
time (s) time (s)

0.2

0.15

0.1
velocity error (rad/s)

position and velocity errors


0.05

are largely reduced,


0

−0.05

−0.1
but control chattering
−0.15
velocity error at high frequency
−0.2
0 5 10 15 20 25 30
(when error is close to zero)
time (s)

Robotics 2 17
Results
first trajectory – smoothed robust control
0.04 10

0.02
5

0
0
position error (rad)

torque (Nm)
−0.02
−5
−0.04

−10
−0.06

−0.08 position error −15


control torques
−0.1 −20
0 5 10 15 20 25 30 0 5 10 15 20 25 30
time (s) time (s)

0.2

0.15

0.1
velocity error (rad/s)

position and velocity errors


0.05

are similarly reduced,


0

−0.05

−0.1
without control chattering
−0.15
velocity error
−0.2
(using here )
0 5 10 15 20 25 30
time (s)

Robotics 2 18
Results
second trajectory – fbk linearization, no robust loop
0.03 20

15
0.02

10

0.01
position error (rad)

torque (Nm)
0 0

−5
−0.01

−10

−0.02

position error −15


control torques
−0.03 −20
0 5 10 15 20 25 30 0 5 10 15 20 25 30
time (s) time (s)

bang-bang acceleration profile


0.1

0.08

0.06 at 1 rad/s frequency and


0.04
with Qmax = 1 rad/s2
velocity error (rad/s)

0.02

−0.02 zero initial tracking error


−0.04
(matching state conditions)
−0.06

−0.08 velocity error


−0.1
0 5 10 15 20 25 30
time (s)

Robotics 2 19
Results
second trajectory – discontinuous robust control
0.03 20

15
0.02

10

0.01
position error (rad)

torque (Nm)
0 0

−5
−0.01

−10

position error control torques


−0.02
−15

−0.03 −20
0 5 10 15 20 25 30 0 5 10 15 20 25 30
time (s) time (s)

0.1

0.08
bang-bang acceleration profile
0.06

0.04

position and velocity errors


velocity error (rad/s)

0.02

again largely reduced,


0

−0.02

−0.04 but control chattering


−0.06

−0.08 velocity error and larger effort


−0.1
0 5 10 15 20 25 30
time (s)

Robotics 2 20
Results
second trajectory – smoothed robust control
0.03 20

15
0.02

10

0.01
position error (rad)

torque (Nm)
0 0

−5
−0.01

−10

position error control torques


−0.02
−15

−0.03 −20
0 5 10 15 20 25 30 0 5 10 15 20 25 30
time (s) time (s)

0.1

0.08 bang-bang acceleration profile


0.06

0.04 position and velocity errors


velocity error (rad/s)

0.02
are further reduced,
without control chattering
0

−0.02

−0.04
and same control effort as
velocity error without robustifying term
−0.06

−0.08

−0.1
0 5 10 15
time (s)
20 25 30 (using here )
Robotics 2 21
Appendix A
Proof of bounds on the inertia matrix

  the SVD factorization of the (symmetric) inverse inertia matrix is

so that, with the choice made for its estimate, it follows that

Robotics 2 22
Appendix B
Proof of Theorem 2

  setting , note that for the robust term in the control


law it is

  defining as before , we have

having used the chain of inequalities

  if , the rest of the proof is the same as in Theorem 1


%
Robotics 2 23
Appendix B
Proof of Theorem 2 (cont)

  if , the second term in the derivative of is

with a maximum value attained for


  therefore, it is

provided that

  if is the smallest level set of (an ellipsoid) containing


the hyper-sphere of radius , then
and u.u.b. is obtained for
(an upper bound for the time needed to reach can be given)
Robotics 2 24

You might also like