Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

8.1 Preamble

Global stiffness and optimal calibration are the two crucial issues for parallel robotic machines for their performance, since global stiffness is directly related to the rigidity and accuracy of a parallel robotic machine, while optimal calibration can effectively improve the performance of the parallel robotic machine. In this chapter, both issues will be introduced and discussed. An example of a novel 3DOF parallel robotic machine will be illustrated in the chapter to show the detail of how to implement the global stiffness evaluation and optimal calibration. The method introduced in this chapter is very generic and can be applied in all types of robotic systems.

8.2 Global Stiffness Evaluation

8.2.1 Case Study: A Novel Three Degrees of Freedom Parallel Manipulator

Unlike the most existing 3-DOF parallel manipulators, the 3DOF parallel manipulator shown in this chapter contains a hybrid and uncoupled motion. The objective of the new design is to improve the system stiffness, eliminate coupled motions at the reference point, and simplify the kinematic model and control.

As shown in Fig. 8.1, the new parallel manipulator includes two innovative features. First, the universal joint of the passive link is located on the moving platform rather than on the base platform, thus eliminating the motions along the x and y translations and the z rotation. Second, the reference point on the moving platform has hybrid and independent motions with x and y rotations and a z translation. The new manipulator has three platforms: the base platform, labeled as B 1 B 2 B 3, the middle platform, designated as M 1 M 2 M 3, and the moving platform, identified as E 1 E 2 E 3. The base platform is fixed on the ground, and the middle platform is used to support the path, B i M i , of the actuated links, D i E i . The moving platform is used to mount a tool and helps to support the passive link, which is joined to the middle platform at the other end. The actuated links D i E i are connected to the moving platform by a Spherical joint at E i , and to a slider joined at the active ball screw by a universal joint at D i . The passive link with the prismatic joint is fixed to the middle platform at one end and connected to the end-effector platform by a universal joint at the other end.

Fig. 8.1
figure 1_8figure 1_8figure 1_8figure 1_8

The proposed 3-DOF parallel manipulator: (a) CAD model; (b) Schematic model

The following parameters define other details of the structure:

  • The angle α i (i = 1,2,3) between x b and O b B i

  • The angle β i (i = 1,2,3) between x e and O e E i

  • The size of the base platform l b

  • The size of the end-effector platform l e

  • The direction of a guide-way γ

  • The length of an active link l i

  • The offset of the spherical joints on the platform z 0

8.2.2 Kinematic Modeling

The 3-DOF manipulator is structured by two coordinate systems, O ex e y e z e and O bx b y b z b, which are attached to the end-effector and base platforms, respectively.

For the origin of the end-effector, O e, the translational motions along x e and y e as well as the rotational motion along z e are eliminated because of the use of the passive leg:

$${x}_{\mathrm{e}} = {y}_{\mathrm{e}} = 0,$$
(8.1)
$${\theta }_{y} = 0.$$
(8.2)

Therefore, the motions of O e can be denoted by θ x , θ y , z e, where θ x and θ y are the rotational motions along x e and y e, and z e is the translational motion along z b. The pose of the end-effector with respect to the coordinate system O bx b y b z b can be represented as

$${ \mathbf{T}}_{\mathrm{e}}^{\mathrm{b}} = \left [\begin{array}{cc} \ {\textbf{R}}_{\mathrm{e}} & {\textbf{P}}_{\mathrm{e}} \\ \ 0 & \mathbf{1} \end{array} \right ] = \left [\begin{array}{cccc} \ c{\theta }_{y} & 0 & s{\theta }_{y} & 0 \\ \ s{\theta }_{x}s{\theta }_{y} & c{\theta }_{x} & - s{\theta }_{x}c{\theta }_{y} & 0 \\ \ - c{\theta }_{x}s{\theta }_{y} & s{\theta }_{x} & c{\theta }_{x}c{\theta }_{y} & {z}_{\mathrm{e}} \\ \ 0 & 0 & 0 & 1\\ \end{array} \right ],$$
(8.3)

