# Influence of Drift on Robot Repeatability and Its Compensation
## 4 Results and Discussion  
Table 3 describes the measured targets with respect to the robot world coordinate system. The last four measured targets represent the vertices of the ISO9283 cube [1]. The measurements were performed under different conditions, such as different TCP speeds (300 mm/s of working speed or 8900 mm/s of maximal speed). Some of the measurements were performed to prove that the methodology is stable and effective even when the system is interrupted during the process. To check whether the system can handle random faults, additional measurements were performed with a delay between the cycles. Figure 8: With and without drift compensation, Target 1, maximal speed. Data recorded during the initial measurement: purple—joint 1 temperature, light blue—joint 2 temperature, yellow—joint 3 temperature, black—joint 4 temperature, orange—joint 5 temperature, dark blue—joint 6 temperature, red dots express the uncompensated TCP Z-axis drift, green dots—TCP Z drift prediction based on MatLab regression learner and finally grey trend represents the TCP Z-axis drift with drift compensation applied. Figure 9 shows the data of the measurement performed under similar conditions, however, the TCP speed was set to the working speed (300 mm/s). It is apparent that lower load causes the temperature to stabilize at lower values, which leads to less deformation of the arm. According to the TCP drift trend in the Figure 9, the repeatability difference between cold and warmed robot is 168 \(\upmu\)m, whereas with the compensation, it is only 17 \(\upmu\)m; thus, the influence of the drift in Z-axis of the robot tool is reduced by applying the developed compensation system. \begin{table}
\begin{tabular}{c c c c} \hline \hline
**Target** & **X** & **Y** & **Z** \\ \hline Target 1 & 500 & 500 & 500 \\ Target 2 & 410 & 0 & 680 \\ Target 3 & 500 & 580 & 500 \\ Target 4 & 700 & 845 & 330 \\ Target 5 & 700 & 785 & 451 \\ Target 6 & 290 & 900 & 450 \\ Target 7 & 175 & 260 & 320 \\ Target 8 & \(-\)240 & 670 & 320 \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Target positions [mm]. Figure 9: With and without drift compensation, Target 1, working speed. Data recorded during the initial measurement: purple—joint 1 temperature, light blue—joint 2 temperature, yellow—joint 3 temperature, black—joint 4 temperature, orange—joint 5 temperature, dark blue—joint 6 temperature, red dots express the uncompensated TCP Z-axis drift, green dots—TCP Z drift prediction based on MatLab regression learner, grey trend represents the TCP Z drift with drift compensation applied. The methodology efficiency was verified on multiple targets, including those defined according to the ISO 9283:1998 standard (Target 5-Target 8, see Table 2). To test the stability of the drift compensation system to external influences, the cycles with enabled compensation were deliberately interrupted by stopping the robot movement (300 s pause after every 900 s of movement). The result of this test is presented in Figures 10 and 11. For Target 5 (reached at working speed), the difference in repeatability is 205 \(\upmu\)m--see TCP Z-axis trend in Figure 10. With the compensation system enabled, the subsequent measurement (Figure 11) was intentionally interrupted several times. As shown in Figure 11, the compensation system counterbalanced the error down to 31 \(\upmu\)m (repeatability error reduction of 84.9%), even though the regression model was trained from the undisturbed dataset. Figure 11 reveals an interesting phenomenon: when the robot's movement is stopped, a temperature rise over a short period of time can be observed. This phenomenon can be partially explained by a difference in the thermal properties of the materials used in the design of the robot. The primary heat sources, the gearboxes, are made of steel with a density of 7850 kg/m\({}^{3}\), but the robot links (lower and upper arm) are made of aluminium alloy with a density of 2750 kg/m\({}^{3}\).