**1. Introduction**

Due to rapid changes in production demand and to product changes, new challenges have arisen in the manufacturing of products, a trend that has increased throughout the years and has affected most of the industry. Therefore, more robots that work in an unstructured environment for assembly tasks will be required in factories, where fixtureless operations could be executed, giving high flexibility to the production processes [1].

Considering that current automation systems do not support intelligent solutions for assembly tasks, a great opportunity arises, that is, to develop practical methodologies to include machine learning algorithms in assembly problems with robots. When non-desired contact among objects occurs, the assembly cycle requires assistance from an operator. Moreover, in automated cells, when such conditions appear, the robot is programmed to reject the assembled components and start a new cycle. This represents a delay in the production schedule and additional costs due to scrap generation.

Dual arm robots have already been deployed as research projects. New methods have been proposed to achieve different manufacturing tasks. However, assembly tasks with dual arm robots have not yet been broadly studied. They have been reviewed in [2], among some advantages of using the dual arm configuration and trying to execute more tasks in an unstructured environment. In previous work, we had presented the study of the assembly

**Citation:** Ortega-Aranda, D.; Jimenez-Vielma, J.F.; Saha, B.N.; Lopez-Juarez, I. Dual-Arm Peg-in-Hole Assembly Using DNN with Double Force/Torque Sensor. *Appl. Sci.* **2021**, *11*, 6970. https:// doi.org/10.3390/app11156970

Academic Editors: Luis Gracia and Carlos Perez-Vidal

Received: 17 June 2021 Accepted: 14 July 2021 Published: 29 July 2021

**Publisher's Note:** MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

**Copyright:** © 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/).

process of a starter motor using fixtures to position components and applying neural networks for contact state identification [3]. It also has been pointed out that controlling a dual arm robot for an assembly task can be very challenging [4]. Research has also focused on the performance of dual arm systems to assemble an automotive component, trying to imitate human-like activities [5]. Among the advantages, there is higher manipulation capability, flexibility, and stiffness [6]. Moreover, stiffness can be controlled or adjusted when both arms make contact with an object [4]. The advantage of using not only one arm robot but two arms is presented in [7], even avoiding the use of force-torque sensors in [8]. Tele-operation activities using visual servoing and manipulation of a single object with both arms is presented in [9]. To process contact states, direct policy search using linear Gaussian controllers has been proposed in [10]. Regarding the difficulties of programming the dual arm robots, a framework for task oriented programming that decomposes complex activities in simpler ones has been proposed [11]. Another matter of study has been humanlike operations and analysis of the peg-in-hole problem, the same way a human executes this task in [12].

Regarding the peg-in-hole problem, as the most studied research case for an assembly task, there is extensive literature that presents different points of view and issues. With regard to how to consider the assembly task, a definition of assembly primitives has been proposed [13]. It has also been described as "the basis of a wide range of component assemblies" where two main strategies can be considered, contact model based and contact model free in [14].

In the case of model free strategies, it is known how reinforcement learning finds a solution without knowing the models of the robot [15]. Another study proposes skill acquisition, where low accuracy of conventional methods is compensated by a learning method without parameter tuning [16]. For the case of peg-in-hole with a dual arm robot, a three step method inspired by humans operations is designed in [17]. Seed works that inspired many recent studies such as force/toque maps [18], self-organizing maps [19], reinforcement learning [20], and event discrete systems [21].

Impedance control and force control methods have been reviewed in [14], but most industrial setups work on positional control methods [22]. Working with industrial robots isn't simple; the lack of easy development tools for programming, integration of perception technologies, and computational power are some challenges which limit the development of technical solutions for complex problems in the industry [23].

This paper presents a novel approach to investigate the peg-in-hole assembly with a dual arm robot. An industrial dual arm robot is programmed to follow a sequence of steps to achieve a peg-in-hole assembly task. A positional error is defined and an assembly strategy to error recovery based on classification of contact states is proposed. Classification is investigated using Deep Neural Networks (DNN) to learn the force/torque (F/T) patterns of defined contact states. The novelty of the investigation lies on the use of a double force/torque sensor (F/T sensor), to increase the number of features the DNN learns.

It also considers the integration of a DNN model as a trigger condition into a discrete event controller. In order to test the proposed strategy, the dual arm robot system is integrated with the Robot Operating System (ROS) and two force/torque sensors mounted on the wrist of each robot arm. To evaluate the performance of the assembly strategy using two scenarios, the first by training the DNN with one F/T sensor and the second with double F/T sensors, experiments were executed and the number of completed assemblies are counted for calculation of Success Ratio for each scenario.

The article is organized as follows: after this introduction, Section 2 presents the related work and original contribution. In Section 3, the methodology that includes the description of the test bed is introduced, while the results are explained in Section 4. Finally, Section 5 provides the conclusions and further work.
