Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Model Error too large after Kuka Calibration

#1
I'm not sure if this is actually a RoboDK problem or a generic Kuka problem, but I haven't been able to get an answer from Kuka and it is related to RoboDK programs. We recently had Kuka come out to do their calibration for one of our robots, and, ever since then, we have been unable to run RoboDK programs when the absolute accuracy is enabled. Whenever we do, the robot will go to BCO, then immediately error once it tries to move to the first point. The error says, "KSS03182 Absolute Accuracy: model error is too great." However, if we disable the absolute accuracy, we can run the program fine. But this doesn't help us because disabling that essentially nullifies our calibration.

We read in other forums that it might be related to the mass variables for our head, so we experimented with that, but nothing has changed. But, yesterday, we started experimenting with creating our own programs by manually teaching the robot points through the pendant using the same end-effector and points similar to the points in our failed programs, and we were able to run. So, there is something different between the RoboDK program and the taught program that causes the RoboDK program to fail with the absolute accuracy enabled.

Has anybody encountered this problem before? Any ideas on what might be causing it?

Thank you!
#2
Are you programming simple movements with Cartesian coordinates? This should not give you these issues.

How are you defining your base frame?
Can you share a sample program file that works on the KUKA controller and another sample file that doesn't work? There is probably something different in the header.
#3
The RoboDK program is a curve follow project with LIN(XYZABC) moves. For the manual programs that worked, we used taught PTP and LIN moves and had success with both.

The base frame is defined in the real world using the 3-point method and a dial gauge end-effector. In the RoboDK program, it is defined using the corresponding frame index (i.e., $BASE = BASE_DATA[#]). The manual moves were defined using the same end-effector and base as the ones used in the RoboDK program.

Unfortunately, due to company restrictions, I'm not sure I can post files in a public forum like this. Is there a way to communicate offline? (Sorry, I know it's a hassle)
#4
You may need to customize setting the base frame when exporting programs from RoboDK for your KUKA robot controller.

This section of the documentation shows how you can customize setting the BASE for your project:
https://robodk.com/doc/en/Post-Processor...amesFilter

Feel free to contact us by email so we can help you further if you need:
https://robodk.com/contact
#5
I think we resolved the issue. The RoboDK programs have this initialization fold:
Code:
;FOLD Initialise and set default speed
BAS (#INITMOV,0)
BAS (#VEL_PTP,100)
BAS (#ACC_PTP,20)
$VEL.CP=0.2
BAS (#TOOL,0)
BAS (#BASE,0)
;ENDFOLD
I changed the zeros in the red lines to match the numbers of the tool and base we use, and the programs worked again. I'm not totally sure what those lines do, nor do I get why the programs worked with those lines in them without the calibration package. Do you know why they would cause issues now? Thank you!
#6
Wonderful, thank you for letting us know.

The BAS function properly sets up your system to use the desired tool and base frame. You can also find more information here:
https://robodk.com/forum/Thread-How-to-c...ernal-axes

You can take a look at your BAS.src program file in your controller to better understand what it does.
  




Users browsing this thread:
1 Guest(s)