Review Reports
- Seemal Asif* and
- Philip Webb
Reviewer 1: Sergio Tadeu Almeida Reviewer 2: Anonymous
Round 1
Reviewer 1 Report
Line 14: Mostly true, but not entirely. Some manufacturers can provide specific solutions for online compensation. For example, ABB has designed a specific online compensation in the form of a *costly additional license called Path Offset intended to perform online compensation for welding torch applications. Also, FANUC has a DPM solution for dynamic compensation. In brief, I suggest rephrasing this statement to include exceptions.
Line 60: Please define "TASK". Remastering must be performed only after disassembly of the robot (not the end-effector) or severe collision. I suggest rephrasing this part to be more plausible.
Line 102: There is a repeated statement about CNC stiffness in line 97. Please rewrite to avoid redundancies.
Line 118: What mean ideal? Please elaborate.
Lines 140-145: Please explain how the PID controller relates to a robot's accuracy (if any) in this cited paper. If this contribution is not clear, consider removing this citation.
Lines 146-147: Please explain how communication problems (packet delay) affect the robot performance (if any) and, most importantly, how it was solved. You may also rethink the contribution of this paper to your research and consider removing this citation.
Line 148: The authors claim, "Most of the literature presented above dealt with industrial robots…"
It should be like the author's claim. However, note that most of the cited papers talk about CNC, which cannot be compared to a robot for many reasons (i.e., shiftiness, DOF kinematic, and control are the reasons). Please, update your literature review in such a way that this statement can be confirmed.
Further comments on the literature review:
· Assuming the robot and end-effector are correctly calibrated, lack of stiffness is one of the most significant sources of errors in robotic operations, particularly for tasks involving intensive force, such as machining, which can generate chatter and vibration. This needs to be discussed. While the following papers offer a good start:
[1] H. Xie, W. Li, Z. Yin, Posture Optimization Based on Both Joint Parameter Error and Stiffness for Robotic Milling, in, Springer International Publishing, Cham, 2018, pp. 277-286.
[2] U. Schneider, M. Ansaloni, M. Drust, F. Leali, A. Verl, Experimental Investigation of Sources of Error in Robot Machining, in, Springer Berlin Heidelberg, Berlin, Heidelberg, 2013, pp. 14-26.
[3] Y. Bu, W. Liao, W. Tian, J. Zhang, L. Zhang, Stiffness analysis and optimization in robotic drilling application, Precision Engineering, 49 (2017) 388-400.
[4] Y. Zeng, W. Tian, W. Liao, Positional error similarity analysis for error compensation of industrial robots, Robotics and Computer-Integrated Manufacturing, 42 (2016) 113-120.
[5] K.J. Waldron, G.L. Kinzel, S.K. Agrawal, Kinematics, dynamics, and design of machinery, John Wiley & Sons, 2016.
· Next, considering the above, those methods cited to compensate CNC machines (ISO 230) need to be reviewed because not all can apply to robots (ISO 9283). In case you consider a CNC study to be valid for a robot, please justify (for example, why stiffness is not important)
· Please, every time you mention some research achievement, explain what they have improved: positional (static), dynamic error, or repeatability. I suggest following ISO 9283 terminology.
Line 162: Online laser measurement is expensive and common in robotic applications. Please explain what the novelty of your approach is.
Line 269: Please present the MPC model, show how it works, how it was trained and how far in future it can predict. (i.e., 1us, 1ms, 1 sec. ). Justify its selection and how it is better than other approaches available.
Line 279: Explain it and justify why The Kinematics Error correction has been chosen for Calibration Calculation. How is it better than other methods?
Line 298: The authors have said, "Leica Tracker has been chosen as a device for metrology work as its proven accuracy." Therefore, mention the accuracy and precision for both static and dynamic measurements. Also, how this system (probably expensive) solves the cost problem mentioned during the introduction and conclusion?
Line 332: Repeatability usually refers to reaching a static target point with the TCP several times. Please confirm if this number "±0.06mm" refers to the static or dynamic capabilities of the Comau robot.
Line 334: Please, improve the resolution and size of the legend on the left side of figure 8
Line 367: Please, improve the resolution of figure 10
Line 373: It seems that the 15 cycles refer to the MPS neural training. Please clarify. If yes, please explain how this training can guarantee that if the robot is programmed to do a different path will, the accuracy be the same? Most importantly, if this training is necessary, with several erroneous cycle repetitions, how can we claim that this correction falls into an online correction?
Line 391: Despite the correction achieved, the method needs several cycles and cannot be claimed as online correction since it finishes one cycle, appliers correction, and rerun the next cycle to achieve incremental improvident. Hence, why 15 cycles? If you continue, can the accuracy be further improved? How do you know you had enough cycles? Please justify.
Line 394: No data was presented that justifies the cost-effectiveness conclusion. Also, Leica system is a measurement device which is not simple or cheap. Lastly, you used it, so how to say that it is not necessary?
Line 397: Drilling operation requires positional and orientation accuracy. This study has provided data mainly about the position. To claim drilling capability, more data needs to be presented to confirm orientation improvement and accuracy.
Author Response
Dear Respected Reviewer
Thank you very much for supplying the comments they are immensely useful to improve the manuscript. Thank you very much for taking time to provide detailed and constructive comments. Please see the line-by-line responses below. The manuscript changes have been highted.
Point 1:
Line 14: Mostly true, but not entirely. Some manufacturers can provide specific solutions for online compensation. For example, ABB has designed a specific online compensation in the form of a *costly additional license called Path Offset intended to perform online compensation for welding torch applications. Also, FANUC has a DPM solution for dynamic compensation. In brief, I suggest rephrasing this statement to include exceptions.
Response: Thank you for referring to the ABB and FANUC online correction packages. The Fanuc DPM package is similar to Comau NM45’s Sensor tracking option. It needs control and sensor mechanism to correct the error while robot is moving hence the name Dynamic Path Modification (DPM).(Gharaaty et al., 2018) This is also the additional package which need to be bought if requires the path modification during robot move.
In figure above (Gharaaty et al., 2018) the DPM package is only used to modify the position of the robot while it is moving the pat b the controller for error correction have been written(bespoke) on top of DPM to utilise that package for online error correction. We did nit used FANUC as at that time FANUC was not available in our facility. At the moment we are using FANUC M900 and have successfully applied the results of this work.
The reference has been added to the manuscript next to the Comau Sensor tracking package thank you very much for pointing to that.
The ABB Path Offset or S4C+ controller for ABB robots have an add on function called TrueMove that needs to be purchased separately. On ABB website that function has claimed validity for ABBIRB140 which is light 5kg payload robot it doesn’t say anything about other robots. It doesn’t also comment on the sensor requirement or the accuracy figures for that particular function. (ABB Reconditioned Robots | Affordable ABB Robotics Prices (robot-store.co.uk))
Point 2: Line 60: Please define "TASK". Remastering must be performed only after disassembly of the robot (not the end-effector) or severe collision. I suggest rephrasing this part to be more plausible.
Response: The argument was made as remastering eliminates 97% of positional errors but it should not be used to achieve accuracy before performing each operation. It is not the solution for calibrating the robot. Thank you for pointing this out as it could be confusing the further explanation is added to that paragraph.
Point 3: Line 102: There is a repeated statement about CNC stiffness in line 97. Please rewrite to avoid redundancies.
Response: thank you very much for pointing this out. The repeated line has been removed as it can be the conclusion to the argument.
Point 4: Line 118: What mean ideal? Please elaborate.
Response: They used ideal kinematic chain for forward and backward kinematics. The inverse kinematics can’t be static, and we always do not use the same solution in each case. The error model was also fixed and only suited to that operation, for the change of operation new error model must be developed. This makes solution less flexible.
Point 5: Lines 140-145: Please explain how the PID controller relates to a robot's accuracy (if any) in this cited paper. If this contribution is not clear, consider removing this citation.
Response: The PID controller was used in the first stage of the project to develop the model for static error correction.
Point 6: Lines 146-147: Please explain how communication problems (packet delay) affect the robot performance (if any) and, most importantly, how it was solved. You may also rethink the contribution of this paper to your research and consider removing this citation.
Response: thank you very much for the constructive point. The packet delays/communication issues affect the robot performance by introducing delay in the overall process. If robot is waiting for the error to come back and being static during that period, the static period can cost the factory line not only the performance but also the money. Hence it is important to compensate the delays. The argument has been added into the article as well.
Point 7: Line 148: The authors claim, "Most of the literature presented above dealt with industrial robots…"
It should be like the author's claim. However, note that most of the cited papers talk about CNC, which cannot be compared to a robot for many reasons (i.e., shiftiness, DOF kinematic, and control are the reasons). Please, update your literature review in such a way that this statement can be confirmed.
Response: The literature review has been updated as per suggestion.
Further comments on the literature review:
- Assuming the robot and end-effector are correctly calibrated, lack of stiffness is one of the most significant sources of errors in robotic operations, particularly for tasks involving intensive force, such as machining, which can generate chatter and vibration. This needs to be discussed. While the following papers offer a good start:
[1] H. Xie, W. Li, Z. Yin, Posture Optimization Based on Both Joint Parameter Error and Stiffness for Robotic Milling, in, Springer International Publishing, Cham, 2018, pp. 277-286.
[2] U. Schneider, M. Ansaloni, M. Drust, F. Leali, A. Verl, Experimental Investigation of Sources of Error in Robot Machining, in, Springer Berlin Heidelberg, Berlin, Heidelberg, 2013, pp. 14-26.
[3] Y. Bu, W. Liao, W. Tian, J. Zhang, L. Zhang, Stiffness analysis and optimization in robotic drilling application, Precision Engineering, 49 (2017) 388-400.
[4] Y. Zeng, W. Tian, W. Liao, Positional error similarity analysis for error compensation of industrial robots, Robotics and Computer-Integrated Manufacturing, 42 (2016) 113-120.
[5] K.J. Waldron, G.L. Kinzel, S.K. Agrawal, Kinematics, dynamics, and design of machinery, John Wiley & Sons, 2016.
Response: Stiffness, backlash, noise, temperature and other dynamic parameters are important and considerable when it comes to the source of problem. The article at hand looked into the kinematic error correction for geometrical errors only regardless the source of problem.
- Next, considering the above, those methods cited to compensate CNC machines (ISO 230) need to be reviewed because not all can apply to robots (ISO 9283). In case you consider a CNC study to be valid for a robot, please justify (for example, why stiffness is not important)
Response: the stiffness is important and there is no second opinion for that. The CNC machines’ case studies were mentioned as the Realtime error compensation was majorly carried out for CNC machines. We understand that they are not flexible as compare to robots and article admire that difference as well. The robot brings the flexibility which increase the challenges of it being corrected dynamically in realtime.
- Please, every time you mention some research achievement, explain what they have improved: positional (static), dynamic error, or repeatability. I suggest following ISO 9283 terminology.
Response: the ISO 9283 has been mentioned in the article as it is important artefact to refer when it comes the Robot performance.
Point 8: Line 162: Online laser measurement is expensive and common in robotic applications. Please explain what the novelty of your approach is.
Response: The novelty of the approach detailed in Stage 2 and highlighted just after Figure 6 with the following comments: “It highlights the importance of the proposed methodology as after learning the path and the errors in the path it will not require the metrology device which can be used for any other cell on the factory floor.” The Leica measurement device is capable to rotate its head to the receiver which can be SMR, TMAC or the scanner. If metrology device is not Leica then it can transported to the required cell provided that the path of the robot stays same. If the robot path will change then it needs to be trained again for 15 cycles.
The methodology of the approach discussed in detail in section : Stage 2: Realtime (Dynamic) Error Correction.
Point 9: Line 269: Please present the MPC model, show how it works, how it was trained and how far in future it can predict. (i.e., 1us, 1ms, 1 sec. ). Justify its selection and how it is better than other approaches available.
Response: Thank you very much for mentioning this. The use of MPC over PID is discussed in the Literature review with “it performs very well where speed, time, and optimization are the issues. It has been proven in the case study for analysing and maintaining water level that MPC is better over PID where speed and performance are concerned. (Li, 2010) In the study, it shows PID loss 5.5% more packet delays as compare to MPC and the difference increased over time.” It has also been illustrated in the Networked based control system under the stage 2 that MPC is the multivariable network and we require to have at least 6 inputs 3 for position and 3 for orientation for the error correction. The MPC fits to the concept as it takes multiple inputs and has proven result where speed and performance is concerned. The text has been highlighted.
Point 10: Line 279: Explain it and justify why The Kinematics Error correction has been chosen for Calibration Calculation. How is it better than other methods?
Response: Thankyou very much for brining this to attention as I was lacking to give detail to this argument. There two main calibration models Dynamic and Kinematics. The Dynamic model is used in calibration to solve the errors caused by the dynamics and structure of the robot or its environment. This model attains the relation between acceleration, velocity, inertia and joint forces. This model examines the effect of forces, inertia, torque, gravity, and other non-geometrical effect for example gear-backlash, wear and tear, etc.
The kinematics models are used to solve problems created by the kinematics of the robot. These can be further divided into positional kinematic model and differential kinematic model. The positional kinematics model obtains the relationship between the actuated joint coordinates and the end-effector position. D-H kinematic representation is more commonly used for this type of models. The differential kinematics calibration obtains the relationship between the velocities of joints movement and velocities of end-effector, the Jacobian matrix is the most popular method to be used for this. Main focus of literature here is kinematic model so rest of the document will be emphasizing on kinematic modelling.
The main purpose of the system was to correct robot’s kinematical errors which can occur because of its geometry, weight, noise or temperature. The Mathematical Calibration Model for Kinematic Positional Error Correction has been used.
The text has been added and highlighted.
Point 11: Line 298: The authors have said, "Leica Tracker has been chosen as a device for metrology work as its proven accuracy." Therefore, mention the accuracy and precision for both static and dynamic measurements. Also, how this system (probably expensive) solves the cost problem mentioned during the introduction and conclusion?
Response: The Leica Tracker AT901 accuracy is 5 micron + 5 microns per meter as per Leica AT901 specifications. The specification can be found (Hexagon Metrology, 2015)
The system as mentioned under Figure 6 that once it is trained for specific path the measurement device will no longer be required. In that case Tracker can provide services into a different cell and as it is connected over the network it resolves the issue of it being connected to the same cell.
Point 12: Line 332: Repeatability usually refers to reaching a static target point with the TCP several times. Please confirm if this number "±0.06mm" refers to the static or dynamic capabilities of the Comau robot.
Response: It refers to the static repeatability as mentioned in Comau specification (Comau Robots, 2015).
Point 13: Line 334: Please, improve the resolution and size of the legend on the left side of figure 8
Response: Improved the legend size and resolution.
Point 14: Line 367: Please, improve the resolution of figure 10
Response: this is the best possible resolution for this result previously it was as following:
To
Point 15: Line 373: It seems that the 15 cycles refer to the MPS neural training. Please clarify. If yes, please explain how this training can guarantee that if the robot is programmed to do a different path will, the accuracy be the same? Most importantly, if this training is necessary, with several erroneous cycle repetitions, how can we claim that this correction falls into an online correction?
Response: Thank you very much for this point. We have collected and experimented with various different sets and path and found result is lying with the same range. The second part of the point if the training is necessary then how it is falling under the online/dynamic correction. The correction after training is carried out is dynamic after the training but as system learned the path the actual path will be very near to the planned path so slight corrections can be done. The text has been updated with the results. The correction during the training is dynamic as system is correcting the robot path while robot is moving without need to stop the robot and wait for the compensation.
The experiment has been performed on different data sets that were collected in different robot positions. Each data set has some parameters for example it should have variable positions in +ve and –ve direction of each axis and should have variable reachable rotations RX, RY, RZ.
Figure below illustrates the performance of the system on 8 different robot paths. The 15 cycles of error correction were performed for each robot path to achieve the correction. Graph A in the set of figures below shows the achievement of correction of about 0.0244, graph B shows the achievement of correction of about 0.254 and similarly for other datasets showed in graphs from C to H the achievement of correction is in the range of 0.022 and 0.025 which verifies the claim of the project for the achievement of 0.02mm correction.
|
A |
B |
|
C |
D |
|
E |
F |
|
G |
H |
Figure: Achievement of Correction with Variable Data Sets
Point 16: Line 391: Despite the correction achieved, the method needs several cycles and cannot be claimed as online correction since it finishes one cycle, appliers correction, and rerun the next cycle to achieve incremental improvident. Hence, why 15 cycles? If you continue, can the accuracy be further improved? How do you know you had enough cycles? Please justify.
Response: Thank you for mentioning this point as it was not discussed in the article.
The number of cycles to run the system before reaching the correction threshold 0.02mm is 15. After 15 cycles there is no improvement in the error correction. Each cycle takes 225 minutes to complete and it takes around 6 weeks to finish the experiments and collate the data. The little or no improvement after certain cycles shows that system has the learning capability. The accuracy gets better as long as the path of the robot is repeated. This is achieved through the implementation of Neural Network based MPC. The use of Neural Network based MPC helped the system to learn the error on each point in the path during these cycles. After those 15 cycles the Leica Tracker can be unplugged and can be physically taken away to be used by the other systems where required.
Point 17: Line 397: Drilling operation requires positional and orientation accuracy. This study has provided data mainly about the position. To claim drilling capability, more data needs to be presented to confirm orientation improvement and accuracy.
Response: The system is applying the error correction not only to the X,Y,Z but also to the rotations around X,Y,Z which is mentioned as Rx, Ry and Rz in the article. Following is the additional text that has been added for further evaluation:
The system was tested and verified to perform error correction and compensation in realtime over a network. The flexibility of performing the operation over the network allows the tracker to be used by the other cells if needed.
Table 11 shows the robot positions before and after calibration. The efficiency of the approach can be seen from Table 11 & Table 12. The measurements are in the tracker frame. Figure 9‑1 shows the error result based on the 15 poses in 4th cycle. One of that pose is mentioned in Table 11.
Table 11: Positions (in tracker reference frame) before and after calibration
|
Nominal Pose |
|||||
|
1507.033 |
1929.328 |
3.556133 |
90.29549 |
0.220567 |
-49.5132 |
|
Measured Pose |
|||||
|
1507.429 |
1920.198 |
5.132199 |
90.17301 |
0.067902 |
-50.026 |
|
Corrected Pose |
|||||
|
1507.363 |
1920.271 |
5.13706 |
90.28236 |
0.068421 |
-50.0529 |
Table 12: Error between desired and measured pose on 4th Correction Cycle
|
Error Type |
Positional Error |
Orientation(º) |
|
Before Correction |
9.481775251 |
0.15 |
|
After Correction |
0.06 |
0.034050821 |
Figure 9‑1: Error Correction Results (on 4th Correction Cycle)
There is significant change in error reduction from the start of the system until the system reached its optimum capacity.
References:
Comau Robots (2015) Coamu NM45 Specifications, industrial-robots. Available at: http://industrial-robotics.co.uk/comau/nm_spec.htm (Accessed: 27 April 2020).
Gharaaty, S. et al. (2018) ‘Online pose correction of an industrial robot using an optical coordinate measure machine system’, International Journal of Advanced Robotic Systems, 15(4), pp. 1–16. doi: 10.1177/1729881418787915.
Hexagon Metrology (2015) ‘Leica Absolute Tracker AT901’, p. 9.
Author Response File:
Author Response.docx
Reviewer 2 Report
Please see the attachment
Comments for author File:
Comments.pdf
Author Response
Dear Respected Reviewer
Thank you very much for supplying the comments they are immensely useful to improve the manuscript. Thank you very much for taking time to provide detailed and constructive comments. Please find attached reviewed manuscript. Thanks
Author Response File:
Author Response.docx
Round 2
Reviewer 1 Report
The main suggestion is to make clear a crucial limitation that the method offers calibration of an empty robot only. Not even calibration with the weight of the end-effector (which is correctly cited) nor the eventual forces coming from the end-effector conducting its task (e.g., drilling) can be offered as a solution by the proposed method.