Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also...

36
Industrial Robots Industrial Robots Control Control Part 2 Part 2 Control Control Part 2 Part 2

Transcript of Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also...

Page 1: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Industrial RobotsIndustrial Robots

ControlControl –– Part 2Part 2Control  Control   Part 2Part 2

Page 2: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Introduction to centralized control

Independent joint decentralized control may prove inadequate when

the user requires high task velocities ⇒ structured disturbance torques (Coriolis, centrifugal) greatly influence the robot behavior

motors are of direct drive type ⇒ since non gearboxes are present, their beneficial effect is absent and nonlinear effects and coupling effects become important

In these cases the disturbances torques may cause large errors on the reference trajectory tracking

Basilio Bona 2ROBOTICA 03CFIOR

Page 3: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Introduction to centralized control

Since in these cases it is not possible to sufficiently reduce the effects due to the disturbance torques, it is more convenient to try to cancel such torques, adopting control algorithms that use nonlinear compensation terms

We call this architecture “centralized” since the applied joint command torques are function also of the other joint positions and velocities.The approach is not “local” anymore, as happens in the decentralized architecture, where each joint controller uses only the local joint information (position and velocity)

Basilio Bona 3ROBOTICA 03CFIOR

Page 4: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Centralized control

In the centralized control architectures the robot is considered as a MIMO system, with n inputs (the joint  torques) and n

( h j i i i ) h i i h h houtputs (the joint positions ) that interact with each other according to the nonlinear dynamic equations of the robot modelmodel

The centralized control algorithms shall take into account this dynamic model, and usually they have a nonlinear form

The main centralized control architecture is called inverse inverse dynamicsdynamics, since the command torques are computed from the robot dynamic equation and from the knowledge of the joint variables (positions and velocities), i.e., as a solution of an inverse dynamic problem

Basilio Bona 4ROBOTICA 03CFIOR

Page 5: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Inverse dynamics control

( ) ( , )c

+ =M q q h q q u

Consider again the following simplified dynamic model of the robot

( ) ( , )c

q q q q

We can compute a control command as a function of the dynamic model, where the inertia and disturbance terms are approximatewhere the inertia and disturbance terms are approximate

hReference acceleration 

+

++

q

qcu

rq

M ROBOTROBOT– qc

ca

Basilio Bona 5ROBOTICA 03CFIOR

( )r cc− +qu M a hAdditional acceleration 

command signal

Page 6: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Approximate linearization

Hence, developing the previous equation, we have:

( ) ( , ) ( )r c

+ = − +M q q h q q M hq a

( )1 1( ) ( ) ( , )( )r c

− −− −−=q M q M M q h q qq a h

( )( , ) ( , )Δ− =h q q h h q q1( ) ( )− = +M q M I E q ( )( , ) ( , )q q q q

1( ) ( )−= −E q M q M I

Here we try to invert the inertia matrixHere we try to invert the inertia matrix

Here we try to send to zero the disturbance

Basilio Bona 6ROBOTICA 03CFIOR

Here we try to send to zero the disturbance terms

Page 7: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Conclusions

