Technical Article

Advanced Control Techniques for Collaborative Manipulators

June 09, 2020 by Akshay Kumar

Learn all about the collaborative robots (cobots) that work alongside humans and the many advanced strategies put in place so they can function efficiently and safely in industrial settings.

Collaborative robots or cobots is a category of robots designed to work alongside humans instead of working in secured and isolated environments. Cobots can operate autonomously without the need for special arrangements for isolation from humans. Using sophisticated modeling, sensing, and control strategies, these robots are able to interact with humans and continue working without interruption while still being safe.

The most common advanced control techniques used by collaborative robots are impedance control, adaptive control, and robust control. This article discusses the common control techniques for safe and autonomous operation of collaborative robot manipulators and their commercial applications to the industry.

What are Collaborative Manipulators?

Collaborative manipulators refer to the category of robots that a worker alongside can hold or move around to make it work on the mundane or critical aspects of the job while he/she can handle the more intricate sections of the task. For instance, a collaborative manipulator can be used to tighten the nuts on a bolt while the human just places the nut on the bolt thread, and the manipulator does the torquing and screwing motion using hybrid force-position control and sensing

Conventional robots working since the 1980s have stringent safety measures that usually stop the robot instantly upon sensing human intervention. These security measures include virtual geofencing, pressure plates, and safety cells. These robots heavily rely on external sensing systems around the robot to detect human presence.

Figure 1. Safety aspects of non-collaborative manipulators

The most useful human-robot collaboration happens in manufacturing, packaging, sorting, and product finishing industries. These industries are run with collaborative robot arms where humans interact deliberately with them to complete the task. Exchanging workpieces with the robot, handheld training for the robot, and stopping the robot when needed by holding it are all examples of collaborative robot use.

Collaborative manipulators do not compromise on the safety aspects while blurring the boundaries between human and robot actions and use advanced control and sensing strategies, collaborative robots to invoke recovery mechanisms when an unintended intervention is observed.

The joint position vector of the robot is defined by $Q_{robot}&space;=&space;[q1,&space;q2,&space;q3,&space;q4,&space;q5]$ and the 3D Cartesian pose (position and orientation) are defined as $P_{robot}&space;=&space;[(x,y,z),&space;Euler(\alpha&space;,\beta&space;,\gamma&space;)&space;\;&space;or&space;\;&space;Quaternion(qw,qx,qy,qz)]$.

Figure 2. Robot Manipulator Cspace and task space

Control techniques are responsible to eventually derive the joint torques sufficient to track the desired joint values for q and $\dot{q}$.  Usually, manipulators used in the industries are meant to do repetitive tasks over and again without much intervention or break and thus operate in strict position control mode. Part assembly or pick-and-place tasks only need the robot to achieve the same position, in joint space or in task space, thus conventional tight position control strategies suffice. Conventional control methods can be model-free like in linear PID and its variants like gain scheduling PID or cascaded PID, or model-based like proportional-derivative (PD) plus gravity compensation and computer torque control.

Collaborative robots ideally allow being nudged around and not extremely firm in their position, making them accepting of human interaction. This requires control techniques that do not run a tight-position controller but direct torque control on the robot joints or selective position control or hybrid control and its variants like impedance control or robust and adaptive control.

Impedance Control

Impedance control is the method of controlling the end-effector of the robot in a non-conventional mode that can comply with force as well as position instructions. It allows for the definition of dynamic behavior for the interaction between the robot's end-effector and workpiece in the environment. Desired interaction behavior uses a dynamic impedance model, usually a mass-spring-damper system which is decoupled and may be linear or nonlinear.

The impedance model obviates the need to design an explicit model for the reaction forces (which needs information about the deformation, rigidity, and other properties of the environment) and mere tuning of the coefficients of the mass-spring-damper model produces very acceptable results.

For applications where the interaction forces are small and can be accommodated by reducing tolerance in position space, an impedance controller is used. The trade-off between the position accuracy and handling interactions is determined by the stiffness in the impedance model. This means the robot can be maintained in force/position control in certain directions and tight position control in others.

For a common industrial application like deburring or etching, the end-effector needs to interact with a surface with a certain sense of compliance in order to accommodate the interaction forces. However, these interaction forces are only along the normal of the contact position while the position in the plane needs to be maintained. Thus, the Z-direction operates in force control mode (by reducing the stiffness) while the X and Y directions are held in tight position control.

Figure 3. Impedance control for an etching task

A standard manipulator with the dynamic model is represented by:

$M(q)\ddot{q}&space;+&space;C(q,\dot{q})\dot{q}&space;+&space;G(q)&space;=&space;\tau&space;+&space;J^{T}(q)F$

where qis the joint state vector for the robot and M, C and G are the mass, coriolis, and gravity matrices respectively for the dynamical model of the manipulator. The joint torque vector is and F is the end-effector Cartesian force comprising the linear and angular forces. The J matrix is the geometric Jacobian of the robot that relates the Cartesian velocity against the joint velocity vector.

The Cartesian force is defined as:

$F&space;=&space;[\gamma&space;\delta&space;]^{T}&space;\;&space;\epsilon&space;\;&space;T&space;R^{M}$

where γ and δ are the linear and angular forces.

The dynamic model can be converted from the joint space to Cartesian coordinates as:

