在PCS7中如何实现冗余CPU与单CPU之间的以太网通讯?

发布时间:2024-03-09
冗余cpu和单cpu之间的以太网通讯组态可以分为如下两种情况: 1. 单cpu采用h类型的cpu的情况,此时直接在网络连接netpro中组态两站之间的冗余连接s7 connection fault-tolerant,并在编程中使用通讯功能块组态即可。(siemens标准解决方案)
2. 单cpu为非h类型的普通400 cpu的情况,此时netpro中只能组态两站之间的普通s7连接,因此在实际通讯过程中具体使用那个连接进行通讯需要用户在程序中编程判断。本文档将基于pcs7系统,演示冗余cpu与普通单cpu之间的以太网通讯的一种解决方案。本方案非siemens发布的标准解决方案,仅供用户参考学习。 基本原理:
在冗余cpu和单cpu之间组态两个s7连接,使用其中的一个连接作为默认连接在两cpu之间进行通讯,并同时相互传送一个心跳信号(定时脉冲信号,可以使用硬件时钟信号,cpu硬件参数中指定)。在cpu程序中编制一个看门狗,使用心跳信号对此看门狗进行时间复位。如果第一个s7连接通讯故障,通过此连接cpu接受不到心跳信号,看门狗时间溢出后则切换通讯连接到备用s7连接上。当默认连接恢复重新接收到心跳信号后,将连接切换回默认连接。 操作步骤:
step1:打开pcs7,插入as站,组态相应硬件和网络连接,网络连接组态如下图pic1所示,心跳信号设置如图pic2所示。
pic1:网络连接组态
pic2:硬件时钟设置 step2:加入cfc,并对上述原理进行实现,cfc实例如下图pic3所示。
pic3:cfc编程实例 图中使用了两个send_r发送功能块和两个 rec_r接受功能块,分别对应两个s7连接。正常情况下仅使用默认s7连接的一对发送接收功能块。一个自制看门狗time_mon(用于监控心跳信号)和多个接受信号选择器sel_r(用于选择有效的接收信号)。 总结:
以上仅仅提供了冗余系统与单系统之间基于以太网通讯的一种解决方案,供大家参考学习。
在使用通讯功能块进行各站之间的通讯时,可以充分利用通讯功能块的err端对通讯连接状态进行监控。但在冗余系统和普通单系统之间的通讯情况下,使用err端会存在一些问题:如果冗余系统侧的某一cpu处于stop状态,在普通单cpu系统端使用此中断的连接接受数据时,err端不会为true。
另外,通讯功能块中的id端可以用于指定此通讯功能块采用哪一个s7连接进行通讯,但需要注意的是:更改id号后,系统要求重新启动(或重新下载背景db块)。因此无法实现cpu运行过程中程序动态的对id的更改来切换通讯连接通路。
本文档基于如下硬件及软件环境进行的实验,仅供参考。 软件
pcs7 v6.1 sp1
step7 v5.3+sp2+hf7
operation system windowsxp sp2
硬件
414-4h 6es7 414-3xj00-0ab0 v3.1.1
414-3 6es7 414-3xj00-0ab0 v3.1.0
cp443-1 6se6 443-1ex11-0xe0 v2.2
上一个:硬盘供电线怎么接电源,我有一个废旧的硬盘现在想给它供电让它转起来那四条线应该怎
下一个:什么是交流接触器脱扣?交流接触器脱扣原理

电脑不认大容量移动硬盘,为什么我家的电脑不能识别大容量移动存储设备只能识别小的
笔记本m.2接口图片
有欠条没有还款日期钱可要回来吗
男的结婚了能当伴郎吗
四照花的生态习性与病虫害防治
苹果鼠标如何在windows上设置滚轮(苹果鼠标在非苹果电脑上滚轮怎么用)
TED 百度网盘(ted演讲下载 百度网盘)
华为p6顶针怎么用,华为P6U06手机按键背灯的节电功能怎么使用
富士变频器基本参数调试方法
别人借我钱只有转账记录可以起诉吗