(已结帖)工控PLC擂台第46期--PLC的硬冗余和软冗余 点击:5781 | 回复:19



玻璃的心

    
  • 精华:44帖
  • 求助:2帖
  • 帖子:1258帖 | 5801回
  • 年度积分:0
  • 历史总积分:57768
  • 注册:2010年6月11日
发表于:2011-06-04 21:54:48
楼主

       我们知道,PLC系统中存在着软冗余和硬冗余两种配置,那么请问在什么时候适合用软冗余,什么时候适合用硬冗余,他们各有什么特点。最好能举例说明,或给出相关说明的程序。

如果有例程,相应的PLC品牌不限!回答的最好,解释的最清晰的首先获大奖!



工控PLC擂台每周一期,本期下周末结贴。奖项设置:一等奖1名:50MP,二等奖5名:10MP,三等奖10名:30积分。

MP介绍:gongkongMP即工控币,是中国工控网的用户积分与回馈系统的一个网络虚拟计价单位,类似于大家熟悉的QB,1个MP=1元人民币。

MP有什么用?兑换服务:以1个MP=1元来置换中国工控网的相关服务。 兑换现金:非积分获得的MP可兑换等值现金(满100MP后、用户可通过用户管理后台申请兑换)。



楼主最近还看过



电仪人生

  • 精华:0帖
  • 求助:0帖
  • 帖子:36帖 | 617回
  • 年度积分:0
  • 历史总积分:4586
  • 注册:2009年2月12日
发表于:2011-06-06 08:41:42
1楼

PLC冗余方式分为2种,即软冗余和硬冗余。

配置要求
下面条件必须满足:
软件:STEP 7 和 S7 Fault-Tolerant System 选件
硬件:
一个 S7-400H PLC,包括:
一个机架,UR2-H
两个电源,PS 407 10A
两个容错 CPU (CPU 414-4H 或 CPU 417-4H)
四个同步子模块
两根同步光纤
一个带主动背板总线的 ET 200M 分布式I/O 设备,包括:
两个 IM 153-2
一个数字量输入模块,SM 321 DI 16 x DC24V
一个数字量输出模块,SM 322 DI 16 x DC24V
必要的附件(比如 PROFIBUS 屏蔽电缆)

1.按照硬件安装手册所述,配置S7-400H 的两个子单元。额外要注意的是:通过设置同步子模块的
开关来确定机架号。这一设置只有在CPU 上电并内存复位后才会生效。机架号设置得不正确会导致不能
在线访问CPU 和CPU 工作不正常插入同步子模块后一定要把前盖板上的螺丝拧紧以激活它们。
连接光纤(上面和上面连,下面和下面连),小心放置以免损坏,最好分开不会相互干扰。如果在
启动系统时光纤还没到位,两个CPU 都会把自己当作主站。
2.按照ET200M Distributed I/O Device 手册配置分布式I/O。
3.连接编程设备到作为S7-400H 的主CPU 的CPU0。
4.上电之后会有一个严格的RAM自检。每兆需要大约8 秒。在此期间CPU 无法访问,STOP 灯闪
烁。
5.用模式开关为两个CPU 执行一次内存复位,它会把同步模块上的机架设定读到CPU 的操作系统
中去。
6.按照S7-400 硬件安装手册为每个CPU 独立地调试。装载程序并执行温启:首先是主CPU,然
后是备用CPU。
7.把两个CPU 都放到STOP 位置。
启动S7-400H 的步骤
1.打开“H Project”。硬件配置应该与“配置要求”中的一致
2.打开硬件配置
3.调整硬件配置,比如模块类型,MPI 地址,DP 地址
4.打开“S7 program ”的用户程序。“S7 program ”文件夹只存在于CPU0 里
5.如果必要,修改用户程序并存盘
6.装载用户程序到CPU0
7.用模式开关启动S7-400H PLC ,首先是CPU0 然后是CPU1, 到RUN-P 位置
结果:CPU0 作为主站启动而CPU1 作备用。在备用CPU 链接更新完后,S7-400H 进入了冗余系统
模式并开始执行用户程序。
注意:你也可以使用编程设备启动和停止 S7-400H PLC.
容错系统的故障响应举例
3.1 例1:CPU或电源故障
初始状态:S7-400H 处于冗余系统模式。
1.关掉电源导致CPU0 失败
结果:CPU1 的REDF,IFM1,IFM2 灯亮,CPU1 进入单主模式,用户程序继续运行。
2.恢复电源供电
结果:
CPU0 执行自动的链接和更新
CPU0 进入RUN 模式并运行在备用状态
S7-400H 恢复冗余系统模式
3.2 例2:光纤故障
初始状态:S7-400H 处于冗余系统模式。两个CPU 的模式选择开关都在RUN 或PUN-P。
1.断开两根光纤中的一根
结果:两个 CPU 的REDF,IFM1 或IFM2 灯亮(取决于哪根光纤断开),原来为主的CPU 进入单主
模式,用户程序继续运行。
2.把断开的光纤重新连上
3.重启原来为备用,现在处于停止状态的CPU,比如可以用STEP 7 的“operating status".

西门子公司在这2方面均给出了解决方案。基于S7-400H的硬冗余的可靠性高,但构建系统成本也较高。而基于S7-300或S7-400的软冗余是一种综合考虑提高可靠性和降低成本的折中方案。目前,软冗余系统已经在污水处理、冶金、化工等控制工程中得到了普遍应用。1、 软冗余实现原理
典型的PLC软冗余系统组成案例如图1所示。

