A comparison of algebraic and iterative procedures for the generation of the workspace of parallel robots

. Computing the workspace of parallel manipulators is critical to characterize their behavior. Usually, workspace is obtained by iterating the robot’s forward kinematics for a discrete range of poses, resulting in a cloud of reachable points. Here we propose an alternative algebraic formulation that is based on a recursive generation of volumes for solids of revolution to evaluate each limb’s workspace. The robot’s workspace is then obtained as the intersection of the limbs’ workspaces. With a practical example on the CaPaMan design and on a 3-UPR architecture, both the numerical and algebraic methods are discussed with their features and limits.


Introduction
The architecture of parallel robots consists of two platforms-one fixed, one mobilethat are connected by multiple kinematic chains, called limbs, that determine their relative motion [1][2].When compared to serial robotic architectures, which are made of a single kinematic chain from base to end-effector, parallel robots usually perform better in speed and repeatability.Furthermore, as each limb is usually actuated by a single motor, the moving masses can be limited to move with a lower inertia and higher efficiency than in the case of serial robots.However, the complex kinematics and the multiple physical constraints on the mobile platform result in a smaller workspace that can be further split into distinct working volumes by singular poses and assembly configurations [1].These issues make the workspace of a parallel robot difficult to be represented with its geometrical shape, so that, rather than using the full reachable workspace, many researchers opt to operate a parallel robot in a subset of it that corresponds to suitable geometrical shapes, such as cylinders or spheres [3].
In general, the workspace is calculated in a recursive way, by iterating the forward kinematic problem of the robot with discretized pose parameters ranging from their minimum to maximum values.This workspace generation procedure results in a point cloud that includes the reachable poses of the robot, and as such it may be difficult for an easy geometrical interpretation unless a subset with a "familiar", easy-to-use shape (e.g.cylinder, cube, sphere) is used.Furthermore, while a good approximation of the workspace can only be obtained with a fine discretization interval, large intervals are needed for efficient computation with shorter times to solution [1][2].
An algebraic approach for the generation of the workspace of robots has been often proposed as an alternative to the popular iterative solution.This approach provides an exact solution for workspace volume and topology by generating the workspace geometrically as a solid of revolution when considering revolute motion generation [4][5].A rich literature on the topic can be found for serial manipulators, but the application of this method to parallel robots has been limited because of the complexity in defining and modelling their boundary conditions and constraints [1][2].Most of the applications of algebraic approaches for the determination of the workspace of parallel robots are related to planar parallel manipulators, as a generation procedure can be simplified from volumes to areas [6][7][8].A solution has been also provided for a few parallel structures, such as Delta Robots [9][10], spherical manipulators [11][12], and others [13][14].However, a general approach has not been proposed yet, as only structure-specific formulations have given solutions that are available in literature.
In this paper, the characteristics of iterative and algebraic approaches are discussed and compared.First, a general algorithm is presented to generate the workspace of a parallel robot for each of those methods.Then, two examples are reported as referring to the CaPaMan design [15][16] and a 3-UPR design [17][18][19][20] to compare the solutions and to discuss advantages and disadvantages of each of them.

Workspace determination
In this section, two main approaches to generate the workspace of a parallel manipulator are described: an iterative method and an algebraic one.The iterative method evaluates workspace boundaries as a point cloud of reachable configurations by discretizing the motion parameters and computing the position of the end-effector for each parameter combination.Conversely, the algebraic approach evaluates the workspace volume by generating a volume of reachable points for each limb of the robot and then obtaining the overall workspace of the robot as the intersection of such volumes.

Workspace discretization
A discrete approach for workspace evaluation can be obtained from the forward kinematic problem of a robot.The continuous range of motion [ , ;  , ] of each active joint parameter   of actuation vector  can be discretized into a set of n points with an interval of ∆  from each other, as The forward kinematic problem (FKP)  =  FKP () can be used to compute the endeffector pose  corresponding to a given combination of the m active joint parameters.Thus, by considering all the possible point combinations given by the discretization (2) of each joint parameter, the workspace can be generated as a point cloud of n m poses.
The exponential nature of the number of resulting poses means that the determination of a workspace with the discretization method can be extremely taxing from a computational point of view.Out of the two parameters that influence the number of loops, m is an intrinsic parameter that is defined by the robot architecture and it cannot be modified, whereas n is a function of the chosen discretization interval, as formulated in (2), and it can only be reduced at the expense of point density, which reduces the resolution of the workspace and risks missing critical points where the manipulator behaves singularly.However, this approach is widely used because of its simplicity as in [2], as it only requires knowledge of the forward kinematic problem of the robot.

