Industrial Robots Industrial Robots Control Control Part 2 Control - - PowerPoint PPT Presentation
Industrial Robots Industrial Robots Control Control Part 2 Control - - PowerPoint PPT Presentation
Industrial Robots Industrial Robots Control Control Part 2 Control Control Part 2 Part 2 Part 2 Introduction to centralized control Independent joint decentralized control may prove inadequate when the user requires high task
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
- n the reference trajectory tracking
Basilio Bona 2 ROBOTICA 03CFIOR
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
- nly the local joint information (position and velocity)
Basilio Bona 3 ROBOTICA 03CFIOR
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 h
- utputs (the joint positions ) that interact with each other
according to the nonlinear dynamic equations of the robot model model 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 dynamics dynamics, 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 4 ROBOTICA 03CFIOR
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 approximate
- where the inertia and disturbance terms are approximate
- h
Reference acceleration + + +
q q
c
u
r
q
- M
ROBOT ROBOT –
q
c c
a
- Basilio Bona
5 ROBOTICA 03CFIOR
( )
r c c
− + q u M a h
- Additional acceleration
command signal
Approximate linearization
Hence, developing the previous equation, we have:
- ( )
( , ) ( )
r c
+ = − + M q q h q q M h q a
- (
)
1 1
( ) ( ) ( , ) ( )
r c − −
− − − = q M q M M q h q q q a h
- (
)
( , ) ( , ) Δ − = h q q h h q q
- 1( )
( )
−
= + M q M I E q
( )
( , ) ( , ) q q q q
- 1
( ) ( )
−
= − E q M q M I
Here we try to invert the inertia matrix Here we try to invert the inertia matrix Here we try to send to zero the disturbance
Basilio Bona 6 ROBOTICA 03CFIOR
Here we try to send to zero the disturbance terms
Conclusions
( )
, ) , , (
r c c r
= + − q v a q q q q η
- If we can cancel this part,
the system becomes linear and decoupled, but unstable Structured disturbance
( )
1
, , , ( ) ( ) ( ) ( , )
r r c c
Δ
−
= − − q q q q a E q M q h q a q η
- Approximation
i i i d l Approximation in in inertia model Coriolis model
Basilio Bona 7 ROBOTICA 03CFIOR
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
ROBOT
q
u
( ) M q
+
ac
ROBOT
q
- ( )
M q
+ +
( , ) h q q
- Basilio Bona
8 ROBOTICA 03CFIOR
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
g influences only the behavior of the i‐th joint component qc,i that is independent of the other joints motion q
ROBOT
- u
( ) M q
+ +
ac
∫ ∫
ac
q q
- ( , )
h q q
- q
Basilio Bona 9 ROBOTICA 03CFIOR
State variable representation
Basilio Bona 10 ROBOTICA 03CFIOR
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 11 ROBOTICA 03CFIOR
Controller design
Basilio Bona 12 ROBOTICA 03CFIOR
Controller design
h
- Nonlinear Inner Loop
+
q
- q
- h
ROBOT ROBOT
+ + –
q q
c
u
r
q
- M
, M h
q
c
a
Linear Outer Loop
Basilio Bona 13 ROBOTICA 03CFIOR
Inner loop – outer loop (nonlinear linearizing control)
Basilio Bona 14 ROBOTICA 03CFIOR
Exact linearization
Basilio Bona 15 ROBOTICA 03CFIOR
Exact linearization
- ( , )
h q q
- ROBOT
ROBOT + + +
q
- q
c
u
r
q
- ,
M h ( ) M q
–
c
a
Inner Loop
1 s 1 s
1
q
1
q
- +
r
q
- 1
s 1 s
- –
c
a
n
q
n
q
- c
n n
Control design
Basilio Bona 16 ROBOTICA 03CFIOR
PD outer loop control design
Basilio Bona 17 ROBOTICA 03CFIOR
PD outer loop control design
Basilio Bona 18 ROBOTICA 03CFIOR
PD outer loop control design
Inner Loop
- Inner Loop
( , ) h q q
- ROBOT
+ + + –
q
- q
c
u
r
q
- ,
M h ( ) M q
c
a
+
q
- Outer Loop
D
−K
+ + + + –
q
r
q
P
−K
+ –
r
q
Basilio Bona 19 ROBOTICA 03CFIOR
PID outer loop control design
Basilio Bona 20 ROBOTICA 03CFIOR
Inner Loop
PID outer loop control design
h
- Inner Loop
+ + +
r
q
- q
q
c
u
M
ROBOT
–
c
a
a PID controller for the outer loop
Outer Loop
D
K −
+ + + –
K −
+
r
q
- q
P
K −
+ –
I
K s −
r
q
Basilio Bona 21 ROBOTICA 03CFIOR
PID outer loop control design
Basilio Bona 22 ROBOTICA 03CFIOR
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 approximations The 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 do
- solved. Software and hardware architectures must be able to do
so Unmodeled dynamics (e g elastic vibrations) are not taken into Unmodeled dynamics (e.g., elastic vibrations) are not taken into account
In practice it is impossible to satisfy all these assumptions at In practice it is impossible to satisfy all these assumptions at the same time
Basilio Bona 23 ROBOTICA 03CFIOR
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: p
- 1. 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 model measured joint variables and velocities to build the model matrices
Basilio Bona 24 ROBOTICA 03CFIOR
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 i errors introduced by the real‐time computation of the inverse dynamics 4 Adaptive control techniques; they provide an online estimation
- 4. Adaptive control techniques; they provide an online estimation
- f the true model parameters that are successively used in the
controller controller
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 p cancel
Basilio Bona 25 ROBOTICA 03CFIOR
Approximate linearization
Basilio Bona 26 ROBOTICA 03CFIOR
Approximate linearization
Under the assumption that only an approximate compensation is possible, the external control law becomes: ( ) ( , )
c c
= + u M q a h q q
- ;
M M h h
- Where
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 l simplifies the model
Basilio Bona 27 ROBOTICA 03CFIOR
Inner loop
Approximate linearization
h
- Inner loop
+ + +
q q
c
u
r
q
- M
ROBOT
–
c
a
We assume to use a PD controller for the outer loop
Basilio Bona 28 ROBOTICA 03CFIOR
Approximate linearization
There are some inverse dynamics architectures with approximate linearization that include approximate 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 29 ROBOTICA 03CFIOR
Independent joint control
Basilio Bona 30 ROBOTICA 03CFIOR
Inner loop
Independent joint control
Inner loop
- r
q
- q
q
ROBOT
- M
− +
c
a
Outer loop
c
+ + + –
D
K −
r
q
- q
+ –
P
K −
r
q
Basilio Bona 31 ROBOTICA 03CFIOR
PD control with gravity compensation
Exact knowledge of the gravity terms
Basilio Bona 32 ROBOTICA 03CFIOR
PD control with gravity compensation
Basilio Bona 33 ROBOTICA 03CFIOR
Inner loop
PD control with gravity compensation
Inner loop
( )
g q
τ
- +
–
q
- q
c
u
ROBOT
c
a
Outer loop + + + –
D
K −
r
q
- q
+ –
P
K −
r
q
Basilio Bona 34 ROBOTICA 03CFIOR
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 cs control It is mainly used when the reduced processing power cannot y p g p afford the complete inverse dynamics implementation When 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 iti gravitational effects, that are dominant when the velocities are small Computing off‐line the feedforward torque terms and store them in Computing 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 35 ROBOTICA 03CFIOR
Inner loop
Computed torque method
( , )
r r
h q q
- Inner loop
( )
r
M q
+ + +
q q
c
u
r
q
- ROBOT
– Inner Loop
c
a
Outer loop + + + –
r
q
- q
D
K −
+ –
r
q
P
K −
Basilio Bona 36 ROBOTICA 03CFIOR