Hi and welcome to the Forum!
I know you were directing your question at the original poster, but it would serve you well to answer Ken's question. He's still alive you know! Or else he's just haunting this old place?
Normally, a firmware diagnostics routine is periodically run in the controller to check, among other things, if the RTC is reporting the time that the controller expects. If the RTC in a CompactLogix does go awry, the firmware diagnostics routine is designed to transition the controller to a safe state i.e. it clears its memory, indicating a major fault.
If a user is not getting major, or minor faults, then it would initially point to a CompactFlash card being set to load on power up, overwriting the current time settings during power cycles.
So, have you got a CF card in this controller set to load on power up?
If not, are there any SSV (Set System Value) instructions using the Class: WallClockTime Attribute: LocalDateTime in the program. These instructions could possibly be writing incorrect time and date values to the controllers WALLCLOCKTIME at program execution after a power cycle.
Is the time/date resetting to defaults, or just out by some degree?
What is the controller catalog number?
What firmware version is the controller at?
Regards,
George