#### Abstract

The direct kinematics problem of parallel mechanisms, that is, determining the pose of the manipulator platform from the linear actuators’ lengths, is, in general, uniquely not solvable. For this reason, instead of measuring the lengths of the linear actuators, we propose measuring their orientations and, in most cases, also the orientation of the manipulator platform. This allows the design of a low-cost sensor system for parallel mechanisms that completely renounces length measurements and provides a unique solution of their direct kinematics.

#### 1. Introduction

A typical six-degrees-of-freedom parallel mechanism consists of a (fixed) base platform and a (movable) manipulator platform. The position and orientation (also known as pose) of the manipulator platform are commanded by fixing the distances between points on the base platform and points on the manipulator platform, where . There may be different ways for realizing such a mechanism. The most common one is to use six linear actuators for connecting the platforms together.

Determining the pose of the manipulator platform from the linear actuators’ lengths (also known as direct kinematics problem) generally leads to a system of algebraic equations that has at most 40 different solutions [1–8]. This number of solutions can be further reduced by introducing additional constraints, for example, combinatorial or planarity constraints [9]. Nonetheless, a closed-form solution cannot be realized by only measuring the lengths of the linear actuators.

Current sensor concepts for solving the direct kinematics problem can be basically classified into two groups [10]. The first group consists of using the minimal number of sensors, in our case, six length sensors, and then including additional numerical procedures to uniquely identify the parallel mechanism’s pose [11–20]. These procedures, however, are generally not real-time capable, require an initial estimate of the solution, and may exhibit convergence problems or even converge to a wrong solution. The requirement of an initial solution estimate is especially then problematic when starting the mechanism at an arbitrary pose.

In contrast, the second approach consists of adding extra sensors for obtaining additional information about the parallel mechanism’s state [21–28]. These can be, for example, angular sensors that are placed on the base or the manipulator platform joints or linear and/or angular sensors that are placed on supplementary passive legs. Here, the number and location of the sensors must be carefully chosen because, otherwise, this may cause specific problems such as workspace limitations due to the passive leg or joint arrangement. Furthermore, using different sensor types leads to a higher complexity and may even negatively affect the performance due to possible time delays and/or conflicting measurement values.

For this reason, in order to provide a unique solution of the direct kinematics problem without using additional numerical procedures or sensors, instead of measuring the lengths of the linear actuators, we propose measuring their orientations and, if necessary, also the orientation of the manipulator platform. The orientations of the linear actuators and the roll-pitch orientation of the manipulator platform can be measured, for example, by acceleration sensors with three axes, and the measurement of the yaw orientation of the manipulator platform can be realized, for example, by using a magnetic sensor [29].

The remainder of this paper is organized as follows. In Section 2, a classification of six-degrees-of-freedom parallel mechanisms based on the number of base and manipulator platform joints as well as combinatorial classes is introduced. In Section 3, we investigate if a closed-form solution for the direct kinematics problem of the mechanism types presented in Section 2 is possible by only measuring the orientations of the linear actuators. In Section 4, for the mechanism types where a closed-form solution of the direct kinematics problem is not possible by only measuring the linear actuators’ orientations, we also include the information about the roll-pitch orientation of the manipulator platform. In Section 5, we discuss the last remaining case where also the information about the manipulator platform’s yaw orientation is included. In order to complete our systematic investigation, in Section 6, we extend our results to three-degrees-of-freedom planar mechanisms. Section 7 discusses some practical considerations regarding the sensor selection and implementation of the proposed algorithms in a real-time control. Finally, in Section 8, our results are summarized and discussed.

Throughout the paper, we use the following notation, referring to Figure 1. The body-fixed frame of the base platform is denoted as and the body-fixed frame of the manipulator platform as . The position vector of the th joint of platform is denoted as and the connection vector between the joints and of platforms and as with . Using inverse kinematics, this vector can be determined fromwith respect to platform . Here, denotes the rotation matrix from frame into frame , and is the vector connecting the origins of platforms and . The roll, pitch, and yaw angles of the manipulator platform shall be denoted as , , and , and the direction, or orientation, of is referred to as , which has unit length.

#### 2. Classification of Six-Degrees-of-Freedom Parallel Mechanisms

Typically, parallel mechanisms are classified by the number of joints on the base and the manipulator platform. This type of classification, however, is not sufficient for catching all descriptive parameters of a parallel mechanism. For this reason, Faugère and Lazard [9] introduced the notion of a combinatorial class, which is represented by a graph where the edges are the linear actuators and the vertices are the joints (see Figure 2). Here, we use both approaches together to classify parallel mechanisms.

