
4 |
Data Initialization
During startup, a PLC either sets a flag to notify the application program to initialize %R and %M memory, or synchronizes the data with corresponding data in the other PLC(s). The %M data is typically latch logic states, while the %R data is typically timer/counter data. The beginning addresses and lengths of both areas are set up during configuration.
HIf both the other PLCs are offline (application programs not running and not sending output data), the initializing PLC sets a (cold start) flag to the application program, which can initialize the selected memory areas (%R and %M) as appropriate.
HIf either or both of the other PLCs is already online (running the application program and transmitting output data), the initializing PLC synchronizes the %M and %R data with that of the other PLC(s).
1.The initializing PLC first reads %R then %M data from the online PLC with the higher bus controller serial bus address (31 takes precedence over 30, 30 over 29). Data is read in ascending order.
The PLC reads data only once. If data in the online PLC changes after the initializing PLC reads it, the change is not noticed. To minimize data differences on continually changing data such as timer and counter accumulators, they should be located at the end (top) of the %R area (because it is read last).
2.After reading all of the selected %R and %M data from the first online PLC, the initializing PLC then reads %M data from the other online PLC. It places this data into a configurable area of %R memory.
3.After reading the %M data from both online PLCs, the initializing PLC compares the data. If the data does not match, it tries again. After a total of three retries, if the data still does not match, the PLC may either:
( ) | Halt the PLC (if this fault is configured as fatal) |
( ) | Allow the PLC to continue operating (if it is configured as diagnostic) |
| and set the appropriate %M status flag. |
%M12232 Init Miscompare at startup
%M12234 System fault at startup
The action taken is determined by the GMR configuration (see page
4.It may take several CPU sweeps to read all the data from both PLCs. Data is read in quantities of up to 64 words at a time. The data transfer is divided across the busses to minimize the total time required. Therefore the overall time depends on the data lengths and the number of busses available.
5.If the initializing PLC is unable to successfully read all the data from the other PLC(s), it sets a flag ªSynchronization hardware failureº for the application program. The entire synchronization sequence then begins again, excluding the Genius bus with which communications failed.
During GMR configuration, the PLC can be configured to either stop or continue in the event of synchronization failure.
After successful synchronization, the PLC clears a flag ªInhibit User Applicationº. This must be used in the application program to prevent execution of the program until it has been cleared.
GeniustModular Redundancy Flexible Triple Modular Redundant (TMR) System | ||
| User's Manual ± March 1995 |
|