How should i set tool z height offset ?

  • Hello ,
    I am New user , we have KUKA krc2 . we already have setting of tool 1,2&3 ! now i want to change the existing tool with new tool or i want to add new tool as tool number 4.
    i have calibrated the tool No. 4 with xyz 4 point . i have used the conic fix part for calibrating the tool xyz4 points , the fix part i have placed on top of the machining block.
    now ! my question is how should i set the z height offset ? the tool length is 100 mm from adapter !
    Please guide me to solve tool offset ,


    SYED-

    Edited once, last by SYED ().

  • There are two ways you can use the TOOL and BASE in your program.


    1). Inline Form: If you are using inline forms of the motions in your program, you have to define TOOL and BASE while introducing the motion into your program.


    Code
    ;FOLD PTP STANDBY Vel=60 % PDAT4 Tool[7]:Gripper Base[0];%{PE}%R 8.2.24,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:STANDBY, 3:, 5:60, 7:PDAT4
    	$BWDSTART=FALSE
    	PDAT_ACT=PPDAT4
    	FDAT_ACT=FSTANDBY
    	BAS(#PTP_PARAMS,60)
    	PTP XSTANDBY 
    	;ENDFOLD


    In above code, you can see its BASE is zero and TOOL is 7.


    2). You can set TOOL and BASE with an assignment before your motion command if you do not want to use inline form.


    Code
    $BASE = $NULLFRAME
    $TOOL = TOOL_DATA[7]
    
    
    PTP STANDBY


    In both cases, you are always allowed to modify the values of your BASE or TOOL as per your requirement before making an assignment.



    In above code, I offset BASE and TOOL by 50 mm and before doing that I kept the original value intact in BASE_DATA[1] so that you can go back to use original value if you want.


    I hope this will help you to understand.


    Thanks

  • As Panic suggested, you can offset your tool by 50 or 100 mm depending on your requirement. Something like


    TOOL_DATA[16].Z = TOOL_DATA[16].Z + 100;


    This will give you ample space to carry out your tests.


    Good Luck :top:

  • TOOL_DATA[16].Z = TOOL_DATA[16].Z + 100;


    That will only work if the tcp's z-axis is parallel to the flange's z-axis. So, I would rather use $TOOL = TOOL_DATA[16]:{x 0, y 0, z 100, a 0, b 0, c 0}. Also, I would rather raise the base instead of offsetting the tcp for testing paths, which can be done like this $base = $base:{x 0, y 0, z 50, a 0, b 0, c 0}

Advertising from our partners