Collaborative Industrial Robot Control: from Safe Motion to Multi-Robot Manipulation

Abstract: 

It has been over five decades since the introduction of industrial robots. They have transformed many industries, from automotive and semiconductor manufacturing to material handling and food processing. The vast majority of industrial robots today operate in teach-and-repeat mode based on interpolation of the taught way points using the teach pendant. Once the taught motion is finalized, the robot operates behind the closed cage without any human involvement. This programming-by-teaching process is elaborate and time-consuming, with many trial-and-modify steps to fine tune the final robot tra- jectories. There are off-line programming tools which uses CAD model and visualization to aid robot programming. However, the basic approach of teach and playback remains the same. The effort to teach a robot to perform a specific task also makes repurposing a robot for different tasks an expensive and time consuming proposition. Compounding the problem is that industrial robots have their own programming languages, e.g., INFORM for Motoman, RAPID for ABB, KAREL for FANUC, V+ for Omron/Adept, VAL3 for Staubli, KRL for Kuka, which are not interoperable. It is therefore rare to see robots from different vendors in the same manufacturing cell. External sensors, such as machine vision and force/torque sensor, has the potential to adapt the robot the variation in the workspace. But the incorporation of these sensor into the robot program is robot vendor specific and difficult to port to different systems. Furthermore, the use of sensors in industrial setting has been limited to look/sense-and-move variety, rather than continuous feedback for motion correction and modification. Human guidance is traditionally done through teleoperation, remotely using a joystick type of input device. Vision and sometimes force feedback for contact or insertion types of tasks may be fed back to the operator, but the integration of sensors with operators is rarely done for industrial robots. There is a new breed of so-called collaborative robots which are light weight and have built-in joint torque sensing to detect collision. Baxter and Sawyer by Rethink Robotics and UR robots by Universal Robotics are examples this class of robots. They are safer to operate around human, but lack of the payload capacity, speed, and precision as the traditional industrial robots.

This chapter will describe our work in bringing sensor-based operation and human collaboration to industrial robots. We will consider industrial robots which are not human-collaborative in a traditional sense, as well as collaborative robots de- signed for human interaction. The goal is to demonstrate a general framework that integrates sensors and human input in a consistent, efficient, and friendly software and control architecture.

The glue to this architecture is the middleware that ties together the many components of the system, from robot controllers, sensors, to human interface devices. It is like a common language among the cacophony of devices to ensure efficient and effective communication. We will discuss a middleware initially developed in our lab, Robot Raconteu, and its integration with the popular Robot Operating System (ROS).

Our approach to sensor and human integration into the robot operation is through the use of the outer loop which sends commanded joint motion to the robot joint servo controller (the inner loop). The outer-loop controller determines the robot motion command based on sensor readings and human commands. It may be used to coordinate multiple devices, including possibly multiple robots (of different types, e.g., articulated robots and mobile bases), sensors (vision, point cloud, force, proximity, tactile, etc.), and humans (through input devices, e.g., gesture, joystick, verbal). These devices may operate at different sampling rates, which may not be at regular intervals (i.e., non-real-time). The outer-loop control will generate sensor-driven motion to achieve desired goals while ensuring safety.

Outer loop control implicitly assumes a very good joint level servo controllers that has fast response and high accuracy. However, the inner loop controller has its own characteristics, including dynamics, latency (time delay), and nonlinearity (configuration dependence). We will discuss characterization of the inner-loop controller, its impact on the outer-loop design, and its possible compensation.

Simulation is an important aspect of collaborative robot systems. It allows preview and visualization of robot operation and facilitates motion and task planning. There are powerful open source simulation and visualization software, ranging from rviz (ROS visualization tool) to OpenRave (kinematic simulation/planning and visualization) to Gazebo (dynamic simulation). Robotic companies may have their own simulation software, e.g., RobotStudio by ABB Robotics and MotoSim from Yaskawa Motoman . They are at varying level of readiness for custom integration. We will discuss our experience in incorporating these tools in the overall software architecture, drawing on their respective strengths.

We have applied the approach described in this chapter to a multitude of in- dustrial robots in various projects. To illustrate the capability and performance, we will draw on three examples: ABB IRB 6640 6-dof arm, Motoman SDA20 15-dof dual-arm robot, and Rethink Baxter 14-dof dual-arm robot augmented with a wheeled mobile base. The same approach to the software architecture is applied to all three cases, demonstrating the generality and versatility of the approach.

Reference:
John T. Wen, John Wason, Dan Kruse, Yuan-Chih Peng, Shuyang Chen (2020). Collaborative Industrial Robot Control: from Safe Motion to Multi-Robot Manipulation.

in Recent Advances in Industrial Robotics, edited by Craig Schlenoff, Venkat Krovi, Satyandra Gupta, Advanced Manufacturing Book series. World Scientific Series in Advanced Manufacturing "Manufacturing in the Era of 4th Industrial Revolution."

Publication Type: 
Book Chapters