Master Control Reset (MCR)

This information applies to the
CompactLogix
5370,
ControlLogix
5570,
Compact GuardLogix
5370,
GuardLogix
5570,
Compact GuardLogix
5380,
CompactLogix
5380,
CompactLogix
5480,
ControlLogix
5580, and
GuardLogix
5580 controllers.
The MCR instruction simulates a master control relay (a mandatory hard-wired relay that can be de-energized by any series-connected emergency stop switch). Whenever the relay is de-energized, its contacts open to de-energize all application I/O devices. The MCR instruction can selectively disable a section of rungs.
Available Languages
Ladder Diagram
MCR_LD_avail_V31
Function Block
This instruction is not available in function block.
Structured Text
This instruction is not available in structured text.
Operands
Description
The MCR instruction is able to override the normal behavior of rungs; forcing every instruction to execute as if rung-condition-in is false. Typically, false execution of an instruction is faster than true so, selectively disabling unneeded sections of code could result in an overall improvement in scan time.
Each time the MCR instruction is executed with rung-condition-in false, the override behavior is toggled. Consequently, two MCR instructions are normally required: one to start the "zone" and a second to terminate it.
The starting MCR is typically conditioned by one or more input instructions. When the input conditions are false, the zone will be disabled. When the input conditions are true, the zone will operate normally.
The terminating MCR is normally unconditional. If the zone is enabled, the terminating MCR will be true so it will do nothing. If the zone is disabled, however, the terminating MCR will be false so it will toggle the override, re-enabling the rungs that follow it.
When you program an MCR zone, note that:
MCR instruction must be the last instruction of a rung.
  • You should end the zone with an unconditional MCR instruction. If the terminating MCR is false, and the zone is enabled, the terminating MCR will disable all of the rungs that follow it.
  • You cannot nest one MCR zone within another. There is only one override bit in each program. Each MCR instruction has the ability to toggle this override. Attempting to nest MCR zones will actually result in multiple smaller zones to be created.
  • Do not jump into an MCR zone. If the starting MCR is not executed, the zone will not be disabled.
  • The override bit is automatically reset at the end of the routine. If an MCR zone continues to the end of the routine, you do not have to program an MCR instruction to end the zone, however, to avoid confusion when online editing, it is recommended that the terminating MCR always be used.
If the MCR is disabled in a subroutine or an AOI, the override bit will be reset when the subroutine/AOI returns.
AOIs have their own override bit which is initialized when the AOI is invoked. If an AOI is invoked from within a disabled MCR zone, the false scan mode routine will execute normally. After the AOI returns, the state of the zone will be restored to what it was before the AOI was invoked.
IMPORTANT:
The MCR instruction is not a substitute for a hard-wired master control relay that provides emergency-stop capability. You should still install a hard-wired master control relay to provide emergency I/O power shutdown.
IMPORTANT:
Do not overlap or nest MCR zones. Each MCR zone must be separate and complete. If they overlap or nest, unpredictable machine operation could occur with possible damage to equipment or injury to personnel.
Place critical operations outside the MCR zone. If you start instructions such as timers in a MCR zone, instruction execution becomes false when the zone is disabled and the timer will be cleared.
Affects Math Status Flags
No
Major/Minor Faults
None specific to this instruction. See Common Attributes for operand-related faults.
Execution
Ladder Diagram
Condition/State
Action Taken
Prescan
N/A
Rung-condition-in is false
The override behavior is toggled enabling or disabling the rungs that follow.
Rung-condition-in is true
N/A
Postscan
N/A
Example
Ladder Diagram
When the first MCR instruction is enabled (input_1, input_2, and input_3 are set), the controller executes the rungs in the MCR zone (between the two MCR instructions) and sets or clears outputs, depending on input conditions.
When the first MCR instruction is disabled (input_1, input_2, and input_3 are not all set), the controller executes the rungs in the MCR zone (between the two MCR instructions) and the EnableIn goes false for all the rungs in the MCR zone, regardless of input conditions.
MCR_LD_ex_v31
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.