在系统运行时2个CPU均启动,但只有主CPU执行控制命令,备用CPU检测主CPU状态,时刻准备接替主CPU继续工作。与主CPU通信的IMl 53—2模块处于激活状态使主CPU能访问I/0模块。当系统发生特定故障时,系统可以实现主备切换,备站接替主站继续运行。这些故障包括:主机架电源、背板总线等故障;CPU故障;Profibus现场总线网络故障;ET200M站的通信接口模块IMl53故障。
PLC软冗余系统要实现软冗余功能,需要存程序中调用冗余软件包的功能模块,其主要包括:初始化冗余系统运行参数的FCl00模块;故障诊断、主备切换的FCl02模块;发送/接收数据的FBl03模块;调用FBl03进行数据同步、分析系统状态的FBl01模块。带有冗余功能的程序结构见图2。
在PLC每个循环执行周期中,主系统先凋用FBl01接收并分析备系统状态,然后执行冗余程序,最后再调用FBl01将需要同步的数据发送到备系统。备系统先调用FBl01接收并分析主系统状态,跳过冗余程序,然后将备系统状态发送到主系统。需注意的是,实现冗余功能的最重要模块FBl01执行时先分析主备系统状态,然后再发送数据(或接收数据)。由于软件是顺序执行,将PLC软冗余系统出现特定故障时,系统通过软件冗余主备切换机制,使备站在经过主备切换时间后接替主站保持系统继续T作,避免系统停止运行。主备切换完成后,备用系统以最后一次完整的同步数据作为基础执行控制任务。PLC软冗余系统主备切换的功能,达到了提高可靠性、降低成本的目的。
但是,由于主备切换时间较长,在主备切换过程中系统暂时失去了控制功能,故不适合实时性要求较高的控制场合。PLC软冗余系统比较适合应用于实时性要求较低的过程控制应用场合。
导致接收到对方故障信息后,对故障处理的滞后。软件顺序执行机制是导致软冗余切换时间较长的一个重要原因。
软冗余程序的编写
软冗余程序需要西门子提供的软冗余软件包及STEP7。在A站的BlockK中插入OB1(主循环程序块)、OB35(定时中断组织块)、OBl00(暖启动调用程序块)、OB80(在主系统与备用系统切换时间超时时,调用该块)、OB82(DP—Slave ET200站上的IMl53-2模块出错报警,调用该功能块)、OB83(DP从站的接口模块与主站链接断开或链接重新建立时调用该块)、OB85(程序运行出错或DP从站连接失败调用该块)、OB86(主从站通讯出错调用该块)、OB87(通讯失败调用该块)、OB122(外围设备访问出错调用该块)、OB121等组织块,并对其中的OBl00、OB35、OB86进行编程。
首先,用户需要在初始化程序中(OB100)定义冗余部分的数据区,该数据区可以包括:一个过程映象区(process image area),一个定时器区(IEC timer area),一个计数器区(IECcounter area),位地址区(memory ad-dress area)和一个数据块区(darablock area),S7-300同步的最大数据量为8 kBytes。
使用的是OB35的默认属性,即每100ms中断触发一次,可以根据实际的需要在CPU属性中修改中断的时间间隔。在OB35里调用FB101S‘WR_ZYK’功能块,FBl01块中封装了冗余功能的程序段,实现冗余功能。调用FB101时,你可以在线地读出RETURN_VAL参数的数值,如果为o,说明冗余链接正常。如果为8015说明数据同步的连接不成功,原因是CP342—5之间的FDL链接建立的不正确或物理链路不通,或者是FCl00的VERB_ID参数与NETPRO中的链接ID号不一致。当执行‘SWR_START’程序块时,系统分配这些数据区,不能用S7的定时器和计数器,只能使用IEC标准的定时器和计数器。
OB35中的程序段也可以在OB1中实现,只是不使用中断的方式,而使用主循环的万式。
除去冗余段外的程序大致如下:
CALL FB 101,DB5
DB_WORK_NO:=DB1
CALL_POSITON:=TRUE
RETURN_VAL:=MW6
EXT_INFO:=MW8
上段程序中调用了FBl01,使用了数据块DB5。
UDB5.DBX9.1
SPB MNEXT
上段程序可以在DB5中得到控制字(DBWl0)和状态字DBW8的信息。分析状态字中的信息,如果当前站为备用系统,则跳过冗余程序段。
在SPB MNEXT 与跳至的MNEXT程序块之间加入实际需要的逻辑块,此处的逻辑块就属于冗余程序段。

朱恩清

  • 精华:1帖
  • 求助:0帖
  • 帖子:27帖 | 1511回
  • 年度积分:0
  • 历史总积分:4570
  • 注册:2004年6月15日
发表于:2011-06-06 08:52:22
2楼

※      建议用铠装型总线电缆代替PROFIBUS 屏蔽电缆,可靠性更高!

         铠装双绞屏蔽型电缆 ASTP-120Ω(for RS485 & CAN) one pair 18 AWG ,电缆外径12.3mm左右,黑色护套。可用于干扰严重、鼠害频繁以及有防雷、防爆要求的场所。使用时,建议铠装层两端接地,最内层屏蔽一端接地!

陌上尘

  • 精华:1帖
  • 求助:11帖
  • 帖子:20帖 | 939回
  • 年度积分:0
  • 历史总积分:5186
  • 注册:2010年5月12日
发表于:2011-06-06 16:20:52
3楼

网上好多冗余的资料,S7300支持软冗余,S7-400支持软冗余 应冗余

周勇学工控

  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 161回
  • 年度积分:0
  • 历史总积分:676
  • 注册:2010年6月19日
发表于:2011-06-06 17:44:31
4楼
好文章!!!!!!!!!