( ),) , ,(rc cr

= +−q vaq q q qη

If we can cancel this part, the system becomes linear and decoupled, but unstable

Structured disturbance

( ) 1, , , ( ) ( )( ) ( , )rr c c

Δ−= −−qq q q a E q M q h qa qη

Approximation i i i d l

Approximation in in inertia model Coriolis model

Basilio Bona 7ROBOTICA 03CFIOR

Page 8: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

In general

If we are able to compute the exact model of the nonlinear dynamical system, we can build the following control architecture, where ac is a suitable acceleration control signal, whose definition will allow to obtain asymptotic stability and other performances

ROBOTq

u( )M q +ac ROBOT

q

( )M q ++

( , )h q q

Basilio Bona 8ROBOTICA 03CFIOR

Page 9: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Exact linearization and decoupling

The control scheme above performs an exact system linearization

The resulting system is decoupled: it consists in n double integrators; the i‐th component ac i of the new acceleration signal g p c,i ginfluences only the behavior of the i‐th joint component qc,i that is independent of the other joints motion

q

ROBOTu( )M q ++

ac

∫ ∫ac

qq

( , )h q q

q

Basilio Bona 9ROBOTICA 03CFIOR

Page 10: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

State variable representation

Basilio Bona 10ROBOTICA 03CFIOR

Page 11: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Error variable representation

This term is equivalent to the injection into the system of a structured nonlinear disturbance that can make it unstable in spite of the control design

Basilio Bona 11ROBOTICA 03CFIOR

Page 12: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Controller design

Basilio Bona 12ROBOTICA 03CFIOR

Page 13: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Controller design

hNonlinear Inner Loop

+ qq

hROBOTROBOT

+

+

q

qcu

rq

M ,M hq

ca

Linear Outer Loop

Basilio Bona 13ROBOTICA 03CFIOR

Page 14: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Inner loop – outer loop (nonlinear linearizing control)

Basilio Bona 14ROBOTICA 03CFIOR

Page 15: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Exact linearization

Basilio Bona 15ROBOTICA 03CFIOR

Page 16: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Exact linearization

( , )h q qROBOTROBOT

+

+

+ qq

cu

rq

,M h( )M q–

ca Inner Loop

1

s

1

s1

q1q+

rq

1

s

1

s

ca

nqn

qc nn

Control design

Basilio Bona 16ROBOTICA 03CFIOR

Page 17: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

PD outer loop control design

Basilio Bona 17ROBOTICA 03CFIOR

Page 18: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

PD outer loop control design

Basilio Bona 18ROBOTICA 03CFIOR

Page 19: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

PD outer loop control design

Inner LoopInner Loop ( , )h q q

ROBOT+

+

+

qq

cu

rq

,M h( )M q

ca

+q

Outer Loop

D−K

+

+

+

+

–q

rq

P−K

+

rq

Basilio Bona 19ROBOTICA 03CFIOR

Page 20: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

PID outer loop control design

Basilio Bona 20ROBOTICA 03CFIOR

Page 21: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Inner Loop

PID outer loop control design

hInner Loop

+

+

+rq

qqc

uM ROBOT–

ca

a PID controller for the outer loopOuter Loop

DK−

+

++

– K−

+rq

qP

K−+

IK

s

−rq

Basilio Bona 21ROBOTICA 03CFIOR

Page 22: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

PID outer loop control design

Basilio Bona 22ROBOTICA 03CFIOR

Page 23: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Practical aspects of exact linearization

Exact linearization hypothesis implies the capacity to compute on‐line the model matrices

Dynamic models must be perfectly known, without errors or approximationsThe model matrices must be computed online; at every sampling time (approx. 1 ms) the inverse dynamics equations must be solved Software and hardware architectures must be able to dosolved. Software and hardware architectures must be able to do soUnmodeled dynamics (e g elastic vibrations) are not taken intoUnmodeled dynamics (e.g., elastic vibrations) are not taken into account

In practice it is impossible to satisfy all these assumptions atIn practice it is impossible to satisfy all these assumptions at the same time

Basilio Bona 23ROBOTICA 03CFIOR

Page 24: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Approximate linearization

In practice one may adopt a control scheme based on the imperfect compensation of the robot inverse dynamics

There are different possibilities to do so:p1. Only a part of the robot dynamics is computed and used in the 

controller (usually the dominant one and/or that is best known), leaving to the outer loop the task of guaranteeing the overall stability and the reference trajectory tracking

2. A feedforward compensation of the robot dynamics; it uses the reference values of the desired trajectory instead of the real measured joint variables and velocities to build the modelmeasured joint variables and velocities to build the model matrices

Basilio Bona 24ROBOTICA 03CFIOR

Page 25: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Approximate linearization

3. Robust control techniques; these are advanced techniques that allow to overcome the effects of the approximations and other 

i d d b h l i i f h ierrors introduced by the real‐time computation of the inverse dynamics

4 Adaptive control techniques; they provide an online estimation4. Adaptive control techniques; they provide an online estimation of the true model parameters that are successively used in the controllercontroller

Also for the outer loop controller it is possible to adopt more complex algorithms than the simple PD controller.complex algorithms than the simple PD controller. 

A PID controller will be able to cancel the steady state effects of  any additive constant disturbance that the inner loop cannot y pcancel

Basilio Bona 25ROBOTICA 03CFIOR

Page 26: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Approximate linearization

Basilio Bona 26ROBOTICA 03CFIOR

Page 27: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Approximate linearization

Under the assumption that only an approximate compensationis possible, the external control law becomes:

( ) ( , )c c= +u M q a h q q

;M M h hWhere

represents an estimate of the true matrices. These matrices could be both the best available approximation of 

the true matrices, or the result of an “a‐priori” decision that i lifi h d lsimplifies the model

Basilio Bona 27ROBOTICA 03CFIOR

Page 28: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Inner loop

Approximate linearization

hInner loop

+

+

+qqc

urq

M ROBOT–

ca

We assume to use a PD controller for the outer loopp

Basilio Bona 28ROBOTICA 03CFIOR

Page 29: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Approximate linearization

There are some inverse dynamics architectures with approximate linearization that includeapproximate linearization, that include

1. Independent joint control

2. PD control with gravity compensation

3. Inverse dynamics feedforward control (also called computed torque method)

Basilio Bona 29ROBOTICA 03CFIOR

Page 30: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Independent joint control

Basilio Bona 30ROBOTICA 03CFIOR

Page 31: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Inner loop

Independent joint controlInner loop

rq

qqROBOTM

−+

ca

Outer loopc

+

++

–D

K−rq

q +

–P

K−rq

Basilio Bona 31ROBOTICA 03CFIOR

Page 32: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

PD control with gravity compensation

Exact knowledge of the gravity terms 

Basilio Bona 32ROBOTICA 03CFIOR

Page 33: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

PD control with gravity compensation

Basilio Bona 33ROBOTICA 03CFIOR

Page 34: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Inner loop

PD control with gravity compensationInner loop

( )gqτ

+

qqc

uROBOT

ca

Outer loop

+

++

–D

K−rq

q +

–P

K−rq

Basilio Bona 34ROBOTICA 03CFIOR

Page 35: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Computed torque method

The computed torque method represents an solution midway between the decentralized control and the inverse dynamics bet ee t e dece t a ed co t o a d t e e se dy a cscontrolIt is mainly used when the reduced processing power cannot y p g pafford the complete inverse dynamics  implementationWhen the real‐time constraints are strict, the feedforward term can be approximated

Considering only the diagonal terms of the inertia matrix and the it ti l ff t th t d i t h th l itigravitational effects, that are dominant when the velocities are 

smallComputing off‐line the feedforward torque terms and store them inComputing off line the feedforward torque terms and store them in a mass memory; this is possible when cyclic trajectories are performed again and again

Basilio Bona 35ROBOTICA 03CFIOR

Page 36: Robotics 2011 10 Control 2 - Home@ · PDF fileInverse dynamics feedforward control (also called computed torque method) ... The computed torque method represents an ... Robotics_2011_10_Control_2.pptx

Inner loop

Computed torque method

( , )r r

h q qInner loop

( )r

M q+

+

+qqc

urq

ROBOT–

Inner Loopca

Outer loop

+

++

rq

qD

K−

+–

rq

PK−

Basilio Bona 36ROBOTICA 03CFIOR