# Significance of Camera Pixel Error in the Calibration Process of a Robotic Vision System
## 2 Experimental Setup and Measurement Uncertainties
### Robot Base to Flange Calibration
\begin{array}{cccc}cos(\theta_{1})&0&sin(\theta_{1})&a_{1}cos( \theta_{1})\\ sin(\theta_{1})&0&-cos(\theta_{1})&a_{1}sin(\theta_{1})\\ 0&1&0&0\\ 0&0&0&1\end{array} \right] \tag{6}\]  
\[T_{1}^{2}=\left[ \begin{array}{cccc}cos(\theta_{2})&-sin(\theta_{2})&0&a_{2} cos(\theta_{2})\\ sin(\theta_{2})&cos(\theta_{2})&0&a_{2}sin(\theta_{2})\\ 0&1&0&0\\ 0&0&0&1\end{array} \right] \tag{7}\]  
\[T_{2}^{3}=\left[ \begin{array}{cccc}cos(\theta_{3}-\pi/2)&0&sin(\theta_{3}- \pi/2)&a_{3}cos(\theta_{3}-\pi/2)\\ sin(\theta_{3}-\pi/2)&0&-cos(\theta_{3}-\pi/2)&a_{3}sin(\theta_{3}-\pi/2)\\ 0&1&0&0\\ 0&0&0&1\end{array} \right] \tag{8}\]  
\[T_{3}^{4}=\left[ \begin{array}{cccc}cos(\theta_{4})&0&-sin(\theta_{4})&0\\ sin(\theta_{4})&0&cos(\theta_{4})&0\\ 0&-1&0&d_{4}\\ 0&0&0&1\end{array} \right] \tag{9}\]  
\[T_{4}^{5}=\left[ \begin{array}{cccc}cos(\theta_{5})&0&sin(\theta_{5})&0\\ sin(\theta_{5})&0&-cos(\theta_{5})&0\\ 0&1&0&0\\ 0&0&0&1\end{array} \right] \tag{10}\]  
\[T_{5}^{6}=\left[ \begin{array}{cccc}cos(\theta_{6})&-sin(\theta_{6})&0&0\\ sin(\theta_{6})&cos(\theta_{6})&0&0\\ 0&0&1&d_{6}\\ 0&0&0&1\end{array} \right] \tag{11}\]  
where \(\theta_{r}\)\(\forall r\in[1,6]\) are the six axis specific angles of the KUKA robot, \(a_{1}=25\), \(a_{2}=455\), \(a_{3}=35\), \(d_{4}=-420\), and \(d_{6}=-80\). The total transformation matrix \(T_{total}\) from base to flange can be estimated by simply multiplying all the transformation matrices, that is,  
\[T_{total}=T_{0}^{1}\times T_{1}^{2}\times T_{2}^{3}\times T_{3}^{4}\times T_{4 }^{5}\times T_{5}^{6}. \tag{12}\]  
The result of this calibration is a transformation matrix, which describes the movement of the robot's flange with respects to its base from position \(i\) to \(j\) in the form of \(4\times 4\) matrix comprising of sub-matrix \(R_{P}\) and vector \(T_{P}\). Note that the above kinematics model does not accurately define the movement of industrial robots because such robots are inherently not accurate compared to CNC machines. Robot paths suffer from inaccuracies introduced from the way multiple robot axes linked together. The manipulator arm is also prone to dynamic uncertainties as a result of its speed of travel, payload, backlashes, impact forces applied to the robot end-effector from the part etc. The identification of a relationship of the measurements and robot joint positions is essentially an inverse displacement problem (IDP). This is the core part of robot calibration and can be solved analytically or numerically. An analytical solution is the direct inverse solution and should be used whenever possible. A numeric solution relies on iterative solutions at a cost of computation time but it generally copes well with complex equations. In this work, we have opted latter technique to estimate the offset values associated with the robot parameters. The offset values (\(\Delta\)) associated with our KUKA robot is defined in Table 2.  
While performing robot base to flange calibration, the overall accuracy of the robot plays an important role. The KUKA robotic arm considered in this experiment has pose repeatability radius of \(\pm 0.03\) mm [18], which can be assumed as one form of kinematic error. One of the reasons for such kinematic error is due to ageing of mechanical components, which creates a difference in the movement reported by the sensor with respect to the actual arm movement. Some non-kinematic errors that may also impact the calibration process are mechanical backlash, temperature effects on mechanical components etc. In order to assure that the KUKA robotic arm considered in this work is free from both kinematic and non-kinematic errors, the inverse kinematic is used to evaluate the joint angles which achieves a desired position and orientation of the flange relative to the base frame.