Keywords

1 Introduction

Robot manipulators are typical of systems that are intrinsically subjected to uncertainties. The nominal relationship between the end effector pose and joints displacement is known but this relationship is not necessarily accurate due to changes in the robot hardware and uncertainties in the kinematic parameters [1]. A real robot analysis should be performed in the presence of uncertainties in the modeling of the manipulator and measurements of the kinematic parameters. The sources of uncertainties include the manufacturing tolerances of the mechanical parts, measurement error, control error, and round-off error. All types of uncertainties can be accommodated as bounded variations in the kinematic parameters.

Several methods are known for calculating the lower and upper bounds for each component of the solution set in the interval linear systems. One of the first contributions on determining the bounds of the solution set was given in [2]. It was shown that the solution set for this system is a polyhedron. More general algorithms for determining the bounds containing the exact solution were presented in [35]. These bounds were not necessarily identical to the exact solution. The exact solution was determined in [6] as the union of finitely many convex polytopes whose vertices were denoted by matrices with entries equal to the lower or upper bounds of the interval coefficient matrix. The shape of the solution set, in general, was a non-convex polyhedron.

The exact solution of the interval linear systems is generally complicated and not easily described. Therefore, calculation of this solution is computationally expensive and, hence, is not convenient to use for the real time application. Accordingly, the researchers are drawn to find the fastest methods to enclose the exact solution. One of the first publications on parametric interval systems for special coefficient matrices, such as symmetric and skew-symmetric matrices, was presented in [7, 8]. The characterization of the boundary of the solution set of the parametric system based on a set of inequalities was done by [9]. This approach was designed particularly for visualizing the boundary of the parametric solution set.

In this paper, the motion performance of manipulators with uncertainty in the kinematic parameters is investigated using parametric interval method. The organization of paper is as follows. The basic principles of the interval analysis and the parametric interval systems are given in Sect. 2. The proposed methodology for formulating the exact solution, which is based on parameterizing the interval linear systems, is presented in Sect. 3. The simulation results are reported in Sect. 4 and the paper is concluded in Sect. 5.

2 Parametric System of Interval Linear Equations

Interval analysis is a numerical method of representing the uncertainty in values by replacing a number with a finite range of values. An interval denoted by \( [ {\text{X] = [}}\underline{\text{X}} ,\,\overline{\text{X}} ] \) is the set of real numbers \( {\text{X}} \) verifying \( \underline{\text{X}} \le {\text{X}} \le \overline{\text{X}} \) where \( \underline{\text{X}} \) and \( \overline{\text{X}} \overline{{\overline{ } }} \) are the lower and upper bounds of the interval, respectively. The interval is also represented by the midpoint, \( {\text{X}}_{\text{c}} \), and the radius, \( \Delta {\text{X}} \), as \( [{\text{X}}] = [{\text{X}}_{\text{c}} - \Delta {\text{X}},{\text{X}}_{\text{c}} + \Delta {\text{X}}] \) or \( [{\text{X}}] = {\text{X}}_{\text{c}} + \Delta {\text{X}}[ - 1,1] \). A real number is a special case of an interval in which \( \underline{\text{X}} = \overline{\text{X}} \). The width of the interval \( [ {\text{X]}} \) is defined as \( ({\text{X}}) = \overline{\text{X}} - \underline{\text{X}} \). The midpoint of \( [ {\text{X]}} \) is given by \( m({\text{X}}) = \frac{1}{2}(\overline{\text{X}} + \underline{\text{X}} ) \). A matrix whose entries are interval is called an interval matrix and denoted by \( [{\mathbf{A}} ] ,\,{\mathbf{A}}_{\text{c}} \), is the midpoint of \( [{\mathbf{A}}] \) whose entries are the midpoints of the corresponding entries of \( [{\mathbf{A}}] \), the radius of the interval matrix, \( \varDelta \), is defined as \( \frac{ 1}{ 2} (\overline{{\mathbf{A}}} { - }\underline{{\mathbf{A}}} ) \).

