ARTICLE IN PRESS
Robotics and Computer-Integrated Manufacturing 25 (2009) 57–63 www.elsevier.com/locate/rcim
Joint workspace of parallel kinematic machines Z.M. Bi, S.Y.T. Lang Integrated Manufacturing Technologies Institute, National Research Council, London, ON, Canada N6G 4X8 Received 22 March 2006; received in revised form 24 April 2007; accepted 30 July 2007
Abstract Robot workspace is the set of positions a robot can reach. Workspace is one of the most useful measures for the evaluation of a robot. Workspace is usually defined as the reachable space of the end-effector in Cartesian coordinate system. However, it can be defined in joint coordinate system in terms of joint motions. In this paper, workspace of the end-effector is called task workspace, and workspace of the joint motions is called joint workspace. Joint workspace of a parallel kinematic machine (PKM) is focused, and a tripod machine tool with three degrees of freedom (DOF) is taken as an example. To study the joint workspace of this tripod machine tool, the forward kinematic model is established, and an interpolating approach is proposed to solve this model. The forward kinematic model is used to determine the joint workspace, which occupies a portion of the domain of joint motions. The following contributions have been made in this paper include: (i) a new concept so-called joint workspace has been proposed for design optimization and control of a PKM; (ii) an approach is developed to determine joint workspace based on the structural constraints of a PKM; (iii) it is observed that the trajectory planning in the joint coordinate system is not reliable without taking into considerations of cavities or holes in the joint workspace. Crown Copyright r 2007 Published by Elsevier Ltd. All rights reserved. Keywords: Parallel kinematic machine (PKM); Joint workspace; Forward kinematics; Polynomial equations; Trajectory planning; Tripod machine tool; Optimization
1. Introduction A robot is functioned to transform joint motions into end-effector motion that fulfills the task appropriately. An enhanced robot design ensures that the motion transformation is performed efficiently so that the minimized joint capacity is required to fulfill a given task. Therefore, the performance of a robot can be evaluated in two-folds: (i) the contribution of joint motions to desired end-effector motion, and (ii) the utilization of joint capacity [1]. For the contribution of joint motions to the desired endeffector motion, some criteria, such as workspace [2–4], dexterous workspace [5], and service angle [6], have been defined in Cartesian coordinate system, these criteria are convenient since the desired end-effector motion is usually described in the Cartesian coordinate system. Other criteria, such as manipulability and dexterity [7–11], are defined in terms of the mapping from joint motions to the Corresponding author. Tel.: +1 519 430 7117; fax: +1 519 430 7064.
E-mail address:
[email protected] (Z.M. Bi).
end-effector motion. Evaluation of robot performance in terms of these criteria has been well studied. For the utilization of the joint capacity, an open-loop robot can take advantage of full capacity of joint motions, unless there is self-interference among the linkages. Therefore, the evaluation from this perspective for an open-loop robot is unimportant. However, due to structural constraints, a closed-loop or hybrid robot has a limited reachable area in comparison with the domain of joint motions, and the utilization of joint capacity will be seriously restricted. No work is found to evaluate the utilization of joint capacity. Workspace is one of the most useful measures of a robot’s capability. Usually, workspace is defined in Cartesian coordinate system for the motion range of the end-effector [2–4], and it is called task workspace in this paper. Task workspace directly indicates the reachable area of the end-effector motion in the Cartesian coordinate system. However, it cannot measure how the joint motions are utilized to span this reachable area. To overcome this disadvantage, workspace will be defined in joint coordinate
0736-5845/$ - see front matter Crown Copyright r 2007 Published by Elsevier Ltd. All rights reserved. doi:10.1016/j.rcim.2007.07.015
ARTICLE IN PRESS Z.M. Bi, S.Y.T. Lang / Robotics and Computer-Integrated Manufacturing 25 (2009) 57–63
58
system for the joint motions, and it is called joint workspace. The study on joint workspace is meaningful to a robot with a closed-loop or hybrid structure; in particular, to parallel kinematic machine (PKM). In this paper, a tripod machine tool is taken as an example, and it is studied to illustrate the relation between the joint workspace and the structural constraints. Although some researchers have studied on kinematics and dynamics of this tripod machine tool [12–15]; its forward kinematic problem, which is crucial to joint workspace, has not been well addressed. The remainder of the paper is organized as follows. In Section 2, the tripod machine tool is introduced as an example, and its parametric description is provided. In Section 3, forward kinematic problem is defined; an interpolating approach is introduced to solve this problem. In Section 4, the relation between joint workspace and the structural constraints are studied, the joint workspace is demonstrated, and some comments are made on the new concept of joint workspace. In Section 5, a summary of this work is given. ze
2. Tripod machine tool Joint workspace depends on the specified structural constraints of a PKM. To illustrate the features of the joint workspace and its relation with the structural constraints, a tripod machine tool is taken as an example, and it is described as below. As shown in Fig. 1, the tripod machine tool is designed for light-metal cutting. It is composed of three platforms: base platform B1B2B3, middle platform M1M2M3, and endeffector platform E1E2E3. The base platform is fixed on the ground. The middle platform is used to support the guideways of prismatic joints. The end-effector platform is used to mount a machining tool. The end-effector platform is connected with the slide of a prismatic joint by a support bar DiEi. A support bar has a spherical joint at Ei and a rotational joint at Di. The middle platform is connected with the base platform by guide-way BiMi of the prismatic joint statically. The tripod machine tool is actuated by three prismatic joints. To build its kinematic model, the coordinate systems {Ob-xbybzb} and {Oe-xeyeze}, are established on the base and end-effector platform, respectively. The tripod machine tool includes following design variables: (i) (ii) (iii) (iv)
the the the the
dimension of the base platform lb, dimension of the end-effector platform le, direction of a guide-way g, and length of a support bar li.
In addition, three legs of the tripod are arranged symmetrically, i.e., a1 ¼ b1 ¼ 30 ;
a2 ¼ b2 ¼ 90 ;
a3 ¼ b3 ¼ 150 .
E2
βi
ye
xe le Oe
E3
E1 zb
M2
li M3
yb
D2
M1
B2
D1 D3 ui
γ
αi
lb
xb
Ob
B3
B1
Fig. 1. (a) 3-D model and (b) parametric description of a tripod machine tool.
The DOF of the tripod machine tool can be validated as f ¼ 6 ðn 1Þ
5 X ð6 iÞ j i i¼1
¼ 6 ð8 1Þ 5 6 3 3 ¼ 3, where f is the DOF of the mechanism, n the number of rigid bodies including the base and ji is the number of joints with i-DOF. Note that the tripod machine tool has eight rigid bodies, three prismatic joints, three rotational joints, and three
ARTICLE IN PRESS Z.M. Bi, S.Y.T. Lang / Robotics and Computer-Integrated Manufacturing 25 (2009) 57–63
spherical joints. The tripod machine tool is required to produce 3-DOF motion: x- and y- rotations and z-translation. 3. Forward kinematics It is arguable that an inverse kinematic solver can be applied in calculating the joint workspace since it is simple 2
Te ¼
Re 0
of prismatic joint i; and c and s denote the cosine and sine functions, respectively. Although the tripod machine tool has 3-DOF motion, the complete description of an end-effector motion requires three Bryant angles (yx, yy, yz) for the rotation and other three parameters (xe, ye, ze) for the translation,
cyy cyz 6 pe sy sy 6 x y cyz þ cyx syz ¼6 4 cyx syy cyz þ syx syz 1 0
in comparison to a forward kinematic solver for a PKM, and the task workspace calculated by an inverse kinematic solver can be mapped back to the joint workspace directly. However, there are some significant limitations of using an inverse kinematic solver. (i) Only the envelop volume of the joint workspace can be obtained from an inverse kinematic solver; while the causes that a position of the joint coordinate system is unreachable can not be provided. (ii) The mapping from task workspace to joint workspace can not tell whether or not two points in the workspace belong to the same manifold of the workspace; however, when a trajectory is planned in joint workspace, the points in a trajectory are desirable to be in the same manifold of a workspace. (iii) Boundary surfaces of the joint workspace are very crucial to describe a joint workspace. However, the points on most of these boundary surfaces are singular. In other words, the intensity of points mapped from task workspaces is very spare in comparison to that in the internal areas of joint workspace, and inverse kinematic solutions of a large number of points have to be calculated to obtain the detailed geometric shape of joint workspace. Therefore, a forward kinematic solver will be desirable to determine a joint workspace. In this section, forward kinematic problem is defined, and its solution is developed and used to validate whether or not an end-effector motion can be produced by giving joint motions. Note that the forward kinematic model describes end-effector motion in terms of given joint motions.
59
cyy syz syx syy syz þ cyx cyz
syy syx cyy
cyx syy syz þ syx cyz 0
cyx cyy 0
3 xe ye 7 7 7, ze 5
(2)
1
where Te is the posture of the end-effector platform with respect to {Ob-xbybzb}; Re ¼ (xe, ye, ze) and pe represent the orientation and the position of end-effector platform, respectively; (yx, yy, ze) and (xe, ye, ye) are independent and dependent motions, respectively. 3.2. Forward kinematic model To establish forward kinematic model, ObEi is represented in terms of joint motion ui. Middle variables ji (i ¼ 1, 2, 3) are required in the representation, and these variables are determined based on the geometric constraints. The end-effector motion can be calculated when the vectors ObEi (i ¼ 1, 2, 3) are known. By examining the tripod structure in Fig. 1, it is seen that ObBiDiEi is always located on a fixed plane vertical to Ob-xbyb, and ObDi and ObEi are determined sequentially: Ob Di ¼ Ob Bi þ Bi Di ¼ ððl b ui cgÞcai
ðl b ui cgÞsai
ui sgÞT ,
(3) Ob E i ¼ Ob Di þ Di E i ¼ ððl b ui cg l i cji Þcai , ðl b ui cg l i cji Þ;
ui sg þ l i sji ÞT ,
ð4Þ
where ji is the angle between DiEi and Ob-xbyb measured on the plane ObBiDiEi. The length of an edge EiEj of the rigid end-effector platform is constant, therefore pffiffiffi jOb E i Ob E j j ¼ 3l b ði; j ¼ 1; 2; 3; iajÞ. (5) Eq. (5) further gives
3.1. Joint motions and end-effector motion
K ij cji cjj þ Lij sji sjj þ M ij cji þ N ij cjj þ Oij sji
The tripod machine tool has a 3-DOF motion, and it is driven by three prismatic joints located at Di. The joint motions are described by ui ¼ ui u¯ i
ði ¼ 1; 2; 3Þ,
(1)
where ui is the motion vector of prismatic joint i with respect to {Ob-xbybzb}; ui is the magnitude of the vector ui; u¯ i ¼ ð cgcai cgsai sg ÞT is the motion direction
þ Pij sjj þ Qij ¼ 0 ði; j ¼ 1; 2; 3;
iajÞ,
ð6Þ
where aij ¼ ai aj ; uij ¼ ui uj and K ij Qij ði; j ¼ 1; 2; 3; iajÞ are the coefficients related to structural parameters and joint motion ui. Eq. (6) includes three independent equations about variables ji (i ¼ 1, 2, 3). Two of them j1 and j2, can be eliminated by applying Bezout’s method. A single
ARTICLE IN PRESS Z.M. Bi, S.Y.T. Lang / Robotics and Computer-Integrated Manufacturing 25 (2009) 57–63
60
polynomial equation about j3 can be yielded finally. Note that many researchers have used similar methods to solve forward kinematic problems of PKMs [16–19]. Using two independent equations of Eq. (6), one can represent j1 is terms of j2 and j3 9 R1 cj2 þ S1 sj2 þ T 1 > > cj1 ¼ > R2 cj2 þ S2 sj2 þ T 2 = (7) R3 cj2 þ S 3 sj2 þ T 3 > > sj1 ¼ > R2 cj2 þ S 2 sj2 þ T 2 ;
By examining the coefficients of Eqs. (9) and (10), it is obvious that Eq. (11) is about sj3 and cj3 with the order of 8. If Eq. (11) is converted by the standard transformation formulas j 1 t2 2t ; sj3 ¼ . t ¼ tan 3 ; cj3 ¼ 2 1 þ t2 2 1þt Eq. (11) turns out to be Pi¼24 i i¼0 ki t , (12) D¼ 2 ðð1 t ÞK 23 þ ð1 þ t2 ÞM 23 Þ8 ð1 þ t2 Þ4
where Ri, Si, Ti (i ¼ 1, 2, 3) are the coefficients related to structural parameters, joint motion ui, and j3. Substituting Eq. (7) into the remaining independent equation of Eq. (6) obtains
where ki (i ¼ 0, 1, y, 16) are the coefficients related to the structural parameters and joint motion ui. Eq. (12) results in a polynomial equation about t with the order of 16. However, ki is difficult to be expressed symbolically; it can be calculated numerically. Note that ki does not depend on j3 when the structural parameters and joint motion ui are given, a set of 17 linear equations about ki (i ¼ 0, 1, y, 16) can easily formed by assigning different j3 in Eq. (12). Matlab program can solve this equation group to obtain the coefficients ki of the polynomial equation, and further get all solutions of the polynomial equation about t easily. After j3 is calculated from the polynomial equation, j2 and j1 can be calculated from Eqs. (8) and (7) sequentially. The posture of the end-effector is obtained from ObEi as
cj2 ¼
L23 sj3 þ O23 N 23 cj3 þ P23 sj3 þ Q23 sj . K 23 cj3 þ M 23 2 K 23 cj3 þ M 23 (8) 2
2
For an arbitrary j1, the formula c j1+s j1 ¼ 1 is always satisfied. Applying Eq. (7) in the formula, and substituting cj2 by Eq. (8) gives U 3 s2 j2 þ U 2 sj2 þ U 1 ¼ 0,
(9)
where Ui (i ¼ 1, 2, 3) are the coefficients related to the structural parameters, joint motion ui, and j3. Te ¼
Re
pe
0
1
"
¼
pffiffiffi ðOb E 1 Ob E 3 Þ=ð 3l e Þ ðOb E 2 Ob Oe Þ=l e 0 0
pffiffiffi ðOb E 1 Ob E 3 Þ ðOb E 2 Ob Oe Þð 3l 2e Þ 0
# Ob Oe , 1 (13)
Similarly, for an arbitrary j2, one has the formula c2j2+s2j2 ¼ 1. Substituting Eq. (8) into it gets:
where Te, Re and pe correspond to the terms in Eq. (2). ObEi is determined from Eq. (4) when ji is known, and
V 3 s2 j2 þ V 2 sj2 þ V 1 ¼ 0,
Ob Oe ¼
(10)
where Vi (i ¼ 1, 2, 3) are the coefficients related to the structural parameters, joint motion ui, and j3. To reach a meaningful solution, Eqs. (9) and (10) must be satisfied simultaneously, and this results in a necessary and sufficient condition: D ¼ U 21 V 23 U 1 U 2 V 2 V 3 þ V 1 V 3 U 22 þ U 1 U 3 V 22 2U 1 U 3 V 1 V 3 U 2 U 3 V 1 V 2 þ U 23 V 21 ¼ 0.
ð11Þ
Ob E 1 þ Ob E 2 þ Ob E 3 . 3:0 The independent and dependant variables of the endeffector motion can be found from Eq. (2) finally. 4. Joint workspace Using the forward kinematic model, every point in the domain of joint motions can be validated whether or not it produces feasible end-effector motion(s). Joint workspace is the set of points, which are able to produce feasible endeffector motion(s) in Cartesian coordinate system.
3.3. Solution of forward kinematic model
4.1. Case study
Eq. (11) has only j3 unknown, but it is a challenge to solve j3 from Eq. (11), since it results in a high-order polynomial equation whose coefficients are really complicated to be determined correctly. Here, an interpolating approach is introduced to solve this problem.
A PKM usually has unreachable points beyond the joint workspace because of various geometric constraints. Geometric constraints depend on the specified PKM configuration. Take the example of tripod machine tool, besides the structural constraints of Eq. (5), two other
ARTICLE IN PRESS Z.M. Bi, S.Y.T. Lang / Robotics and Computer-Integrated Manufacturing 25 (2009) 57–63
61
Table 1 Examples of unreachable positions in the domain of joint motions Example 1
Example 2
Example 3
Joint position ui (m) Solutions of the polynomial equation
(0.123847, 0.283847, 0.123847) 0.8367+0.0090i 0.83670.0090i 0.6205+0.3251i 0.62050.3251i 0.5813+0.3022i 0.58130.3022i 0.4649+0.1297i 0.46490.1297i 0.4429+0.1429i 0.44290.1429i 0.0001+0.4598i 0.0001–0.4598i 0.0007+0.4591i 0.00070.4591i 0.0007+0.4590i 0.0007–0.4590i 0.0001+0.4584i 0.00010.4584i 0.3019+0.0133i 0.30190.0133i 0.1751+0.1292i 0.1751–0.1292i 0.1452+0.1403i 0.14520.1403i
(0.323847, 0.323847, 0.123847) 0.9190 0.9190 0.6261+0.1059i 0.62610.1059i 0.5491+0.2644i 0.54910.2644i 0.4827 0.4827 0.0006+0.4075i 0.00060.4075i 0.0002+0.4078i 0.00020.4078i 0.0006+0.4070i 0.00060.4070i 0.0002+0.4067i 0.0002–0.4067i 0.5155 0.4236 0.4030 0.4030 0.2229 0.2206+0.0000i 0.22060.0000i 0.1561
(0.163847, 0.143847, 0.203847) 0.7499 0.7302+0.0575i 0.73020.0575i 0.6361 0.0005+0.5529i 0.00050.5529i 0.0012+0.5522i 0.00120.5522i 0.0012+0.5512i 0.00120.5512i 0.0005+0.5505i 0.00050.5505i 0.3645+0.0527i 0.36450.0527i 0.3712 0.3592 0.6999 0.6823 0.5914 0.3614+0.1529i 0.36140.1529i 0.3148 0.3043+0.0160i 0.30430.0160i
Violated constraints
Eq. (5) (no real solution for polynomial equation)
No feasible ji. or an interference between a support bar and a guideway
Limit of a spherical joint
(i) the dimension of the base platform, lb ¼ 0.341 m, (ii) the dimension of the end-effector platform, le ¼ 0.080 m, (iii) the direction of a guide-way, g ¼ 501, (iv) the length of a support bar, li ¼ 0.377 m, (v) the motion range of prismatic joint is uiA(0.124 m, 0.324 m), and (vi) the motion range of the spherical joint is (451, 451). Table 1 lists some examples of unreachable positions, corresponding solutions of the polynomial equation, and the constraints violated. Fig. 2 demonstrates the joint workspace in the joint coordinate system. The calculation
Joint 3 (m)
Joint 2 (m)
constraints have to be considered: (i) the interference between a support bar and a guide-way, and (ii) the motion limit of a spherical joint. Constraint (i) is examined by comparing ji (the direction of a support bar) and g (the direction of guide way), and constraint (ii) is examined by calculating the angle between the directions of two components of a spherical joint. The direction of one component is consistent with a support bar, and the direction of the other component is constant with respect to the coordinate system {Oe-xeyeze} and determined by the initial installment of the spherical joint. Assume that the structural parameters of the tripod machine tool are given as follows:
0.32 0.3 0.28 0.26 0.24 0.22 0.2 0.18 0.16
0.3 0.25 0.2
0.16 0.18 0.2 0.22 0.24 0.26 0.28 0.3 0.32 Joint 1 (m) Fig. 2. Joint workspace of a tripod machine tool.
shows that the volume of joint workspace is only 23.15% of the volume of the domain of joint motions. 4.2. Comments on joint workspace It is seen from Fig. 2 that the structural constraints divide the domain of joint motions into unreachable area
ARTICLE IN PRESS 62
Z.M. Bi, S.Y.T. Lang / Robotics and Computer-Integrated Manufacturing 25 (2009) 57–63
Constrained motion
Unreachable area in joint coordinate system
Domain of joint motions
Unconstrained motion
Reachable area in joint coordinate system
Transformed motion
Joint workspace
Reachable area in Cartesian coordinate system
Task workspace
Fig. 3. Motion transformation of a robot.
and reachable area. The joint workspace is the set of points in reachable area. A point in joint workspace has unconstrained joint motions and produces a meaningful end-effector motion in the task workspace. Therefore, shown in Fig. 3, the motion transformation of a robot can be divided into two mappings: the mapping from joint motions to joint workspace, and the mapping from joint workspace to task workspace. An enhanced robot design not only ensures the efficiency of mapping between joint workspace and task workspace, but also minimization of required joint capability for the joint workspace. Little work has been conducted on minimization of required joint capability. The division of the domain of joint motions depends on the structural constraints. For a PKM, forward kinematic model can be applied to obtain joint workspace in terms of the structural constraints. Furthermore, optimization can be conduced to maximize joint workspace. Take an example of previously described case, when the actuated prismatic joints are given, and the structural parameters are optimized to maximize the joint workspace. The result shows the volume of joint workspace can be increased to 78.54% of the volume of the domain of the joint motions under the parameters g ¼ 56.811, lb ¼ 0.3901, le ¼ 0.2, and li ¼ 0.2893. However, a designer has to make a trade-off between joint workspace and task workspace, since that the joint motions are finally transformed into end-effector motion to satisfy the motion requirements in task workspace. Note that there might be cavities or/and holes in the joint workspace of a PKM, two points in the joint workspace cannot ensure that every point between them is within the joint workspace, the trajectory planning in the joint coordinate system should be paid a special attention. The trajectory is discontinuous when there are some points violating structural constraints. In this case, unanticipated consequence, such as the damage of an actuated joint or
jumping of joint motion, will be happened, and the task cannot be fulfilled successfully. 5. Summary A parallel or hybrid robot has structural constraints. Due to these structural constraints, the domain of joint motions cannot be fully reached. In this paper, the concept of joint workspace has been proposed to evaluate the impact of the structural constraints on the joint motions. In comparison, the traditional definition of workspace in Cartesian coordinate system has been referred to as task workspace. Both joint and task workspaces have to be taken into considerations to achieve a good robot design. Joint workspace depends on the structural constraints of a specified robot. A forward kinematic solver is desirable to study their dependant relationship. To illustrate analyzing process of the joint workspace, a tripod machine tool has been taken as an example. Its forward kinematic model has been formulated into a polynomial equation with the order of 16, and an interpolating approach has been presented to solve the model, the joint workspace has been obtained. It has shown that various constraints can result in a set of unreachable points. A robotic structure can be optimized to maximize the joint workspace. It implies that the capacity of joint motions can be efficiently utilized; in other words, the minimized joint capacity is needed for the same requirement of the end-effector motion. A joint workspace is usually a subset of the domain of joint motions, and it can have some cavities or/and holes. This raises the problem that the trajectory planning in the joint space without taking into considerations of cavities or holes, might result in a discontinuous trajectory when some points violate structural constraints. Validation of the trajectory is essential to fulfill the task successfully.
ARTICLE IN PRESS Z.M. Bi, S.Y.T. Lang / Robotics and Computer-Integrated Manufacturing 25 (2009) 57–63
References [1] Lang SYT, Orban P, Bi ZM, Verner M, Zhang D. Development of tripod-based PKMs. In: The fifth international workshop on advanced manufacturing technologies, London, Ont., Canada; May 16–18, 2005. [2] Kumar A, Waldron KJ. The workspaces of a mechanical manipulator. ASME J Mech Des 1981;103:665–72. [3] Gupta KC, Roth B. Design considerations for manipulator workspace. ASME J Mech Des 1982;104:704–11. [4] Tasi YC, Soni AH. Workspace synthesis of 3R, 4R, 5R and 6R robots. Mech Mach Theory 1985;20:555–63. [5] Lai ZC, Menq CH. The dexterous workspace of simple manipulators. IEEE J Robot Automat 1988;4(1):99–103. [6] Yang DCH, Lai ZC. On the dexterity of robotic manipulators— service angle. ASME J Mech Transm Automat Des 1985;107:262–70. [7] Park FC, Brockett RW. Kinematic dexterity of robot mechanisms. Int J Robotics Res 1994;13(1):1–15. [8] Mayorga RV, Ressa B, Wong AKC. A dexterity measure for robot manipulators. Proc IEEE Int Conf Robotics Automat 1990;1:656–61. [9] Yoshikawa T. Manipulability of robotic mechanisms. Int J Robotics Res 1985;4(2):3–9. [10] Gosselin CM, Angeles J. A global performance index for the kinematic optimization of robotic manipulators. ASME J Mech Des 1991;113(3):220–6.
63
[11] Angeles J, Lo´pez-Caju´n CS. Kinematic isotropy and the conditioning index of serial robotic manipulators. Int J Robotics Res 1992;11(6): 560–70. [12] Lee KM, Shah DK. Dynamic analysis of a three-degrees-of-freedom in parallel actuated manipulator. IEEE Trans Robot Automat 1988; 4(3):361–7. [13] Buruncuk K, Tokad Y. On the kinematics of a 3-DOF Stewart platform. J Robot Syst 1999;16(2):105–18. [14] Xi F, Han W, Verner M, Ross A. Development of a sliding-leg tripod as an add-on device for manufacturing. Robotica 2001;18:285–94. [15] Ross A, Xi F, Mechefske C. Varying topology of a reconfigurable parallel kinematic machine. In: The 1st CIRP international conference on reconfigurable manufacturing, 2001. [16] Gosselin CM, Sefrioui J, Richard MJ. On the direct kinematics of spherical three-degree-of-freedom parallel manipulators of general architecture. ASME J Mech Des 1994;116(2):594–8. [17] Nanua P, Waldron KJ, Murthy V. Direct kinematic solution of a Stewart platform. IEEE Trans Robot Automat 1990;6:438–44. [18] Portman VT, Sandler BZ. Tripod robot with cylindrically actuated limbs: structure and kinematics. Mech Mach Theory 2002;37: 1447–63. [19] Bombin C, Ros L, Thomsa F. On the computation of the direct kinematics of parallel spherical mechanisms using Bernstein polynomials. In: The 2001 IEEE international conference on robotics and automation, Seoul, Korea, May 21–26, 2001. p. 3332–7.