Rabu, 17 Maret 2010

Programming Application - Controlled Start and Stop

Lots of times in bigger assembly type machines you might have a need for a controlled start and stop sequence. This is where you would want to bring your machine to a nice controlled stop right before a guard door is opened before the e-stop circuit kills everything. Obviously there are several benefits to controlled stopped machines. If an automated process had started, you want to allow it to finish before stopping the machine. Especially if this was a required assembly sequence in your automated machine cycle. A controlled stop is also better than a e-stop so that you don't loose track or drop parts in the middle of a cycle.

There are a couple of elements in program design that you need to understand to program a controlled start and stop sequence. I'll call these my master bits. For starters I'll define them. These bits are used everywhere in logic to prevent automated processes from starting again or monitoring when they have finished.

Master Bits defined:

START REQUEST : This bit latches on after an operator pushes the required cycle start button. This bit shuts off when the global RUNNING bit is latched on.

Typical Rung:


RUNNING : This bit latches on after a start request, and generally finally latches when the last motor in a conveyor system has turned on. If you don't have conveyor motors then generally this rung would instantly latch. If you have conveyor motors or maybe some other process that you need to "pre-start" before the rest of the system starts into auto cycle, then insert the last motor contact or pre-start conditional rung between START_REQ and MCR this way the last motor or pre-start conditional has to come on before the RUNNING bit latches. This RUNNING bit is used in every sequence to allow the sequence to start.

Typical Rung without Conveyor Motors:




Typical Rung with Conveyor Motors:

STOP REQUEST : This bit latches on when the cycle stop button is pressed or someone flips the machine out of auto mode into manual mode. Basically this is a request to stop. This rung is also used in every sequence to NOT allow it to start again if a stop request has been initialized. This rung unlatches when the STOPPED bit is clear to stop.

Typical Rung:

STOPPED : This bit latches on when the OK_TO_STOP bit comes on. This is just an indication rung that unlatches the RUNNING bit above.

Typical Rung:




OK TO STOP : This bit monitors all the sequence steps in the machine. Typically I write a bit called IN CYCLE for each sequence in my machines. Once I start a station to do an automated cycle, each station in the machine has an IN CYCLE bit. I use that bit to let me know if that station is still in motion. If all the stations are done, then it's ok to stop the machine. The STOP REQUEST bit will keep the station from starting again.

Typical Rung:

So now that you have a basic understanding of the MASTER BITS, you can use a couple of those bits to control when to let a sequence start or not. In each sequence or automation station on the machine I have some other sub bits I call: OK, INCYCLE, and DONE. When all the conditions are met, then it's ok to start the sequence, once the sequence is started, it's "In Cycle'. The sequence then does what was programmed. When the station returns back to a home position, the last bit to come on is a DONE bit. Once the DONE bit comes on, then the INCYCLE bits turns off and we are ready to start another cycle. You'll notice below that the MASTER bit RUNNING is required to start the process and also the machine cannot be in a STOP REQUEST state.

Typical Sequence Rung:

Tidak ada komentar:

Posting Komentar