In manipulators, the Jacobian matrix relates the joint velocity vector to the end effector velocity vector. Due to the uncertainty in the kinematic parameters, the relationship between the joint velocity vector and the end effector velocity vector takes the form of the interval linear system. This interval system is parameterized as \( {\mathbf{ }}\left[ {{\mathbf{J}}\left( {{\mathbf{[p]}}} \right)} \right]{\dot{\mathbf{q}}} = {\mathbf{[V}}\left( {{\mathbf{[p]}}} \right){\mathbf{]}} \) in which the entries of the Jacobian matrix and the end effector velocity vector linearly depend on parameters \( \left[ {\mathbf{p}} \right] = \left( {\left[ {p_{1} } \right], \left[ {p_{2} } \right], \ldots , \left[ {p_{K} } \right]} \right) \) even though in general, the entries of the Jacobian matrix and the velocity vector could be nonlinear functions of the interval parameters \( {\mathbf{[p]}} \). The exact values of these parameters are unknown but bounded within given intervals. Considering the serial manipulator in Fig. 1a and using a linear parametric model for each entry of \( {\mathbf{ }}\left[ {{\mathbf{J}}\left( {{\mathbf{[p]}}} \right)} \right] \) and \( {\mathbf{[V}}\left( {{\mathbf{[p]}}} \right){\mathbf{]}} \), the entries of the Jacobian matrix and the velocity vector could be defined as

Fig. 1
figure 1

a 2 DOF planar serial manipulator, b one of two-parameter solution sets in red, c all two-parameter solution sets in red and the exact solution in blue, d a three-parameter solution set in red and the smallest box containing the exact solution in green

$$ [J_{jk} \left( {[{\mathbf{p}}]} \right)] = J_{jk, 0} + \sum\limits_{\mu = 1}^{K} {J_{jk,\mu } } \,[p_{\mu } ], [V_{j} \left( {[{\mathbf{p}}]} \right)] = V_{j,0} + \sum\limits_{\mu = 1}^{K} {V_{j, \mu } } \,[p_{\mu } ] $$
(1)

where \( J_{jk,\mu } ,V_{j,\mu } \in {\mathbb{R}},;\mu = 1, \ldots ,k;j = 1, \ldots ,m;k = 1, \ldots ,n;\,m \) is the task space dimension and \( n \) is the number of joints. The value of parameter \( K \) depends on the number of the interval parameters used to parameterize the interval system. The maximum number of the interval entries of \( [{}_{ }^{ } {\mathbf{J}}] \) and \( [{\mathbf{V}}] \) is \( mn \) and \( m \), respectively. Depending on the uncertainty of the kinematic parameters in the manipulator, some entries of the Jacobian matrix and the end effector velocity vector may not be interval.

3 Parametric Method for Exact Solution

In this section, the exact solution of the interval system is calculated using solution sets obtained from parameter groups of interval systems. Depending on the number of interval parameters involved in the Jacobian matrix and the velocity vector, the exact solution will be characterized. The parameter assignment of the entries of \( [{}_{ }^{ } {\mathbf{J}}] \) and \( [{\mathbf{V}}] \) in the manipulator is performed by selecting some interval entries of either \( [{}_{ }^{ } {\mathbf{J}}] \) or \( \left[ {\mathbf{V}} \right] \) as parameters \( [p_{\mu } ] \) and formulating other entries as functions of interval parameters \( [{}_{ }^{ } p_{\mu } ] \). All parameter assignments of the entries of \( [{}_{ }^{ } {\mathbf{J}}] \) and \( \left[ {\mathbf{V}} \right] \) which lead to the same solution set are collected as one parameter group. That is, a parameter group may consist of one or several different parameter assignments.

