We demonstrate the advantages of using two robotic arms simultaneously in tight assembly operations. We provide a new end-to-end framework which outputs an execution plan for the robotic arms given their digital CAD models. Our method is implemented both in simulation and in real-life, with theoretical and empirical guarantees on its performance. In particular, we show that simultaneous movement of two arms significantly reduces execution time, produces trajectories of higher quality, and accelerates the search time for valid robot placements. Furthermore, we provide guarantees on the bounds of the required dimensions of the robotic cell.
Our framework transforms assembly part designs into coordinated joint-based trajectories for two robotic arms. The system handles the complex task of planning synchronized movements while maintaining precise control over both arms throughout the assembly process.
Continuous Path-Wise IK (CPW-IK) is a fast dynamic programming based algorithm, which guarantees to provide only feasible trajectories, with bounded error. We build a layered Directed Acyclic Graph G in joint space, where each layer πΏπ represents time stamp π in the trajectory, and each row refers to a specific branch of the robotic arm. We then add start and end dummy nodes s and t to the graph. Node π β πΏπ is connected to node π β πΏπ+1 if and only if their πΏ1 distance in C-space is smaller than some predefined threshold. Next, we perform a search for a directed path in G from s to t with the minimum maximally-weighted edge.
We decide the alternation intervals in advance. That is, we split the interval \([0, 1]\) into \[ [0, 1] = \bigcup_{j=0}^{m-1} [t_j, t_{j+1}]. \] Exactly one of the following motion patterns is maintained in each of the intervals: (i) only arm \(R_1\) moves; (ii) only arm \(R_2\) moves; or (iii) both arms \(R_1\) and \(R_2\) move simultaneously. In this work, we split \([0, 1]\) into \(m\) equal intervals, although a more elaborate search can be performed. We start with the first interval \([t_0, t_1]\), and evaluate all three options. Note that each pattern yields a different pose in joint-angle space at time \(t_1\). We then recursively construct a search tree, connecting each node, that ends at time \(t_j\), to all three possible motion patterns of the following interval \([t_j, t_{j+1}]\).
Finally, we find the shortest path in the search tree. We can optimize over various metrics by choosing a weight function over the edges. In this work, we optimize over makespan.
Four classic challenging assemblies were solved by the framework, using physical robotic arms and in simulation.
To quantify the performance improvement of using two robotic arms, we conducted extensive experiments comparing single-arm and dual-arm configurations. Below are the results showing the execution times for each assembly type:
The minimum total running time (makespan) over 100 valid placements, expressed in degrees (as angular speed can be decided), for each assembly. The Single-arm row refers to settings where one object is static, and only a single arm moves. The Dual-arm row refers to settings where both arms are moving together. Time saved is the time saved when using two robotic arms, compared to a single one.