If you do not want the robot to stop and wait for the pop-up to be acknowledged, its just a simple notification, you can set the pop-up to occur inside of a thread. This will place the pop-up on the screen but does not block robot execution. We use this when there is a message we want the operator to see but its not critical to the operation of the machine so we do not stop the actual execution.
@abeachy_HG24
That's a good question! Let me loop in some pros: @Nicolas_Lauzier, @Grady_Turner, @matthewd92
From your experiences, how would you do this?
@abeachy_HG24
If you want to use a PLC to send messages to the robot, the best way is probably to either use physical signals (digital inputs on the robot) or use the Modbus TCP protocol (on the UR robots, you have both a client and a server that you can use and some PLCs can use this protocol). The robot program can then monitor these inputs and trig a popup according to which input is set. The drawback is that you need to monitor this at one specific place in the program (once per cycle, typically). More programming is involved to get rid of this constraint.
If you want to give the operator a way to send a message to the PLC, digital output or Modbus output bits can be used in this case also. It is possible to name these outputs and trig them manually in the I/O tab. However, the button will not be displayed at all time on the run screen and some operators may have difficulty finding the right place to trig the output.
When programming, interacting with the operator can be useful and safer especially in a collaborative environment.
Just think about when the jigs are empty with no more parts available or when the operator needs to complete his task before the robot continues.
Universal Robots gives a really simple way to integrate popups to any program.
Here is a video demonstrating how to proceed:
The 3 different popup types simply have different icons in the window. In each case, the popup will make the robot stop and wait for the operator input.
Hope this helps!