RobotStudio event

Possible to define a restricted area?

Hi everyone,

I was wondering if it is possible to define a restricted area for robots in RobotStudio 4.0 or 5.14? I mean, suppose there is another machine or tool at one corner of the working area,  and we don't want the robot to reach that area out of concerns for safety especially if the operator is controlling the robot in the manual mode.

Thanks in advance for your help :)

Massie


Comments

  • I actually did some search and found out about the World Zones functions under special functions implanted in BaseWare options. If are familiar with any other method for defining forbidden areas, please let me know :)


  • Have you checked out SafeMove? That way you can integrate the world zones with the safety chain etc.
    You can configure SafeMove and EPS in RS5.14, and I think there is something new planned for the next release making that easier and better...
  • Hi John,

    Thanks for your reply! Yes, shortly after reading about the world zones, I came across a text saying that SafeMove is more efficient and has more capabilities in defining the working space. My question is that, does this option also work with older robots that have S4 controllers?

    Thanks a lot,

    Massie


  • Unfortunately no. Its an IRC5 only thing.

    On an S4 the usual way to do it was to edit the MOC file of the robot.  This so that it limits the working envelope in the degrees that you want to protect.
    Which is very limited since you basically restrict one joint at a time - but it is really effective from a safety perspective. Normally you'd only limit joint 1 and 2 realisticly. But it could also be done if you have cable package on joint 4 to limit how much the robot could twist the arm.

    So I don't know if that is a workable solution for you.
    Remember that if you have an old RobotStudio for S4C S4Cplus then you can test it virtually as well.

    Now this is what you'd do:
    0) Sign a waver that yo do this at your own risk and that nothing I say can be completely trusted - ie - test test and test again to make sure it works like you intended. Doublecheck with a manual etc Clown
    1) jog the joint to a couple of centimeters before where you want it to stop (safety margin for breaks and heavy loads etc)
    2) read the joint value (in degrees) on the TeachPendant
    2a) repeat for all the joints you want limited
    3) convert the degrees to radians (there are tools online for this)
    4) copy the MOC file from a backup
    5) take a deep breath and remember that if you do something wrong this could be potentially very bad Exclamation
    6) edit the MOC (can be done in notepad) by entering the new limits under each arm/irb_x
    7) preferably test the MOC virtually if possible
    8) take a backup of the controller (to restore to if you have done something wrong)
    9) load the edited MOC.cfg file
    10) restart etc
    11) test test and test again - jog the robot to the limit make sure that it stops. Do it again at 25%-50% etc
    12) program a point outside and test at full speed (well only if its safe to do such a test of course)


    for instance this is from an old S4 moc
    [code]#
    ARM:

          -name "irb_1" -use_arm_type "IRB6400_1" -use_acc_data "irb_1"
          -use_arm_calib "irb_1" -upper_joint_bound 3.14159
          -lower_joint_bound -3.14159 -upper_joint_bound_max 3.14159
          -lower_joint_bound_min -3.14159[/code]
    It can go +180A? to -180A? by changing that to this:
    [code]#
    ARM:

          -name "irb_1" -use_arm_type "IRB6400_1" -use_acc_data "irb_1"
          -use_arm_calib "irb_1" -upper_joint_bound 2.35619
          -lower_joint_bound -1.57079 -upper_joint_bound_max 3.14159
          -lower_joint_bound_min -3.14159[/code]
    now it can 'only' go +135A? to -90A?

  • THANK YOU so much for giving such clear explanations and writing the sample code! I will definitely try to edit the MOC file while being extremely careful Wink
    And I will ask more questions for sure. :)

    Best,
    Massie