how to know robot configuration from robot axes

  • Hi all,


    I need to know how to get de robot configuration (RST) when i have all the robot axis (j1=-160/j2=52/j3=0/j4=-36/j5=-118.5/j6=-56 for example).


    is it possible to make a macro in excel?


    thank you so much

  • sure... you need to have DH parameters for the robot (from robot geometry) and then use series of calculations (one for each joint) using homogeneous transform. Kuka uses Rz(A)*Ry(B)*Rx(C) as transform convention.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2


  • sure... you need to have DH parameters for the robot (from robot geometry) and then use series of calculations (one for each joint) using homogeneous transform. Kuka uses Rz(A)*Ry(B)*Rx(C) as transform convention.


    Do you know where can i find the formula needed to do it? (convert robot joints (j1,j2,j3,j4,j5,j6) to robot configuration)


    I know the robot tcp (x,y,z,rx,ry,rz), locations (x,y,z,rx,ry,rz) and work frame. they are all welding robots


    EDIT: i already have robot joints



    Or you could call the built-in FORWARD function on your robot controller.


    Fubini


    Thanks, but we have to configurate 79 robots with several trayectories each, we need to do it offline, do u know another way to do it offline with the data i have written before?.


    Thanks

  • If you have the axis angles for the robot joints, S&T should be nearly trivial to determine. If all you have is Cartesian coordinates, you will pretty much have to do the full DH kinematic model -- I ended up running into this exact problem about a year ago.


    S&T are both Integer variables, representing a binary pattern where each bit reflects the position of a given axis. The Least Significant Bit (Bit 0) is always A1, and Bit 5 is always A6.


    The T values simply indicate if an axis is above or below 0. The T bit is False if the associated axis is >=0, and True if the associated axis is <0. So for example, if $AXIS_ACT={91,-45,37,1,-1,0}, the T value would be 'b010010', which works out to an integer Base-10 value of 18.


    S disambiguates axis positions when a given Cartesian position can be reached with multiple different axis configurations. S only has 3 bits. Bit 0 indicates if the robot is working in the Basic Area (False) or Overhead Area (True). Bit 1 indicates if A3 is higher or lower than Phi, but Phi is dependent on particular robot models. Bit 2 indicates A5, and is False if ((($AXIS_ACT.A5 >=0) AND ($AXIS_ACT.A5 < 180)) OR ($AXIS_ACT.A5 < -180)), and True if (($AXIS_ACT.A5 >=-180) AND ($AXIS_ACT.A5 < 0)) OR ($AXIS_ACT.A5 >= 180)).


    The granular details are explained in the KUKA manual -- search for "status and turn".


    One thing I notice that doesn't appear to be documented is where one might find the value of Phi in the MADA for a particular robot.


  • Thanks, i´m going to try this.


    Regards

Advertising from our partners