Calibrating Stationary Tool & Robot Held Work Object
Hello, I am working with an IRB 4600 and need to calibrate a stationary tool and robot held work object.
I have calibrated many robot held tools using the 4-point method. But when I tried this on a new tool with RobHold set false and with tool selection on tool0, work object set to wobj0 and using the world coordinate system, I just get completely wrong numbers.
I am seeking advice on specifically what my tool, workobject, and coordinate system should be set to while doing the 4-point calibration on a new tool which has RobHold set to false?
I have calibrated many robot held tools using the 4-point method. But when I tried this on a new tool with RobHold set false and with tool selection on tool0, work object set to wobj0 and using the world coordinate system, I just get completely wrong numbers.
I am seeking advice on specifically what my tool, workobject, and coordinate system should be set to while doing the 4-point calibration on a new tool which has RobHold set to false?
0
Answers
-
In order to teach the stationary tool, it need not be active. You will need to use a known, good Robhold TRUE TCP. There are also instructions that you could use to make the calibration for you. See SToolRotCalib and SToolTCPCalib in the Instructions, functions and datatypes reference manual. As far as the coordinates of the Robhold TRUE workobject, it really doesn't matter. In the past I have made it the same as the carried TCP. At other times I have seen it 0,0,0 !,0,0,0., trans and rot, respectively.Lee Justice0
-
Hi ...Try following some steps:1 - Define the tool stationary.2 - Define the reference position with tool0.3 - From the reference position define the displacement to create the TCP tool stationary.4 - Apply the .trans and .rot to the TCP tool stationary.
MODULE Module1 PERS tooldata tStat:=[FALSE,[[0,0,0],[1,0,0,0]],[0.001,[0,0,0.001],[1,0,0,0],0,0,0]]; PERS robtarget PHome:=[[0,0,0],[1,0,0,0],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; PROC SetStatTool(INOUT tooldata tStatR\robtarget P_RefP) VAR robtarget P_Ref:=[[0,0,0],[1,0,0,0],[1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; IF Present(P_RefP) P_Ref:=P_RefP; tStatR.tframe.trans:=[P_Ref.trans.x+100,0,0]; tStatR.tframe.rot:=P_Ref.rot; ENDPROC PROC Main() SetStatTool tStat\P_RefP:=PHome; ENDPROC ENDMODULE
Good work.0 -
Hi,
It would appear that the problem was due to the fact that I did not calibrate the robot held tool. I figured originally that since the calibration of a robot held tool does not require the pointed device to be calibrated... why would it need to be when the scenario is reversed. I wonder what the reason is for this?
Anyway, yes it seems that when I calibrate the robot held calibration point first, then use it to calibrate the stationary tool, it works.
Thanks0
Categories
- All Categories
- 5.5K RobotStudio
- 396 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 250 ScreenMaker
- 2.8K Robot Controller
- 316 IRC5
- 61 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 800 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 5 Job listings