cancel
Showing results for 
Search instead for 
Did you mean: 

"Watch" Contents on a Line?

Pioneer
Pioneer

I have a Pick and Place that loads parts into a container on a line object. When the container is full, the container moves onto another line where it is then picked up by a worker. In my simulation, the worker is not fast enough to pick up the full containers as they reach the end of the line. Eventually the full containers build up and due to capacity limits, it comes to a point where the Pick and Place tries to put parts into a full container which basically stops the simulation. To try and avoid this, I tried using the following in the Pick and Place's target control:

 

waituntil RHTrayConveyorA_MP1.cont.Full = false

 

The idea is to have the pick and place wait until there is an empty container available to place the parts in. A new container is introduced when the worker is able to remove a full one. The above does not work as it errors with "Cannot watch 'Cont'".

 

Any ideas how I can work around this? Thanks!

4 REPLIES

Re: "Watch" Contents on a Line?

Creator
Creator

Hi, vmorr.

Could you upload your model here? If not, could you create another simulation with this same behavior in order to share with us?
Maybe you can assign the object inside the "RHTrayConveyorA_MP1" to a variable of object type to then "watch" the "full" propertie.

Regards, Rafael

Re: "Watch" Contents on a Line?

Phenom
Phenom

Hello

 

I would recomend using a sensor to solve this. A sensor could get triggered by the container when it reaches a point along the line, at which point you can then trigger the pick and place robot to do its job knowing the container is at that set posistion.

 

As this should change the pick and place to work from a event that the container triggered then it should solve your issue.

 

JamesM

Re: "Watch" Contents on a Line?

Siemens Legend Siemens Legend
Siemens Legend

To successfully pick&place a MU you need to be sure:

  1. a container is on the right position
  2. the container is not full

Assumed the target is a SingleProc it would be sufficient to state:

waituntil RHTrayConveyorA_MP1.occupied and not RHTrayConveyorA_MP1.cont.Full

 

Assumed the target is a line it will become a little bit more complicated, because it depends on where at the line you want to stop and handle the container. JamesMs approach (enhanced probably by a watchable attribute i.e. named ReadyToBeLoaded) should help you then.


Regards

Always consider using the AttributeExplorer!

Re: "Watch" Contents on a Line?

Pioneer
Pioneer

Hey guys thanks for the input! What I ended up doing was setting up an observer for the tray MU "full" attribute. When the tray is full, a method is executed to update a variable which basically tells the Pick and Place to wait depending on the status. I've attached the activity I'm working on if anyone's curious (see Moulding frame).