Algebraic geometrical approach
In the algebraic geometrical approach, the workspace of a parallel manipulator can be computed by intersecting the workspace volumes that is generated by each of its limbs.This method does not require any a priori modelling of the manipulator but only its topological layout and constraints, in contrast with the previously described approach, which requires the FKP.The algebraic approach starts by determining the workspace Λ  of each limb, which is obtained as a volume of revolution by considering the rotation of each link of the limb's kinematic chain around the axes of its revolute joints.For clarity, a practical example is here reported in Fig. 1 for a UPS kinematic chain (universal-prismatic-spherical joints, with the prismatic joint   actuated by a linear motor as per Gough-Stewart platform [1][2]).The universal and spherical joints are decomposed into a series of revolute joints (i.e., two consecutive revolute joints  1 and  2 along the x-and y-axes for the universal joint, and three consecutive revolute joints  3 ,  4 , and  5 along the x-, y-, and z-axes respectively for the spherical joint).Thus, the limb workspace can be obtained as due to the sequence of the joint motions as ) where Rot k is a rotation matrix around the k-axis and Tr k is a translation matrix along the k-axis.The resulting workspace is a family of spheres S that can be expressed as   : ( −  0 ) 2 + ( −  0 ) 2 + ( −  0 ) 2 =   2 (4) These spheres are all centered on the extremity of the limb fixed onto the base in ( 0 ,  0 ,  0 ) and they are characterized by variable radius   as family parameter, which corresponds to the length of the linear actuator in the limb and is thus related to its motion parameter and its lower and upper boundaries.By considering the actuation constraints, the limb workspace can be determined as the union of these spheres as (5) Once the limb workspaces Λ  have been defined, the overall workspace of the parallel manipulator Λ can be computed as their intersection [21] as (6) When compared to the previous method, the algebraic geometrical approach is computationally efficient and provides an exact solution rather than an approximated one.However, the highly coupled behavior of different limbs of a parallel manipulator makes the implementation of self-collision constraints difficult and can result in unexpected operational failure.A first solution can represent a theoretical reachable workspace of the robot, without considering limb collisions.

Numerical examples
In this section, the above-mentioned methods are compared by referring to two examples of parallel manipulators: a lower-mobility mechanism that was designed for earthquake simulations, CaPaMan [15][16], and a robotic leg mechanism [17][18][19][20].

CaPaMan
The CaPaMan parallel robot has been conceived to simulate the 3D motion modes of earthquakes [16].As shown in Fig. 2, CaPaMan is a lower-mobility manipulator with three limbs with a PaPS kinematic chain based on a four-bar parallelogram (Pa) [15].With reference to the diagram in Fig. 2a where where   =   cos   and   =   sin   +ℎ  are function of motion variable   and geometrical parameters   and ℎ  .By using (7), the workspace of CaPaMan with  1 =  2 =  3 = 100 , ℎ 1 = ℎ 2 = ℎ 3 = 100 ,   = 50  has been computed by discretizing actuation variables { 1 ,  2 ,  3 } with a step ∆ = /36 , with the results shown in Fig. 3; and by using the proposed algebraic geometrical method, with results shown in Fig. 4.

3-UPR mechanism
The 3-UPR parallel manipulator in this example has been designed for the locomotion system of service robots [17][18][19][20].The mechanism design is shown in Fig. 5, and its performance is analyzed in [2,20].With reference to the diagram in Fig. 5a, the FKP of the system can be formulated as By using (9), the workspace of a 3-UPR mechanism with  = 100 ,  , = 200 ,  , = 300  has been computed by discretizing actuation variables { 1 ,  2 ,  3 } with a step ∆ = 10 , with the results shown in Fig. 6; and by using the proposed algebraic geometrical method, with results shown in Fig. 7. a. b.

Results and discussion
Both the proposed algebraic geometrical method and the discretized approach in the examples above have been computed in MATLAB 2021a on a Windows 10 computer with a 3.70 GHz 6-core CPU (AMD Ryzen 5 5600X).In both cases, the algebraic approach computes a general geometrical solution in less than 0.01 s, whereas the discretized workspace is obtained after 3.20 s for the CaPaMan and 0.40 s for the UPR mechanism.Thus, the algebraic geometrical method is computationally more efficient than the discretized one and provides a solution rather than an approximated one as from the other procedure.However, the discretized workspace can include self-collision constraints that have not be implemented in the algebraic formulation up to now.Furthermore, the geometrical approach only results in the position workspace of the manipulator, without giving information on the orientation.In conclusion, the algebraic method is more precise and efficient for an evaluation and representation of the workspace, whereas the discretized workspace enables the inclusion of self-collision and can provide further information on the manipulator behavior that cannot be seen with the algebraic geometrical approach.

Conclusions
In this paper, two different methods for the determination of the workspace of parallel manipulators are compared: an iterative method based on the discretization of pose parameters, and a geometrical approach with an algebraic formulation.After briefly introducing the methods, advantages and disadvantages of both approaches are outlined through two examples on lower-mobility parallel manipulators with three degrees of freedom.Even if the discretized approach provides more information on the workspace, the algebraic formulation provides a faster exact solution that can be used for a fast representation of the workspace without the need of a kinematic model, as well as for an exact determination of the workspace boundaries.

Fig. 1 .
Fig. 1.Algebraic geometrical generation of workspace volume: a.A kinematic scheme with axes of rotation of the joints of each limb; b.An example workspace Λ of a parallel manipulator obtained as a solid of revolution by following the procedure in Eqs.(3-5).