西门子300PLC 软冗余的实现,详细步骤截图

合集下载

S7-300软冗余调试总结--WINCC组态(最新整理)

S7-300软冗余调试总结--WINCC组态(最新整理)
下边说如何实践冗余现实。首先在画面编辑器打开一个画面,在右边动态向导栏 (dynamic wizard)里选择“建立冗余连接”(creat redundant connection),出来对话框,点 “next”,出现选择连接的窗口,点一下上边所建的连接,“next”,出现下面窗口
这 里 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 的软冗余》这个文档,里边有 介绍一个系统自带的手动切换冗余的模板,很方便。。。

S7-300 400 PLC 系统软件冗余调试的常见问题

S7-300 400 PLC 系统软件冗余调试的常见问题

S7-300 400 PLC 系统软件冗余调试的常见问题问题1:硬件组态需要注意什么?回答:软冗余系统的冗余控制只能通过ET 200M实现,按照图1进行组态。

A、B站的组态必须确保一致,可以拷贝ET200M的组态,在另一站点组态中使用图2所示菜单操作。

图1图2问题2:哪些模块可以支持软冗余?回答:可以通过软冗余手册查询,或参考以下链接的FAQ。

问题3:FC100“SWR_START”中定义的数据区,哪些是冗余数据区?哪些是非冗余数据区?有什么区别?回答:如图3红色区域,冗余同步数据区包括:过程映像输出区/DB/IEC/M;如图3绿色区域,非冗余数据区包括:DB。

冗余数据区,主站的数据会通过冗余链路覆盖到备用站,保证主备之间数据同步;非冗余DB区,无论主备,数据按照定义的A-B B-A方向传递。

注意!无论冗余数据区还是非冗余数据区,A、B站点的长度必须一致。

如果不需要使用,长度定义为0。

图3问题4:软冗余中DB块的影响。

回答:软冗余系统中会使用一些特殊功能的DB块,在FC100“SWR_START”中定义,如图4:图4A:软冗余工作DB,程序会自动生成,不要在项目中手动添加;“DB_SEND_NO”、“DB_RCV_NO”定义的DB,在冗余站两侧一致。

B: FB101“SWR_ZYK”的背景数据块,注意生成DB5的长度。

如果创建出错,CPU能够正常运行但是SF灯报错,诊断缓冲区如图5:图5查看DB5的长度如图6,只有100字节,此时双击打开DB5看不到内部参数,如图7。

可以删除DB5,重新生成FB101“SWR_ZYK”背景数据块。

正常MPI同步-194字节;以太网/PROFIBUS同步-358字节。

图6图7C:冗余DB区,主站的数据随时同步备用站。

需要手动创建,IEC定时器的背景数据块也需要生成,A、B站点长度一致;生成的DB块的长度需要大于2个字(新生成的DB块,内部只有一个INT变量,长度2字节)。

软冗余调试

软冗余调试

调试步骤:安装软冗余软件包。

安装完成之后,在STEP7库中会出现以下几个功能块和功能。

从图中可以看到,300和400相对应的功能软件包,我们根据‘软冗余调试手册’的描述,选择应该用到的相应功能,在这里我们是用以太网的方式进行同步,故选用了以下的功能块:软件的网络组态如下图所示:在我们的程序中,主要对以下几个块进行编程:OB1,OB100步骤一:由于我们是需要对全部程序进行冗余,故在OB1的开头处编写如下程序,调用FB101FB101调用之后出现两段程序,分别放在程序开头和结尾处,此操作表示,在两段程序之间的程序块为冗余程序块。

它是如下判断的:如果判断此CPU为主CPU的时候,执行冗余程序段,如果不是,则直接跳到结尾处,即不执行冗余程序段。

设置好之后保存关闭,之后对OB100进行编程。

(冗余设置成功之后在线监视返回值是0.表示软冗余同步成功)步骤二:对OB100进行编程。

在OB100中调用FC100。

如下图所示:相应参数我们参照“软冗余操作手册”进行设置。

到此为止,编程的部分已经完成。

在调试过程中有几点需要注意:1、如果是采用以太网的方式进行同步,那么要在CP341中要选择ISO传输,并且相应的MAC地址要填写正确,此处不能用IP地址。