$M_{X}(q)\ddot{x}&space;+&space;C_{X}(q,\dot{q})\dot{x}&space;+&space;G_{X}(q)&space;=&space;F_{a}+&space;J_{a}\;^{T-}(q)u$

where xis the 6D robot pose and $M_{X},&space;C_{X},&space;\;&space;and\;&space;G_{X}$ are the restructured mass, Coriolis and gravity matrices respectively, in the Cartesian space. $J_{a}$ is the analytic Jacobian for the system. Geometric and analytic Jacobian is defined as $J(q)\dot{q}&space;=&space;[\dot{p}\;\omega&space;]&space;=&space;v&space;\;&space;and\;&space;J_{a}(q)\dot{q}&space;=&space;[\dot{p}&space;\;&space;\psi&space;]&space;=&space;\dot{x}$ where $\omega$ is the angular velocity of the robot’s end-effector while $\psi$ is the derivative of the Euler angles.

The dynamic impedance model defining the external Cartesian force F_a is designed as given below and is the basis for impedance control.

$B_{m}(\ddot{x}&space;-&space;\ddot{x}_{desired})&space;+&space;D_{m}(\dot{x}&space;-&space;\dot{x}_{desired})&space;+&space;K_{m}(x&space;-&space;x_{desired})&space;=F_{a}$

where $B_{m},&space;D_{m}&space;\;&space;and&space;K_{m}$ are the mass, damper and spring coefficients while $x_{desired}$is the desired pose of the robot’s end-effector and others are its derivatives. Using the mass-spring-damper model for the external forces, and keeping $x_{desired}$slightly into the environment plane, the robot can ensure constant contact with the surface thus maintaining appropriate force interaction and satisfying position instructions.

Figure 4. Mass-spring-damper system

All conventional dynamics-based controllers believe their knowledge of the robot is accurate. However, exact robot models and system knowledge are almost impossible to derive. The M, C, and G matrices are highly non-linear and linearization of the robot model is not ideal for accurate solutions. Thus, to avoid system instability and suboptimal performance due to the unknown system-level elements like mass distribution, link lengths, and actuator-level elements like backlashes, gear slips, friction, and wear-and-tear effects, robust and adaptive control techniques have been developed.

Robot arms are also supposed to work while manipulating different workpieces. Achieving satisfactory performance during actions like lifting and moving different unknown loads around, and pushing and nudging workpieces, is difficult at all times. Robust and adaptive controllers are capable of handling unprecedented and uncertain payloads for the robot, throughout its motion.

Figure 5. Adaptive Controller comparing the robot params against current behavior

Adaptive control is one of the most suitable robot control methods to accommodate system nonlinearities and robot dynamic model uncertainties. The control technique ensures the robot is insensitive to parameter and payload variations and does not have computational overhead either.

Robust control is, however, only suitable to achieve good performance in terms of stability or tracking error, only within known and small ranges of parametric uncertainties. Adaptive control, on the other hand, is capable of adapting to the evolving variations in the system and thus implement, in layman terms, an online parameter estimation that accommodates unbounded variations. Thus, adaptive controllers are able to gradually reduce the errors over time and they eventually converge to near ideal value while robust control may be able to account for the errors, but never reduces it over time. However, adaptive controllers need to be configured for particular types of uncertainties — one meant for payload uncertainties may not be feasible for system modeling inaccuracies.

A linear adaptive controller for the robot joint torques can be defined by $\dot{x}&space;=A_{M}x&space;+&space;B_{M}r$ where x is the reference state vector and r is the reference input to the robot.

Figure 6. System Identification Analogous Behavior for Adaptive Controller

Most common robust control methods are linearization-based robust control and passivity-based robust control. Model-reference, self-tuning, and linear perturbation adaptive controllers are the most common from this category. The mathematical derivation is outside the scope of this article, but both of these controllers eventually use concepts of Lyapunov stability to derive the final additional element introduced in the dynamic equation for the robot mentioned above.

Gravity Compensation

While not a control algorithm strictly, gravity compensation is the method of applying the torque that offsets the load inflicted on the robot by the effect of gravity. This is a very useful algorithm for all kinesthetic teaching applications available in collaborative robots where an instructor moves a free-floating robot around, teaches it the moves necessary for the task to be performed, and records the movement. Thus, gravity compensation needs the position of the robot to calculate the static effect of robot configuration on the robot.

Commercial Applications of Advanced Control Techniques

Cartesian force control applications have been the most recently explored domain for manipulators since the advent of cobots. Largely, dynamically-controlled contact forces ensure the consistent performance of the robot on the workpiece.

Deburring, polishing, painting, machine tending, variable load handling, and torquing are the most common applications that use the advanced techniques discussed above. Impedance control is designed with slight penetration along the direction of interaction and used for applications like deburring and polishing. Robust and adaptive control techniques can handle variable load making them suitable for painting or pick-and-place applications for heavy but unknown load with known/expected variation.

Review Of Control Algorithms

With more industrial applications being discovered for robot manipulators, the evolution of performance characteristics for robot control is imminent. For example, sophisticated task requirements like trajectory tracking and motion smoothness introduce more control variables and thus these strategies discussed above are augmented to achieve the desired performance. Force/torque and position are the only dimensions for controlling manipulators and further potential solutions, like the above-mentioned techniques, are sure to be mere manifestations of the same that allow user definitions for the results.