# A Practical and Effective Layout for a Safe Human-Robot Collaborative Assembly Task
## 1 Introduction
The geometry and position of the obstacles are known and are given as inputs to the path planner algorithms. The planner produces a path from the initial state to the target state that avoids the obstacles. On the other hand, local strategies use local spatial information and do not require a global knowledge of the workspace. The local control algorithms can modify online the trajectories of the robot to avoid moving obstacles, but they do not guarantee the reaching of the target. Local strategies are preferred when dealing with dynamic environments, since fast algorithms are needed to update the robot trajectory. The various aspects that have been introduced indicate that collaborative robotics is a complex scenario. More precisely, the highest level of collaboration, which has been identified as \"responsive\", is a synthesis of the whole set composed of cobot, operator, tracking system, and control strategy for the safe accomplishment of a task. This work presents a practical and effective layout for responsive collaboration that goes in the direction of the SSM approach and that can potentially increase productivity in semi-automatic assembly processes where the human and robot tasks can be parallelized. The layout and the control strategy described here combine the major outcomes of the previous works [13; 14; 15; 16; 17; 18; 19; 20; 21]. The layout is composed of an assembly table, a collaborative robot UR3 from Universal Robots mounted in front of the operator to facilitate the range of movements [22], a vision system made of two Microsoft Kinect v2 and three computers. A 3D visual servo control based on optimized skeleton tracking and repulsive velocities is implemented to drive the robot away from the operator. In particular, the proposed layout is designed to exploit the advantages of the highest level of collaboration in a specific assembly task. The idea is to employ a human worker in the added value operations of the task, i.e., assembly, while letting a robot collect the parts to be assembled and deliver them on the assembly table, where the human operates. Thanks to the collision avoidance algorithm, the operator can access the shared workspace anytime, without being influenced by the presence of the robot. Since the paper focuses on the assembly task, the major results among the most recent or promising studies are reported. Due to the severity of the standards, the real-world application is mainly limited to sequential collaboration. For example, a collaborative cell for the assembly of an homokinetic joint is presented in [23]. This is a significant example of how collaboration can improve the employee health in terms of musculoskeletal disorders, but the case is limited to a sequential task so that the robot stops if a camera detects the human hand in the proximity of the robot tool. Another case study focuses on the introduction of an UR3 robot in a pocket assembly cell, to mitigate the physical fatigue of the worker [24]. However, the operator has the role of a supervisor and a laser scanner triggers a safety stop if the human accesses the robot workspace. Since safety stops may affect productivity, researchers are moving towards a better integration of the robot, the vision system, and the control strategies for a higher level of collaboration. In the following, some examples of the most recent control strategies are reported that have been applied to pick-and-place, which is relevant for the purpose of this work since it is intended as a subtask of the assembly process. The authors of [25] proposed a method which is based on a depth camera and dynamic safety zones. The strategy in [25] activates stopping trajectories only if the distance between the human and robot bounding volumes exceeds the threshold defined by the standards. An improved sensor fusion algorithm based on a multiple depth camera and real-time collision avoidance by means of an optimization problem are presented in [26].