Abstract
Manipulators are increasingly being called upon to perform a wide range of tasks. This paper explores the maximal distance throwing task for robotic manipulators and shows that this characteristic can be incorporated in the kinematic design process. Indeed, knowing the maximum distance that a manipulator can throw objects is useful in determining the viability of certain throwing tasks it might be called upon to execute. This paper studies three optimization problems: optimizing the release state to maximize the throwing distance, optimizing the kinematic trajectory subject to position, velocity, acceleration, and jerk constraints, and finally optimizing the kinematic design of manipulators to maximize the workspace as well as the throwing distance. Three manipulator architectures are used as case studies for these optimizations: a planar RR, a spatial RRR, and a wrist-partitioned 6R manipulator.
1 Introduction
Robotic manipulators are increasingly being called upon to perform a wide range of tasks that extend beyond the conventional tasks found in traditional applications. One such type of task is the throwing of objects. Particularly, the maximal distance throwing task, where an object is thrown the farthest possible, is studied in this work.
Potential applications of this study include industrial automation and search and rescue. In industries where rapid placement of objects is essential, manipulators with throwing capabilities can be used for sorting or relocating items quickly. For instance, in recycling plants, such robots could be employed to separate materials based on their type and weight, throwing them into designated bins. In search and rescue missions, robots capable of throwing lifelines, medical supplies, or communication devices over long distances could be invaluable, especially in terrains where human access is risky or limited.
The maximal distance throwing task is one that is characteristic of the manipulator’s design parameters, such as its link lengths and its actuators’ capabilities. As such, for a given manipulator, the maximal distance throwing optimization need only to be solved once. Of course, the purpose of most manipulators is not merely to throw objects but to perform a variety of tasks; throwing machines specifically designed for the throwing task offer the best throwing performance. However, in conjunction with other criteria, the maximal throwing distance capabilities of a manipulator can be used in the design process.
This work explores the distance throwing task, studies a method of finding the maximum distance throwing capabilities of robotic manipulators, and demonstrates that this characteristic can be used as an optimization goal in the design process. This is explored with case studies of three manipulator architectures, a planar RR manipulator, a spatial RRR manipulator, and a wrist-partitioned 6R manipulator. Proceeding in this manner, i.e., progressively increasing the complexity of the robot architecture, provides some useful insight into the increase of the throwing distance resulting from the introduction of additional joints, such as the base revolute joint and the wrist.
Throwing objects with robotic manipulators is not a new idea. Indeed, many researchers have studied the problem from several points of view. From a machine learning point of view, Aboaf et al. [1] studied the possibility of learning the task of throwing by adjusting the target when an error is detected instead of modifying the model of the manipulator. This is similar to a human’s approach, if the throw is below the target, the next throw will be aimed higher. Many other researchers have also studied the problem from a learning perspective [2–4]. While great performance can be achieved with these methods, the learning process necessarily involves trial and error and when the task changes, a new learning process must be undertaken.
Another approach is to apply control theory to execute throwing motions. For example, Kato et al. [5] developed a controller that actively attempts to predict errors in the throwing distance and that releases the object earlier or later in the trajectory to compensate. While the performance of such approaches is interesting, they are difficult to generalize to manipulators with more degrees-of-freedom (DOFs).
Many researchers have also studied the closely related tasks of juggling [6–13] and catching [14]. Others have studied how humans throw objects [15].
Several robots have been specifically engineered for the task of throwing. For example, there are mono-articular (1-DOF) robots that exhibit the ability to regulate multiple kinematic properties of the throw [16–19]. These properties include velocity, direction, and angular velocity, achieved by allowing the object to roll on the end-effector. In addition, underactuated double pendulum-type manipulators, equipped with nonlinear springs in one or both joints, have been designed with the express purpose of throwing objects [20–23]. Throwing tasks have also served as a platform to showcase the capabilities of planar 2-DOF manipulators equipped with variable viscoelastic joints [24].
Various motion generation techniques have been extensively investigated to optimize the task of precisely throwing an object. For instance, cubic splines in Cartesian space have been employed to dictate a throwing motion implemented on a 6-DOF manipulator [25]. Notably, Frank et al. [26] explored non-spherical object throwing models, providing a comprehensive analysis of ballistic effects such as drag, the Magnus effect, and stabilization of the cylinder’s orientation through the application of a spin, much like throwing an American football. The optimization of throwing motion while maintaining balance using the zero-moment point on a complete humanoid robot model was studied by Kim [15]. Impressively, a humanoid robot was even used to deliver the opening pitch at a Major League Baseball game [27]. Zhang et al. [28] proposed that motion optimization procedures could be significantly accelerated by prioritizing easier-to-test constraints over more complex ones. This approach was demonstrated on a precision throwing task involving a 6-DOF industrial manipulator with various obstacles in its path. Moreover, the principle of dynamic sensitivity was employed to enhance the robustness of precision throws in the face of model uncertainties and zero position calibration errors [29,30].
Researchers have also considered alternative objective functions, such as energy conservation [31] and directional velocity [32].
From a design perspective, the kinematic and dynamic aspects of serial manipulators have been scrutinized with a specific task in mind [33]. A standout example is the design of a planar manipulator aimed at maximizing throwing distance [34]. Although this study was restricted to planar manipulators, it took into account not only the dimensions of each link but also the number of degrees-of-freedom. The study found that, under the given constraints, a 5-DOF planar manipulator provided the optimal throwing distance.
More recently, Erumalla et al. [35] conducted experiments with a 2-DOF planar manipulator to throw and catch a disk-shaped object. The end-effector of this manipulator was also disk-shaped, enabling the object to be thrown and caught without prehension. Bombile and Billard propose a control framework that enables a dual-arm robotic system to grab and toss objects onto a moving target [36] and Kasaei and Kasaei address the challenge of object throwing into a moving basket while avoiding obstacles by employing a deep reinforcement learning strategy [37].
To the authors’ best knowledge, incorporating the distance throwing capabilities of a manipulator as a design consideration along with other objectives has not yet been explored in the literature. Furthermore, the design of spatial manipulators using distance throwing capabilities remains uncharted territory. Most studies examining the throwing task have focused exclusively on planar manipulators.
While a substantial body of work exists on the topic of robotic throwing, to the authors’ best knowledge, these studies have not specifically addressed this application of interest. The incorporation of a manipulator’s distance throwing capabilities as a design consideration, in conjunction with other objectives, remains largely unexplored in the literature. Moreover, the design of spatial manipulators with a focus on enhancing their distance throwing capabilities represents a relatively untapped area of research. It is noteworthy that the majority of studies investigating the throwing task have been predominantly focused on planar manipulators, leaving a gap in our understanding of more complex and versatile spatial manipulators.
This paper is structured as follows: Sec. 2 studies the throwing task and defines the optimization problems, Sec. 3 introduces the three manipulators used as case studies. In Secs. 4 and 5, an analysis of two maximal distance optimization problems is performed and a useful link between the two is found, Sec. 6 explores the distance throwing capabilities of a manipulator as a parameter in its design, and Sec. 7 concludes the paper.
2 Distance Throwing Task
2.1 Ballistic Models and Kinematics.
To effectively assess the distance throwing capabilities of the manipulators examined in this study, we require a functional model of the object’s ballistics. While this study does not consider the effects of drag and wind, we do employ two distinct models. These models range from a simplified version, which may prove beneficial in certain scenarios, to a more comprehensive one that could be required under different circumstances. Both models are depicted in Fig. 1. The first model (Fig. 1(a)) operates under the assumption that the object is projected from the origin of a given coordinate system. In contrast, the second model (Fig. 1(b)) accommodates an initial distance and elevation, both of which could potentially be negative.
While the direction of the throw can easily be determined from , it is not necessary to constrain the direction during the optimization. Most spatial manipulators feature a first joint with a vertical axis, allowing the direction of a throw to be conveniently controlled following any performed optimization.
2.2 Optimization Problems.
This study investigates two distinct optimization problems. The first one focuses on optimizing the manipulator’s state at the point of release. This problem imposes constraints solely on the state, specifically the joint position and velocity. The solution to this problem offers an upper limit on the throwing distance and can serve as a reference for subsequent optimizations. The second optimization task revolves around identifying the maximum throwing distance within the bounds of kinematic constraints. In this case, constraints including position, velocity, acceleration, and jerk must be adhered to throughout the entire trajectory.
2.2.1 Release State Optimization.
The initial optimization problem examined in this study is also the most straightforward. The release state optimization problem (RSOP) is concerned with optimizing the manipulator’s state at the precise moment the object is freed from its gripper. In essence, the trajectory preceding and succeeding the object’s release is not considered in this segment of the research. The constraints for this optimization are limited to position and velocity.
Although this problem might not find direct application in most scenarios, the knowledge derived from its examination can yield valuable insights for ensuing optimizations. For example, the solution to this optimization offers a motion designer the maximum possible throwing distance of a given architecture, considering specific dimensions and joint limitations. Moreover, the solution to this problem can serve as an initial approximation for the more complex optimization problem discussed in the subsequent section.
2.2.2 Trajectory Optimization With Kinematic Constraints.
As previously discussed, the state of the manipulator at the release moment does not encapsulate all the critical considerations when researching object throwing with robotic manipulators. The presence of joint acceleration and jerk constraints may render the attainment of the optimal state unfeasible. Consequently, the trajectory both preceding and following the object’s release deserves consideration.
For this study, we assume that the manipulator initiates and concludes the throwing motion at rest, as indicated in the final two constraints of Eq. (9). It is notable that the manipulator’s state at the release time is the state used to compute the throwing distance. If the acceleration and jerk capabilities of the manipulator under study are sufficiently high, it might be feasible to identify a trajectory that achieves the upper bound provided by the solution to the RSOP, as described in Sec. 2.2.1.
3 Example Manipulators
To gauge the performance of the distinct optimization techniques, we applied each one to three progressively more complex manipulators, as depicted in Fig. 2.
The planar RR manipulator, illustrated in Fig. 2(a), is the first subject of our analysis, chosen for its relative simplicity. Thus, its examination may yield valuable insights.
Next, we study the spatial RRR architecture presented in Fig. 2(b). Given that the first revolute joint’s axis of rotation runs parallel to the gravitational field, the direction of the throw can be readily determined and regulated. It is worth noting that the second and third links of this manipulator correspond to those of the planar RR manipulator (Fig. 2(a)). In this paper, we choose link lengths such that immobilizing the first joint of the RRR manipulator effectively converts it into the RR manipulator.
The third manipulator under consideration in this study is a general wrist-partitioned 6R architecture, as shown in Fig. 2(c). The term 6R denotes a manipulator architecture consisting of six revolute joints linked in a series, a configuration common in many industrial manipulators. Here again, we select link lengths such that immobilizing the wrist joints of the 6R yields the kinematics of the RRR manipulator, and further immobilizing the first joint replicates the kinematics of the RR manipulator. By utilizing these architectures as case studies, we gain progressive insight into the impacts of the vertical first joint and the wrist.
4 Release State Optimization Problem
As elucidated in Sec. 2.2.1, the RSOP aims to optimize the state of the manipulator at the instant the object is released, with the objective of maximizing the throwing distance. This problem does not take into account the trajectory preceding or following the object’s release.
This problem offers an opportunity to examine the variations in the throwing capacities of the three manipulators discussed in Sec. 3. Consequently, we can discern the contributions of the RRR manipulator’s first joint and the 6R manipulator’s wrist to the throwing distance. Moreover, the solution to this problem provides a maximum limit to the throwing distance, which could be instrumental in guiding future optimizations.
4.1 Nontrivial Solutions.
The solution to the RSOP for this manipulator is depicted in Fig. 3, where the two conventional 45 deg angle solutions are also displayed. It can be observed that the simple overhand solution does not achieve the same throwing distance as the optimal throw, and the simple underhand solution does not even manage to reach the floor from underneath.
While this robot may seem unrealistic, the distal link of this manipulator can be interpreted as a wrist. It is quite common for a manipulator’s wrist to have shorter links and higher velocity bounds than the other links and joints. Indeed, this is certainly true of the human arm.
4.2 Objective Function and Constraints.
In this study, we solve all optimization problems numerically, utilizing a sequential quadratic programming (SQP) algorithm as implemented by matlab’s fmincon function. The equations used for the throwing distance are the complete models in Eqs. (2) and (7).
However, this introduces a challenge for the numerical optimization because if the objective value for a given state (optimization guess) is zero and the objective value is also zero for all of its close neighbors, the computed gradient and Hessian matrix used in the SQP algorithm will also be zero. As a result, the optimization will fail due to the inability to compute a viable search direction.
To demonstrate this modification of the objective function, consider the simple pendulum shown in Fig. 4(a). For simplification, we assume the joint velocity to be constant (maximum in the positive direction). This makes the objective function univariate and easily visualized. Figure 4(b) shows the objective value as a function of the joint angle .
It can be observed that the original objective function (Eq. (11)) has large flat areas where the gradient is zero, i.e., where the object does not reach the floor from below. The modified objective function (Eq. (12)) guides the optimization toward a valid solution. This phenomenon is not exclusive to the simple pendulum; it applies to all the manipulators studied. Furthermore, when the object reaches the reference height, the modified and unmodified functions align. The two peaks of this function at deg and deg correspond to the maximum throwing distance in the positive and negative direction, respectively. The bottom of the valley at deg is due to the absolute value of Eq. (2) and corresponds to the object landing at the origin of the reference frame (the object is thrown in the negative direction when deg).
4.3 Initial Guess.
As can be discerned from Fig. 4(b), even for the uncomplicated pendulum in Fig. 4(a), the objective function is both non-convex and discontinuous. Consequently, the selection of the initial guess can greatly influence the convergence of the optimization process. There exist various strategies to refine the initial guess before initiating the optimization procedure.
First and foremost, one might conjecture that to maximize the throwing distance, the velocity of each joint should be maximized as well. For a predetermined manipulator pose, this hypothesis can be implemented via two different methods: the velocity direction for each joint can be chosen a priori (in this study, the positive direction is chosen) or the optimal combination of upper and lower bound velocities can be computed. The latter approach involves comprehensively evaluating the objective function with each combination of minimum/maximum joint velocities. This demands evaluations, where is the number of degrees-of-freedom of the manipulator. For both methods, the initial pose of the manipulator is generated randomly, after which the joint velocity is determined. This supplies the initial guess utilized by the optimization procedure.
Another straightforward method for enhancing the quality of the initial guess is to evaluate a set of random guesses in advance, and to use the best performer as the initial guess for the optimization. The size of this set is a crucial parameter to consider. This study evaluates several set sizes, as will be discussed in Sec. 4.4.
4.4 Methodology and Results (RSOP).
As discussed in Secs. 4.2 and 4.3, multiple ideas were formulated to study the behavior of the optimization. To assess these ideas, numerical experiments were executed using various parameters. Table 1 compiles the optimization procedures that were examined. Optimizations Opt1 through Opt4 apply the concepts from Sec. 4.2, while Opt5 through Opt11 incorporate the ideas from Sec. 4.3.
Code | Objective | Initial guess |
---|---|---|
Opt1 | Eq. (11) | Random |
Opt2 | Eq. (12) | Random |
Opt3 | Eqs. (11) and (13) | Random |
Opt4 | Eqs. (12) and (13) | Random |
Opt5 | Eq. (12) | Random pose, max velocity |
Opt6 | Eq. (12) | Random pose, best min/max velocity |
Opt7 | Eq. (12) | Best of random population of 10 |
Opt8 | Eq. (12) | Best of random population of 50 |
Opt9 | Eq. (12) | Best of random population of 100 |
Opt10 | Eq. (12) | Best of random population of 300 |
Opt11 | Eq. (12) | Best of random population of 1000 |
Code | Objective | Initial guess |
---|---|---|
Opt1 | Eq. (11) | Random |
Opt2 | Eq. (12) | Random |
Opt3 | Eqs. (11) and (13) | Random |
Opt4 | Eqs. (12) and (13) | Random |
Opt5 | Eq. (12) | Random pose, max velocity |
Opt6 | Eq. (12) | Random pose, best min/max velocity |
Opt7 | Eq. (12) | Best of random population of 10 |
Opt8 | Eq. (12) | Best of random population of 50 |
Opt9 | Eq. (12) | Best of random population of 100 |
Opt10 | Eq. (12) | Best of random population of 300 |
Opt11 | Eq. (12) | Best of random population of 1000 |
To assess the optimization procedures in Table 1, each procedure was run 1000 times, with the criteria detailed in Table 2 measured in each test. Moreover, these experiments were conducted on all three manipulators from Sec. 3.
Code | Description |
---|---|
Best (m) | Best objective value after optimization |
Average (m) | Average objective value after optimization |
Average guess (m) | Average objective value before optimization |
Success (%) | Rate of convergence within 5% of best |
Time (ms) | Average computation time per optimization |
Code | Description |
---|---|
Best (m) | Best objective value after optimization |
Average (m) | Average objective value after optimization |
Average guess (m) | Average objective value before optimization |
Success (%) | Rate of convergence within 5% of best |
Time (ms) | Average computation time per optimization |
These numerical experiments were conducted utilizing an Intel Core i5-4690 Haswell 3.5 GHz Quad-Core CPU in the matlab environment. The computation time for this optimization could be substantially reduced by utilizing a lower level, compiled programming language and quicker optimization algorithms. However, the study of numerical optimization algorithms is not the primary focus of this paper.
The link lengths of each manipulator are given in Table 3 and the maximum speed of each joint is fixed at 180 deg per second.
The results of the numerical experiments are compiled in Table 4. This table includes the results from all 11 optimization implementations from Table 1 and reports the measures outlined in Table 2.
Opt1 | Opt2 | Opt3 | Opt4 | Opt5 | Opt6 | Opt7 | Opt8 | Opt9 | Opt10 | Opt11 | |
---|---|---|---|---|---|---|---|---|---|---|---|
RR manipulator | |||||||||||
Best (m) | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 |
Average (m) | 1.74 | 3.00 | 2.95 | 3.20 | 2.07 | 2.23 | 3.13 | 3.22 | 3.22 | 3.22 | 3.22 |
Average guess (m) | 0.34 | 0.17 | 0.35 | 0.20 | 0.77 | 1.13 | 1.17 | 1.65 | 1.86 | 2.18 | 2.47 |
Success (%) | 52.6 | 90.7 | 91.4 | 99.5 | 64.1 | 69.3 | 96.1 | 100 | 100 | 100 | 100 |
Time (ms) | 23.0 | 37.2 | 39.9 | 42.6 | 20.7 | 20.8 | 29.6 | 26.2 | 26.6 | 27.9 | 33.6 |
RRR manipulator | |||||||||||
Best (m) | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 |
Average (m) | 2.51 | 3.93 | 4.12 | 4.14 | 2.92 | 2.94 | 4.14 | 4.21 | 4.23 | 4.22 | 4.22 |
Average guess (m) | 0.43 | 0.26 | 0.41 | 0.22 | 1.20 | 1.64 | 1.33 | 1.87 | 2.12 | 2.49 | 2.85 |
Success (%) | 57.1 | 90.2 | 95.8 | 96.6 | 67.6 | 69.2 | 96.9 | 99.3 | 100 | 100 | 100 |
Time (ms) | 35.2 | 53.0 | 79.5 | 75.9 | 34.1 | 32.0 | 46.9 | 43.4 | 43.1 | 44.5 | 56.4 |
6R manipulator | |||||||||||
Best (m) | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 |
Average (m) | 2.95 | 4.56 | 4.95 | 4.95 | 3.19 | 3.38 | 4.87 | 5.01 | 5.03 | 5.06 | 5.07 |
Average guess (m) | 0.36 | 0.20 | 0.35 | 0.21 | 0.81 | 1.52 | 1.11 | 1.56 | 1.77 | 2.14 | 2.53 |
Success (%) | 54.7 | 83.5 | 92.5 | 92.3 | 58.4 | 63.9 | 91.7 | 95.6 | 96.5 | 97.7 | 98.0 |
Time (ms) | 98.1 | 150 | 265 | 267 | 97.7 | 95.4 | 136 | 137 | 137 | 151 | 201 |
Opt1 | Opt2 | Opt3 | Opt4 | Opt5 | Opt6 | Opt7 | Opt8 | Opt9 | Opt10 | Opt11 | |
---|---|---|---|---|---|---|---|---|---|---|---|
RR manipulator | |||||||||||
Best (m) | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 | 3.22 |
Average (m) | 1.74 | 3.00 | 2.95 | 3.20 | 2.07 | 2.23 | 3.13 | 3.22 | 3.22 | 3.22 | 3.22 |
Average guess (m) | 0.34 | 0.17 | 0.35 | 0.20 | 0.77 | 1.13 | 1.17 | 1.65 | 1.86 | 2.18 | 2.47 |
Success (%) | 52.6 | 90.7 | 91.4 | 99.5 | 64.1 | 69.3 | 96.1 | 100 | 100 | 100 | 100 |
Time (ms) | 23.0 | 37.2 | 39.9 | 42.6 | 20.7 | 20.8 | 29.6 | 26.2 | 26.6 | 27.9 | 33.6 |
RRR manipulator | |||||||||||
Best (m) | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 | 4.23 |
Average (m) | 2.51 | 3.93 | 4.12 | 4.14 | 2.92 | 2.94 | 4.14 | 4.21 | 4.23 | 4.22 | 4.22 |
Average guess (m) | 0.43 | 0.26 | 0.41 | 0.22 | 1.20 | 1.64 | 1.33 | 1.87 | 2.12 | 2.49 | 2.85 |
Success (%) | 57.1 | 90.2 | 95.8 | 96.6 | 67.6 | 69.2 | 96.9 | 99.3 | 100 | 100 | 100 |
Time (ms) | 35.2 | 53.0 | 79.5 | 75.9 | 34.1 | 32.0 | 46.9 | 43.4 | 43.1 | 44.5 | 56.4 |
6R manipulator | |||||||||||
Best (m) | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 | 5.08 |
Average (m) | 2.95 | 4.56 | 4.95 | 4.95 | 3.19 | 3.38 | 4.87 | 5.01 | 5.03 | 5.06 | 5.07 |
Average guess (m) | 0.36 | 0.20 | 0.35 | 0.21 | 0.81 | 1.52 | 1.11 | 1.56 | 1.77 | 2.14 | 2.53 |
Success (%) | 54.7 | 83.5 | 92.5 | 92.3 | 58.4 | 63.9 | 91.7 | 95.6 | 96.5 | 97.7 | 98.0 |
Time (ms) | 98.1 | 150 | 265 | 267 | 97.7 | 95.4 | 136 | 137 | 137 | 151 | 201 |
From the data reported in Table 4, several observations can be drawn. The first is that the throwing distance capabilities are significantly augmented by the first joint of the RRR and 6R manipulators, as well as the wrist of the 6R manipulator. This enhancement occurs even though the first joint does not contribute to the vertical position or velocity, and despite the fact that the links in the wrist are relatively short and the total reach of all three manipulators is equal. The release state posture and throwing distance for each manipulator’s optimal solution are illustrated in Fig. 5, highlighting the effect of the vertical joint and the wrist.
A second observation is that, given sufficient initial guesses and time, all optimization parameters can eventually converge to the best2 solution.
It is also noteworthy that one of the most significant factors contributing to the convergence of the optimization is the absence of flat regions in the objective function, i.e., Eq. (12). In general, however, the optimal optimization appears to be the selection of an initial guess from a population of between 50 and 300 (Opt8–Opt10). Beyond that, the time required to evaluate the entire population increases significantly without yielding much improvement in the likelihood of obtaining the optimal solution. It is worth noting that the addition of the nonlinear constraint in Eq. (13) does provide an increase in the convergence rate, but at a significantly higher computational cost.
5 Kinematic Trajectory Optimization Problem
The solution to the preceding optimization problem (RSOP) offers a theoretical upper bound on the throwing distance capabilities of a manipulator, given the constraints on joint position and velocity. However, practical manipulators have additional kinematic constraints such as bounds on joint acceleration and jerk, which may render the RSOP solution unattainable.
5.1 KTOP Analysis.
In the current work, Eq. (14) is utilized to calculate the components of . It should be pointed out, however, that for many manipulators the jerk bound is significantly large. Consequently, computed using Eqs. (14) and (15) often yield closely similar results.
In order to grasp the influence of acceleration bounds on the maximum throwing distance capabilities of manipulators, an analysis of KTOP solutions is carried out with a range of acceleration bounds. Analogous to the procedure followed in the RSOP section above, for each manipulator, 1000 tests are executed, each with seven acceleration bounds ranging from 10 rad/s2 to 0.5 rad/s2. As the bounds decrease, it is expected that the maximum throwing distance will decrease correspondingly. For this test, the joint bounds imposed are summarized in Table 5, with the maximum joint speed set to 180 deg per second for each joint.
Moreover, the optimal solution to the RSOP found in the experiments reported in Sec. 4.4 has been employed as one of the initial guesses. Lastly, the optimization parameters chosen for this analysis are those from Opt9 in Sec. 4.4, i.e., Eq. (12) with the best of 100 random guesses chosen as the initial guess. The results are presented in Table 6, where the row “RSOP guess” reports the solution obtained when the RSOP solution is used as the initial guess.
Accel. (rad/s ) | 10.0 | 5.00 | 2.50 | 1.50 | 1.00 | 0.75 | 0.50 |
---|---|---|---|---|---|---|---|
RR manipulator | |||||||
Best (m) | 3.22 | 3.22 | 3.22 | 3.00 | 2.71 | 2.24 | 1.72 |
Average (m) | 3.22 | 3.22 | 3.20 | 2.87 | 2.26 | 1.87 | 1.51 |
RSOP guess (m) | 3.22 | 3.22 | 3.22 | 3.00 | 2.71 | 2.24 | 1.72 |
Success (%) | 100 | 100 | 95.3 | 53.2 | 20.4 | 20.2 | 19.2 |
Time (ms) | 28.4 | 29.5 | 30.0 | 33.5 | 33.4 | 37.9 | 44.2 |
RRR manipulator | |||||||
Best (m) | 4.23 | 4.23 | 3.72 | 2.96 | 2.47 | 2.19 | 1.70 |
Average (m) | 4.10 | 4.05 | 3.47 | 2.60 | 2.15 | 1.82 | 1.32 |
RSOP guess (m) | 4.23 | 4.23 | 3.72 | 2.96 | 2.47 | 2.19 | 1.70 |
Success (%) | 94.1 | 92.5 | 87.4 | 75.6 | 71.8 | 62.7 | 46.7 |
Time (ms) | 56.7 | 47.4 | 52.7 | 63.1 | 73.3 | 77.3 | 78.0 |
6R manipulator | |||||||
Best (m) | 5.08 | 5.08 | 4.53 | 3.54 | 2.88 | 2.50 | 1.89 |
Average (m) | 4.75 | 4.68 | 3.94 | 2.78 | 1.81 | 1.09 | 0.48 |
RSOP guess (m) | 5.08 | 5.08 | 4.53 | 3.54 | 2.88 | 2.50 | 1.89 |
Success (%) | 87.0 | 86.0 | 78.4 | 65.0 | 49.7 | 31.7 | 16.0 |
Time (ms) | 183 | 183 | 193 | 196 | 159 | 148 | 92.8 |
Accel. (rad/s ) | 10.0 | 5.00 | 2.50 | 1.50 | 1.00 | 0.75 | 0.50 |
---|---|---|---|---|---|---|---|
RR manipulator | |||||||
Best (m) | 3.22 | 3.22 | 3.22 | 3.00 | 2.71 | 2.24 | 1.72 |
Average (m) | 3.22 | 3.22 | 3.20 | 2.87 | 2.26 | 1.87 | 1.51 |
RSOP guess (m) | 3.22 | 3.22 | 3.22 | 3.00 | 2.71 | 2.24 | 1.72 |
Success (%) | 100 | 100 | 95.3 | 53.2 | 20.4 | 20.2 | 19.2 |
Time (ms) | 28.4 | 29.5 | 30.0 | 33.5 | 33.4 | 37.9 | 44.2 |
RRR manipulator | |||||||
Best (m) | 4.23 | 4.23 | 3.72 | 2.96 | 2.47 | 2.19 | 1.70 |
Average (m) | 4.10 | 4.05 | 3.47 | 2.60 | 2.15 | 1.82 | 1.32 |
RSOP guess (m) | 4.23 | 4.23 | 3.72 | 2.96 | 2.47 | 2.19 | 1.70 |
Success (%) | 94.1 | 92.5 | 87.4 | 75.6 | 71.8 | 62.7 | 46.7 |
Time (ms) | 56.7 | 47.4 | 52.7 | 63.1 | 73.3 | 77.3 | 78.0 |
6R manipulator | |||||||
Best (m) | 5.08 | 5.08 | 4.53 | 3.54 | 2.88 | 2.50 | 1.89 |
Average (m) | 4.75 | 4.68 | 3.94 | 2.78 | 1.81 | 1.09 | 0.48 |
RSOP guess (m) | 5.08 | 5.08 | 4.53 | 3.54 | 2.88 | 2.50 | 1.89 |
Success (%) | 87.0 | 86.0 | 78.4 | 65.0 | 49.7 | 31.7 | 16.0 |
Time (ms) | 183 | 183 | 193 | 196 | 159 | 148 | 92.8 |
Two key observations should be noted in these results. The first is that the success rate of this problem’s optimization is notably inferior than that of the RSOP, particularly when the acceleration bounds are extremely strict. This suggests that the RSOP presents a considerably simpler problem to solve. The second observation is that whenever the RSOP solution is utilized as an initial guess for the KTOP, the global optimum was consistently achieved. This is particularly compelling because it implies that the simpler RSOP can be employed to generate an initial guess that can then be used to solve the more complex KTOP.
It can also be observed that as the acceleration bounds tighten, the efficacy of the optimal throw correspondingly diminishes. Furthermore, it can be observed that more stringent acceleration bounds result in a significant decline in the success rate. This can be attributed to the substantial reduction in the subspace of solutions that satisfy all constraints.
5.2 Additional Discussion on KTOP Results.
To delve deeper into the results outlined in Table 6, we examine a specific case. This discussion focuses on a scenario involving a 6R manipulator, subject to a joint acceleration constraint of 1.00 rad/s2. The optimization process, as detailed in Opt9 from Table 1, involved selecting 100 random points within the optimization design space. The optimal point from this set (characterized by the lowest) was then used as the starting point for the optimization process (best of 100). This method was replicated 1000 times to gather data on the success rate of convergence and the effectiveness of the random initial guesses. In this particular instance, the average “best of 100” demonstrated a throwing distance of 0.94 m prior to optimization, which improved to 1.81 m post-optimization. Notably, 49.7% of the 1000 trials successfully located the global optimum, which was identified as 2.88 m.
These results indicate that the solution derived from the RSOP differs from the optimal solution for the KTOP. However, the optimization process reliably identifies the global solution. Furthermore, the impact of the acceleration constraint is evident. The limited space available for the joints to reach full velocity before needing to decelerate, to avoid breaching the position constraint on the opposite side, is clearly observed.
6 Kinematic Design With Throwing Capacity
As previously articulated, the maximum throwing distance of a manipulator only needs to be determined once, as it is dependent solely on the design of the manipulator. However, it can also be deployed as a parameter in the kinematic design of the manipulator. Naturally, a multitude of factors are considered when architecting a new robotic manipulator. In this study, an example design of an RR manipulator and a 6R manipulator are optimized, taking into account both the reachable workspace and throwing capacity. The rationale for not incorporating the spatial RRR manipulator will be elucidated in the subsequent subsection. To constrain this problem, the total reach of the manipulator—that is, the summation of the link lengths—remains constant. Through this relatively simplified example, it is demonstrated that the throwing distance capabilities of a manipulator can indeed be incorporated in the design process.
6.1 RR/RRR Kinematic Design.
Indeed, this observation reveals that the co-optimization of the workspace and the throwing distance for the planar RR and spatial RRR manipulators presents striking similarities. Consequently, this paper will not engage in the optimization of the spatial RRR, as it is unlikely to provide any additional insights.
Figure 7 shows the objective function as a function of for various values of and with the design constraints summarized in Table 7. The computation of these curves is only done for illustration purposes since an optimization procedure would be used in a real design process. Indeed, the on each curve indicates the optimal value as found by a single SQP optimization run with an initial guess of m. In any case, all these curves are convex and finding the optimum can be solved by a great number of algorithms.
As anticipated, when , only the throwing distance is considered. Consequently, the optimal value of is 0 which essentially creates a single pendulum with a maximum angular velocity of . On the other hand, when , only the workspace of the manipulator is considered and the optimal design results in . Interestingly, the optimal design never has a value of exceeding 0.5. This is due to the fact that the angular velocity of the second link sums the velocities of both joints, thereby contributing more significantly to the maximum throwing distance. Clearly, this design process is rather simplistic as it considers only two objectives. If a larger number of design objectives were taken into account, the curves of the objective function would be significantly different.
6.2 6R Kinematic Design.
As shown in Fig. 8, the decoupled 6R architecture studied in this paper only has three lengths that are relevant to the workspace and throwing distance (if is known), namely, , , and . Indeed, the location of joint 4 on the axis does not affect the end-effector position. The same can be said for joint 6 on the axis.
The workspace of this manipulator architecture is either a sphere or a spherical shell whose outer radius is the sum of the link lengths (excluding ). The inner radius depends on the longest link and the sum of the lengths of the others. If none of the relevant lengths (, , ) is larger than the sum of the other two, there is no inner boundary and the workspace is a full sphere. This makes the workspace a constant function for a large part of the design space if the total length is constant. Therefore, it is uninteresting as an optimization objective. The kinematic design of the 6R manipulator studied in this paper will, therefore, only optimize the throwing distance, with the following constraints:
the total reach is constant at m,
none of the links (, , ) is longer than the sum of the others,
no link is shorter than 0.1 m to keep the manipulator’s structure reasonably intact.
Figure 9 shows a contour plot of the objective function as a function of and . Since the total reach is constant, . In this figure, the constraints are shown to illustrate which constraint is active at each of the bounds of the search space. Again, a indicates the optimum as found by a single SQP run with an initial guess of . Again, this objective function is convex and easy to solve but this is only a simple example to show the distance throwing as a function of the kinematic parameters of the manipulator. The throwing distance could be added to any kinematic synthesis optimization.
6.3 Discussion on Design Principles.
In addressing the kinematic design of robotic manipulators for maximal distance throwing, it is essential to understand the fundamental principles that govern their motion and capabilities. Kinematics plays a pivotal role in robotic manipulator design. The fundamental objective in kinematic design is to determine the geometric arrangement of the manipulator’s components to achieve the desired motion or performance. For throwing tasks, this involves optimizing the link lengths, and the sequence of movements to maximize the throwing distance.
The link lengths are crucial in defining the manipulator’s reach and flexibility. In this optimization process, these parameters were varied to explore their impact on the throwing distance. It was observed that longer links increase reach but may increase the footprint of the manipulator. It was also observed that there is a fundamental compromise between throwing distance and workspace when a maximum footprint is imposed. The number of DoFs of a manipulator determines its ability to position and orient the end-effector. This study considers manipulators with varying DoFs, analyzing how this impacts the ability to optimize for maximal throwing distance. The trajectory of the end-effector is a critical aspect of kinematic design, especially for dynamic tasks like throwing. The approach in this paper involved plotting feasible trajectories that consider the limitations of joint velocities and accelerations, ensuring that the manipulator can achieve the desired throw without exceeding its physical capabilities. In future works, trajectory optimization methods involving dynamic constraints and smoothness are planned. The workspace of a manipulator defines the physical boundaries within which the robotic manipulator can operate. Since manipulators are called upon to perform various tasks, not only throwing objects, a compromise between workspace and other capabilities must be considered in diverse applications.
7 Conclusion
This study examines the determination of maximal throwing distance capabilities for robotic manipulators, using three example designs: a planar RR manipulator, a spatial RRR manipulator, and a decoupled 6R manipulator. It further evaluates the potential for incorporating these throwing capabilities into the design strategy for manipulators.
First, it was shown that solving the maximal distance throwing problem is not as trivial as one would initially think, even for the simple planar RR manipulator. The common 45 deg angle launch is considerably sub-optimal. We also highlighted the significant contribution of factors such as the vertical position of the end-effector at launch, which cannot be overlooked in a more realistic ballistic model. To enhance the effectiveness of the optimization process, we proposed an approach that leverages the best initial guess from a set of random trials, offering a promising balance between computational time and convergence rate. Future work could further explore other global optimization strategies to refine this process.
The study delved into the role of the vertical first joint in RRR and 6R manipulators and the wrist of the 6R manipulator, which were found to significantly augment the throwing distance capabilities. These outcomes offer a fresh perspective on the design of robotic manipulators, given that the vertical first joint does not directly contribute to the vertical velocity of the end-effector, and the wrist links of the 6R manipulator are relatively short.
When considering the effect of joint bounds, it was shown that the velocity bounds must be high or the acceleration bounds must be low before a decrease in the distance throwing capabilities is observed. Solving the distance throwing problem with no kinematic constraints is much easier than solving it with all these constraints such as joint acceleration and jerk. Moreover, it was discovered that the solution to the easier, less constrained problem always resulted in finding the global solution to the more complex kinematically constrained problem, even when strict acceleration constraints were imposed.
Furthermore, our examination of the impact of joint bounds revealed that unless velocity bounds are high or acceleration bounds are low, the throwing distance capabilities are typically unaffected. It was also determined that the problem of maximal distance throwing with no kinematic constraints is more straightforward to solve than its counterpart with kinematic constraints such as joint acceleration and jerk. Interestingly, we found that the solution to the less constrained problem invariably led to the global solution of the more complex, kinematically constrained problem even when stringent acceleration constraints were in place.
This research provides insights into the complex relationship between the kinematic design of robotic manipulators and their throwing performance. It presents several promising strategies and considerations for the design and optimization of robots with specific task requirements, ultimately paving the way for more targeted and efficient robotic designs in the future.
Looking ahead, we plan to extend this research to encompass a broader range of design objectives and more complex manipulator models. We also intend to investigate the impact of dynamic constraints, such as joint torques and forces, to further enhance our understanding and optimization of robotic manipulator design.
Footnote
Since the optimization method employed in this work (SQP) is a gradient-based method, the global optimum cannot be guaranteed. However, considering the large number of optimizations performed in the analyses (11,000 for each manipulator), it is assumed that the best solution found is the global optimum.