##### 2.1. -3 Mechanisms

This group of mechanisms contains base platform joints, with , and three manipulator platform joints. Each manipulator platform joint is connected to one, two, or three linear actuators. We can classify this group into two types. In the first type, which shall be referred to as -3-I mechanisms, all three manipulator platform joints are connected to exactly two linear actuators. According to [9], this type of mechanisms corresponds to seven combinatorial classes:

In the second type, which shall be referred to as -3-II mechanisms, the first manipulator platform joint is connected to three linear actuators, the second manipulator platform joint to two linear actuators, and the third manipulator platform joint to one linear actuator. This type of mechanisms corresponds to ten combinatorial classes [9]:

##### 2.2. -4 Mechanisms

Similar to -3 mechanisms, this group of mechanisms can be also classified into two types. The first type, which shall be referred to as -4-I mechanisms, is characterized by two manipulator platform joints with each of them connected to two linear actuators and two further manipulator platform joints with each of them connected to one linear actuator. According to [9], this type of mechanisms corresponds to sixteen combinatorial classes:

The second type, which shall be referred to as -4-II mechanisms, is characterized by one manipulator platform joint connected to three linear actuators and three further manipulator platform joints with each of them connected to one linear actuator. This type of -4 mechanisms corresponds to nine combinatorial classes [9]:

##### 2.3. -5 Mechanisms

This group of mechanisms is described by twelve combinatorial classes [9]:

##### 2.4. -6 Mechanisms

This group of mechanisms is associated with six combinatorial classes [9]:

#### 3. Closed-Form Solution by Only Measuring the Linear Actuators’ Orientations

In this section, we will investigate if a closed-form solution for the direct kinematics problem of the mechanisms introduced in the previous section is possible by only measuring the orientations of the linear actuators.

##### 3.1. -3 Mechanisms

###### 3.1.1. Type I

Consider an -3-I mechanism where the linear actuators and are connected to the manipulator platform joint , the linear actuators and to the manipulator platform joint , and the linear actuators and to the manipulator platform joint . The positions of these joints, , , and , are defined by the intersection points between the straight lines through the linear actuators with where denote the coordinates of and the measured orientations of the linear actuators. In particular, the intersection point between and defines , the intersection point between and defines , and the intersection point between and defines . These three joint positions, on the other hand, define a plane with the normal vectorfor example, where The orientation angles , , and of the manipulator platform can be then determined from where , , and are the unit vectors of the base platform in , , and direction, is the projection of on the - plane, is the projection of on the - plane, and is the projection of on the - plane withThe manipulator platform’s position , on the other hand, can be obtained, for example, from wherewith We can see that, by only measuring the orientations of the linear actuators, a unique solution for the direct kinematics problem of -3-I mechanisms can be found.

###### 3.1.2. Type II

Now, consider an -3-II mechanism where the linear actuators , , and are connected to the manipulator platform joint , the linear actuators and are connected to the manipulator platform joint , and the linear actuator is connected to the manipulator platform joint . The position of the joint is defined by the intersection point between two of the straight lines , , and through the linear actuators , , and . Hence, only two orientations of these linear actuators are necessary for defining this position. The position of the joint , on the other hand, is defined by the intersection point between the straight lines and through the linear actuators and . Both positions define a straight line around which the manipulator platform can virtually rotate. We can now define a sphere, for example, with the center and the radius . The intersection points between the sphere and the straight line through the linear actuator define the two possible positions of the manipulator platform joint . So, by only measuring the orientations of the linear actuators, it is not possible to find a unique solution for the direct kinematics problem of -3-II mechanisms by only measuring the linear actuators’ orientations.

##### 3.2. -4 Mechanisms

###### 3.2.1. Type I

Consider an -4-I mechanism where the linear actuators and are connected to the manipulator platform joint , the linear actuators and are connected to the manipulator platform joint , the linear actuator is connected to the manipulator platform joint , and the linear actuator is connected to the manipulator platform joint . The position of the manipulator platform joint is defined by the intersection point between the straight lines and through the linear actuators and , and the position of the manipulator platform joint is defined by the intersection point between the straight lines and through the linear actuators and . Both positions define a straight line around which the manipulator platform can virtually rotate. We can now define a sphere, for example, with the center and the radius . The intersection points between the sphere and the straight line through the linear actuator define the two possible positions of the manipulator platform joint . So, it is not possible to find a unique solution for the direct kinematics problem of -4-I mechanisms by only measuring the orientations of the linear actuators.

###### 3.2.2. Type II

