Much of the world we interact with is solid and inflexible. We manage to navigate this environment without damage because our own bodies are tractable and ‘bendy’ – rigid bodies in a rigid environment is a recipe for damage. Common problems include vibration, backlash, unrecoverable hardware configurations leading to singularities or lockups.
Adding compliance to a mechanical system is one way to reduce or eliminate these problems – it also makes them safer for humans, and allows the system to adapt itself to external conditions. Compliant robots are more robust, safer, and human-friendly than their rigid counterparts.
Compliant design can be roughly broken down into two streams – passive vs active. Active compliance requires force-sensing elements, which then allow us to adjust the behaviour of the system depending on the external forces being sensed. This gives us a lot of control over the system dynamics, and allows for on-the-fly automatic tuning to adapt to different conditions. The major downside is that it works only when powered on, and electrical faults or current spiking can create serious problems with the potential to result in injury for humans, or damage for the hardware. Additionally, we must anticipate where force sensing is required, and depending on the joint or actuator type, it may not always be trivial to obtain accurate measurements or disambiguate between internal or driving forces, and unexpected external impedance.
Some examples of active impedance control in robotics and rehabilitative devices: The Barrett arm, Baxter, Lopes
Conversely, passive compliance involves building compliant elements into the actuation of the robot itself. This generally comprises the use of soft mechanical components, like springs and pneumatic elements, which do not require power to give them elasticity. We can also take advantage of the energy-storage capacity of compliant systems, which make them more efficient than purely motor-driven elements. Additionally, passive compliant mechanisms are much safer than active ones, however due to their lack of rigidity they are notoriously difficult to control, and cannot be tuned as quickly or readily as active approaches.
We can eliminate some of the issues with passive compliance while retaining their most useful features by using parallel methods of actuation. For example, a motor linked to a rigid body with springs (PEA/SEA), or using parallel springs with different force constants to provide a customized force curve for a particular joint or linkage. Parallel actuation is usually not considered when building robots, as it is seen as redundant and not cost-effective, however the advantages are several. Not only can we link several types of actuator to get the best elements of each, we can improve the sensing and force bandwidth by using one mechanism at eg. low speeds, high power, and another which responds quickly but with low force output. That said, getting multiple elements with different characteristics, response speeds and linearity to play nicely with each other is not necessarily trivial – at my current job we’ve been working on tuning one particular type of hybrid system for some months now. Nevertheless, hybrid actuation schemes have huge potential and should, in my opinion, be far more common than they currently are in robots, particularly those designed for HRI.
Additional reading: a nice talk about the compliant elements of COMAN from Nikos Tsagarakis of IIT