4-158 Series 90-30/20/Micro Programmable Controllers Reference Manual – September 1998 GFK-0467K
4
Example 2:
In the next example, the PLC is shut down when any fault occurs on an I/O module except when the
fault occurs on modules in rack 0, slot 9 and in rack 1, slot 9. If faults occur on these two modules,
the system remains running. The parameter for “table type” is set up on the first sweep. The
contact IO_PRES, when set, indicates that the I/O fault table contains an entry. The PLC CPU sets
the normally open contact in the sweep after the fault logic places a fault in the table. If faults are
placed in the table in two consecutive sweeps, the normally open contact is set for two consecutive
sweeps.
The example uses a parameter block located at %R0600. After the SVCREQ function executes, the
fourth, fifth, and sixth words of the parameter block contain the address of the I/O module that
faulted:
1 %R0600
long/short %R0601
reference address %R0602
rack number slot number %R0603
I/O bus no. bus address %R0604
point address %R0605
fault data
In the program, the EQ_INT blocks compare the rack/slot address in the table to hexadecimal
constants. The internal coil %M0007 is turned on when the rack/slot where the fault occurred
meets the criteria specified above. If %M0007 is on, its normally closed contact is off, preventing
the shutdown. Conversely, if %M0007 is off because the fault occurred on a different module, the
normally closed contact is on and the shutdown occurs.