DewellHuang

  • 精华:0帖
  • 求助:0帖
  • 帖子:17帖 | 131回
  • 年度积分:0
  • 历史总积分:4707
  • 注册:2011年6月18日
发表于:2011-06-26 15:08:35
5楼

冗余技术是提高系统可靠性的有效方法。对于PLC而言,硬冗余一般用在底层设备,软冗余一般用在系统的中上层软件设计中。

jiaoanpeng

  • 精华:28帖
  • 求助:1帖
  • 帖子:327帖 | 15621回
  • 年度积分:0
  • 历史总积分:78592
  • 注册:2006年7月25日
发表于:2011-07-17 16:13:57
6楼

所谓的冗余实际上就是浪费,浪费了资源、浪费了设备,为什么要冗余呢,有可能是对系统本身性能的疑虑,在就是所要控制的设备危险,如果控制失灵要造成很大损失甚至出现事故,这就需要控制中设计多重措施来保证装置在负责的情况下都不会发生异常停车或者失去控制。

一般的小型PLC都设置了自动和手动两套系统进行切换,可以理解为是两种系统的冗余措施,当硬件PLC发生故障时,操作人员通过面板按钮或者控制器来进行操作,不至于因PLC系统的故障影响现场工艺,或者通过面板的硬手动来实现装置的紧急停车或者继续运行。这种方法是应用最为广泛的一种安全措施,比PLC系统本身的冗余投资少、节省空间和复杂程度,也易于处理各种故障。PLC系统与面板控制有一个贴换连锁,通过其功能实现系统的无扰动控制。

再者就是对PLC系统的程序实行多重备份,在上位机通过多台联网实现数据共享和控制,以此来实现上位机控制系统的冗余功能和程序的备份安全,在一台操作系统出现故障时可以使用别的控制站进行操作,不影响生产,当PLC系统由于故障发生程序丢失或者控制模块出现故障时其拷贝的程序能够迅速的进行复位或者安装,减少系统故障修复时间。

至于纯粹的PLC系统的冗余构建投资较大,工程实现也较复杂,而且因为PLC系统控制工艺较为灵活,所有使用的较少,偶厂对于原油罐区输送生产装置的变频泵其安全运行质量要求很高,为了防止PLC系统突然死机造成生产装置缺油停车,实现了变频控制的冗余配置,实质上就是一个备用模块,其模块在另一套不相干的PLC系统中,正常运行时使用本系统的PLC控制,当出现死机或者PLC系统掉电、停电、检修时,可以自动或者手动的切换到另一套PLC系统的模块中,其实在是用了这套PLC系统的一个模块,但是实现了冗余控制的功能(确保要控制的设备安全运行性能),减少了投资,是一个不错的办法。

sophymei

  • 精华:0帖
  • 求助:8帖
  • 帖子:17帖 | 920回
  • 年度积分:0
  • 历史总积分:5514
  • 注册:2008年11月24日
发表于:2011-07-18 08:02:56
7楼
學習了>>>>>>>>

我爱我家

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 541回
  • 年度积分:0
  • 历史总积分:1036
  • 注册:2003年5月06日
发表于:2011-07-21 23:57:49
8楼

不管硬冗余或软冗余在很多应用场合,根本就用不上,如输煤,化水。。。。。。这样的场合,试问,CPU出问题的几率有多大,而且这种场合本身就是间断性生产,根本用不着热备个CPU。

除非是连续性生产,停机会造成很大损失的场合,冗余CPU会有一些作用。

在很多现场见过一些比较差劲的厂家成套的东西冗余根本就投不上。

冗余为什么能在很多不需要的场合大兴其道,其实是企业内部蛀虫和以忽悠为生的二鬼子洋买办结合的产物!

 

我爱我家

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 541回
  • 年度积分:0
  • 历史总积分:1036
  • 注册:2003年5月06日
发表于:2011-07-22 00:01:31
9楼
我现在就在一个现场调一套400H的系统!

my_gongkong

  • 精华:0帖
  • 求助:0帖
  • 帖子:28帖 | 404回
  • 年度积分:0
  • 历史总积分:1589
  • 注册:2011年5月27日
发表于:2011-07-24 15:48:49
10楼

西门子软冗余系统在吴江净水厂的应用

一、项目简介

        吴江净水厂为吴江市的主力水厂,生产能力30万m3/d。承担着为吴江市城区和大部分乡镇的供水任务。水厂的工艺流程如下图所示:   
  

      
  由图可见,吴江净水厂整个水处理工艺成熟可靠,技术先进。为了保证水厂的正常运行,同时又不至于大幅增加投资,须采用一套稳定可靠、性价比较高的控制系统。经反复论证,该厂自动控制系统采用了SIEMENS公司的S7-300PLC为平台的软冗余控制系统,既控制了水厂的投资,又大大提高了整个系统的可靠性。

