软冗余又称软件冗余,是西门子实现冗余功能的一种解决方案,可以应用于对主备系统切换时间要求不高的控制系统中。软冗余能够实现:主机架电源、背板总线等冗余;PLC处理器冗余;PROFIBUS网络冗余(包括通信接口、总线接头、总线电缆等冗余);接口模块IM153-2冗余。在软冗余系统进行工作时,主、备控制系统(处理器,通讯、I/O)独立运行,由主系统的PLC掌握对冗余部分ET200M从站中的I/O控制权,主、备系统通过软冗余专用程序进行数据同步。PLC程序由非冗余(non-duplicated)用户程序段和冗余(redundant backup)用户程序段组成,主系统PLC执行全部的用户程序,备用系统PLC通过判断冗余状态跳过冗余程序,只执行非冗余用户程序。当主系统中的组件发生故障,备用系统会自动切换为主系统,执行冗余程序,控制任务不会出现中断。
软冗余的原理和系统配置要求能够实现软冗余功能的CPU有具体的要求,在S7-300中,315-2DP型(包括313C-2DP、314C-2DP)以上的CPU才能支持,所有的S7-400 CPU都支持软冗余。主、备系统的CPU型号可以不同,如其中一套系统采用S7-400系列,另一套系统采用S7-300系列。数据同步可以通过MPI、PROFIBUS、Ethernet三种不同的网络方式。需要两套系统共同控制的I/O信号需要采用ET200M从站采集,由于要接入两套CPU中,因此ET200M要选用冗余的IM153-2接口模块,并且采用有源总线模块。软件需要安装软冗余软件包,只有安装了软件冗余包STEP7中才会出现冗余功能库。
软冗余系统的编程调试和故障诊断STEP7中的冗余软件包包含了多个功能块,每个功能块都有特定的功能和调用方法,而且不同程序库中的功能块应用的场合不同,使用时需要加以区分。由于是通过软件程序来实现冗余,因此软冗余系统在编程调试时有些特点要注意。如在OB100中初始化程序块FC100,定义系统运行的参数要正确,冗余输出映像区地址要连续。修改系统参数后要对CPU进行复位,重新下载全部项目到PLC。
软冗余系统与其他系统连接软冗余系统在实际应用中还会涉及到与其他系统进行数据通信、连接上位监控软件WinCC时如何建立冗余链接等情况。