RobotStudio event

Disable FlexPendant Start button

I wish to disable the FlexPendant Start button in Auto mode, instead using a pair of Start pushbuttons on an operator panel, which are handled by my background program. One button is used to start from Main, the other is used to resume a paused cycle.

At the moment the FlexPendant Start button bypasses my background logic.

Is there a way to disable the FlexPendant button?

Thanks,

Kevin

Comments

  • You can create an user account there the "Grant" "Execute program" is disabled. See the picture below.

    image
    Best regards,
    Anders Spaak
    ABB Robotics
  • Kevin
    Kevin ✭✭
    Hi Anders,

    This solution is not ideal as the programmer will need to use the FlexPendant Start button when making adjustments in Teach Mode, but must remember not to use the button in Auto mode.
    I find it surprising that the Flexpendant button signals are not routed through cross-connected system outputs and inputs, which would allow the cell designer to apply any necessary logic before permitting a cycle to be started.

    Thanks for your reply,

    Kevin

  • Hi,

    check for OpMode in help

    in auto mode, you can add Waitdi in your programme

    the robot wait until two button is pressed
  • Kevin
    Kevin ✭✭
    Hi Robot_killer,

    This would work if starting from Main, with the OpMode test and WaitDI at the beginning; but if the program has been paused part-way through, the FlexPendant Start button would cause it to resume at the paused program pointer, so these instructions would not be executed.

    Thanks,

    Kevin

  • Hi Kevin,
     

    Try, make a event routine at the start. See  configuration/Controller/Event routine.

    You can play a routine at each time you start program. I use at stop and qstop to reset my output. It is not work properly on VC. Test on real robot.
  • Kevin
    Kevin ✭✭
    Hi Robot_killer,


    Thanks for your suggestion.

    I have been experimenting, but still have not found an ideal solution.

    This is my event routine:
    [CODE]
    PROC rStartHandler()
        !Executed on Start and Restart events
        IF OpMode() = OP_AUTO AND bStart_PB=FALSE THEN
            ErrWrite "FlexPendant Start button error:", "" RL2:="Use operator pushbutton in Auto mode";
            STOP;
        ENDIF
    ENDPROC
    [/CODE]
    The boolean bStartPB is set by my operator panel Start and Resume buttons, so it is false when starting from the FlexPendant.

    If the Program Pointer is at the beginning of Main when the FlexPendant Start button is pressed the routine works OK. The cycle stops with the error message and the PP remains at the beginning of Main.

    If the Program Pointer is not at the beginning of Main (i.e. the program has been paused) when the FlexPendant
    Start button is pressed, operation of the routine is not ideal. The cycle stops with the
    error message but the PP is now on the 'STOP;' line of rStartHandler. A second press on the FlexPendant Start button is necessary to move the PP back to its original position.

    Is there a better way than this to make the FlexPendant start button appear disabled?

    Thanks,

    Kevin

  • Hi Kevin,
     

    If you change stop for waitdi. the error message displayed and the robot wait until the button is press.
  • Kevin
    Kevin ✭✭
    The WaitDI method is not suitable as the cycle is active while waiting for the input, which is very different from the situation if the FP start button could be ignored.

    Thanks to GaryRice who suggested the following effective solution during a service visit:

    My background task holds system input diStop high when in Auto mode, except when a cycle is running OR when starting a cycle from my Start button.

    Pressing the FlexPendant Start button in Auto mode now results in an error message.
    Pressing it in Manual mode results in normal operation.

    Kevin