# A Screw Approach to the Approximation of the Local Geometry of the Configuration Space and of the set of Configurations of Certain Rank of Lower Pair Linkages

Andreas Müller

Johannes Kepler University, Linz, Austria, a.mueller@jku.at

## 1 Introduction

Mobility and singularity analysis of linkages remains a topic of extensive research. Ideally, such an analysis reveals a global picture of the possible motions and the existence of singularities as well as the motion characteristics when passing through singularities. Yet, a universal approach to this problem is not available, and various approaches where developed that applicable for specific types of problems. On the other hand, screw and Lie group theory allow for a kinematics modeling that is advantageous for a general higher-order local mobility and singularity analysis. Research on the global analysis (of mechanisms comprising algebraic joints) also progressed recently using methods from computational algebraic geometry [1]. In particular the Linear Implicitization Algorithm proposed in [2] is a method to derive algebraic constraint equations in a systematic way and in a form beneficial for the computational analysis. Using local joint frames according to the Denavit-Hartenberg parameterization, the algebraic loop constraints are derived by substitution of the trigonometric relations as shown in [3]. Another approach in terms of DH parameters was presented in [4]. While computational algebraic methods allow for global mobility analysis of certain mechanisms, the application of algebraic methods is limited due to the complexity of the involved algorithms. A local analysis, on the other hand, is deemed generally applicable. Various approaches to the higher-order local analysis, aim to approximate possible finite motion through a given (general) configuration, were reported in [5–10]. Although involving different formulations of loop constraints, all these methods rest on using higher-order derivatives of the geometric loop constraints. The basic idea is to identify tangents to finite curves in configuration space (c-space), which then indicate possible motions and the local finite degree of freedom (DOF), that locally approximate the c-space. Simply speaking, these methods determine generalized velocity vectors for which there exist a generalized acceleration, jerk, jounce, etc. satisfying the constraints of order two, three, four, etc. This implies that the so-determined vectors are tangents to smooth curves in c-space. Non-smooth curves are hence excluded. Therefore these tangents (forming a cone rather than a vector space) are said to form the kinematic tangent cone in order to emphasize that they correspond to finite motions with non-zero velocity. Given the fact that the c-space singularities of virtually all mechanisms that were reported in the literature do allow for smooth motions between any two points, e.g. bifurcations, it may not be surprising that the above approaches to a higher-order local analysis are often assumed to provide conclusive

*Abstract*– A local investigation of the kinematics reveals possible motions of a mechanism at a given configuration revealing its mobility and the existence of kinematic singularities. A first-order analysis reveals instantaneous differential motions, whereas a higher-order analysis determines higher-order and finite motions. Past research on methods for higher-order analyses have almost exclusively used higher-order derivatives of the loop closure constraints with respect to a path parameter, and thus assumed smoothness of the motion. This continuity assumption limits the generality of all these methods as they cannot capture non-smooth motions. A motion of a mechanism is a curve in its configuration space (c-space). Determining finite motions through a given configuration thus boils down to determining the local geometry of the c-space. In this paper a formulation for the higher-order local approximation of the c-space of lower pair multi-loop linkages is presented. This is based on higher-order Taylor series expansion of the geometric constraint mapping. A recursive algebraic expression for the differentials of the constraint mapping in terms of joint screws is presented as computational means.

A kinematic singularity is a configuration where the constraint Jacobian changes rank. The identification of a configuration as being a kinematic singularity hence rests on information about finite motions through that point for which the constraint Jacobian has a certain rank. A local approximation of the set of configurations with certain rank is presented. To this end, an explicit expression for the differentials of Jacobian minors is presented, also in terms of instantaneous joint screws.

The c-space and the set of points of certain rank are thus locally approximated by an algebraic variety defined by the polynomial system determined algebraically from the mechanism’s screw system.

Results are shown for a simple planar 4-bar linkage, which exhibits a bifurcation singularity, and for a planar three-loop linkage exhibiting a cusp in c-space. The latter cannot be treated by the higher-order analysis methods proposed in the literature so far, which assume smooth finite motions.

*Keywords*– Linkages, kinematic loops, mobility, local analysis, singularities, configuration space, screws, algebraic varieties
statements. Until recently, the only mechanisms exhibiting a c-space singularity that does not allow for smooth motions, namely a cusp, through this singularity was the double-Watt linkage reported in [11]. Other spatial linkages were reported in [12]. Such linkages are said to be kth-order rigid while being finitely mobile [11]. Clearly, other methods for the higher-order local analysis are needed to account for such situations. Such a method is the local approximation of the c-space independently of possible finite motions. This should seem to be the most natural approach, as finite motions of a linkage are encoded in the c-space geometry, but the resulting equations can be difficult to use. This is addressed in the present paper. A higher-order series expansion of the constraints is used to this end. Relevant prior publications are [13–15]. In [13] a second-order analysis was presented using the series expansion of the constraints. In [14] and [15] higher-order series expansions were reported and applied to solve inverse kinematic problems.

The original contribution of this paper is a method for the local approximation of the geometry of the c-space in section 4 and the recursive relations for the differentials in the series expansion of the constraint mapping in terms of joint screws, in section 6. An approach to the approximation of the subvariety of points of certain rank is introduced in section 5. A closed form of the required differentials of the Jacobian minors is presented in section 6. Together with the prior publications [9, 10], this paper completes the conceptual and algorithmic framework for an exhaustive local analysis of general multi-loop linkages in terms of joint screws. The constraint formulation and definition of kinematic singularities, constraint singularities, and c-space singularities are recalled in section 2, and that of the kinematic tangent cone in section 3. Two examples are shown in section 7. The first example is the simple planar 4-bar linkage, which only serves to show that the method reproduces the known result. The second example is the planar three-loop double-Watt linkage reported in [10, 11], which exhibits a cusp singularity in c-space

## 2 Constraints, Configuration Space, Singularities

First consider a kinematic loop comprising n 1-DOF lower pair joints. The joint variable $q_i$ is assigned to joint i, where $q_i \in \mathbb{T}$ if the joint is a revolute or screw joint, and $q_i \in \mathbb{R}$ for a prismatic joint. The vector of joint variables is denoted with $\mathbf{q} \in \mathbb{V}^n = \mathbb{T}^{n_R} \times \mathbb{R}^{n_P}$, where $n_R$ is the number of revolute joints and $n_P$ the number of prismatic and helical joints. Denote with $\mathbf{Y}_i$ the screw coordinates associated to joint i, expressed in the world frame, determined in the zero reference configuration $\mathbf{q} = \mathbf{0}$. Presuming that $\mathbf{0} \in \mathbb{V}$, the geometric loop closure constraints can then be expressed as $f(\mathbf{q}) = \mathbf{I}$ where the constraint mapping is

$$f(\mathbf{q}) = \exp(\mathbf{Y}_1 q_1) \exp(\mathbf{Y}_2 q_2) \cdots \exp(\mathbf{Y}_n q_n). \quad (1)$$

This formula is referred to as the product of exponentials (POE). It is usually attributed to Brockett [16], but was already presented by Herve in [17].

**Remark 1.** The joint screw coordinates $\mathbf{Y}_i$ in (1) are determined in an assembly configuration of the linkage, so that $\mathbf{q} = \mathbf{0}$ is an admissible configuration. Moreover, w.l.o.g. throughout the paper, the zero reference configuration is chosen as the configuration of interest.

The velocity loop constraints are

$$\mathbf{0} = \mathbf{J}(\mathbf{q})\dot{\mathbf{q}} = \sum_{i \le n} \mathbf{S}_i(\mathbf{q})\dot{\mathbf{q}}_i \quad (2)$$

where the instantaneous screw coordinate vector of joint i