二、软冗余系统的特点

        吴江净水厂自控系统是利用SIEMENS公司成熟的软冗余技术,结合最新推出的新一代S7-300硬件产品所建立的可靠性高、模块化、可扩充能力及容错性较好的控制系统。不但使用了最新的硬件,同时在网络、硬件、软件等各方面进行了冗余设计。

        厂区自控系统共分为五个PLC主站:取水房、加矾间、冲洗房、加氯间、送水房。均采用软冗余PLC结构,同时中央控制室采用C/S结构,采用两台I/O服务器(互为备用)实现现场数据的采集功能,一台数据库服务器用于存放生产数据。客户机可通过I/O服务器对全厂的生产情况进行监控。

        上位机监控软件采用了WINCC6.0,其采用了当前最先进的技术,组态功能强大,画面动态连接多样,同时具有C/VBA脚本编辑功能,可通过脚本实现更加灵活强大的功能。体现了良好的通用性、灵活性。尤其在与SIEMENS PLC组成监控系统时,优点尤为明显,通讯配置方便,性能稳定,同时内置了对SIEMENS PLC软冗余、硬冗余的支持,仅须进行简单的设置而无须编写脚本即可实现与冗余PLC的通讯切换。

        整个厂区自控系统架构清晰明了,同时实现了网络、PLC、HMI系统的冗余功能,大大提高了系统的可靠性。

        PLC冗余:系统硬件采用了SIEMENS公司的S7-300系列PLC,每站皆采用双CPU、双以太网通讯模块,下接冗余的ET200M子站,实现了PLC处理器冗余、背板总线冗余、PROFIBUS现场总线网络冗余(包括通讯接口、总线接头、总线电缆的冗余)、ET200M站的通讯接口模块IM153-2冗余。

        电源冗余:该控制系统中,每PLC主站皆采用双SITOP电源(6EP1 336-2BA0),实现了电源冗余,同时双电源可自动平衡负载电流,提高了系统供电的可靠性。

         网络冗余:采用OSM连接环形光纤100兆工业以太网进行通讯。当网络上某一段出现故障时仍能正常通信。

        上位机监控系统冗余:监控系统为C/S结构,采用了两台数据采集服务器进行数据采集,互为备用,当主数据采集服务器发生故障时,监控计算机可自动切换连接到备用数据采集服务器上,继续对生产过程进行监控。

my_gongkong

  • 精华:0帖
  • 求助:0帖
  • 帖子:28帖 | 404回
  • 年度积分:0
  • 历史总积分:1589
  • 注册:2011年5月27日
发表于:2011-07-24 15:51:56
11楼
三、软冗余系统介绍

        1.S7-300软冗余系统构成

        软件冗余是Siemens实现冗余功能的一种低成本解决方案,可以应用于对主备系统切换时间要求不高的控制系统中。

        软冗余系统的构成如下图示:  
 

        
        2.软冗余系统的运行方式介绍

        软冗余系统由A和B两套PLC控制系统组成。开始时,A系统为主,B系统为备用,当主系统A中的任何一个组件出错,控制任务会自动切换到备用系统B当中执行,这时,B系统为主,A系统为备用,这种切换过程是包括电源、CPU、通讯电缆和IM153接口模块的整体切换。系统运行过程中,即使没有任何组件出错,操作人员也可以通过设定控制字,实现手动的主备系统切换,在软冗余系统进行工作时,A、B控制系统(处理器,通讯、I/O)独立运行,由主系统的PLC掌握对ET200从站中的I/O控制权。A、B系统中的PLC程序由非冗余(non-duplicated)用户程序段和冗余(redundant backup)用户程序段组成,主系统PLC执行全部的用户程序,备用系统PLC只执行非冗余用户程序段,而跳过冗余用户程序段。

        软冗余系统中的主备系统的切换时间  = 故障诊断检测时间 + 同步数据传输时间 + DP从站切换时间,如果CPU的故障是停机或断电,则故障诊断为大约100-1000毫秒,同步数据所需的时间大约为200-300ms,DP从站的切换时间在100ms左右。一般根据经验,系统切换的时间一般小于1S,用于水厂等实时性要求不高的场合已经足够了。
 

 
        数据同步所需要的时间取决于同步数据量的大小和同步所采用的网络方式,MPI方式周期最长,PROFIBUS方式适中,Ethernet网方式最快。应尽量采用Ethernet网通讯方式,数据同步时间缩短,主备PLC之间的切换也较快。

        3.在软冗余系统调试中,须注意任务的规划,将冗余部分的程序与非冗余程序分开,同时应进行数据区的规划,将共享数据区域与其它应用区域分开。

四、结束语

        整个系统于2004年年底投入生产运行,获得了用户的好评。在项目进行当中,通过对西门子软冗余系统的调试使用,我们认为其相对于硬冗余优点如下:

        1.价格低、可靠性好。适用于水厂等比较重要但控制实时性要求不高的场合。

        2.软冗余的应用方便、灵活,可使用两个不同型号的CPU进行软冗余,可对部分I/O进行冗余而对不太重要的设备由一台PLC进行控制,方便灵活,适用于改造项目,可大大节省投资。

花开_花落

  • 精华:1帖
  • 求助:1帖
  • 帖子:65帖 | 1155回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2011-07-24 15:57:03
12楼

PLC软冗余系统性能分析

 

在工业自动化系统中,为了使系统长期稳定可靠地运行,大量选用可编程逻辑控制器(PLC)作为控制器,甚至在此基础上组建冗余系统进一步提高系统的可靠性。冗余的分类方式很多。目前,采用的PLC冗余方式分为2种,即软冗余和硬冗余。西门子公司在这2方面均给出了解决方案。基于S7-400H的硬冗余的可靠性高,但构建系统成本也较高。而基于S7-300或S7-400的软冗余是一种综合考虑提高可靠性和降低成本的折中方案。目前,软冗余系统已经在污水处理、冶金、化工等控制工程中得到了普遍应用。但目前对于软冗余的性能,仍缺乏系统的研究。文中首先叙述西门子PLC软冗余系统的实现原理,然后重点分析主备切换时间和数据同步时间,以便为类似控制系统设计提供参考依据。
   
    1、 软冗余实现原理
   
    典型的PLC软冗余系统组成案例如图1所示。


