Keywords

1 Introduction

Ever since the development of modern kinematics, mechanism synthesis for motion generation has always been widely studied by many researchers [1,2,3]. The existing and long-standing approach is to decompose the synthesis problem into type synthesis–the selection of mechanism type for a given task requirement and dimensional synthesis–the determination of dimensions of a selected mechanism type from the numerical aspect of the task requirement.

The current state of art in kinematics and mechanism design is predicated on creating artificial boundaries between planar mechanisms that apparently facilitate selection of the type of linkage mechanisms during the synthesis process. However, this convenience comes at a great price of picking the wrong type at an early stage of the design process. Before carrying out the dimensional synthesis, one has to reach at a decision regarding the type of mechanism to be employed for a specified motion requirement. While dimensional synthesis has been a subject amenable to mathematical treatments, identifying a mechanism type that matches with a given motion task is often driven by the designer’s past kinematic experience. Therefore, in order to bridge the gap between type and dimensional synthesis, researchers have been working towards combining the two processes that is driven by the analysis of a given task. Hayes [4] earlier adopted kinematic-mapping theory to carry out simultaneous type and dimensional synthesis of four-bar linkages for motion approximation problem. Lately, Ge and Zhao [5,6,7] combined the kinematic-mapping theory with algebraic fitting to provide a new integrated synthesis method for the motion synthesis problem of planar four-bar and six-bar linkages.

However, the aforementioned works mainly focus on four-bar or six-bar linkages with acquisition of simple geometric constraints of line and circle. In this paper, the acquisition of quadratic constraints can be used for the type and dimensional determination of planar mechanisms that go well beyond the limitation of four-bar or six-bar linkages. In addition, we present a unified framework for generating mechanism motion for a combination of positions and engineering constraint (installation position).

2 Basic Geometric Constraint

According to the kinematic characteristics of planar mechanisms, the constraint elements can be divided into points, straight-lines, circles, circular-arcs, ellipses, hyperbolas, parabolas, etc. Moreover, the mathematical expressions of these constraints can be obtained easily from plane geometry. Figure 1 shows that one point can be constrained by straight-line, circle, circular-arc, ellipse, hyperbola, and parabola, and also enumerates some 1-DOF mechanisms, and they are classified based on the type of geometric constraints they generated. For example, a circle or a circular-arc can be easily realized with a revolute joint. Ref. [8] has given out a comprehensive discussion on the generation of planar algebraic curves utilizing planar mechanisms.

Fig. 1.
figure 1

Geometric constraints and their generating mechanisms

3 Unified Mathematical Model for Mixed Poses and Practical Constraints

As shown in Fig. 2, the planar motion of a rigid body can be represented as \(d(d_{x},d_{y})\) and \(\theta \), where d denotes the Cartesian coordinates of a point on the moving rigid body, and \(\theta \) represents the rotational angle of the rigid body. Then for given planar poses represented as a group of Cartesian space parameters \((d_{x},d_{y},\theta )\), the planar displacement of the rigid body can be expressed with homogeneous coordinates as

$$\begin{aligned}{}[X_{1}~X_{2}~X_{3}]^{T}=\mathbf {H}[x_{1}~x_{2}~x_{3}]^{T}=\left[ \begin{matrix} cos\theta &{} -sin\theta &{} d_{x} \\ sin\theta &{} cos\theta &{} d_{y} \\ 0 &{} 0 &{} 1 \end{matrix} \right] [x_{1}~x_{2}~x_{3}]^{T} \end{aligned}$$
(1)

Also the algebraic equation of a general quadratic curve is

$$\begin{aligned} a_{0} x^{2}+a_{1} y^{2}+a_{2} x y+a_{3} x+a_{4} y+a_{5}=0 \end{aligned}$$
(2)
Fig. 2.
figure 2

A planar displacement

The corresponding expression using homogeneous coordinate is

$$\begin{aligned} a_{0} X_{1}^{2}+a_{1} X_{2}^{2}+a_{2} X_{1} X_{2}+a_{3} X_{1} X_{3}+a_{4} X_{2} X_{3}+a_{5} X_{3}^{2}=0 \end{aligned}$$
(3)

It’s clear that Eq. (3) contains 9 unknowns, including 6 unknown coefficients \(a_{0}\sim a_{5}\) and 3 position coordinates \(X_{1}\sim X_{3}\). For planar mechanisms, let \(X_{3}=x_{3}=1\); for quadratic curves, since the constant term does not change the character of the curve, but only affects the position. For the convenience of calculation, let \(a_{5}=1\). So Eq. (3) can be simplified as

