Tips and tricks:
1. For images for the forum: Use your keyboard Print Screen feature to take a snapshot of the screen rather than using a camera phone to grab screenshots. When you do that, the windows clipboard will contain the image and it can be pasted into your favorite bitmap editor where you can edit and save it. My favorite bitmap editor is still Paint.Net after all these years. It's got some of the power of photoshop, but so much easier to learn. Resizing the window BEFORE you capture and sometimes resizing the image in the editor can be helpful to make the posted image easier to view.
Tips and tricks:
1. For images for the forum: Use your keyboard Print Screen feature to take a snapshot of the screen rather than using a camera phone to grab screenshots. When you do that, the windows clipboard will contain the image and it can be pasted into your favorite bitmap editor where you can edit and save it. My favorite bitmap editor is still Paint.Net after all these years. It's got some of the power of photoshop, but so much easier to learn. Resizing the window BEFORE you capture and sometimes resizing the image in the editor can be helpful to make the posted image easier to view.
2. For sharing files on the forum: If you save your RSLogix file and then create a compressed folder (zip file) and copy the RSLogix file into that folder, you can upload it to the forum. Many members will have the most common PLC software so sharing the actual source code this way can be a lot easier for us to view your code than it will be to look at bitmap images.
3. Address comments. Comment each real world input and output with a name that describes the device. For inputs, describe the true state, for example, if it is a "Low Pressure Switch" that is open when the pressure is low, describe it as "Low Pressure Switch Okay" or "Low PSI (N.C.)" or "Not Low Pressure".
I haven't studied the pictures much yet, those just my 1st impressions. Before I could do that, it would help to know the intended purpose of the system. What do you want it to do now? What will you want it to do in the future?
Rung 0000, [XIO STOP] branch is superfluous with Rung 0001.
Rungs 0007-0008, flasher,:
1. Ote on 0008 could be on a new branch around t4:2 on 0007.
2. Better yet, replace both rungs with 1 rung: xic fault xic s:4/12 ote light, 3 instructions, no timers
I would et the flasher just run as a free running flshed that way you can use it other places
on Ring 2 yo have a fault reast to reset when the input tuns off. if the input is lost the faults would be eset. I like to see rests require a positive action to reset
Dos the program work, dos it do what you need if so then you are good to go.
Congrats take what you learned and apply it to your next progam
Rung 0002, the first instruction [XIC FAULT_PRESENT] may be removed without changing any behavior of the program, but it does not hurt anything for it to be there.
Rungs 0000:0001 can be replaced by a single rung like this:
(i.e. the Start/Stop pattern; see here) with no change in functionality, other than for a PLC Run mode switch.
- [BST XIC START XIO FAULT_PRESENT NXB XIC STARTED BND XIC STOP OTE STARTED]
The various booleans/bits are inconsistently named with respect to their values. E.g.
General comment: it is not at all clear what the code is trying to do. Even so, I suspect Rungs 0004:0005 may exhibit unexpected behavior e.g.
- [START I:1/9] will start the process when the value of [START I:1/9] is 1
- [STARTED B3:0/0] indicates the process is in the started state when the value of [STARTED B3:0/0] is 1
- But [STOP I:1/5] will stop the process when the value of [STOP I:1/5] is 0
- [FAULT_RESET I:1/3] will assign 0 to (i.e. "reset") FAULT_PRESENT when the value of [FAULT_RESET I:1/3] is 0
- Press and release [FAULT_RESET II:1/3]
- Press and release [START I:1/9]
- Wait for [FUNCTION I:1/13] to have a 1-to-0 transition
- Press and release [STOP I:1/5]
- Wait 1s
- Press and release [START I:1/9]
- [YELLOW O:2/12] will be 1 for about four seconds; is that as expected and/or desired?