Showing results for 
Search instead for 
Did you mean: 

Plant Programming



I'm having lots of problems in programming my plant as a PLC does.

Imagine this plant: a source of empty pallets linked to a buffer line linked to a big network (of lines and SingleProcs) linked to a drain.

I'd like to send one empty pallets out of the buffer line only when one SingleProc finishes its work (just to load the finished entity) but it must flow through an exact path of lines and it must be just ONE.

Is there a quick method to program this behaviour without programming the majority of the network nodes? (For example creating a list of all the lines that the empty pallet must pass through if SingleProc 1 needs one, if # 2 needs,.....and assigning the empty pallet its target SingleProc when the command "SingleProc 1 needs a pallet" starts)


Thank you


Re: Plant Programming

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

if you could model your pallets as tansporter, then you could use the automatic routing function of Plant Simulation. You only need to connect the track-segments with connectors (should also work with lines), the pallet then finds its destination by itself.

You can program this in a "PLC style". you can write a pogram, that is called cyclically by a generator. In this program you can check your sensors and start the action.

Some things you need to take into account. How to detect the completion of a operation:

- look in the example in the observer of the SingleProcs, I have defined a user defined attribute completed, you can wait on the change from resWorking=true to resWorking=false, if the machine is occupied, the MU "knows" if the processing is finished (attribute finished) --> if the machine stops working and the MU is finished --> the process is finished


To avoid multiple pallets on the way, you can use a flag (in my example boxOnTour). Set it to true, if you release a Pallet and to false, if you destroy it in the drain.


In the cental control (PLC) you wait for the condition to move the pallet (machine completed + no pallet on the way) --> set a destination for the pallet, move the pallet and reset the attributes


The loading of the box you can make with a sensorControl, set a sensor near to the machine, activate "only if destination" and set the machine as destination. Then you need only one sensorControl for unloading all machines (see track.sensorControl).

Steffen Bangsow
freelance simulation specialist  

Re: Plant Programming


Hi Steffen_B!

Thanks for your help.

With the concepts of "flags" and .Destination I solved my problem.

Thank you