where c and s denote the cosine and sine functions, respectively, \({\mathbf{T}}_{\mathrm{e}}^{\mathrm{b}}\) is the pose of the end-effector with respect to the coordinate system O b x b y b z b , R e is the 3 ×3 orientation matrix of the end-effector, and P e is the location of O e.

The inverse kinematics can be formulated by finding the joint motions when the pose of the end-effector \({\mathbf{T}}_{\mathrm{e}}^{\mathrm{b}}\) is known. The joint motions are denoted by u i , and the pose of the end-effector, \({\mathbf{T}}_{\mathrm{e}}^{\mathrm{b}}\), is determined by the motions of O e x , θ y , z e). When solving the inverse kinematic problem, one can assume that the length of the support bar is constant.

The location of the connection between the end-effector platform and an active link is

$${ \mathbf{P}}_{{\mathrm{e}}_{i}}^{\mathrm{b}} ={\textbf{R}}_{\mathrm{e}}{\mathbf{P}}_{{\mathrm{e}}_{i}}^{\mathrm{e}}+{\mathbf{P}}_{\mathrm{ e}}^{\mathrm{b}} = \left [\begin{array}{c} \ {l}_{\mathrm{e}}c{\beta }_{i}c{\theta }_{y} + {z}_{0}s{\theta }_{y} \\ \ {l}_{\mathrm{e}}c{\beta }_{i}s{\theta }_{x}s{\theta }_{y} + {l}_{\mathrm{e}}s{\beta }_{i}c{\theta }_{x} - {z}_{0}s{\theta }_{x}c{\theta }_{y} \\ \ - {l}_{\mathrm{e}}c{\beta }_{i}c{\theta }_{x}s{\theta }_{y} + {l}_{\mathrm{e}}s{\beta }_{i}s{\theta }_{x} + {z}_{\mathrm{e}} + {z}_{0}c{\theta }_{x}c{\theta }_{y}\\ \end{array} \right ],$$
(8.4)

where

$$\begin{array}{rcl}{ \mathbf{P}}_{{\mathrm{e}}_{i}}^{\mathrm{b}} ={ \left [\begin{array}{ccc} {x}_{{\mathrm{ e}}_{i}}^{\mathrm{b}} & {y}_{{\mathrm{ e}}_{i}}^{\mathrm{b}} & {z}_{{\mathrm{ e}}_{i}}^{\mathrm{b}} \end{array} \right ]}^{\mathrm{T}},& & \\ { \mathbf{P}}_{{\mathrm{e}}_{i}}^{\mathrm{e}} ={ \left [\begin{array}{ccc} {l}_{\mathrm{ e}}c{\beta }_{i} & {l}_{\mathrm{e}}s{\beta }_{i} & {z}_{0} \end{array} \right ]}^{\mathrm{T}}.& & \\ \end{array}$$

In (8.4), z 0 is the offset of the spherical joint with respect to O e. Equation (8.4) can be differentiated as follows:

$$\left [\begin{array}{c} \ \delta {x}_{{\mathrm{e}}_{i}}^{\mathrm{b}} \\ \ \delta {y}_{{\mathrm{e}}_{i}}^{\mathrm{b}} \\ \ \delta {z}_{{\mathrm{e}}_{i}}^{b} \end{array} \right ] ={ \left [{\mathbf{J}}_{i}\right ]}_{3\times 3}\left [\begin{array}{c} \ \delta {\theta }_{x} \\ \ \delta {\theta }_{y} \\ \ \delta {z}_{\mathrm{e}} \end{array} \right ],$$
(8.5)

where

$${ \mathbf{J}}_{i} = \left [\begin{array}{ccc} \ 0 & - {l}_{\mathrm{e}}c{\beta }_{i}s{\theta }_{y} + {z}_{0}c{\theta }_{y} & 0 \\ \ ({l}_{\mathrm{e}}c{\beta }_{i}s{\theta }_{y} - {z}_{0}c{\theta }_{y})c{\theta }_{x} - {l}_{\mathrm{e}}s{\beta }_{i}s{\theta }_{x} & ({l}_{\mathrm{e}}c{\beta }_{i}c{\theta }_{y} + {z}_{0}s{\theta }_{y})s{\theta }_{x} & 0 \\ \ ({l}_{\mathrm{e}}c{\beta }_{i}s{\theta }_{y} - {z}_{0}c{\theta }_{y})s{\theta }_{x} + {l}_{\mathrm{e}}s{\beta }_{i}c{\theta }_{x} & - ({l}_{\mathrm{e}}c{\beta }_{i}c{\theta }_{y} + {z}_{0}s{\theta }_{y})c{\theta }_{x} & 1 \end{array} \right ].$$