The number of parameter groups in each interval system depends on the total number of interval entries of \( [{\mathbf{J}} ( [{\mathbf{p}} ] ) ] \) and \( [{\mathbf{V}} ( [{\mathbf{p}} ] ) ] \), denoted as \( \eta \), and the number of interval parameters in the interval system, \( K \). The solution sets of all parameter assignments of the interval system are checked and the parameter assignments which result in the same solution set are categorized as one parameter group. Considering a general spatial serial manipulator, to form \( [{\mathbf{J}} ]\,\mathop {{\mathbf{q }}}\limits^{ .} { = [}{\mathbf{V}} ] \) with \( \eta \) interval entries in \( [{}_{ }^{ } {\mathbf{J}}] \) and \( \left[ {\mathbf{V}} \right] \) and 2 interval parameters, \( K = 2 \), there exist \( \frac{1}{2}\sum\nolimits_{i = K - 1}^{\eta - 1} {\left( {\begin{array}{*{20}c} \eta \\ i \\ \end{array} } \right)} = \frac{1}{2}\sum\nolimits_{i = 1}^{\eta - 1} {\frac{\eta !}{{\left( {\eta - i} \right)!i!}}} \) different parameter groups. When the number of interval parameters is \( K = 3, \) all the number of possible parameter groups is calculated as \( \sum\nolimits_{i = K - 1}^{\eta - 2} {\frac{{\left( {\begin{array}{*{20}c} \eta \\ i \\ \end{array} } \right)\left( {\begin{array}{*{20}c} {\eta - i} \\ 2 \\ \end{array} } \right)}}{{\left( {\eta - i - 2} \right)!}}} = \sum\nolimits_{i = 2}^{\eta - 2} {\frac{{\left( {\eta - i - 1} \right)\left( {\eta - i} \right) \ldots (\eta )}}{{2!i!\left( {\eta - i - 2} \right)!}}} \).

In this paper, once the numerical interval matrix \( {}_{ }^{ } [{\mathbf{J}}] \) is calculated, the entries of \( [{\mathbf{J}}([{\mathbf{p}}])] \) and \( [{\mathbf{V}}([{\mathbf{p}}])] \) are expressed as linear functions of the interval parameters \( [{}_{ }^{ } p_{\mu } ], 1 \le \mu \le K. \) Considering entry \( [{}_{ }^{ } J_{jk} ] \) and \( [V_{j} ] \) as linear function of \( [{}_{ }^{ } p_{\mu } ] \), then \( [{}_{ }^{ } J_{jk} ([{}_{ }^{ } p_{\mu } ])] = {}_{ }^{ } J_{jk,0} + {}_{ }^{ } J_{jk,\mu } [{}_{ }^{ } p_{\mu } ] \,{\text{and}}\,[V_{j} ({}_{ }^{ } p_{\mu } )] = V_{j,0} + V_{j,\mu } [{}_{ }^{ } p_{\mu } ]. \) The lower and upper bounds of any interval entry \( [{}_{ }^{ } J_{jk} ] = [{}_{ }^{ } \underline{{J_{jk} }} , \overline{{J_{jk} }} ] \) are related to those of interval parameter \( {}_{ }^{ } p_{\mu } \in [{}_{ }^{ } \underline{{p_{\mu } }} , {}_{ }^{ } \overline{{p_{\mu } }} ], {}_{ }^{ } \underline{{p_{\mu } }}^{{}} \ne {}_{ }^{ } \overline{{p_{\mu } }} \) through the following system of linear equations

