Tending two machines

I’d like to tend two machines with one robot
How do I accomplish this easily

Both machines will send a service signal when needed

Then the robot will need to take control of door open Chuck open and close and door close then service finish signals

What’s the simplest approach to achieve this


I would need a lot more information to recommend something. Are these machines close enough together that the robot arm can reach both without having to move? If this is not the case then there are several URplus 3rd party kits for putting our arms on an external 7th axis. I’ve provided a link to the UR+ portal where you can take a look. These kits are typically in the $20k-$30k range though. I would recommend talking to your distributor though too.
UR+ Products | Automate Faster

Both machines can be accessed from a central location
My question is more related to how do I manage signals from two machines via digital .io into the robot

How will the robot know which machine to service first etc

It’s about the management of the connections

I think you have to look at the number of handshaking signals required to effect a clean design and see if the robot has enough IO to do this. If the robot does not have enough DI/DO’s to handle all the handshaking then you might need to add a PLC and make the PLC that arbiter of the machines as they request service from the robot to load/unload open/close doors, etc.

The robot program structure would be a thread that manages all the communication to the machines or PLC (assuming it’s via DIO) and this thread would translate this digital handshaking into ‘‘states’’ that a main program would respond to. So the main program would behave as a state machine using switch-case constructs. An example of the states would be :

  1. ServeMachineA
  2. ServeMachineB
  3. OpenDoorMachineA
  4. OpenDoorMachineB
  5. UnloadPartMachineA

This is the more elegant approach. There are other approaches like just using IF-ELSE logic etc.

Hope that helps.

1 Like