Kataeb,
maybe you can adapt what we did to your app.
we had a machine with several hundred possible faults.
slc 500 plc.
we created a fault bit file with 20 words.
we created fault logic that turned on each bit in these words.
we used a pv 550 terminal with a messaging display to show the faults.
a subroutine scanned each word and bit for the faults.
if the word was equal to zero, next word.
if the bits was equal to zero, next bit.
when the bit equals 1, display the message for a specified time using a timer.
the fault reset logic was a single pb to reset the words at the top of the fault logic. as faults were fixed, the fault logic was cleared and the reset pb reset the bits.
we implemented this on a dozen machines and it quickly became our standard way of detecting faults.
hope this helps,
james