Production stays online after the fix because the PLC selects compressors by assigned rank, proves that the selected machine started, and adds capacity only when pressure continues to fall. Keep the HMI assignment, demand calculation, physical outputs, and run proof as separate functions.
Reject the quick fixes that hide the fault
| Quick fix | Why it fails | Correct action |
|---|---|---|
Make DS4 = 2 turn on compressor 2 directly |
The value represents a priority call, while compressor 2 is a physical machine. The mapping breaks whenever the operator changes priorities. | Search DS1 through DS3 for the compressor assigned priority 2, then command that machine. |
| Hard-wire a timer from priority 1 to compressor 2 | The next machine might be compressor 1 or 3 after an HMI reassignment. It also fails if two machines receive the same priority. | Advance from priority rank 1 to 2 to 3, resolving each rank to a physical compressor. |
| Use only the contactor auxiliary contact as run proof | An auxiliary contact proves that the contactor changed state. It does not prove motor current, belt condition, airflow, or pressure contribution. | Use layered proof: command status, auxiliary contact, optional motor current, and pressure response. |
| Start every available compressor below 95 psi | A brief pressure dip can cause unnecessary starts, and no state is retained for orderly staging or stopping. | Call one stage, prove it, evaluate the pressure trend, and then decide whether to add the next stage. |
| Drive all three compressors with identical output logic | The interfaces differ. Compressors 1 and 3 use separate start/stop outputs, while compressor 2 uses one dry contact. | Give each compressor an interface routine beneath a common supervisory sequencer. |
Separate demand, selection, proof, and capacity
Build four distinct layers. The demand layer compares measured pressure with 95 psi. The selection layer converts priority ranks into physical compressor numbers. The command layer operates the correct outputs. The proof layer decides whether the commanded machine actually joined the air system.
Do not let an HMI number energize an output by itself. In this arrangement, DS1, DS2, and DS3 hold the assigned ranks for compressors 1, 2, and 3. DS4 can hold the currently requested rank. For example, when DS4 = 2, the logic must find which of DS1 through DS3 equals 2 and call that compressor.
For requested rank 1, 2, then 3:
Find the compressor whose DS value equals requested rank
If that compressor is available, command it
Wait for run proof
If proof fails, mark it unavailable and try the next rank
If proof succeeds, evaluate the pressure response
Add the next rank only if pressure continues to fall
This separation also handles the stated temperature-shutdown case. Loss of run proof makes the selected unit unavailable to the sequence, regardless of which physical compressor currently owns priority 1.
Scale and validate the pressure signal
The pressure transmitter is a ProSense with a 0-150 psi, 4-20 mA signal connected to an analog input card. After converting the card's raw counts to milliamps, use linear scaling:
Pressure psi = (Measured mA - 4 mA) × 150 psi / 16 mA
The 95 psi staging threshold corresponds to approximately 14.13 mA, derived as 4 mA + (95/150 × 16 mA). Use the analog card manual to enter its actual raw-count endpoints; those values are card-specific and are not supplied here.
Qualify the signal before using it for automatic starts. Treat a diagnosed broken loop, overrange, underrange, or analog-module fault as a bad process value. A frozen but electrically valid signal requires a plausibility check: compare pressure movement with compressor commands and plant air consumption. Put the sequence in a defined fallback state rather than repeatedly starting machines from an invalid reading.
A single threshold is not a complete stop strategy. Configure a separate higher pressure at which staged demand clears, plus the permitted minimum run, unload, and restart restrictions from each compressor manual. Without separation between start and release pressures, normal transmitter noise can chatter the demand state.
Validate every HMI priority assignment
Accept automatic operation only when DS1, DS2, and DS3 form a valid permutation of 1, 2, and 3. Reject zero, values outside that range, and duplicate ranks. A duplicate leaves one rank unassigned and makes failover behavior ambiguous.
- Range-check each HMI value before copying it into the active sequence.
- Compare all three pairs:
DS1versusDS2,DS1versusDS3, andDS2versusDS3. - If any pair matches, inhibit automatic sequencing and display a priority-configuration fault.
- Latch a validated copy for the active run sequence. Apply later HMI changes when the sequence is idle, or deliberately restart selection under a documented transition rule.
Do not rewrite priorities automatically merely to remove a duplicate. That hides an operator-entry error and may start a machine the operator intended to leave at another rank.
Run the sequence as explicit states
State logic prevents timers, commands, and failures from fighting across separate rungs. Use the following operating progression:
- Idle: Monitor the valid pressure and priority configuration. Clear transient sequence timers.
-
Call rank 1: When pressure falls below 95 psi, set
DS4to 1, resolve the physical compressor, and issue its start command. - Wait for proof: Start a feedback timer with the command. A suggested implementation considered 1000 ms or 5000 ms, but the commissioned setting must exceed the machine's normal contactor pickup and controller start sequence while still detecting a failed start promptly.
- Evaluate capacity: After run proof, capture pressure and monitor its direction. The proposed operating check uses about one minute. If pressure remains steady or rises, hold the current stage; if it continues falling, request the next rank.
- Call rank 2 or 3: Repeat selection, start, proof, and pressure-response checks. Skip any unavailable rank without changing the operator's stored priorities.
- Release demand: When pressure reaches the configured upper limit, unload or stop machines according to their interface and manufacturer restrictions. Remove capacity in a defined order rather than dropping every command simultaneously.
Use separate timers for start proof and pressure response. Start proof answers whether the commanded unit changed to its running state. Pressure response answers whether confirmed equipment supplies enough air to arrest the loss.
Distinguish contactor proof from useful production
| Observation | Meaning | Sequence response |
|---|---|---|
| Start command on, auxiliary contact off after timeout | The contactor did not prove, or the feedback circuit failed. | Latch a failed-start status, remove that unit from the current sequence, and call the next priority. |
| Auxiliary contact on, motor current absent | The contactor indication alone does not prove motor operation. | Declare the unit offline and inspect the power path, motor, and current-sensing circuit. |
| Motor current present but below its commissioned running-load band | The motor may be unloaded or may have lost its mechanical load; a failed belt is one possible cause. | Do not count the unit as proven air capacity. Call the next available rank and inspect the machine. |
| Run proof valid, pressure still falling after the response interval | The running capacity does not meet current demand, or the machine is not producing useful air. | Add the next priority and flag the first unit for performance inspection if its expected contribution is missing. |
| Pressure steady or rising | Online capacity is matching or exceeding demand. | Hold the current stages until the configured release condition is reached. |
A current sensor keeps motor-current feedback isolated from contactor line-voltage wiring and can distinguish contactor closure from actual load. Establish its running-load band from measured healthy operation; no universal current threshold is supplied. Pressure response remains the final system-level proof because a turning motor does not necessarily produce air.
Match commands to each compressor interface
Keep the supervisory request identical, but translate it differently for each machine. Compressor 1 uses y1 and y2 in its start/stop circuit. Compressor 2 requires one dry contact for start and stop, with feedback taken from its fan contactor. Compressor 3 uses y4 and y5 in the same general manner as compressor 1.
Confirm whether the two-output interfaces require momentary start/stop pulses or maintained signals from the actual compressor schematics. Confirm the normal state and required behavior of compressor 2's dry contact. Keep the compressor's native temperature, overload, pressure, and safety controls in authority; the PLC supplies supervisory requests and does not bypass local protection.
Compressor type changes the acceptable stopping strategy. Reciprocating machines can generally tolerate more start-stop operation, although contactor wear and motor heating still limit cycling. The operating notes identify a possible limit of only 3 or 4 starts per hour for screw compressors; read the actual machine manual and program its stated start limit, unload behavior, and minimum run time rather than applying that figure universally.
Prove the failover before releasing automatic mode
- Force or simulate pressure just below 95 psi and confirm that only the machine assigned priority 1 receives a request.
- Withhold its auxiliary feedback. Confirm that the start-proof timer expires, the unit is marked unavailable, and the machine assigned priority 2 starts.
- Return valid feedback but simulate pressure continuing to fall. Confirm that the pressure-response interval calls the next rank without falsely declaring the first unit failed to start.
- Simulate pressure steady and then rising. Confirm that no additional compressor starts.
- Test every permutation of
DS1,DS2, andDS3. Confirm that physical outputs follow the assigned rank rather than a fixed compressor number. - Enter duplicate and out-of-range priorities. Confirm that automatic mode is inhibited and no ambiguous output is energized.
- Disconnect or fault the analog input through the approved test method. Confirm that invalid pressure cannot trigger uncontrolled staging.
- Test each interface separately:
y1/y2, the compressor 2 dry contact, andy4/y5. Confirm local stop, overload, and temperature shutdowns remain effective. - Restore a failed unit and verify that reset behavior is deliberate. Do not let intermittent feedback repeatedly reinsert and restart it during the same demand event.
FAQ
How do I call the compressor assigned priority 2?
Set DS4 to 2, compare that value with DS1, DS2, and DS3, and command the physical compressor whose stored value matches. Do not equate priority 2 with compressor 2.
How do I detect that a compressor failed to start?
Start a proof timer with the command and require the selected machine's feedback before it expires. Choose the timeout from measured normal starting behavior; 1000 ms and 5000 ms are candidate values from the proposed logic, not universal settings.
How do I know whether a running compressor is making air?
First prove the contactor or motor current, then record pressure and inspect its direction over the commissioned response interval, proposed here as about one minute. If pressure keeps falling, add the next priority and investigate the first machine's mechanical load or air output.
How do I scale the 4-20 mA pressure transmitter?
For the 0-150 psi transmitter, calculate (mA - 4) × 150 / 16. The 95 psi threshold equals approximately 14.13 mA; obtain raw-count endpoints from the analog-card documentation.
When do I stop troubleshooting and call official support?
Stop here if the compressor interface type, permitted start frequency, unload sequence, local safety circuit, or analog-card fault behavior cannot be verified from the machine schematics and manuals. Keep automatic mode inhibited and contact the compressor or PLC manufacturer's official support channel before changing wiring, bypassing protection, or commissioning unverified timing.