Now, consider an -4-II mechanism where the linear actuators , , and are connected to the manipulator platform joint , the linear actuator is connected to the manipulator platform joint , the linear actuator is connected to the manipulator platform joint , and the linear actuator is connected to the manipulator platform joint . The position of the joint is defined by the intersection point between two of the straight lines , , and through the linear actuators , , and . Hence, only two orientations of these linear actuators are necessary for defining this position. We can now define two spheres, for example, the first sphere with the center and the radius and the second sphere with the same center but with the radius . The intersection points between the first sphere and the straight line through the linear actuator define the two possible positions of the manipulator platform joint , and the intersection points between the second sphere and the straight line through the linear actuator define the two possible positions of the manipulator platform joint . So, in total, we obtain four different possible orientations of the manipulator platform, and it is hence not possible to find a unique solution for the direct kinematics problem of -4-II mechanisms by only measuring the linear actuators’ orientations.

##### 3.3. -5 Mechanisms

Consider an -5 mechanism where the linear actuators and are connected to the manipulator platform joint , the linear actuator is connected to the manipulator platform joint , the linear actuator is connected to the manipulator platform joint , the linear actuator is connected to the manipulator platform joint , and the linear actuator is connected to the manipulator platform joint . The position of the manipulator platform joint is defined by the intersection point between the straight lines and through the linear actuators and . We can now define two spheres, for example, the first sphere with the center and the radius and the second sphere with the same center but with the radius . The intersection points between the first sphere and the straight line through the linear actuator define the two possible positions of the manipulator platform joint , and the intersection points between the second sphere and the straight line through the linear actuator define the two possible positions of the manipulator platform joint . So, in total, we obtain four different possible orientations of the manipulator platform, and it is hence not possible to find a unique solution for the direct kinematics problem of -5 mechanisms by only measuring the orientations of the linear actuators.

##### 3.4. -6 Mechanisms

Consider an -6 mechanism where the linear actuators are connected to the manipulator platform joints . We can now choose three arbitrary linear actuators , , and with and and define three straight lines through these linear actuators:Here, , , and denote the coordinates of , , and , and , , and denote the measured orientations of the linear actuators , , and . Next, we can define two spheres, the first sphere with the center and the radius and the second sphere with the same center but with the radius . In this context, the first sphere has to intersect and the second sphere , so that we can write the following two equations:Since we know the angle between and , we can also writeWe now have a system of three nonlinear equations, (17), (18), and (19), in three variables (, , and ), which, in general, is uniquely not solvable. So, it is not possible to find a unique solution for the direct kinematics problem of -6 mechanisms by only measuring the linear actuators’ orientations.

#### 4. Closed-Form Solution by Measuring the Linear Actuators’ Orientations and the Roll-Pitch Orientation of the Manipulator Platform

In Section 3, we have shown that, by only measuring the orientations of the linear actuators, it is only possible to find a unique solution for -3-I mechanisms. In this section, we will investigate if a closed-form solution for the direct kinematics problem is possible by also including the information about the roll-pitch orientation of the manipulator platform.

Consider an - mechanism with and . Each of these mechanisms contains at least two linear actuators that are connected to one manipulator platform joint . We assume that the measured roll-pitch orientation of the manipulator platform is given by the unit normal vector . The position of the manipulator platform joint and the unit normal vector define a plane, and the desired positions and of two other linear actuators and , where , are defined by the intersection points between these two linear actuators and the plane. So, by measuring the orientations of four linear actuators as well as the roll-pitch orientation of the manipulator platform, it is possible to obtain a closed-form solution for the direct kinematics problem of - mechanisms with . For , however, our solution strategy fails since -6 mechanisms do not have a common connection of at least two linear actuators at the manipulator platform. In this case, the information about the manipulator platform’s orientation leads to the following plane equation: We now have a system of two nonlinear equations, (17) and (20), in two variables ( and ), which, in general, is uniquely not solvable. So, by including the information about the roll-pitch orientation of the manipulator platform, it is not possible to find a unique solution for the direct kinematics problem of -6 mechanisms.

#### 5. Closed-Form Solution by Measuring the Linear Actuators’ Orientations and the Roll-Pitch-Yaw Orientation of the Manipulator Platform

We have seen in Section 4 that the information about the orientations of the linear actuators and the roll-pitch orientation of the manipulator platform is not enough to obtain a closed-form solution for the direct kinematics problem of -6 mechanisms. However, we have shown in [29] that, by also including the information about the yaw orientation of the manipulator platform, the direct kinematics problem of -6 mechanisms can be uniquely solved. In the following, we will review our solution concept from [29] in the context of a general - mechanism with .

