12/12/2014 12:25 AM | |
Joined: 9/2/2008 Last visit: 6/30/2024 Posts: 191 Rating: (43) |
Dear experts, In my plant I’ve 44 manually operated machines. These machines may run all at the same time, but may not be started at the same time. When several machines are switched on one by one, the first machine starts directly. The other machines are waiting (e.g. 5 minutes). After these 5 minutes the second machine starts. All other machines are still waiting. After 5 minutes the third machine starts and so on. So if all 44 machines are switched on, every 5 minutes one machine starts in order “who comes first, goes first”. (see attached situation 1) I want to create some sort of “waiting queue” for the machines. That means that if one machine leaves the queue (by switching the machine off) all machines, which are behind, will move one step forward to fill up the gap. (see attached situation 2) I’m thinking of using an Array [0…43] of bits starting at DB1.DBX0.0. The first machine in the waiting queue is getting address 0.0, the second machine 0.1, the third machine 0.2 etc. My question: How do I program this? Do I need a shift register? If somebody can give me an example (LAD, STL or SCL) it will be very helpful I'm using TIA V13 with a S7-300 system. Thanks in advance, Alex AttachmentSituations.zip (157 Downloads) |
Problems don't exist, only challenges. |
|
Follow us on