RobotStudio event

Jog the Robot via PLC


Is it possible to jog the robot via PLC? We'd also like to move, start and stop the robot without using the FlexPendant. Therefore, we think about implementing a TCP/IP Socket interface to move or jog the robot from a remote PLC.
If yes is the answer, what do I need?


  • Hello
    You can do it with a loop in RAPID. Something like below:

    PERS robtarget pJog;
        TRAP TrapInputX()    !Trap when inputPositiveX goes high
            WHILE inputPositiveX=1 DO
               MoveL offs(pJog,1,0,0),v1000,z50,tool0\WObj:=wobj0;         
               WaitTime 0.1;                      


  • You can use Sockets in the Rapid code. So it is possible to define a connection between the robot and an external device. Furthermore, it is possible to send positions, but the movement and wait instructions have to be defined in the Rapid code.

    The application manual gives information about 'Socket communication in general' and the technical reference manual gives information about the specific socket functions. 
    Available functions are: SocketCreate, SocketConnect, SocketSend, SocketClose, SocketBind, SocketListen, SocketAccept, SocketGetStatus, SocketSend, SocketSendTo, SocketPeek, and SocketReceiveFrom

    If needed I can give an example between Rapid and Python, or Rapid and C#. On the other hand, if you just want to use IO, then you can use a TRAP as stated in the previous comment. In this case, it will be more challenging to send the positions...

  • Hi,
    John_Verheij, it would be nice if you could give an example between Rapid ans C#. Still possible ?