1. Introduction
Robotic manipulators create forces and moments related to the change in position in the mass centers of its components when the application is performed. These generated forces and moments can yield undesired movements in the task (inaccuracies and vibrations), resulting in a loss of precision and the necessity of significant support to keep the manipulator fixed to the base. Furthermore, these cause deterioration in the robot (wear and fatigue), reducing the lifetime and leading to sudden failures, which result in pausing the production (a one-day halt due to failure may cost up to EUR 100,000 or 200,000 [
1]). In addition, the equilibrium between these forces and moments may significantly influence energy consumption. Finally, all these issues restrict the manipulator’s functionality in terms of speed, workspace, and application.
The energy exchange must be studied to obtain robotic manipulators (mechanisms) that perform the appropriate tasks with the minimum generation of undesired forces and moments. When the application speed is low, designers can only balance the gravitational and elastic energies by performing a static balance (gravity compensation) [
2,
3] or reducing the shaking force balancing [
4]. High-speed manipulators are more likely to exhibit undesirable disturbances due to shaking moments [
5]. Dynamic balancing, or the balancing of forces and moments, is a way to reduce or eliminate the harmful effects of high-speed mechanisms. In mechanical engineering, balancing mechanisms constitute an important topic that focuses on reducing these forces.
From the studies of Berkof in 1968 [
6,
7,
8,
9], several researchers have proposed different approaches to balancing the shaking force and the shaking moment in mechanisms. The importance of studying equilibrium in such forces and moments (reactionless conditions) in the robotic field began with the work in [
10]. The main objective of dynamic balancing is to promote a synergy in the shaking force balancing and the shaking moment balancing, thereby reducing, as much as possible, the dynamic reactions at the base of the manipulator (mechanism or machine) caused by the structure’s motion [
11,
12]. The design tradeoff between shaking force balancing and shaking moment balancing is a challenging but important goal [
13] since the first can affect the quality of the second and vice versa [
14,
15].
The dynamic balancing has been tackled by adding counter-mass systems to minimize the shaking force and including counter-rotating systems to reduce the shaking moment [
5,
9,
16,
17,
18,
19,
20,
21,
22,
23]. The counterweight systems can also include an equimomental system of point masses for creating a mass redistribution method [
24,
25]. These counterweight systems move the mass center of the whole system (robot). Similarly, auxiliary or duplicated mechanisms in a mirror manner have been added to the robot in order to perform dynamic balancing and thus counteract such forces and moments [
13,
26,
27]. Other works also include a proper choice of trajectories for moment balancing with the use of an auxiliary mechanism to promote force balancing [
28,
29]. In [
30], a pantograph mechanism is dynamically balanced in two sequential steps. First, the balancing conditions for keeping the linear momentum constant are found by using complementary components. Later, the force balancing conditions are determined by using Fisher’s method. Similarly, in [
26,
31], dynamic balancing is given by using specific trajectories, passive joints, and Fisher’s method. Other works include four-bar mechanisms in the development of the balancing of planar and spatial parallel robots [
32,
33,
34]. Nevertheless, counterweight systems and auxiliary mechanisms add more mass to balance the mechanism. This results in a heavier mechanism that consumes more energy and incorporates more complexity into the kinematics and dynamics of the system (robot). Other alternative approaches have addressed the instantaneous balancing conditions for planar and spatial mechanisms by using the screw-theory-based methodology in the necessary instantaneous dynamic balancing conditions [
23]. The use of higher-order derivatives of the balance conditions [
35] is another approach that could result in easier and less expensive methods for the dynamic balancing of a small group of closed-loop linkages. Anther approach to fulfilling the necessary conditions for the complete shaking force and shaking moment is using the equivalence method [
36], where complex planar mechanisms are transformed into simple equivalent links and cranks as the equivalence method [
36]. On the other hand, fulfilling the dynamic balancing conditions assumes strict constraints on the dimensional parameters of linkages or sets very restrictive conditions that are sometimes difficult to achieve in practice.
On the other hand, optimization approaches have been incorporated in the balancing of mechanisms. In [
37], both a counterweight system and a spring are simultaneously designed to minimize the reaction forces of a planar five-bar parallel robot subject to the static balancing conditions (equations that fulfill constant potential energy), and the limits in the design variable vector. Matlab’s Sequential Quadratic Programming (SQP) is used to solve the problem. In this case, the minimization of the shaking force produces a lighter robot than those designed using only counterweight systems (without springs). However, this approach does not consider shaking moment conditions. A reactionless, two-degree-of-freedom, planar parallel mechanism is designed in [
38] to reduce mass and inertia by optimizing a counter-mechanism to moment balance a force-balanced mechanism. The force balancing conditions and the dynamic balancing conditions are set as constraints. The Lagrange multipliers are used to solve the optimization problem. In [
39], the location and orientation of the task to be performed by an orthoglide parallel robot are optimized according to the shaking force changes, the shaking force maximum value, the maximum actuator torques, and the energy consumption subject to the geometric, kinematic, and dynamic constraints. A multiobjective optimization problem is proposed and solved by using the Multiobjective Genetic Algorithm (MOGA), where the obtained design solutions depend on the trajectory to be performed by the robot. In [
40], a reduced number of equivalent dynamic parameters of a set of three point-masses dynamically equivalent to the dynamic parameters of rigid links of a mechanism are designed for balancing the shaking force and shaking moment subject to the limits of the equivalent dynamic parameters (equimomental system [
41,
42]). The approach is stated as a mono-objective optimization problem tackled as a weighted sum approach. The Genetic Algorithm (GA) of Matlab is used to solve it. As the solution to this problem does not provide the shape of the link, another optimization problem is proposed to match the optimal link mass distribution. For this purpose, the dynamic parameters of the link are obtained from a link shape parameterized through cubic B-splines. Then, the second optimization problem consists of finding the Cartesian coordinates of the links formed by B-spline curves that minimize the error of the link inertia subject to the fulfillment of the other link dynamic parameters (mass and Cartesian mass center position). Matlab’s GA is also used to solve the second optimization problem. This two-stage optimization approach can lead to the degradation of the dynamic balancing due to the error detected between the link shape and the equivalent dynamic parameters. In [
43], the forces, torques, and shaking moment sensitivity with respect to position, velocity, and acceleration changes are selected as a weighted performance function in the optimization problem. The constraints are related to the fulfillment of the shaking force balancing requirements. This approach is applied to a two-degree-of-freedom parallel manipulator to follow a cycloidal motion. The obtained design is achieved by SQP, concluding that the shaking moment sensitivities can also reduce the shaking moment. In [
44], to fully balance the force of the mechanism while minimizing the shaking moment, the counterweight approach and the adjusting kinematic parameters [
45,
46] are integrated to provide a unified strategy for partial moment balancing. This is applied to a spherical parallel robot. The AKP technique is used to change the length of the links with the CW method to discover the extra masses and their positions, to minimize the shaking moment while still meeting the requirements of force balancing. The problem is solved by using the SQP algorithm of Matlab. The main drawback of the approach is the requirement of some kinematic relations to fulfill the balancing conditions, which may be difficult to satisfy. In [
47], the time-independent terms of the shaking moment and shaking force are simultaneously optimized by using a weighted sum approach to suggest a balancing design for various operating conditions (tasks). This results in a unified design approach for the mass distribution scheme and the link shape. Nevertheless, the a priori selected tradeoffs based on the objective performance weights require precise knowledge of the importance of each objective and a process called normalization to scale different orders of magnitude in the objectives. Unfortunately, these requirements are not easy to fulfill because, in the former case, a set of uniformly distributed weights does not result in a set of Pareto solutions that are also uniformly distributed, which makes it challenging to set weights in order to achieve a Pareto solution in a desired area of the objective space. Moreover, in the second case, the normalization must be performed by solving several single-objective optimization problems, one for each objective function. This is a very time-consuming task. In addition, the weighted sum approach has problems in non-convex Pareto fronts (it cannot find solutions in this type of front).
Through the reviewed literature, it is observed that both deterministic and stochastic algorithms have been used to explore the design space of the balancing problem. Within deterministic algorithms, gradient-based ones [
48] might become stuck in local solutions, while convex optimization [
49] requires extensive mathematical analysis to transform a multimodal optimization problem into a convex optimization one. In recent years, evolutionary algorithms (a type of stochastic algorithm inspired by natural evolution) have been used to solve the balancing problem due to their insensitivity to the initial condition that tends to leave local regions, their practical implementation (simple and effective) in a variety of optimization problem domains, and their ability to combine different operators into the search. Algorithms based on Genetic Algorithm (GA) [
40,
50,
51,
52] and Differential Evolution (DE) [
53] are the most commonly used in the reviewed literature.
1.1. Contributions
The approaches to dynamic balancing have been laid out for a specific kinematic structure or a family of mechanisms, where it may be challenging to identify design solutions to maintain balancing in a mechanism that has not been discussed in the literature. Moreover, the requirement of assumptions such as having a smaller design space in the optimization problem due to the requirement of certain operational conditions (trajectories), the inclusion of auxiliary devices (mechanisms, counterweights, or transmissions), and the setting of strict constraints on the link parameters could reduce the effectiveness of dynamic balancing, and the use of a constant load limit the search for potential design solutions. These issues restrict the benefits that may be achievable.
Recently, the need to provide a dynamic balancing solution for general-purpose applications in manipulators in a single design step has led to the search for other multitask dynamic balancing approaches that take into account the tradeoff between shaking force balancing and shaking moment balancing. Nevertheless, to the best of the authors’ knowledge, this issue is only addressed in [
47].
In addition to adopting a balancing approach for multipurpose applications as in [
47], the varied load management in the robot’s end-effector is a significant factor in manipulator tasks, which, to the authors’ knowledge, is not addressed in the state-of-the-art. Clearly, managing different loads can deteriorate the balance of the shaking force, shaking moment, and torque delivery. In order to reduce the impacts of load fluctuations on the shaking force, shaking moment, and torque delivery, a robust balancing strategy for robotic manipulators is proposed in this paper. This is the first contribution of the paper.
The proposed robust balancing approach is based on optimization in which the shaking force balancing, shaking moment balancing, and torque delivery of the obtained design are as insensitive as possible to uncertainties in the environment (such as the load) and are also independent of the operating conditions (such as different tasks). This is formulated as a constrained multiobjective optimization problem in which the sensitivity of the time-independent parameters of the shaking force, the shaking momentum, the torque, and their nominal values are all optimized at the same time to provide a set of design tradeoffs. One benefit of the proposal is that the optimization process does not need to know the uncertainty variations (the probability distributions of the variations). Instead, it only needs to know the nominal values of these variations. As a result, the obtained design solutions provide the most competitive performance function tradeoffs for various end-effector loads and trajectories. In this framework, it is also possible to find a set of Pareto solutions in a single algorithm execution, and the decision maker for a single tradeoff is chosen from the design solutions found.
The Non-Dominated Sorting Genetic Algorithm-II (NSGA-II) [
54] is used to solve the constrained multiobjective optimization problem formulated in the proposal. The proposal’s efficacy is applied to a three-degree-of-freedom planar manipulator where both the shape and the optimal mass distribution of links are designed to fulfill designs with less sensitivity in the shaking force, the shaking momentum, and the torque under load variations. Thus, the effectiveness of the proposal is empirically validated. This last result represents the last contribution of the work.
1.2. Paper Organization
The remainder of the paper is structured as follows:
Section 2 states the robust balancing problem. The practical application (case study), its associated multiobjective optimization problem, and the evolutionary optimization technique to solve it are presented in
Section 3. The results and discussion are given in
Section 4, and, finally, the conclusions are drawn in
Section 5.
2. Design Approach Based on Multiobjective Optimization for Shaking Force, Shaking Moment, and Torque Robust Balancing
The proposed design approach consists of the robust balancing of the shaking force, the shaking moment, and the torque of robotic manipulators, assuming that there are uncertainties that are not modeled in the proposal. The proposed robust approach for balancing robotic manipulators is stated as a nonlinear constrained multiobjective optimization problem (NLC-MOP). The solutions provide a set of tradeoffs that perform different synergies among the design criteria and reduce their variations in the presence of uncertainties, i.e., the shaking force, the shaking moment, and the torque are as insensitive as possible to such changes.
The application of the robust balancing approach requires the following simplifying assumptions:
- (1)
The i-th objective function (design criterion) ∀ must be of at least class for developing the design objective variations .
- (2)
The nominal value of the uncertainty parameter is known, but its variations and bounds are not (probability distributions of the variations are not known).
- (3)
The design criteria related to the shaking force, the shaking moment, and the torque can be divided into time-dependent and time-independent terms.
In addition, the non-robust balancing approach given in [
47] is considered to be generally stated as follows:
subject to
The problem formulation (
1)–(4) is related to a multiobjective optimization problem that has been transformed into a single-objective optimization one by using the weighted sum approach [
55], where term
represents the
i-th design objective weight. It includes
design criteria (each one in
,
) that are weighted in
J and
inequality constraints (
3) inherent to the balancing problem. The design criteria are related to the time-independent terms of the shaking force, shaking moment, and torque to make the design not dependent on the operating conditions (performed trajectories) of the robot [
47]. The design parameters allow the distribution of the link masses to fulfill the design objective and constraints. These parameters are related to the link shape and grouped in the vector
with the lower and upper limits
and
, respectively. In contrast to [
47], the formulation includes the uncertain parameter vector
. The uncertain parameter
differs from its nominal value
by
units and is associated with parameters that can change depending on the application. In the case reported in [
47], the uncertain parameter vector is not considered (it does not appear in the optimization problem), and this vector is assumed to be at its nominal value, i.e.,
. Nonetheless, the uncertainties can deteriorate the optimal solution in the balancing problem such that the performance function can be negatively affected, or even the solution can leave the feasible region. For this reason, the formulation of a robust balancing approach is proposed in this work.
The robust balancing approach is formulated as a multiobjective optimization problem where the nominal design objectives and their variations with respect to unknown changes
are considered objective functions. The nominal objectives involve the terms
in (2) associated with the design objectives of the non-robust balancing approach. In the proposed formulation, the uncertainties
present a known nominal value
but their variations
are not known. The previous assumption is common in several applications. For example, considering friction as uncertainty, the friction of the robot joint can increase with the operating time and the environment, among others, and, for this case, the designer knows the initial joint friction (nominal value) and does not know the friction when time goes by (variation value). Thus, the design objective variations refer to the rate of change in the terms
with respect to the uncertainty variations
(which are assumed to be infinitesimal) considering the nominal value of uncertainties
. The
i-th design objective variation with respect to the
j-th uncertainty (sensitivity) can be expressed as in (
5).
Therefore, the general formulation of the robust balancing approach is stated as the multiobjective optimization problem in (
6)–(8). It consists of finding the set of link shapes grouped in the design variable vector
that satisfy different tradeoffs among the nominal design criteria related to the shaking force, shaking moment, and torque, as well as variations in these criteria subject to inherited constraints in the balancing problem.
subject to
It is important to point out in the proposal whether
(
5) is decreased, the changes in the design objectives
due to variations in the uncertainties
are reduced, and, then, the minimization of
can provide solutions as insensible as possible to uncertainty variations in the design objectives
. Moreover, the minimization of the nominal design objectives
can provide solutions with better performance. Then, when the robust balancing problem formulation is solved, the proposal can search for different solutions that fulfill different tradeoffs in minimizing the nominal performance functions and their variations due to the multiobjective nature of the problem formulation.
Section 3 gives the details of the optimization problem for the robust balancing approach in a specific application.
Multiobjective Optimization Algorithm
The Non-Dominated Sorting Genetic Algorithm II (NSGA-II) [
54] is implemented to solve the robust balancing optimization problem (
6)–(8). The NSGA-II is chosen because it can identify a better distribution of solutions and convergence around the true Pareto-optimal front in benchmark optimization problems. Furthermore, as mentioned in the Introduction, GA-based algorithms are more commonly utilized to solve balancing problems.
The pseudocode of the NSGA-II is shown in Algorithm 1. Considering constrained multiobjective optimization problems, the NSGA-II starts with a random parent population sorted based on the non-domination level (using constrained domination). Similar to the GA algorithm, it uses binary tournament selection, recombination, and mutation operators to create the offspring population from the parent population. Both populations are combined and sorted according to the non-domination level. The new parent population is formed by selecting the solutions from the best domination levels until this population is filled. The crowded-comparison operator (based on non-domination level and crowding distance) is used to prune the solutions in the last front of the combined population. The same procedure is done (recombination and mutation) in the new parent population, but now the selection criterion in the binary tournament selection is based on the crowded-comparison operator. This process is repeated until the desired generation is reached.
In the implementation, the simulated binary crossover (SBX) operator and polynomial mutation are used as in the original work [
54]. Nevertheless, the technique to handle bound constraints in the generation of the offspring population is changed to the random bound constraint-handling method [
56]. This method substitutes random values for variables outside the bounds.
On the other hand, the search space for the robust balancing problem is complicated because there are many design variables, many constraints, and many performance functions that need to be optimized. Thus, an elite solution (promising solution) is added to the random parent population to be used in the search for exploration and exploitation in the elite region. Furthermore, the entire region is explored and exploited, as described in the original work. The method of obtaining this elite solution and its parameters are detailed in
Section 4.1.1.
With the aforementioned changes, the NSGA-II is used to find solutions to the robust balancing problem.
Algorithm 1 Pseudocode of the NSGA-II. |
- 1:
- 2:
Generate the initial population with chromosomes. - 3:
Obtain the last chromosome (chromosome ) of the initial population using a promising solution (elite solution). - 4:
Evaluate the performance function vector for the population . - 5:
Evaluate the constraints ∀∧. Sum the normalized violated constraints , i.e., . - 6:
Set the constrained domination, the non-dominance level, and the crowding distance in the parent population . - 7:
while do - 8:
for do - 9:
Select two parents and from by binary tournament for each of them. The selected criterion in the tournament is based on the rank and crowding distance (crowded-comparison operator). - 10:
Generate two children’s chromosomes and through SBX (see Algorithm 2). - 11:
Generate two mutant chromosomes and through polynomial mutation (see Algorithm 3). - 12:
Apply random technique in the bound constraint-handling method for the mutant chromosomes and and store them in . - 13:
end for - 14:
Evaluate the performance function vector of the child population, i.e., . - 15:
Evaluate the constraints ∀∧. Sum the normalized violated constraints . - 16:
Set the constrained domination, the non-dominance level, and the crowding distance for the combined population of the parent population and the child population . - 17:
Select the chromosomes in the combined population that pass to the next population based on the crowded-comparison operator, i.e., based on the non-domination level (the minimum is better) and at the same time based on the crowding distance (the larger distance is preferred). - 18:
- 19:
end while
|
Algorithm 2 Simulated Binary Crossover (SBX). |
- 1:
function SBX(, ) - 2:
if then - 3:
for to D do - 4:
if then - 5:
if then - 6:
- 7:
- 8:
- 9:
Compute and : - 10:
Compute and : - 11:
Compute and : - 12:
Generate the genes and : - 13:
Store and in and , respectively. - 14:
else - 15:
Store and in and , respectively. - 16:
end if - 17:
else - 18:
Store and in and , respectively. - 19:
end if - 20:
end for - 21:
else - 22:
Set and . - 23:
end if - 24:
return and - 25:
endfunction
|
Algorithm 3 Polynomial mutation. |
- 1:
function Polynomial mutation() - 2:
for do - 3:
if then - 4:
- 5:
Determine and : - 6:
- 7:
Determine : - 8:
Set : - 9:
else - 10:
- 11:
end if - 12:
end for - 13:
return
|
5. Conclusions
In this work, a robust design approach is proposed for balancing the shaking force, the shaking moment, and the torque of robotic manipulators. This approach is stated as a constrained multiobjective optimization problem, where the time-independent terms of the shaking force balancing, shaking moment balancing, and torque as well as their variations are proposed as objective functions. The link shape requirement, the motor position condition, and the limits of the design variable vector are the design constraints. The design approach is applied to a particular three-degree-of-freedom parallel-serial manipulator, where 1023 Pareto solutions are obtained through NSGA-II.
The comparative results of the performance function changes with different loads () in the end-effector of the robot indicate that the RBD presents an outstanding reduction in the time-independent terms of the shaking force balancing around , shaking moment balancing around , and torque around with respect to DBD. Thus, the performance function is less influenced by the load parameters because of the reductions in their sensitivities.
On the other hand, the comparative empirical evidence with the RMS values of the shaking force, shaking moment, and torque indicates the following with respect to other design approaches. The selected tradeoff in the obtained Pareto front (named RBD) considerably reduces the variations (sensitivities) in the shaking force, the shaking moment, and the torque with changes in the end-effector mass and through applications that require different speeds and shapes of the trajectory to be performed. In particular, under 60 numerical simulations per design, when the RBD is compared with the DBD, an average of of the results improve the sensitivities in the shaking force, the shaking moment, and the torque. When the RBD is compared with the DTBD, an average of of results decrease their sensitivities. When the RBD is compared with the SFBD, it obtains a tie () in the average of the decrement in the sensitivity. The comparison of the RBD with respect to the SMBD indicates that an average of of the results have improved the sensitivities in the shaking force, the shaking moment, and the torque.
It is also observed that the RBD reduces the applied torque in the interval with respect to the compared mechanisms.
The results also show that the obtained RBD exceeds the performance in the shaking force, the shaking moment, the torque, and its variations when it is compared with the approaches of SFBD or SMBD, i.e., the RBD reduces the torque in , the shaking moment in , and provides competitive average sensitivities in , or the torque in , the shaking force in , and the sensitivities in , when it is compared with approaches that focus on the fulfillment of one balancing condition (shaking force or shaking moment), respectively.
In the case of the comparative results with the DBD and DTBD, the proposed RBD presents superior performance in the torque delivery and in the robustness of the shaking force, shaking moment, and torque (in four out of the six indicators). Thus, the RBD presents a better tradeoff among metrics.
Finally, the proposed design approach can be extended to mechanisms and other robotic manipulators with more degrees of freedom.
One limitation of the proposal is that the tradeoff is tied to how well and efficiently the optimizer works. Thus, future work will include the addition of operators to multiobjective evolutionary algorithms that encourage exploration and exploitation to find different and notable tradeoffs that are better than the obtained metrics in the DBD and DTBD. Another future work option is to come up with a design strategy in which the size of loads or linkages is usually spread around a known mean value and variance. This is also a safe assumption in real-world situations. Future research may also examine the incorporation of vibration sources connected to the elastodynamics of the transmission, couplings, and mechanism components [
59,
60]. Experimental verification of the proposed RBD approach is also another area for future work.