图1 典型的PLC软冗余系统组成

    在系统运行时2个CPU均启动,但只有主CPU执行控制命令,备用CPU检测主CPU状态,时刻准备接替主CPU继续工作。与主CPU通信的IMl 53—2模块处于激活状态使主CPU能访问I/0模块。当系统发生特定故障时,系统可以实现主备切换,备站接替主站继续运行。这些故障包括:主机架电源、背板总线等故障;CPU故障;Profibus现场总线网络故障;ET200M站的通信接口模块IMl53故障。
   
    PLC软冗余系统要实现软冗余功能,需要存程序中调用冗余软件包的功能模块,其主要包括:初始化冗余系统运行参数的FCl00模块;故障诊断、主备切换的FCl02模块;发送/接收数据的FBl03模块;调用FBl03进行数据同步、分析系统状态的FBl01模块。带有冗余功能的程序结构见图2。


图2 带有冗余功能的程序结构

    在PLC每个循环执行周期中,主系统先凋用FBl01接收并分析备系统状态,然后执行冗余程序,最后再调用FBl01将需要同步的数据发送到备系统。备系统先调用FBl01接收并分析主系统状态,跳过冗余程序,然后将备系统状态发送到主系统。需注意的是,实现冗余功能的最重要模块FBl01执行时先分析主备系统状态,然后再发送数据(或接收数据)。由于软件是顺序执行,将导致接收到对方故障信息后,对故障处理的滞后。软件顺序执行机制是导致软冗余切换时间较长的一个重要原因。
   
    2、主备切换时间分析

   
    主备切换时间是指系统发生故障到备站接替主站正常丁作所需要的时间。
   
    2.1 主CPU或电源模块故障分析
   
    当前2种故障发生时,ET200M站的主通信接口模块IMl53与主CPU失去连接。自动在主备通信接口模块IM]53之间实现切换。同时备CPU在向主CPU发送备站状态时将检测到同步线数据传输错误,继而主动切换成主CPU。
   
    如果主CPU故障出现在备CPU调用FBl01执行发送功能之前,那么接下来备CPU在调用发送功能时就能检测到与主CPU通信连接故障,并在下一个周期调用接收功能时备CPU切换成主CPU。此时主备切换时间t最短。
    
       (1)

    式中t为主备切换时间;Tcyc为PLC循环扫描周期;t(FB101)为冗余功能块FBl01执行时间。
   
    如果主CPU故障发生时备CPU刚调用FB101执行完发送功能,那么备CPU要在下一个周期调用发送功能时才能检测到与主CPU通信连接故障,并且还要等待调用接收功能时备CPU切换成主CPU。此时主备切换时间t最长。

      (2)
   
    2.2 Profibus或ET200M主站故障分析
   
    当后2种故障发生时,发生故障的ET200M从站的备IMl53将检测到主IMl53故障,自动将自己切换为主IMl53。主CPU将因为与故障IMl53失去连接而引发OB86(故障诊断)中断,并在中断中调用诊断模块FCl02完成所有从站的切换,并将自己置为备用。然后,主CPU将故障信息发送到备CPU。备CPU收到故障信息后将自己切换成主CPU。这时的切换时间为

         (3)<

花开_花落

  • 精华:1帖
  • 求助:1帖
  • 帖子:65帖 | 1155回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2011-07-24 15:59:17
13楼

   式中tR为OB86中断响应时间,CPU315—2DP为1 ms;tE为OB86执行时问;ts为故障状态发送时间;tD为数据接收完毕到备站切换成主站的时间间隔。

因为OB86中只调用FCl02诊断模块,所以tE由FCl02的执行时间决定。为分析OB86中调用FCl02时FCl02的执行顺序,对FCl02进行了适当的修改以便采集数据。这些修改主要包括:在FCl02的开始加入采集状态程序段;在跳转指令处采集跳转条件。在手动触发一些故障之后,对得到的数据进行分析便得到了FCl02的执行顺序。在各个代码段两端插入读系统时间功能块,对FCl02的程序执行时间进行分段测量。结果如表1所示(表中,为SFC58执行时间;t(2ss)8为2次SFC58执行时间;t’为其余时间;t(PC102)为FCl02总执行时间)。
    
    测量结果中FCl02执行时间并不等于各个时间段之和,这是因为读系统时间功能块的测量精度只能达到l ms。但从表中仍不难看出FCl02执行时间主要集中在调用系统功能SFC58向ET200M写数据(控制从站切换)的操作上,SFC58的调用次数等于ET200M从站个数,因此可以近似得出tE=3 ms×ET200M从站个数。
   
    式(3)中ts与主CPU的OB86中断产生的时刻有很大关系。
   
    如果主CPU在调用FB101执行发送功能之前产生OB86中断,则在发送数据时主CPU直接把故障状态发送给备站,在这种情况下ts最短,为发送一次数据所用时间tt,即

 

         (4)
   
    若主CPU调用FBl01执行完发送功能时产生OB86中断,则主CPU要把先前数据发送完毕才能发送故障状态到备站。在这种情况下,由于先前数据发送完毕的时刻不同,ts也会得到不同的值。
   
    a.若先前数据发送完毕在主CPU调州FB 101执行发送功能之前,将立即发送主站的状态,则

         (5)
   
    b.若先前数据发送完毕在主CPU执行完发送功能之后,则要等到下个周期调用发送功能时才能发送主站的故障状态。此时,ts是最长的。

        (6)
   
    式(3)中tD与备站接收完故障状态的时刻有密切关系。
   
    若数据接收完成是在备CPU调用FBl01执行接收功能之前,则备CPU将马上得到主CPU状态,并在调用发送功能时备CPU切换成主CPU。此时tD最小,仅为一个FBl01的执行时间,即

        (7)
   
    若数据接收完成是在备CPU调用FBl01执行接收功能之后,则备CPU要等到下个周期调用接收功能时才能获得主站的状态,并在调用发送功能时切换成主CPU。此时tD是最大的。

         (8)
   
    由以上分析可知,在以下2种情况将得到这2类故障主备CPU切换时间的极限值。
   
    a.如果故障发生后主CPU马上发送故障状态,并且备CPU接收完数据是在备CPU调用接收功能之前,主备切换时间是最短的。

         (9)
   
    b.如果故障发生时主CPU已经开始发送数据。并且此数据发送完毕是在主CPU调用完发送数据