$$ \left\{ {\begin{array}{*{20}c} {\overline{{J_{jk} }} = {}_{ }^{ } J_{jk,0} {}_{ }^{ } \bar{p}_{\mu } + {}_{ }^{ } J_{jk,\mu } } \\ {\underline{{J_{jk} }} = {}_{ }^{ } J_{jk,0 } {}_{ }^{ } \underline{p}_{\mu } + {}_{ }^{ } J_{jk,\mu } } \\ \end{array} } \right. \Rightarrow \left[ {\begin{array}{*{20}c} {{}_{ }^{ } \bar{p}_{\mu } } & 1 \\ {{}_{ }^{ } \underline{p}_{\mu } } & 1 \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {{}_{ }^{ } J_{jk,0} } \\ {{}_{ }^{ } J_{jk,\mu } } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {{}_{ }^{ } \overline{{J_{jk} }} } \\ {{}_{ }^{ } \underline{{J_{jk} }}^{ } } \\ \end{array} } \right] $$
(2)

The coefficients \( {}_{ }^{i} J_{jk,0} \) and \( {}_{ }^{i} J_{jk,\mu } \) are calculated by taking inverse of Eq. (2) as

$$ \left[ {\begin{array}{*{20}c} {{}_{ }^{ } J_{jk,0} } \\ {{}_{ }^{ } J_{jk,\mu } } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {{}_{ }^{ } \bar{p}_{\mu } } & 1 \\ {\underline{p}_{\mu } } & 1 \\ \end{array} } \right]^{ - 1} \left[ {\begin{array}{*{20}c} {{}_{ }^{ } \overline{{J_{jk} }} } \\ {\underline{{J_{jk} }} } \\ \end{array} } \right] $$
(3)

The same procedure is performed to formulate the entry of \( [V_{j} ] \) as a function of \( [{}_{ }^{ } p_{\mu } ] \). It should be noted that the entry of \( [{}_{ }^{ } {\mathbf{J}}([{}_{ }^{ } {\mathbf{p}}])] \) or \( [{\mathbf{V}}([{}_{ }^{ } {\mathbf{p}}])] \) nominated for the interval parameter must be interval. Otherwise, the matrix in Eq. (2) would be singular and the entry \( [{}_{ }^{ } J_{jk} ] \) cannot be formulated in terms of parameter \( [{}_{ }^{ } p_{\mu } ] \). If \( [{}_{ }^{ } {\mathbf{J}}({}_{ }^{ } [{\mathbf{p}}])] \) is an \( n \times n \) square matrix and non-singular for each \( {}_{ }^{ } p_{\mu } \in [{}_{ }^{ } \underline{p}_{\mu } , {}_{ }^{ } \overline{{p_{\mu } }} ], \mu = 1, \ldots , K, \) \( [{}_{ }^{ } {\mathbf{J}}^{ - 1} ([{}_{ }^{ } {\mathbf{p}}])] \) exists and \( [{\dot{\mathbf{q}}}([{}_{ }^{ } {\mathbf{p}}])] = [{\mathbf{J}}^{ - 1} ([{}_{ }^{ } {\mathbf{p}}])][{\mathbf{V}}([{}_{ }^{ } {\mathbf{p}}])] \) is a function of K interval parameters which is continuous [9]. This parametric joint velocity vector provides the solution set for each parameter group.

When the parametric Jacobian matrix is of full-row rank, the solution which minimizes the 2-norm of the joint velocity vector is selected. If the square parametric matrix \( [{\mathbf{J}}\left( {\left[ {\mathbf{p}} \right]} \right)] [{\mathbf{J}}^{T} \left( {\left[ {\mathbf{p}} \right]} \right)] \) is regular for every \( p_{\mu } \in [\underline{p}_{\mu } , \bar{p}_{\mu } ], \) the minimum 2-norm solution set to the parametric system exists and is formulated as a function of interval parameters \( [{\dot{\mathbf{q}}}\left( {[{\mathbf{p}}]} \right)] = [{\mathbf{J}}^{T} \left( {[{\mathbf{p}}]} \right)]\left( {[{\mathbf{J}}\left( {\left[ {\mathbf{p}} \right]} \right)] [{\mathbf{J}}^{T} \left( {\left[ {\mathbf{p}} \right]} \right)] } \right)^{ - 1} [{\mathbf{V}}\left( {\left[ {\mathbf{p}} \right]} \right)] \). If the manipulator has a combination of revolute and prismatic joints, the joint velocity vector is not physically consistent. If the interval entries with the same dimension are parameterized, a weighting matrix would be required to calculate the generalized (Moore-Penrose) inverse of \( [{\mathbf{J}}\left( {\left[ {\mathbf{p}} \right]} \right)] \) as \( {\mathbf{J}}^{\# } = {\mathbf{W}}[{\mathbf{J}}^{T} \left( {[{\mathbf{p}}]} \right)]\left( {[{\mathbf{J}}\left( {\left[ {\mathbf{p}} \right]} \right)]{\mathbf{W}}[{\mathbf{J}}^{T} \left( {\left[ {\mathbf{p}} \right]} \right)] } \right)^{ - 1} \).

Similarly, when parametric Jacobian matrix \( [{\mathbf{J}}\left( {\left[ {\mathbf{p}} \right]} \right)] \) is of full column-rank and \( [{\mathbf{J}}^{T} \left( {\left[ {\mathbf{p}} \right]} \right)][{\mathbf{J}}\left( {\left[ {\mathbf{p}} \right]} \right)] \) is regular for every \( p_{\mu } \in [\underline{{p_{\mu } }} , \bar{p}_{\mu } ] \), the least square solution set is calculated. The weighted left generalized inverse of \( \left[ {{\mathbf{J}}\left( {\left[ {\mathbf{p}} \right]} \right)} \right] \) is calculated as \( {\mathbf{J}}^{\# } = \left[ {{\mathbf{J}}^{T} ([{\mathbf{p}}]){\mathbf{WJ}}\left( {[{\mathbf{p}}]} \right)} \right]^{ - 1} {\mathbf{J}}^{T} \left( {[{\mathbf{p}}]} \right){\mathbf{W}} \) if the interval entries of the Jacobian matrix are parameterized using the interval parameters with the same dimension.

4 Case Study

In this section, the 2 DOF planar serial manipulator in Fig. 1a with two revolute joints is used as a case study for the interval analysis to visualize the solution set. The manipulator has uncertainty in two joint variables \( \theta_{1} \) and \( \theta_{2} \) and the link lengths \( a_{1} \) and \( a_{2} \).

For the joint variables \( \theta_{1} = \frac{\pi }{6} \) rad and \( \theta_{2} = \frac{\pi }{4} \) rad, the link lengths \( a_{1} = a_{2} = 0.5 \) m, the radius of uncertainty \( \frac{\pi }{180} \) rad in \( \theta_{1} \) and \( \theta_{2} \) and the radius of uncertainty \( 0.010 \,{\text{m}} \) in link lengths, the interval Jacobian matrix is \( [{\mathbf{J}}] = \left( {\begin{array}{*{20}c} {\left[ { - 0.760, - 0.706} \right]} & {\left[ { - 0.497, - 0.469} \right]} \\ {\left[ {0.530, 0.595} \right]} & {\left[ {0.110, 0.149} \right]} \\ \end{array} } \right) \). The desired end effector velocity is \( {\mathbf{V}} = [v_{x} v_{y} ]^{T} = \left[1 \quad 1 \right]^{T} \left( {{\text{m}}/{\text{s}}} \right) \).

If the Jacobian matrix and the end effector velocity vector are functions of two parameters \( [{}_{ }^{ } p_{1} ] \) and \( [{}_{ }^{ } p_{2} ] \), i.e., \( \mu = 1,2, \) the parametric linear system will be

$$ [{\mathbf{J}}([{\mathbf{p}}])]\left[ {\begin{array}{*{20}c} {{}_{ }^{ } \dot{\theta }_{1} } \\ {{}_{ }^{ } \dot{\theta }_{2} } \\ \end{array} } \right] = \left( {\begin{array}{*{20}c} {[v_{x} ([{\mathbf{p}}])]} \\ {[v_{y} ([{\mathbf{p}}])]} \\ \end{array} } \right) $$
(4)

The parameter solution set is derived using the inverse of \( [{\mathbf{J}}([{\mathbf{p}}])] \) as

$$ [{\dot{\mathbf{\uptheta }}}([{\mathbf{p}}])] = \left( {\begin{array}{*{20}c} {[{}_{ }^{ } \dot{\theta }_{1} ([{\mathbf{p}}])]} \\ {[{}_{ }^{ } \dot{\theta }_{2} ([{\mathbf{p}}])]} \\ \end{array} } \right) = [{\mathbf{J}}([{\mathbf{p}}])]^{ - 1} \left( {\begin{array}{*{20}c} {[v_{x} ([{\mathbf{p}}])]} \\ {[v_{y} ([{\mathbf{p}}])]} \\ \end{array} } \right) $$
(5)

Generally, the entries of the Jacobian matrix and the end effector velocity vector can be parameterized such that the entries with the consistent dimension are categorized in the same groups. In this example, the Jacobian matrix has physically consistent entries. Therefore, the parameter assignment can be performed to any entries of the Jacobian matrix. If the entries of the end effector velocity vector are interval and have the same dimension, e.g., \( {\text{m}}/{\text{s}} \), these entries could be parameterized using an interval parameter with the same dimension, e.g., \( {\text{m}}/{\text{s}} \). In the case study, the entries of the end effector velocity vector are not interval. Therefore, they are not functions of an interval parameter, i.e., \( [V_{j} ] = V_{j,0} = 1, j = 1, 2 \).

Entries \( [J_{12} ] \) and \( [J_{11} ] \) are selected as the interval parameters\( p_{1} \in \left[ { - 0.497, - 0.469} \right] \) and \( p_{2} \in \left[ { - 0.760, - 0.706} \right] \), entries \( [J_{21} ] \) and [\( J_{22} ] \) are assigned as functions of \( [p_{1} ] \) and entries \( v_{x} \) and \( v_{y} \) are constant values 1. The interval entries of Eq. (3) are substituted into Eq. (5) and the two-parameter solution set for this parameter group is formulated as

$$ {\dot{\mathbf{\uptheta }}}\left( {p_{1} , p_{2} } \right) = \left( {\begin{array}{*{20}c} {\frac{{ - 0.372[p_{1} ] {-} 0.792}}{{1.669[p_{1} ] {-} 0.792[p_{2} ] {-} 1.372[p_{1} ][p_{2} ] + 2.291[p_{1} ]^{2} }}} \\ {\frac{{2.291[p_{1} ] - [p_{2} ] + 1.669}}{{1.669[p_{1} ] {-} 0.792[p_{2} ] {-} 1.372[p_{1} ][p_{2} ] + 2.291[p_{1} ]^{2} }}} \\ \end{array} } \right) $$
(6)

Similar to the procedure in calculating the two-parameter solution set in Eq. (6), the two-parameter solution set for each parameter group is formulated. Other parameter groups are obtained by new parameter assignment of the interval entries of \( [{\mathbf{J}}([{\mathbf{p}}])] \) as either \( [p_{1} ] \) or \( [p_{2} ] \) and the rest of entries as functions of \( [p_{1} ] \) and \( [p_{2} ] \). The new parameter solution set for each parameter assignment forms a parameter group. The boundary curves of the solution set for each group of parametric linear system are specified by 4 curves; two curves \( {\dot{\mathbf{\uptheta }}}(p_{1} ,\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{p}_{2} ) \) and \( {\dot{\mathbf{\uptheta }}}(p_{1} ,\bar{p}_{2} ) \) in 2-dimensional space when \( p_{1} \) varies from \( \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{p}_{1} \) to \( \bar{p}_{1} \) and \( p_{2} \) is set once to the lower bound and then to the upper bound. Similarly, the other two curves \( {\dot{\mathbf{\uptheta }}}(p_{2} ,\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{p} {}_{1}) \) and \( {\dot{\mathbf{\uptheta }}}(p_{2} ,\bar{p}_{1} ) \) are formulated when \( p_{2} \) varies from \( \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{p}_{2} \) to \( \bar{p}_{2} \) and \( p_{1} \) is set to the lower bound and the upper bound, respectively. In the resulting solution set enclosed by four curves, each curve is connected to the other two curves in two points and the two attached curves share a point. Therefore, four points \( {\dot{\mathbf{\uptheta }}}(\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{p}_{1} ,\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{p}_{2} ) \), \( {\dot{\mathbf{\uptheta }}}(\bar{p}_{1} ,\bar{p}_{2} ) \), \( {\dot{\mathbf{\uptheta }}}(\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{p}_{1} ,\bar{p}_{2} ) \) and \( {\dot{\mathbf{\uptheta }}}(\bar{p}_{1} ,\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{p}_{2} ) \) form vertices of the solution set for each parameter group. This two-parameter solution set (in red color) is illustrated in Fig. 1b and completely lies inside the exact solution (in blue color).

To characterize the exact solution, first all parameter groups which result in the same solution sets are determined and then plotted in \( \dot{\theta }_{1} \)\( \dot{\theta }_{2} \) plane. In this example, since there are four interval entries in the Jacobian matrix, \( \eta = 4, \) there will exist \( \frac{1}{2}\sum_{i = 1}^{\eta - 1} \frac{\eta !}{{\left( {\eta - i} \right)!i!}} = \frac{1}{2}\sum_{i = 1}^{3} \frac{4!}{{\left( {4 - i} \right)!i!}} = \frac{1}{2}\left( {4 + 6 + 4} \right) = 7 \) different parameter groups among all possible solution sets, i.e., \( 2^{4} = 16 \). These 16 solution sets are illustrated in red color in Fig. 1c. The outer vertices of the different groups of the two-parameter solution sets are connected to form the boundary of the exact solution (in blue color). Generally speaking, when the exact solution is non-convex, the two-parameter solution sets might not be able to distinguish the indented vertices.

In the three-parameter case, each parameter group includes interval parameters \( [p_{1} ], [p_{2} ] \) and \( [p_{3} ] \), i.e., \( \mu = 1, 2, 3 \). The procedure to calculate the solution set for each parameter group is similar to that of the two-parameter case. The parameter groups for three interval parameters are \( \sum_{i = 2}^{\eta - 2} \frac{{\left( {4 - i - 1} \right)\left( {4 - i} \right) \ldots (4)}}{{2!i!\left( {4 - i - 2} \right)!}} = 6 \). The solution set corresponding to each parameter group consists of 12 curves; the two parameters \( p_{1} , p_{2} \) are set to either lower or upper bounds and the resulting 4 curves, which are functions of parameter \( p_{3} \), are plotted when \( p_{3} \) varies within the lower and upper bounds. The formulation of the solution set of the interval system including three parameters is applicable to the Jacobian matrices of the manipulators with more than 2 joints such as planar 3 DOF manipulators. The process is repeated when \( [p_{1} ], [p_{3} ] \) are set to either the lower or upper bounds and the next 4 curves are functions of \( [p_{2} ] \). The last 4 curves are formulated as functions of \( [p_{1} ] \) when \( [p_{2} ], [p_{3} ] \) are set to either the lower or upper bounds. The resulting 12 curves form a hypersurface which may have surfaces on the boundary surface of the exact solution.

To show the solution set for a group of parametric linear system with three interval parameters, the same example as the two-parameter case is considered. For entries \( [J_{11} ] \) and \( [J_{12} ] \) and \( \left[ {J_{21} } \right] \) as interval parameters \( p_{1} \in \left[ { - 0.760, - 0.706} \right] \), \( p_{2} \in \left[ { - 0.497, - 0.469} \right] \) and \( p_{3} \in \left[ {0.530, 0.595} \right] \), respectively, \( [J_{22} ] \) as a function of \( [p_{1} ] \), and \( [v_{x} ] \) and \( [v_{y} ] \) as constant values, the three-parameter solution set is plotted in Fig. 1d. As illustrated, some edges of this solution set lie on the boundary of the exact solution. The commonly calculated smallest box containing the exact solution is depicted in Fig. 1d in green color. As shown, this solution is much larger than the exact solution.

In general, for \( K \)-parameter case, the number of curves involved to form the solution set of each parameter group is calculated to be \( K \times 2^{(K - 1)} \). For instance, in three-parameter case, the number of curves which forms the solution set for each parameter group is \( 3\times 2^{2} = 12. \) It should be noted that as the size of the interval matrix, especially the interval entries of the matrix, increases, the total number of the parameter groups which have different solution sets drastically grows.

The drawback of the two-parameter solution set is that the indented vertices of the exact solution, if there is any, may be ignored. The three-parameter solution set overcomes this limitation as more curves are contributed to characterize each three-parameter solution set, and hence the actual vertices of the exact solution set are obtained. The interval analysis in this paper is performed using INTLAB [10].

5 Discussion and Conclusions

In this paper, the motion analysis of manipulators considering uncertainty in the kinematic parameters were investigated, and a novel method to identify the exact solution of joint velocities for the given end effector velocities was presented. To model the uncertainty in kinematic parameters, interval analysis was applied and the lower and upper bounds of each entry of the Jacobian matrix were determined and the interval linear equations were formulated to relate the velocity of joints to the end effector velocity. Although the range of uncertainties in the kinematic parameters was small, the accumulation effect of uncertainties caused a relatively wide solution for the velocity of the joints. The lower and upper bounds of the joint velocity components depended on the length of the links, the range of uncertainties and the configuration of the manipulator. When the manipulator is close to the singular configuration, even for small values of uncertainties, the width of joint velocity components increases. The proposed method has been implemented for the serial and parallel manipulators. Due to space limitation, only the results for a serial manipulator were reported here.

Generally, there is a trade-off between the accuracy of the solution and the computation time. The parametric interval system provides the exact solution with more computation effort. For offline analysis such as the investigation of workspace of manipulators, since the calculation time is not a concern, the parametric interval method is valuable. In real time applications, methods that are not computationally expensive are better suited. As a future work, the motion analysis of manipulators with uncertainty in the kinematic parameters, velocity limits of the joints and the joint failure will be investigated.