Consider the orientations and of two arbitrarily chosen linear actuators and , where . These orientations define two pairs of straight lines, and as well as and , with the base vectors and as well as and (see Figure 3). We can now define two distance vectors between these two pairs of straight lines:where the measured roll, pitch, and yaw orientation of the manipulator platform is summarized in the rotation matrix . Using the identity where we can rewrite (21) asNow, in order to find the unknown position , we have to solve the linear least-squares problemwhereThis linear least-squares problem can be reduced to the set of linear equationswith the unique solutionThe measurement of the orientations of the other four linear actuators is not necessary here since the positions of the corresponding manipulator platform joints are defined by the manipulator platform’s geometry. Note that a robust way of computing in this case is by using, for example, the QR decomposition [30].

#### 6. Extension to Planar Mechanisms

In this section, we extend our previous findings for spatial mechanisms to three-degrees-of-freedom planar mechanisms. Note that, here, only the roll orientation of the manipulator platform is measured due to the planarity constraint.

##### 6.1. -2 Mechanisms

This group of mechanisms contains base platform joints, with , and two manipulator platform joints. It can be described by two combinatorial classes:

Now, assume that the linear actuators and are connected to the manipulator platform joint , and the linear actuator is connected to the manipulator platform joint . The position of the manipulator platform joint is defined by the intersection point between the straight lines and through the linear actuators and . We can now define a circle with the center and the radius . The intersection points between the circle and the straight line through the linear actuator define the two possible positions of the manipulator platform joint . So, by only measuring the orientations of the linear actuators, it is not possible to find a unique solution for the direct kinematics problem of -2 mechanisms.

In the next step, we assume that the roll orientation of the manipulator platform is measured in terms of the unit normal vector . Then, the angle between the manipulator and the base platform can be determined as follows: where denotes the unit vector of the base platform in direction. The manipulator platform’s position , on the other hand, can be obtained, for example, from whereThe measurement of the orientation of the third linear actuator is not necessary here, since the position of the corresponding manipulator platform joint is defined by the manipulator platform’s geometry.

##### 6.2. -3 Mechanisms

In contrast to -2 mechanisms, this group of mechanisms contains three manipulator platform joints. It can be also described by two combinatorial classes:

The measured orientations define the straight lines through the linear actuators with where denote the coordinates of . We can now define two circles, for example, the first circle with the center and the radius and the second circle with the same center but with the radius . In this context, the first circle has to intersect and the second circle , so that we can write the following two equations:Since and are linearly dependent, we can also writeWe now have a system of three nonlinear equations, (35) and (36), in three variables (, , and ), which, in general, is uniquely not solvable. So, it is not possible to find a unique solution for the direct kinematics problem of -3 mechanisms by only measuring the orientations of the linear actuators. However, by also including the roll orientation in terms of the rotation matrix (32), we can always apply our general algorithm from Section 5, which always provides a closed-form solution of the direct kinematics problem. Note that, in this case, only the measurement of the orientations of two linear actuators is necessary, since the position of the third manipulator platform joint is defined by the manipulator platform’s geometry.

#### 7. Practical Considerations

Currently, there are many possible sensors available on the market, spreading from very expensive, precalibrated high-precision sensors to uncalibrated low-cost sensors. In [29], we used the InvenSense MPU-9150 inertial measurement units (IMUs) consisting of an acceleration sensor with three axes, a gyroscope, and a magnetic sensor for determining the closed-form solution for the direct kinematics problem of a general - mechanism. We obtained the correct solution for selected static poses, but the results showed relatively high mean errors and standard deviations, especially for the yaw orientation of the manipulator platform. This was primarily caused by the noisy and uncalibrated IMUs. The calibration problem, however, can be solved without any additional external equipment by using the approach from [31]. For example, the acceleration sensor has to be calibrated/corrected in terms of sensor bias, scaling error, and nonorthogonality. In this context, the calibrated measurement data can be obtained by the following transformation: where is the uncalibrated acceleration vector and a constant bias term. The matrix is a diagonal matrix comprising of scaling factors in each axis, and is an upper triangular matrix to correct nonorthogonality.

Another problem related to calibration is sensor placement. In [29], we mounted the IMUs on the gearboxes of the linear actuators and on top of the manipulator platform. In this context, the alignment of the IMUs regarding the base platform’s coordinate system has to be determined very carefully. One possibility is to use very precise measurement equipment, for example, by using optical or angular sensors to obtain the location of the IMUs on the linear actuators. An alternative way is to determine the sensor alignment by comparing the target orientations with the measured orientations for several predefined poses.

In order to achieve a closed-form solution of the direct kinematics problem in hard real-time, the introduced algorithms where the linear actuators’ orientations and, if necessary, the roll-pitch orientation of the manipulator platform are measured are preferable due to the precision of the acceleration sensors. However, the algorithm where also the yaw orientation of the manipulator platform is needed requires the usage of a magnetic sensor, which, in general, is very imprecise. Several information filters, such as Kalman filter or complementary filters, were proposed to obtain the optimal measurement data fusion (see, e.g., [32, 33]). These filters can perform very quickly (between 1.3 and 7 *μ*s [32]), but they do not calculate the correct yaw orientation with the first measurement value. Instead, the calculated yaw orientation only converges towards the correct value within several measurements.

As already mentioned above, we tested our approach for the general - mechanism on several static poses [29]. In the static case, the acceleration sensors measure the constant gravity vector of the earth without any disturbances. Under dynamic conditions, however, in addition to the earth’s gravity field, the acceleration sensors also measure the acceleration of the mechanism itself. Since we can also measure the angular velocities by the available gyroscopes, we are able to compensate these erroneous measurements. In particular, by implementing an information filter for fusing the measurement data of the acceleration sensors, the gyroscopes, and the magnetic sensors of the IMUs, the orientations of the linear actuators can be robustly obtained (see, e.g., [34]).

Figure 4 shows the concept for the pose control of parallel mechanisms associated with the introduced algorithms for solving the direct kinematics problem. Here, a target pose is defined and compared with the actual pose leading to the pose deviation . By using inverse kinematics, we can convert into the required length deviation of the linear actuators and give it to the controller, for example, a PID controller, as input. The controller then generates the control input for the system that, in turn, produces the system output . The measurement vector that includes the raw data of the acceleration sensors, the gyroscopes, and the magnetic sensors is sent to the sensor fusion filter, for example, a Kalman filter. Here, the orientations of the linear actuators and, if necessary, also the orientation of the manipulator platform are calculated. The filter output is then used to calculate the actual pose of the manipulator platform by using the algorithms introduced in Sections 3–6.

In conclusion, the pose of an - parallel mechanism can be determined by only measuring the linear actuators’ orientations and, if necessary, the orientation of the manipulator platform. The accuracy mainly depends on three things: (1) the precision of the used sensors, (2) their calibration and accurate alignment on the linear actuators and the manipulator platform, and (3) whether we have to measure the yaw orientation or not. For a dynamic pose determination, we have to estimate the linear actuators’ orientations by a suitable sensor fusion.

#### 8. Conclusions

We showed that, for -3-I mechanisms, it is possible to find a unique solution for the direct kinematics problem by only measuring the orientations of the linear actuators. By also including the information about the roll-pitch orientation of the manipulator platform, it is also possible to uniquely solve the direct kinematics problem for -3-II, -4, and -5 mechanisms. Finally, we demonstrated that the most general case of -6 mechanisms also requires the information about the yaw orientation of the manipulator platform.

We then extended our approach to planar mechanisms and showed that the direct kinematics problem can be uniquely solved by measuring the linear actuators’ orientations and the roll orientation of the manipulator platform.

The results suggest that, in most cases, it is not even necessary to measure the orientations of all six linear actuators. In particular, for -3-II, -4, and -5 mechanisms, additionally to the roll-pitch orientation of the manipulator platform, only the orientations of four linear actuators are needed. By also measuring the yaw orientation of the manipulator platform, the number of required linear actuators’ orientations can be even reduced to two.

The case where only the linear actuators’ orientations are measured is advantageous because, then, the sensors can be placed close to the base platform, thus reducing the wiring effort. Furthermore, only measuring the roll-pitch orientation of the manipulator platform provides better results compared to an additional measurement of the yaw orientation [29]. This is especially advantageous, for example, for milling machines, where the yaw degree-of-freedom is not used.

Our results enable the design of a low-cost sensor system for parallel mechanisms that provides a unique solution of their direct kinematics problem. This concept is particularly important if no information about the previous states of the parallel mechanism is available, for example, if it is switched on in a certain pose. Furthermore, acceleration or magnetic sensors are significantly smaller than the usual sensors for measuring the linear actuators’ lengths, thus allowing for a reduction of moving equipment as well as extending the workspace.

The real-time performance of the proposed sensor concept and the associated closed-form solutions for the direct kinematics problem of parallel mechanisms can be improved by sensor fusion including the information of additional linear actuators’ orientations or sensors.

#### Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

#### Acknowledgments

This work was supported by the German Research Foundation (DFG) (Grant SCHL 275/15-1). The publication of this work was also supported by the DFG and Hamburg University of Technology (TUHH) in the funding programme “Open Access Publishing.”