Learn PLCs free

Master Control Relay (MCR) in PLC Programming

The Master Control Relay (MCR) is a ladder logic instruction that creates a controlled zone in a PLC program. When the MCR rung is energised, the zone runs normally. When de-energised, every non-retentive output in the zone is forced off — a software-implemented zone disable. Used for operating-mode gating, recipe step gating, and emergency-stop zones.

MCR zone in ladder logic

MCR zone diagramLadder logic showing an MCR start instruction that defines a zone, three rungs of regular logic inside the zone, and an MCR end instruction that closes the zone. When the MCR start condition is false, all non-retentive outputs in the zone go off.L1L2Mode_AutoMCR (zone start)MCR ZONEStart_PBPump1Conv_RunConv_OutMix_CmdMixerMCR (zone end)When Mode_Auto is FALSE, every non-retentive output in the zone (Pump1, Conv_Out, Mixer) is forced OFF.

How MCR works (Allen-Bradley ladder)

The MCR appears as two instructions: an MCR start (often unconditional with a contact gating it) and an MCR end. Everything between is the zone. When the start instruction is true, the zone runs normally. When false, every non-retentive output in the zone is forced to its de-energised state for the rest of the scan, regardless of what its rung logic computes.

Important: retentive outputs (latches set with OTL) and timers (TON, RTO) inside an MCR zone do NOT reset when the zone disables. Only non-retentive outputs (OTE) drop. This is intentional — the MCR is a soft zone disable, not an emergency stop.

Common uses

  • Operating-mode gating. Wrap the "Auto" sequence in an MCR zone driven by Mode_Auto. Switching to Manual mode immediately drops every Auto output without rewriting individual rungs.
  • Recipe step zones. Phase 3 of a batch sequence runs only when the phase is active. Wrap the Phase 3 logic in an MCR zone driven by Step3_Active.
  • Maintenance zones. Lockout-tagout software lockout — an MCR zone driven by "not in maintenance" ensures every machine output is zero while a tech is inside the cell.
  • Sub-system enables. A complete subsystem (filling, capping, labelling) can be enabled or disabled with one bit at the MCR start.

Critical: MCR is NOT an emergency stop

A common dangerous misuse: putting safety logic inside an MCR zone driven by an E-stop bit. This is wrong because:

  • The MCR runs in standard PLC scan time — too slow for SIL-rated safety functions
  • If the PLC stops scanning (CPU fault, watchdog trip), the MCR stops working — outputs may stay energised
  • MCR is software — single-channel, no diagnostic coverage, no SIL rating
  • It does NOT remove control power from output cards — the relay contacts inside output modules can still be welded

For real safety: use a hardware safety relay or safety PLC, with the MCR only as a secondary mode-disable in the standard logic. See Functional Safety.

Frequently asked questions

What is a Master Control Relay in PLC?
A Master Control Relay (MCR) is a ladder logic zone-control instruction that disables all non-retentive outputs within its defined zone when the MCR start condition is false. It is used for operating-mode gating, recipe step gating, and software-disable of subsystems without rewriting individual rungs.
Is the MCR an emergency stop?
No. The MCR is software-only, runs in standard PLC scan time, has no SIL rating, and stops working if the PLC faults. For emergency-stop functionality you need a hardware safety relay or safety PLC. The MCR is a software mode-disable, not a safety device.
What happens to retentive outputs inside an MCR zone?
Retentive outputs (OTL latches), timers (TON, RTO), and counters inside an MCR zone do NOT reset when the zone disables. Only non-retentive outputs (OTE coils) drop. This is intentional — the MCR is a soft zone disable, not a power-cycle of the logic.
What is the difference between MCR and JSR?
MCR (Master Control Relay) creates a zone where outputs are conditionally enabled based on the MCR rung condition. JSR (Jump to Subroutine) calls a separate routine and returns. They solve different problems: MCR is for output gating; JSR is for code organisation. Some applications use both — JSR into a subroutine that contains an MCR zone for that subroutine's outputs.

Related guides

Free PLC simulator

Stop reading, start doing

Write ladder logic in your browser, hit Run, and watch real machine scenarios react. 12 guided lessons across 8 PLC dialects — free account, no credit card.

Practice PLCs free →