RobotStudio event

Define "safe area"

Hello,
I am student in some company. I got the job to write whole program for robot cell. Problem is, there are quite alot of people with whole access to robot and I am afraid that someone will break something :) . My job is to pick object from conveyor and place it in the machine. Machine has rotating plate on which are holders for objects. I was searching for feature which will disable rotating machine if robot will not enter specific area above the rotating plate even if the robot is in manual mode, so there is no chance that somebody will turn the table around no matter how hard they try if the robot isn't in that area. Robot controller is s4c and robot is IRB140 5kg.

Comments

  • Hi Denis,

    If your robot has "WorldZone" option you can define a virtual volume on space (cylindrical, box,...) and connect it with a read only output signal. Below you can find a simple example.

    SafeBox is an event routine which is connected to POWER_ON event. When robot move into defined box shape doSignal set to 1 automatically in automatic or manual mode. You can use that signal to make enable rotating the table.

    %%%
    VERSION:1
    LANGUAGE:ENGLISH
    %%%

    MODULE CskCNC(SYSMODULE)
    VAR wzstationary Line1ZoneCtrl;
    VAR shapedata P1_Volume;
    CONST pos P1_Corner1:=[300,4500,700]; ! 1 st diagonal corner of box shape
    CONST pos P1_Corner2:=[2500,2000,1550]; ! 2 nd diagonal corner of box shape
    !
    ! SafeBox routine must be defined as event routine and connect to POWER_ON event.

    PROC SafeBox()
    WZBoxDef\Inside,P1_Volume,P1_Corner1,P1_Corner2;
    WZDOSet\Stat,Line1ZoneCtrl\Inside,P1_Volume,doSignal,1;
    ENDPROC
    ENDMODULE

    Erdem Karaçeper
  • thank you very much. Ill try as soon as I'll have access to robot