SOV_DA (Dual Acting Solenoid Valve) Logic Block Documentation
Overview
The SOV_DA logic block is used to control dual-acting solenoid valves, which require explicit actuation signals for both opening and closing actions. This block supports automatic and manual control modes, validates permissions and interlocks, and monitors feedback signals. It reports faults such as command mismatches and feedback timeout.
In above picture, we are showing inputs and output of SOV-DA block.
In the above picture, we are showing that how to use the SOV-DA block
Pins Information
Signal Name | Type | Description |
---|---|---|
CMD_OPEN | BOOL | Manual open command from faceplate |
CMD_CLOSE | BOOL | Manual close command from faceplate |
MODE | BOOL | 0 = Auto mode, 1 = Manual mode |
AUTO_CMD_OPEN | BOOL | Auto open command |
AUTO_CMD_CLOSE | BOOL | Auto close command |
PERM_OPEN | BOOL | Permission to open valve |
PERM_CLOSE | BOOL | Permission to close valve |
INTERLOCK_OK | BOOL | TRUE = Interlock condition satisfied |
ZSO_FB | BOOL | Valve fully open feedback |
ZSC_FB | BOOL | Valve fully closed feedback |
ZS_TIMEOUT_SEC | TIME | Timeout to wait for feedback after command |
CMD_OPEN_OUT | BOOL | Output to open solenoid coil |
CMD_CLOSE_OUT | BOOL | Output to close solenoid coil |
VALVE_OPEN | BOOL | Valve is confirmed open |
VALVE_CLOSE | BOOL | Valve is confirmed closed |
CMD_FAULT | BOOL | Feedback fault detected (timeout or mismatch) |
STATUS | BYTE | 0 = Closed, 1 = Open, 2 = Fault, 3 = Running |
OPEN_COUNT | UDINT | Total number of successful valve openings |
CLOSE_COUNT | UDINT | Total number of successful valve closings |
OPENED_TIME | TIME | Cumulative time valve has remained open (Hrs) |
RESET | BOOL | Clears faults when TRUE |
TAG_NAME | STRING | Unique name for this valve block |
DESC | STRING | Block description |
Operational Behavior
Mode Selection
- Auto Mode (MODE = 0): Controlled using
AUTO_CMD_OPEN
orAUTO_CMD_CLOSE
. - Manual Mode (MODE = 1): User controls valve using
CMD_OPEN
andCMD_CLOSE
.
Command Execution
- Valve opens/closes only when:
- Corresponding PERM_OPEN/PERM_CLOSE is TRUE
-
INTERLOCK_OK is TRUE
-
Outputs:
CMD_OPEN_OUT
is TRUE during valid open command-
CMD_CLOSE_OUT
is TRUE during valid close command -
Feedback:
ZSO_FB
confirms valve is openZSC_FB
confirms valve is closed
Fault Handling
- CMD_FAULT is TRUE when:
- Feedback mismatch occurs (e.g., open command but ZSO not received)
- Feedback not received within
ZS_TIMEOUT_SEC
Safe Status Detail
STATUS Value | Meaning |
---|---|
0 |
Normal |
1 |
Opened and Closed False |
2 |
Opened True |
3 |
Closed True |
Output Summary
Output | Description |
---|---|
CMD_OPEN_OUT |
Energizes solenoid to open valve |
CMD_CLOSE_OUT |
Energizes solenoid to close valve |
VALVE_OPEN |
TRUE when ZSO_FB = TRUE |
VALVE_CLOSE |
TRUE when ZSC_FB = TRUE |
CMD_FAULT |
TRUE if feedback missing or command conflict |
STATUS |
Valve condition code (Open/Close/Fault/Running) |
OPEN_COUNT |
Increments on successful OPEN cycle |
CLOSE_COUNT |
Increments on successful CLOSE cycle |
OPENED_TIME_SEC |
Aggregated valve open duration |
Best Practices
- Set
ZS_TIMEOUT_SEC
carefully to avoid false alarms. - Always check
PERM
andINTERLOCK_OK
signals before allowing manual command. - Use fault output
CMD_FAULT
to trigger alarms or diagnostics. - Use
OPEN_COUNT
,CLOSE_COUNT
, andOPENED_TIME_SEC
for maintenance analysis. - Maintain unique
TAG_NAME
for tracking and SCADA linking.
This logic ensures safe, redundant, and clear actuation and monitoring for dual-acting solenoid valves in process control systems.