Next Article in Journal
Contributions of the Communication and Management of Bad News in Nursing to the Readaptation Process in Palliative Care: A Scoping Review
Previous Article in Journal
Structural Design and Analysis of Multi-Directional Foot Mobile Robot
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Enhancing Adaptability and Autonomy in Cooperative Selective Compliance Assembly Robot Arm Robots: Implementation of Coordination and Rapidly Exploring Random Tree Algorithms for Safe and Efficient Manipulation Tasks

by
Claudio Urrea
1,*,
Pablo Sari
1,
John Kern
1 and
Hugo Torres
2
1
Electrical Engineering Department, Faculty of Engineering, University of Santiago of Chile, Las Sophoras 165, Estación Central, Santiago 9170020, Chile
2
Electronic Engineering Department, Faculty of Science and Technology, University of Azuay, Cuenca 010107, Ecuador
*
Author to whom correspondence should be addressed.
Appl. Sci. 2024, 14(15), 6804; https://doi.org/10.3390/app14156804 (registering DOI)
Submission received: 1 July 2024 / Revised: 27 July 2024 / Accepted: 1 August 2024 / Published: 4 August 2024

Abstract

:
In this study, a cooperative robotic system comprising two Selective Compliance Assembly Robot Arm (SCARA) robots was developed and simulated. An algorithm was proposed for the coordination of robots in cooperative tasks, along with a Rapidly exploring Random Tree (RRT) path planner for obstacle avoidance. The proposed system proved effective in transferring objects between robots and in handling various scenarios of variable complexity without collisions. The implementation of advanced trajectory planning and coordination algorithms significantly improves the adaptability and autonomy of robotic systems, allowing robots to predict and react to the movements of their counterparts and changes in the environment in real time. This capability is crucial for maintaining a safe and efficient work environment. The importance of synchronization and effective communication between robots is highlighted to avoid collisions and optimize trajectories and cycle times. All tests were conducted in virtual environments, allowing for the evaluation and refinement of the performance of the robots’ performance under controlled conditions. The positive results obtained in the simulations suggest that the system is well suited for future practical implementation in industrial and manufacturing applications, such as chemical handling, collaborative welding, quality inspection, among others. These findings underscore the potential of the cooperative SCARA system to improve the efficiency and safety in industrial applications using advanced algorithms and control techniques, establishing a solid foundation for future research and development in the field of cooperative robotics.

1. Introduction

Cooperative robotics and automation have generated growing interest in the scientific community and industry, owing to their potential to improve the efficiency and precision of manufacturing and other industrial applications [1,2,3]. Among the most widely used industrial robots are Selective Compliance Assembly Robot Arm (SCARA) robots, which are known for their high speed and precision in assembly and material handling tasks [4]. These types of robots stand out for their ability to move in a horizontal plane with high vertical rigidity, making them ideal for applications that require fast and repetitive movements with high precision, helping industries reduce costs, increase production, and improve the quality of their final products [5].
Cooperative robotics, which involves collaboration between multiple robots to achieve common goals, is an emerging field with considerable potential for transforming industrial processes [6,7,8]. However, the integration of multiple robots in a cooperative environment presents significant challenges, primarily in terms of movement coordination and obstacle avoidance, particularly in dynamic environments where conditions can change rapidly.
Coordination between robots is essential to avoid collisions and ensure that each robot completes its task without interference [9,10]. The main challenges include synchronization and task allocation, as well as route management, while detecting and avoiding both static and dynamic obstacles to prevent interruptions in their work and possible damage, as well as to avoid contact between robots. Effective communication and the ability to make quick decisions are necessary, adjusting their movements according to the actions of their counterparts and changes in the environment.
In the search for solutions, various authors have developed techniques to coordinate robots in cooperative tasks. One of the most notable examples is decentralized coordination, in which each robot makes decisions based on local information obtained from its neighbors. This method is highly scalable and efficient for large robot swarms in dynamic environments. For example, in [11], Gaussian belief propagation was used to handle multimodal distributions, improve coordination, and avoid collisions in real time for thousands of agents. This type of coordination allows robots to operate autonomously without the need for a central controller, thereby reducing computational complexity and intensive communication. Another relevant technique is altruistic coordination described in [12], which is based on each robot being willing to make concessions to avoid conflicts in congested environments. Robots use strategies such as waiting, advancing, dodging, retreating, and turning to adjust their trajectories and avoid collisions. This method allows for a quick response to changes in the environment and significantly reduces communication overhead because the robots only need to coordinate with those within their immediate communication network. The experimental results demonstrate that this strategy is both efficient and scalable, providing competitive solutions compared to other coordination approaches.
The use of probabilistic graphical models has also been prominent in multi-robot coordination, as detailed in [12]. In these models, robots are represented as nodes in a graph, and the connections between them indicate communication. This approach has enabled the development of robust solutions for the localization and control of robots in environments with dynamic uncertainty, using belief propagation to handle multimodal distributions and improve coordination in complex scenarios. The synchronization and coordinated control of multiple manipulators are other important areas of study in cooperative robotics, as mentioned in [13]. Centralized methods consider all robots to be part of a high-dimensional composite system and seek a global solution to avoid collisions. Although these methods can guarantee completeness and optimality, their resolution is computationally expensive, and they adapt well to real-time configurations. In contrast, decoupled methods plan trajectories individually, adjust speeds to avoid collisions, and reduce computational overhead while compromising optimality.
Decentralized Model Predictive Control (DMPC) and multi-criteria optimization algorithms have also been successfully applied to the coordination of dual and multiple robots, as indicated in [14]. These approaches plan over a time horizon to mitigate deadlock scenarios and improve the cooperation between robots. For example, optimization algorithms have proven effective in the coordination and collision avoidance of manipulator robots, improving efficiency and reducing execution time in shared environments.
The evolution of obstacle avoidance strategies in manipulator robots has been an area of intense research driven by the need to improve efficiency, safety, and flexibility in industrial and collaborative environments. The most notable feature is the use of enhanced artificial potential field algorithms. According to [15], a methodology that used a velocity field to guide the robot arms, optimize the trajectory, and improve the dynamic response capability was presented. This approach shows a significant improvement in the real-time obstacle avoidance capability, which is crucial for applications in complex industrial environments. Similarly, an adaptive approach that focuses on operator safety and robot flexibility was proposed [16]. This strategy dynamically adjusts the radius of the safety regions of the manipulator links based on the speed of obstacles. Detailed simulations demonstrate the effectiveness of adaptive control in different scenarios with dynamic and fixed obstacles, highlighting its versatility for manipulators with six degrees of freedom (DoF).
Another innovative approach is the sampling-based non-fixed orientation search method for cooperative manufacturing with dual manipulators. This method allows for greater flexibility in motion planning and improves the cooperation between manipulator arms during manufacturing tasks. Cooperative dynamic motion planning for dual manipulator arms, based on the Rapidly exploring Random Tree Smart Adaptive Dynamic (RRTSmart-AD) algorithm, enhances the efficiency and precision in trajectory planning in dynamic environments, enabling faster adaptation to changes in the environment and optimizing collaboration between the robot arms [17]. Trajectory planning for obstacle avoidance uses an improved Rapidly exploring Random Tree (RRT) algorithm for dual-arm robots. This approach focuses on optimizing trajectories and enhancing the responsiveness of robots in complex and dynamic environments. A hybrid control scheme for the navigation of multiple disc-shaped robots with independent goals within obstacle-filled environments utilizes a hierarchical cell decomposition methodology and harmonic transformations to ensure safe transitions between adjacent cells and near-global convergence to the desired configuration [18]. In the field of collaborative control, the use of deep reinforcement learning for dual-arm robots has shown promising results [19], allowing robots to autonomously learn and adapt to new tasks and environments, thereby improving their efficiency and collaboration capabilities. Additionally, collision avoidance for multiple robotic manipulators using a non-cooperative multi-agent game enables each robot to make decisions independently, quickly adapt to changes in the environment, and improve trajectory coordination efficiency in dynamic environments [20].
A method of impedance control for coordinated robots using state and output feedback was also presented, which improved the precision and stability of the manipulators when interacting with their environment [21]. Additionally, the modeling and coordinated control of multiple mobile manipulators with closed-chain constraints enables more efficient and safe trajectory planning, ensuring that the manipulators can operate synchronously without mutual interference [22]. Reinforcement learning, which has been explored in various studies, allows robots to learn from their environment and continuously improve their ability to avoid obstacles and plan optimal trajectories, adapting to changing and complex environments [23]. Collision detection and identification based on vibration analysis are other significant advancements that demonstrate how vibration analysis can be used to detect and prevent collisions in real time, thereby improving the safety and efficiency of robots in collaborative environments [24]. Finally, a comprehensive overview of decentralized approaches for collision avoidance in multi-robot systems is provided, highlighting the best practices and current challenges in the implementation of decentralized techniques and offering a solid foundation for future research and applications in trajectory planning and obstacle avoidance [25].
In the cooperative robotics literature, numerous studies have been conducted on control algorithms in robotic manipulators, some of which are detailed below.
Predictive control has been widely used to coordinate cooperative robots, allowing anticipatory trajectory planning and movement optimization in a shared space. One study highlighted the use of predictive control to manage the interactions between multiple manipulators in a shared environment, improve efficiency, and avoid collisions [26]. Additionally, predictive control has been applied to cooperative robotic systems in manufacturing, using one-touch memory to optimize injection molding processes [27].
Another investigation focused on predictive control in cooperative systems applied to bipedal robots and UAV–UGV coupling, prioritizing tasks to enhance cooperation between different types of robots [28].
Decentralized control allows multiple manipulators to cooperate without the need for a central controller, thereby improving system robustness and scalability. One study described a decentralized approach to force and motion control in cooperative manipulators, demonstrating that robots can maintain effective cooperation through local communication and distributed control strategies [29].
Sliding mode control (SMC) is a robust technique used to handle nonlinear dynamics and uncertainties in cooperative systems. Research has demonstrated the effectiveness of sliding mode control in cooperative welding tasks, providing precise and robust control of multiple manipulators [30]. In addition, finite-time cooperative control using the integral sliding mode was implemented to improve the stability and performance of the cooperative manipulators [31].
Neural networks offer advanced adaptive capabilities, which can be leveraged to control cooperative robots. One study proposed synchronized position control based on neural networks for multiple manipulators, achieving high cooperation precision [32]. Deep learning has been integrated into the control of cooperative robots to enhance their real-time adaptation and learning capability. A study presented a collaborative control method for dual-arm robots based on deep learning, highlighting the improvements in robot cooperation and performance [33].
Adaptive control is used to dynamically adjust controller parameters in response to changes in the environment or system characteristics. An adaptive variable impedance control approach with a Fuzzy-PI composite controller has proven to be effective in managing the interaction between cooperative robots and their environment [34]. In addition, adaptive obstacle avoidance for collaborative robots has been studied to enhance their ability to adapt to dynamic environments [16]. Another example is the application of half-derivative damping in Cartesian space position control for SCARA-type manipulators [35].
In addition, some researchers have explored techniques for collision-free path planning combined with position control to ensure that the robot accurately follows the trajectory. An example of this is the work of [36], which implemented neural network controllers to execute the trajectory and used an RRT path planner to generate it in robotic manipulators with four and seven degrees of freedom. Another example is [37], where an improved APF-RRT* algorithm was developed for motion planning, optimizing node selection and smoothing the path. In the field of mobile robotics, [38] developed an enhanced APF-RRT* algorithm for the motion planning of a mobile robotic arm and established a Fuzzy-DDPG-PID controller for the arm to follow the planned path. Studies on parametric uncertainty have also been conducted, such as in [39], which proposed a simple and effective adaptive control scheme that includes adaptation laws for unknown constant kinematic and dynamic parameters. Finally, refs. [40,41] present the implementation of fixed-time SMC tracking controllers for robotic manipulators in the presence of uncertainties and parametric disturbances.
The importance of this study is primarily based on the ability of SCARA robots to address cooperative task challenges using advanced trajectory planning and robot coordination algorithms. By implementing an RRT trajectory planner and nonlinear control techniques, the system enhances the adaptability and autonomy of robots. This enables them to predict and react in real time to the movements of another robot and changes in their environment, which are crucial for maintaining a safe and efficient work environment. In this context, this study focuses on the development, design, and simulation of control algorithms for coordination and obstacle avoidance in cooperative SCARA robots. The main objective is to create a system that allows multiple SCARA robots to work together efficiently in a shared environment, avoiding collisions and optimizing movement trajectories. To achieve this goal, advanced control algorithms have been designed, such as RRT algorithms, which integrate trajectory planning techniques that consider the positions and velocities of the involved robots and a predictive nonlinear controller to anticipate and adjust movements in real time, ensuring smooth and precise coordination.
The relevance of synchronization and effective communication between robots to avoid collisions and optimize trajectories and cycle times is highlighted. All the tests were conducted in virtual environments, allowing for the evaluation and refinement of the performance of the robots under controlled conditions. The positive results obtained in the simulations suggest that the system is suitable for future practical implementations in industrial manufacturing applications, such as handling of chemicals, collaborative welding, quality inspection, among others, which are performed in high-speed production environments. These findings underscore the potential of a cooperative SCARA system to improve the precision and speed of operations and allow greater flexibility in the design of production lines. By integrating advanced trajectory planning and control algorithms, the system can quickly adapt to changes in the environment and handle objects of different sizes and shapes, which is essential for personalized production and agile manufacturing. These benefits can translate into a significant reduction in cycle times, an improvement in product quality, and a decrease in operating costs.
This manuscript is structured into six sections:
In Section 1, the introduction and state of the art are presented, referencing various applications, in which robot coordination, obstacle avoidance, and control techniques are used.
In Section 2, kinematic and dynamic modeling of SCARA robots are developed. An algorithm to synchronize robots in cooperative tasks is presented, and possible collisions in the system are analyzed. An RRT path planner is implemented to plan symmetrical movements of the robots to avoid obstacles. Finally, two nonlinear control techniques are implemented: MPC and sliding mode control.
In Section 3, various virtual tests are conducted to evaluate and verify the correct functioning of the system under different scenarios.
In Section 4, the results obtained after conducting the tests are analyzed, and using performance indices, the behavior of the controllers is evaluated when the robots transport objects.
Section 5 presents the conclusions and future work of this research.
Section 6 presents the perspectives, including industrial applications where this study could be implemented, and the limitations and challenges of implementing the system in real-world scenarios.