Since the active links have a fixed length, it can be shown that

$$\mid {\bf{ O}}_{\mathrm{b}}{\bf{ E}}_{i} -{\bf{O}}_{\mathrm{b}}{\bf{B}}_{i} -{\bf{B}}_{i}{\bf{D}}_{i}\mid = \mid {\bf{D}}_{i}{\bf{E}}_{i}\mid (i = 1,2,3)$$
(8.6)

Equation (8.6) yields

$${k}_{i1}^{2} + {k}_{ i2}^{2} + {k}_{ i3}^{2} = {l}_{ i}^{2},$$
(8.7)

where

$$\begin{array}{rcl}{ k}_{i1}& =& {x}_{{\mathrm{e}}_{i}}^{\mathrm{b}} - ({l}_{\mathrm{ b}} - {u}_{i}c\gamma )c{\alpha }_{i}, \\ {k}_{i2}& =& {y}_{{\mathrm{e}}_{i}}^{\mathrm{b}} - ({l}_{\mathrm{ b}} - {u}_{i}c\gamma )s{\alpha }_{i}, \\ {k}_{i3}& =& {z}_{{\mathrm{e}}_{i}}^{\mathrm{b}} - {u}_{ i}s\gamma \end{array}$$

Assuming that there is only linear motion in the actuator of each active link, that the active link is a two-force component, and that only axial deformation occurs, then (8.7) can be differentiated as:

$$\left [\begin{array}{c} \ \delta {\mathbf{u}}_{i} \\ \ \delta {\mathbf{l}}_{i} \end{array} \right ] = \left [\begin{array}{ccc} \ -\frac{{k}_{i1}} {{k}_{i4}} & -\frac{{k}_{i2}} {{k}_{i4}} & -\frac{{k}_{i3}} {{k}_{i4}} \\ \ \frac{{k}_{i1}} {{l}_{i}} & \frac{{k}_{i2}} {{l}_{i}} & \frac{{k}_{i3}} {{l}_{i}} \end{array} \right ]\cdot \left [\begin{array}{c} \ \delta {x}_{{\mathrm{e}}_{i}}^{\mathrm{b}} \\ \ \delta {y}_{{\mathrm{e}}_{i}}^{\mathrm{b}} \\ \ \delta {z}_{{\mathrm{e}}_{i}}^{\mathrm{b}} \end{array} \right ](i = 1,2,3),$$
(8.8)

where

$${k}_{i4} = {k}_{i1}c\gamma c{\alpha }_{i} + {k}_{i2}c\gamma s{\alpha }_{i} - {k}_{i3}s\gamma.$$

Substituting (8.5) into (8.8),

$$\left [\begin{array}{c} \ \delta {u}_{1} \\ \ \delta {u}_{2} \\ \ \delta {u}_{3} \end{array} \right ] ={ \left [{\mathbf{J}}_{t}\right ]}_{3\times 3}\left [\begin{array}{c} \ \delta {\theta }_{x} \\ \ \delta {\theta }_{y} \\ \ \delta {z}_{e} \end{array} \right ] = \left [\begin{array}{c} \ {({J}_{t,1})}_{1\times 3} \\ \ {({J}_{t,2})}_{1\times 3} \\ \ {({J}_{t,3})}_{1\times 3} \end{array} \right ]\left [\begin{array}{c} \ \delta {\theta }_{x} \\ \ \delta {\theta }_{y} \\ \ \delta {z}_{e} \end{array} \right ],$$
(8.9)

where

$${ \mathbf{J}}_{t,i} = \left [\begin{array}{ccc} \ -\frac{{k}_{i1}} {{k}_{i4}} & -\frac{{k}_{i2}} {{k}_{i4}} & -\frac{{k}_{i3}} {{k}_{i4}} \end{array} \right ]\cdot {\mathbf{J}}_{i}.$$

The twist of the platform can be defined as

$$\text{ t} ={ \left [\begin{array}{cc} \ {\omega }^{\mathrm{T}} & {\dot{\mathbf{p}}}^{\mathrm{T}} \end{array} \right ]}^{\mathrm{T}} = \left [\begin{array}{ccc} \ \delta {\theta }_{ x}&\delta {\theta }_{y}&\delta {z}_{\mathrm{e}} \end{array} \right ],$$
(8.10)

i.e.,

$$\begin{array}{rcl} & \dot{\rho } = \text{ Jt} ={ \left [\begin{array}{ccc} \ \delta {l}_{1} & \delta {l}_{2} & \delta {l}_{3} \end{array} \right ]}^{\mathrm{T}} & \\ & \left [\begin{array}{c} \ \delta {l}_{1} \\ \ \delta {l}_{2} \\ \ \delta {l}_{3} \end{array} \right ] ={ \left [{\mathbf{J}}_{a}\right ]}_{3\times 3}\left [\begin{array}{c} \ \delta {\theta }_{x} \\ \ \delta {\theta }_{y} \\ \ \delta {z}_{\mathrm{e}} \end{array} \right ] = \left [\begin{array}{c} \ {({J}_{a,1})}_{1\times 3} \\ \ {({J}_{a,2})}_{1\times 3} \\ \ {({J}_{a,3})}_{1\times 3} \end{array} \right ]\left [\begin{array}{c} \ \delta {\theta }_{x} \\ \ \delta {\theta }_{y} \\ \ \delta {z}_{\mathrm{e}} \end{array} \right ],& \\ \end{array}$$

where

$${ \mathbf{J}}_{a,i} = \left [\begin{array}{ccc} \ \frac{{k}_{i1}} {{l}_{i}} & \frac{{k}_{i2}} {{l}_{i}} & \frac{{k}_{i3}} {{l}_{i}} \end{array} \right ]\cdot {\mathbf{J}}_{i}.$$

8.2.3 The Global Stiffness Evaluation

In this section, a practical case will be examined for the parameters of the manipulator provided in Tables 8.1 and 8.2.

Table 8.1 Kinematic parameters
Table 8.2 Dynamic parameters

Using the kinematic model, the workspace is simulated, as shown in Fig. 8.2. The working ranges of θ x , θ y , and z e are ( − 40 º , 40 º ), ( − 40 º , 40 º ), and (0. 440, 0. 608), respectively.

Fig. 8.2
figure 2_8figure 2_8

The workspace for the proposed parallel manipulator

The calculation methodology of global stiffness is similar with the general cases studied the previous Chaps. 5 and 6. In performing the system stiffness simulation, the stiffness coefficients of the links are calculated as:

$$ \begin{array}{rcl} {k}_{t}& =& 1.5177 \times 1{0}^{10}, \\ {k}_{a}& =& 9.5950 \times 1{0}^{7}, \\ {k}_{\theta x}& =& 899.6698/{({z}_{\mathrm{e}} - {z}_{\mathrm{b}})}^{3}, \\ {k}_{\theta y}& =& 899.6698/{({z}_{\mathrm{e}} - {z}_{\mathrm{b}})}^{3}, \\ {k}_{\theta z}& =& 697.4185/{({z}_{\mathrm{e}} - {z}_{\mathrm{b}})}^{2}\end{array}$$

Note that stiffness coefficients depend on the z-coordinate of the end-effector platform.

Over this cross-section, the results of the evaluation are shown in Table 8.3. The stiffness of the motion and constrained axes are illustrated in Fig. 8.3. Stiffness is an important factor in the design of machine tools, since it affects the precision of the machining. Specifically, global stiffness, illustrated in Fig. 8.4, is directly related to system rigidity.

Table 8.3 Stiffness over the section \({z}_{\mathrm{e}} = (\mathit{min}\_\,{z}_{\mathrm{e}} + \mathit{max}\_\,{z}_{\mathrm{e}})/2\)
Fig. 8.3
figure 3_8figure 3_8figure 3_8figure 3_8figure 3_8figure 3_8

Stiffness on the cross-section \({z}_{\mathrm{e}} = ({min}| {z}_{\mathrm{e}} + {max}|{z}_{\mathrm{e}})/2 \): (a)Stiffness on θ x ; (b)Stiffness on θ y ; (c)Stiffness on z e

Fig. 8.4
figure 4_8figure 4_8

Global stiffness over the cross-section \({z}_{\mathrm{e}} = ({min}|{z}_{\mathrm{e}} + {max}|{z}_{\mathrm{e}})/2 \)

From the preceding analysis of mechanical stiffness, a number of conclusions can be drawn. First, the distribution of stiffness varies between the motion axes and the constrained axes. The stiffness on the motion axes is the greatest at the center position θ x = θ y = 0, and the stiffness on the constrained axes is the same over the cross-section in the case of the z-coordinate. Second, the stiffness on the z translation is the greatest, and it is the weakest on the z rotation. Finally, the distribution of global stiffness is similar to the distribution of stiffness on a motion axis, where the center position possesses the highest value.

The stiffness for the weakest z rotation axis can be enhanced by increasing the radius of the passive link. Since the stiffness is proportional to the stiffness coefficient of the component, the stiffness on the constrained axes is completely determined by the passive link.

8.3 Optimal Calibration Method

Error is one of the crucial factors, which affects the performance indices of parallel robots. According to the sources and characteristics, the error of parallel robots can be classified as in Table 8.4. For the error sources of parallel robots, it can be divided into two main types-vibration error and quasistatic error. Vibration error is the operational inaccuracy induced by the vibration of tools, system axis, or motor. Quasistatic error includes the kinematic parameter error (or manufacturing and assembly error), thermal error, and nonlinear stiffness error.

This differs from many studies reported in the past literature. The thermal error induced in the sliding motion (i.e., actuator leg) is a major error source in the operation of the end-effector [4], and it is distributing over the entire structure of a robotic mechanism. The nonlinear stiffness error may be caused by materials of links and joints and/or external forces and/or moments which induce deformation (large deformation or small deformation). The errors over an entire workspace can be visualized to guide effectively the design process. It can be expressed with the notion of an error map (analogous to the stiffness map, as mentioned earlier). The error map will allow an active participation of designers in determining strategies for error compensation and understanding sources of errors (i.e., manufacturing and assembly, thermal, or nonlinear stiffness) to determine a way to remove/reduce the errors.

Table 8.4 The error classification of parallel robots

In this section, we will discuss how to conduct effective error compensation and calibration, thereby reducing its impact to the operational accuracy. The source of manipulator error is in a wide range. In addition to the main factors, such as the error induced by geometric size and thermal effect, there are many other factors, e.g., load deformation, gear clearance, voltage fluctuations external environment, etc. So it is very difficult to establish a general error model considering all the error sources. On the basis of the method of pose compensation of the end-effector, the multi-error sources included manufacturing and assembly error, and thermal effect error and nonlinear stiffness error can be abstracted as a single error source, namely pseudo error source. The relationship of the pseudo-error source and the end-effector error is shown in Fig. 8.5.

Fig. 8.5
figure 5_8figure 5_8

Relationship of the pseudo-error source and the error of end-effector

Assuming that the ideal pose the end-effector of parallel robot with respect to the fixed reference frame can be defined as

$${ \mathbf{Pose}}_{\mathrm{real}} =\{ x,y,z,\psi ,\theta ,\phi \}, $$
(8.11)

where, the first three elements express position values, and the last three elements express orientation values. The homogeneous matrix of the end-effector with respect to the fixed reference frame can be expressed by \({\mathbf{T}}_{\mathrm{P}}^{\mathrm{O}}\),

$${ \mathbf{T}}_{\mathrm{P}}^{\mathrm{O}} = \left [\begin{array}{cccc} \ c\psi c\theta &c\psi s\theta s\phi - s\psi c\phi &c\psi s\theta c\phi + s\psi s\phi &x \\ \ s\psi c\theta &s\psi s\theta s\phi + c\psi c\phi &s\psi s\theta c\phi - c\psi s\phi &y \\ \ - s\psi & c\theta s\phi & c\theta c\phi &z \\ \ 0 & 0 & 0 & 1 \end{array} \right ]. $$
(8.12)

When the real pose is not equal to the ideal value, it has

$$\begin{array}{rcl}{ \mathbf{Pose}}_{\mathrm{real}}& =& \{x',y',z',\psi ',\theta ',\phi '\} \\ & =& \{x + \Delta x,y + \Delta y,z + \Delta z,\psi + \Delta \psi ,\theta + \Delta \theta ,\phi + \Delta \phi \},\quad \end{array}$$
(8.13)

where, Pose real is the real pose of the end-effector with respect to the fixed reference frame. Thus, when error happens, the homogeneous matrix \({\mathbf{T}}_{\mathrm{P}(\mathrm{Error)}}^{\mathrm{O}}\) can be obtained as

$${ \mathbf{T}}_{\mathrm{P}(\mathrm{Error)}}^{\mathrm{O}} = \left [\begin{array}{cccc} \ c\psi 'c\theta ' &c\psi 's\theta 's\phi ' - s\psi 'c\phi '&c\psi 's\theta 'c\phi ' + s\psi 's\phi '&x' \\ \ s\psi 'c\theta ' &s\psi 's\theta 's\phi ' + c\psi 'c\phi '&s\psi 's\theta 'c\phi ' - c\psi 's\phi '&y' \\ \ - s\psi '& c\theta 's\phi ' & c\theta 'c\phi ' &z' \\ \ 0 & 0 & 0 & 1 \end{array} \right ].$$
(8.14)

The energy function of pose error of the end-effector can be expressed as

$$\mathbf{E} ={ \mathbf{E}}_{xyz} + \eta \cdot {\mathbf{E}}_{\psi \theta \phi },$$
(8.15)

where, position error is defined by Euclidean distance, namely

$${ \mathbf{E}}_{xyz} = {(\Delta {x}^{2} + \Delta {y}^{2} + \Delta {z}^{2})}^{1/2}.$$
(8.16)

Likelihood, orientation error can be expressed by cosine:

$${ \mathbf{E}}_{\psi \theta \phi } = co{s}^{-1}(c\psi \cdot c(\psi + \Delta \psi ) + c\theta \cdot c(\theta + \Delta \theta ) + c\phi \cdot c(\phi + \Delta \phi )).$$
(8.17)

The system stiffness model and the neural network approach can be applied for the calibration process. It is known that calibration is best performed in the least sensitive error region within an entire workspace. Furthermore, calibration should be conducted with the minimum number of joint configurations, as the calibration process is extremely time-consuming. The system stiffness model is based on the kinetostatic model, with which the explicit expression of system stiffness can be generated at any pose. Thus, the critical components that have the largest effect on system stiffness can be identified. Because of the complexity of the error sources, it is difficult to develop the calibration model if all the errors will be considered. In this book, errors including manufacturing and assembly error, thermal error, and nonlinear stiffness error are considered as a single error source (pseudo-error source), which only causes the deviation of joint variables. The neural network can be applied to describe the complex nonlinear relationship between joint variables (control parameters) and deviation of joint variables with respect to the measured pose of the end-effector. With neural network, the pseudo-error in arbitrary joint variable can be obtained and thus the control parameters can be adjusted accordingly (as shown in Fig. 8.6). This approach is generic and feasible for all types of robotic system. The method has been validated by the result reported by Vener et al. [149].

Fig. 8.6
figure 6_8figure 6_8

The error compensation flow

8.4 Conclusions

This chapter demonstrated how to conduct the global stiffness evaluation and to improve the parallel robotic machine through optimal calibration. A unique 3-DOF parallel robotic machine with pure 3-DOF motion is taken as an example. Through this chapter, people can implement the performance evaluation and improvement effectively using the introduced method.