$$\mathbf{S}_i(\mathbf{q}) := \mathbf{A}\mathbf{d}_{g_i}(\mathbf{q})\mathbf{Y}_i \quad (3)$$

with $g_i(\mathbf{q}) := \exp(\mathbf{Y}_1 q_1) \cdots \exp(\mathbf{Y}_i q_i)$. The $\mathbf{S}_i$ are the columns of the geometric constraint Jacobian.

Now consider a general linkage with multiple kinematic loops. This is modeled as a system of $\gamma$ topologically independent loops—the fundamental cycles (FCs) of the topological graph [18]. For each of these $\gamma$ loops a system of geometric constraints

$$f_l(\mathbf{q}) = \mathbf{I}, l = 1, \dots, \gamma \quad (4)$$

is introduced. The corresponding velocity constraints

$$\mathbf{J}_l(\mathbf{q})\dot{\mathbf{q}} = \mathbf{0}, l = 1, \dots, \gamma \quad (5)$$

are summarized in the form (2) using the overall Jacobian

$$\mathbf{J} = \begin{pmatrix} \mathbf{J}_1 \\ \vdots \\ \mathbf{J}_\gamma \end{pmatrix}. \quad (6)$$

The c-space is defined by geometric loop constraints as

$$V := \{\mathbf{q} \in \mathbb{V}^n | f_l(\mathbf{q}) = \mathbf{I}, l = 1, \dots, \gamma\}. \quad (7)$$

The local DOF of the linkage at $\mathbf{q} \in V$, denoted with $\delta_{\text{loc}}(\mathbf{q})$, is the local dimension of the solution set $V$ at $\mathbf{q}$. The differential DOF of the linkage is $\delta_{\text{diff}}(\mathbf{q}) := n - \text{rank } \mathbf{J}(\mathbf{q})$. The configuration $\mathbf{q}$ is said to have rank $r$ when $r = \text{rank } \mathbf{J}(\mathbf{q})$. A configuration $\mathbf{q} \in \mathbb{V}^n$ is a constraint singularity iff rank $\mathbf{J}(\mathbf{q}) < d_{\text{max}}$, where $d_{\text{max}}$ is the maximal rank of $\mathbf{J}$ for $\mathbf{q} \in \mathbb{V}^n$ (of the open kinematic chain). It is a kinematic singularity iff there is no neighborhood of $\mathbf{q}$ in $V$ where $\delta_{\text{diff}}$ is constant. It is c-space singularity iff $V$ is not a smooth manifold at $\mathbf{q}$. A c-space singularity is always a constraint singularity and a kinematic singularity. A kinematic singularity is always a constraint singularity but may not be a c-space singularity. A constraint singularity may not be a c-space nor a kinematic singularity.
**Remark 2.** An upper bound for the maximal rank of **J** is the dimension of the screw algebra generated by the joint screws (i.e. the involutive closure of the screw system). This is the vector space span ($\mathbf{Y}_i$, $[\mathbf{Y}_i, \mathbf{Y}_j]$, $[\mathbf{Y}_i, [\mathbf{Y}_j, \mathbf{Y}_l]]$), which is easily determined by nested Lie brackets/screw products of joint screws $\mathbf{Y}_i$.

# 3 Kinematic Tangent Cone revisited

## 3.1 Kinematic Tangent Cone to Smooth Curves

The basic idea of a kinematic tangent cone was presented in [7] and then formalized in [9] as a means to identify the tangent properties of smooth curves through a given point in c-space. As discussed in [10], this reveals the local c-space geometry at regular and singular points of V, except at cusps, however.

**Definition 1.** Let V be the c-space of a mechanism. The kinematic tangent cone of V at $\mathbf{q} \in V$, denoted $C_{\mathbf{q}}^{\mathrm{K}}$, is the set of tangent vectors to smooth arcs in V passing through $\mathbf{q}$.

The point of departure for constructing the kinematic tangent cone is the system of velocity loop constraints (5). To this end, the definition

$$H_l^{(1)}(\mathbf{q}, \dot{\mathbf{q}}) := \mathbf{J}_l(\mathbf{q})\dot{\mathbf{q}} \qquad (8)$$

will be helpful. Solutions $\mathbf{x} \in \mathbb{R}^n$ of $\mathbf{0} = H_l^{(1)}(\mathbf{q}, \mathbf{x})$, $l = 1, \dots, \gamma$ are admissible 1st-order infinitesimal joint motions. A $\dot{\mathbf{q}}$ is a tangent vector to a smooth curve through $\mathbf{q} \in V$ iff there are corresponding $\ddot{\mathbf{q}}, \dddot{\mathbf{q}}, \dots$ that satisfy all higher-order constraints

$$H_l^{(i)}(\mathbf{q}, \dot{\mathbf{q}}, \dots, \mathbf{q}^{(i)}) = \mathbf{0} \qquad (9)$$

with $H_l^{(i)}(\mathbf{q}, \dot{\mathbf{q}}, \dots, \mathbf{q}^{(i)}) := \frac{d^{i-1}}{dt^{i-1}} H_l^{(1)}(\mathbf{q}, \dot{\mathbf{q}})$, using the notation $\mathbf{q}^{(i)} := \frac{d^i}{dt^i} \mathbf{q}$. The kinematic tangent cone, $C_{\mathbf{q}}^{\mathrm{K}}$, is then determined by the sequence [9]

$$C_{\mathbf{q}}^{\mathrm{K}} V = K_{\mathbf{q}}^{\mathrm{K}} \subset \dots \subset K_{\mathbf{q}}^{3} \subset K_{\mathbf{q}}^{2} \subset K_{\mathbf{q}}^{1} \qquad (10)$$

where the ith-order cone $K_{\mathbf{q}}^i$ is defined as

$$\begin{align*}
K_{\mathbf{q}}^{i} &:= \{\mathbf{x} \mid \exists \mathbf{y}, \mathbf{z}, \dots \in \mathbb{R}^n : \\
& \qquad H_l^{(1)}(\mathbf{q}, \mathbf{x}) = \mathbf{0}, \\
& \qquad H_l^{(2)}(\mathbf{q}, \mathbf{x}, \mathbf{y}) = \mathbf{0}, \\
& \qquad H_l^{(3)}(\mathbf{q}, \mathbf{x}, \mathbf{y}, \mathbf{z}) = \mathbf{0}, \\
& \qquad \dots \\
& \qquad H_l^{(i)}(\mathbf{q}, \mathbf{x}, \mathbf{y}, \mathbf{z}, \dots) = \mathbf{0}, \quad l = 1, \dots, \gamma \}. \tag{11}
\end{align*}$$

$K_{\mathbf{q}}^i$ is the set of admissible ith-order motions. The sequence (10) terminates with a finite $\kappa$, and $\delta_{\mathrm{loc}}(\mathbf{q}) = K_{\mathbf{q}}^{\mathrm{K}}$ is the local (i.e. finite) DOF at $\mathbf{q}$. Vectors $\mathbf{x} \in K_{\mathbf{q}}^i$ for $i < \kappa$ are not necessarily tangents to finite motions. Crucial for the analysis is the fact that the higher-order constraint mappings (9) can be determined explicitly [6, 8, 19], and more efficiently recursively [10, 20] without the need for symbolic manipulation (e.g. with computer algebra systems).

## 3.2 Kinematic Tangent Cone to Smooth Curves with constant Rank

