1. Introduction
A parallel robot with configurable platform (PRCP) is a special parallel mechanism in which the end-effector (EE) has internal Degrees-of-Freedom (DoFs). In most previous works, this is achieved by designing the EE as a closed-loop kinematic chain that can be reconfigured during the motion according to users’ needs. In this work, we will focus on planar PRCPs having only revolute joints (in the rest of this work, R denotes a revolute joint and R an actuated revolute joint; RR...R denotes a chain of revolute joints connected by rigid links, where the number of letters indicates the number of joints).
One of the first examples of PRCPs was in [1], where the authors studied a planar 4-DoF gripper and optimized its design according to suitable kinematic indexes. Later, this concept was extended to 3-DoF spatial mechanisms having translational [2] or spherical [3] motion. In [4], the concept of PRCPs was extended to a larger class of architectures and a general screw-theoretic framework was presented to compute the mobility of these mechanisms. In [5], a 4-DoF PRCP, designed for multi-finger gripping (with two contact points), was studied in terms of its kinematics and singularity analysis. Several robots with a foldable platform were designed by Dahmouche et al., having either 4- [6], 7- [7] or 8-DoFs motion [8]; this way, the EE was provided with cutting [6] or grasping [7,8] functionality. For these robots, screw-theoretical analyses of the wrenches that can be applied to the environment by the EE were presented in [8,9]. In [10], it was shown that a kinematotropic linkage can also be used as the EE of a PRCP. More recently, a systematic design approach was presented in [11] for the development of PRCPs with 4- to 6-DoFs having one internal DoF in the EE; also, a general synthesis method for PRCPs (some of which have closed-loop EEs) was presented in [12].
A number of architectures with an EE having an internal DoF were explored by Pierrot et al., who studied several 4-DoFs spatial PRCPs based on the Delta robot, the first of which was the H4 robot presented in [13]. Later, a control system for the robot was introduced in [14], while in [15], the authors designed a robot prototype; the dynamic model of H4 was presented by Choi et al. in [16]. Other robot architectures derived from the H4, with an articulated EE having internal DoFs, are I4 [17] and Par4 [18,19]; an architecture for a robot conceptually similar to Par4, having 4 DoFs and without parasitic motions, was also presented in [20]. A general approach for the type synthesis of similar mechanisms was later presented in [21]. Another Delta-inspired PRCP was presented in [22]: the robot has a six-bar closed-loop EE and is capable of performing Schönflies motions.
Lambert et al. [23] studied “PentaG”, a 5-DoFs spatial robot with two EEs able to grasp objects and perform Schönflies motion; its architecture was later generalized to a 7-DoFs haptic interface with redundant actuation [24]. Two spatial, 3-DoF PRCPs with a similar concept were presented in [25]. In [26], Lambert and Herder presented a literature review on PRCPs and proposed general results on the singularity and mobility analysis of this class of robots; later, in [27], a general method was presented to derive the complete Jacobians of PRCPs through screw theory. An extension of the configurable-EE concept to cable-driven systems was also presented in [28].
PRCPs’ predicted applications are where extra DoFs beyond those needed to position and orient the EE are required to interact with the environment: for instance, PRCPs can be employed when the robot has to grasp objects [1,2,3,6,7,8]. An alternative solution would be mounting a gripper on the EE of a conventional parallel robot, but the gripper and its motor increase the moving inertia of the EE, which reduces the dynamic performance of the robot. PRCPs, instead, have all the motors located on the robot base and their configurable EE can provide an integrated grasping functionality.
PRCPs were also applied in the design of haptic interfaces where the operator can interact with the robot through several contact points on the EE: this design can lead to a smoother experience of the virtual environment with respect to standard haptic systems [5]. Other proposed applications for PRCPs are for robot surgery such as laparoscopy [6] and for rehabilitation systems [29].
The design and control of parallel robots require solving their Direct and Inverse Kinematic Problem (DKP and IKP, respectively), the former of which can be especially complex, and the more so for robots with many DoFs such as PRCPs [4]. Generally, authors aim at developing analytical approaches: these, albeit slower than numerical methods, provide insight into the number of possible solutions for the DKP and IKP. For planar mechanisms, the usual method is to write loop-closure equations, which can be reduced to a system of polynomial equations (e.g., by using the tangent half-angle substitution). This system of equations can then be reduced to a single characteristic polynomial in one variable, through algebraic manipulation. For example, this method is applied in [30] to a 3-RRR, 3-DoF planar robot; later, these results were extended to 3-DoF planar robots with three general, independent, actuated kinematic chains [31].
An alternative method that is suited to solve the DKP for planar mechanisms is bilateration: here, the goal is to obtain the coordinates of points in the plane from their relative distances (similarly, one speaks of trilateration when considering sets of points in three dimensions). Since this approach is entirely distance-based, it is independent from the choice of the reference frame and does not require variable eliminations nor tangent-half-angle substitutions (unlike conventional analytical methods), which generally lead to numerical instabilities; also, it can be written in a compact form where all quantities have the same unit of length. While the concept of bilateration is old [32,33], its application to robotics is relatively recent. A general review of these methods is in [34,35]. In [36,37], the authors show how to apply bilateration for solving the DKP of planar mechanisms with rigid EE and revolute joints, similar to the ones considered in this work. Bilateration was also applied in several other sectors; we mention the localization of mobile robots [38] and cable-based robot measuring systems [39]. For a review of the state of the art on Euclidean-distance geometry problems and algorithms, we refer the reader to [40].
In the analysis of parallel robots, another necessary step is to identify singular configurations, where the EE has DoFs that cannot be controlled [41]: it is well known that singularities may disrupt the correct operation of robot mechanisms, thus their identification is fundamental for robot control. Early work on the topic is by Gosselin and Angeles [42], who proposed a general classification of the singularities based on the Jacobian matrices of the direct and inverse kinematics. Later, other works on the classification of parallel singularities [43,44] showed the necessity of taking into account also the kinematics of passive joints. In [45], the author proposed an application of Invariant Theory for the purpose of singularity analysis and found conditions for singularity based on Grassmann–Cayley algebra. Regarding the singularities of PRCPs, the first study was in [46] for the H4 and I4 families of architectures; later, in [47] the authors found the full set of singular configurations for the H4 from the Jacobian matrix. An analysis of the singularities for the H4 robot through screw theory was presented in [48].
In this work, we consider planar PRCPs, where the EE is an n-R closed-loop and n RRR chains connect the EE to the base. The paper is organized as follows. We begin with a general introduction to bilateration in Section 2; this method is then applied in Section 3 to the solution of the DKP and the IKP for the PRCPs at hand. Furthermore, we show how to derive the singularity configurations for the inverse and direct kinematics in Section 4. In Section 5, we show the results both from a numerical simulation and a series of experimental tests on a prototype. The tests will also show the behavior of the mechanism close to a singularity configuration. Finally, in Section 6 we discuss our conclusions and suggest possible developments for our work.
The goal of our work is both to apply the bilateration method to the kinematic analysis of a general class of planar manipulators, highlighting its advantages in terms of ease of analysis, and to lay foundational work in the development of a particular 5-DoF PRCP by solving its kinematics and identifying its singular configurations. The PRCP at hand, shown in Section 5, is at present merely a prototype, but it could be usefully developed into a flexible robotic platform capable of grasping, moving and orienting objects in the plane.
This manuscript develops a previous work first presented in [49], by proving several conjectures therein contained (Section 3.2) and by adding the analysis of the singular configurations for the class of the considered PRCPs (Section 4); the behavior of the robot around a singular configuration is also presented in the multimedia attachment (Section 5).
2. Bilateration
Bilateration is a method to find the coordinates of a pointPk, given its distances from two other pointsPiandPj; the positionspi=Pi−O,pj=Pj−Owith respect to the fixed coordinate frame(O,x,y)are assumed to be known.
For convenience, we define the squared distancesi,j=∥pi−pj∥2between any two pointsPiandPj . The Cayley–Menger bideterminant [34] of two sets of n pointsPi1 ,⋯,Pin andPj1 ,⋯,Pjn is then defined as the scalar number
DPi1 ,⋯,Pin ;Pj1 ,⋯,Pjn =2−12n01⋯11si1,j1⋯si1,jn⋮⋮⋱⋮1sin,j1⋯sin,jn
For conciseness, we abbreviate the bideterminantDPi1 ,⋯,Pin ;Pi1 ,⋯,Pin of a setPi1 ,⋯,Pin with respect to itself asDPi1 ,⋯,Pin . We can now define the transformation matrix of three pointsPi,PjandPkas
Zi,j,k=1D(Pi,Pj)D(Pi,Pj;Pi,Pk)−2V(Pi,Pj,Pk)2V(Pi,Pj,Pk)D(Pi,Pj;Pi,Pk)
In Equation (2),V(Pi,Pj,Pk)=±12D(Pi,Pj,Pk)is the signed area of triangle▵Pi Pj Pk, thus
-
if pointsPi,PjandPk are ordered in counterclockwise sense (see Figure 1a), the area is positive;
-
if pointsPi,PjandPk are ordered in clockwise sense (see Figure 1b), the area is negative.
Definingpij=Pj−Piandpik=Pk−Pi , one can prove [32] that
pik=Zi,j,k pij
and thusPkis found fromPi,Pjand the distances between the three points. In the following, we will use the shorthand notationPi,Pj→Pkto indicate the procedure of finding pointPkfromPiandPj , by using the known point distances and Equation (3). Notably, Equations (1)–(3) are independent of the choice of the coordinate frame. Since there are two possible orderings of the points (clockwise or counterclockwise, see Figure 1), bilateration generally provides two possible solutions.
3. Kinematic Analysis
The schematic of a general n-RRR robot is shown in Figure 2a; two example cases are reported for completeness in Appendix A. The centers of the n actuated R joints on the fixed base are denoted asAi,i∈{1,⋯,n}, and their position vectors areai=Ai−O=xAi ,yAi Twith respect to the base coordinate frame(O,x,y); the actuated joint variables are anglesθi. The centers of the mobile R joints are denoted asPi,i∈{1,⋯,2n}, and their coordinates arepi=xPi ,yPi T . In the following, all links and all joints are modeled as perfectly rigid; the readers interested in joint-flexibility modeling are referred, for instance, to [50]. The (constant) link lengths are defined as
ci=pi−ai,ci=∥ci∥i∈{1,⋯,n}di=pn+i−pi=dix,diyT,di=∥di∥i∈{1,⋯,n}li=pn+i+1−pn+i=lix,liyT,li=∥li∥i∈{1,⋯,n−1}ln=pn+1−p2n=lnx,lnyT,ln=∥ln∥
From Grübler’s equation, it can be seen that the PRCP at hand has3[(3n+1)−1]−2(n+n+2n)=nDoFs; the vector of actuated joint coordinatesθ=θ1,⋯,θnTalso has n components, thus the robot is fully actuated. The EE pose can be defined by an n-dimensional vector of independent variables; we choose vectorπ=xPn+1 ,yPn+1 ,ϕ1,ϕ2,⋯,ϕn−2T, where anglesϕi’s are those formed by the links of lengthli with the horizontal axis (see Figure 2b). VariablesxPn+1 andyPn+1 define the position of (a point of) the EE, whereas variablesϕi’s define the EE shape.
3.1. Inverse Displacement Analysis
For the IKP, one seeks to find the input vectorθgiven the desired output poseπ. Solving the IKP is straightforward, as is usually the case for parallel manipulators. From the coordinates of a pointPion the EE, one can find the next pointPi+1on the kinematic chain as
xPn+i+1 =xPn+i +licosϕiyPn+i+1 =yPn+i +lisinϕii∈{1,⋯,n−2}
Therefore, sincexPn+1 ,yPn+1 andϕ1are known fromπ, one can find the position of pointPn+2. Similarly, one can find pointPn+3fromPn+2andϕ2 ; repeatedly applying Equation (5) one finds all points on the kinematic chain up to and includingP2n−1. Finally, we find pointP2nfrom bilateration as(Pn+1,P2n−1)→P2n(the distances between pointsPn+1,P2n−1andP2nare all known). Since the actual configuration of the EE is known, we can disregard the spurious solutions out of the two ones forP2n provided by Equations (2) and (3).
At this point, since allPi’s are known (fori∈{n+1,⋯,2n} ), the IKP reduces to the well-known problem of the assembly of n RRR dyads, each corresponding to an RRR chain. From the lengthsci,dione finds the coordinates ofPiby using(Ai,Pn+i)→Pi : then, the actuated joint angle of each RRR chain is given byθi=2xPi ,yPi . Applying this equation repeatedly, one may find all the n unknownθiin vectorθ. Since bilateration provides two positions forPi , this shows that there are, in the general case, two real and distinct solutions for each RRR chain from the base to the EE. It can be shown that this holds if and only if|ci−di|≤∥pn+i−ai∥≤ci+di. Geometrically, this condition defines an annulus comprised between the circles of radii|ci−di|andci+dicentered inAi. IfPn+iis on the boundary of the annulus, there is one solution for the bilateration betweenAi,Pn+iandPi; ifPn+i is outside the annulus, there are no solutions. In conclusion, the IKP for an n-RRR robot can thus have up to2nsolutions.
3.2. Direct Displacement Analysis
The DKP is more complex than the IKP. In this case, the vectorθis known, and we seek to derive the EE pose, defined by vectorπ . We will first present a method to analyze a general n–RRR robot (see Figure 2a) by means of bilateration; then, as an example, we will show an application to a 5-RRR robot.
Fromθand the lengthsciof linksAi Pi, the position of pointsPi,i∈{1,⋯,n}is directly found as
pi=ai+cicos(θi)sin(θi)
We can now simplify the mechanism analysis, by defining an equivalent rigid structure (see Figure 2b) where all linksAi Piare removed and pointsPiare fixed on the ground link: one can see that the structure obtained has indeed3[(2n+1)−1]−2(n+2n)=0DoFs. Solving the DKP is then equivalent to finding pointsPi,i∈{n+1,⋯,2n}from the known distancesdiandli; this problem appears suited to be analyzed by means of bilateration.
We start by choosing the unknown variable that we seek to find; at the end of the analysis, we will obtain a single equation in this unknown. Since bilateration is a distance-based method, we could choose the distance between any two points as the unknown, except obviously the fixed distances between points connected by links. Without loss of generality, we chooses2,n+1.
We then choose a bilateration sequence: this is the sequence of n bilateration stepsPi,Pj→Pk,Pj,Pk→Pl,⋯for finding all points on the EE. The simplest choice for this sequence is(P1,P2)→Pn+1,(P2,Pn+1)→Pn+2,(P3,Pn+2)→Pn+3,⋯,(Pn,P2n−1)→P2n, namely: from the coordinates ofP1andP2, we find the coordinates ofPn+1, then the coordinates ofPn+2from the points already found, and so on, where all coordinates are written as functions of the unknowns2,n+1 . See Figure 3a, where a 5-RR structure is taken as an example. Since each bilateration step provides two solutions, in the DKP we will retain only those which lead to a feasible solution for the complete mechanism.
Finally, we write the closure condition, which depends on the remaining link length not used in the bilateration sequence; with the choices we have made so far, this becomes
sn+1,2n=∥pn+1−p2n∥2=ln2
The final expression forsn+1,2nwill be an algebraic function in the unknowns2,n+1, containing a number of nested radicals. These can be removed through well-known algebraic techniques, such as those in MATLAB’s Symbolic Math Toolbox; however, the greater the number of RR chains, the more cumbersome the expression forsn+1,2n becomes. Notably, as remarked in [36], removing the radicals “is actually the only costly step in the whole process” and can be avoided if a numerical solution is sufficient. Finally, one obtains a univariate polynomial ins2,n+1that can be solved either through algebraic or numerical methods: each real and positive root corresponds to a value ofs2,n+1that can be substituted in the expressions for pointsPi,i∈{n+1,⋯,2n}to obtain a potential pose for the EE (and thus a solution for the DKP).
As an example, the method seen above will be now applied to a 5–RRR PRCP. We simplify the mechanism, obtaining a 5–RR structure (Figure 3a), by using Equation (6). Then, we define the three parameters for the bilateration:
(a)
unknown variable:s2,6
(b)
bilateration sequence:[(P1,P2)→P6,(P2,P6)→P7,(P3,P7)→P8,(P4,P8)→P9,(P5,P9)→P10]
(c)
closure condition:s6,10=∥p6−p10∥2=l52
The bilateration sequence is shown in Figure 3a.
We have developed a script in MATLAB to solve the DKP for a number of n-RRR robot architectures (withn≤6) by removing all radicals in the equation for the closure condition by an iterative algorithm. In the following, we report our observations.
-
The method lends itself easily to generalization for more complex architectures: however, as one may expect, the computational complexity of solving the DKP grows with the number of RRR chains. This is mostly due to the algebraic manipulations required to remove all radicals in the closure equation; these operations are well beyond human feasibility even forn=4and have thus required the use of a symbolic analysis package.
-
The time and resources needed to tackle the DKP are dependent on the choice of bilateration sequence and can be greatly reduced through a careful choice. Considering again the example in Figure 3, it was found that using the sequence[(P1,P2)→P6,(P2,P6)→P7,(P3,P7)→P8,(P5,P6)→P10,(P4,P10)→P9] (see Figure 3b) instead of the one previously indicated in point (b) the time required to obtain a solution is much shorter. The script was run with MATLAB R2019a and an Intel Core processor i7-8700 CPU at 3.20: with this setup, the DKP was solved in two days with the first choice for the bilateration sequence and in ten minutes with the second one. Our empirical observation is that the bilateration sequence is optimized by taking approximately the same number of steps in clockwise sense (such as(P3,P7)→P8 in the last sequence, see Figure 3b) and in counterclockwise sense (such as(P5,P6)→P10): under this guideline, there are fewer nested radicals in the final closure conditions, which then becomes easier to simplify.
-
We conjecture that, for an n-RRR robot, the characteristic univariate polynomial has degree2n+1−4, namely 12, 28, 60 and 124 for, respectively,n=3, 4, 5 and 6.
We verified our conjectures for3≤n≤6, by numerically verifying, for a number of generic architectures, that all the (complex) solutions of the final polynomial equation satisfy the closure loop equations of the original mechanism. We also verified that our conjecture is true forn=7 . However, in this case, due to the increasing computational cost needed to obtain a univariate polynomial, we preferred to compute all 252 solutions of the problem by a purely numerical approach, such as homotopy continuation, through the software Bertini [51]. Moreover, we found special architectures (in terms of link lengths and positions of the fixed joints) for the 3-, 4- and 5-RR structures such that the DKP has 12, 28 and 60 real and distinct solutions, respectively. Note that the rigid-EE, 3-DoF linkage in [30] can be seen as a special case of the n-RRR architectures considered here forn=3 . In [30], it was shown that said linkage can have up to six distinct solutions. In our analysis, for generality, we also include solutions where the EE can “flip” into its symmetric form (which requires the EE to rotate outside the plane of motion): this doubles the number of solutions. It is also possible to analyze the DKP through bilateration without this assumption.
The parameters for the special architectures mentioned above are reported in Table 1, Table 2 and Table 3 and the corresponding solutions are in Table 4, Table 5 and Table 6. These parameters were found by means of a genetic-algorithm search (similarly to the approach used in [52,53] for a spatial robot), using the MATLAB routine ga with a population of 200 individuals and a MATLAB interface to Bertini [54]: for each n, the algorithm iteratively searches for the architecture parameters that lead to the maximum number of real and distinct solutions. For each case, the algorithm converges within 18 generations (or fewer) to an architecture that has as many real and distinct solutions as the characteristic univariate polynomial degree.
4. Singularity Analysis 4.1. General Classification
With the definitions of the joint vectorθand the pose vectorπ given in Section 3, the kinematic constraints of the linkage can be written in the general form:
f(π,θ)=0
assuming that all constraints are holonomic, that is, they can be expressed in configuration form.
Differentiating Equation (8) with respect to time, we obtain a relationship between the input joint rates and the EE velocity, as follows:
∂f∂π⏟Jππ˙+∂f∂θ⏟Jθθ˙=0
whereJπandJθ are the Jacobian matrices of the direct and of the inverse kinematics, respectively. Since we only consider fully-actuated robots, where the number of DoFs is equal to the number of actuators, the Jacobians are square matrices and thus they are rank deficient if and only if their determinant is zero, in which case we say that the parallel manipulator is at a singular configuration. Depending on which matrix is rank deficient, there can be different types of singularities. We refer to the standard classification in [42] that distinguishes between three types of singularities. Note also that more refined and complete classifications, which take into account the kinematics of passive joints, can be found in [43,44]. The three types of singularities from [42] are defined in the following.
(1)
A type-1 kinematic singularity occurs whendetJθ=0. In this case, the null space ofJθis not empty, thus there exists some nonzeroθ˙that yieldsπ˙=0 in Equation (9). Therefore, infinitesimal motions of the EE along certain directions cannot be accomplished with finite joint rates and the manipulator loses one or more DoFs. Type-1 kinematic singularities usually occur at the workspace boundary or where different branches of the IKP converge [42].
(2)
A type-2 kinematic singularity occurs whendetJπ=0. In this case, there exist some nonzeroπ˙that yieldsθ˙=0. The EE can have infinitesimal motions while all actuators are locked and the EE gains one or more uncontrolled DoFs. Type-2 kinematic singularities usually occur where different branches of the DKP meet.
(3)
A type-3 singularity occurs when bothJπandJθ are singular. Generally, this type of singularity can only occur for manipulators with special architectures. At these configurations, Equation (8) degenerates to the identity0=0. The EE can have infinitesimal motions while the actuators are locked and it can also remain stationary while the actuators undergo infinitesimal motions.
4.2. Definition of the Jacobian Matrices
To define the Jacobian matricesJπandJθ for the PRCPs at hand, we write the loop equation for each RRR chain from the base to the EE:
pn+i=ai+ci+di,i∈{1,⋯,n}
Differentiating Equation (10) with respect to time (and considering that vectorscianddihave fixed lengths), one has
p˙n+i=θ˙ik×ci+θ˙i+ψ˙ik×di
wherekis the vector orthogonal to the plane of motion, and we have useda˙i=0, since pointsAiare fixed. By dot-multiplying bydiwe obtain an equation without the passive joint anglesψi:
p˙n+i·di=θ˙ik×ci·di+θ˙i+ψ˙ik×di·di=θ˙ik·ci×di
using known properties of the triple vector product.
In a similar fashion, one can also find the velocity of pointPn+iby writing the closure equation for the firsti−1links on the EE kinematic chain (starting from pointPn+1) and differentiating with respect to time. One thus obtainsp˙n+ifrom the time derivativeπ˙=x˙Pn+1 ,y˙Pn+1 ,ϕ˙1,ϕ˙2,⋯,ϕ˙n−2of the pose vector as
p˙n+i=x˙Pn+1 y˙Pn+1 +∑j=1i−1ϕ˙jk×lj,i∈{1,⋯,n−1}
By dot-multiplying Equation (13) again bydi , and combining the result with Equation (12), one has
θ˙ik·ci×di=x˙Pn+1 y˙Pn+1 ·di+∑j=1i−1ϕ˙jk·lj×di
The term at the left-hand side of Equation (14) depends onθ˙, while the terms on the right-hand side only depend onπ˙. We thus haven−1linear relationships between the actuated joint velocities and the derivative of the EE pose, from which we can derive the firstn−1rows of matricesJθandJπ. Finally, we use bilateration to find pointP2nas(Pn+1,P2n−1)→P2nand differentiate with respect to time, thus obtainingp˙2nas a function ofπ˙; setting
θ˙nk·cn×dn=p˙2n·dn,
we find the last row of the Jacobian matrices. By setting the determinants ofJθandJπand solving the resulting equations for the poseπ, we can obtain the full set of input-output singularities for the mechanisms at hand.
From Equation (14), it can be seen that the Jacobian of the inverse kinematicsJθis, in general, a diagonal matrix for all PRCPs in the class here considered, having elementsk·ci×di on the main diagonal. This matrix is singular if and only if any of these elements is zero; ignoring degenerate cases where one link has zero length, we see that this corresponds to a configuration where two links in a RRR chain from the base to the EE are aligned, either in a stretched-out or folded-back configuration, as shown in Figure 4. These configurations are therefore type-1 kinematic singularities.
Analyzing type-2 kinematic singularities, on the other hand, is more difficult: we will consider the 5–RRR robot as an example.
4.3. Jacobian Matrices of a 5-RRR Pcrp
In this case, we define the joint and pose vectors asθ=θ1,θ2,θ3,θ4,θ5Tandπ=xP6 ,yP6 ,ϕ1,ϕ2,ϕ3T , respectively. By applying the procedure described in Section 4.2, we obtain the matrices
Jπ=d1xd1y000d2xd2yk·l1×d200d3xd3yk·l1×d3k·l2×d30d4xd4yk·l1×d4k·l2×d4k·l3×d4d5xd5yefg
and
Jθ=k·c1×d100000k·c2×d200000k·c3×d300000k·c4×d400000k·c5×d5
where the scalar quantities e, f and g are defined in Appendix B.
Type-1 singularities have already been found, for the most general case, in Section 4.2. Type-2 singularities for this PRCP can be found analyzing matrixJπ . In Figure 5 we present three examples of singular configurations.
(a)
A type-2 singularity occurs when all linksPi Pi+5¯ are parallel (Figure 5a). In this case, one can see that the first two columns ofJπ from Equation (16) are linearly dependent and thus the matrix is singular. The EE gains a uncontrolled DoF, namely, the rigid translation in the direction orthogonal to the parallel links.
(b)
If linksP1 P6¯,P6 P7¯, andP7 P2¯ are aligned (Figure 5b), thenk·l1×d2=0andd1is a scalar multiple ofd2, so that the first two rows ofJπare linearly dependent. In this configuration, pointsP6andP7move perpendicularly tod1, while the EE undergoes small deformations. By symmetry, this singular configuration extends to the cases where the linksP2 P7¯,P7 P8¯,P8 P3¯,P3 P8¯,P8 P9¯,P9 P4¯,P4 P9¯,P9 P10¯,P10 P5¯orP5 P10¯,P10 P6¯,P6 P1¯are aligned.
(c)
In Figure 5c we show another type of singularity, first noted by Crapo in [45] for a similar type of structure, that can also be applied in our case. For a given linkPi Pi+1¯on the EE, we define pointNi, at the intersection of the lines through the links connectingPi Pi+1¯to the base, and pointQi, at the intersection of the lines through the links on the EE connected toPi Pi+1¯; also, let T be at the intersection of the linesQi Ni↔andQj Nj↔. If the linePk Pn+k↔(through the distal link on the remaining RR chain connecting the EE to the base) also passes through point T, we have a type-2 singular configuration. Note that this includes the special case where all linesPi Pn+i↔pass through the same point T.
5. Examples
A 5-RRR prototype has been developed at IRI (Institut de Robòtica i Informàtica Industrial, Barcelona, Spain) as shown in Figure 6. Its main parameters are reported in Table 7, together with the input angles for an example configuration for which we solve the DKP using the MATLAB script reported in Section 3.2.
From Section 3.2 we know that the characteristic polynomial can have at most25+1−4=60 distinct solutions; it is found that, for the geometric parameters in Table 7, the polynomial has six real solutions. Three of them correspond to feasible configurations, which are reported in Table 8; the other solutions are not reachable because of physical constraints, such as interference between the links or because they correspond to unfeasible values of the unknowns2,6.
The robot was actuated by five servo units with a DC motor and integrated gear reducer (Robotis Dynamixel AX-12A). The motors have a limited rotation range of 300°, which could limit the reachable workspace; however, this was not found to be an issue for any of the motions considered in our tests. Each motor can be controlled through 1024 discrete steps by a script we developed starting from MATLAB code provided by the manufacturer. At every time-step during the motion, we define the EE poseπ , which is defined by five variables. Then, using the inverse kinematics formulas from Section 3.1, we calculate the vector of motor anglesθ: these are the angles to be set for the actuators.
The prototype in Figure 6 was studied in terms of position and singularity analysis. Some experimental tests were also performed. In the multimedia attachment for this work (see video abstract) a number of possible motions are presented:
(i) the EE translates and rotates while keeping a fixed configuration, like a conventional (redundantly-actuated) rigid-EE manipulator;
(ii)
the robot switches between two different solutions of the IKP for a given EE poseπ;
(iii)
the robot passes through a type-1 singularity configuration (see Section 4);
(iv)
finally, the EE configures itself in order to grip a ball at a first position and moves it to a different position, to present a potential application of having a configurable platform. A schematic of this motion is reported for clarity in Figure 7.
6. Conclusions
In this work, we have considered a general class of planar parallel robots having a configurable platform (PRCPs), for which we performed the position and the singularity analysis. While the inverse kinematics can be readily solved through conventional methods used for planar linkages, the direct kinematics are more challenging; we show that the bilateration method, which has a relatively recent history in robotics research, can be usefully applied to this problem. In particular, we developed a general procedure that can be applied to PRCPs of n-RRR type, having any number n of kinematic chains, and we found heuristics to reduce the solution time. Furthermore, we showed how to derive the Jacobian matrices of these robots, again through bilateration; from the Jacobians, we also showed how to find singular configurations. For an exemplifying PRCP with five kinematic chains, we showed both simulations that illustrate how to solve the direct kinematics and results from experiments performed on a prototype.
Our goals for future work in this field are:
-
to prove our conjectures regarding the degree of the characteristic polynomial of the direct kinematics, namely, verifying that it is the polynomial of lowest degree for all n. Furthermore, we aim to find a general example architectures having the maximum possible number of real and distinct solutions (at least for the casen=6);
- to obtain more general results for planar PRCPs with n kinematic chains, for instance including chains that have prismatic joints;
- to perform a statistical analysis of the time required to solve the direct kinematics, both with bilateration and through conventional analytical methods, thus showing the difference in the required computational effort;
-
to find the full set of singular configurations for any number of kinematic chains, extending the work in Section 4;
-
to further develop the prototype in order to apply it to practical manipulation tasks, for instance by using the flexible EE as a gripper, as shown in Figure 7 and in the multimedia attachment.
i | xPi [mm] | yPi [mm] | di[mm] | li[mm] |
---|---|---|---|---|
1 | 0 | 0 | 2.031 | 1.087 |
2 | 1 | 0 | 1.890 | 1.449 |
3 | −0.775 | 0.889 | 1.385 | 2.204 |
i | xPi [mm] | yPi [mm] | di[mm] | li[mm] |
---|---|---|---|---|
1 | 0 | 0 | 2.196 | 1.373 |
2 | 1 | 0 | 1.952 | 1.606 |
3 | 1.017 | −0.998 | 1.703 | 1.881 |
4 | 2.071 | −1.056 | 2.186 | 2.200 |
i | xPi [mm] | yPi [mm] | di[mm] | li[mm] |
---|---|---|---|---|
1 | 0 | 0 | 1.888 | 1.714 |
2 | 1 | 0 | 2.221 | 2.211 |
3 | −1.101 | −0.0284 | 2.131 | 2.049 |
4 | −1.399 | −2.088 | 2.099 | 1.857 |
5 | −2.201 | −0.442 | 1.946 | 2.186 |
s2,4 | xP4 [mm] | yP4 [mm] | ϕ1[°] | s2,4 | xP4 [mm] | yP4 [mm] | ϕ1[°] |
---|---|---|---|---|---|---|---|
1.419 | 1.852 | 0.832 | 112.254 | 6.803 | −0.840 | −1.849 | −175.797 |
2.649 | 1.237 | −1.610 | −145.848 | 7.686 | −1.281 | 1.575 | −124.472 |
3.991 | 0.566 | 1.950 | 107.386 | 7.925 | −1.401 | −1.470 | −94.413 |
4.921 | 0.101 | 2.028 | 84.062 | 8.175 | −1.526 | 1.340 | −6.086 |
5.717 | −0.297 | −2.009 | 6.196 | 8.366 | −1.621 | 1.222 | −49.419 |
6.327 | −0.602 | 1.939 | −6.847 | 8.728 | −1.803 | 0.935 | −9.103 |
s2,5 | xP5 [mm] | yP5 [mm] | ϕ1[°] | ϕ2[°] | s2,5 | xP5 [mm] | yP5 [mm] | ϕ1[°] | ϕ2[°] |
---|---|---|---|---|---|---|---|---|---|
1.439 | 2.191 | 0.141 | 88.308 | −82.185 | 2.877 | 1.472 | −1.629 | −175.676 | −34.982 |
1.496 | 2.162 | −0.380 | −100.786 | 66.259 | 3.364 | 1.228 | −1.820 | 23.770 | 103.060 |
1.538 | 2.141 | 0.486 | −60.445 | 129.994 | 3.709 | 1.056 | 1.925 | −161.920 | −29.821 |
1.567 | 2.127 | −0.546 | −109.921 | −156.138 | 4.343 | 0.739 | −2.068 | 17.808 | −139.497 |
1.575 | 2.123 | −0.560 | 57.699 | 176.872 | 4.640 | 0.590 | 2.115 | −16.369 | −139.009 |
1.796 | 2.012 | 0.879 | 128.995 | −64.617 | 5.647 | 0.0867 | 2.194 | −12.185 | −69.531 |
1.811 | 2.005 | −0.895 | 46.566 | −100.651 | 6.318 | −0.249 | −2.181 | 9.747 | 174.167 |
1.812 | 2.004 | −0.897 | −130.048 | 17.285 | 6.432 | −0.306 | −2.174 | 9.346 | 12.964 |
1.885 | 1.968 | −0.974 | −134.621 | 168.071 | 6.551 | −0.365 | −2.165 | 106.607 | −64.919 |
1.898 | 1.961 | −0.987 | 43.857 | 155.226 | 8.334 | −1.257 | 1.800 | −74.637 | −82.443 |
1.910 | 1.955 | −0.999 | −136.083 | 7.983 | 8.774 | −1.477 | −1.625 | 65.920 | −72.265 |
1.924 | 1.948 | −1.013 | 43.135 | −102.777 | 10.076 | −2.128 | −0.542 | −10.938 | 53.300 |
2.119 | 1.851 | 1.181 | −38.567 | −98.047 | 10.166 | −2.173 | −0.316 | −14.058 | −68.241 |
2.291 | 1.765 | −1.306 | −154.742 | 138.322 | 10.172 | −2.176 | −0.295 | 24.982 | 13.511 |
s2,6 | xP6 [mm] | yP6 [mm] | ϕ1[°] | ϕ2[°] | ϕ3[°] | s2,6 | xP6 [mm] | yP6 [mm] | ϕ1[°] | ϕ2[°] | ϕ3[°] |
---|---|---|---|---|---|---|---|---|---|---|---|
0.788 | 1.888 | −0.0132 | 65.8 | −134.9 | −99.3 | 6.241 | −0.839 | −1.691 | −17.7 | 178.1 | −116.0 |
0.788 | 1.887 | 0.0191 | −65.4 | 135.2 | −99.3 | 6.244 | −0.840 | 1.690 | 17.7 | −83.8 | −99.3 |
0.990 | 1.786 | −0.610 | 35.1 | 178.4 | −99.6 | 6.409 | −0.923 | −1.647 | 100.0 | 23.4 | −99.4 |
1.086 | 1.739 | −0.735 | −120.1 | 178.2 | 16.3 | 6.444 | −0.940 | −1.637 | −19.1 | 177.9 | 122.3 |
1.098 | 1.733 | −0.749 | −121.2 | 178.1 | −17.6 | 6.457 | −0.947 | −1.633 | 99.2 | −92.2 | 31.2 |
1.192 | 1.686 | −0.850 | −128.7 | 177.8 | 106.1 | 6.474 | −0.956 | −1.628 | 98.9 | −95.1 | −119.3 |
1.246 | 1.659 | −0.901 | −132.5 | 177.6 | 92.0 | 6.493 | −0.965 | −1.622 | 98.5 | −98.1 | 122.1 |
1.273 | 1.645 | 0.926 | −24.1 | 177.4 | −99.5 | 6.502 | −0.970 | −1.620 | 98.4 | −99.4 | 108.6 |
1.396 | 1.583 | 1.028 | 141.9 | −175.7 | −94.8 | 6.534 | −0.986 | −1.610 | −19.8 | 177.8 | 108.6 |
1.467 | 1.548 | 1.080 | 145.8 | −175.4 | −95.1 | 6.635 | −1.036 | −1.578 | 96.1 | −116.5 | −98.1 |
1.876 | 1.343 | −1.326 | −164.0 | 175.6 | 53.0 | 6.676 | −1.056 | 1.564 | −95.3 | 103.4 | −93.3 |
2.061 | 1.251 | −1.413 | 10.8 | 149.5 | −178.5 | 6.711 | −1.074 | 1.552 | −94.7 | 108.4 | −94.5 |
2.061 | 1.251 | −1.413 | −170.7 | 48.3 | 179.5 | 6.859 | −1.148 | 1.499 | 22.3 | −176.0 | −93.6 |
2.070 | 1.246 | −1.418 | 10.7 | −179.0 | 147.2 | 6.962 | −1.200 | 1.457 | −90.2 | 133.7 | −96.6 |
2.226 | 1.169 | −1.482 | 9.1 | −179.2 | −98.8 | 7.084 | −1.260 | 1.405 | 24.2 | −175.8 | −94.4 |
2.606 | 0.978 | −1.614 | 5.6 | 138.4 | −99.3 | 7.465 | −1.451 | 1.207 | −80.5 | 7.5 | −99.2 |
2.606 | 0.978 | −1.614 | 172.9 | 37.5 | −99.3 | 8.097 | −1.767 | −0.663 | −37.8 | 49.2 | 179.6 |
3.501 | 0.531 | −1.811 | 151.9 | 169.4 | −97.6 | 8.097 | −1.767 | −0.663 | 64.7 | −21.0 | −176.7 |
3.747 | 0.408 | 1.843 | 2.5 | −178.2 | −107.9 | 8.123 | −1.780 | −0.628 | 63.9 | −167.4 | −12.1 |
4.420 | 0.0717 | 1.886 | 6.5 | −109.7 | −179.3 | 8.134 | −1.786 | −0.612 | −38.7 | 175.0 | 47.0 |
4.420 | 0.0716 | 1.886 | −134.1 | −13.8 | −175.8 | 8.163 | −1.800 | −0.569 | −39.5 | 174.9 | −97.9 |
4.605 | −0.0210 | 1.887 | −130.8 | −11.7 | −99.4 | 8.295 | −1.866 | −0.285 | 56.0 | −169.9 | −97.1 |
4.819 | −0.128 | 1.883 | −127.0 | −158.3 | 8.5 | 8.323 | −1.880 | −0.171 | 53.6 | −170.6 | −97.0 |
5.678 | −0.558 | −1.803 | 112.4 | 126.2 | −96.2 | 8.331 | −1.884 | −0.119 | −47.8 | 173.2 | −97.8 |
5.830 | −0.633 | −1.778 | 109.8 | 111.9 | −95.0 | 8.333 | −1.885 | 0.0953 | −52.1 | 172.1 | 27.8 |
6.047 | −0.742 | 1.736 | −106.1 | −104.6 | 86.6 | 8.334 | −1.885 | 0.0904 | 48.4 | −171.8 | −31.1 |
6.053 | −0.745 | −1.734 | −16.4 | 178.2 | 28.8 | 8.336 | −1.886 | 0.0671 | 48.8 | −36.1 | −177.8 |
6.080 | −0.758 | 1.728 | −105.6 | −100.2 | 103.5 | 8.336 | −1.886 | 0.0671 | −51.5 | 33.2 | 178.9 |
6.097 | −0.767 | 1.725 | −105.3 | −97.7 | 127.1 | 8.338 | −1.887 | −0.0241 | −49.7 | 35.1 | −99.3 |
6.126 | −0.782 | 1.718 | −104.8 | −93.2 | 4.2 | 8.338 | −1.887 | −0.0240 | 50.6 | −34.2 | −99.3 |
i | xAi [mm] | yAi [mm] | θi[°] |
---|---|---|---|
1 | 0 | 0 | 64.8 |
2 | 330 | 0 | 115.2 |
3 | 432 | 314 | 201.67 |
4 | 165 | 508 | 237.6 |
5 | −102 | 314 | 320.4 |
s2,6 | xP6 [mm] | yP6 [mm] | ϕ1[°] | ϕ2[°] | ϕ3[°] |
---|---|---|---|---|---|
6022 | 186.620 | 125.830 | 113.294 | 82.320 | −161.487 |
21,190 | 147.477 | 234.790 | −93.704 | 73.103 | 78.503 |
32,029 | 119.506 | 253.215 | −4.348 | 98.934 | −131.219 |
Author Contributions
Conceptualization, T.M., J.M.P. and F.T.; methodology, T.M., G.M. and F.T.; software, T.M. and J.M.P.; validation, T.M.; formal analysis, T.M.; investigation, T.M.; resources, J.M.P. and F.T.; writing-original draft preparation, T.M.; writing-review and editing, T.M. and G.M.; visualization, T.M. and G.M.; supervision, G.M., M.C., J.M.P. and F.T.; project administration, M.C., J.M.P. and F.T.; funding acquisition, M.C. All authors have read and agreed to the published version of the manuscript.
Funding
This research was funded by the Spanish Ministry of Economy and Competitiveness grants number DPI2017-88282-P and MDM-2016-0656. The APC was funded by Marco Carricato.
Acknowledgments
The support of Patrick Grosch in building the prototype is gratefully acknowledged.
Conflicts of Interest
The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.
Abbreviations
The following abbreviations are used in this manuscript:
PRCP | Parallel robots with configurable platform |
EE | End-Effector |
DoF | Degree of Freedom |
DKP | Direct Kinematic Problem |
IKP | Inverse Kinematic Problem |
Appendix A. Example Architectures
For clarity, we report here two selected example architectures: a 3-RRR (Figure A1a) and a 4-RRR (Figure A1b) mechanism. The first one has a rigid platform, while in the second case the platform has an internal DoF for reconfiguring its shape.
Machines 09 00007 g0a1 550
Figure A1.Schematics of: (a) a general 3-RRR robot; (b) a general 4-RRR robot. They have, respectively, 3 and 4 DoFs.
Figure A1.Schematics of: (a) a general 3-RRR robot; (b) a general 4-RRR robot. They have, respectively, 3 and 4 DoFs.
Appendix B. Singularity Equations
For the sake of completeness, we report here the definitions of quantities e, f, g from Section 4 and their derivations. We find the position ofP10 using bilateration; Equations (2) and (3) give
p10=p6+1D(P6,P9)D(P6,P9;P6,P10)-2V(P6,P9,P10)2V(P6,P9,P10)D(P6,P9;P6,P10)p9-p6,
where one obtains (through simplifications)
D(P6,P9)=l12+l22+l32+S
D(P6,P9;P6,P10)=12l12+l22+l32-l42+l52+S
D(P6,P9,P10)=142l42 l52+l42+l52l12+l22+l32+S-l44-l54-l12+l22+l32+S2
V(P6,P9,P10)=±12D(P6,P9,P10),
where the sign ofV(P6,P9,P10) depends on the point ordering as seen for Equation (2) and having defined the auxiliary variable
S=2l1·l2+l2·l3+l3·l1.
By differentiating Equations (A2)-(A4) with respect to time, one has (again after simplifications)
D˙(P6,P9)=2k·ϕ˙1-ϕ˙2l1×l2+ϕ˙2-ϕ˙3l2×l3+ϕ˙3-ϕ˙1l3×l1
D˙(P6,P9;P6,P10)=12D˙(P6,P9)
D˙(P6,P9,P10)=12D˙(P6,P9)l42+l52-l12-l22-l32-S.
By differentiating with respect to time Equation (A1) and introducing Equations (A2)-(A4) and (A7)-(A9), we find the velocity
p˙10=p˙6+ϕ˙1D(P6,P9)k·l1×l2+l3s+D(P6,P9;P6,P10)k×l1-2V(P6,P9,P10)l1+ϕ˙2D(P6,P9)k·l2×l3+l1s+D(P6,P9;P6,P10)k×l2-2V(P6,P9,P10)l2+ϕ˙3D(P6,P9)k·l3×l1+l2s+D(P6,P9;P6,P10)k×l3-2V(P6,P9,P10)l3=p˙6+ϕ˙1 v1+ϕ˙2 v2+ϕ˙3 v3
where
s=1-2D(P6,P9;P6,P10)D(P6,P9)(l1+l2+l3)-4V(P6,P9,P10)D(P6,P9)+14V(P6,P9,P10)l12+l22+l32-l42-l52+Sk×l1+l2+l3
Introducing Equation (A10) in Equation (15) and rearranging, one finally obtains
θ˙5c5x d5y-c5y d5x=x˙P6 d5x+y˙P6 d5y+ϕ˙1e+ϕ˙2f+ϕ˙3g
where
e=v1·d5
f=v2·d5
g=v3·d5.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
© 2021. This work is licensed under http://creativecommons.org/licenses/by/3.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.
Abstract
Parallel robots with configurable platforms are a class of robots in which the end-effector has an inner mobility, so that its overall shape can be reconfigured: in most cases, the end-effector is thus a closed-loop kinematic chain composed of rigid links. These robots have a greater flexibility in their motion and control with respect to rigid-platform parallel architectures, but their kinematics is more challenging to analyze. In our work, we consider n-RRR planar configurable robots, in which the end-effector is a chain composed of n links and revolute joints, and is controlled by n rotary actuators located on the base of the mechanism. In particular, we study the geometrical design of such robots and their direct and inverse kinematics for n=4 n=4 , n=5 n=5 and n=6 n=6 ; we employ the bilateration method, which can simplify the kinematic analysis and allows us to generalize the approach and the results obtained for the 3-RRR mechanism to n-RRR robots (with n>3 n>3 ). Then, we study the singularity configurations of these robot architectures. Finally, we present the results from experimental tests that have been performed on a 5–RRR robot prototype.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer