# Research of Calibration Method for Industrial Robot Based on Error Model of Position
## 4 Parameter Error Identification and Compensation  
### Redundancy Parameter Analysis  
In Section 2.3, the robot DCP position error model is obtained: \(\varepsilon=M\Delta q\). In the equation, \(\varepsilon\) can be measured by measuring equipment; \(M\) represents the error coefficient matrix, which can be derived by error model; \(\Delta q\) is the parameter error need to be solved. Therefore, in order to get the solution of parameter error, it only needs to take the measured pose error \(\varepsilon\) into the error model and solve \(\Delta q\). However, there may be redundancy between the kinematics parameters of the robot, which may lead to the correlation among the columns of the coefficient matrix \(M\). And it will directly affect the accuracy of \(\Delta q\). Let \(i_{i}^{+1}T\) denote the homogeneous transformation from \(\{i\}\) to \(\{i\)+1\(\}\) of the LCS (link coordinate system) of robot. When only the pose transformation is considered, \(\beta\approx 0\) can be directly brought into Equation (1). The result is as follows:  
\[i_{i}^{+1}T=\left( \begin{array}{cccc}c\theta_{i}&-s\theta_{i}c\alpha_{i}&s \theta_{i}s\alpha_{i}&a_{i}c\theta_{i}\\ s\theta_{i}&c\theta_{i}c\alpha_{i}&-c\theta_{i}s\alpha_{i}&a_{i}s\theta_{i}\\ 0&s\alpha_{i}&c\alpha_{i}&d_{i}\\ 0&0&0&1\end{array} \right). \tag{23}\]  
According to the differential kinematics of the robot, the differential transformation relation between the LCS \(\{i\}\) and \(\{i\)+1\(\}\) can be obtained by combining Equation (23):\[\left( \begin{array}{c}dx_{i+1}\\ dy_{i+1}\\ dz_{i+1}\\ \delta x_{i+1}\\ \delta y_{i+1}\\ \delta z_{i+1}\end{array} \right)=\left( \begin{array}{cccccc}c\theta_{i}&s \theta_{i}&0&-d_{i}s\theta_{i}&d_{i}c\theta_{i}&0\\ -c\alpha_{i}s\theta_{i}&c\alpha_{i}c\theta_{i}&s\alpha_{i}&a_{i}s\alpha_{i}s \theta_{i}-d_{i}c\alpha_{i}c\theta_{i}&-a_{i}s\alpha_{i}c\theta_{i}-d_{i}c \alpha_{i}s\theta_{i}&a_{i}c\alpha_{i}\\ s\alpha_{i}s\theta_{i}&-s\alpha_{i}c\theta_{i}&c\alpha_{i}&a_{i}c\alpha_{i}s \theta_{i}+d_{i}s\alpha_{i}c\theta_{i}&-a_{i}c\alpha_{i}\theta_{i}+d_{i}s\alpha _{i}s\theta_{i}&-a_{i}s\alpha_{i}\\ 0&0&0&c\theta_{i}&s\theta_{i}&0\\ 0&0&0&-c\alpha_{i}s\theta_{i}&c\alpha_{i}c\theta_{i}&s\alpha_{i}\\ 0&0&0&s\alpha_{i}s\theta_{i}&s\alpha_{i}c\theta_{i}&c\alpha_{i}\end{array}  \right)\left( \begin{array}{c}dx_{i}\\ dy_{i}\\ dz_{i}\\ \delta x_{i}\\ \delta y_{i}\\ \delta z_{i}\end{array} \right)=i+1\,\text{D}. \tag{24}\]  
In the equation, \(i+1\,J\) is an error coefficient matrix, representing the transformation matrix from the LCS \(\{i\}\) to \(\{i+1\}\) with differential motion. In \(i+1\,J\), for a general robot with rotating joints, \(\theta_{i}\) are variables and \(\alpha_{i}\) are constants. Therefore, only the third and sixth columns of \(i+1\,J\) remain unchanged, and the rest of the columns change with \(\theta_{i}\). Let \(i+1\,J\) represent the differential transformation matrix of the coordinate system \(\{i\}\) relative to itself:  
\[i+1\,J=\left( \begin{array}{cccccc}1&0&0&0&0&0\\ 0&1&0&0&0&0\\ 0&0&1&0&0&0\\ 0&0&0&1&0&0\\ 0&0&0&0&1&0\\ 0&0&0&0&0&1\end{array} \right). \tag{25}\]  
From the relationship between column vectors in \(i+1\,J\) and \(i+1\,J\), the relation can be found that:  
\[\left\{ \begin{array}{c}i+1\,J_{3}=sa_{i+1}^{i+1}J_{2}+s\alpha_{i+1}^{i+1}J_{ 3}\\ i+1\,J_{6}=a_{i}c\alpha_{i+1}^{i+1}J_{2}-a_{i}s\alpha_{i+1}^{i+1}J_{3}+sa_{i+1 }^{i+1}J_{4}+c\alpha_{i+1}^{i+1}J_{5}\end{array} \right.. \tag{26}\]  
In the Equation (26), \(i+1\,J_{k}\) and \(i+1\,J_{k}\) denote the \(k\)th column of matrix \(i+1\,J_{k}\) and \(i+1\,J_{k}\) respectively. Assuming that the degree of freedom of the robot is \(N\), both sides of above equation are multiplied by \(N\,J\), so that the differential errors of the two coordinate systems are converted to the end of the robot:  
\[\left\{ \begin{array}{c}N\,J_{3}=s\alpha_{i+1}^{N}J_{2}+s\alpha_{i+1}^{i}J_{ 3}\\ i\,J_{6}=a_{i}c\alpha_{i+1}^{i+1}J_{2}-a_{i}s\alpha_{i+1}^{i}J_{3}+s\alpha_{i+1 }^{N}I_{4}+c\alpha_{i+1}^{N}I_{5}\end{array}