An exhaustive mobility analysis further involves calculating the differential DOF $\delta_{\mathrm{diff}}(\mathbf{q})$ at $\mathbf{q} \in V$ and whether this changes in any neighborhood, which indicates a kinematic singularity. The differential DOF is determined by the rank of the $6\gamma \times n$ Jacobian $\mathbf{J}(\mathbf{q})$ in (6). If the rank is constant in a neighborhood of $\mathbf{q} \in V$, then $\mathbf{q}$ is a regular configuration of the linkage. But it may be a constraint singularity so that locally, in nearby regular configurations, $\mathbf{J}$ has no full rank. Identification of singularities and determination of the differential DOF in general configurations thus amounts to analyze the local geometry of the set of points with rank $\mathbf{J}(\mathbf{q})$. While $\delta_{\mathrm{diff}}(\mathbf{q})$ is readily known from the joint screw system, deciding whether it is locally constant is difficult. The concept of a tangent cone can be adopted to analyze curves passing through $\mathbf{q} \in V$ for which $\delta_{\mathrm{diff}}$ has at least a certain value. To this end, the $\alpha\beta$-minor of $\mathbf{J}$ of order $k$ [10]

$$m_{\alpha\beta}(\mathbf{q}) := \det \mathbf{J}_{\alpha\beta}(\mathbf{q}) = |\mathbf{S}_{\alpha\beta_1}(\mathbf{q}) \cdots \mathbf{S}_{\alpha\beta_k}(\mathbf{q})| \qquad (12)$$

is introduced as the determinant of the matrix $\mathbf{J}_{\alpha\beta}$ constructed using the rows and columns of $\mathbf{J}$ according to the row and column indexes $\alpha = \{\alpha_1, \dots, \alpha_k\}$ and $\beta = \{\beta_1, \dots, \beta_k\}$, with $\alpha_i \in \{1, \dots, 6\gamma\}, \beta_j \in \{1, \dots, n\}$. A point $\mathbf{q} \in \mathbb{V}^n$ is of rank less than $k$ iff $m_{\alpha\beta}(\mathbf{q}) = 0$ for any $k$-minor, i.e. $|\alpha| = |\beta| = k$. The variety of points of rank less than $k$ is thus

$$\begin{align}
L_k = \{ \mathbf{q} \in \mathbb{V}^n | f_l(\mathbf{q}) = \mathbf{I}, m_{\alpha\beta}(\mathbf{q}) = 0, \quad (13) \\
\alpha \subseteq \{1, \dots, 6\gamma\}, \beta \subseteq \{1, \dots, n\}, |\alpha| = |\beta| = k, \nonumber \\
l = 1, \dots, \gamma \} \subseteq V. \nonumber
\end{align}$$

For a mechanism with $\gamma$ FC, the number of minors of order $k$ in (13) is $(\frac{6\gamma}{k}) \cdot (\frac{n}{k})$.

**Definition 2.** The kinematic tangent cone to $L_k \subseteq V$ at $\mathbf{q} \in V$, denoted with $C_{\mathbf{q}}^{\mathrm{K}} L_k$, is the set of tangent vectors to smooth arcs in V passing through $\mathbf{q}$ at which all points have rank less than $k$.

The kinematic tangent cone to $L_k$ is determined as

$$C_{\mathbf{q}}^{\mathrm{K}} L_k = K_{\mathbf{q}}^{k, \mathrm{K}} \subset \dots \subset K_{\mathbf{q}}^{k, 3} \subset K_{\mathbf{q}}^{k, 2} \subset K_{\mathbf{q}}^{k, 1} \qquad (14)$$

with

$$\begin{align}
K_{\mathbf{q}}^{k,i} &:= \{ \mathbf{x} \mid \exists \mathbf{y}, \mathbf{z}, \dots \in \mathbb{R}^n : \nonumber \\
& \qquad H_l^{(1)}(\mathbf{q}, \mathbf{x}) = 0, M_{\alpha\beta}^{(1)}(\mathbf{q}, \mathbf{x}) = \mathbf{0}, \nonumber \\
& \qquad H_l^{(2)}(\mathbf{q}, \mathbf{x}, \mathbf{y}) = 0, M_{\alpha\beta}^{(2)}(\mathbf{q}, \mathbf{x}, \mathbf{y}) = \mathbf{0}, \nonumber \\
& \qquad H_l^{(3)}(\mathbf{q}, \mathbf{x}, \mathbf{y}, \mathbf{z}) = 0, M_{\alpha\beta}^{(3)}(\mathbf{q}, \mathbf{x}, \mathbf{y}, \mathbf{z}) = \mathbf{0}, \nonumber \\
& \qquad \dots \nonumber \\
& \qquad H_l^{(i)}(\mathbf{q}, \mathbf{x}, \mathbf{y}, \mathbf{z}, \dots) = 0, M_{\alpha\beta}^{(i)}(\mathbf{q}, \mathbf{x}, \mathbf{y}, \mathbf{z}, \dots) = \mathbf{0}, \nonumber \\
& \qquad \alpha \subseteq \{1, \dots, 6\gamma\}, \beta \subseteq \{1, \dots, n\}, |\alpha| = |\beta| = k, \nonumber \\
& \qquad l = 1, \dots, \gamma \} \tag{15}
\end{align}$$
where

$$
M_{ab}^{(1)}(\mathbf{q}, \dot{\mathbf{q}}) := \frac{d}{dt} m_{ab}(\mathbf{q}) \qquad (16)
$$

$$
M_{ab}^{(2)}(\mathbf{q}, \dot{\mathbf{q}}, \ddot{\mathbf{q}}) := \frac{d^2}{dt^2} m_{ab}(\mathbf{q})
$$

$$
M_{ab}^{(i)}(\mathbf{q}, \dot{\mathbf{q}}, \dots, \mathbf{q}^{(i)}) := \frac{d^i}{dt^i} m_{ab}(\mathbf{q}).
$$

$K_{\mathbf{q}}^{k,i}$ is the set of differential motions of order $i$ where
rank $\mathbf{J} < k$. These motions are not necessarily tangent to fi-
nite curves. The $C_{\mathbf{q}}^{\kappa} L_k$, $1 \le k < \text{rank } \mathbf{J}(\mathbf{q})$ give rise to a lo-
cal stratification of $V$ according to the rank at smooth curves
through $\mathbf{q} \in V$.

For the actual evaluation, it is again important that all deriva-
tives (16) are available recursively or, if desired, in closed
form. Denoting with **a** = (a₁, a₂, ..., aₙ) ∈ ℝⁿ a multi-index,
with norm |**a**| := a₁ + a₂ + ... + aₙ, and S<sub>αβj</sub><sup>(aⱼ)</sup> = d<sub>i</sub><sup>aⱼ</sup> / dt<sub>i</sub><sup>aⱼ</sup> S<sub>αβj</sub>, the
derivatives of the minors are given explicitly as [10]

$$
\frac{d^v m_{\alpha\beta}}{dt^v} = \sum_{|\alpha_k|=v} \left| S_{\alpha\beta_1}^{(a_1)} S_{\alpha\beta_2}^{(a_2)} \cdots S_{\alpha\beta_k}^{(a_k)} \right| \frac{v!}{\alpha_k! n_1! \cdots n_v!} \quad (17)
$$

where the multi-factorial is defined as **a**! = a₁!a₂!...aₙ!, and
nᵢ := |{aⱼ|aⱼ = i}| is the number of times a derivative of **S** of
degree i occurs. The derivatives S<sub>αβi</sub><sup>(aᵢ)</sup> are given recursively
[9, 20].

4 Local Approximation of the C-Space

The c-space is an analytic variety globally defined by the
constraint mapping (4). Replacing the constraint mappings
of a multi-loop linkage by the truncated vth-order series ex-
pansion

$$
f_l(\mathbf{q} + \mathbf{x}) = f_l(\mathbf{q}) + \sum_{1 \le k \le v} \frac{1}{k!} d^k f_{l,q}(\mathbf{x}) \quad (18)
$$

gives rise to a local kth-order approximation of V at **q** ∈ V,
where d^k f_l(**q**) is the kth differential of f_l at **q** ∈ V^n. For
admissible configurations **q** ∈ V of the linkage, it is f_l(**q**) =
**I**. The truncated series expansion (18) thus defines a vth-
order approximation of the c-space at **q** ∈ V as

$$
V_{\mathbf{q}}^{\nu} := \{ \mathbf{x} \in \mathbb{R}^n | d f_{l,q}(\mathbf{x}) + \frac{1}{2} d^2 f_{l,q}(\mathbf{x}) + \dots + \frac{1}{v!} d^v f_{l,q}(\mathbf{x}) = \mathbf{0}, \\
l = 1, \dots, \gamma \}. \tag{19}
$$

The c-space V as a geometric object is independent from the
(constraint) equations used to define it. The vth-order ap-
proximations $V_{\mathbf{q}}^{\nu}$ depend on the particular constraints, how-
ever. Nevertheless, there is an order $\kappa$ so that $V_{\mathbf{q}}^{\kappa}$ is a faithful
local approximation of V, i.e. there exist a neighborhood
$U(\mathbf{q})$ and an order $\kappa$ such that $V_{\mathbf{q}}^{\kappa} \cap U(\mathbf{q}) = V \cap U(\mathbf{q})$.

5 Local Approximation of the Set of Constraint Singu-
larities of certain Rank

The kinematic tangent cone $C_{\mathbf{q}}^{\kappa} L_k$ reveals the geometry of smooth motions where $\mathbf{J}$ has rank less than $k$. This fails to provide the c-space geometry at non-tangential intersections of submanifolds, e.g. cusps. Instead of restricting to motions through a point, the set $L_k$ is now locally approximated. For $\mathbf{q} \in L_k$, all $k$-minors of the constraint Jacobian $\mathbf{J}$ in (6) vanish, and a vth-order approximation of $L_k$ at $\mathbf{q} \in V$ is given by

$$
\begin{equation}
\begin{aligned}
L_{k,\mathbf{q}}^{\nu} = \{ \mathbf{x} \in \mathbb{R}^n & | d f_{l,\mathbf{q}}(\mathbf{x}) + \frac{1}{2} d^2 f_{l,\mathbf{q}}(\mathbf{x}) + \dots + \frac{1}{v!} d^v f_{l,\mathbf{q}}(\mathbf{x}) = \mathbf{0}, \\
& d m_{\alpha\beta,q}(\mathbf{x}) + \frac{1}{2} d^2 m_{\alpha\beta,q}(\mathbf{x}) + \dots + \frac{1}{v!} d^v m_{\alpha\beta,q}(\mathbf{x}) = \mathbf{0}, \\
& |\alpha| = |\beta| = k \}
\end{aligned}
\tag{16}
\end{equation}
$$

with the differentials of $f_l$ and $m_{\alpha\beta}$, respectively. There is a neighborhood $U(\mathbf{q})$ and order $\kappa$ so that $L_{k,\mathbf{q}}^{\kappa} \cap U(\mathbf{q}) = L_k \cap U(\mathbf{q})$. All

6 Differentials and Series Expansions

In this section, recursive expressions for the differentials ap-
pearing in the definitions of sections 4 and 5 are given. The
detailed derivations will be presented in a forthcoming pub-
lication. They only require simple vector arithmetic that can
be implemented without the need for symbolic computer al-
gebra systems.

**6.1 Constraint Mapping**

The above approximation of the c-space V requires the series
expansion of the mapping (4). W.l.o.g. in the following the
constraint mapping (1) of a single loop linkage is considered,
for simplicity. The results are directly applicable to the con-
straint mapping according to a FC l of a multi-loop linkage
using the predecessor relation $\leq_l$ within this FC [18]. The
differentials can be expressed as [21]

$$
\begin{align}
d^k f_{\mathbf{q}}(\mathbf{x}) &= \sum_{|\mathbf{a}|=k} \frac{k!}{a_1! a_2! \cdots a_n!} \frac{\partial^k f}{\partial q_1^{a_1} \partial q_2^{a_2} \cdots \partial q_n^{a_n}} x_1^{a_1} x_2^{a_2} \cdots x_n^{a_n} \nonumber \\
&= \sum_{|\mathbf{a}|=k} \frac{k!}{\mathbf{a}!} \mathbf{x}^a \partial^a f \tag{17}
\end{align}
$$

$$
= \sum_{\alpha_1, \alpha_2, \dots, \alpha_k} \frac{\partial^k f}{\partial q_{\alpha_1} \partial q_{\alpha_2} \dots \partial q_{\alpha_k}} . \quad (18)
$$

In (17), the multi-index **a** = (a₁, a₂, ..., aₙ) ∈ ℝⁿ is used,
where **x**ª = xª₁xª₂...xªₙ is a monomial of degree k = |**a**| :=
a₁ + a₂ + ... + aₙ, and the multiple partial derivative operator
is defined as ∂ª = (∂/∂q₁)ª₁... (∂/∂qₙ)ªₙ. The multi-factorial
is defined as **a**! = a₁!a₂!...aₙ!. In the second form (18),
α₁, α₂, ..., αₖ are joint indexes running over the index range
{1, ..., n}.

The differentials can be determined explicitly and alge-
braically since the partial derivatives of (1) are available in
$$d^v m_{\alpha\beta} = \sum_{|\mathbf{a}_k|=v} |d^{a_1} \mathbf{S}_{\alpha\beta_1,q}(\mathbf{x}) \cdot d^{a_2} \mathbf{S}_{\alpha\beta_2,q}(\mathbf{x}) \cdots d^{a_k} \mathbf{S}_{\alpha\beta_k,q}(\mathbf{x})| \frac{v!}{\mathbf{a}_k! n_1! \cdots n_v!} \quad (26)$$

terms of Lie brackets [19]. The non-zero derivatives for $\alpha_1, \dots, \alpha_v < i$ are

$$\frac{\partial^v \mathbf{S}_i}{\partial q_{\alpha_1} \partial q_{\alpha_2} \cdots \partial q_{\alpha_v}} = [\mathbf{S}_{\beta_v}, [\mathbf{S}_{\beta_{v-1}}, [\mathbf{S}_{\beta_{v-2}}, \dots, [\mathbf{S}_{\beta_1}, \mathbf{S}_i]] \cdots]] \\ = \mathbf{a} \mathbf{d}_{\mathbf{S}_{\beta_v}} \mathbf{a} \mathbf{d}_{\mathbf{S}_{\beta_{v-1}}} \mathbf{a} \mathbf{d}_{\mathbf{S}_{\beta_{v-2}}} \cdots \mathbf{a} \mathbf{d}_{\mathbf{S}_{\beta_1}} \mathbf{S}_i, \quad (19)$$

where $\beta_v \le \beta_{v-1} \le \dots \le \beta_2 \le \beta_1 < i$ is the ordered set of indexes $\{\alpha_1, \dots, \alpha_v\}$, and $[\mathbf{S}_j, \mathbf{S}_k] = \mathbf{a} \mathbf{d}_{\mathbf{S}_j} \mathbf{S}_k$ [22]. This relation can be represented using multi-index notation as

$$\partial^a \mathbf{S}_i = \prod_{j=1}^{i-1} \mathbf{a} \mathbf{d}_{\mathbf{S}_j}^{a_j} \mathbf{S}_i, \text{ if } a_j = 0, j = i, \dots, n \quad (20)$$

$$= \partial^{a_{i-1}} \mathbf{S}_i \quad (21)$$

and zero otherwise if $a_j \neq 0$ for some $j \ge i$.

Implementation of (19) is straightforward and only involves vector operations, but the number of operations for its evaluation is rather high. This can be avoided by means of a recursive formulation.

A straightforward derivation yields the following recursive relations of differentials of higher degree at $\mathbf{q} \in V$

