Hello,
So, I am working on improving my PLC knowledge at my new employer.
We have well over 25 Siemens brains, Each with at least one HMI and all interconnected via ethernet.
Most are Simatic 545 with many different combinations of I/O cards
Each PC in the plant has the ability to monitor and whole process, ack alarms and change variables and parameters.
So it is quite the installation, and I my previous experience has been limited to stand alone Micrologix PLC's many years ago.
I am trying to take small portions of the source codes to get a handle on the basics of the programming structure.
For example this is just a portion of the code that controls one of the Wheelbrators...
*** DISCHARGE CONVEYOR ***
Y 149 RELAY DISCHARGE BELT FWD
Y 150 RELAY DISCHARGE BELT REV
1407 STR NOT Y 150 DISCHARGE CONV REV
1408 STR NOT Y 150 DISCHARGE CONV REV
1409 TMR 115 DELAY AFTER RUNNING IN REVERSE
1410 P=4
1411 OUT C 511
1412 STR X 7 PB START DISCHARGE CONV FWD
1413 OR Y 149 HOLDING CONTACT
1414 AND X 2 EMERG STOP
1415 AND X 9 PB NC STOP DISCHARGE BELT
1416 AND NOT C 297 (1) EMERGENCY STOP
1417 AND NOT C 298 (2) INCLINE CONVEYOR NOT RUNNING
1418 AND NOT C 321 (25) I-SW SAYS DISCHARGE BELT NOT RUNNING
1419 AND C 511
1420 OUT Y 149 DISCHARGE CONV FWD
1421 STR NOT Y 149 DISCHARGE CONV FWD
1422 STR NOT Y 149 DISCHARGE CONV FWD
1423 TMR 116 DELAY AFTER RUNNING FORWARD
1424 P=4
1425 OUT C 511
1426 STR X 8 PB STAART DISCHARGE CONV REV
1427 OR Y 150 HOLDING CONTACT
1428 AND X 9 PB NC STOP DISCHARGE CONV
1429 AND NOT C 297 (1) EMERGENCY STOP
1430 AND NOT C 321 (25) I-SW SAYS DISCHARGE BELT NOT RUNNING
1431 AND C 511a
1432 OUT Y 150 DISCHARGE CONV REV
I do have some support locally, but sometimes I retain it better if I put the effort into my own research.
That code had been "compiled" thus the sequential line numbers. What language is that code written in, and are there any good training facilities?
In the example above, there are 4 groups of code, do each of those have a name? "Block" perhaps?
What does STR stand for?
The C 511 output seems to be a dumping location that is used throughtout all of the programs here.
Is that line just required to complete the systax of the commands? But, it is referenced in two of the other blocks, so, what is it?
In the 1st block, is there a reason the Y 150 output is checked twice?
What is the P=4?
Correct me if I am worng, In the 2nd block. It checks for the FW PB or holding contacts, and then checks the
condition of the EStop and Stop PB. Then it checks to see if the other two conveyors are running, then it will
enable the FWD output.
What is the reason for the AND NOT C 297 ESTOP?
Thanks
So, I am working on improving my PLC knowledge at my new employer.
We have well over 25 Siemens brains, Each with at least one HMI and all interconnected via ethernet.
Most are Simatic 545 with many different combinations of I/O cards
Each PC in the plant has the ability to monitor and whole process, ack alarms and change variables and parameters.
So it is quite the installation, and I my previous experience has been limited to stand alone Micrologix PLC's many years ago.
I am trying to take small portions of the source codes to get a handle on the basics of the programming structure.
For example this is just a portion of the code that controls one of the Wheelbrators...
*** DISCHARGE CONVEYOR ***
Y 149 RELAY DISCHARGE BELT FWD
Y 150 RELAY DISCHARGE BELT REV
1407 STR NOT Y 150 DISCHARGE CONV REV
1408 STR NOT Y 150 DISCHARGE CONV REV
1409 TMR 115 DELAY AFTER RUNNING IN REVERSE
1410 P=4
1411 OUT C 511
1412 STR X 7 PB START DISCHARGE CONV FWD
1413 OR Y 149 HOLDING CONTACT
1414 AND X 2 EMERG STOP
1415 AND X 9 PB NC STOP DISCHARGE BELT
1416 AND NOT C 297 (1) EMERGENCY STOP
1417 AND NOT C 298 (2) INCLINE CONVEYOR NOT RUNNING
1418 AND NOT C 321 (25) I-SW SAYS DISCHARGE BELT NOT RUNNING
1419 AND C 511
1420 OUT Y 149 DISCHARGE CONV FWD
1421 STR NOT Y 149 DISCHARGE CONV FWD
1422 STR NOT Y 149 DISCHARGE CONV FWD
1423 TMR 116 DELAY AFTER RUNNING FORWARD
1424 P=4
1425 OUT C 511
1426 STR X 8 PB STAART DISCHARGE CONV REV
1427 OR Y 150 HOLDING CONTACT
1428 AND X 9 PB NC STOP DISCHARGE CONV
1429 AND NOT C 297 (1) EMERGENCY STOP
1430 AND NOT C 321 (25) I-SW SAYS DISCHARGE BELT NOT RUNNING
1431 AND C 511a
1432 OUT Y 150 DISCHARGE CONV REV
I do have some support locally, but sometimes I retain it better if I put the effort into my own research.
That code had been "compiled" thus the sequential line numbers. What language is that code written in, and are there any good training facilities?
In the example above, there are 4 groups of code, do each of those have a name? "Block" perhaps?
What does STR stand for?
The C 511 output seems to be a dumping location that is used throughtout all of the programs here.
Is that line just required to complete the systax of the commands? But, it is referenced in two of the other blocks, so, what is it?
In the 1st block, is there a reason the Y 150 output is checked twice?
What is the P=4?
Correct me if I am worng, In the 2nd block. It checks for the FW PB or holding contacts, and then checks the
condition of the EStop and Stop PB. Then it checks to see if the other two conveyors are running, then it will
enable the FWD output.
What is the reason for the AND NOT C 297 ESTOP?
Thanks