2、下载时需要CPU为STOP状态,在每次更改OB100的参数后都要选择在线删除CPU中的DB1,DB2,DB3(300的CPU必须用MPI连接方式进行删除,以太网的方式删除不掉),此地方必须注意。

如下图所示:3、在同步的DB块中每个DB块的长度不得小于4个字节,并且DB号必须连续,DB数据块的总大小小于8KB,(400的CPU是64KB),否则会报错(读写长度的错误),导致CPU停机。

4、软冗余所支持的定时器必须是IEC定时器,S5定时器是不支持软冗余的。

5、软冗余功能的实现需要一些其它的系统块支持,在安装完软冗余软件包后打开例子程序,将所有的块复制到自己的程序中按照手册再进行修改即可。

300软冗余总结

300软冗余总结

ORTHO XUCHAO1.IEC_NO//IEC_LEN,DB_NO//DB_NO_LEN,比如IEC实际只用2个DB10-DB11,但能不能先预留好位置,IEC_LEN填4?以后有再加2个的余地?----可以预留,但是不能留空。

比如说DB_NO从1开始,实际使用的DB1、DB2,DB_NO_LEN填4,那么DB3、DB4必须要存在,而DB3、DB4里面随便建立一行内容就行。

IEC同理。

2.MB_NO//MB_LEN理解1)如只用M0.0,M0.5,M1.0,M1.3,M2.0,那MB_NO=0,MB_LEN=3?即M0.0/0.5就算一个B?----一个容量为8个人的房间,住了一个人是占用这个房间,住2个人、8个人都同样是占用了这个房间。

这里的最低单位是MB,如*间的最低的单位是房间而不是床铺。

2)必须使用连续地址吗,这样用MW20//MW24//MW30可否?如可以,那MB_NO=20,MB_LEN=12?,或MB_LEN就填30,以后也可增加MD,M的使用?-----必须连续,你可以只使用MW20/MW30,但是从MW20到MW30这段区域的数据都会被同步。

预留是可以的,但是预留的多了,浪费资源。

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////作为一名S7PLC热线工程师,面对众多类型的问题,软冗余无疑最“漫长”或者说最“困难”的问题之一。

究其原因,主要出自两个:1.配置过程和实现过程“复杂”,很多初次接触的工程师较难入手。

2.有很多“隐蔽”的知识点,如果在实现软冗余过程中没有注意到,会出现形形色色的奇怪问题。

为了能给正在使用或者将来要使用软冗余的工程师一点帮助,现在结合热线上出现的常见问题和难点,与大家分享一下:1.什么是软冗余?需要什么呢?软冗余:顾名思义用软件编程的方式实现PLC的冗余,PLC之间需要通过MPI接口(CPU上有)或者通过以太网、PROFIBUS同步当前数据。

西门子软冗余指南

西门子软冗余指南

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

实验报告-S7-300软冗余

实验报告一、目的S7-300软冗余:利用315-2DP的MPI实现软件冗余二、条件及设备软冗余软件,两台S7-315-2DP,PROFIBUS电缆,IM153-2以及有源备板总线。

三、步骤1.运行STEP5.1,插入S7-300 STATION。

2.硬件配置:3.打开EDIT菜单,执行COPY,INSERT REDUNDANCY,生成一新S7-300STATION.编译。

4. 编程:4.1 软冗余需要使用的功能块: 在OB1 或OB35中:FB101(SWR_ZYK:在冗余程序块之前、之后都需调用;一旦调用,自动将数据从主站传递到备用站)。

在OB1或OB35中使用。

例如:CALL FB 101 , DB5 // Call of FB 101 'SWR_ZYK' with instance DBDB_WORK_NO :=DB1 // Work DB for SWRCALL_POSITION:=TRUE // Call_Position = TRUE at begin of redundant programRETURN_VAL :=MW6 // Block return valueEXT_INFO :=MW8 // Extended informationA DB5.DBX 9.1 // Check if station is MasterJC END// redundant user programL 1L MW 20+IT MW 20L 5L MW 100+IT MW 100L MW 100T DB10.DBW 0L DB10.DBW 0T MW 22//redundant user programEND: NOP 0CALL FB 101 , DB5 // Call of FB 101 'SWR_ZYK' with instance DB DB_WORK_NO :=DB1 // Work DB for SWRCALL_POSITION:=FALSE // Call_Position = FALSE at END of redundant programRETURN_VAL :=MW10 // Block return valueEXT_INFO :=MW12 // Extended information在OB100中:FC100(SWR_START,用于在OB100中,初始化两个站,如:外围输出区、位内存地址区、数据块区、静态数据块区;区域必须连续设置;需设置三个数据块用于存储内部数据)。

