![](/club/bbs/upload/image/20240719/6385701637482580971653253.png)
系统架构:如图,其中S7-1515R 的X1口用来组成冗余环网,两个X2口分别接到一台外部交换机,用来连接上位机电脑,X1口和X2口均已启用系统IP功能
功能需求:上位机周期读取PLC中的数据,只有在需要时才会向PLC写数据
遇到的问题:拔掉运行主CPU的电源,备CPU可以自动切换成主CPU,冗余切换正常;但假如拔掉的是主CPU的X2口的网线,则冗余系统不会切换,通信中断,而此时是希望也能自动切换
解决方法:
step 1:启用X2端口的【监视】
![](/club/bbs/upload/image/20240719/6385701730785766203245744.png)
step 2:读取CPU A机X2口的诊断
![](/club/bbs/upload/image/20240719/6385701746507862969213160.png)
step 3:CPU A机X2口断开,转入STOP模式
![](/club/bbs/upload/image/20240719/6385701755122844602364066.png)
step 4:读取CPU B机X2口的诊断
![](/club/bbs/upload/image/20240719/6385701765992834434154420.png)
step 5:CPU B机X2口断开,转入STOP模式
![](/club/bbs/upload/image/20240719/6385701771344418155172448.png)
step 6:CPU处于单机状态,启动同步
![](/club/bbs/upload/image/20240719/6385701778049905505622812.png)
step 7:以上,已可以在X2口网线断线时自动切换主备CPU,保证通信的连续性。
还有很多考虑不周之处,比如需要在读取X2口诊断前面加上冗余PLC状态正常、上位机已正常连接等条件,仅供需要的朋友参考。