As we have seen with counter and timers, some PLC instructions generate digital values other than simple Boolean (on/off) signals.
Counters have current value (CV) registers and timers have elapsed time (ET) registers, both of which are typically integer number values.
Many other PLC instructions are designed to receive and manipulate non-Boolean values such as these to perform useful control functions.
The IEC 61131-3 standard specifies a variety of data comparison instructions for comparing two non-Boolean values, and generating Boolean outputs.
PLC Data Comparison Instructions
The basic comparative operations of “less than” (<), “greater than” (>), “less than or equal to” (≤), “greater than or equal to” (≥), “equal to” (=), and “not equal to” (6=) may be found as a series of “box” instructions in the IEC standard:
The Q output for each instruction “box” activates whenever the evaluated comparison function is “true” and the enable input (EN) is active.
If the enable input remains active but the comparison function is false, the Q output de-activates. If the enable input de-de-activates, the Q output retains its last state.
A practical application for a comparative function is something called alternating motor control, where the run-times of two redundant electric motors are monitored, with the PLC determining which motor to turn on next based on which motor has run the least:
.In this program, two retentive on-delay timers keep track of each electric motor’s total run time, storing the run time values in two registers in the PLC’s memory:
Motor A runtime and Motor B runtime. These two integer values are input to the “greater than” instruction box for comparison.
If motor A has run longer than motor B, motor B will be the one enabled to start up next time the “start” switch is pressed.
If motor A has run less time or the same amount of time as motor B (the scenario shown by the blue-highlighted status indications), motor A will be the one enabled to start.
The two series-connected virtual contacts OUT motor A and OUT motor B ensure the comparison between motor run times is not made until both motors are stopped.
If the comparison were continually made, a situation might arise where both motors would start if someone happened to press the Start pushbutton with one motor is already running.
Credits : by Tony R. Kuphaldt – Creative Commons Attribution 4.0 License
PLC Tutorials :
What is Programmable Logic Controller ?
What is Ladder Diagram Programming ?
History of Programmable Logic Controllers
Mis-conceptions of PLC Ladder Logic
Contacts and coils in PLC
Digital Input and Output Modules
Analog I/O and Network I/O
PLC Input/Output Modules
Memory Mapping in PLC
Analog Input Scaling
PLC Example with Switches
Counter Instructions
Timer Instructions
Math instructions
Data Instructions
Ladder Logic Questions
If you liked this article, then please subscribe to our YouTube Channel for PLC and SCADA video tutorials.
You can also follow us on Facebook and Twitter to receive daily updates.