PLC软冗余指南
PLC冗余
PLC冗余在工业自动化系统中大量选用可编程逻辑控制器(PLC)作为控制器,随着技术的发展又组建冗余系统进一步提高系统的可靠性,在高风险(包括金融风险、行政风险、管理风险以及危及生命安全的风险)行业应用比较广泛,如:金融领域、核安全领域、航空领域、煤矿等领域。
目前冗余的分类方式很多,而采用PLC冗余方式的有两种,即软冗余和硬亢余。
西门子公司在软、硬冗余两方面均给出了解决方案。
而基于硬冗余的可靠性高,但构建系统成本也较高。
而基于S7300或S7400的软冗余是一种成本低又能提高可靠性的方案。
目前,软冗余系统已经在冶金、交通、电力、化工、污水处理等工业控制工程中得到了较广泛的应用。
但是对于软冗余的性能仍没有进行系统的研究。
硬冗余系统的冗余结构确保了任何时候的系统可靠性,例如所有的重要部件都是冗余配置。
这包括了冗余的CPU、供电模件和用于冗余CPU通信的同步模块。
根据特定的自动化控制过程需要,还可以配置冗余客户服务器、冗余通讯介质、冗余接口模件IM153-2等。
S7-300只能实现软冗余(软件冗余),而不能实现像400那样实现硬件冗余。
软冗余的特点:1、软冗余需要专门的软件包;2、对于实现冗余功能的PLC,可以是300,也可以是400,或者300与400之间。
3、软冗余需要对两台PLC都需要编程,调用专门的功能块;4、软冗余的切换时间为秒级,即当一台PLC发生故障,要让备用的PLC来担当前一台PLC的任务这么一个过渡过程需要1S以上的时间。
因此软冗余不适用于对安全要求极高的场合。
5、软冗余的最大好处就是便宜;最大坏处就是实现麻烦。
软冗余和硬冗余的异同:共同点1、冗余功能相同,做到冗余的部分包括:电源模板、CPU、PROFIBUS-DP 网络2、结构差不多,都是利用PROFIBUS-DP网络,使用IM153-2实现信号模板的公用功能。
(利用IM153-2做网络切换)IM153-2是远程I/O接口模板,是ET200M系列产品,后面只能挂S7-300信号模板,这不影响使用,只要挂在DP网络下,无论是S7-300还是S7-400都能直接编程使用。
西门子300PLC 软冗余的实现,详细步骤截图
主要硬件:(注意冗余要采用有源背板、有源导轨)讯的IM153-2 冗余套件实现ET200M的冗余通讯。
硬件配置:添加两个300站点:A和B ,然后对两个站分别进行硬件配置:1.打开A站2.从硬件目录选择机架3.打开A站的机架,插入电源,插入CPU315-2DP,新建一条DP网络,DP地址为8 如下图:4.插入ET200从站,DP 地址为35.插入CP343-1,新建 Ethernet(1) 网络6 ET200从站中添加I/O模块,硬件组态完成冗余的输出地址为0-11 ,后面设置FC100要用到。
7 两个站的硬件组态要一致。
8.添加网络连接右击A站CPU(B站也行)会出现菜单,选择“添加新连接”(insert new connection),“连接类型”(connection type),我用以太网ISO-TCP协议实现冗余的,点确定。
就出现下面这个画面,这里边的ID:7 和LADDR十六进制100,也就是十进制256,后边设置FC100要用到。
注意ID(hex)0007 A050 这里是可以选择的,原来是0001 A050,改为0007 A050,这时的ID 就成了7。
因为资料上说以太网实现冗余一般Local ID 不能小于2(其他方式实现没说),所以要改一下,两个CPU的都要改一致,这个在后边设置FC100参数要用到。
A站配置完成以后,进行B站的配置,注意两个站的配置要一致。
软件的设置1.打开冗余程序库,复制里面所需的数据块到程序块里,采用以太网冗余需要复制SWR_XSEND_3002.调用FC5, FC6 在库Libraries-->SIMATIC_NET_CP-->CP 300里边可以找到。
随便一个位置调用他们,然后删除。
项目的块里就会出现这两个块了。
3.调用IEC定时器块,冗余块里的SFB3 TP是定时器块,IEC定时器分别有SFB3 TP,SFB4TON,SFB5 TOF等,把SFB4复制到项目里。
ABB PLC冗余配置及其OPC操作指导
AC500文档编号:AD210003AC500 HA声明(1) 在实际的系统构建时,请先确认系统组成设备、装置,如使用过程中对额定值、性能留有余量,以及万一发生故障时将危险降到最低的安全电路等。
(2) 为了安全使用系统,请获取组成系统的各个设备、装置的指南及安装说明书,在确认好包括“安全注意事项”、“安全要点”等内容后再使用。
(3) 本文件所属的产品/系统只允许由具备相关工作经验要求的合格人员进行操作,确认适合系统的规格、法规及规定。
(4) 未经ABB公司许可,严禁擅自对本资料的一部分或全部内容进行篡改及散发。
(5) 本资料的记录内容为测试指导,在应用过程,请根据现场实际情况适当调整,或者咨询ABB技术支持人员。
(6) 我们已对文档中所述内容与硬件和软件的一致性作过检查。
然而不排除存在偏差的可能性,因此我们不保证文档中所述内容与硬件和软件完全一致。
文档中的数据都按规定经过检测,必要的修正值包含在下一版本中。
(7) 本资料的记录内容若有改版,恕不另行通知。
1 (3)1.1 (3)1.2 (3)2 (4)2.1 (4)2.2CS31 (5)2.2.1AC500 CPU COM1 (5)2.2.2CI590-CS31-HA (5)2.3 (6)3HA (7)3.1 (7)3.2 (7)3.2.1 CS31 (7)3.2.2 CS31 CI590-CS31-HA (8)3.2.3 CI590-CS31-HA I/O I/O (10)3.3 (11)3.3.1 AC500 HA (11)3.3.2 CPU STOP (13)3.3.3 AC500 HA (15)4 (20)4.1 IP (20)4.2 (20)5 (24)5.1CI590-CS31-HA (24)5.2 HA (26)5.3HA (26)5.3.1 (26)5.3.2 (27)5.4 HA (29)6 (31)6.1 (31)6.1.1 (31)6.1.2 (31)6.1.3 (31)6.1.4 (32)6.2 (32)6.2.1HA (32)6.2.2 (36)7OPC (38)7.1 (38)7.1.1 (38)7.1.2 OPC Server (38)7.1.3 (41)7.2OPC (43)7.2.1 CoDeSys OPC (43)7.2.2 OPC Configurator OPC Server (44)7.3OPC (48)1AC500 HA1.11 CoDeSys2 Control Builder plus1.2PM583-ETH 2 V2.1.3CM577-ETH 2CI590-CS31-HA 1DC522 131PC 1 PS501 CBP CoDeSys ——CoDeSys OPC-Server AE V3.3 SP2 ——OPCserverOPC SOClient.exe —— OPC22.1AC500 CPU PM583-ETH CPUCPU CPU CPU CPU CI590-CS31-HA DC522 CS31 CPU CM577-ETH PC OPC2.2 CS312.2.1 AC500 CPU COM12 CPU CS312.2.2 CI590-CS31-HA3 CI590-CS31-HA4 CI590-CS31-HA2.3CI590-CS31-HA 0~61 70~131 +704 CI590-CS31-HA3HA3.11) ABB Configrator ’FileNew Project ’ AC500PLC CPU – ‘AC500 PM583-ETH V2.03.23.2.1 CS31‘COM1’ ‘Plug Device’ , ‘COM1-CS31-Bus ’ ‘Plug Device’ .‘COM1 – CS31-Bus’ ‘COM1 – CS31-Bus Configuration’ ‘Run on config fault’ ‘Yes’3.2.2 CS31 CI590-CS31-HA‘COM1 – CS31-Bus’ ‘Add Device’ ‘CI590-CS31 16DC’ ‘CI590 16DC + 2 FC’‘CI590-CS31-Bus’ CI590-CS31 Configuration ( 0-61). (70 + Control Builder Plus )I/O Mapping3.2.3 CI590-CS31-HA I/O I/O‘CI590 CS31’ -> Add device I/OI/O I/O Mapping1) 2 3 CS31 CI590-CS31-HA2) AC500 HA CPU‘PM5x1-ETH-Onboard –Ethernet ’ ‘Add Device ’ UDP data exchange ‘Add Device ’.3.33.3.1 AC500 HACoDeSysCoDeSys , ‘Resources ’ ‘Library Manager ’; ‘Additional Library’AC500 High availability HA_CS31_AC500_V20.lib ‘open’AC500 High availability HA_CS31_AC500_V20.lib ,3.3.2 CPU STOPCPU STOP‘POUs’ ‘POUs “Add Object’program “CALLBACK_STOP’CPU STOP “CALLBACK_STOP‘CALLBACK_STOP’ ‘HA_CS31_CALLBACK_STOP’ Standard Programs HA_CS31_AC500_V20.libCPU STOP “CALLBACK_STOP’‘Task configuration ‘stop’ POU ‘CALLBACK_STOP’3.3.3 AC500 HAAC500 HA HA_PRGAC500 POU (PRG) ‘POUs ’ ‘POUs ’ ‘Add Object HA POU HA_PRG ProgramAC500 HAHA_PRGHA_PRG ‘Resource ‘Task configuration , ‘Task configuration ’ ‘Append Task ’( HA_Task) ‘Cyclic t#10ms t#10ms 60ms‘NewTask’ ‘Append Program Call HA_PRGAC500 HA HA_PRGHA HA HA_PRG PLC_PRG HA_PRG HA_CS31_DIAG HA_CS31_CONTROL PLC_PRGHA_CS31_DATA_SYNC HA_CS31_FBsHA_PRG ‘POUs HA_PRG HA_PRG HA_CS31_DIAG HA_CS31_CONTROL44.1 IPHA CPU CPU IP PLCA 192.168.0.1PLCA 192.168.0.2IP AC500 IP “ IP config tool IP ”4.2IP PS501 CPUA 192.168.0.1 CPUB 192.168.0.2CPUAIP PS501 ‘online’ ‘Communication Parameters’‘New’ ( 192.168.0.1) ‘Tcp/Ip’ (3S Tcp/ip driver) ‘OK’‘localhost’ CPU IP ( 192.168.0.1) ‘Port’ 1201 ‘Motorola byteorder’ ‘Yes’ ( ‘No’ ) ‘OK’ .‘online’ ‘Login’.CPU a CPU b ‘Yes’ CPUabCPU ‘online’ ‚‘Creat boot project PLC’AC500 CPU55.1CI590-CS31-HACI590-CS31-HA 8HA PWR CS31-A CS31-B I/O Bus S-ERR OFF RUN A RUN B ON CPU CPUCPUA/B CI590-CS31-HA CS31 CPU CS31-A CS31-BCPU CPU SYNC-ERR2HZ HA FALSE-TRUESYNC-ERR I\O Bus S-ERR5.2 HA,H A_CS31_DIAGDEC HEX Error description4129 16#1021 No configured CI590 slave is active (missing module)8193 16#2001 Wrong COM number at input COM8233 16#2029 CI590 slaves in line A and line B are mix-wired12291 16#3003 No CS31 protocol at COM12329 16#3029 CI590 slave configuration incompleteHA_CS31_CONTROLDEC HEX Error description4123 16#101B Remote CPU failure => Other CPU is off or out of order4129 16#1021 Own CI590 slave failure (missing module)4137 16#1029 Remote CI590 slave failure (missing module)8197 16#2005 CS31 Bus failure8211 16#2013 No Ethernet link8219 16#201B Remote CS31 bus failure => Other CPU's CS31 Bus is out of order8220 16#201C Numbers of CI590 devices configured in line A and line B are different 8226 16x2022 HA_DATA Reference table overflow8233 16#2029 Mix-wiring of the CS31 Masters between line A and line BHA_CS31_DATA_SYNCDEC HEX Error description8226 16#2022 HA_DATA Reference table overflow5.3HA5.3.1HA CPUA CPUBCPU CI590-CS31-HA PLC CPU CI590-CS31-HAHA_CS31_DATA_SYNC HA_CS31_FBs CPU CPU CPU CPU CPUCPU5.3.2HA1) CPUCPUCPUCPUCPUCPUCS31 CI590-CS31-HACS31 CI590-CS31-HAOPC Server OPC Server ConfigurationConfigurationPrimary CPUPrimary CPUSecondary CPUSecondary CPUOPC ServerOPC Server Configuration Configuration Primary CPUPrimary CPU Secondary CPUSecondary CPU2) CPU CPUCPUCPU CPU CPUCPUCS31 CI590-CS31-HA CS31 CI590-CS31-HA3) CPU CPUCS31CI590-CS31-HA CI590-CS31-HACI590-CS31-HA CPU4) CPU5.4 HAHA:1)2) CPUCPU STOP CPUCPU RUN “ CPU3) CPU CPUCPU STOP CPU CPUCPU RUN “ CPU4)66.16.1.1CPU CPU V1.2CPUPM573-ETH AC500 CPUAC500-eCo CPUCI590-CS31-HA DC551-CS31S500 I/O S500-eCo6.1.2PS501 V 1.36.1.3HA CS31 CS31 CS31 CS31 IO 192 I/O 600 I/O31 ( 3720 I/O )CS311)3131120 DI+120 DO8 AI+8AO2) Cluster6.1.41)HA CI590-CS31-HA2)CI590-CS31-HA3)CS314) 500m 2000m5) CI590-CS31-HA A CPU CPU A CPUCI590-CS31-HA B CPU CPU B CPU CS316.26.2.1HAHA HA HA_CS31_AC500_V20.lib ,1 HA_CS31_CONTROL HA2HA_CS31_DATA_SYNC HA3HA_CS31_DIAG HA4HA_CS31_DIAG_EXTD HA5HA_CS31_CALLBACK_STOP HA CPU STOP6HA_CS31_CTD HA7HA_CS31_CTU HA8HA_CS31_CTUD HA9HA_CS31_INTEGRAL HA10HA_CS31_PID HA PID11HA_CS31_PID_FIXCYCLE HA PID12HA_CS31_RAMP_INT HA13HA_CS31_RAMP_REAL HA14HA_CS31_TOF HA15HA_CS31_TON HA1)HA_CS31_CONTROLAC500 HA CPU CPU HA CPUHA_CS31_CALLBACK_STOPAC500 HA CPU STOP2)HA_CS31_DIAGCS31 CI590-CS31-HAHA_CS31_EXT_DIAGHA ;3)HA_CS31_DATA_SYNC2563…HA_CS31_FBsHA HAHA_CS31… CPU6.2.21) HA_CS31_DATA_SYNCR_TRIGR_TRIGHMI CoDeSys CPU2) HA_CS31_FBsPID HA_CS31_FBs7OPC7.17.1.1HA OPC OPC-Server CoDeSys OPC-Server AE V3.3 SP2OPC-Server OPC / OPC ServerCoDeSys CoDeSysOPC server“WinCoDeSysOPC.exe /RegServer”7.1.2 OPC Server1) OPC Server“WinCoDeSysOPC.exe”2) OPC server“WinCoDeSysOPC /UnRegServer” OPC server“WinCoDeSysOPC /Service” WinCoDeSysOPC.exe“dcomcnfg” WindowsWindows “CoDeSysOPCDAService”“CoDeSysOPCDAService”“System”7.1.3“CoDeSysOPCDAService”“CoDeSysOPCDAService”“ ”“Gateway.exe” “WinCoDeSysOPC.exe” “CNSIHUA”,7.2OPCOPC AC500HA OPCCoDeSys OPC PLCOPC Configurator OPC ServerOPC7.2.1 CoDeSys OPCHA CoDeSys OPC PLC OPC 3.3.23.3.3 PLCHA CPU7.2.2 OPC Configurator OPC ServerHA OPC Server PLC OPC OPC OPCOPCOPCCPUOPC 3.4 OPCPLC1 PLC2 CPU “Connection” “Address”“Connection” “Address” CPUA CPUB IP 192.168.0.1 192.168.0.2 PLC CM577-ETH 92.168.0.10 192.168.0.20Server “New Redundancygroup”, Redundant0Redundant0 “Available PLCs” PLC1 “>>” PLC2PLC CPUA PLC1PLC1 “select PLC in group to set master variable” HA “.fG_HA_PRIMARY” PLC2 “LifeCounter Variable(all PLCs in group)” HA “.dwG_HA_ServerAlive”HA7.3OPCOPC HA OPC SOclient.exe OPC OPC 4.OPC。
S7-300软冗余调试总结--WINCC组态(最新整理)
这 里 Main Connection 是 主 连 接 , 也 就 是 主 PLC 站 的 连 接 , 下 边 的 Reserve Connection 需要自己根据具体情况修改,默认的是和主站一样的。。。要改为自己备用 PLC 站的地址,比如 IP192.168.0.2,,0,2,02。继续下一步“next”,然后结束。冗余连接就生 成了,按正常说,现在就可以实现下边 PLC 故障切换的时候,自动将上位机 WINCC 中变 量转到备用 PLC 连接上。但是实际上现在不能完全实现自动切换,和手动切换。尤其是下 边主备站都没问题的时候,手动切换过来会发现 WINCC 跟 PLC 失去联系。。。传上来的数 据多是错的。要实现完整的切换,需要在全集脚本里加上几句话,来强制连接切换,这样 才能完全实现容易的切换。
当我们上边冗余连接建立以后,在变量组里会自动生成一个@sw 变量组(其中 SW 是 前边建立的连接的名称),这个变量组里的变量在后边要用到。打开全局脚本编辑器 Global Scrip C 在左边项目浏览栏里边找:ActionsActions:XXX,其中 XXX 为你的计算机名。 在这个SW 就是刚刚在 TCP/IP 协议项下建立的那 个连接的名字。打开这个文件,将编辑窗口拉到最下边,将紫色部分代码复制添加到上下 文相对应的位置。
参考文献:S7300S7400SIMITIC S7 的软冗余 wincc 实现软冗余手册(英文)
{ SetTagDWord( "@sw@ForceConnectionState", 0 ); } } return 1; 这其中的几个变量"@sw@ConnectionState", "@sw@ForceConnectionState"这两个变量 在前边说到的@SW 变量组里边有。其中的 SW 是连接的名字,需要对应上自己前边建的连 接的名字。"SWR_wincc.Standby"这个变量就是 FB101 冗余程序块的背景数据块中的变量 DB***.DBX9.1, ***是在 PLC 冗余程序中调用冗余程序时自己设定的背景数据块号,我用 的是 DB101,所以我这里变量就连接 DB101.DBX9.1 这个数据位。 好啦,这样就可以实现手动自动切换啦。。。当然手动切换可以自己按照 DB101 的定义去手 动生成变量做,也可在网上搜索《S7300S7400SIMITIC S7 的软冗余》这个文档,里边有 介绍一个系统自带的手动切换冗余的模板,很方便。。。
四个主流品牌PLC冗余方案介绍
四种常见品牌冗余PLC方案介绍下面介绍四种经常使用的PLC冗余方案:西门子S7-300(400)软冗余与S7-400H硬冗余、施耐德Quantum硬冗余、罗克韦尔的ControlLogix硬冗余和SLC500软冗余〔目前快要停产〕、ABB 的AC800M硬冗余方案。
1 西门子冗余方案1.1 西门子S7-300/400软冗余方案:软冗余方案是实现冗余功能的一种低本钱解决方案,可以应用于对主备系统切换时间要求不高的控制系统中。
其软件、硬件包括:1套STEP7编程软件〔V5.4〕加软冗余软件包(V1.2);2套PLC控制器及I/O模块,可以是S7-300或S7-400系统;3条通讯链路,主系统与从站通讯链路〔PROFIBUS 1〕、备用系统与从站通讯链路〔PROFIBUS 2〕、主系统与备用系统的数据同步通讯链路〔MPI 或PROFIBUS 或Ethernet〕;假设干个ET200M从站,每个从站包括2个IM153-2接口模块和假设干个I/O模块;除此之外,还需要一些相关的附件,用于编程和上位机监控的PC-Adapter〔连接在计算机串口〕或CP5611〔插在主板上的PCI槽上〕或CP5511〔插在笔记本的PCMIA槽里〕、PROFIBUS电缆、PROFIBUS 总线链接器等就可以组成一套完整的软冗余系统。
在软冗余系统进行工作时,A、B控制系统〔处理器,通讯、I/O〕独立运行,由主系统的PLC掌握对ET200从站中的I/O控制权。
A、B 系统中的PLC程序由非冗余用户程序段和冗余用户程序段组成,主系统PLC执行全部的用户程序,备用系统PLC只执行非冗余用户程序段,而跳过冗余用户程序段。
A路与B路CPU的程序需在OB1或OB35里调用FB 101 ‘SWR_ZYK’功能块,FB101块中封装了冗余功能的程序段,实现冗余功能。
调用FB101时,你可以在线地读出RETURN_V AL参数的数值,如果为0,说明冗余链接正常。
PLC冗余
PLC冗余PLC冗余在工业自动化系统中大量选用可编程逻辑控制器(PLC)作为控制器,随着技术的发展又组建冗余系统进一步提高系统的可靠性,在高风险(包括金融风险、行政风险、管理风险以及危及生命安全的风险)行业应用比较广泛,如:金融领域、核安全领域、航空领域、煤矿等领域。
目前冗余的分类方式很多,而采用PLC冗余方式的有两种,即软冗余和硬亢余。
西门子公司在软、硬冗余两方面均给出了解决方案。
而基于硬冗余的可靠性高,但构建系统成本也较高。
而基于S7300或S7400的软冗余是一种成本低又能提高可靠性的方案。
目前,软冗余系统已经在冶金、交通、电力、化工、污水处理等工业控制工程中得到了较广泛的应用。
但是对于软冗余的性能仍没有进行系统的研究。
硬冗余系统的冗余结构确保了任何时候的系统可靠性,例如所有的重要部件都是冗余配置。
这包括了冗余的CPU、供电模件和用于冗余CPU通信的同步模块。
根据特定的自动化控制过程需要,还可以配置冗余客户服务器、冗余通讯介质、冗余接口模件IM153-2等。
S7-300只能实现软冗余(软件冗余),而不能实现像400那样实现硬件冗余。
软冗余的特点:1、软冗余需要专门的软件包;2、对于实现冗余功能的PLC,可以是300,也可以是400,或者300与400之间。
3、软冗余需要对两台PLC都需要编程,调用专门的功能块;4、软冗余的切换时间为秒级,即当一台PLC发生故障,要让备用的PLC来担当前一台PLC的任务这么一个过渡过程需要1S以上的时间。
因此软冗余不适用于对安全要求极高的场合。
5、软冗余的最大好处就是便宜;最大坏处就是实现麻烦。
软冗余和硬冗余的异同:共同点1、冗余功能相同,做到冗余的部分包括:电源模板、CPU、PROFIBUS-DP 网络2、结构差不多,都是利用PROFIBUS-DP网络,使用IM153-2实现信号模板的公用功能。
(利用IM153-2做网络切换)IM153-2是远程I/O接口模板,是ET200M系列产品,后面只能挂S7-300信号模板,这不影响使用,只要挂在DP网络下,无论是S7-300还是S7-400都能直接编程使用。
西门子软冗余指南
PLC系统软件冗余的说明与实现朱震忠SIEMENS A&D CS2004-04-06首先我们建议您访问siemens A&D公司的技术支持网站:www4.ad.siemens.de在检索窗口中键入相关产品或问题的 关键字,获取关于产品或问题的详细信息和手册。
图1软件冗余基本信息介绍软件冗余是Siemens实现冗余功能的一种低成本解决方案,可以应用于对主备系统切换时间要求不高的控制系统中。
A.系统结构Siemens软件冗余系统的软件、硬件包括:1套STEP7编程软件(V5.x)加软冗余软件包(V1.x);2套PLC控制器及I/O模块,可以是S7-300或S7-400系统;3条通讯链路,主系统与从站通讯链路(PROFIBUS 1)、备用系统与从站通讯链路(PROFIBUS 2)、主系统与备用系统的数据同步通讯链路(MPI 或 PROFIBUS 或 Ethernet);若干个ET200M从站,每个从站包括2个IM153-2接口模块和若干个I/O模块;除此之外,还需要一些相关的附件,用于编程和上位机监控的PC-Adapter(连接在计算机串口)或CP5611(插在主板上的PCI槽上)或CP5511(插在笔记本的PCMIA槽里)、PROFIBUS电缆、PROFIBUS总线链接器等;下图说明了软冗余系统的基本结构:图2可以看出,系统是由两套独立的S7-300或S7-400 PLC系统组成,软冗余能够实现:I. 主机架电源、背板总线等冗余;II. PLC处理器冗余;III. PROFIBUS现场总线网络冗余(包括通讯接口、总线接头、总线电缆的冗余);IV. ET200M站的通讯接口模块IM153-2冗余。
软冗余系统由A和B两套PLC控制系统组成。
开始时,A系统为主,B系统为备用,当主系统A中的任何一个组件出错,控制任务会自动切换到备用系统B当中执行,这时,B系统为主,A系统为备用,这种切换过程是包括电源、CPU、通讯电缆和IM153接口模块的整体切换。
S7_400冗余介绍
SIEMENS S7-400 PLC软冗余的实现1、硬件配置本系统PLC主控制器部分选用S7-412-2DP,由于412系列不支持硬冗余,因此我方采用软冗余的方式实现主从的零切换,具体方法详细说明如下:(1) 建立一个两个S7-400站的项目(StationA and StationB)打开StationA (2) 硬件配置中选择模块背板(3) 在背板中依次插入PS,CPU和CP模件(4) 打开 Station B 重复步骤(2)(3)(5) 将IM153-2拖到DP MASTER SYSTEM上(6) 插入ET200M IO模块、(7) 如有多个分散IO站,重复步骤(5)(6)(8) 复制已配置完的DP分支到第二个站的DP MASTER SYSTEM上硬件配置组态原则:(1) 两个站的本地硬件配置必须完全一致(2) 必须从第一个站复制到第二个站(3) 如果一个满足则执行EDIT-Insert Redandant COPY这样可以保证外围设备的地址的一致性2、网络组态(1) 在软件冗余系统中有哪些网络a、两个站之间的网络连接可通过MPI、Profibusb、DP MASTER SYSTEM和ET200M是通过Profibus-DP连接的,这个网络是用于主站和IO进行数据通讯的(2) 两个站之间的数据交换网络:主站到预备单元的数据传输可通过MPI、Profibus和工业以太网,该项目中通过通信模块用Profibus实现的(3) 建立一个Profibus网络(4) 连接A站CP到Profibus网,选择一个节点地址;(如:Profibus address 3)(5) 连接B站CP到Profibus网,选择一个节点地址;(如:Profibus address 4)(6) IO设备的Profibus网,本地ET200M模块有两个DP口,一个接A站,另一个接B站。
a、建立两个Profibus-DP网络;b、选A站DP口连接到第一个DP网络;c、选B站CPU连接到第二个DP网;d、从硬件目录中选择IM153-2;3、组态一个连结(1) 从SIMATIC MANANGER切换到Network view(2) 选择View-DP Slaves(3) 选中A站的CPU点击右键,插入一个新的链接,选择FDL Connection,点击应用,弹出链接属性窗口,记录链接的ID,存盘编译网络组态。
PLC软冗余指南
PLC系统软件冗余的说明与实现软件冗余基本信息介绍软件冗余是Siemens实现冗余功能的一种低成本解决方案,可以应用于对主备系统切换时间要求不高的控制系统中。
A.系统结构Siemens软件冗余系统的软件、硬件包括:1套STEP7编程软件(V5.x)加软冗余软件包(V1.x);2套PLC控制器及I/O模块,可以是S7-300或S7-400系统;3条通讯链路,主系统与从站通讯链路(PROFIBUS 1)、备用系统与从站通讯链路(PROFIBUS 2)、主系统与备用系统的数据同步通讯链路(MPI 或 PROFIBUS 或 Ethernet);若干个ET200M从站,每个从站包括2个IM153-2接口模块和若干个I/O模块;除此之外,还需要一些相关的附件,用于编程和上位机监控的PC-Adapter(连接在计算机串口)或CP5611(插在主板上的PCI槽上)或CP5511(插在笔记本的PCMIA槽里)、PROFIBUS电缆、PROFIBUS总线链接器等;下图说明了软冗余系统的基本结构:图2可以看出,系统是由两套独立的S7-300或S7-400 PLC系统组成,软冗余能够实现:I.主机架电源、背板总线等冗余;II.PLC处理器冗余;III.P ROFIBUS现场总线网络冗余(包括通讯接口、总线接头、总线电缆的冗余);IV.ET200M站的通讯接口模块IM153-2冗余。
软冗余系统由A和B两套PLC控制系统组成。
开始时,A系统为主,B系统为备用,当主系统A中的任何一个组件出错,控制任务会自动切换到备用系统B当中执行,这时,B系统为主,A系统为备用,这种切换过程是包括电源、CPU、通讯电缆和IM153接口模块的整体切换。
系统运行过程中,即使没有任何组件出错,操作人员也可以通过设定控制字,实现手动的主备系统切换,这种手动切换过程,对于控制系统的软硬件调整,更换,扩容非常有用,即Altering Configuration and Application Program in RUN Mode 。
PLC软冗余系统时间和性能分析
摘要: 随着国际贸易 的迅猛发展 , 海路运输早 已 为国际 贸易进 出口的 考 虑 到 现 场 以及 监 控 室 的 状 况 ,使 该 控 制 系 统 系 统 完成 以 下这 些 任 成
重要手段 。 因此 , 提高港 口的中转效率效率 , 加快港 口的自动化进程就显得极 务 : ①设备工作过程的可视化 : ②操作和控制设备的工作过程 ; ③显示 为重要 , 本文通过几个 方面 , 对大型港 口机械 自动化控制系统进行了阐述。 报警 ; ④记录工作中的进程值和警告 工作过程和设备的参数管理。 ⑤ 关键 词 : 天津 港 自动 化 人 机 界 面
固 塞 堂 堕
P C 软 冗余 系统 时 间和 性 能 分 析 L
西 亍 司 螯硬 令 公 在 冗 给 决 案而 f 出 坚 方 。孝 E = 个 ‘ … 。 。 数 … ‘ 。 一 于 冗0 靠 喜 爱 硬0 余 , 堡 : 于s 3 芋 — 7 o 鬟 为 F 8。. 的 间测 得 一 为 m。 中 S 5 ̄ 一 时 ,量 出 般 3s C J 次 后 S-4 7 的 冗 是 种 能 高 誊 方 。 , 夏 拱 发 时 cL 断 生 刻 簦余■成 提 蔗. 车 欠 态 送 间£ o8 时 马 j 得 任/ 通皇 、三污 粤 笙 工 大 紊。果 CU 用F1 执 发 之 _ B 冗 系 厂  ̄.、 、力 I 篝 程 到 较 A 余 篓_ -用交 经. 重 三 关 芏 P茬 B 1 行 送 。 0 前 生08 产 6 的 6但 于 , 的 _ 进 委 中 ,茬 数 时 u 接 蕞 发 给 站 在 种 j 聱 盒 f 。 冗 乃 行 笙 断贝 发 据 直 把 障 态 。 备 ,这 i 送 研 。 对 .. 哿 冗 系 搴 窑弯 粤 子P , 舍 分 , L介 C 析 最 。 是 主CU 用F1执 完 送 恰 短 但 若 P调 。 行 发 功 时 好 B1 0 。
软冗余和硬冗余[管理资料]
从字面上讲,也就是实现的方式上:1)软冗余是通过软件实现,也就是是西门子的SWR软件包;硬冗余,则是使用C PU417H;414H;412H来实现,对于PLC 本身的操作系统及硬件设置上均不同,硬冗余的同步机理为事件同步。
2)硬冗余的两个热备系统必须使用相同的PLC;软冗余的两个暖被系统可以使用不同的PLC。
3)硬冗余的同步链路采用同步模块和光纤,有长距,短距两种;软冗余则使用MPI,DP(CP343-5,CP443-5)和IE(CP343-1,CP443-1),程序内部调用的是xsend/xrcv;AGsend/rcv以及Bsend/rcv(仅对400),这也就是为什么S7-300 PN CPU 无法使用集成PN口来实现同步的原因。
从性能上来:1)冗余的层级:软冗余无法进行IO冗余;IO冗余仅能在硬冗余里实现。
此外,Y-link仅能在硬冗余中实现。
2)系统切换的时间:硬冗余:PLC无切换时间,因为程序同时在两个CPU里运行,硬冗余里成为主动切换;被动切换,也就是从站切换的时间<100ms;对于软冗余,冗余程序仅在主CPU内执行,备用CPU仅执行非冗余段程序,切换时为整个系统的切换。
切换时间取决于同步链路的类型,速率和同步数据量的大小,DP从站的多少,多为秒级。
对于切换,软冗余系统中,DP从站的接口模板或D P链路故障均会造成主备CPU的切换,而引起整个系统的切换;而在硬冗余中,从站的故障不会造成主备CPU的切换。
3)信息的丢失:2)提到了切换,很自然的,CPU间的切换可能导致部分信息,如报警的丢失,因为报警在当前激活的主CPU 中进行处理。
所以,软冗余系统中会存在信息的丢失;而硬冗余系统中,由于CPU间为事件同步的方式,且切换无时间,保证了信息不会丢失,也就是硬冗余中所说的平滑切换。
4)通信架构:400H系统与上位机间的通信有多种架构,需要使用CP1613和redconnect实现,网络构成方式:双通道,四通道,单环,双环等;400H间建立的是容错S7连接。
四个主流品牌PLC冗余方案介绍.
四种常见品牌冗余PLC方案介绍下面介绍四种经常使用的PLC冗余方案:西门子S7-300(400)软冗余与S7-400H硬冗余、施耐德Quantum硬冗余、罗克韦尔的ControlLogix硬冗余和SLC500软冗余(目前快要停产)、ABB 的AC800M硬冗余方案。
1 西门子冗余方案1.1 西门子S7-300/400软冗余方案:软冗余方案是实现冗余功能的一种低成本解决方案,可以应用于对主备系统切换时间要求不高的控制系统中。
其软件、硬件包括:1套STEP7编程软件(V5.4)加软冗余软件包(V1.2);2套PLC控制器及I/O模块,可以是S7-300或S7-400系统;3条通讯链路,主系统与从站通讯链路(PROFIBUS 1)、备用系统与从站通讯链路(PROFIBUS 2)、主系统与备用系统的数据同步通讯链路(MPI 或PROFIBUS 或Ethernet);若干个ET200M从站,每个从站包括2个IM153-2接口模块和若干个I/O模块;除此之外,还需要一些相关的附件,用于编程和上位机监控的PC-Adapter(连接在计算机串口)或CP5611(插在主板上的PCI槽上)或CP5511(插在笔记本的PCMIA槽里)、PROFIBUS电缆、PROFIBUS总线链接器等就可以组成一套完整的软冗余系统。
在软冗余系统进行工作时,A、B控制系统(处理器,通讯、I/O)独立运行,由主系统的PLC掌握对ET200从站中的I/O控制权。
A、B 系统中的PLC程序由非冗余用户程序段和冗余用户程序段组成,主系统PLC执行全部的用户程序,备用系统PLC只执行非冗余用户程序段,而跳过冗余用户程序段。
A路与B路CPU的程序需在OB1或OB35里调用FB 101 ‘SWR_ZYK’功能块,FB101块中封装了冗余功能的程序段,实现冗余功能。
调用FB101时,你可以在线地读出RETURN_V AL参数的数值,如果为0,说明冗余链接正常。
s7-300软冗余手册
S7-300的软冗余要求从站必须通过有源底板连接。
从站的所有模块需要确保没有故障,即SF灯不亮尤其是通讯模块。
S7-300的软冗余分为三种方式:MPI ,DP ,以太网。
三种冗余方式的通讯速度不同,以太网通讯速度最快,DP通讯速度次之,MPI通讯速度最慢。
不同的通讯方式选择的功能块不相同,具体功能块的选择如图1所示:S7-300的块薮期包图1下面以以太网冗余为例,简述冗余过程:(一)插入两个S7-300 的站,SIMATIC 300(A)和SIMATIC 300(B)。
(二)设置A站的IP地址为192.168.0.10 ,B站的地址为192.168.0.20 。
(三)在A站的块中插入0B100 0B350B8组织块,并对其中的0B100 0B35 OB86进行编程。
(四)在组态网络中新建ISO-ON-TC链接。
要求ID号要大于2且主从站的ID 号一致。
MPI主站设置如左图所示步骤, 从站不需要再次设定但需 要在从站中给该从站的通 讯ID 号与主站相同且大于2。
图例设置为0007(五) 在OB10(中我们调用FC1O0 SWR_START 进行软冗余的初始化FC100 SWR STA 的各个引脚的注释请参照最后的附录调用FC10啲位置如图鬥."irg 二工说编程和欽据益控Ma5ter_Line-F'门二!~l I 、境押ET20<m 站的 PROF I BUSS gSync h ronizati on^Bus fndustrial EthernetReserve LinePROFIBUS E 站和 ET200 从站的 PROFIBUSK^鎰體蛊申ZF 」4J I .塹瞬冋也屈.眄典机晖过I OCi 中 FC 100块 中的 YEEE_IE 零数一致, 舍前诗宿为T MasterIHDDPCP 343"1IM 153^2. RedundantReserveCP^J ;DF 31^2 : DP :IM 153-2, Redundant----------------------Local ID Partner IDPartnerType |Acnve [subnet 0007A05O 0007 A050Reserve/CPU 315-2 DP lSO-cn-TCP c-onnectlon Yes Syncihroniza«lon_Bus (IE]7握 LAD/STMFeO ” 106100 * 'OOMPLETf RESTART 1 -口那旧 祸罔 A ?.'I ) nc 澹衣㈣㈣□ D ^^HIS -: 0* : 址:B **◎ Ml*Ft- • Star ddf J Libr 冲5-电k 札eduiicrit 10 CG& V4D B 猶 K-eduhtfinft 10 MG^ Vil kL •札edgtrri : !□匸"殆】 』橹 SI ;IVlArK :_NET_CP 4f CP 3tPi 占桂 SWi_L[B_V12 | 11 丹?WR_KSJENC_«D i 申 勿 WR.KSJEND.aOO :il 勿SW 町冷⑷严i i t| 冋 SWfLA^SFNDjilM ;力 id SWPLA.G5FNDJD0O FB101 5WRJVK SWRED O 5WR^S_COM 尸曲口 OO FC102 5WR.EMAG SWREDR ◎ Mod bus 4It!Ikv,1? ^Til J SW. RFn图中2填写对方的地址,MPI_ADR 表示对方的MPI 地址,LADDR 表示CP 通讯 处理器组态的硬件地址,采用PROFIBU 或Ethernet 网络进行数据同步时才有意 义,默认FC1OO 时 R.STk 7V^FP皿L 卞阳L5TAET#AG KFWMTTMGHR wriPTC 加=TiR1DB_SEND_JIO -DB2 CB_RC¥_N0 =I )B3 WPT iTiR =?LADDR =256VERB_ID =7 CP_MA£TEK_SYS_ID 二 1 「口 cc ・ ua ----- —T ■口DP_KOM1OT =1 J1DR_MODUS =1pon FTP CTST-107PC 100MB_LEN 1=4 IEC_N0 :=40 IEC-LEM :=5 DB 五:=20DB H0 LEN: = lb呢 T AWP MH * = ^ SLAVE _LE11 :=2■nr AE NTbMTe7-1 a ■! 1 ■ ■ 卜丄 J* 1』DB A B NO;=JB46 DB A D NO LEN:=T#16fO:^B46DB_B 」JQ_LENRETORN_VAL ;=W1QEXT INFO:=JW4*>123 45图中1表示为当前CPU 的站号, A 站写A , B 站写Bo值为256不需要更改。
西门子300PLC 软冗余的实现,详细步骤截图
西门子300PLC 软冗余的实现,详细步骤截图主要硬件:(注意冗余要采用有源背板、有源导轨)315-2DPSM321PLC主CPU6ES7 315-2AH14-0AB0PLC输入模块6ES7 321-1BL00-0AA0PLC输出模块6ES7 322-1BL00-0AA0PLC模拟量输入模块6ES7 331-7KF02-0AB0网络模块6GK7 343-1EX30-0XE02432DI32DOAI 8ET200M冗余包(6ES7153-2AR03-0XA0)包括两个IM153-2HF(-2BA02)和一块im/im 6es7 195-7hd10-0xa0ET200M冗余包6ES7 153-2AR03-0XA0)1背板,PROFIBUS DP 90º电缆出线(6ES7 9720BA120XA0),集成终端电阻,9针Sub-D插座,不支持快速连接,没有编程端口。
SM322SM 331CP343-1322本控制柜采用2个315-2DPCPU通过CP343-1连接到以太网交换机实现冗余链路,用DP通讯的IM153-2冗余套件实现ET200M的冗余通讯。
硬件配置:添加两个300站点:a和b,然后分别配置两个站的硬件:1.打开a站。
2.从硬件目录选择机架3.打开a站机架,插上电源,插上cpu315-2dp,新建一个dp网络,dp地址为8,如下图所示:4。
插入dp地址为3的et200从站。
5.插入CP343-1,新建Ethernet(1)网络6et200从站增加i/o模块,硬件配置完成。
冗余的输出地址为0-11,后面设置FC100要用到。
7两个站的硬件组态要一致。
8.添加网络连接右键点击a站的cpu(b)(哔哩哔哩就可以)菜单就会出现。
选择“插入新连接”和“连接类型”。
我会用以太网iso-tcp协议实现冗余。
单击确定。
出现如下画面,在后面用id: 7和laddr十六进制100,即十进制256来设置fc100。
ABBPLC冗余配置及其OPC操作指导
ABBPLC冗余配置及其OPC操作指导ABB是一家全球领先的工业自动化公司,提供各种工业设备和解决方案。
ABBPLC(可编程逻辑控制器)是其产品线中的一种非常常见和重要的控制设备。
在工业自动化应用中,冗余配置是确保系统高可靠性和可用性的重要组成部分。
本文将介绍ABBPLC的冗余配置和OPC操作指南。
首先,我们将介绍ABBPLC的冗余配置。
冗余配置是通过将两个或多个PLC连接起来,实现系统的冗余备份,以提高系统的可靠性和容错能力。
ABBPLC支持两种冗余配置模式:热备份和冷备份。
热备份模式是指在主PLC故障时,备用PLC可以立即接管控制任务,以确保系统的连续运行。
在这种模式下,主PLC和备用PLC通过网络连接,实时同步数据和程序。
当主PLC故障时,备用PLC将立即接管并继续执行控制任务,从而实现无缝转换。
冷备份模式是指备用PLC处于待命状态,只有当主PLC发生故障时才会启动。
在这种模式下,主PLC和备用PLC之间没有实时数据同步,主PLC故障后需要手动切换到备用PLC。
这种模式适用于对系统实时性要求较低的应用。
接下来,我们将介绍ABB PLC的OPC(OLE for Process Control)操作指南。
OPC是一种开放的工业通信标准,用于实现不同设备和系统之间的数据交换和共享。
ABB PLC支持OPC UA(Unified Architecture),可以通过OPC UA客户端访问PLC的数据和功能。
使用OPCUA客户端连接ABBPLC需要按照以下步骤操作:2.配置OPCUA服务器:在ABBPLC中配置OPCUA服务器,开启OPCUA功能,并设置安全策略和访问权限。
3.创建OPCUA连接:在OPCUA客户端中创建一个新的OPCUA连接,输入ABBPLC的IP地址和端口号。
5.读取和写入PLC数据:使用OPCUA客户端可以读取和写入ABBPLC的数据,可以发送控制命令和接收实时反馈。
需要注意的是,在配置和操作过程中,需要遵循安全规范和最佳实践,确保系统的安全性和稳定性。
XXX300PLC 软冗余的实现,详细步骤截图
XXX300PLC 软冗余的实现,详细步骤截图This control。
is equipped with two 315-2DP CPUs connected to an。
switch via CP343-1 to achieve ndant links。
The IM153-2 XXX hardware n includes:315-2DP CPUSM321 PLC main CPU6ES7 315-2AH14-0AB0 PLC input module6ES7 321-1BL00-0AA0 PLC output module6ES7 322-1BL00-0AA0 PLC analog input module6ES7 331-7KF02-0AB0 ork module6GK7 343-1EX30-0XE0 (2x) 4-32DI/32DO/AI8 ET200M ndant package (6ES7 153-2AR03-0XA0) with one backplane and one IM/IM 6ES7 195-7HD10-0XA0PROFIBUS DP 90º cable (6ES7 9720BA120XA0) with integrated terminal resistor and 9-pin Sub-D socket。
no support for quick n。
and no programming portSM322 and SM331To configure the hardware。
follow these steps:1.XXX.2.Select a rack from the hardware catalog.3.Open the rack of n A。
insert the power supply。
insert the CPU315-2DP。
and create a new DP ork with DP address 8 as shown in the figure.4.Insert the ET200 slave n with DP address 3.5.Insert CP343-1 and create an。
软冗余的原理西门子plc
软冗余的原理 - 西门子plcA站和B站分别通过2个IM153-2把握DP从站上的IO,不明白2个接口是如何协调把握输出(输出都在DP从站上)e.g.Q0.0~Q0.3设定为FC100'SWR_START'中的冗余映射,A站为主站1.假如A站写Q0.0为1,B站在冗余程序FB101‘SWR_ZYK’外(不被跳过),写Q0.0为0,实际输出为啥?2.假如A站写Q0.5为1,B站在冗余程序FB101‘SWR_ZYK’外(不被跳过),写Q0.5为0,实际输出为啥?答:原理:在软冗余系统进行工作时,主、备把握系统(处理器,通讯、I/O)独立运行,由主系统的plc把握对冗余部分ET200M从站中的I/O把握权,主、备系统通过软冗余专用程序进行数据同步。
PLC程序由非冗余(non-duplicated)用户程序段和冗余(redundantbackup)用户程序段组成,主系统PLC执行全部的用户程序,备用系统PLC通过推断冗余状态跳过冗余程序,只执行非冗余用户程序。
当主系统中的组件发生故障,备用系统会自动切换为主系统,执行冗余程序,把握任务不会消灭中断。
1.假如A站写Q0.0为1,B站在冗余程序FB101‘SWR_ZYK’外(不被跳过),写Q0.0为0,实际输出为啥?B系统冗余程序不被跳过,只有在A系统组件发生故障时,备用系统会自动切换为主系统,执行冗余程序,假如A系统正常,则B系统PLC通过推断冗余状态跳过冗余程序。
所以,实际输出为0。
2.假如A站写Q0.5为1,B站在冗余程序FB101‘SWR_ZYK’外(不被跳过),写Q0.5为0,实际输出为啥?B系统冗余程序不被跳过,只有在A系统组件发生故障时,备用系统会自动切换为主系统,执行冗余程序,假如A系统正常,则B系统PLC通过推断冗余状态跳过冗余程序。
所以,实际输出为0。
试析PLC软冗余系统性能
试析PLC软冗余系统性能PLC是一种常用的控制器,常常被应用到自动化系统中,技术的进步,促进了冗余系统的形成,增加了系统稳定性。
现阶段,PLC冗余主要包含软冗余以及硬冗余,其中软冗余系统被大面积应用在冶金制造与化生产等工业控制活动中。
一、冗余控制概述冗余控制是指借助某些设备构建成控制系统,以此来进行控制,若某一设备出现故障,可借助人为方式切换,充当后备设备,以此来取代故障设备,不影响常规工作,让控制设备由于意外所产生的停机损失减小至最低。
冗余控制还包含同步这一定义,主要是说冗余系统内部的若干个处理器不定期对比各自状态,依照一定规则判断系统是否处于正常状态。
依照冗余实现方式可将冗余划分成下述几个类型:(一)硬冗余借助特殊硬件模块完成PLC内部同类故障之间有效切换的一种冗余类型。
(二)软冗余通过编程完成PLC内部同类故障类型的有效切换的一种方式。
主要包含热冗余、暖冗余和冷冗余,其中热冗余一般在设备出现故障时,利用特定硬件评判与独立备份,有效切换至备用设备,实现稳步运行;暖冗余主要借助编程方式完成冗余。
因软冗余实现存在多种制约因素,系统切换时间与硬冗余相比偏长,部分软冗余还将在主设备出现切换时形成间隙,有些需要进行人为简单干预方可实现;冷冗余指代某些冗余设备处于不通电不工作状态,随时待命,在主设备出现故障应利用人工操作来恢复,依据现在观点进行界定,这并非真正的冗余,主要将其理解为备件,常常应用在实时性不突出、工艺连续性不严格的情形中。
二、软冗余基本工作原理代表性PLC软冗余系统具体组成见图-1。
在实际運转阶段,两个CPU一起启动,共同运行,然而,在正常运行环节有且仅有一个CPU可下达控制命令,一般为主CPU,而备CPU则对主CPU状态进行检测和记录,待主CPU出现故障时可保留实际状态,并取代主CPU,下达执行命令。
IM153-2模块和主CPU存在联系,当这一模块达到激活状态,主CPU可以访问I/O模块,一旦系统出现特定故障,便可进行主备切换,利用备站接替主站,实现稳步运行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PLC系统软件冗余的说明与实现软件冗余基本信息介绍软件冗余是Siemens实现冗余功能的一种低成本解决方案,可以应用于对主备系统切换时间要求不高的控制系统中。
A.系统结构Siemens软件冗余系统的软件、硬件包括:1套STEP7编程软件(V5.x)加软冗余软件包(V1.x);2套PLC控制器及I/O模块,可以是S7-300或S7-400系统;3条通讯链路,主系统与从站通讯链路(PROFIBUS 1)、备用系统与从站通讯链路(PROFIBUS 2)、主系统与备用系统的数据同步通讯链路(MPI 或 PROFIBUS 或 Ethernet);若干个ET200M从站,每个从站包括2个IM153-2接口模块和若干个I/O模块;除此之外,还需要一些相关的附件,用于编程和上位机监控的PC-Adapter(连接在计算机串口)或CP5611(插在主板上的PCI槽上)或CP5511(插在笔记本的PCMIA槽里)、PROFIBUS电缆、PROFIBUS总线链接器等;下图说明了软冗余系统的基本结构:图2可以看出,系统是由两套独立的S7-300或S7-400 PLC系统组成,软冗余能够实现:I.主机架电源、背板总线等冗余;II.PLC处理器冗余;III.P ROFIBUS现场总线网络冗余(包括通讯接口、总线接头、总线电缆的冗余);IV.ET200M站的通讯接口模块IM153-2冗余。
软冗余系统由A和B两套PLC控制系统组成。
开始时,A系统为主,B系统为备用,当主系统A中的任何一个组件出错,控制任务会自动切换到备用系统B当中执行,这时,B系统为主,A系统为备用,这种切换过程是包括电源、CPU、通讯电缆和IM153接口模块的整体切换。
系统运行过程中,即使没有任何组件出错,操作人员也可以通过设定控制字,实现手动的主备系统切换,这种手动切换过程,对于控制系统的软硬件调整,更换,扩容非常有用,即Altering Configuration and Application Program in RUN Mode 。
B.系统工作原理在软冗余系统进行工作时,A、B控制系统(处理器,通讯、I/O)独立运行,由主系统的PLC掌握对ET200从站中的I/O控制权。
A、B系统中的PLC程序由非冗余(non-duplicated)用户程序段和冗余(redundant backup)用户程序段组成,主系统PLC执行全部的用户程序,备用系统PLC只执行非冗余用户程序段,而跳过冗余用户程序段。
下面我们看一下软冗余系统中PLC内部的运行过程:图3主系统的CPU将数据同步到备用系统的CPU需要几个程序扫描循环:图4数据同步所需要的时间取决于同步数据量的大小和同步所采用的网络方式(图2中的紫色网络线),MPI方式周期最长,PROFIBUS方式适中,Ethernet网方式最快。
PROFIBUS 网络1.5 Mbaud Ethernet 以太网10 MBaudMPI网络187.5 kBaud每60ms传送240个字节数据每48ms传送 240个字节数据每152ms传送76个字节数据表1用户需要在初始化程序中(OB100)定义冗余部分的数据区,该数据区可以包括:一个过程映象区(process image area),一个定时器区(IEC timer area),一个计数器区(IEC counter area),一个位地址区(memory address area)和一个数据块区(data block area),S7-300同步的最大数据量为8 kBytes,S7-400同步的最大数据量64kBytes。
主备系统的切换时间 = 故障诊断检测时间 + 同步数据传输时间 + DP从站切换时间如果CPU的故障是停机或断电,则故障诊断为大约100-1000毫秒,315-2DP同步1000字节的数据所需的时间大约为200-300ms,8个DP从站的切换时间在100ms左右。
您可以在软冗余手册当中找到关于切换时间的具体说明。
无论控制程序循环扫描到哪里,当前激活的系统(即主系统)随时都会接收并处理报警,这样,在主系统A与备用系统B进行切换过程中产生的alarm存在被丢失的可能。
C.产品订货信息表注:1.只有S7-300 315-2DP(除CPU314C-2DP、CPU313C-2DP)型号以上的PLC才支持软冗余功能,所有的S7-400都支持软冗余功能;2.主系统与备用系统的CPU型号可以不同,如主系统采用一套S7-400系统,而备用系统采用一套S7-300系统;软冗余系统的调试过程在您的计算机上首先安装STEP7 5.x软件和软冗余软件包,软冗余软件光盘包括了冗余功能程序块库、不同系统结构的例子程序和软冗余使用手册。
I.不同系统结构方式下的功能块:在安装完软冗余的软件后,您可以在STEP7当中找到例子程序和功能程序块库:图5图6以上图5显示的是在STEP7中使用OPEN菜单打开软冗余的例子程序,例子程序中采用MPI链路实现数据的同步。
图6显示在安装完软冗余软件后,您可以在Libraries找到不同CPU以及不同链接方式下可以使用的功能块。
下面的两个表格分别说明了采用S7-300,S7-400进行软件冗余时,可采用的不同网络连接以及所需调用的程序功能块包。
表3从以上的表格中可以看到,软冗余系统当中可以采用MPI、PROFIBUS、Ethernet三种网络实现主系统和备用系统之间的数据同步(Redundant-backup link)。
采用BSEND_400包中的功能块进行数据同步时,无论数据同步的连接是什么方式,都需要在STEP7的NETPRO窗口中组态一个 S7 Connection。
除了BSEND_400中之外,使用其他功能库中的程序块:•采用MPI网络时,直接使用PLC的编程口进行数据同步,不需要进行连接(Connection)的组态,但MPI数据同步的效率低。
•采用PROFIBUS网络时,需要使用一对CP通讯卡(CP342-5或CP443-5),在STEP7的NETPRO窗口中组态主系统和备用系统之间的FDL连接。
•采用Ethernet网络时,需要使用一对CP通讯卡(CP343-1或CP443-1),在NETPRO窗口中组态主系统和备用系统之间的ISO连接。
调用的发送块,用户需要生成该程序块,并下载到PLC当中。
FC 6 ‘AG_RCV’PROFIBUS网络中,实现FDL链接,在FB104内部调用的接收块,用户需要生成该程序块,并下载到PLC当中。
表4注:1。
采用PROFIBUS或Ethernet方式进行数据同步时,需要在OB10 0当中调用FB101,而FB101内部调用了FB104、FC5、FC6,所以您必须手动地将FB104、FC5、FC6插入到项目当中,插入的方法是:在程序中调用一次,再将这条语句删掉。
2.在OB100中调用FC100功能块时,PLC会自动创建一些与FC100参数相关的程序段和数据块,所以当你更改了FC100的参数时,应该对PLC进行Reset操作,再重新下载项目的软硬件到PLC当中。
II.创建一个应用实例:附件中我们给出了一个例子项目,由两套315-2DP和一个ET200M从站组成,系统结构如下:图7除了实现冗余功能的3条PROFIBUS网络外,还有一条MPI网络用于上位机监视和控制程序的调试。
以下是生成该例子程序的步骤,您可以根据您系统的配置情况进行参照:1.插入两个S7-300的站,A和B,在A站和B站的硬件组态窗口中,插入315-2DP时,要分别创建相互独立的PROFIBUS网络(如 A站为Master_Line、B站为Reserve_Line),使用网络的默认参数,速率为1.5M,并都将站地址设定为2,A站和B站的PROFIBUS DP集成通讯口设定为主站模式(Master Mode)。
2.分别在A、B站中插入CP342-5模块,连接到同一个PROFIBUS网络上(Sychronization_Line),地址分别为4、5,将CP342-5设定为No DP方式,并记录CP342-5的硬件地址256。
3.分别在A、B站的硬件组态窗口中插入一个ET200从站(一个IM153-2模块和一个16入/16出的数字量模板),DP的地址为3。
4.进入STEP7的网络组态窗口NETPRO中,选中A站的CPU点击鼠标右键,插入一个新的链接,选择FDL Connection,点击Apply,弹出链接属性窗口,记录链接的ID,设定LSAP为17,18,存盘编译网络组态。
系统的网络结构如下:图8以上网络结构中包括了4条链路:▪用于上位机编程和监控的MPI链路;▪A站与ET200从站Master Line PROFIBUS链路;▪B站与ET200从站Reserve Line PROFIBUS链路;▪A站和B站之间进行数据同步的Synchronization LinePROFIBUS链路。
您可以通过点击图中的状态读取按钮,获取当前FDL链接的状态,上图的左下角显示当前在线读取FDL的状态为OK。
5.在A站的Block中插入OB1(主循环程序块)、OB35(定时中断组织块)、OB100(暖启动调用程序块)、OB80(在主系统与备用系统切换时间超时时,调用该块)、OB82 (DP-Slave ET200站上的IM153-2模块出错报警,调用该功能块)、OB83 (DP从站的接口模块与主站链接断开或链接重新建立时调用该块)、OB85(程序运行出错或DP从站连接失败调用该块)、OB86(主从站通讯出错调用该块)、OB87(通讯失败调用该块)、OB122(外围设备访问出错调用该块)、OB121等组织块,并对其中的OB100、OB35、OB86进行编程。
6.在OB100中我们调用FC 100 ‘SWR_START’进行软冗余的初始化,有几个参数需要特别注意,LADDR应当和CP342-5的硬件地址相一致,例子程序为256,VERB_ID必须和你在NETPRO中创建的FDL链路的ID号一致,例子程序为1,DB_COM_NO为系统中未使用的数据块,建议仍采用DB5。
如下表格给出了FC100功能块参数的说明和例子,供您编程参考:7.一般我们建议您将您的非冗余程序段编写在OB1当中,而将冗余程序段编写在OB35当中,我们这里使用的是OB35的默认属性,即每100ms中断触发一次,您可以根据实际的需要在CPU属性中修改中断的时间间隔。
在OB35里调用FB 101 ‘SWR_ZYK’功能块,FB101块中封装了冗余功能的程序段,实现冗余功能。
调用FB101时,你可以在线地读出RETURN_VAL参数的数值,如果为0,说明冗余链接正常。