电工学习网

 找回密码
 立即注册

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

2013-11-19 08:43| 编辑:电工学习网| 查看: 20612| 评论: 0

冗余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

看过《在PCS7中如何实现冗余CPU与单CPU之间的以太网通讯?》的人还看了以下文章:

发表评论

最新评论

  • PLC输入端和输出端怎么接线
  • 什么是COM端口?PLC中COM端口如何接线?
  • plc控制电动机正反转梯形图
  • 西门子S7-200系列PLC全套接线图
  • PLC十字路口的交通灯控制编程实例
  • plc基础知识指令27个
热点文章

电工学习网 ( )

GMT+8, 2023-3-6 22:53

Powered by © 2011-2022 www.shop-samurai.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

返回顶部