Is it possible to force a setup-state for all machines in a frame without MUs having to enter them? So far, the only help example I've seen from the help files is by initiating the setup-process when an MU enters a machine, as is stated in this example:
Example: waituntil parallelProc.empty prio 1;
I would like to initiate setup-states for any or all machines at any time regardless of MUs moving through the machines or not. Thank you!
Solved! Go to Solution.
you don't need a MU for setup a machine, you can pass also the class of the MU. So you can setup the machines in the init-method. Not to loose a lot of time you should reduce the setup-time temporary:
Your method is the way I have programmed. However, my problem is that I would like the setup of a machine to depend on the type of entity coming in to another machine in the process.
As an example, the setup time for Machine 6 should depend on the entity coming in to Machine 2. Hence, when Machine 2 receives a new kind of entity, the setup process for Machine 6 should start.
The input to the assembly station Machine 2 is an Entity 1. From Machine 2 and onward a new entity Entity 2 is always created, and is transported between machines until Machine 6. When Machine 2 receives a new type of Entity X as input, I would like Machine 6 to begin a new setup time, despite always receiving an Entity 2 as input.
How would I go about solving this task?
If we take your program as an example, what Entity would be suitable to write as a parameter for
to solve this task?
I hope this is understandable. If you need more information to help, please ask.
if you only want to change the setup-time depend on the type (name), then you can select in the setup-time - Type(list) and define a list with different setup-times for the MU-types.
For this you doesn't need SimTalk.
If you want to start the setup earlier, you need to wait until the last "old" type is processed.
If you setup M2 you can use an observer for setup (true) in M2 to trigger the further setup (e.g. for M6).
You can read the new MU with setUpFor.
Thank you for your help Steffen, but I am still having trouble with my process.
I have attached a model that reproduces the problem I am having. Here, two different entity types (Entity and Entity1) are produced from the source "Variance" while a constant entity type (Entity2) is produced from the source "Constant." The assembly station then makes a new entity (Entity3) from the incoming entities and places it on the conveyor leading to the drain.
The SingleProc has an automatic setup routine based on MU name while also entering its control "Setup" (the Method SetupSingleProc) where the setup for the assembly station is decided as per your code example. The assembly station has no automatic setup checked.
The problem is that the assembly station does not let any new MUs pass after its setup time. Only by manually deleting the MU presently on the assembly station is it possible for the assembly station to continue operating as normal until the next variant, when the problem occurrs again.
I hope you can understand my issue and I apologize if I have been unclear.
Thank you for your help.
Thank you for your response. Only being able to set up for the main MU (predecessor 1) is what I was worried about.
Is there any way to achieve a setup time several times for an assembly station if the main MU never changes between products?