RobotStudio event

Set relative joint limits

Hello,

I have a spray tool that has two hoses connected to it that are then mounted to the side of axis 4. I need to be very careful not to allow axis 6 or 4 to turn more than +- 90 out of sink with each other to prevent hose kinking. The two axes together can not turn more than +- 120.

Is it possible to set a joint limit relative to another joint? In my example I do not want to simply set limits for joint 6 at +- 90. I want to set +- 90 relative to the value of joint 4.

Thanks for any help.

-Jeff

Comments

  • In the motion parameters you can set a max for the rotation of each individual axis.

    on your teachpendant go to:
    ABB > configuration > topics - motion > arm > upper/lower joint bound.
    (not the independant)

    This value is in radians.

    so for 90 deg. this would be 1.5708/-1.5708

    If you fill this in for axis 4 and axis 6 it should work.


    RobWelding
    The Netherlands
  • The problem is that when axis 4 is at -60, for example, axis 6 can not be at + 60. This would be greater than 90 relative to each other. If axis 4 is at +30 than axis 6 can be at +60 without any trouble. So the limits aren't absolute, they are relative to the value of the related axis.
  • The rotation of axis 6 is in fact always relative to axis 4.

    But the way I understand it now you would either need the option 'EPS' or 'Safemove'
    Because you want to be able to variate the limits.

    The other thing you could do is have axis 4 maxed at +- 90 deg and axis 6 at +-30 deg.




    RobWelding
    The Netherlands
  • If you let me know which robot you are using I can probably compile a custom mechanism that has a dependency between axis 4 and 6. The limitation will only be present in the RobotStudio mechanism itself (and not the controller).
    Henrik Berlin
    ABB


  • We are using an IRB2600-20-165. I appreciate the offer very much. If you can wait until tomorrow I can provide exact numbers for the limits. What I have posted so far has just been approximate.
     
    Thanks very much for the support.


  • Hello,
    You can protect youre robot with a Worldzone in  combination with a systempinput Stop.

    It a simple EPS option that you can make. When a axis combination is forbidden the robot stops his program. You still can jog the robot. But you can protect it for unwanted program positions.


    See the documentation for more information.

    WZHomeJointDefInside,Rob_Stn_shape,jRobSafe,jRobDelta;
    WZDOSetStat,wzRob_StnInside,Rob_Stn_shape,soSafePos_Rob,1;
     
    #
    SYSSIG_IN:
          -Signal "siStn_Turn_Block" -Action "Stop"
    #
    EIO_CROSS:
          -Lact "doACT_MU1 & *soSafePos_Stn & *soSafePos_Lenze"      -Lres "siStn_Turn_Block"
     
     
     




  • I have compiled a custom rslib with a dependency between axis 4 and 6. They may not deviate more that 90 degrees from each other. There is also an upper limit of 120 degrees for both the axes.

    webwiz/772/IRB2600_12_165__01_DEP46_rslib_v2.zip

    Here are the source files (.sat and .rsxml).The .rsxml script defines the mechanism. To compile it yourself, select "Import Library" and point out the .rsxml file.

    What I have done (compared to the original version of the .rsxml file) is to add a mutual dependency between axes 4 and 6. This is defined by the points-attribute, see below. The points define a polygon in the J4/J6 plane that specifies the allowed joint values.

    image

    To use the custom rslib, just open "Edit System" and exchange the original rslib.








    Henrik Berlin2013-03-11 20:17:25
    Henrik Berlin
    ABB
  • Thank you very much for this Henrik. I'll give it a try today.