Design and implementation of dual machine redundant liquid level control system based on S7-1200 programmable logic controller
Abstract
To address the conflict between the high reliability demands of small-to-medium-scale automation systems and the prohibitive cost of dedicated redundant Programmable Logic Controllers (PLCs), this paper proposes a dual-PLC redundant liquid level control scheme based on two Siemens S7-1200 controllers. The system adopts a primary-standby hot-standby architecture and is built upon three key technologies: fault detection, data synchronization, and output switching. For fault detection, a triple-criterion strategy is employed: a software heartbeat mechanism declares a fault when no change is received for three consecutive cycles; the CPU operating status is fed back via digital I/O interconnections; and the analog input channel incorporates electrical range and rate-of-change validation. Data synchronization is realized through a dual-buffer mechanism using PUT/GET instructions, with refresh rates differentiated by data category. Output switching is performed by an HA604 analog signal selector, while the standby PLC continuously tracks the primary PLC’s output value to enable bumpless transfer. Experimental results demonstrate that the system can automatically switch to the standby PLC within 500 ms when the primary suffers from CPU halt, communication interruption, power loss, program deadlock, or analog channel abnormality, with smooth transient behavior during the switching process. This solution does not rely on dedicated redundancy modules and offers a cost-effective technical pathway for small-to-medium industrial applications.