Distributed industrial control systems: a fault tolerant architecture