Industrial Robots Control Part 2
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 2
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) 3
Centralized control In the centralized control architectures the robot is considered as a MIMO system, with n inputs (the joint torques) and n outputs (h (the joint positions ii ) that interact with iheach other according to the nonlinear dynamic equations of the robot 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 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 4
Inverse dynamics control Consider again the following simplified dynamic model of the robot M ( qq ) h ( qq, ) = u c We can compute a control command as a function of the dynamic model, where the inertia and disturbance terms are approximate Reference acceleration h q r M ROBOT u c q q a c Additional acceleration command signal u M ( q a ) h c r c 5
Approximate linearization Hence, developing the previous equation, we have: Mqq ( ) hqq (, ) = M ( q a ) h ( ) ( ) q a h r c q = M 1 q M M 1 q h q q ( ) ( ) (, ) M 1 ( q) M = I E( q ) ( qq ) 1 Eq ( ) = M ( qm ) I Here we try to invert the inertia matrix r c h (, qq) h = Δh(, qq ) Here we try to send to zero the disturbance terms 6
Conclusions q ( q q, q v ) = q a ) η,, ( r c r c Structured disturbance If we can cancel this part, the system becomes linear and decoupled, but unstable η ( ) 1 = q a qqq,,, a Eq ( )( ) M ( q) hq (, q ) Δ r c r c Approximation in inertia i model Approximation in Coriolis model 7
In general If we are able to compute the exact model of the nonlinear dynamical system, we can build the following control architecture, where a c is a suitable acceleration control signal, whose definition will allow to obtain asymptotic stability and other performances a c M ( q ) u ROBOT q q hqq (, ) 8
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 a ci c,i of the new acceleration signal influences only the behavior of the i th joint component q c,i that is independent of the other joints motion a c u M( q ) ROBOT a c q hqq (, ) q q q 9
State variable representation 10
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 11
Controller design 12
Controller design q r q Nonlinear Inner Loop h ROBOT q M M, h u c q a c Linear Outer Loop 13
Inner loop outer loop (nonlinear linearizing control) 14
Exact linearization 15
Exact linearization hqq (, ) q r ROBOT q u c M( q) M, h q a c Inner Loop q r a c 1 s 1 s q 1 q n 1 s 1 s q 1 q n Control design 16
PD outer loop control design 17
PD outer loop control design 18
PD outer loop control design q r a c Inner Loop M( q) hqq (, ) u c ROBOT M, h q q Outer Loop q r q q r K D K P 19
PID outer loop control design 20
PID outer loop control design Inner Loop h q r a c M u c ROBOT q q Outer Loop a PID controller for the outer loop q r q r K D K K P K I s 21
PID outer loop control design 22
Practical aspects of exact linearization Exact linearization hypothesis implies the capacity to compute online 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 so Unmodeled dynamics (e.g., elastic vibrations) are nottakentaken into account In practice it is impossible to satisfy all theseassumptions at the same time 23
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: 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 matrices 24
Approximate linearization 3. Robust control techniques; these are advanced techniques that allow to overcome the effects of the approximations and other errors introduced dby the real time computation of the inverse dynamics 4. Adaptive controltechniques; techniques; they provide an online estimation of the true model parameters that are successively used in the controller Also for the outer loop controller it is possible to adopt more complexalgorithms than thesimple PDcontroller. A PID controller will be able to cancel the steady state effects of any additive constant disturbance that the inner loop cannot cancel 25
Approximate linearization 26
Approximate linearization Under the assumption that only an approximate compensation is possible, the external control law becomes: Where u = M ( q ) a h ( q, q ) c M M; h h c 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 simplifies the model dl 27
Approximate linearization Inner loop h q r a c M u c ROBOT q q We assume to use a PD controller for the outer loop 28
Approximate linearization There are some inverse dynamics architectures with approximate linearization, that include 1. Independent joint control 2. PD control with gravity compensation 3. Inverse dynamics feedforward control (also called computed torque method) 29
Independent joint control 30
Independent joint control Inner loop q r M ROBOT q q Outer loop a c q r q r K D K P 31
PD control with gravity compensation Exact knowledge of the gravity terms 32
PD control with gravity compensation 33
PD control with gravity compensation Inner loop τ g ( q ) u c ROBOT q q a c Outer loop q r q r K D K P 34
Computed torque method The computed torque method represents an solution midway between ee the edecentralized control o and dthe inverse esedynamics control It is mainly used when the reduced processing gpower cannot 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 gravitational ti effects, that t are dominant when the velocities are small 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 35
Computed torque method hq (, q ) r r Inner loop q r ( ) Mq r u c ROBOT q q a c Inner Loop Outer loop r q r K D K P 36