Maintenance Manual Valve Control (MMVC)
This instruction applies to the Compact GuardLogix 5370, GuardLogix 5570, Compact GuardLogix 5380, and GuardLogix 5580 controllers.
The Maintenance Manual Valve Control (MMVC) instruction is intended to drive a press valve manually during a maintenance operation. Manual drive of the valve is permitted when the instruction is enabled and in the permissive state. The permissive state means all of these conditions have been met:
- A key switch is enabled.
- The flywheel is stopped.
- The slide is at bottom-dead-center (BDC).
- The Safety Enable input is ON (1).
One instruction is required for each valve that needs to be manually controlled.
WARNING:
This instruction should only be enabled during a maintenance operation and should never be used during press operation.
WARNING:
Besides sourcing the Bottom and Flywheel Stopped inputs, perform a visual inspection to make sure that the press is at bottom-dead-center (BDC) and that the flywheel is not in motion before activating the keyswitch and enabling the valve.
WARNING:
The Keyswitch Enable Input must only be activated with a supervised key switch.
Available Languages
Ladder Diagram
Function Block
This instruction is not available in function block.
Structured Text
This instruction is not available in structured text.
Operands
IMPORTANT:
Unexpected operation may occur if:
- Output tag operands are overwritten.
- Members of a structure operand are overwritten.
- Structure operands are shared by multiple instructions.
WARNING:
If changing instruction operands while in Run mode, accept the pending edits and cycle the controller mode from Program to Run for the changes to take effect.
The following table provides the operands used to configure the instruction. These operands cannot be changed at runtime.
Operand | Data Type | Format | Description |
---|---|---|---|
MMVC | MANUAL_VALVE_CONTROL | tag | MMVC structure |
The following table explains the instruction inputs. The inputs may be field device signals from input devices or derived from user logic.
Operand | Data Type | Format | Description |
---|---|---|---|
Enable | BOOL | tag | This input is the instruction enable from mode switch. This instruction should be enabled in maintenance mode only. ON (1): The instruction is enabled. Output 1 can be energized after the Actuate input transitions from OFF (0) to ON (1) when the instruction is in the permissive state. OFF (0): The instruction is not enabled. Output 1 cannot be energized. |
Keyswitch | BOOL | tag | This is the supervised keyswitch input for the instruction. ON: The instruction is activated. OFF: The instruction is not activated. Output 1 cannot be energized. |
Bottom | BOOL | tag | This input indicates slide position. ON (1): The slide is at bottom-dead-center (BDC). OFF (0): The slide is not at BDC. Output 1 cannot be energized. |
Flywheel Stopped | BOOL | tag | This input indicates whether or not the flywheel is stopped. This input must be ON (1) to allow manual valve control. ON (1): The flywheel is stopped. OFF (0): The flywheel is not stopped. |
Safety Enable | BOOL | tag | This input represents the status of safety-related permissive devices such as E-stops, light curtains or safety gates. This input is optional on this instruction for extra protection if required for a particular application. ON (1): Indicates that permissive devices are actively guarding the danger zone and permits the energizing of Output 1. OFF (0): Indicates that permissive devices are no longer protecting the danger zone and prevents the energizing of Output 1. |
Actuate | BOOL | tag | This input is the signal to manually actuate the valve, energizing or de-energizing Output 1. OFF (0) -> ON (1): Output 1 is energized if the instruction is enabled, the Keyswitch input is activated, and no faults exist. ON (1) -> OFF (0): Output 1 is de-energized. |
Input Status | BOOL | immediate tag | If instruction inputs are from a safety I/O module, this is the status from the I/O module or modules (Connection Status or Combined Status). If instruction inputs are derived from internal logic, it is the application programmer’s responsibility to determine the conditions. ON (1): The inputs to this instruction are valid. OFF (0): The inputs to this instruction are invalid. |
Output Status | BOOL | immediate tag | This input indicates the output status of the I/O module connected to this instruction. ON (1): The output module is operating properly. OFF (0): The output module is faulted or offline. Instruction outputs are set their safe state. |
Reset 1 | BOOL | tag | This input clears the instruction faults provided the fault condition is not present. ON (1): The Fault Present and Fault Code outputs are reset. |
1
ISO 13849-1 stipulates instruction reset functions must occur on falling edge signals. To comply with ISO 13849-1 requirements, add this logic immediately before this instruction. Rename the ‘Reset_Signal’ tag in the example shown below to the reset signal tag name. Then use the OSF instruction Output Bit tag as the instruction’s reset source.The following table explains the instruction outputs. The outputs may be field device signals or derived from user logic.
Operand | Data Type | Description |
Output 1 (01) | BOOL | This output manually controls a valve. The output is de-energized when:
|
Fault Present (FP) | BOOL | ON (1): A fault is present in the instruction. OFF (0): The instruction is operating normally. |
Fault Code | DINT | This output indicates the type of fault that occurred. See the MMVC Fault Codes section for a list of fault codes. This operand is not safety-related. |
Diagnostic Code | DINT | This output indicates the diagnostic status of the instruction. See the MMVC Diagnostic Codes section below for a list of diagnostic codes. This operand is not safety-related. |
IMPORTANT:
Do not write to any instruction output tag under any circumstances.
Affects Math Status Flags
No
Major/Minor Faults
None specific to this instruction. See Index Through Arrays for array-indexing faults.
Execution
Condition/State | Action Taken |
---|---|
Prescan | Same as Rung-condition-in false. |
Rung-condition-in is false | The .O1, and .FP are cleared to false. The Diagnostic Code and Fault Code outputs are set to 0. |
Rung-condition-in is true | The instruction executes as described in the Operation section. |
Postscan | Same as Rung-condition-in false. |
Operation
Normal
This timing diagram shows normal operation of this instruction to manually drive a valve. The instruction enters the permissive state at (A) because the instruction has been enabled, bottom-dead-center (BDC) has been achieved, the flywheel is stopped, and the Safety Enable input is ON (1). Output 1 is energized at (B) because a rising edge is detected on the Actuate input, manually energizing the valve. Output 1 is de-energized at (C) because the Actuate input is turned OFF (0). Output 1 is energized again when another rising edge is detected on the Actuate input at (D). Output 1 is de-energized at (E) because the Enable input turns OFF (0), resetting the instruction. Finally, Output 1 is energized at (F) once the instruction is back in a permissive state and a rising edge is detected on the Actuate input. None of the conditions in this example results in a fault.
Actuate in Non-permissive State
This timing diagram shows conditions that do not allow Output 1 to be energized because the instruction is not in a permissive state when the Actuate input transitions from OFF (0) to ON (1). Output 1 is not energized at (A) because the instruction is not enabled when the Actuate input transitions from OFF (0) to ON (1). The instruction is enabled, but faults immediately when the Actuate input transitions from OFF to ON because the Safety Enable input is OFF (0) at (B). The fault cannot be cleared because the fault condition still exists at (C). Finally, the fault is cleared at (D) when the Reset input transitions from OFF (0) to ON (1) because the Safety Enable input is now ON (1). Output 1 can now be energized when the Actuate input transitions from OFF (0) to ON (1).
Fault After Output 1 Energized
Output 1 is energized at (A) after the Actuate input transitions from OFF (0) to ON (1) when the instruction is in the permissive state. The instruction faults at (B) because the slide is no longer at bottom-dead-center (BDC). The fault is cleared at (C) when the Reset input transitions from OFF (0) to ON (1) and the slide has returned to BDC. Another fault is generated at (D) when the Actuate input transitions from OFF (0) to ON (1) and the flywheel is not stopped.
False Rung State Behavior
When the instruction is executed on a false rung, all instruction outputs are de-energized.
Fault Codes and Corrective Actions
The fault codes are listed in hexadecimal format followed by decimal format.
Fault Code | Description | Corrective Action |
---|---|---|
0 | No Fault | None. |
16#20 32 | The Input Status input transitioned from ON (1) to OFF (0) while the instruction was executing. |
|
16#21 33 | The Output Status input transitioned from ON (1) to OFF (0) while the instruction was executing. |
|
16#5040 20544 | The slide was not at bottom-dead-center (BDC) when the Actuate input transitioned from OFF (0) to ON (1). |
|
16#5041 20545 | Flywheel motion was detected when the Actuate input transitioned from OFF (0) to ON (1). |
|
16#5042 20546 | Safety Enable was OFF (0) when the Actuate input transitioned from OFF (0) to ON (1). |
|
16#5043 20547 | The Keyswitch input was OFF (0) when the Actuate input transitioned from OFF (0) to ON (1). |
|
Diagnostic Codes and Corrective Actions
The diagnostic codes are listed in hexadecimal format followed by decimal format.
Diagnostic Code | Description | Corrective Action |
---|---|---|
0 | No Fault | None. |
16#20 32 | The Input Status was OFF (0) when the instruction started. | Check the I/O module connection. |
16#21 33 | The Output Status input transitioned from ON (1) to OFF (0) while the instruction was executing. | Check the I/O module connection. |
16#5000 20480 | The Actuate input is held ON (1). | Set the Actuate input to OFF (0). |
16#5040 20544 | The slide was not at bottom-dead-center (BDC). |
|
16#5041 20545 | Flywheel motion detected. |
|
16#5042 20546 | The Safety Enable signal is OFF (0). |
|
16#5043 20547 | The keyswitch is disabled. | Enable the Keyswitch input. |
Provide Feedback