花开_花落

  • 精华:1帖
  • 求助:1帖
  • 帖子:65帖 | 1155回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2011-07-24 16:02:14
14楼
       (10)
   
    以上所涉及的时间中,tE、t.和k所占比重最大,其余时问经测量均约为1 ms。如果要减小主备切换时间,必须减小tE、t,和k。要减小tE就要减少ET200M从站数量,即在满足要求的情况下减少I/0数量。减少t。最好的方法是选择主站与备站之间较快的数据同步通信方式。如Profibus总线方式比西门子PLC自带的MPI方式能在较短的时间内发送更多个字节数据。但前一种方式需要另外配置通信模块。k为PLC循环扫描周期,与用户程序长度有关。典型的中等规模的PLC控制系统,经计算主备切换时间的极限值范围约为150---500 ms。
   
    3、数据同步时间分析
   
    在PLC软冗余系统中,要使主系统发生故障时,备系统接替主系统继续工作,则系统在正常运行时,主控制器必须把需要同步的数据发送给备控制器,从而当故障发生时能够实现无扰切换。
   
    数据同步时间是指系统正常运行时,主站将同步数据发送至备站所需时间。西门子软冗余系统的数据同步是根据数据量的大小通过定时中断方式分多次进行,单次同步的数据量相同。主CPU在同步开始时将所有需要同步的数据保存起来,然后每次发送相同长度的数据块到备CPU。备CPU每接收到一个数据块就将其分配到对应的地址空间中去。这种方式将时间平均分配到了各个执行周期,避免了单次发送所有数据消耗过多时间。但是这也导致了备站得到的数据将滞后手主站。
   
    通过分析可知,数据同步时间为

        (11)
   
    其中,LD为同步数据量。它为PLC输出过程映像区、位地址区所有冗余数据块、定时器和计数器的背景数据块和非冗余数据块长度之和。N为1次数据传送量,与数据同步方式有关。如Profibus总线方式可在1.5 Mbit/s传输速率下。每60 ms传送240个字节数据。而西门子PLC自带的MPI方式只能在187.5 Kbit/s传输速率下,每152 ms传送76个字节数据。行为传送1次数据程序执行周期数,即

         (12)

    式中td为传送1次数据的时间,与数据同步方式有关;Tob35为定时中断间隔时间。
   
    为减小数据同步时间,应尽量减少同步数据量LD,选择较快的数据同步方式以增加1次数据传送量N和减少传送1次数据时间td。典型的中等规模PLC控制系统,数据同步时间可能超过l s。
   
    4、结论
   
    综上所述,PLC软冗余系统出现特定故障时,系统通过软件冗余主备切换机制,使备站在经过主备切换时间后接替主站保持系统继续T作,避免系统停止运行。主备切换完成后,备用系统以最后一次完整的同步数据作为基础执行控制任务。PLC软冗余系统主备切换的功能,达到了提高可靠性、降低成本的目的。
   
    但是,由于主备切换时间较长,在主备切换过程中系统暂时失去了控制功能,故不适合实时性要求较高的控制场合。PLC软冗余系统比较适合应用于实时性要求较低的过程控制应用场合。

zxjjynl

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 561回
  • 年度积分:0
  • 历史总积分:2626
  • 注册:2011年3月06日
发表于:2011-07-24 16:05:32
15楼
PLC软冗余系统在电气保护中的应用

 

本文介绍了PLC软冗余系统在电气保护中的应用,系统提高了控制的可靠性,给发电机组的安全、经济运行提供保障,同时实现减员增效的目的。

1 引言
此系统的作用是当机组在启停和运行过程中发生危机设备和人身安全的故障时,自动采取保护和联锁,防止事故的产生和避免事故扩大,从而保证机组的正常启停和安全运行。通过对设备工作状态和机组运行参数的严密监视,发生异常时,即使发出报警信号,必要时自动启动或者切除某些设备或者系统,使机组维持原负荷运行或减负荷运行。
一般旧的系统使用中只有手动操作方式,难以实现远程监控,给操作人员带来一定的麻烦与危险,也造成出现报警或危险等情况不能及时处理的现象。升压站多为人工抄表,事故报警信号不能远传,必须有人值守,而且发生报警后,由于数据信号较多,很难及时、准确的判断出事故的原因,影响事故的处理速度。当发生重大事故而危及机组设备时,不能停止机组(或一部分)运行,使事故进一步扩大,造成严重后果,所以急需使用PLC对升压站进行改造。
而由于系统的要求的高可靠性,必须使用冗余系统,而使用西门子的S7-400的硬冗余会极大的提高成本。本系统选用西门子S7-300使用软冗余来达到日的,同时降低成本。
2 控制系统构成
软冗余系统由A和B两套PLC控制系统组成。开始时,A系统为主,B系统为备用,当主系统A中的任何一个组件出错,控制任务会自动切换到备用系统B当中执行,这时,B系统为主,A系统为备用,这种切换过程是包括电源、CPU、通讯电缆和IMl53接口模块的整体切换。系统运行过程中,即使没有任何组件山错,操作人员也可以通过设定控制字,实现手动的主备系统切换,这种手动切换过程,对于控制系统的软硬件调整,更换,扩容非常有用,即AlteringCon-figuration and Application Programin RUNMode。
根据保护系统所需的输入输出点数、节点容量、系统功能等要求,使用两个西门子CPU315-2DP做软冗余CPU,使用CP5611连接上位机与PLC,上位机使用WINCC做HMl人机界面。
两块CPU之间需要使用CP342-5进行实时的数据交换,通过ET200M扩展从站。特别应当注意的是软冗余系统应当使用有源总线模板的导轨及有源总线模板。
网络结构中包括了4条链路:
用于上位机编程和监控的MPI链路;
A站与ET200从站Master linePBOFIBUS链路;
B站与ET200从站Reserve LinePROFIBUS链路;
A站和B站之间进行数据同步的Svnchronizalion Line PROFIBUS链路。
网络组态图如图1所示。



