01-25-2023, 10:37 AM
When I execute the machining project in RoboDK the robot moves accurately along the curve:
But on the real robot it looks like this, it is off by around 1.5 mm (I added an offset of 4mm to the tool peak in Z, to not scratch on the surface of the part):
I understand that the error is probably caused by the robot tolerances. I measured the TCP and reference frame in another tool orientation. My question is how to best deal with it? Have I done something wrong or would you simply add a offset frame? But then it would mean that I always have to adjust my programs after creating them with RoboDK when I use a slightly different tool orientation. For example when I decide to move the turn table by 90 degrees instead of 0 degrees it would mean that I have to adjust the position again. Thats something I would like to avoid.
Is there a way around it without calibrating the robot with RoboDK?
My second problem is with pick and place, tough I think I found a good solution to this. I watched Jeremys modules on youtube but I am still unsure how to best connect the simulation with the real robot.
For example inModule 03-07organize boxes. In a real robot application where accuracy matters (withATI tool changersfor example) every box would have a slightly different position on the real robot as compared to the simulation, even with accurately calibrated TCPs and reference frames. How would you approach something like this?
My solution right now is to create a reference frame for every box like Jeremy did. In that frame I have the approach and retract targets. But I also put a "zero" pick target in it. Than I move the real robot to the pick target and adjust the position manually. After I found the position I overwrite the reference frame position of the box in RoboDK with the current position of the robot. As the box 3d model is inside the reference frame, the model also moves to the real position in space. So I kind of use the reference frame as a target frame.
Is there maybe a better way?
I really love Jeremys RoboDK Pro Modules and I learned a lot from them. But I would also like to see a module where the process is shown to deploy the offline created program to a real robot. I don't mean how to transfer a program to the controller or something like that. But some best practices on what to do, when after thetoolandreferenceframe calibration the position of the robot is still off by 1-2 mm of the real target.
I also want to mention: RoboDK and the whole team behind it is awesome! I really appreciate all your work and time you put in creating a great product, documentation, tutorials and answering all the questions.
But on the real robot it looks like this, it is off by around 1.5 mm (I added an offset of 4mm to the tool peak in Z, to not scratch on the surface of the part):
I understand that the error is probably caused by the robot tolerances. I measured the TCP and reference frame in another tool orientation. My question is how to best deal with it? Have I done something wrong or would you simply add a offset frame? But then it would mean that I always have to adjust my programs after creating them with RoboDK when I use a slightly different tool orientation. For example when I decide to move the turn table by 90 degrees instead of 0 degrees it would mean that I have to adjust the position again. Thats something I would like to avoid.
Is there a way around it without calibrating the robot with RoboDK?
My second problem is with pick and place, tough I think I found a good solution to this. I watched Jeremys modules on youtube but I am still unsure how to best connect the simulation with the real robot.
For example inModule 03-07organize boxes. In a real robot application where accuracy matters (withATI tool changersfor example) every box would have a slightly different position on the real robot as compared to the simulation, even with accurately calibrated TCPs and reference frames. How would you approach something like this?
My solution right now is to create a reference frame for every box like Jeremy did. In that frame I have the approach and retract targets. But I also put a "zero" pick target in it. Than I move the real robot to the pick target and adjust the position manually. After I found the position I overwrite the reference frame position of the box in RoboDK with the current position of the robot. As the box 3d model is inside the reference frame, the model also moves to the real position in space. So I kind of use the reference frame as a target frame.
Is there maybe a better way?
I really love Jeremys RoboDK Pro Modules and I learned a lot from them. But I would also like to see a module where the process is shown to deploy the offline created program to a real robot. I don't mean how to transfer a program to the controller or something like that. But some best practices on what to do, when after thetoolandreferenceframe calibration the position of the robot is still off by 1-2 mm of the real target.
I also want to mention: RoboDK and the whole team behind it is awesome! I really appreciate all your work and time you put in creating a great product, documentation, tutorials and answering all the questions.