Activating External Kinematic Base Frame

  • Hi,


    Kuka Setup:
    KRC4
    KSS 8.5.7
    KR60-3 Robot with DKP 400-40 2 axis manipulator


    I have a system with a DKP 400 40 external kinematic system. I have a frame defined for a plate that is fixed to that system, BASE_DATA[18]

    Code
    BASE_DATA[18]={X -2.16075563,Y 0.835438073,Z 35.3650742,A -67.5087814,B -0.0563619025,C 0.0835446}


    Other setup information from config.dat:

    Code
    MACHINE_DEF[2]={NAME[] "DKP-400_1_40A",COOP_KRC_INDEX 1,PARENT[] "WORLD",ROOT {X 1719.48499,Y -4.10037422,Z 5.48115778,A 89.2691574,B 0.254763693,C -0.164639205},MECH_TYPE #EASYS,GEOMETRY[] "ObjectId = -1102265838"}
    MACHINE_FRAME_DAT[18]={MACH_DEF_INDEX 2,PARENT[] "DKP-400_1_40A",GEOMETRY[] "ObjectId = -317881930"}


    I am trying to run a program that does simple linear moves relative to base frame 18. First, the system reads the current position, sends it to a controller, and the controller sends back an offset position, based on some sensor data.


    The problem is, I cannot seem to activate base 18 from a program correctly. Whenever I activate base 18, the current cartesian position jumps as though base18 is offset from the null frame (base 0) instead of from the external kinematic system. My robot position is then entirely incorrect (as displayed on the teach pendant), so the position that is read by the controller is incorrect. The robot then generates a workspace error when trying to move to the first position. If I use the smartpad to activate a different base, and then activate base 18 again, it works correctly.


    So to be clear, I jog the robot to a position that is say X 100, Y 50, Z 25, from the center of my plate on the external positioner. If I manually select base 18 on the smartpad, the position is displayed as expected ( X 100, Y 50, Z 25). If I try to activate base 18 in my program, the position data changes to something totally different, let's say (X 2000, Y 500, Z 998).


    I've tried using both BAS(#BASE, 18) and $ACT_BASE=18


    My initialization code is as follows:


    Does anyone know why this is happening? How do you guys normally initialize a frame that is linked with an external positioner?

Advertising from our partners