3 软冗余程序的编写
软冗余程序需要西门子提供的软冗余软件包及STEP7。在A站的BlockK中插入OB1(主循环程序块)、OB35(定时中断组织块)、OBl00(暖启动调用程序块)、OB80(在主系统与备用系统切换时间超时时,调用该块)、OB82(DP—Slave ET200站上的IMl53-2模块出错报警,调用该功能块)、OB83(DP从站的接口模块与主站链接断开或链接重新建立时调用该块)、OB85(程序运行出错或DP从站连接失败调用该块)、OB86(主从站通讯出错调用该块)、OB87(通讯失败调用该块)、OB122(外围设备访问出错调用该块)、OB121等组织块,并对其中的OBl00、OB35、OB86进行编程。
首先,用户需要在初始化程序中(OB100)定义冗余部分的数据区,该数据区可以包括:一个过程映象区(process image area),一个定时器区(IEC timer area),一个计数器区(IECcounter area),位地址区(memory ad-dress area)和一个数据块区(darablock area),S7-300同步的最大数据量为8 kBytes。
使用的是OB35的默认属性,即每100ms中断触发一次,可以根据实际的需要在CPU属性中修改中断的时间间隔。在OB35里调用FB101S‘WR_ZYK’功能块,FBl01块中封装了冗余功能的程序段,实现冗余功能。调用FB101时,你可以在线地读出RETURN_VAL参数的数值,如果为o,说明冗余链接正常。如果为8015说明数据同步的连接不成功,原因是CP342—5之间的FDL链接建立的不正确或物理链路不通,或者是FCl00的VERB_ID参数与NETPRO中的链接ID号不一致。当执行‘SWR_START’程序块时,系统分配这些数据区,不能用S7的定时器和计数器,只能使用IEC标准的定时器和计数器。
OB35中的程序段也可以在OB1中实现,只是不使用中断的方式,而使用主循环的万式。
除去冗余段外的程序大致如下:
CALL FB 101,DB5
DB_WORK_NO:=DB1
CALL_POSITON:=TRUE
RETURN_VAL:=MW6
EXT_INFO:=MW8
上段程序中调用了FBl01,使用了数据块DB5。
UDB5.DBX9.1
SPB MNEXT
上段程序可以在DB5中得到控制字(DBWl0)和状态字DBW8的信息。分析状态字中的信息,如果当前站为备用系统,则跳过冗余程序段。
在SPB MNEXT 与跳至的MNEXT程序块之间加入实际需要的逻辑块,此处的逻辑块就属于冗余程序段。
4 系统的功能
结构简单可靠、组件式插接,便于安装维护。
双电源供电、双CPU冗余,确保稳定工作。
上位机监控,具有报表打印、报警查询、状态监视、保护联锁试验记录等多种功能。
监控界面如图2所示。


5 结束语
系统结构合理、易扩展、可靠性高,能对所有输入输出点进行状态记录,实现保护连锁、动作记录数据管理、状态监视、系统组态等功能。对于提高机组自动化水平,减轻运行人员负担,增加机组的可靠性具有重大意义。

hjcan

  • 精华:1帖
  • 求助:0帖
  • 帖子:13帖 | 292回
  • 年度积分:0
  • 历史总积分:2940
  • 注册:2011年2月21日
发表于:2011-07-24 16:13:35
16楼

PLC软冗余系统在电气保护中的应用



 本文介绍了PLC软冗余在电气保护中的应用,系统提高了控制的可靠性,给发电机组的安全、经济运行提供保障,同时实现减员增效的目的。

1 引言

此系统的作用是当机组在启停和运行过程中发生危机设备和人身安全的故障是,自动采用保护和联锁,防止事故的产生和避免事故扩大,从而保证机组的正常启停和安全运行。通过对设备工作状态和机组运行参数的严密监视,发生异常十,即使发出警报信号,必要时自动启动或者切除某些设备或者系统,使机组维持原负荷运行或减负荷运行。

一般旧的系统使用中只有手动操作方式,难以实现远程监控,给操作人员带来一定的麻烦与危险,也造成出现报警或危险等情况不能及时处理的现象。升压站多为人工抄表,事故报警信号不能远传必须有人值守,而且发生报警后,由于数据信号较多,很难及时、准确的判断出事故的原因,影响事故的处理速度。当发生重大事故而危及机组设备时不能停止机组(或一部分)运行,使事故进一步扩大,造成严重后果,所以急需使用PLC对升压站进行改造。

而由于系统的饿要求的高可靠性,必须使用冗余系统,而使用西门子S7-400的硬冗余回极大的提高成本。本系统选用西门子S7-300使用软冗余来达到目的,同时降低成本。

