ROBOTICS 01PEEQW Basilio Bona DAUIN – Politecnico di Torino
Control – Part 2
Introduction to centralized control � Independent joint decentralized control may prove inadequate when � the user requires high task velocities, since structured disturbance torques (Coriolis, centrifugal) greatly influence the robot behavior � motors are of direct drive type, since no gearboxes are present, cancelling their beneficial effect. Nonlinearities and coupling effects become important � In these cases the disturbance torques may cause large errors on the reference trajectory tracking that the independent control architecture is unable to reduce Basilio Bona - DAUIN - PoliTo 3 ROBOTICS 01PEEQW - 2016/2017
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 of the all 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 - DAUIN - PoliTo 4 ROBOTICS 01PEEQW - 2016/2017
Centralized control � In the centralized control architectures the robot is considered as a MIMO system, with n inputs (the joint torques) and n outputs (the joint positions) that interact with each 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 present a nonlinear structure � The main centralized control architecture is called inverse dynamics , since the command torques are computed from the robot model dynamic equation and from the knowledge of the joint variables (positions and velocities), i.e., as a solution of a model-based inverse dynamic problem Basilio Bona - DAUIN - PoliTo 5 ROBOTICS 01PEEQW - 2016/2017
Inverse dynamics control Consider again the following simplified dynamic model of the robot ɺɺ + ɺ = M q q ( ) h q q ( , ) u c We can compute a control command as a function of the dynamic model, where one tries to cancel the inertia and other terms � ( ɵ ɺ ɺ − + u ≐ M q a ) h c r c ɵ h Reference acceleration ɺ q ɺɺ q + � r + M ROBOT u + q c – a c � ( ɵ ɺ ɺ − + u ≐ M q a ) h Additional acceleration c r c command signal Basilio Bona - DAUIN - PoliTo 6 ROBOTICS 01PEEQW - 2016/2017
Approximate linearization Hence, developing the previous equation, we have: � ɵ ɺɺ + ɺ = ɺɺ − + M q q ( ) h q q ( , ) M ( q a ) h r c ( ) � ɵ − − ɺɺ = 1 ɺɺ − − 1 ɺ − q M ( ) q M ( q a ) M ( ) q h q q ( , ) h r c ( ) � ɵ − 1 = + M ( ) q M I E q ( ) ɺ − = ∆ ɺ h q q ( , ) h h q q ( , ) � − 1 = − E q ( ) M ( ) q M I Here we try to invert the inertia matrix Here we try to send to zero the disturbance terms Basilio Bona - DAUIN - PoliTo 7 ROBOTICS 01PEEQW - 2016/2017
Conclusions ( ) ɺɺ ɺɺ ɺ ɺɺ = − + η q ( q a ) q , q , q a , r c r c Structured disturbance ( ) − η ɺ ɺɺ = ɺɺ − − 1 ∆ ɺ q q q a E q q a M q h q q , , , ( ) ( ) ( ) ( , ) r c r c Approximation Approximation in in inertia model Coriolis model Basilio Bona - DAUIN - PoliTo 8 ROBOTICS 01PEEQW - 2016/2017
Conclusions ( ) ɺɺ = ɺɺ − + η ɺ ɺɺ q ( q a ) q , q , q a , r c r c If we can cancel the structured disturbance, the system becomes linear and decoupled, but unstable ɺɺ = ɺɺ − ⇒ ɺɺ − ɺɺ = ⇒ ɺɺ = q ( q a ) q q a e a r c r c c The chains of double integrators make the system unstable Basilio Bona - DAUIN - PoliTo 9 ROBOTICS 01PEEQW - 2016/2017
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 q a c u ROBOT M q ( ) + + ɺ q ɺ h q q ( , ) Basilio Bona - DAUIN - PoliTo 10 ROBOTICS 01PEEQW - 2016/2017
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 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 q a c u q ɺ a c q M q ROBOT ( ) ∫ ∫ + + ɺ q ɺ h q q ( , ) Basilio Bona - DAUIN - PoliTo 11 ROBOTICS 01PEEQW - 2016/2017
Exact linearization ɺ h q q ( , ) ROBOT ɺ q u ɺɺ q + + c M q ( ) M h , r q + – a Inner Loop c 1 1 ɺ q q ɺɺ s s q + 1 1 r ⋯ ⋯ – 1 1 ɺ q a q s s n c n Control design Basilio Bona - DAUIN - PoliTo 12 ROBOTICS 01PEEQW - 2016/2017
State variable representation Basilio Bona - DAUIN - PoliTo 13 ROBOTICS 01PEEQW - 2016/2017
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 - DAUIN - PoliTo 14 ROBOTICS 01PEEQW - 2016/2017
Controller design Basilio Bona - DAUIN - PoliTo 15 ROBOTICS 01PEEQW - 2016/2017
Controller design ɵ Nonlinear Inner Loop h ROBOT ɺ q ɺɺ + q � r + M h , M u + q c – a c Linear Outer Loop Basilio Bona - DAUIN - PoliTo 16 ROBOTICS 01PEEQW - 2016/2017
Inner loop – outer loop (nonlinear linearizing control) Basilio Bona - DAUIN - PoliTo 17 ROBOTICS 01PEEQW - 2016/2017
Exact linearization Basilio Bona - DAUIN - PoliTo 18 ROBOTICS 01PEEQW - 2016/2017
Exact linearization ɺ h q q ( , ) ROBOT ɺ q u ɺɺ q + + c M q ( ) M h , r q + – a Inner Loop c 1 1 ɺ q q ɺɺ s s q + 1 1 r ⋯ ⋯ – 1 1 ɺ q a q s s n c n Control design Basilio Bona - DAUIN - PoliTo 19 ROBOTICS 01PEEQW - 2016/2017
PD outer loop control design Basilio Bona - DAUIN - PoliTo 20 ROBOTICS 01PEEQW - 2016/2017
PD outer loop control design Basilio Bona - DAUIN - PoliTo 21 ROBOTICS 01PEEQW - 2016/2017
PD outer loop control design Inner Loop ɺ h q q ( , ) ROBOT ɺ q u ɺɺ q + + c M q ( ) M h , r q + – a c Outer Loop ɺ q + + − K r D + – q + − K r P – Basilio Bona - DAUIN - PoliTo 22 ROBOTICS 01PEEQW - 2016/2017
PID outer loop control design Basilio Bona - DAUIN - PoliTo 23 ROBOTICS 01PEEQW - 2016/2017
PID outer loop control design Inner Loop h ɺ q ɺɺ q u + + M r c q ROBOT + – a c Outer Loop a PID controller for the outer loop ɺ q + + + − K r D – + − K q I + r − K s P – Basilio Bona - DAUIN - PoliTo 24 ROBOTICS 01PEEQW - 2016/2017
PID outer loop control design Basilio Bona - DAUIN - PoliTo 25 ROBOTICS 01PEEQW - 2016/2017
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 so � Unmodeled dynamics (e.g., elastic vibrations) are not taken into account In practice it is impossible to satisfy all these assumptions at the same time Basilio Bona - DAUIN - PoliTo 26 ROBOTICS 01PEEQW - 2016/2017
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 Basilio Bona - DAUIN - PoliTo 27 ROBOTICS 01PEEQW - 2016/2017
Approximate linearization 3. Robust control techniques; these are advanced techniques that allow to overcome the effects of the approximations and other errors introduced by the real-time computation of the inverse dynamics 4. Adaptive control 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 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 cancel Basilio Bona - DAUIN - PoliTo 28 ROBOTICS 01PEEQW - 2016/2017
Approximate linearization Basilio Bona - DAUIN - PoliTo 29 ROBOTICS 01PEEQW - 2016/2017
Recommend
More recommend