Handling Stops & Resets in Sequential Programming

Back to the sequencing topic... I've also graduated to the numerical sequencing method as others have mentioned. The only advantages I can see to bit-based sequencing are that it's easier for B*bba to troubleshoot (maybe) and that you can have parallel threads within one sequence. That is, the sequence can diverge by activating two step bits simultaneously, then later converge when both separate mini-sequences are complete. This has some benefits but in retrospect I've found it more difficult to troubleshoot.

With numerical sequencing I've gotten in the habit of using steps 10-90 as startup steps, or things that need to happen when the machine is powered on or reset. Step 100 is the "ready" state, indicating that startup is complete and the sequence/station is idle. When the sequence is triggered to start, I move 200 into the register and the steps progress from there in increments of 10 (allowing room for expansion), as high as necessary, before returning to the idle [100] state. The nice thing about this setup is that you can quickly look at the integer data file (I usually create one just for sequences) and see the condition of the entire system. If the machine is ready to run, they should all be 100's. A stuck condition can easily be located by looking for values >200.

I can't take credit for these concepts, I believe they've been discussed here before and there are a lot of ideas in this old thread from a different forum: http://control.com/thread/997456615
 
As long as a controller will control I/O, ladder logic will be REQUIRED! (y)

FBEs, SFCs and STLs were created and developed for process control and/or data handling/transfer applications. They substantially increase the programmers' and CPUs' workload efficiency, of course at the detriment of exponentially increasing the burden of debugging/troubleshooting issues. o_O
 
Last edited:
I find Modicon's SFC(Grafcet) implementation way easier to troubleshoot. When something get's stuck you'll know exactly which step it is by just looking at the block that is highlighted.

The blocks and transitions can be programmed with Ladder which makes it even better.

Don't know why AB did something different. Copyright issues maybe....
 

Similar Topics

I am trying to get Codesys to work with a couple of Moxa ioLogik E1200 series DIO devices (E1210 and E1211). I am able to write to the E1211 DOs...
Replies
2
Views
174
The objective: Reach about 10’ horizontally into a 1300F furnace, and pick up a 140lb rectangular container, then pull the container back out of...
Replies
15
Views
1,876
Hello All, I don't so much have a problem more my OCD. I have a project, with over 1000 alarms. I create arrays in the PLC/HMI for my alarm...
Replies
0
Views
566
I hope somebody might be able to help me who has done some IO-Link messaging using an S7-1500 (TIA Portal 17) and the CMx8 IOLink module for the...
Replies
11
Views
1,796
Just a little bored, so I thought I would start a thread in one way of using recipes in batching processes, I'm aware there are probably many ways...
Replies
0
Views
589
Back
Top Bottom