2 控制系统构成

软冗余系统由A和B两套PLC控制系统组成。开始时,A系统为主,B系统为备用,当主系统A中的任何一个组件出错,控制任务会自动切换到备用系统B当中执行,这时,B系统为主,A系统为备用,这种切换过程是包括电源、CPU、通讯电缆和IM153接口模块的整体切换。系统运行过程中,即使没有任何组件出错,操作人员也可以通过设定控制字,实现手动的主备系统切换,这种手动切换过程,对于控制系统的软硬件调整,更换,扩容非常有用,即Altering Gon-figuration and Application Programin RUN Mode。

根据保护系统所需的输入输出点数、节点容量、系统功能要求,使用两个西门子CPU315-2DP做软冗余CPU,使用CP5611连接上位机与PLC,上位机使用WINCC做HMI人机界面。

两快CPU之间需要使用CP342-5进行实时的数据交换,通过ET200M扩展从站。特别应当注意的是软冗余系统应当使用有源总线模板的导轨及有源总线模板。

网络结构中也包括了4条链路:

用于上位机编程和监控的MPI链路;

A站和与ET200从站master LinePROFIBUS链路;

B站与ET200从站Reserve LinePROFIBUS链路;

A站与B站之间进行数据同步的Synchronization Line PROFIBUS链路。

3 软冗余程序的编写

软冗余程序需要西门子提供的软冗余软件包及STEP7。在A站的BLock中插入OB1(主循环程序块)、OB35(定时中断组织块)、OB100(暖启动调用程序块)、OB80(在主系统与备用系统切换时间超时时,调用该块)、OB82(DP-Slave ET200站上的IM153-2模块出错报警,调用该功能块)、OB83(DP从站的接口模块与主站链接断开或链接重新建立时调用该块)、OB85(程序运行出错或DP从站链接失败调用该块)、OB86(主从站通讯出错调用该块)、OB87(通讯失败调用该块)、OB122(外围设备访问出错调用该块)、OB121等组织块,并对其中的OB100、OB35、OB86进行编程。

首先,用户需要在初始化程序中(OB100)定义冗余部分的数据区,该数据区可以包括:一个过程映象区(procese image area),一个定时器区(IEC timer area),一个计数器区(IEC counter area),位地址区(memory ad-dress area),和一个数据块区(datablock area),S7-300同步的最大数据量为8KBytes。

使用的是OB35的默认属性,即每100ms中断触发一次,可以根据实际的需要在CPU属性中修改中断的时间间隔。在OB35里调用FB101S‘WR_ZYK’功能块,FB101块中封装了冗余功能的程序段,实现冗余功能.调用FB101时,你可以在线的读出RETURN_VAL参数的数值,如果为0,说明冗余链接正常.如果为8015说明数据同步的链接不成功,原因是CP342-5之间的FDL链接建立的不正确或物理链接不通,或是FC100的VERB_ID参数与NETPRO中的链接ID号不一致.当执行‘SWR_START’程序块时,系统分配这些数据区,不能使用S7的定时器和计数器.

OB35中的程序段也可以在OBI中实现,知识比使用中断的方式,而使用助循环的方式.除去冗余段外的程序大致如下:CALL FB M101,DB5

DB_WORK_NO:=DB1

CALL_POSITON:=TRUE

RETURN_VAL:=MW6

EXT_INFO:=MW8

上段程序中调用了HB101,使用了数据块OB5.

UDB5.DBX9.1

SPB MNEXT

上段程序可以在DB5中得到控制字(OBW10)和状态字DBW8的信息.分析状态字中的信息,如果当前站为备用系统,则跳过冗余程序段.

在SPB MNEXT 与跳至的MNEXT程序块之间加入实际需要的逻辑块,此处的逻辑块就属于冗余程序段.

hjcan

  • 精华:1帖
  • 求助:0帖
  • 帖子:13帖 | 292回
  • 年度积分:0
  • 历史总积分:2940
  • 注册:2011年2月21日
发表于:2011-07-24 16:26:03
17楼
4 系统的功能

结构简单可靠、组件式插接,便于安装维护。

双电源供电,双CPU冗余,确保稳定工作。

上位机监控,具有报表打印、报警查询、状态监视、保护连锁实验记录等多种功能。

5 结束语

系统结构合理、易扩展、可靠性高、能对所有输入输出点进行状态记录,实现保护连锁、动作记录数据管理、状态监视、系统组态等功能。对于提高机组自动化水平,减轻运行人员负担,增加机组的可靠性具有重大意义。

玻璃的心

  • 精华:30帖
  • 求助:2帖
  • 帖子:962帖 | 5801回
  • 年度积分:0
  • 历史总积分:61250
  • 注册:2010年6月11日
发表于:2011-07-26 23:05:23
18楼
一等奖1名,50MP获得者:
电仪人生                      jy7898818


二等奖5名,10MP获得者:
jiaoanpeng           jiaoanpeng
my_gongkong     my_gongkong
花开_花落             the_wise
zxjjynl                     zxjjynl
DewellHuang      DewellHuang

三等奖2名,30积分获得者:
hjcan                     hjcan
我爱我家               yangxuechaohx

玻璃的心

  • 精华:30帖
  • 求助:2帖
  • 帖子:962帖 | 5801回
  • 年度积分:0
  • 历史总积分:61250
  • 注册:2010年6月11日
发表于:2011-07-26 23:06:30
19楼
本期擂台到此为止,欢迎大家继续参与我们以后的各期擂台!

热门招聘
相关主题

官方公众号

智造工程师