Force sensing and force control are increasingly used in the broad field of robotics, although only a minority of robots today make use of this exciting technology. In this post, I’ll provide an overview of the history of force sensing and force control in robotics. Before diving in, let’s first look at why force sensing is required for some applications.
Why Force Sensing?
The history of robotics provides good insights about what robots were first designed for and how they evolved to what they are today. Indeed, the industrial robots that emerged in the 1970s were almost all deployed for welding, mainly in the automotive industry.
Welding requires very high repeatability—that is, the robot needs to do the exact same motion over and over again. However, welding does not require high adaptability, because the robot never applies force to the parts being welded.
Because repeatability was the most important characteristics of the first robots, they were designed from the start to be very stiff. Over the years, the designs were optimized for stiffness and the manufacturing cost and quality of the robot joints reached unprecedented heights. When targeting new applications that require adaptability instead, it was therefore more convenient to use a standard stiff robot equipped with a sensor at its end-effector (tool).
For example, a robot intended for assembly or finishing tasks would be equipped with a force sensor that continuously measures the contact forces. An algorithm would then compensate the robot motion based on these measurements.
First Approaches to Force Sensing
The initial approaches to force control involved analog force-torque sensors connected to digital acquisition cards inside an external controller. Some control algorithms would run on the controller and command position offsets to the robot, compensating the motion according to the sensor readings. It was difficult to use standard industrial robots with this approach, because their controllers were closed and had to be programmed in the dedicated programming language. Only experts could use this approach.
Gradually, the industrial robot makers adapted their controllers to be easily retrofitted with force-torque sensors. A customer could buy an optional force control module that would enable force control on the robot, programmed through the standard programming language.
This approach is widely used today by industrial robot integrators, some of which specialize in force-control applications. The required level of expertise is still quite high, though, because many parameters need to be adjusted to obtain good results.
These days, robots are evolving for easier deployment. This is especially true for force-control applications, which are typically more complex. Furthermore, today’s robots, especially collaborative robots (or cobots), are built on more open platforms that allow third-party companies to compete to develop components and software that are easier to deploy.
For force control, this means that it is now possible to install a third-party force-torque sensor easily on a robot and program force control using a simple graphical user interface. New functionalities have been unlocked, like “contact detection” and other simple force functionalities, and hand-guiding of the robot, which is useful for teaching tasks.
But although force-controlled trajectories are now simpler to implement, a certain level of expertise is still required to combine the right instructions and set the parameters properly.
Some robots are now equipped with force sensing by default, either through a force-torque sensor at the wrist or through torque sensors at each joint. Including these sensors in each unit produced greatly reduces the cost of hardware and optimizes the design to avoid external sensor cables, which can be prone to failure in production.
This also makes force control more or less a software-enabled capability of the robot, allowing more third-party developers to innovate for further simplifying cobot deployment.
A recent trend that makes robots even easier to deploy is application-specific force-control software. For example, a piece of software dedicated to finishing applications can be configured using parameters that are relevant to the process itself, thereby removing the need to program many complex robot-related concepts, like singularities or frames. The application-specific software can also control other parts of the process, such as starting the finishing tool or generating robot trajectories that are relevant to that application only.
The Future of Force Control
We are in an innovative phase of robotics, and as such it is hard to predict what will happen in the next ten years. If I had to pick one potential development for force control, I would say that the next generation of robots might be specialized to some applications.
Robots today are embedded with more and more sensors, but they are still using stiff joints and are optimized for repeatability, even though this is not required for every application. Having robots that are built from the ground up to perform force control applications like finishing could lead to robots that are better-performing, less expensive, or both.
That being said, it’s hard to beat decades of improvement on a specific technology so it may well be that current robots will be difficult to surpass. Let’s see!