ROBOTICS 01PEEQW Basilio Bona DAUIN – Politecnico di Torino
Control – Part 4
Other control strategies � These slides are devoted to two advanced control approaches, namely � Operational space control � Interaction control � The desired trajectory is planned in the operational (i.e., cartesian) space, specifying both the TCP position and the orientation (i,.e., the pose) � The control laws are designed to operate at the joint actuation, using position, velocity and acceleration of joints � this means that the inverse kinematic functions must be known, at least for the joint position, or on inverse Jacobian (when the position is approximated by some integration algorithm) � for joint velocity and acceleration the algorithms are often based on numerical differentiation Basilio Bona 3 ROBOTICS 01PEEQW - 2016/2017
Operational Space Control � A different solution can be found, by defining the control directly in the operational space, instead in the joint space � In this case the error is given by the difference from the desired cartesian pose and the measured one; it is therefore necessary to know the direct kinematic function in order to compute the achieved pose from the present joint values � Now the feedback control loops do not need the kinematic inversion, but they include the coordinate transformation joint -> pose Basilio Bona 4 ROBOTICS 01PEEQW - 2016/2017
Operational Space Control � The operational space control algorithms are “heavy” from the computational point of view; this may impact on the sampling time choice, which cannot be too short, with the consequent degradation of the control performances � Joint space control algorithms are usually able to obtain a satisfactory motion control of the robot � Operational space control algorithms are necessary when the robot TCP interacts with the external environment, and/or it is necessary to control the forces/torques exchanged with the environment Basilio Bona 5 ROBOTICS 01PEEQW - 2016/2017
Operational Space Control � In general two general approaches are available � Jacobian Inverse control � Jacobian Transpose control � The operational approach requires the analytical (i.e., operational or task) Jacobian � In both cases, in the feedback loop the direct kinematic equation is required to transform joints into pose. → = q ( ) t p ( ); t p f q ( ) i.e., � If the desired pose is known, the pose error is defined as ∆ = = − p ( ) t e ( ) t p ( ) t p ( ) t p d Basilio Bona 6 ROBOTICS 01PEEQW - 2016/2017
Operational Space Control: Jacobian inverse � In this scheme we assume that the error in the pose is small, so that one can apply the inverse Jacobian and obtain ( ) − ∆ = ∆ 1 q ( ) t J q ( ) t p ( ) t a � Then the control torque is computed multiplying the joint error for a suitable gain = K q ∆ τ c t ( ) ( ) t Basilio Bona 7 ROBOTICS 01PEEQW - 2016/2017
Operational Space Control: Jacobian inverse Gain matrix ∆ p ∆ q p τ q J − q d c 1 ( ) K ROBOT a + ‒ p f q ( ) Direct kinematics Basilio Bona 8 ROBOTICS 01PEEQW - 2016/2017
Operational Space Control: Jacobian inverse � Since the control torque is = K q ∆ τ c the resulting controlled system can be interpreted as a generalized elastic spring, whose elastic coefficients are given by the gain elements � If the gain matrix is diagonal, the elastic elements are independent , one for every joint Basilio Bona 9 ROBOTICS 01PEEQW - 2016/2017
Operational Space Control: Jacobian transpose � In this scheme the pose error is not transformed into a joint error, but directly multiplied by a gain matrix � The output of the previous block can be considered as an elastic force in the operational space, produced by a generalized spring, whose scope is to zero the pose error � In other words the resulting force drives the TCP along a direction such that the pose error is reduced � The elastic force in the operational space is now transformed into the corresponding torque to be applied to the joints, using the Jacobian transpose, as dictated by the kineto-static relations Basilio Bona 10 ROBOTICS 01PEEQW - 2016/2017
Operational Space Control: Jacobian transpose Gain matrix p τ ∆ p ∆ q q d c J q T ( ) G ROBOT a + ‒ p f q ( ) Direct kinematics Basilio Bona 11 ROBOTICS 01PEEQW - 2016/2017
Operational Space Control � The operational space control schemes presented above, are to be considered only as generic architectures, since their direct application do not guarantee stability or accuracy � It is necessary to improve them, embedding their principles in more rigorous architectures. These are � PD control with gravity compensation � Inverse dynamics control Basilio Bona 12 ROBOTICS 01PEEQW - 2016/2017
PD control with gravity compensation � The user wants to attain a desired cartesian pose; the control objective consists in reducing to zero the pose error = − e ( ) t p ( ) t p ( ) t p d � This objective is achieved setting a nonlinear gravity compensation in the joint space and adding a PD linear compensator in the operational PD control term space ( ) = + − − ɺ u g q ( ) J q T ( ) K ( p p ) K J q q ( ) a P d D a gravity compensation � The system reaches an asymptotically stable system corresponding to d − = J q K T ( ) ( p p ) 0 a P Basilio Bona 13 ROBOTICS 01PEEQW - 2016/2017
PD control with gravity compensation ɺ p K J ( ) q D a ɺ q p ∆ q τ ‒ d + + + K c J q ROBOT T ( ) P a + q ‒ g q ( ) p f q ( ) Direct kinematics Jacobian transpose Basilio Bona 14 ROBOTICS 01PEEQW - 2016/2017
ɺɺ ɺ + = M q q ( ) h q q ( , ) u c M ɺɺ − c + u q a h ≐ ( ) c r ɺɺ = e a c Basilio Bona 15 ROBOTICS 01PEEQW - 2016/2017
Inverse dynamics control in operational space Basilio Bona 16 ROBOTICS 01PEEQW - 2016/2017
Inverse dynamics control in operational space ɺɺ p d q p τ d + + + K M q ( ) c J q ROBOT T ( ) P a + + + ɺ q ‒ ɺ p d ɺ h q q ( , ) + K ɺ D ɺ J q q ( , ) ‒ a f q ( ) p Direct kinematics ɺ p J q ( ) a Basilio Bona 17 ROBOTICS 01PEEQW - 2016/2017
General notes � All operational space schemes require the Jacobian computation � In singularity configurations the algorithms may get stuck and do not work � Moreover, all the above schemes require a minimal representation of the orientation (three angles appearing in the definition of the analytical Jacobian) � When this is not possible or not preferred, it is necessary to compute the geometrical Jacobian, that makes the stability analysis of the algorithm much more complex Basilio Bona 18 ROBOTICS 01PEEQW - 2016/2017
Interaction Control � Many tasks require that the TCP remains in contact with an external surface or object manipulation capabilities � In these cases it is no more sufficient to control the manipulator motion; it is necessary to manage the interaction of the TCP with the environment � The environment imposes constraints on paths or trajectories than can be actually followed by the TCP. � A simple position control would require a perfect knowledge of the geometrical and mechanical characteristics of the environment � Small motion errors could generate high contact forces, able to modify the TCP trajectory; the controller action could saturate the actuators Basilio Bona 19 ROBOTICS 01PEEQW - 2016/2017
Interaction Control and Compliance � The main quantity that characterizes the interaction is the TCP contact force and this becomes the controlled quantity � The main idea behind the interaction control is to act on the compliance of the robot+environment system, either actively or passively � The robot+environment system can be represented by an equivalent generalized spring, whose coefficient (or coefficient matrix in multidimensional case) becomes the control design objective � Stiffness (or rigidity) and compliance are reciprocal terms measured by the stiffness coefficient k or its inverse 1/k Basilio Bona 20 ROBOTICS 01PEEQW - 2016/2017
Passive Compliance Control � The robot compliance can be altered using passive components, i.e., adding suitable devices on the robot wrist, that react to external forces in a predefined satisfactory way. � A Remote Compliance Center (RCC) inserts a passive device able to apply different level of compliance between the robot and the external surface; in the case shown below the compliance is higher in the lateral direction, while in vertical direction the device is quite rigid Basilio Bona 21 ROBOTICS 01PEEQW - 2016/2017
Passive vs Active Compliance Control � Unfortunately these devices are of limited use, since they are not adaptable to different environments, mainly when the robot must move and at the same tine apply controlled forces/torques to the external environment � Therefore active compliance control is suggested, since is more versatile, allowing an active control of the interaction forces. � The price to pay for versatility is � Increased control complexity � Approximate knowledge of the physical characteristics of the surfaces in contact with the robot. Basilio Bona 22 ROBOTICS 01PEEQW - 2016/2017
Recommend
More recommend