S7300软冗余指南

S7300软冗余指南

PLC系统软件冗余的说明与实现朱震忠SIEMENS A&D CS2004-04-06首先我们建议您访问siemens A&D公司的技术支持网站:www4.ad.siemens.de您可以在该网站的检索窗口中键入Hot Swap关键字,获取相关信息:图1如上图所示,第一步在IE浏览器中输入www4.ad.siemens.de路径,第二步选择English页面,第三步在搜索框中输入您产品或问题的关键字(英文),第四步用鼠标点击Search键;软件冗余基本信息介绍软件冗余是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控制系统组成。

PLC软冗余系统软硬件组成及实现原理

PLC软冗余系统软硬件组成及实现原理

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 带有冗余功能的程序结构。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

主要硬件:(注意冗余要采用有源背板、有源导轨)讯的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复制到项目里。

4.把冗余需要的数据块、定时器个数及中间变量计算好。

数据块号及地址必须是连续的。

5.插入背景数据块DB200-DB240,共41个数据块,作为IEC定时器6.插入DB20-DB25共6个数据块作为冗余数据块。

7.MB20-MB74 , 55个字节。

8.插入OB359.插入OB8610.插入OB8211.插入OB10012.插入OB12113.插入OB12214.在OB100里调用,用于初始化冗余在OB100中调用FC100“SWR_START”,用于初始化冗余,再在OB35中调用FB101“SWR_ZYK”来实现冗余程序和数据的同步,然后再OB86中调用FC102“SWR_DIAG”进行诊断,这个诊断调用一定要有。

15.在OB100中调用FC100“SWR_START”。

FC100的参数设置相当复杂,而且基本上出现问题都出在这里。

参数设置:AG_KENNUNG:这个参数是确定A、B站的,如果是A站程序,就写入“A”,B站的程序就写入“B”。

DB_WORK_NO:这里需要填入一个DB号,填“DB1”,而这个DB1将来不需要手动生成,FC100会自动生成。

这个DB是实现冗余过程内部需要的数据块。

DB_SEND_NO:同上填入一个DB号,如“DB2”,同样是FC100自动生成,不需要手动生成。

DB_RCV_NO:同上填入一个DB号,如“DB3”,同样是FC100自动生成,不需要手动生成。

MPI_ADR:这个参数是对方站的MPI地址,只有用MPI方式同步的时候才有意义。

使用以太网同步,还是按照实际的写上了。

以免出错。

LADDR:CP通讯处理器组态时的硬件地址,采用DP或者以太网通讯时才用。

这个地址就是前边硬件配置中插入冗余连接的时候出现的地址LADDR 十六进制0100,或者是十进制256。

VERB_ID:这个就是我们组态硬件是,插入的冗余连接的那个ID号,被我从0001 A050改为了0007 A050,所以ID变成了7,这里就填7。

DP_MASTER_SYS_ID:这个是DP主站网络的ID号,不是DP地址号,只要在硬件组态中,双击DP线,就可以出现这个号码,如下图,这里填1。

DB_COM_NO:这个是调用FB101的时候使用的FB101的背景数据块,一般默认是DB5,等调用FB101的时候只能用这里填写DB5.DB_KOMMUN:这个参数是连接ET200M的DP通讯口类型,如果是CPU集成的DP通讯口连接ET200M就填“1”,如果是CP通讯卡上的DP口连接ET200M填“2”。

ADR_MODUS:CPU分配I/O地址的矩阵的增量,不同CPU的地址矩阵不同。

选项是两个1:对于基本地址0,1,2,3,4……4:对于基本地址0,4,8,12….我是没看懂,填了“1”。

PAA_FIRST:冗余ET200M的第一个输出字节地址,按前边硬件配置,“0”。

PAA_LAST:冗余ET200M的最后一个输出字节地址,按前边硬件配置,“11”。

MB_NO:冗余程序需要的内存变量地址区的起始地址,按前边提到的,“20”。

