Description of the Hot Standby States
The hot Standby states are:
-
Run Primary CPU
The primary CPU PLC executes the application program and updates the remote I/Os. If a standby CPU is present, the primary CPU sends application data and I/O to it.
-
Run standby CPU
During each cycle the PLC:
-
checks that a primary PLC exists
-
checks that there is no command from the primary PLC
-
indicates to the primary CPU that it is running well and is ready to take over the process if the primary CPU stops
-
checks that there is no CPU, Copro or CRP mismatches (unless allowed)
Local I/Os are updated, but not the Remote I/Os.
For a Quantum Ethernet I/O configuration, the standby PLC checks the RIO Drop connected.
-
Run Offline
-
all sections of the MAST task application program but the I/O is not written
-
the first section of the MAST task of the application program but the I/O is not written
-
none of the application program MAST task
This state is either manually activated or by the CPU, which detects the state by itself.
If there is no primary PLC, the CPU tries to change to the Run Primary CPU state.
If the primary PLC exists, the PLC checks each cycle to see if can go to the Run standby CPU state. There are several commands available:
-
Application transfer
-
Any online command
-
STOP command
-
HALT command
-
Stop (Offline)
The PLC neither executes the application program nor controls the process. It is not part of the Hot standby system. Two commands are available:
-
Application transfer
-
RUN command
-
Init
The run offline and the stop offline state can occur in the primary CPU and in the standby CPU at the same time.
The following table shows the possible states of the 2 controllers of a Hot Standby configuration:
|
Controller A state
|
Run Primary
|
Run Standby
|
Run OffLine
|
Stop OffLine
|
Controller B state
|
Run Prim
|
N/A
|
Hot Standby active
|
Hot Standby inactive
|
Hot Standby inactive
|
Run Standby
|
Hot Standby active
I/O processed
|
N/A
|
N/A
|
N/A
|
Run OffLine
|
Hot Standby inactive
I/O processed
|
N/A
|
Hot Standby inactive
I/O not processed
|
Hot Standby inactive
I/O not processed
|
Stop OffLine
|
Hot Standby inactive
I/O processed
|
N/A
|
Hot Standby inactive
I/O not processed
|
Hot Standby inactive
I/O not processed
|
Description of Run Offline Use Cases
The following table describes the different situations of the Run Offline state:
If ...
|
Then ...
|
The primary CPU PLC enters Run Offline state
|
The standby CPU PLC takes over the process and becomes Run primary CPU
|
The standby CPU PLC enters Run Offline state
|
The primary PLC remains in Run mode
|
The fibre optic link is disconnected
|
The standby CPU PLC enters Run Offline state
|
The actual hardware configuration is different from the configuration defined in the project
|
Either the primary CPU or the standby CPU PLC starts in Run Offline state
|
A application mismatch occurs
|
The standby CPU PLC enters Run Offline state
|
The standby CPU RIO head (CRP) stops operating
|
The primary PLC remains in Run mode
|
There is no RIO connection open in either PLC
|
-
If there is no RIO connection to either PLC, the PLCs stay in Run/Offline state.
-
If there is no RIO connection to the standby PLC, the standby stays in Run/Offline state.
-
If there is no connection to the primary PLC, the primary goes to Run/Offline state, and the standby becomes primary if it has at least one RIO connection. Otherwise, the standby goes to Run/Offline state.
|
RUN OFFLINE State Recommendation
In the RUN OFFLINE state the PLC is not configured as a primary nor a standby CPU. This occurs after the Hot Standby system detects an error or Hot Standby OFFLINE mode has been chosen.
In this state, the CPU main actions are:
When using communication EFBs, some applications can be affected by the entire code execution.
It is recommended to:
-
create a boolean variable
cpu_state:=(%SW61.1) AND NOT (%SW61.0);
-
assign the section or communication block execution to this variable
With such a fix, unexpected EFB communication calls are avoided if the standby CPU goes to an OFFLINE state.
Recovery from RUN OFFLINE when EIO is used
To recover from RUN OFFLINE due to no-Drop condition:
Description of the Hot Standby Operating Modes
A Quantum Hot Standby PLC has some restrictions in terms of changing modes. The following figure shows the state diagram of the Hot Standby Quantum system:
Automatic Start in Run Option
At a cold start with the Automatic Start in Run option configured, a PLC restarts depending on the operating mode of the other PLC, this PLC's operability and on whether identical applications are present on both PLCs:
If...
|
Then...
|
The other PLC is primary, the two applications are identical and this PLC is operating normally
|
The PLC restarts in Standby mode
|
The other PLC is primary and the two applications are not identical or this PLC is not operating normally
|
The PLC restarts in Offline mode
|
There is no primary and this PLC is operating normally
|
The PLC restarts in primary mode
|
There is no primary but this PLC is not operating normally
|
The PLC restarts in Offline mode
|
A local abnormal or inoperative operating state will be reported when:
-
There is a loss of power to the CPU rack
-
An application program error that generates a HALT state (for example, a blocking software error)
-
The hardware or firmware of the CPU module becomes inoperative
-
The CPU-sync link is disconnected
At a warm start, the PLC restarts depending on the previous PLC operating mode (Stop or Run).
If the previous state was Run, the PLC restarts according to:
-
operating mode of the other PLC
-
local PLC's operability or non-operability
-
on whether identical applications are present on both PLCs (refer to the table above)