I know Arduino has only been out for a few years, but how reliable is the hardware for long term use? has anyone had a project that’s been constantly running for years non-stop?
OK so if no one is going to answer I might as well have a go.
There are many things that makes a system stable, or rather unstable and it’s a matter of avoiding them. Engineering a robust system is not a simple matter but the Arduino is a good starting point.
Software stability. On a simple system like the Arduino there is not much that can go wrong in the long term once a program has been debugged. the biggest software problem is memory leaks but they happen on more complex systems. The thing that could go wrong that could remain hidden is to do with interrupts, some combination of events could trigger a freeze, if you don’t write the software correctly.
Hardware instability. This can be caused by poor design but this is not the case with the Arduino. The most likely cause of instability is likely to be some form of interference getting onto the supply lines. This could be mains born or radiated. In the U.S. the mains is not as free from spikes and surges as it used to be. Radiated interference can come from things like a large motorcycle going past, a close by taxi or police transmitter. You would need to add considerably to the supply decoupling to make it robust in an industrial environment. You could also shield it in an earthed metal case to cut down on radiated interference.
You can add to the robustness of the system by incorporating a watch dog timer. That is a circuit (often built into the processor) that resets the processor if it is not continually reset by the software itself. So if the software crashes it automatically resets.
Remember the Arduino is not designed as a ruggedised system it is meant as a learning tool, bu it can be made into one if you have the skill.