MB_LEN:需要的内存变量区长度,以BYTE为单位,“55”。

IEC_NO:冗余的IEC定时器、IEC计数器,所使用的背景数据块的起始地址。

我用5个定时器,起始地址用DB200,这里只要填“200”就可以。

IEC_LEN:冗余的IEC定时器、IEC计数器的背景数据块的个数,填“41”。

这里的41个背景数据块,会在调用IEC定时器时需要填写,按照前面建的数据块的DB200-DB240不能随便写。

DB_NO:冗余数据块的起始数据块,按前边说明,我填“20”,只填数字。

这里的数据块不能小于两个字节,我插入数据块后随便在里面写INT 变量,使它不小于两个字节就行了,不然会出错。

DB_NO_LEN:这里是填一共用了几个数据块,填“6”。

SLAVE_NO:冗余部分IM153的最低DP地址号,我的IM153设置为3,且只有一个,所以填“3”。

SLAVE_LEN:只有一个冗余DP从站,填“1”。

SLAVE_DISTANCE:IM153-2的PROFIBUS地址设置的标识符,如果两个PROFIBUS接口地址一样,则填“1”,如果不同(即分别为n和n+1)则填“2”。

DB_A_B_NO:将非冗余数据从A站传送到B站,所用的发送数据DB。

将那些需要传输的数据都直接或者间接存到这个DB里,系统会自己传送。

DB_A_B_NO_LEN:上边选择的非冗余数据交换DB的数据量,就是字节数,A,B站这个参数必须一样,否则CPU停机。

没有用到写0DB_B_A_NO:同上,这个是从B站传到A站的DB(见过例程里边有A->B,和B->A用同一个DB的,我也用了一个,没出问题。

主要是我没有互相传送的数据,不知道有数据的时候是什么样,估计只要两个站一样应该没问题。

)DB_B_A_NO_LEN:同上,没有用到写0RETURN_VAL:调用FC100的返回值。

EXT_INFO:FC100内部调用其他子块的返回值CALL "SWR_START"AG_KENNUNG :='A'DB_WORK_NO :=DB1DB_SEND_NO :=DB2DB_RCV_NO :=DB3MPI_ADR :=7LADDR :=256VERB_ID :=7DP_MASTER_SYS_ID:=1DB_COM_NO :=DB5DP_KOMMUN :=1ADR_MODUS :=1PAA_FIRST :=0PAA_LAST :=11MB_NO :=20MB_LEN :=55IEC_NO :=200IEC_LEN :=41DB_NO :=20DB_NO_LEN :=6SLAVE_NO :=3SLAVE_LEN :=1SLAVE_DISTANCE :=1DB_A_B_NO :=DB11DB_A_B_NO_LEN :=W#16#0DB_B_A_NO :=DB12DB_B_A_NO_LEN :=W#16#0RETURN_VAL :=MW2EXT_INFO :=MW4下一步在OB35中调用FB101“SWR_ZYK”来实现冗余程序和数据的同步。

CALL "SWR_ZYK" , DB5DB_WORK_NO :=DB1CALL_POSITION:=TRUERETURN_VAL :=MW6EXT_INFO :=MW8A DB5.DBX 9.1JC OVERCALL “冗余程序”OVER: CALL "SWR_ZYK" , DB5DB_WORK_NO :=DB1CALL_POSITION:=FALSERETURN_VAL :=MW10EXT_INFO :=MW12然后再OB86中调用FC102“SWR_DIAG”进行诊断,这个诊断调用一定要有。

CALL "SWR_DIAG"DB_WORK :=1OB86_EV_CLASS:=#OB86_EV_CLASSOB86_FLT_ID :=#OB86_FLT_IDRETURN_VAL :=MW14软件设置和硬件设置一定要按照以上顺序进行设置,要先将用到的数据块复制到程序里,然后进行OB100 OB35 等的设置和编写,否则会出错。

另外,因为OB100为初始化程序块,用到的数据块在初始化的时候生成,在调试过程中若是更改了OB100 里的参数,进行程序下载时,一定要先将PLC 停机,在线删除PLC里的程序块和数据块,将PLC 复位后,再进行下载。

停机:PLC ---诊断、设置—工作模式复位:PLC ---诊断、设置—清除复位。

相关文档
最新文档