Finally! A question that is in my field!
Deal with these questions daily.
1. Most common issue is grounding. Industrial environments are notorious for ground loops.
2. Make sure PLC and IO have separate power supplies. Field I/O usually can be "dirty" from control lines running near high voltage supply lines, VFD's and other devices that have high EMF properties. Rule of thumb to follow is 14 inches per kilovolt and cross these lines perpendicular. Remember that the PLC cpu's operate on milliamps and very low voltages. It does not take much to corrupt memory in these units.
3. See if you can correalate a real world event to trigger the problem. Things to watch for are starting motors, VFD's, miking a radio within a couple of feet of the unit. (that last one can be real nasty to track down)
4. Replace the power supply and see if problem goes away.
5. Put a UPS on the 115v supply for the 24vdc power supply.
If all this does not work then there may be faulty memory in the CPU. Replace the CPU.
Lemme know what turns up.