$$\begin{aligned} a_{0} X_{1}^{2}+a_{1} X_{2}^{2}+a_{2} X_{1} X_{2}+a_{3} X_{1}+a_{4} X_{2}+1=0 \end{aligned}$$
(4)

According to Eq. (1) and the above discussion

$$\begin{aligned} \left\{ \begin{array}{l}{X_{1}=\cos \theta x_{1}-\sin \theta x_{2}+d_{x}} \\ {X_{2}=\sin \theta x_{2}+\cos \theta x_{1}+d_{y}} \\ {X_{3}=1}\end{array}\right. \end{aligned}$$
(5)

Substitute \(X_{1},X_{2},X_{3}\) into Eq. (3) to get the constraint equation for the prescribed pose as follows

$$\begin{aligned} \begin{array}{l}{a_{0} d_{x}^{2}+a_{2} d_{x} d_{y}+a_{3} d_{x}+a_{1} d_{y}^{2}+a_{4} d_{y}+\left( 2 a_{0} x_{1}+a_{2} x_{2}\right) d_{x} \cos \theta } \\ {+ \left( a_{2} x_{1}-2 a_{0} x_{2}\right) d_{x} \sin \theta +\left( 2 a_{1} x_{2} x+a_{2} x_{1}\right) d_{y} \cos \theta } \\ {+ \left( 2 a_{1} x_{1}-a_{2} x_{2}\right) d_{y} \sin \theta +\left( a_{1} x_{2}^{2}+a_{2} x_{1} x_{2}+a_{0} x_{1}^{2}+1\right) \cos ^{2} \theta } \\ {+ \left( a_{2} x_{1}^{2}-a_{2} x_{2}^{2}-a_{0} x_{1} x_{2}+a_{1} x_{1} x_{2}\right) \cos \theta \sin \theta } \\ {+ \left( a_{3} x_{1}+a_{4} x_{2}\right) \cos \theta +\left( a_{1} x_{1}^{2}-a_{2} x_{1} x_{2}+a_{0} x_{2}^{2}+1\right) \sin ^{2} \theta } \\ {+ \left( a_{4} x_{1}-a_{3} x_{2}\right) \sin \theta =0}\end{array} \end{aligned}$$
(6)

Since Homotopy algorithm is adopted for the solution, according to the characteristics of the algorithm, the number of equations and the number of unknowns in the system must be equal, so the number of prescribed poses should not exceed seven. Therefore, this paper mainly studies the situations that the number of prescribed poses is five or six.

When the number of prescribed poses is six or five, the number of constraint equations obtained from the prescribed poses is also six or five(less than seven), and it is necessary to increase constraint equation to solve the unknown parameters. It can be seen from the Sect. 2 that the positions of fixed pivots of the generating mechanism are often determined by the positions of the focus, vertex and geometric center of the curve. Hence, additional constraints of mechanism installing positions could be imposed on the planar motion to construct the equation system. Six Poses. For the six poses, the corresponding homogeneous coordinates are

$$\begin{aligned} \left\{ \begin{array}{l}{X_{1i}=\cos \theta _{i} x_{1}-\sin \theta _{i} x_{2}+d_{xi}} \\ {X_{2i}=\sin \theta _{i} x_{2}+\cos \theta _{i} x_{1}+d_{yi}} \\ {X_{3i}=1}\end{array}\right. \end{aligned}$$
(7)

Therefore, the system to be solved is

$$\begin{aligned} \left\{ \begin{array}{l}{a_{0} X_{11}^{2}+a_{1} X_{21}^{2}+a_{2} X_{11} X_{21}+a_{3} X_{11}+a_{4} X_{21}+1=0} \\ {a_{0} X_{12}^{2}+a_{1} X_{22}^{2}+a_{2} X_{12} X_{22}+a_{3} X_{12}+a_{4} X_{22}+1=0} \\ \qquad \qquad \qquad \qquad \vdots \\ {a_{0} X_{1i}^{2}+a_{1} X_{2i}^{2}+a_{2} X_{1i} X_{2i}+a_{3} X_{1i}+a_{4} X_{2i}+1=0} \\ {f(a_{0},\ldots ,a_{4})=0} \end{array}\right. \end{aligned}$$
(8)

where \(i= 1,2,\ldots ,6\); \(f(a_{0},\ldots ,a_{4})=0\) is the constraint equation for the mechanism installing position. Five Poses. For the five poses, the corresponding homogeneous coordinates are the same as Eq. (7). And the system to be solved is

$$\begin{aligned} \left\{ \begin{array}{l}{a_{0} X_{11}^{2}+a_{1} X_{21}^{2}+a_{2} X_{11} X_{21}+a_{3} X_{11}+a_{4} X_{21}+1=0} \\ {a_{0} X_{12}^{2}+a_{1} X_{22}^{2}+a_{2} X_{12} X_{22}+a_{3} X_{12}+a_{4} X_{22}+1=0} \\ \qquad \qquad \qquad \qquad \vdots \\ {a_{0} X_{1i}^{2}+a_{1} X_{2i}^{2}+a_{2} X_{1i} X_{2i}+a_{3} X_{1i}+a_{4} X_{2i}+1=0} \\ {f_{1}(a_{0},\ldots ,a_{4})=0} \\ {f_{2}(a_{0},\ldots ,a_{4})=0}\end{array}\right. \end{aligned}$$
(9)

where \(i= 1,2,\ldots ,5\); \(f_{1}(a_{0},\ldots ,a_{4})=0\) and \(f_{2}(a_{0},\ldots ,a_{4})=0\) are the constraint equations for mechanism installing positions.

In this paper, HOM4PS2 [9], which is a polyhedral homotopy solver, is used in the actual solving process. In addition to HOM4PS2, there are other free homotopy packages, including PHCpack [10], POLSYSGLP [11], Bertini [12], etc.

4 Constraint Equation for Mechanism Installation Position

According to Sect. 3, when the number of prescribed poses is seven, a finite number of solutions satisfying the design conditions can be obtained from the constraint equations directly, and then the corresponding generating-mechanism can be obtained. When the number of prescribed poses is less than seven, the number of equations is less than the number of unknown parameters, and there are infinite solutions. In this case, additional constraints should be imposed on the coordinates of special points(geometric center, focus, vertex, ...) for different geometric constraints, thus limiting the mechanism installing positions. Therefore, in the design of planar mechanisms, not only the prescribed poses are realized, but also the problem that the constraint of the mechanism installing position is considered. The motion synthesis problem of five and six poses is also transformed into the motion synthesis problem for mixed-task which includes five poses or six poses. Now we give the coordinates of the special points of each quadratic curve.

Circle: From Eq.(2), the coordinates of the circle center can be expressed as

$$\begin{aligned} \left\{ \begin{array}{l}{x_{o}=-\frac{a_{3}}{2 a_{0}}} \\ {y_{o}=-\frac{a_{4}}{2 a_{0}}}\end{array}\right. \end{aligned}$$
(10)

Ellipse: For ellipse, the fixed pivots are generally located at the two foci or the geometric center. Therefore, the coordinates of the two foci and geometric center of an ellipse are

$$\begin{aligned} \left\{ \begin{array}{l}{x_{F}=\frac{a_{2} a_{4}-2 a_{1} a_{3} \pm \sqrt{2 T\left( a_{1}-a_{0}+\sqrt{\left( a_{1}-a_{0}\right) ^{2}+a_{2}^{2}}\right) -a_{2}^{2}}}{4 a_{0} a_{1}-a_{2}^{2}}} \\ {y_{F}=\frac{a_{2} a_{3}-2 a_{0} a_{4} \mp \frac{\left| a_{2}\right| }{a_{2}} \sqrt{2T\left( a_{0}-a_{1}+\sqrt{\left( a_{1}-a_{0}\right) ^{2}+a_{2}^{2}}\right) - a_{2}^{2}}}{4 a_{0} a_{1}-a_{2}^{2}}} \end{array}\right. \end{aligned}$$
(11)
$$\begin{aligned} \left\{ \begin{array}{l}{x_{o}=\frac{a_{2} a_{4}-2 a_{1} a_{3}}{4 a_{0} a_{1}-a_{2}^{2}}} \\ {y_{o}=\frac{a_{2} a_{3}-2 a_{0} a_{4}}{4 a_{0} a_{1}-a_{2}^{2}}}\end{array}\right. \end{aligned}$$
(12)

where \(T=a_{0}a_{4}^{2}+a_{1}a_{3}^{2}-a_{2}a_{3}a_{4}+a_{5}(a_{2}^{2}-4a_{0}a_{1})\).

Hyperbola: For hyperbola, the fixed pivots also install on the two foci or geometric center. So coordinates of the foci and geometric center of a hyperbola are

$$\begin{aligned} \left\{ \begin{array}{l}{x_{F}=\frac{a_{2} a_{4}-2 a_{1} a_{3} \pm \sqrt{2 T\left( a_{1}-a_{0}+\sqrt{\left( a_{1}-a_{0}\right) ^{2}+a_{2}^{2}}\right) }}{4 a_{0} a_{1}-a_{2}^{2}}} \\ {y_{F}=\frac{a_{2} a_{3}-2 a_{0} a_{4} \mp \frac{\left| a_{2}\right| }{a_{2}} \sqrt{2 T\left( a_{0}-a_{1}+\sqrt{\left( a_{1}-a_{0}\right) ^{2}+a_{2}^{2}}\right) }}{4 a_{0} a_{1}-a_{2}^{2}}} \end{array}\right. \end{aligned}$$
(13)
$$\begin{aligned} \left\{ \begin{array}{l}{x_{o}=\frac{a_{2} a_{4}-2 a_{1} a_{3}}{4 a_{0} a_{1}-a_{2}^{2}}} \\ {y_{o}=\frac{a_{2} a_{3}-2 a_{0} a_{4}}{4 a_{0} a_{1}-a_{2}^{2}}}\end{array}\right. \end{aligned}$$
(14)

Parabola: For generating a parabola trajectory, the fixed pivots usually are located at the focus or vertex. Hereby, the coordinates of the focus and vertex of a parabola are

$$\begin{aligned} \left\{ \begin{array}{l}{x_{F}=\frac{\sqrt{a_{1}}\left[ a_{3}^{2}+a_{4}^{2}-4 a_{3}\left( a_{0}+a_{1}\right) \right] }{4\left( a_{3} \sqrt{a_{1}}-\frac{\left| a_{2}\right| }{a_{2}} a_{4} \sqrt{a_{0}}\right) \left( a_{0}+a_{1}\right) }-\frac{a_{3}}{2\left( a_{0}+a_{1}\right) }} \\ {y_{F}=\frac{\sqrt{a_{0}}\left[ a_{3}^{2}+a_{4}^{2}-4 a_{5}\left( a_{0}+a_{1}\right) \right] }{4\left( a_{4} \sqrt{a_{0}}-\frac{\left| a_{2}\right| }{a_{2}} a_{3} \sqrt{a_{1}}\right) \left( a_{0}+a_{1}\right) }-\frac{a_{4}}{2\left( a_{0}+a_{1}\right) }} \end{array}\right. \end{aligned}$$
(15)
$$\begin{aligned} \left\{ \begin{array}{l}{x_{v}=\frac{-2 P Q \sqrt{a_{0}}+\frac{\left| a_{2}\right| }{a_{2}}\left( P^{2}-4 a_{5}\right) \sqrt{a_{1}}}{4 Q\left( a_{0}+a_{1}\right) }} \\ {y_{v}=\frac{-2 \frac{\left| a_{2}\right| }{a_{2}} P Q \sqrt{a_{1}}-\left( P^{2}-4 a_{5}\right) \sqrt{a_{0}}}{4 Q\left( a_{0}+a_{1}\right) }}\end{array}\right. \end{aligned}$$
(16)

where \(P=\frac{a_{3} \sqrt{a_{0}}+\frac{\left| a_{2}\right| }{a_{2}} a_{4} \sqrt{a_{1}}}{a_{0}+a_{1}}\), \(Q=\frac{\frac{\left| a_{2}\right| }{a_{2}} a_{3} \sqrt{a_{1}}-a_{4} \sqrt{a_{0}}}{a_{0}+a_{1}}\).

Constraints of installing position. When these special points are on a straight line, their coordinates satisfy the linear equation

$$\begin{aligned} L_{1} x+L_{2} y+L_{3}=0 \end{aligned}$$
(17)

By substituting the coordinates of the above special points, i.e., setting \(x=x_{o},x_{F},x_{v}\) and \(y=y_{o},y_{F},y_{v}\) respectively, the constraint equation for mechanism installing position can be acquired, that is \(f(a_{0},\ldots ,a_{4})=0\).

5 Examples

5.1 Six-Pose Synthesis

In this section, we give six prescribed poses and apply the above design method for mechanism synthesis. Table 1 lists the six prescribed poses.

Table 1. Six prescribed poses

Since there are only six prescribed poses, we choose to constrain the center of the circle and the geometric center of the ellipse to make the fixed pivots of the generating mechanisms always be on the line \(y=-4x+75\). Substituting the coordinates of the geometric center of the ellipse(Eq. (12)) into the linear equation, the constraint equation for the installing position of the ellipse-generating mechanism can be obtained as

$$\begin{aligned} f(a_{0},\ldots ,a_{4})=4a_{2}a_{4}-8a_{1}a_{3}+a_{2}a_{3}-2a_{0}a_{4}-300a_{0}a_{1}+75a_{2}^2=0 \end{aligned}$$
(18)

The coefficient equation system for this six poses example can be obtained by substituting Eq. (18) into Eq. (8). And there are 19 solutions to the coefficient equation system, among which there are two solutions that meet the requirements, as shown in Table 2.

The equations of the two geometric constraints can be obtained as

$$\begin{aligned} \left\{ \begin{array}{l}{0.00087 x^{2}+0.00087 y^{2}-0.0435 x+0.0435 y+1=0} \\ {0.0045 x^{2}+0.0062 y^{2}-0.0031 x y-0.0875 x-0.0410y+1=0} \end{array}\right. \end{aligned}$$
(19)

According to these two geometric constraint equations, a planar mechanism can be designed as shown in Fig. 3, where the dotted lines are the geometric constraint curves. It can be seen that in order to meet the prescribed pose requirement, the planar motion of the mechanism is constrained by both a circle and an ellipse.

Table 2. Two valid solutions for six-pose synthesis
Fig. 3.
figure 3

The synthesized mechanism for six poses

Fig. 4.
figure 4

The synthesized planar mechanism for five poses

5.2 Five-Pose Synthesis

In this section, we will apply the above design method for five-pose synthesis. Table 3 lists the five prescribed poses.

Table 3. Five prescribed poses

Because there are only five prescribed poses, we choose to constrain the center of the circle and the geometric center of the hyperbola to make the fixed pivots of the generating mechanisms always be on the line \(y=3x/2\). Substituting the coordinates of circle center (Eq.  (10)) into the linear equation \(y=3x/2\), the constraint equation for the installing position of the circle-generating mechanism can be obtained as

$$\begin{aligned} f_{1}(a_{0},a_{1},\ldots ,a_{4})=3a_{3}-2a_{4}=0 \end{aligned}$$
(20)

the constraint equation for installing positions of the hyperbola-generating mechanism can be obtained by substituting Eq. (14) into the linear equation as:

$$\begin{aligned} f_{2}(a_{0},\ldots ,a_{4})=2a_{2}a_{3}-4a_{0}a_{4}-3a_{2}a_{4}+6a_{1}a_{3}=0 \end{aligned}$$
(21)

The coefficient equation system for this example can be obtained by substituting Eqs. (20) and (21) into Eq. (9). And there are 15 solutions to the system, among which there are two solutions that meet the requirements, as shown in Table 4.

Table 4. Two valid solutions for five-pose synthesis

The equations of the two geometric constraints can be obtained as

$$\begin{aligned} \left\{ \begin{array}{l}{0.00083 x^{2}+0.00083 y^{2}-0.0333 x-0.0500 y+1=0} \\ {-0.0625 x^{2}+0.1111 y^{2}+1=0} \end{array}\right. \end{aligned}$$
(22)

According to these two geometric constraint equations, a planar mechanism can be designed as shown in Fig. 4. It can be seen that in order to meet the prescribed pose requirement, the planar motion of the mechanism is constrained by both a hyperbola and a circle.

6 Conclusion

In this paper, we mainly focus on the finite position generation of planar mechanism based on quadratic constraints acquisition. With the use of quadratic curves representing type and dimensions of a variety of planar mechanism, we manage to build a unified mathematical framework for realizing a combination of task poses and engineering constraints. Through Homotopy algorithm, the feasible quadratic constraints can be efficiently identified and then matched with their corresponding mechanisms, thus enabling the simultaneous type and dimensional synthesis. Finally, the feasibility of the method is verified by two synthesis examples of six poses and five poses.