$$d^k \mathbf{f}_{\mathbf{q}}(\mathbf{x}) = h_{\mathbf{q}}^{(k)}(\mathbf{x}) - \sum_{i=1}^{k-1} \binom{k-1}{i-1} d^i \mathbf{f}_{\mathbf{q}}(\mathbf{x}) d^{k-i} \mathbf{f}_{\mathbf{q}}^{-1}(\mathbf{x}), \text{ for } k > 1 \quad (22)$$

and $d\mathbf{f}_{\mathbf{q}}(\mathbf{x}) = h_{\mathbf{q}}^{(1)}(\mathbf{x})$ for $k = 1$, where

$$h_{\mathbf{q}}^{(k)}(\mathbf{x}) := \sum_{i \le n} x_i d^{k-1} \hat{S}_{i,q}(\mathbf{x}). \quad (23)$$

With slight abuse of notation, $d\mathbf{f}_{\mathbf{q}}^{-1}(\mathbf{x})$ denotes the differential of $f(\mathbf{q})^{-1} \in SE(3)$. The latter admits the recursive form

$$d^k \mathbf{f}_{\mathbf{q}}^{-1}(\mathbf{x}) = - \sum_{i=1}^{k} \binom{k}{i} d^i \mathbf{f}_{\mathbf{q}}(\mathbf{x}) d^{k-i} \mathbf{f}_{\mathbf{q}}^{-1}(\mathbf{x}). \quad (24)$$

Finally, the differentials of the joint screws $\mathbf{S}_i$ are given recursively by

$$d^k \mathbf{S}_{i,q}(\mathbf{x}) = \sum_{j \le i} \sum_{r=0}^{k-1} \binom{k-1}{r} [d^r \mathbf{S}_{j,q}(\mathbf{x}), d^{k-r-1} \mathbf{S}_{i,q}(\mathbf{x})]_{x_j, k \ge 1} \quad (25)$$

with $f^{-1}(\mathbf{q}) = \mathbf{I}$. In the above expressions, for $k = 0$, it is $d^k \mathbf{S}_{j,q} = \mathbf{S}_j(\mathbf{q})$ and $d^k \mathbf{f}_{\mathbf{q}}^{-1} = f^{-1}(\mathbf{q})$. It is clear from their definitions that $d^k \mathbf{f}_{\mathbf{q}}(\mathbf{x}), d^k \mathbf{f}_{\mathbf{q}}^{-1}(\mathbf{x}), h_{\mathbf{q}}^{(k)}(\mathbf{x}), d^k \mathbf{S}_{i,q}(\mathbf{x})$ are homogeneous polynomials of degree $k$.

With the assumption of remark 1, the origin $\mathbf{q} = \mathbf{0}$ can be chosen as the point of interest. Then (18) becomes the MacLaurin series, and $\mathbf{S}_j(\mathbf{0}) = \mathbf{Y}_j$ are the screw coordinates in the reference configuration.

## 6.2 Jacobian Minors

Application of the properties of the derivatives of a determinant gives rise to the general expression (26) for the differentials of the minors, where the truncated multi-index $\mathbf{a}_k = (a_1, a_2, \dots, a_k) \in \mathbb{N}^k$ is defined by removing the last $n-k$ indexes from $\mathbf{a}$, and $n_i := |\{a_j | a_j = i\}|$ is the number of times a differential of degree $i$ occurs. The differentials of $\mathbf{S}_{\alpha\beta_i}$ are determined by (25).

# 7 Examples

## 7.1 Planar 4-Bar Linkage

The first example is the planar 4-bar linkage with four revolute joints, i.e. $V \subset \mathbb{T}^4$. In the (singular) reference configuration $\mathbf{q}_0 = \mathbf{0}$, shown in fig. 1, the $n = 4$ joint screw coordinates are

$$\mathbf{Y}_1 = \mathbf{Y}_3 = (0,0,1,0,L,0)^T, \mathbf{Y}_2 = (0,0,1,0,2L,0)^T$$

$$\mathbf{Y}_4 = (0,0,1,0,0,0)^T.$$

**Analysis of V:** The kinematic tangent cone to V was shown to be [9]

$$C_{q_0}^K V = \mathbf{V}(x_1 + x_3, x_2, x_4) \cup \mathbf{V}(x_1 + x_2, x_3 + x_2, x_4 - x_2).$$

That is, the linkage can perform smooth 1-DOF motions through $\mathbf{q}_0$, and two motion branches intersect at that point. It is known that the configuration $\mathbf{q}_0$ is a bifurcation of V, and $C_{q_0}^K V$ is in fact the union of the two tangent spaces to the manifolds intersecting at $\mathbf{q}_0$. This cannot be inferred from the kinematic tangent cone, however, but from a local approximation of V. To this end, the $i$th-order series expansions of the constraint mapping are determined using (22). The expansions up to 3rd-order are shown in (28). They, and the higher-order expansions, yield the approximations (19) as $V_{q_0}^i = C_{q_0}^K V, i \ge 2$. This confirms that $\mathbf{q}_0$ is a bifurcation point of V and thus a c-space singularity. The local DOF is $\delta_{\text{loc}}(\mathbf{q}_0) = \dim V_{q_0}^2 = 1$.
$$d f_{q_0}(\mathbf{x}) = \begin{pmatrix} 0 & -x_1 - x_2 - x_3 - x_4 & 0 & 0 \\ x_1 + x_2 + x_3 + x_4 & 0 & 0 & -L(x_1 + 2x_2 + x_3) \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \end{pmatrix} \qquad (28)$$

$$d f_{q_0}(\mathbf{x}) + \frac{1}{2} d^2 f_{q_0}(\mathbf{x}) = \begin{pmatrix} -\frac{1}{2}(x_1 + x_2 + x_3 + x_4)^2 & -x_1 - x_2 - x_3 - x_4 & 0 & \frac{1}{2}L(x_1^2 + 4x_2x_1 + 2x_2^2 + x_3^2 + 2(x_1 + x_2)x_3) \\ x_1 + x_2 + x_3 + x_4 & -\frac{1}{2}(x_1 + x_2 + x_3 + x_4)^2 & 0 & -L(x_1 + 2x_2 + x_3) \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \end{pmatrix}$$

$$d f_{q_0}(\mathbf{x}) + \frac{1}{2} d^2 f_{q_0}(\mathbf{x}) + \frac{1}{6} d^3 f_{q_0}(\mathbf{x}) = \begin{pmatrix} -\frac{1}{2}(x_1 + x_2 + x_3 + x_4)^2 & \frac{1}{6}(x_1 + x_2 + x_3 + x_4)^3 - x_1 - x_2 - x_3 - x_4 & 0 & \frac{1}{2}L(x_1^2 + 4x_2x_1 + 2x_2^2 + x_3^2 + 2(x_1 + x_2)x_3) \\ -\frac{1}{6}(x_1 + x_2 + x_3 + x_4)^3 + x_1 + x_2 + x_3 + x_4 & -\frac{1}{2}(x_1 + x_2 + x_3 + x_4)^2 & 0 & \frac{1}{6}L(x_1^3 + 6x_2x_1^2 + 6x_2^2x_1 + 2x_2^3 + x_3^3 + 3(x_1 + x_2)x_3^2 \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \end{pmatrix}$$

**Analysis of $L_i$:** It remains to investigate the differential DOF at configurations near $q_0$. The rank of the Jacobian $J(q_0) = (Y_1 Y_2 Y_3 Y_4)$ in the reference configuration is rank $J(q_0) = 2$, i.e. the differential DOF is $\delta_{\text{diff}}(q_0) = n-2$, so that $q_0 \in L_3$. For this planar linkage the maximal rank of $J$ is 3 so that trivially $q_0 \in L_i, i > 3$. The kinematic tangent cone to $L_3$ was reported in [10] to be $C_{q_0}^K L_3 = \{0\}$. From this analysis it can be concluded that for any smooth curve through $q_0$ the differential DOF is locally $\delta_{\text{diff}} = 1$ but increases to 2 at $q_0$.

The local approximation of $L_3$ requires the differentials of the 2-minors of $J$ at $q_0$. The first- and third-order differentials are

$$\begin{aligned} \{d m_{\alpha\beta,q_0}(\mathbf{x})\} &= \{-L^2 x_2, -L^2(2x_2 + x_3), -L^2 x_2, L^2 x_3\} \\ \{d^3 m_{\alpha\beta,q_0}(\mathbf{x})\} &= \{L^2 x_2^3, L^2(2x_2^3 + 3x_2^2x_3 + 3x_2x_3^2 + x_3^3), \\ & \qquad -L^2 x_3^3, L^2 x_2(x_2^2 + 3x_2x_3 + 3x_3^2)\}, \end{aligned}$$

whereas $d^2 m_{\alpha\beta,q_0}(\mathbf{x}) = 0$, for $|\alpha| = |\beta| = 2$. Therewith the solution sets (16) are $L_{3,q_0}^i = C_{q_0}^K L_3 = \{0\}, i > 1$. Consequently, all points in a neighborhood of $q_0 = 0$ have rank 3, except the point $q_0$. The set of points of rank less than 3 (and thus of rank 2) is the zero-dimensional manifold consisting of the point $\{q_0\}$.

<figure><img src="image_1.png" /><figcaption>Fig. 1. Reference configuration of the 4-bar linkage (from [9]).</figcaption></figure>

## 7.2 Planar 3-Loop Linkage in a Cusp Singularity

The 1 DOF planar linkage shown in fig. 2 was discussed in [11] as an example where the c-space exhibits a cusp singularity. It is formed by a mirror-symmetric arrangement of two straight-line-generating Watt linkages that are connected by link VIII. The attachment point of joint 9 moves on the coupler point of a Watt linkages formed by links I-IV, and the attachment point of joint 10 moves on the coupler curve of a mirrored version of this Watt linkages formed by links I, V-VII. Therefore, both points can instantaneously only move in vertical direction. Furthermore, in the shown configuration, both points are at an inflection point of the respective coupler curve. Since the sitance of these points is fixed by link VIII, link III or VI can instantaneously not move upward. There are two possible downward motions, which lead to the cusp of the c-space. A detailed description can be found in [11, 12].

<figure><img src="image_2.png" /><figcaption>Fig. 2. a) Planar linkage, constructed by connecting two Watt linkages, in its reference configuration $q_0$ (from [10]). b) Topological graph and fundamental cycles.</figcaption></figure>
It comprises $n = 10$ revolute joints with parallel axes, i.e. $V \subset \mathbb{T}^{10}$. In the reference configuration in fig. 2 the joint screw coordinates, w.r.t. the shown reference frame, are

$$
\begin{align*}
\mathbf{Y}_1 &= \mathbf{Y}_5 = (0,0,1,0,0,0)^T, \quad \mathbf{Y}_2 = (0,0,1,0,1,0)^T \\
\mathbf{Y}_3 &= (0,0,1,-1,2,0)^T, \quad \mathbf{Y}_4 = (0,0,1,-1,3,0)^T \\
\mathbf{Y}_6 &= (0,0,1,0,-1,0)^T, \quad \mathbf{Y}_7 = (0,0,1,-1,-2,0)^T \\
\mathbf{Y}_8 &= (0,0,1,-1,-3,0)^T, \quad \mathbf{Y}_9 = (0,0,1,-1/2,3/2,0)^T \\
\mathbf{Y}_{10} &= (0,0,1,-1/2,-3/2,0)^T.
\end{align*}
$$

The linkage possesses $\gamma = 3$ FCs numbered with 1,2,3 (instead of using indexes of the co-tree edge as in [10, 18]). The loop constraint mappings are

$$
\begin{align*}
f_1(\mathbf{q}) &= \exp(q_1 \mathbf{Y}_1) \exp(q_2 \mathbf{Y}_2) \exp(q_9 \mathbf{Y}_9) \cdot \\
&\phantom{=} \exp(q_{10} \mathbf{Y}_{10}) \exp(q_6 \mathbf{Y}_6) \exp(q_5 \mathbf{Y}_5) \\
f_2(\mathbf{q}) &= \exp(q_1 \mathbf{Y}_1) \exp(q_2 \mathbf{Y}_2) \exp(q_3 \mathbf{Y}_3) \exp(q_4 \mathbf{Y}_4) \\
f_3(\mathbf{q}) &= \exp(-q_5 \mathbf{Y}_5) \exp(-q_6 \mathbf{Y}_6) \exp(q_7 \mathbf{Y}_7) \exp(q_8 \mathbf{Y}_8).
\end{align*}
$$

The corresponding constraint Jacobians are

$$
\begin{align}
\mathbf{J}_1 &= (\mathbf{S}_1, \mathbf{S}_2, \mathbf{0}, \mathbf{0}, \mathbf{S}_5, \mathbf{S}_6, \mathbf{0}, \mathbf{0}, \mathbf{S}_9, \mathbf{S}_{10}) \nonumber \\
\mathbf{J}_2 &= (\mathbf{S}_1, \mathbf{S}_2, \mathbf{S}_3, \mathbf{S}_4, \mathbf{0}, \mathbf{0}, \mathbf{0}, \mathbf{0}, \mathbf{0}, \mathbf{0}) \nonumber \\
\mathbf{J}_3 &= (\mathbf{0}, \mathbf{0}, \mathbf{0}, \mathbf{0}, -\mathbf{S}_5, -\mathbf{S}_6, \mathbf{S}_7, \mathbf{S}_8, \mathbf{0}, \mathbf{0}). \tag{29}
\end{align}
$$

They form the overall 18 × 10 constraint Jacobian (6). In the reference configuration, where $\mathbf{S}_i(\mathbf{q}_0) = \mathbf{Y}_i$, it is $r = \text{rank } \mathbf{J}(\mathbf{q}_0) = 8$, and hence $\delta_{\text{diff}}(\mathbf{q}_0) = 2$.

**Analysis of V:** It was shown in [10] that the kinematic tangent cone to the c-space is $C_{\mathbf{q}_0}^K V = \{\mathbf{0}\}$. That is, there is no smooth curve through $\mathbf{q}_0$. Yet the linkage is known to be finitely mobile with 1 DOF, i.e. the c-space $V$ is a curve in $\mathbb{T}^{10}$. This can only be revealed by analyzing the geometry of $V$.

The first-order approximation (19) is simply the 2-dimensional vector space

$$
\begin{align}
V_{\mathbf{q}_0}^1 &= \ker \mathbf{J}(\mathbf{q}_0) = K_{\mathbf{q}_0}^1 \nonumber \\
&= \mathbf{V}(x_1 + x_2, x_1 + x_3, x_1 - x_4, x_5 + x_6, x_5 - x_7, \tag{30} \\
&\phantom{=} x_5 + x_8, x_1 - x_5 - 3x_9, x_1 + 3x_{10} - x_5). \nonumber
\end{align}
$$

According to (19), the second-order series expansion of the constraint mappings, shown in (31), yields the second-order approximation (32). This is a 1-dimensional real algebraic variety. It turns out that the third- and higher-order approximations are all 1-dimensional, and the local DOF is thus $\delta_{\text{loc}}(\mathbf{q}_0) = \dim V_{\mathbf{q}_0}^2 = 1$. In order to visualize this 1-dimensional variety, a bivariate polynomial is constructed from (31) in terms of $x_1$ and $x_5$ by eliminating

<figure><img src="image_3.png" /><figcaption>Fig. 3. 2nd-order approximation $V_{\mathbf{q}_0}^2$ of the c-space of the linkage in fig. 2: a) $x_1-x_5$ section, b) $x_1-x_2$ section.</figcaption></figure>

<figure><img src="image_4.png" /><figcaption>Fig. 4. Two nearby configurations the linkage can reach from the cusp singularity $\mathbf{q}_0$, where a) corresponds to the red part, and b) to the blue part of the curve in Fig. 3a).</figcaption></figure>

$x_2, \dots, x_4, x_6, \dots, x_{10}$. This is a polynomial of degree 32, which is too long to be shown here. It defines the $x_1-x_5$ section shown in fig. 3a), which reveals that $\mathbf{q}_0$ is a cusp singularity. Fig. 4 shows two nearby configurations the linkage can reach from the cusp $\mathbf{q}_0$.

The bivariate polynomials in terms of $x_1$ and the other vari-
$$
\begin{aligned}
d f_{2,q_0}(\mathbf{x}) + \frac{1}{2} d^2 f_{2,q_0}(\mathbf{x}) = & \begin{pmatrix}
-\frac{1}{2}(x_1+x_{10}+x_2+x_5+x_6+x_9)^2 & -x_1-x_{10}-x_2-x_5-x_6-x_9 & 0 & \frac{1}{4}(3x_{10}^2+(6x_1+6x_2+4x_6+6x_9-2)x_{10}-2x_2^2+2x_6^2-3x_9^2+4x_2x_6-6x_2x_9+4x_6x_9-2x_9+x_1(-4x_2+4x_6-6x_9)) \\
x_1+x_{10}+x_2+x_5+x_6+x_9 & -\frac{1}{2}(x_1+x_{10}+x_2+x_5+x_6+x_9)^2 & 0 & -\frac{3x_{10}}{2}+x_2-x_6+\frac{3x_9}{2}-\frac{1}{4}(x_{10}+x_9)(2x_1+x_{10}+2x_2+x_9) \\
0 & 0 & 0 & 0 \\
0 & 0 & 0 & 0
\end{pmatrix}
\end{aligned}
$$

$$
\begin{aligned}
d f_{4,q_0}(\mathbf{x}) + \frac{1}{2} d^2 f_{4,q_0}(\mathbf{x}) = & \begin{pmatrix}
-\frac{1}{2}(x_1+x_2+x_3+x_4)^2 & -x_1-x_2-x_3-x_4 & 0 & \frac{1}{2}(-x_2^2-2x_1x_2-4x_3x_2-2x_3^2-3x_4^2-4x_1x_3-2x_3-6(x_1+x_2+x_3)x_4-2x_4) \\
x_1+x_2+x_3+x_4 & -\frac{1}{2}(x_1+x_2+x_3+x_4)^2 & 0 & x_2+2x_3+3x_4-\frac{1}{2}(x_3+x_4)(2x_1+2x_2+x_3+x_4) \\
0 & 0 & 0 & 0 \\
0 & 0 & 0 & 0
\end{pmatrix}
\end{aligned}
$$

$$
\begin{aligned}
d f_{8,q_0}(\mathbf{x}) + \frac{1}{2} d^2 f_{8,q_0}(\mathbf{x}) = & \begin{pmatrix}
-\frac{1}{2}(x_5+x_6-x_7-x_8)^2 & x_5+x_6-x_7-x_8 & 0 & x_5(x_6-2x_7-3x_8) + \frac{1}{2}(x_6^2-4x_7x_6-6x_8x_6+2x_7^2+3x_8^2-2x_7+6x_7x_8-2x_8) \\
-x_5-x_6+x_7+x_8 & -\frac{1}{2}(x_5+x_6-x_7-x_8)^2 & 0 & x_6-2x_7-3x_8 + \frac{1}{2}(2x_5+2x_6-x_7-x_8)(x_7+x_8) \\
0 & 0 & 0 & 0 \\
0 & 0 & 0 & 0
\end{pmatrix}
\end{aligned}
\qquad (31)
$$

ables are of degree 4, respectively. For instance,

$$
\begin{aligned}
& x_1^4 + 4x_1^3 x_2 + 6x_1^2 x_2^2 + 4x_1 x_2^3 + x_2^4 - 8x_1^3 - 20x_1^2 x_2 \\
& -16x_1 x_2^2 - 4x_2^3 + 24x_1^2 + 24x_1 x_2 + 8x_2^2 + 8x_1 + 8x_2 = 0
\end{aligned}
$$

defines the projection of $V_{q_0}^2$ to the $x_1-x_2$ coordinate plane shown in fig. 3b). It is important to notice that the dashed part of the curve is not connected to the cusp, but rather appears due to the projection, i.e. due to the elimination of the remaining variables.

**Remark 3.** Clearly, the notion of a tangent space or tangent cone to V is questionable at this point. One relevant definition, for instance, is that of the geometric tangent cone defined as the limits of all secant lines originating from **q** that pass through a sequence of points that converges to **q** [23, 24]. This would be the dotted line shown in fig. 3a), which shows that the linkage is at a dead point. It does, however, not indicate that there are two branches. Moreover, any definition of tangent cone to the c-space (as real set) may have a different dimension than V itself, and hence not reveal the correct DOF.

**Remark 4.** While the determination of the polynomials defining the second-order approximation is computationally simple with the recursive relations presented in section 6, their interpretation and the actual analysis of the second-order algebraic variety $V_{q_0}^2$ in (32) is non-trivial. The polynomial was determined with the software Maple on a high-performance computing facility.

**Analysis of Lᵢ:** In the reference configuration it is rank **J**(**q**₀) = 8, and since the maximal rank of **J** is 9 (re- calling that the linkage consists of three planar loops), it is **q**₀ ∈ L₉. Because any $C_{q_0}^K L_i$ is a restriction of $C_{q_0}^K V = \{\mathbf{0}\}$ it is $C_{q_0}^K L_9 = \{\mathbf{0}\}$ (there is no smooth curve through **q**₀).

The second-order local approximation of the variety L₉ turns out to be $L_{9,q_0}^2 = \{\mathbf{0}\}$. Therefore, rank **J** = 9 in any sufficiently small neighborhood U(**q**₀) ∩ V except at **q**₀, where the rank drops to 8. (Notice that $L_8 ∩ U(**q**₀) = \{\mathbf{0}\}$ since rank **J** can only increase in a sufficiently small neighborhood). Thus, **q**₀ is a c-space singularity, and hence a kinematic singularity.

This example shows that the mobility/singularity analysis in general requires resorting to the most obvious tool, namely the approximation of the solution set V. However, it also shows that the final analysis amounts to investigating an algebraic variety $V_{q_0}^K$, which gets complicated very easily.

## 8 Conclusions and Open Issues

Investigating the finite motion of a linkage strictly requires analyzing the c-space geometry. This was addressed in this paper by means of a local approximation. To this end, a recursive algebraic formulation of the higher-order series expansion of the loop constraints is provided, and used to define higher-order local approximations of the c-space and thus the mobility. Additionally, a computationally efficient formulation of the series expansion of the minors of the constraint Jacobian is presented and thereupon a local approximation of the set of points of certain rank is defined. This allows for analyzing configurations where a linkage does not possess smooth motions through that configuration. It should be noticed that such situations were almost exclusively ignored in the literature since singularities of most linkages are bifurcations were smooth manifolds intersect (even for all reported kinematotropic linkages –a kinematotropic linkage that exhibits non-smooth transitions was reported in [12]). The presented approach complements the previously presented formulation for approximating finite motions through a given point.

In summary all defining polynomial systems implicitly defining a local description of 1) the set of smooth motions, 2) the
$$
\begin{equation}
\begin{aligned}
V_{q0}^2 = & \mathbf{V}(x_5 + x_6 - x_7 - x_8, -\frac{1}{2}(x_5 + x_6 - x_7 - x_8)^2, -x_5 - x_6 + x_7 + x_8, \frac{1}{2}(x_7 + x_8)(2x_5 + 2x_6 - x_7 - x_8) + x_6 - 2x_7 - 3x_8, \\
& x_5(x_6 - 2x_7 - 3x_8) + \frac{1}{2}(x_6^2 - 4x_6x_7 - 6x_6x_8 + 2x_7^2 + 6x_7x_8 - 2x_7 + 3x_8^2 - 2x_8), \\
& \frac{1}{2}(-3x_1 - x_10 - 3x_2 - 2x_3 - 2x_4 - x_5 - x_6 - x_9), x_1 + x_10 + x_2 + x_5 + x_6 + x_9, -\frac{1}{2}(x_1 + x_10 + x_2 + x_5 + x_6 + x_9)^2, \\
& \frac{1}{4}(-3x_10 + 6x_2 + 8x_3 + 12x_4 - 2x_6 + 3x_9), x_2 + \frac{3x_9}{2} - \frac{1}{4}(x_10 + x_9)(2x_1 + x_10 + 2x_2 + x_9) - \frac{3x_{10}}{2} - x_6, \\
& \frac{1}{4}(x_10(6x_1 + 6x_2 + 4x_6 + 6x_9 - 2) + x_1(-4x_2 + 4x_6 - 6x_9) + 3x_{10}^2 - 2x_2^2 + 4x_2x_6 - 6x_2x_9 + 2x_6^2 + 4x_6x_9 - 3x_9^2 - 2x_9), \\
& \frac{1}{2}(x_1 + x_10 + x_2 + x_5 + x_6 + x_9) + x_1 + x_2 + x_3 + x_4, -x_1 - x_10 - x_2 - x_5 - x_6 - x_9)
\end{aligned}
\tag{32}
\end{equation}
$$

set of smooth motions with certain rank (including singularities), 3) the c-space, and 4) the set of points of certain rank are given explicitly in terms of simple algebraic operations of joint screw coordinates. Thus, a conceptual and algorithmic framework providing all defining equations for an exhaustive local mobility analysis of linkages is now available.

Still the critical point of any local approximation is that it
leads to an approximating algebraic variety defined implic-
itly by a polynomial system. Investigating the latter can be-
come difficult, and may necessitate application of methods
from computational algebraic geometry. This may seem to
put the usefulness of the local approximation as whole into
perspective since the c-space itself could be expressed as an
algebraic variety in the first place. However, the order of the
approximating algebraic variety is low in contrast to the alge-
braic c-space variety. With the formulation presented in this
paper along with [9, 10], the defining equations for a local
approximation can always be determined. The best means to
treat these equations remains to be investigated.

The higher-order series expansion can also be used for com-
puting approximate solutions of loop closure constraints, e.g.
for a specified motion. Initial results are reported in [25].
This topic has also been addressed in [15].

Acknowledgement

This work has been supported by the LCM-K2 Center within
the framework of the Austrian COMET-K2 program.

**References**

[1] M. Husty, M. Pfurner, H.-P. Schröcker, K. Brunnthaler: Algebraic methods in mechanism analysis and

[2] D. R. Walter, M. L. Husty. On Implicitization of Kinematic Constraint Equations. In Machine Design & Research (CCMMS 2010), Vol. 26, pp. 218-226, Shanghai, 2010 synthesis. Robotica, Vol. 25, No. 6, 2007, pp. 661-675

[3] X. Kong: Reconfiguration Analysis of Multimode Single-Loop Spatial Mechanisms Using Dual Quaternions, ASME J. Mechanisms Robotics, 2017, Vol. 9, No. 5

[4] Z. Li, J. Schicho: A technique for deriving equational conditions on the Denavit-Hartenberg parameters of 6R linkages that are necessary for movability, Mech. Mach. Theory, Vol. 94, 2015, pp. 1-8

[5] I.F. de Bustos, et al.: Second order mobility analysis of

mechanisms using closure equations, Meccanica, 2012,
Volume 47, Issue 7, pp 1695-1704

[6] J. Gallardo-Alvarado, J.M. Rico-Martinez: Jerk Influence Coefficients, via Screw Theory, of Closed Chains, Meccanica, Vol. 36, No. 2, 2001, pp. 213-228

[7] J. Lerbet: Analytic Geometry and Singularities of Mechanisms, ZAMM, Z. angew. Math. Mech., Vol. 78, No. 10b, 1999, pp. 687-694

[8] J.M. Rico, J. Gallardo, J. Duffy: Screw theory and higher order kinematic analysis of open serial and closed chains, Mech. Mach. Theory, Vol. 34, No. 4, 1999, pp. 559-5862018

[9] A. Müller: Local Kinematic Analysis of Closed-Loop Linkages -Mobility, Singularities, and Shakiness, ASME J. Mech. Rob., Vol. 8, August 2016, 041013-1

[10] A. Müller: Higher-Order Analysis of Kinematic Singularities of Lower Pair Linkages and Serial Manipulators, ASME J. Mech. Rob., Vol. 10, No 1.,

[11] R. Connelly, H. Servatius: Higher-Order Rigidity-What Is the Proper Definition?, Discrete Comput Geom. Vol. 11, 1994, pp. 193-200

[12] P.C. López-Custodio, A. Müller, J.M. Rico, J.S. Dai: A synthesis method for 1-DOF mechanisms with a cusp in the configuration space, Mech. Mach. Theory, Vol. 132, 2019, pp. 154-175

[13] C. Chen: The order of local mobility of mechanisms, Mech. Mach. Theory, Vol. 46, 2011, pp. 1251-1264

[14] G. Karsai: Method for the calculation of the combined motion time derivatives of optional order and solution for the inverse kinematic problems, Mech. Mach. Theory, Vol. 36, 2001, pp. 261-272

[15] P. Milenkovic: Series Solution for Finite Displacement of Sinle-Loop Spatial Linkages, ASME J. Mech. Rob., Vol. 4, 2012

[16] R. W. Brockett: Robotic manipulators and the product of exponentials formula, Mathematical Theory of Networks and Systems, Lecture Notes in Control and Information Sciences Vol. 58, 1984, pp 120-129

[17] J.M. Herve: Intrinsic formulation of problems of geometry and kinematics of mechanisms, Mech. Mach. Theory, vol. 17, No. 3, 1982, pp. 179-184

[18] A. Müller: Topology, Kinematics, and Constraints of Multi-Loop Linkages, Robotica, Vol. 36, No. 11, pp. 1641-1663

[19] A. Müller: Higher Derivatives of the Kinematic Mapping and some Applications, Mech. Mach. Theory, Vol. 76, 2014, pp. 70-85
[20] A. Müller: Recursive Higher-Order Constraints for Linkages with Lower Linematic Pairs, Mechanism and Machine Theory, Vol. 100, 2016, pp. 33-43

[21] W. J. Vetter: Matrix calculus operations and Taylor expansions, Soc. Ind. Appl. Math., 1973, Vol. 15, No. 2, pp. 352-369

[22] J. Selig: Geometric Fundamentals of Robotics, Springer, New York, 2005

[23] O’Shea, Wilson: Limits of tangent spaces to real surfaces, American Journal of Mathematics, Volume 126, Number 5, 2004, pp. 951-980

[24] H. Whitney: Local properties of analytic varieties, Differential and Combinatorial Topology, Princeton University Press, 1965

[25] J.J. de Jong, A. Müller, J. L. Herder: Higher-order Taylor approximation of finite motions of mechanisms, Robotica, 2018