2. Cooperative SCARA System

In this study, a cooperative robotic system composed of two identical SCARA robots was analyzed, and its specifications are listed in Table 1. Due to their identical configuration, both robots can work together on coordinated tasks, leveraging their high precision and speed in three-dimensional movements. By synchronizing their movements and sharing information, they optimize efficiency, increase load capacity by simultaneously handling objects, expand their work area, and improve precision in complex tasks. This collaboration facilitates the handling of large objects, enables the completion of intricate assemblies, and enhances the task distribution, thereby maximizing productivity. Figure 1 shows the SCARA system prototype, which was designed using SolidWorks (SolidWorks: https://www.solidworks.com/) 2022 software.
To determine the values of the mass, center of mass, and moment of inertia of each robot link, data obtained directly from SolidWorks 2022 were used, as presented in Table 1.
To implement correct trajectory planning and precise and efficient control in SCARA robots during cooperative tasks without collisions, it is important to perform kinematic and dynamic analyses of the robots, as this allows for the following:
  • Optimizing the movement of the robots: Through direct and inverse kinematic modeling, precise trajectories can be planned and executed, ensuring that the robots achieve their objectives accurately. In addition, a detailed model is essential for predicting and avoiding collisions in real time when multiple robots work together.
  • Implementing advanced controllers: Dynamic system modeling facilitates the implementation of sophisticated controllers such as Nonlinear Model Predictive Controller (NLMPC) and sliding mode control (SMC), which are used to improve the system’s stability and response to various internal and external disturbances.
  • Performing precise simulations: Detailed models allow simulations to be carried out in different software, such as MatLab, Simulink, and others, to evaluate the system’s performance in various scenarios. This helps to identify and correct potential problems, ensuring that the simulations closely resemble reality.

2.1. Kinematic and Dynamic Analyses of the SCARA Robot

SCARA robots are widely used in industry due to their efficiency and precision. With a configuration of three rotary joints and one prismatic joint, objects can be manipulated in a three-dimensional space. They are ideal for tasks that require speed and accuracy, such as assembly, material handling, and pick-and-place [42,43,44]. Although their load capacity and reach are limited compared to those of other industrial robots, their speed and precision compensate for these limitations. Furthermore, the cooperation between multiple SCARA robots allows the execution of more complex tasks and enhances productivity in various industrial processes. Figure 2 shows the prototype of an SCARA robot, which consists of three rotational joints ( J 1 ,   J 2 ,   J 4 ) that allow horizontal plane movement, and one prismatic joint J 3 that enables vertical movement of the end effector.

2.1.1. Direct Kinematics

The analysis of direct kinematics focuses on calculating the position and orientation of a robot’s end effector based on the angles of its joints, omitting the forces that induce movement and focusing on the geometry of the system [45]. Figure 3 illustrates the kinematic model of the SCARA robot, which serves as the basis for determining the values of the Denavit–Hartenberg parameters θ i ,   d i ,   a i   y   i , as detailed in Table 2. These values describe the spatial relationships between the robot’s links.
The homogeneous transformation matrices T i ( i n ) represent the location and alignment of a body in an n-dimensional environment. These are composed of four submatrices: the rotation matrix R 4 0 , position vector P , perspective transformation f , and global scaling w . Their analysis is presented in Equations (1)–(4).
T i i 1   = Rot Z i 1 , θ i   Tras Z i 1 , d i   Tras ( X i ,   a i )   Rot ( X i , i )
T 4 0 =   T 1 0 T 2 1 T 3 2 T 4 3 = R 4 0 P f w
R 4 0 = cos ( θ 1 + θ 2 θ 4 ) sin ( θ 1 + θ 2 θ 4 ) 0 sin ( θ 1 + θ 2 θ 4 ) cos ( θ 1 + θ 2 θ 4 ) 0 0 0 1
P = x y z = a 1 cos ( θ 1 ) + a 2 cos ( θ 1 + θ 2 ) a 1 sin ( θ 1 )   + a 2 sin ( θ 1 + θ 2 )   d 1 d 3 d 4

2.1.2. Inverse Kinematics

Inverse kinematics focuses on determining the specific angles and distances of a robot’s joints such that its end effector is positioned and oriented at a specific location in a three-dimensional space [46,47,48]. This process was approached using a geometric method along with trigonometric functions.
Given the configuration of the SCARA robot, the first two joints were responsible for generating movements in the XY plane. Therefore, the robot was projected onto this Cartesian plane to simplify the inverse kinematics analysis, as shown in Figure 4. In this context, using the cosine theorem, angle θ 2 can be calculated as expressed in Equation (11), which is fundamental for positioning the robot’s end effector at the desired location.
cos θ 2 = p x 2 + p y 2 a 1 2   a 2 2 2 a 1 a 2
θ 2 = arctan 1 cos ( θ 2 ) 2 cos ( θ 2 )
To determine θ 1 , we begin with Equation (7), which establishes the relationship between the geometric angles of the first two joints.
θ 1 = β α
Next, θ 1 is expressed as a function of the end effector coordinates and robot parameters in Equation (8).
θ 1 = arctan p y p x arctan a 2 sin θ 2 a 1 + a 2 cos θ 2
The prismatic joint d 3 of the robot represents a linear movement along the z-axis, which is defined as the difference between the height of the robot’s base, the desired position in z, and the height of the end effector, as shown in Equation (9).
d 3 = d 1 p z d 4
The fourth joint θ 4 determines the orientation of the robot’s end effector, facilitating its precise alignment with respect to the specific target or task to be performed, as shown in Equations (10) and (11).
α = θ 1 + θ 2 θ 4
θ 4 = tan p y p x + θ 1 + θ 2

2.1.3. Dynamics

The dynamics of a robot refer to the study of how forces and torques affect the movement of the robot. This includes an understanding of how external forces (such as gravity and friction) and internal forces (generated by the actuators of the robot) influence the acceleration and movement of various parts of the robot. Robot dynamics encompasses two main aspects: forward dynamics, which deals with calculating the forces and torques needed to produce a desired movement, and inverse dynamics, which focuses on determining the resulting movement given a set of applied forces and torques [49].
The angular positions of the rotational links are represented by θ 1 , θ 2 , and θ 4 , and the corresponding linear distances are d 1 and d 4 . Because the third link moves in a prismatic manner, its angle is zero, and its linear position is defined by d 3 . Rotational movements occurred in the XY plane; therefore, the potential energy of these joints was negligible. In contrast, the third joint introduces combined inertia because it is responsible for moving masses m 3 and m 4 .
The dynamic model of the manipulator is represented in Equation (12), which describes the relationships between the forces, torques, and movements of the various joints of the robot.
M i q i q ¨ i + C i q i ,   q i ˙ q i ˙ + G i q i = τ i
M i = M 11 M 12 M 21 M 22 M 13 M 14 M 23 M 24 M 31 M 32 M 41 M 42 M 33 M 34 M 43 M 44
  • M 11   = Izz 1 +   Izz 2 + Izz 3 + Izz 4 + a 1 2   m 2 +   a 1 2 m 3 + a 1 2 m 4 + a 2 2 m 3 + a 2 2 m 4 +
  • 2 a 1 a 2 m 3 cos θ 2 +   2 a 1 a 2 m 4 cos θ 2
  • M 12 = Izz 2 + Izz 3   + Izz 4 + a 2 2 m 3 + a 2 2 m 4 +   a 1 a 2 m 3 cos θ 2 + a 1 a 2 m 4 cos θ 2
  • M 13 = M 31 = M 32 = M 33 = Izz 3 Izz 4
  • M 14 =   M 24 = M 34 =   M 41 =   M 42   =   M 43 = 0
  • M 21 = Izz 2 + Izz 3 + Izz 4 + a 2 2 m 3 +   a 2 2 m 4 + a 1 a 2 m 3 cos θ 2 + a 1 a 2 m 4 cos θ 2
  • M 22 = Izz 2   + Izz 3 + Izz 4 + a 2 2 m 3 + a 2 2 m 4
  • M 23 = Izz 3 Izz 4
  • M 23 = m 4
C i = C 11 C 12 C 21 C 22 C 13 C 14 C 23 C 24 C 31 C 32 C 41 C 42 C 33 C 34 C 43 C 44
  • C 11 = C 13 = C 14 = C 23 = C 24 = C 41 = C 42 = C 43 = C 44 = 0
  • C 12 = a 1 a 2 sin θ 2 ( m 3 + m 4 ) ( 2 θ ˙ 1 + θ ˙ 2 )
  • C 21 = 1 2 a 1   a 2   sin θ 2 ( m 3 + m 4 ) ( 2 θ ˙ 1 + θ ˙ 2 )
  • C 22 = 1 2 a 1   a 2   θ ˙ 1 sin θ 2 ( m 3 + m 4 )
G i   = 0 0 9.8067 ( m 3 + m 4 ) 0
q i = θ 1 θ 2 d 3 θ 4 ;   q ˙ i = θ ˙ 1 θ ˙ 2 d ˙ 3 θ ˙ 4 ;   q ¨ i = θ ¨ 1 θ ¨ 2 d ¨ 3 θ ¨ 4
where
  • C i : Coriolis matrix.
  • G i : Gravitational forces matrix.
  • M i : Inertia matrix.
  • q i : Position vector.
  • q ˙ i : Velocity vector.
  • q ¨ i : Acceleration vector.
  • τ i : Torque vector.
  • m 1 ,   m 2 ,   m 3 ,   m 4 : Masses of links one, two, three, and four, respectively.
  • Izz 1 ,   Izz 2 ,   Izz 3 ,   Izz 4 : Moments of inertia of links one, two, three, and four, respectively, along the z-axis.
  • θ ˙ 1 ,   θ ˙ 2 ,   d ˙ 3 ,   θ ˙ 4 : Angular velocities of θ 1 ,   θ 2 ,   θ 4 and linear velocity of d 3 .
  • θ ¨ 1 ,   θ ¨ 2 ,   d ¨ 3 ,   θ ¨ 4 : Angular accelerations of θ 1 ,   θ 2 , θ 4 and linear acceleration of d 3 .

2.1.4. Actuators

An actuator is a mechanical device designed to generate force and movement. In the context of SCARA robots, DC motors play a crucial role as actuators, fundamental for the precise and agile control of movement, a distinctive feature of these robots.
In this SCARA system, DC motors are used and controlled by servomechanisms. These motors are specially optimized for applications that require high precision and repeatability. DC servomotors offer several advantages, such as precise control of position, speed, and torque, as well as a rapid dynamic response.
Upon receiving a voltage at its input, the motor converts electrical energy into mechanical movement through an efficient and controlled process, which is essential for controlling the axes of the SCARA robot.
The specific characteristics of the motor used in the SCARA robot prototype are detailed in Table 3, which includes parameters such as efficiency, torque, and speed. These parameters are essential for understanding the motor’s performance and its suitability for the tasks that the robot must perform. The motor’s efficiency influences the system’s energy consumption, while the torque and speed determine the robot’s ability to perform quick movements and handle different loads.

2.2. Synchronization of SCARA Robots for Cooperative Tasks

Synchronization of SCARA robots in cooperative tasks is crucial for improving the efficiency and precision of industrial and manufacturing environments, optimizing production, and ensuring quality. This involves multiple robots working symmetrically, sharing information, and adjusting their actions in real time, with precise planning and execution, effective communication, and adaptation to changes in the environment. Robust, low-latency communication among robots is essential for effective collaboration. This study focuses on applying the synchronization and cooperation of SCARA robots through the implementation of two algorithms, preparing them for future practical applications in industry and manufacturing. Therefore, two scenarios of cooperative tasks, in which the robots could work, were analyzed:
  • Tasks where an object needs to be moved from point A, located within the working area of Robot 1, to point B, located within the working area of Robot 2.
  • Transporting an object between both robots and moving it from one place to another in a coordinated manner.
To achieve this, it is essential to determine the working area of each robot and consider that the bases of the robots are displaced along the y-axis. Figure 5 illustrates the working areas of Robot 1 (orange), Robot 2 (blue), and the common area (green).
In the first scenario, Robot 1 picks up an object from point A in its working area and transfers it to point B, located in the area shared by both robots. Robot 2 then takes the object at point B and transports it to point C within its working area. Figure 6 shows an example of this process. It is important to ensure that all of these movements are carried out within the operational areas assigned to each robot to guarantee efficient and interference-free operation. It is also possible to reverse the process, starting with Robot 2 and ending with Robot 1.
In the second scenario, both robots simultaneously transferred the same object. Precise and symmetrical synchronization is essential, as they must coordinate their movements to handle objects together without causing misalignment or damage. Cooperation occurred in the common working area, where the operational areas overlap. This configuration allows for the manipulation of larger or heavier objects that a single robot cannot handle, thereby optimizing the working capacity and flexibility of the robotic system. Additionally, it is crucial to establish a shared reference point, defined as (x = 0, y = 0, z = 0), which serves as the basis for measuring the positions and movements of both the robots.
The system has the constraint that for the robots to move an object together, the center of the object must be within the common working area of both robots. Otherwise, the robots will not be able to reach the desired points, which could cause collisions.
Another possible collision can occur when robots collide with each other. This can happen if the coordination and synchronization of their movements are not precise, particularly if they do not exchange information about the positions of their links in real time. Collisions can occur when one of the robots moves into a position occupied by another robot or when both attempt to access the same point in the common working area simultaneously. Figure 7 shows an example of a collision scenario. Such collisions can result in damage to robots and their components, causing significant losses and prolonged downtimes during the production process.
To avoid collisions and ensure precise movements when the robots jointly transfer an object, the algorithm illustrated in Figure 8 was implemented.
This algorithm ensures exact synchronization and coordination, allowing robots to exchange information regarding the positions of their links in real time and dynamically adjust their trajectories to avoid interference and collisions. The objective of the algorithm is to coordinate the movement of the two robots to transfer an object from point A to point B. Initially, the system determines the position of the object and verifies whether its center is within the intersection of the working areas of both robots. If this condition is not satisfied, the movement of the object is not feasible, and the process ends. If the center of the object is correctly positioned, the trajectory planner generates an optimal path from point A to point B. Subsequently, the grasp positions for each robot at the ends of the object are calculated, defining specific contact points (TR1 and TR2) adjusted to the object length. See Figure 9.
The robots move to these contact points, and a collision check is performed. If no collisions are detected, the robots proceed to grasp the object synchronously. During the transfer, the system continuously monitors whether both robots maintain the correct grip on the object and verifies that the planned movement is completed. Finally, once the transfer is completed, the robots release the object and return to their initial positions, thereby safely and efficiently concluding the process. See Figure 10.

2.3. RRT Path Planner

RRT planning is a path planning method used to determine routes from an initial point to a target in a complex configuration space and is especially useful in high-dimensional environments with numerous obstacles. The RRT algorithm is based on the incremental construction of a tree that explores the configuration space by generating random points and extending the tree towards these points, thereby ensuring efficient and rapid coverage of the space. This technique is notable for its ability to address trajectory planning problems in nonlinear contexts with significant spatial constraints.
The RRT process begins with the definition of a root node x init at the robot’s initial position, a goal node x goal , which is the desired position for the robot, and a structure T that contains nodes and edges, where each node represents a configuration of the robot, and each edge represents a feasible movement between configurations.
When starting the planning, the root node is assigned to the structure.
T = x init
From there, random points are generated within the configuration space.
x rand ~   Uniform   ( C )
Using a distance metric, the nearest node x nearest from the existing tree to the randomly generated point x rand is selected, which must belong to T.
x nearest ~   argmin   dist   ( x ,   x rand )
dist   x 1 ,   x 2 = i = 1 n ( x 1 i x 2 i ) 2
The tree is extended from x nearest towards x rand , and a new node x new is created at a predetermined distance Δ t .
x new = x nearest + x rand x nearest x rand x nearest Δ t
x rand x nearest = i = 1 n ( x rand i x nearest i ) 2
If the proposed trajectory does not collide with any obstacles or the other robot, it is added as a new node to the tree T and connected to the nearest node via a collision-free path.
T = T   x new
This iterative procedure is repeated until one of the tree nodes x new is within a predefined distance from the goal x goal , thus forming a route from the start to the goal.

2.4. Controllers

Once the path planner obtains the most suitable route for the robots to perform collision-free movements in each scenario, they require a controller to correct any errors that may arise during the execution of these trajectories. These errors can occur due to inaccuracies in position measurement, variations in loads, fluctuations in motor performance, or changes in the environment. For this purpose, two controllers were implemented as described below.

2.4.1. Nonlinear Model Predictive Controller

The Nonlinear Model Predictive Controller (NLMPC) uses a mathematical model of the system to predict the future evolution of its states over a prediction horizon. This approach allows for anticipation and correction of potential deviations before they occur, thereby improving control accuracy and efficiency.
The NLMPC operates as follows:
  • Prediction: The controller predicts how the states of the system will evolve in the future using a mathematical model. This includes considering the nonlinear dynamics of robots and their operating environments.
  • Optimization: The controller aims to minimize the cost function, which generally includes the trajectory tracking error and energy or actuation usage, penalizing excessive energy use or excessive control actions to prolong the lifespan of the system and improve efficiency.
  • Control Action Calculation: During sampling step, the controller solves an optimization problem to determine the optimal sequence of control actions. This problem can be complex because of the nonlinearity of the system and operational constraints.
  • Implementation and Update: Only the first action of the optimized sequence is implemented immediately, ensuring that the system is robust against disturbances and modeling errors. In the next sampling step, the problem is reformulated using the newly measured or estimated state of the system. This ensures that the controller continuously adapts to changing conditions and maintains a precise control.
The optimization problem solved at each time step is formulated as follows:
J x u , u = x N + K = 0 N 1 L ( x k , u ( k ) )
The instantaneous cost function L ( x k , u ( k ) ) is defined as
L ( x k , u ( k ) ) = ( x ( k )     x ref ( k ) ) T   Q ( x k x ref ( k ) ) + u ( k ) T   Ru ( k )
and the terminal cost function x N is defined as
x N = ( x ( N )   x ref ( N ) ) T   P ( x N x ref ( N ) )
where x k : System state at time step k , with dimensions 8 × 1.
  x ( k ) = [ q 1 ( k )   q 2 ( k )   q 3 ( k ) , q 4 ( k ) q ˙ 1 ( k ) q ˙ 2 ( k ) q ˙ 3 ( k ) q ˙ 4 ( k )   ]   T
x ref ( k ) : Reference state vector or desired trajectory at time step k , containing joint positions and velocities, with dimensions 8 × 1.
x ref ( k ) = [ q ref , 1 ( k ) q ref , 2 ( k ) q ref , 3 ( k ) q ref , 4 ( k ) q ˙ ref , 1 ( k ) q ˙ ref , 2 ( k ) q ˙ ref , 3 ( k ) q ˙ ref , 4 ( k )   ]   T
u k : Control input vector at time step k , with dimensions 4 × 1.
u k = τ 1 ( k ) τ 2 ( k ) τ 3 ( k ) τ 4 ( k )
Q : Positive definite weighting matrix that penalizes the tracking error, with dimensions 8 × 8. Each element Q 1 ,   Q 2 , ,   Q 8 represents the weight assigned to each component of the state vector x k .
Q = diag ( [ Q 1   Q 2   Q 3   Q 4   Q 5   Q 6   Q 7   Q 8 ] )
R : Positive definite weighting matrix that penalizes the use of control inputs, with dimensions 4 × 4. r 1 ,   r 2 ,   r 3 ,   r 4 are the weights assigned to each component of the control input vector u k .
R = diag ( [ r 1   r 2   r 3   r 4 ] )
P : Positive definite weighting matrix that penalizes the tracking error at the final state, with dimensions 8 × 8.
P =   Q
N : Prediction horizon, representing the number of future time steps that the controller considers when predicting the system’s evolution and optimizing the sequence of control actions.
The constraints for the optimization problem can be expressed as
x 0 =   x current x k + 1 = f x k , u k ,   k = 0 ,   ,   N 1 g x k , u k 0 ,   k = 0 ,   ,   N 1   h x k , u k 0 ,   k = 0 ,   ,   N 1
where
  • f x k , u k : System’s dynamics.
  • g x k , u k , h x k , u k : Inequality and equality constraints, respectively.
Therefore, the complete cost function J that the NLMPC seeks to minimize is
J x u , u = ( x ( N )   x ref ( N ) ) T   P ( x N x ref ( N ) ) + K = 0 N 1 ( x ( k )   x ref ( k ) ) T   Q ( x k x ref ( k ) ) + u ( k ) T   Ru ( k )
NLMPC offers several advantages, such as its ability to handle nonlinear dynamics and adjust to changes in the environment or the system state. Continuous optimization ensures that control actions are always optimal and to date, reducing the accumulated error and improving the trajectory tracking accuracy. It is ideal for applications where precision and adaptability are crucial, such as cooperative robotics and complex object manipulation, to ensure that trajectories are safe and efficient, even in the presence of uncertainties and disturbances.

2.4.2. Sliding Mode Controller

The Sliding Mode Controller is a robust and effective technique for controlling nonlinear systems, particularly those with disturbances and model uncertainties. This technique is particularly useful in cooperative robotics applications, where precision and adaptability are crucial for system performance.
The SMC is based on the following principles:
  • Sliding surface: A sliding surface s x = 0 is defined where s x is a function of system state x . This surface represents the desired behavior of the system.
  • Control law: The SMC control law is divided into two components:
    • Equivalent Control ( u eq ): This is calculated to maintain the system on the sliding surface in the absence of disturbances.
    • Switching Control ( u n ): This is added to ensure that the system remained on the sliding surface, compensating for disturbances and uncertainties.
  • Discontinuous control action: The typical switching control law has the form   u n = k sign ( s ( x ) ), where K is a positive gain and s x is the sign function that introduces a discontinuous control action to drive the system towards the sliding surface.
  • Complete control law: u = u eq + u n .
The SMC is known for its robustness against disturbances and variations in system parameters. It stands out for its simplicity in design, fast response, and reduction in tracking errors, making it ideal for applications in which conditions can change rapidly. This technique is crucial in cooperative robotics, where synchronization and coordination are essential. By maintaining the system on the sliding surface, SMC minimizes tracking errors, ensuring that the robots cooperate efficiently.
For the implementation of the controller in the system and considering Equation (12), which describes the dynamics of a robotic manipulator where q , q ˙ , q ¨ vectors represent the angles, velocities, and accelerations of the joints, respectively, the following is proposed:
  • Definition of state variables: x 1 = q y x 2 = q ˙ 2 .
  • Control input: u = τ .
  • State-space representation:
    x = x 1 x 2 = q q ˙ 2
  • Definition of the sliding surface: s = e ˙ + λ e , where e = q q ref is the tracking error, and λ is a coefficient that affects the rate of convergence to the sliding surface.
  • SMC control law:
    M i q i ( q ¨ ref λ e ˙ ) +   C i q i ,   q i ˙ q i ˙ + G i q i k sign ( s ) = u
    where q ¨ ref is the acceleration of the reference trajectory, and k is a gain that determines the magnitude of the discontinuous control action.
  • Reduction in chattering: To reduce chattering in the control signal, the sign function can be replaced with a saturation function as follows:
    sat s Φ = 1 is , s   > Φ s Φ is ,   s   Φ 1 is , s < Φ
    where Φ is the thickness of the boundary layer.

3. Simulations and System Validation

Tests were conducted virtually to evaluate and refine the performance of the robots in a controlled environment. The first step involved validating the initial scenario, which entailed transporting an object from a specific point in the working area of Robot 1 to an endpoint in the working area of Robot 2. This scenario is crucial for measuring the efficiency and coordination of robots when transferring objects between virtual work areas. To address this scenario, three specific cases representing different levels of complexity were proposed using obstacles with dimensions of 0.8 m × 0.03 m × 0.4 m.
First case: Obstacles are present only in the working area of Robot 1. Robot 1 must detect and avoid these obstacles while transporting the object to the transfer zone. This challenge tests the navigation and adaptability of the robot in a partially obstructed virtual environment. The relevant positions and dimensions in this case are presented in Table 4.
In this virtual scenario, Robot 1 demonstrates its ability to efficiently maneuver around an obstacle located in its working area, thereby ensuring that the object is transferred without incident to the transfer point. See Figure 11.
Second case: In this scenario, obstacles are present only in the working area of Robot 2. Robot 1 transports the object to the transfer zone without any issues; however, Robot 2 must navigate around obstacles when receiving and moving the object to the final point. This case evaluated Robot 2’s ability to operate efficiently in a restricted virtual environment. The positions of the objects and obstacles are presented in Table 5.
In the virtual environment shown in Figure 12, Robot 2 demonstrated its ability to navigate around two obstacles located in its working area, ensuring that the object was moved safely and efficiently to its final location.
Third case: In this scenario, obstacles are present in the working areas for Robots 1 and 2. This is the most complex scenario because both robots must demonstrate their detection, navigation, and cooperation skills to overcome obstacles and successfully complete a task. Coordination between robots is crucial for avoiding collisions and optimizing transport time. The positions of the objects and obstacles are presented in Table 6.
In this virtual environment, the robots must work together efficiently. Robot 1 must navigate and avoid obstacles in its area while transporting an object to a transfer point. Once there, Robot 2 must receive the object and, in turn, avoid obstacles in its own environment to carry the object to the final location. This test is essential to evaluate not only the individual capabilities of each robot but also their ability to coordinate and cooperate in an obstacle-filled virtual environment, as shown in Figure 13.
The responses of the movements of each joint of the two robots are shown in Figure 14 and Figure 15. NLMPCs and SMCs were used to execute the routes correctly. The time allocated to complete the task was 60 s: 30 for Robot 1 to transfer the object and 30 for Robot 2 to complete the transfer.
Figure 16 shows the trajectories followed by the robot using the NLMPC and SMC, along with the desired trajectory generated by the RRT planner. The trajectory tracking errors in the x, y, and z axes for each robot are presented in Figure 17 and Figure 18, respectively.

4. Results Analysis

In this study, a cooperative robotic system comprising two SCARA robots was developed and simulated for coordination and obstacle avoidance in cooperative tasks. The results obtained from virtual simulations demonstrate that the proposed system can effectively handle object transfer and avoid collisions in various scenarios of varying complexity.
Compared to previous studies that used manipulator robots, this approach stands out for the implementation of advanced trajectory planning and coordination algorithms in cooperative tasks, which significantly improves the adaptability and autonomy of robotic system.
The results obtained in the three simulated scenarios show that SCARA robots are capable of effectively coordinating and performing pick-and-place tasks without collisions. In the first scenario, where obstacles were in the working area of Robot 1, the robot demonstrated a robust ability to navigate and avoid obstructions, transferring the object to the transfer point without incidents. In the second scenario, the obstacles in the working area of Robot 2 were handled with equal effectiveness, highlighting the system’s ability to operate in constrained environments. The third scenario, which is the most complex, revealed the system’s capability to avoid collisions between robots and obstacles, underscoring the efficiency of the synchronization and trajectory planning algorithms.
The evaluation of the performance indices of the NLMPCs and SMCs applied to Robots 1 and 2 revealed significant differences in their performance. Regarding the steady-state error e ss , the NLMPC demonstrates greater precision for both robots, with values of 0.0017 for Robot 1 and 1.0697 × 10−6 for Robot 2, compared with 0.0131 and 0.0023, respectively, for the SMC.
Analyzing the Integral Squared Error (ISE) index, the NLMPC again showed better performance with values of 0.9576 for Robot 1 and 0.0199 for Robot 2; whereas, the SMC presented significantly higher values of 0.3609 and 0.0619, respectively. In the Integral Absolute Error (IAE) index, the NLMPC also stands out, with 0.9598 for Robot 1 and 0.1652 for Robot 2, in contrast to the SMC values of 0.9220 and 0.9896, respectively.
The Integral Time-weighted Absolute Error (ITAE) index shows a clear superiority of the NLMPC, with values of 1.4984 for Robot 1 and 8.2306 for Robot 2, compared to the high values of 9.1086 and 32.432 for the SMC, as shown in Table 7. These results indicate that the NLMPC is not only more precise, but also more efficient in terms of stability and temporal response, which are especially relevant in applications where error minimization and rapid response are crucial.
When evaluating the trajectories generated by each robot with the two controllers using performance indices, it can be verified that the NLMPC generates fewer errors compared to the SMC, as presented in Table 8. For example, the ISE index for Robot 1 is significantly lower with the NLMPC (1.5217 × 10−5) compared to the SMC (0.0148). Similarly, Robot 2 shows a lower ISE index with the NLMPC (9.0684 × 10−4) compared to SMC (0.0615). Additionally, it can be analyzed that the trajectory performed by Robot 1 is more complex than that of Robot 2, resulting in higher errors in both controllers. This difference in trajectory complexity is evident in the IAE and ITAE values, where Robot 1 presents significantly higher values under the SMC. In contrast, Robot 2, although it also shows higher errors with the SMC, maintains a less marked difference compared to Robot 1. Finally, the IA performance index also indicates better efficiency of the NLMPC for both robots, being especially notable in the case of Robot 2.
To perform the simulations, MatLab R2024a software was used on an ASUS TUF GAMING A15 laptop with the following specifications: an AMD Ryzen 7 6800H processor with Radeon Graphics at 3.2 GHz, 8 GB of RAM, and an NVIDIA GeForce RTX 3050 Ti Laptop GPU.
The computational metrics evaluated are
Time to generate the trajectory with the RRT planner: 41.26 s.
Time taken by Robot 1 to move the object: With the SMC: 36.67 s and with the NLMPC: 135.78 s.
Memory usage and CPU and GPU loads: Memory usage was kept below 50% of the available 8 GB, and the CPU and GPU loads remained at optimal levels, without overloading any components.
This demonstrates that it is not necessary to have a supercomputer to implement this system, as it can be effectively carried out with a computer with normal specifications.

5. Conclusions and Future Works

The proposed system proved to be effective in transferring objects between robots and in handling various scenarios of varying complexities without collisions. SCARA robots can effectively coordinate to perform pick-and-place tasks in controlled virtual environments. The implementation of advanced trajectory planning and coordination algorithms significantly improves the adaptability and autonomy of the robotic system, allowing the robots to predict and react in real time to the movements of their companions and changes in the environment, which is crucial for maintaining a safe and efficient work environment.
This research highlights the importance of effective synchronization and communication between robots to avoid collisions and to optimize trajectories and cycle times. The results demonstrated that the robots could work harmoniously in a dynamic and demanding environment, thereby optimizing industrial production.
When evaluating the controllers, the NLMPC outperformed the SMC in terms of precision and efficiency for both the robots. The NLMPC exhibited a lower steady-state error and better integral performance indices (ISE, IAE, and ITAE), indicating a faster and more stable response. These results demonstrate that the NLMPC is more suitable for applications requiring high precision and stability, and its implementation is recommended to optimize performance and reliability in advanced robotic systems.
All the tests were conducted in virtual environments, allowing for the evaluation and refinement of the performance of the robots under controlled conditions. The results obtained in this study not only demonstrate the effectiveness of the system in controlled virtual scenarios but also highlight its potential for practical applications in the industry. The ability of SCARA robots to efficiently coordinate and avoid collisions in complex environments suggests that this system could be implemented in various industrial applications with dynamic and complex environments, such as assembly lines, handling of delicate materials, pick-and-place operations, among others, providing significant improvements in efficiency, flexibility, and precision. These potential benefits, supported by the simulation results, establish a solid foundation for future practical implementations and further studies in the field of cooperative robotics.
A promising area for future work is the implementation of impedance control techniques. This will allow for the analysis of the behavior of the system in avoiding obstacles and performing cooperative tasks, particularly when handling heavier objects. In this study, the primary focus was on handling lightweight objects.

6. Perspectives

This study focuses on enhancing the capability of SCARA robots to tackle cooperative task challenges through the implementation of an RRT path-planning algorithm and a robot coordination algorithm. By employing an RRT path planner and nonlinear control techniques, the system improves the adaptability and autonomy of the robot in complex dynamic environments. This enables them to predict and react in real time to the movements of other robots and changes in their surroundings, which is crucial for maintaining a safe and efficient work environment.

6.1. Industrial Applications Where This Study Could Be Implemented

The results obtained in this study not only demonstrate the effectiveness of the system in controlled virtual scenarios but also highlight its potential for practical applications in the industry. The ability of SCARA robots to efficiently coordinate and avoid collisions in complex environments suggests that this system could be projected for future implementation in various industrial manufacturing applications within dynamic and complex environment. Some examples are detailed below:
Assembly of electronic components: A system consisting of two SCARA robots configured to work together to assemble printed circuit boards (PCBs) in mobile phones and computers. One robot can hold a PCB while another places a component on the board, ensuring precision and avoiding damage to delicate components.
Handling of chemicals: In the chemical industry, an SCARA robot can measure and dose chemicals, while others transport them to different containers, ensuring the robots work in sync to minimize the risk of human exposure.
Collaborative welding: In automotive manufacturing, SCARA robots collaborate in welding vehicle chassis parts, ensuring a precise and strong bond without interference between them.
Quality inspection: An SCARA robot can position products on an inspection line while another performs the inspection with sensors and cameras, removing defective products without stopping production.
Manufacturing of medical devices: In the medical device industry, SCARA robots assemble precise components of medical equipment, such as pacemakers and insulin pumps, ensuring high standards of quality and precision.
Food and beverage production: Several SCARA robots perform pick-and-place operations on a food production line, such as placing caps on bottles and packaging products, maintaining hygiene and efficiency.
The implementation of the cooperative SCARA system in any of these examples of real-world applications can provide significant improvements in efficiency, flexibility, and precision, translating these benefits into reduced cycle times, improved product quality, and decreased operating costs in the industry.

6.2. Limitations and Challenges of Implementing the System in Real-World Scenarios

Although the simulations conducted in this study demonstrate the effectiveness of the cooperative SCARA system in virtual environments, it is necessary to consider several limitations and potential challenges for its implementation in real-world scenarios. The most important of these include the following:
Variation in environmental parameters: Real-world environments are often less predictable and more variable than controlled virtual environments, so the system may need to handle unexpected obstacles, changes in lighting, temperature fluctuations, and other environmental factors that were not considered in the simulations.
Use of adequate sensors: The accuracy and reliability of sensors used for navigation and object detection in real-world scenarios can vary, as inaccurate sensor data can lead to errors in trajectory planning and collision avoidance, requiring robust sensor fusion algorithms and error correction.
Integration with existing systems: Integrating the cooperative SCARA system with existing manufacturing systems and workflows can be challenging, as compatibility issues may arise, requiring customized interfaces and protocols to ensure proper communication and system integration.
Real-time processing and latency: Real-time processing requirements are critical for effective coordination and collision avoidance in dynamic environments. This implies a high computational demand and may require the use of advanced hardware and optimized algorithms to minimize latency and ensure timely responses.
Safety: Implementing the system in environments with human presence requires adherence to strict safety standards and regulations, such as signaling, emergency stop mechanisms, compatible control strategies, among others.
Costs: The cost of implementing and maintaining a robotic system can be significant, so a thorough study of the economic resources that can be generated by implementing a robotic system is necessary.

Author Contributions

Conceptualization, C.U., P.S., J.K. and H.T.; methodology, C.U., P.S., J.K. and H.T.; software, C.U., P.S., J.K. and H.T.; validation, C.U., P.S., J.K. and H.T.; formal analysis, C.U., P.S., J.K. and H.T.; investigation, C.U., P.S., J.K. and H.T.; resources, C.U., P.S., J.K. and H.T.; data curation, C.U., P.S., J.K. and H.T.; writing—original draft preparation, C.U. and P.S.; writing—review and editing, C.U., P.S., J.K. and H.T.; visualization, C.U., P.S., J.K. and H.T.; supervision, C.U. and J.K.; project administration, C.U., J.K. and H.T.; funding acquisition, C.U. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data are contained within the article.

Acknowledgments

This work has been supported by the Faculty of Engineering of the Universidad de Santiago de Chile, Chile.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Çiğdem, Ş.; Meidute-Kavaliauskiene, I.; Yıldız, B. Industry 4.0 and Industrial Robots: A Study from the Perspective of Manufacturing Company Employees. Logistics 2023, 7, 17. [Google Scholar] [CrossRef]
  2. Tao, B.; Gong, Z.; Ding, H. Climbing Robots for Manufacturing; Oxford University Press: Oxford, UK, 2023. [Google Scholar] [CrossRef]
  3. Wang, L.; Shu, L.; Zhou, H. Multi-Robot Collaborative Flexible Manufacturing and Digital Twin System Design of Circuit Breakers. Appl. Sci. 2023, 13, 2721. [Google Scholar] [CrossRef]
  4. Yamafuji, K. Dev. SCARA Robot; Fuji Technology Press: Tokyo, Japan, 2019. [Google Scholar] [CrossRef]
  5. Cao, W.A.; Li, S.; Cheng, P.; Ge, M.; Ding, H.; Lai, J. Design and development of a new 4 DOF hybrid robot with Scara motion for high-speed operations in large workspace. Mech. Mach. Theory 2024, 198, 105656. [Google Scholar] [CrossRef]
  6. Schäle, D.; Stoelen, M.F.; Kyrkjebø, E. Programming Fine Manufacturing Tasks on Collaborative Robots: A Case Study on Industrial Gluing. Model. Identif. Control 2023, 44, 141–154. [Google Scholar] [CrossRef]
  7. Ye, W.; Tang, T.F.; Li, Q.C. Robotized Manufacturing Equipment: A Review from the Perspective of Mechanism Topology; Science Press: Beijing, China, 2023. [Google Scholar] [CrossRef]
  8. Hameed, A.; Ordys, A.; Możaryn, J.; Sibilska-Mroziewicz, A. Control System Design and Methods for Collaborative Robots: Review. Appl. Sci. 2023, 13, 675. [Google Scholar] [CrossRef]
  9. Ponikelský, J.; Chalupa, M.; Černohlávek, V.; Štěrba, J. Force and Pressure Dependent Asymmetric Workspace Research of a Collaborative Robot and Human. Symmetry 2024, 16, 131. [Google Scholar] [CrossRef]
  10. Sprenger, C.Z.; Ramón, J.A.C.; Baier, N.U. RTMN 2.0—An Extension of Robot Task Modeling and Notation (RTMN) Focused on Human–Robot Collaboration. Appl. Sci. 2024, 14, 283. [Google Scholar] [CrossRef]
  11. Pavlasek, J.; Mah, J.J.Z.; Xu, R.; Jenkins, O.C.; Ramos, F. Stein Variational Belief Propagation for Multi-Robot Coordination. IEEE Robot. Autom. Lett. 2024, 9, 4194–4201. [Google Scholar] [CrossRef]
  12. Wei, C.; Hindriks, K.V.; Jonker, C.M. Altruistic coordination for multi-robot cooperative pathfinding. Appl. Intell. 2016, 44, 269–281. [Google Scholar] [CrossRef]
  13. Shi, L.; Kayastha, S.; Katupitiya, J. Robust coordinated control of a dual-arm space robot. Acta Astronaut. 2017, 138, 475–489. [Google Scholar] [CrossRef]
  14. Tong, Y.; Liu, J.; Zhang, X.; Ju, Z. Four-Criterion-Optimization-Based Coordination Motion Control of Dual-Arm Robots. IEEE Trans. Cogn. Dev. Syst. 2023, 15, 794–807. [Google Scholar] [CrossRef]
  15. Wu, G.; Niu, B.; Li, Q. Trajectory Tracking Control of Fast Parallel SCARA Robots with Fuzzy Adaptive Iterative Learning Control for Repetitive Pick-and-Place Operations. Electronics 2023, 12, 4995. [Google Scholar] [CrossRef]
  16. Chiriatti, G.; Palmieri, G.; Scoccia, C.; Palpacelli, M.C.; Callegari, M. Adaptive obstacle avoidance for a class of collaborative robots. Machines 2021, 9, 113. [Google Scholar] [CrossRef]
  17. Su, C.; Xu, J. A Sampling-Based Unfixed Orientation Search Method for Dual Manipulator Cooperative Manufacturing. Sensors 2022, 22, 2502. [Google Scholar] [CrossRef] [PubMed]
  18. Gafur, N.; Kanagalingam, G.; Ruskowski, M. Dynamic collision avoidance for multiple robotic manipulators based on a non-cooperative multi-agent game. arXiv 2021, arXiv:2103.00583. [Google Scholar] [CrossRef]
  19. Dong, Y.; He, W.; Kong, L.; Hua, X. Impedance Control for Coordinated Robots by State and Output Feedback. IEEE Trans. Syst. Man. Cybern. Syst. 2021, 51, 5056–5066. [Google Scholar] [CrossRef]
  20. Xu, P.; Zhang, J.; Cui, Y.; Zhang, K.; Tang, Q. Modeling and Coordinated Control of Multiple Mobile Manipulators with Closed-chain Constraints. Int. J. Control Autom. Syst. 2023, 21, 1296–1308. [Google Scholar] [CrossRef]
  21. Luviano-Cruz, D.; Garcia-Luna, F.; Pérez-Domínguez, L.; Gadi, S.K. Multi-agent reinforcement learning using linear fuzzy model applied to cooperative mobile robots. Symmetry 2018, 10, 461. [Google Scholar] [CrossRef]
  22. Min, F.; Wang, G.; Liu, N. Collision detection and identification on robot manipulators based on vibration analysis. Sensors 2019, 19, 1080. [Google Scholar] [CrossRef]
  23. Raibail, M.; Rahman, A.H.A.; AL-Anizy, G.J.; Nasrudin, M.F.; Nadzir, M.S.M.; Noraini, N.M.R.; Yee, T.S. Decentralized Multi-Robot Collision Avoidance: A Systematic Review from 2015 to 2021. Symmetry 2022, 14, 610. [Google Scholar] [CrossRef]
  24. Becker, M.; Caspers, P.; Hattendorf, T.; Lilge, T.; Haddadin, S.; Müller, M.A. Informed Circular Fields for Global Reactive Obstacle Avoidance of Robotic Manipulators. IFAC-PapersOnLine, 2023; 56, 1017–1022. [Google Scholar] [CrossRef]
  25. Meng, X.; Zhu, X. Autonomous Obstacle Avoidance Path Planning for Grasping Manipulator Based on Elite Smoothing Ant Colony Algorithm. Symmetry 2022, 14, 1843. [Google Scholar] [CrossRef]
  26. Tika, A.; Bajcinca, N. Predictive Control of Cooperative Robots Sharing Common Workspace. IEEE Trans. Control Syst. Technol. 2024, 32, 456–471. [Google Scholar] [CrossRef]
  27. Zhou, Y.; Hu, H.; Ding, W.; Gao, K.; Li, D.; Gao, F. Cooperative Distributed Predictive Control for Smart Injection Molding Systems with One-Tap Memory. IEEE Trans. Industr. Inform. 2024, 20, 8850–8860. [Google Scholar] [CrossRef]
  28. Taner, B.; Subbarao, K. Modeling of Cooperative Robotic Systems and Predictive Control Applied to Biped Robots and UAV-UGV Docking with Task Prioritization. Sensors 2024, 24, 3189. [Google Scholar] [CrossRef] [PubMed]
  29. AzizZadeh, H.; Menhaj, M.B.; Talebi, H.A. Decentralized force and motion control of multiple cooperative manipulators. Automatika 2021, 62, 98–108. [Google Scholar] [CrossRef]
  30. Zi, B.; Sun, H.; Zhu, Z.; Qian, S. The dynamics and sliding mode control of multiple cooperative welding robot manipulators. Int. J. Adv. Robot. Syst. 2012, 9, 53. [Google Scholar] [CrossRef]
  31. Van, M.; Ge, S.S.; Ceglarek, D. Global finite-time cooperative control for multiple manipulators using integral sliding mode control. Asian J. Control 2022, 24, 2862–2876. [Google Scholar] [CrossRef]
  32. Wang, J.; Xu, F.; Lu, G.D. Neural network-based position synchronised internal force control scheme for cooperative manipulator system. Int. J. Syst. Sci. 2017, 48, 2485–2498. [Google Scholar] [CrossRef]
  33. Liu, L.; Liu, Q.; Song, Y.; Pang, B.; Yuan, X.; Xu, Q. A collaborative control method of dual-arm robots based on deep reinforcement learning. Appl. Sci. 2021, 11, 1816. [Google Scholar] [CrossRef]
  34. Liu, Z.; Sun, Y. Adaptive Variable Impedance Control with Fuzzy-PI Compound Controller for Robot Trimming System. Arab. J. Sci. Eng. 2022, 47, 15727–15740. [Google Scholar] [CrossRef]
  35. Bruzzone, L.; Nodehi, S.E. Application of Half-Derivative Damping to Cartesian Space Position Control of a SCARA-like Manipulator. Robotics 2022, 11, 152. [Google Scholar] [CrossRef]
  36. Yu, M.; Yu, C.; Naddaf-Sh, M.-M.; Upadhyay, D.; Gao, S.; Fan, C. Efficient Motion Planning for Manipulators with Control Barrier Function-Induced Neural Controller. arXiv 2024, arXiv:2404.01184. [Google Scholar] [CrossRef]
  37. Lee, E.; Yang, H. UaMPNet: Uncertainty-Aware Motion Planning Network for Manipulator Motion Planning. IEEE Access 2024, 12, 63302–63316. [Google Scholar] [CrossRef]
  38. Yu, J.; Wu, J.; Xu, J.; Wang, X.; Cui, X.; Wang, B.; Zhao, Z. A Novel Planning and Tracking Approach for Mobile Robotic Arm in Obstacle Environment. Machines 2024, 12, 19. [Google Scholar] [CrossRef]
  39. Yih, C.C.; Wu, S.J. Adaptive task-space manipulator control with parametric uncertainties in kinematics and dynamics. Appl. Sci. 2020, 10, 8806. [Google Scholar] [CrossRef]
  40. Zhang, L.; Su, Y.; Wang, Z.; Wang, H. Fixed-time terminal sliding mode control for uncertain robot manipulators. ISA Trans. 2024, 144, 364–373. [Google Scholar] [CrossRef] [PubMed]
  41. Zhao, R.; Yang, J.; Li, X.; Mo, H. Adaptive Variable Universe Fuzzy Sliding-Mode Control for Robot Manipulators with Model Uncertainty. IEEE J. Radio. Freq. Identif. 2024, 8, 658–664. [Google Scholar] [CrossRef]
  42. Priya V, P.; Suresh, J. Integration of SCARA Robot for Pick and Place Application Using PLC; European Alliance for Innovation: Brussels, Belgium, 2022. [Google Scholar] [CrossRef]
  43. González-Palacios, M.A.; Garcia-Murillo, M.A.; González-Dávila, M. A novel tool to optimize the performance of SCARA robots used in pick and place operations. J. Mech. Sci. Technol. 2021, 35, 4715–4726. [Google Scholar] [CrossRef]
  44. Kapusi, T.P.; Erdei, T.I.; Husi, G.; Hajdu, A. Application of Deep Learning in the Deployment of an Industrial SCARA Machine for Real-Time Object Detection. Robotics 2022, 11, 69. [Google Scholar] [CrossRef]
  45. Urrea, C.; Pascal, J. Design, simulation, comparison and evaluation of parameter identification methods for an industrial robot. Comput. Electr. Eng. 2018, 67, 791–806. [Google Scholar] [CrossRef]
  46. López-Muñoz, R.; Portilla-Flores, E.A.; Corona-Ramírez, L.G.; Vega-Alvarado, E.; Maya-Rodríguez, M.C. Inverse Kinematics: An Alternative Solution Approach Applying Metaheuristics. Appl. Sci. 2023, 13, 6543. [Google Scholar] [CrossRef]
  47. Limoyo, O.; Marić, F.; Giamou, M.; Alexson, P.; Petrović, I.; Kelly, J. Generative Graphical Inverse Kinematics. arXiv 2022, arXiv:2209.08812. [Google Scholar] [CrossRef]
  48. Lin, Y.; Xu, Q.; Ju, W.; Zhang, T. Inverse Kinematics of Large Hydraulic Manipulator Arm Based on ASWO Optimized BP Neural Network. Appl. Sci. 2024, 14, 5551. [Google Scholar] [CrossRef]
  49. Sarapura, J.A.; Roberti, F.; Carelli, R. Adaptive 3D Visual Servoing of a Scara Robot Manipulator with Unknown Dynamic and Vision System Parameters. Automation 2021, 2, 127–140. [Google Scholar] [CrossRef]
Figure 1. SCARA cooperative system prototype.
Figure 1. SCARA cooperative system prototype.
Applsci 14 06804 g001
Figure 2. SCARA robot.
Figure 2. SCARA robot.
Applsci 14 06804 g002
Figure 3. Kinematic diagram of the SCARA robot, where a 1 : length of link one along the x-axis; a 2 : length of link two along the x-axis; d 1 : Length of the robot base along the z-axis (height of the robot base); d 3 : linear distance of the prismatic joint J 3 that allows vertical movement of link three; d 4 : length of link one along the z-axis; θ 1 : angle of the first rotational joint that connects the base to link one; θ 2 : angle of the second rotational joint that connects link one to link two; and θ 4 : angle of the fourth rotational joint that defines the orientation of link four relative to link three.
Figure 3. Kinematic diagram of the SCARA robot, where a 1 : length of link one along the x-axis; a 2 : length of link two along the x-axis; d 1 : Length of the robot base along the z-axis (height of the robot base); d 3 : linear distance of the prismatic joint J 3 that allows vertical movement of link three; d 4 : length of link one along the z-axis; θ 1 : angle of the first rotational joint that connects the base to link one; θ 2 : angle of the second rotational joint that connects link one to link two; and θ 4 : angle of the fourth rotational joint that defines the orientation of link four relative to link three.
Applsci 14 06804 g003
Figure 4. SCARA robot projected onto the Cartesian plane, where p x : position of the end effector on the x-axis; p y : position of the end effector on the y-axis; and p z : position of the end effector on the z-axis.
Figure 4. SCARA robot projected onto the Cartesian plane, where p x : position of the end effector on the x-axis; p y : position of the end effector on the y-axis; and p z : position of the end effector on the z-axis.
Applsci 14 06804 g004
Figure 5. Cooperative SCARA system with their respective working areas.
Figure 5. Cooperative SCARA system with their respective working areas.
Applsci 14 06804 g005
Figure 6. Pick-and-place process in the cooperative system: (a) Initial position of the robots; (b) Robot 1 grasps the object; (c) Robot 1 transfers the object; (d) Robot 1 releases the object and Robot 2 grasps the object; (e) Robot 2 transfers the object; and (f) task completion.
Figure 6. Pick-and-place process in the cooperative system: (a) Initial position of the robots; (b) Robot 1 grasps the object; (c) Robot 1 transfers the object; (d) Robot 1 releases the object and Robot 2 grasps the object; (e) Robot 2 transfers the object; and (f) task completion.
Applsci 14 06804 g006aApplsci 14 06804 g006b
Figure 7. Cooperative SCARA system in collision: (a) Collision with the links of the two robots, and (b) collision with the end effectors of both robots.
Figure 7. Cooperative SCARA system in collision: (a) Collision with the links of the two robots, and (b) collision with the end effectors of both robots.
Applsci 14 06804 g007
Figure 8. Algorithm for coordinating cooperative robots to move an object together.
Figure 8. Algorithm for coordinating cooperative robots to move an object together.
Applsci 14 06804 g008
Figure 9. Cooperative SCARA system with identification of initial points on the object to be transferred.
Figure 9. Cooperative SCARA system with identification of initial points on the object to be transferred.
Applsci 14 06804 g009
Figure 10. Process for moving an object between both robots: (a) Robots position themselves near the object and grasp it, and (b) robots transfer the object.
Figure 10. Process for moving an object between both robots: (a) Robots position themselves near the object and grasp it, and (b) robots transfer the object.
Applsci 14 06804 g010
Figure 11. Transfer of an object from one place to another with obstacles in Robot 1’s working area: (a) initial position of the robots; (b) Robot 1 transfers the object; (c) Robot 2 transfers the object; and (d) task completion.
Figure 11. Transfer of an object from one place to another with obstacles in Robot 1’s working area: (a) initial position of the robots; (b) Robot 1 transfers the object; (c) Robot 2 transfers the object; and (d) task completion.
Applsci 14 06804 g011
Figure 12. Transfer of an object from one place to another with obstacles in Robot 2’s working area: (a) initial position of the robots; (b) Robot 1 transfers the object; (c) Robot 2 transfers the object; and (d) task completion.
Figure 12. Transfer of an object from one place to another with obstacles in Robot 2’s working area: (a) initial position of the robots; (b) Robot 1 transfers the object; (c) Robot 2 transfers the object; and (d) task completion.
Applsci 14 06804 g012
Figure 13. Transfer of an object from one place to another with obstacles in both working areas: (a) initial position of the robots; (b) Robot 1 transfers the object; (c) Robot 2 transfers the object; and (d) task completion.
Figure 13. Transfer of an object from one place to another with obstacles in both working areas: (a) initial position of the robots; (b) Robot 1 transfers the object; (c) Robot 2 transfers the object; and (d) task completion.
Applsci 14 06804 g013
Figure 14. Desired and measured positions of the joints of Robot 1.
Figure 14. Desired and measured positions of the joints of Robot 1.
Applsci 14 06804 g014
Figure 15. Desired and measured positions of the joints of Robot 2.
Figure 15. Desired and measured positions of the joints of Robot 2.
Applsci 14 06804 g015
Figure 16. Trajectories performed by the robots to move the object.
Figure 16. Trajectories performed by the robots to move the object.
Applsci 14 06804 g016
Figure 17. Cartesian error generated by Robot 1.
Figure 17. Cartesian error generated by Robot 1.
Applsci 14 06804 g017
Figure 18. Cartesian error generated by Robot 2.
Figure 18. Cartesian error generated by Robot 2.
Applsci 14 06804 g018
Table 1. Dimensions of the SCARA robots.
Table 1. Dimensions of the SCARA robots.
ConstantValueUnit of Measure
Robot 1 and Robot 2 d 1 1m
d 4 1m
a 1 0.5m
a 2 0.105m
m 1 42.64kg
m 2 22.18kg
m 3 8.86kg
m 4 0.08kg
Izz 1 0.03184 kg · m 2
Izz 2 0.60053 kg · m 2
Izz 3 0.00921 kg · m 2
Izz 4 0.00921 kg · m 2
Table 2. Denavit–Hartenberg parameters.
Table 2. Denavit–Hartenberg parameters.
Joint i θ i d i a i i
1 θ 1 d 1 a 1 0
2 θ 2 0 a 2 π
30 d 3 00
4 θ 4 d 4 00
where θ i : angle formed by axes x i   1 and x i , measured in a plane perpendicular to the z i   1 axis; d i : distance along the z i 1 axis from the origin of the coordinate system (i − 1) to the intersection of the z i 1 and x i axes; a i : distance along the x i axis from the intersection of the z i 1 axis with the x i axis to the origin of the i-th coordinate system for the rotational joints; prismatic joints are calculated as the shortest distance between the z i 1 and z i axes; and i : angle between the z i 1 and z i axes, measured in a plane perpendicular to the x i axis.
Table 3. Motor parameters.
Table 3. Motor parameters.
SymbolValue
J3.2284 × 10 6 kg·m2
B3.5077 × 10−6 Ns/m
k e 0.0274 V/rads
k t 0.0274 Nm/A
R4 Ω
L2.75 × 10 6 H
where J: moment of inertia affects the motor’s acceleration and, consequently, the robot’s ability to start and stop movements quickly; B: viscous friction constant influences the mechanical losses of the system and the precision of the movement; k e : electromotive force constant relates the motor’s speed to the generated voltage; k t : motor torque constant determines the torque produced by the motor based on the supplied current and the applied force; and R and L: electrical resistance and inductance affect the motor’s dynamic response.
Table 4. Initial, transfer, and final positions of the object to be transported in the first case.
Table 4. Initial, transfer, and final positions of the object to be transported in the first case.
Position in X (m)Position in Y (m)Position in Z (m)
Pi obj 0.14061.14350.33
Pf obj 0.5494−2.980.33
P trans 0.1756−1.12270.33
Center of the Obstacle0.60460.47830.4
where Pi obj : initial position of the object; Pf obj : final position of the object; and P trans : location of the transfer point.
Table 5. Positions of the object to be transported and the obstacles in the second case.
Table 5. Positions of the object to be transported and the obstacles in the second case.
Position in X (m)Position in Y (m)Position in Z (m)
Pi obj 0.45600.81650.33
Pf obj 0.4560−2.980.33
P trans 0.19−0.86570.33
Center of Obstacle 1 0.8282−1.47450.4
Center of Obstacle 2 1.2083−1.92170.4
Table 6. Positions of the object to be transported and the obstacles in the third case.
Table 6. Positions of the object to be transported and the obstacles in the third case.
Position in X (m)Position in Y (m)Position in Z (m)
Pi obj 0.40921.06180.33
Pf obj 0.1756−3.29540.33
P trans 0.2223−0.81890.33
Center of Obstacle 10.26170.73170.4
Center of Obstacle 20.77600.44100.4
Center of Obstacle 30.7462−0.04350.4
Center of Obstacle 40.7835−1.64600.4
Center of Obstacle 51.1934−1.97390.4
Center of Obstacle 60.2841−1.30700.4
Table 7. Performance indices in the robot’s joints.
Table 7. Performance indices in the robot’s joints.
Robot 1Robot 2
NLMPCSMCNLMPCSMC
e ss 0.00170.01311.0697 × 10−60.0023
ISE0.95760.36090.01990.0619
IAE0.95980.92200.16520.6896
ITAE1.49849.10868.230632.432
IA1.00331.06110.16520.8578
Table 8. Performance indices in the trajectory.
Table 8. Performance indices in the trajectory.
Robot 1Robot 2
NLMPCSMCNLMPCSMC
e ss −0.0013−0.00794.2821 × 10−70.0156
ISE1.5217 × 10−50.01489.0684 × 10−40.0615
IAE0.01040.48110.03320.7363
ITAE0.15947.16491.664334.544
IA0.03780.47500.0331970.63847
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Urrea, C.; Sari, P.; Kern, J.; Torres, H. Enhancing Adaptability and Autonomy in Cooperative Selective Compliance Assembly Robot Arm Robots: Implementation of Coordination and Rapidly Exploring Random Tree Algorithms for Safe and Efficient Manipulation Tasks. Appl. Sci. 2024, 14, 6804. https://doi.org/10.3390/app14156804

AMA Style

Urrea C, Sari P, Kern J, Torres H. Enhancing Adaptability and Autonomy in Cooperative Selective Compliance Assembly Robot Arm Robots: Implementation of Coordination and Rapidly Exploring Random Tree Algorithms for Safe and Efficient Manipulation Tasks. Applied Sciences. 2024; 14(15):6804. https://doi.org/10.3390/app14156804

Chicago/Turabian Style

Urrea, Claudio, Pablo Sari, John Kern, and Hugo Torres. 2024. "Enhancing Adaptability and Autonomy in Cooperative Selective Compliance Assembly Robot Arm Robots: Implementation of Coordination and Rapidly Exploring Random Tree Algorithms for Safe and Efficient Manipulation Tasks" Applied Sciences 14, no. 15: 6804. https://doi.org/10.3390/app14156804

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop