s7-300软冗余手册讲解学习
S7-300软冗余系统调试心得
S7-300软冗余系统调试心得集成工程部张宏伟1 基本结构及工作原理1.1 基本结构硬件结构包括一对S7-300控制器及I/O、ET200从站(每个从站必须包括2个IM153-2和对应的I/O模块,必须采用有源端子板)及3个通讯(A站对分布式IO PROFIBUS-A、B 站对分布式IO PROFIBUS-B、A站对B站数据同步(MPI\PROFIBUS\Ethernet))。
软件需要STEP7 V5.x 及软冗余软件包V1.x基本结构如下图所示:图1.1 S7-300软冗余基本结构由上图可以看出,软冗余可以实现的冗余有✓主机架电源及总线冗余✓控制器冗余✓现场总线冗余1.2 工作原理在软冗余系统进行工作时,A、B控制系统(CPU、通讯、I/O)独立运行,有主系统的PLC掌握对ET200从站的I/O控制权。
A、B系统中的PLC程序有非冗余用户程序段和冗余用户程序段组成,CPU在执行冗余程序段之前会读取系统的冗余状况,若为主系统则PLC 执行全部程序,若为备用系统则跳过冗余程序段只执行非冗余用户程序。
图1.2 软冗余工作流程1.3 程序结构对于硬件组态,可采用西门子提供的冗余模板,修改CPU信号并添加ET200从站,比较简单,没有什么特别的地方,这里就不再赘述。
S7-300软冗余系统的用户程序包括非冗余程序段、用户程序段、系统诊断功能块、站间冗余数据备份等组成,一般建议将非冗余程序段写到OB1中,而冗余程序段写在OB35中。
非冗余程序段和冗余程序段与普通系统的写法一样,区别只是放置的位置不同。
在编制冗余程序的时候需要先调用FB 101 功能块,用来判断整个系统的冗余状况,在FB101 的背景DB块中可以读取到冗余连接状况和标志位。
利用冗余标志位来选择执行或者不执行冗余程序段。
因此编制冗余程序可分为4部分,如下图所示:图 1.3 软冗余程序结构首先启动系统冗余数据同步功能,根据状态字判断是否为主控制器,是否需要执行冗余程序段,若为主控制器执行冗余程序段,否则停止系统冗余程序段。
S7-300软硬件培训(技术讲解)
• 存储器卡
为存储器卡提供一个插槽。当发生断电时利用存储器卡可以不需
要电池就可以保存程序。
• 电池盒
在前盖下有一个装锂电池的空间,当出现断电时锂电池用来保存
RAM中的内容。
• MPI连接
用MPI接口连接到编程设备或其它设备
• DP 接口
分布式 I/O 直接连接到CPU的接口。
• 1、CPU的运行模式
5、功能模块 (FM)
• 功能模块主要用于对时间要求苛刻、存储器容量要求 较大的过程信号处理任务。
- 计数:计数器模块 - 定位:快速/慢速进给驱动位置控制模块、电子凸轮
控制器模块、步进电动机定位模块、伺服电动机定位 模块等 - 闭环控制:闭环控制模块 - 工业标识系统:接口模块、称重模块、位置输入模块、 超声波位置解码器等。
培训资料
• 名称: S7-300软硬件培训(技术讲解) • 所属班组:xx • 汇报人:xx
一、PLC的基础理论
1、S7-300概述 2、S7-300的CPU模块 3、S7-300安装
S7-300概述
S7-300 是西门子公司生产的可编程序控制器 (PLC)系列产品之一。其模块化结构、易于实现分 布式的配置以及性价比高、电磁兼容性强、抗震 动冲击性能好,使其在广泛的工业控制领域中, 成为一种既经济又切合实际的解决方案。 一、特性 • 针对低性能要求的模块化中小控制系统 • 可配不同档次的CPU • 可选择不同类型的扩展模块 • 可以扩展多达32个模块
●电压波动范围:5%
3、CPU模块
各种CPU有不同的性能,例如有的CPU集成有数字量和模拟 量输入/输出点,有的CPU集成有PROFIBUS-DP等通信接 口。CPU前面板上有状态故障指示灯、模式开关、24V电源 端子、电池盒与存储器模块盒(有的CPU没有)。
西门子S7300学习教程6共79页
PLC是运行在工业环境中的控制器,一般而言可靠性比较高, 出现故障的概率较低,但是,出现故障也是难以避免的。一 般引发故障的原因有很多,故障的后果也有很多种。
引发故障的原因虽然我们不能完全控制,但是我们可以通过 日常的检查和定期的维护来消除多种隐患,把故障率降到最 低。故障的后果轻的可能造成设备的停机,影响生产的数量; 重的可能造成财产损失和人员伤亡,如果是一些特殊的控制 对象,一旦出现故障可能会引发更严重的后果。
使用寿命
锂电池电压是否降低? 继电器输出触点
锂电池工作5年左右
继电器输出触点寿命300万次 (35V以上)
二、日常维护
PLC除了锂电池和继电器输出触点外,基本 上没有其它易损元器件。由于存放用户程 序的随机内存(RAM),计数器和具有保 持功能的辅助继电器等均用锂电池保护, 锂电池的寿命大约5年,当锂电池的电压逐 渐降低达一定程度时,PLC基本单元上的电 池电压跌落指示灯会亮。提示用户注意, 有锂电池所支持的程序还可以保持一周左 右,必须更换电池,这是日常维护的主要 内容。
调换锂电池的步骤:
1、在拆装之前,应先让PLC通电15S以上,这样可 使作为内存备用电源的电容器充电,在锂电池断 开后,该电容可对PLC作短暂供电,以保护RAM 中的信息不丢失。
2、断开PLC的交流电源。 3、打开基本单元的电池盖板。 4、取下旧电池,装上新电池。 5、盖上电池盖板。 更换电池的时间要尽量短,一般不允许超过3min。
更换继电器
更换负载或加假负载电 阻
6
特定继电器编号的 输出不关断(动作
1、程序OUT指令的继 电器编号重复
修改程序
指示灯亮)
2、输出回路不良
更换单元
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 的软冗余》这个文档,里边有 介绍一个系统自带的手动切换冗余的模板,很方便。。。
第2讲:S7-300 PLC软件操作与PLC组态
业精于2-1、S7-300 PLC应用软件西门子S7-300 PLC的应用软件可以分为两个家族:STEP7系列安装完成并重新启动计算机,“SIMATIC Manager(SIMATIC管理器)”的图标将显示在Windows桌面上。
以后双击该图标即可启动STEP7软件。
2-1、S7-300 PLC应用软件西门子公司为了增强STEP7 V5版本的软件功能,还开发了一些外挂软件包,这些软件安装后都可以由2-1、S7-300 PLC应用软件STEP7 V5.5软件(包括外挂软件包)安装以后,必须经过正确的授权才能工作,授权密钥由西门子公司有偿2-1、S7-300 PLC应用软件STEP7实质上是一个集成的开发工具,其内部包含了很多的应用程序,在应用过程中,需要打开不同的窗口来2-2、STEP7 V5.5应用2-2、STEP7 V5.5应用西门子S7-300型PLC在应用之前,必须进行硬件组态才能使用。
硬件组态的目的是为S7-300型PLC中的硬2-2-1、通过向导组态(1)双击图标,启动SIMATIC manager,第一次启动的时候,会自动打开向导界面。
2-2-1、通过向导组态(2)点击“下一步”,选择CPU型号,本次使用的CPU 模块是CPU-314C-2DP,订货号为6ES7 314-6CG03-2-2-1、通过向导组态(3)点击“下一步”,为S7-300插入程序块。
OB1是主程序,自动出现,OB100是初始化程序,初学的时候先2-2-1、通过向导组态(4)点击“下一步”,项目选择一个名称,并选择保存路径,然后点击“完成”,就实现了项目的硬件组态的基2-2-2、自由组态(1)双击图标,启动SIMATIC manager,在出现向导界面的时候点击取消,向导界面会消失。
如果以前已经2-2-2、自由组态(2)在新的项目管理器(SIMATIC Manager)界面中选择“文件”→“新建”或点击“新建项目/库”图标,打开2-2-2、自由组态新项目的名称输入完成后,点击“确定”,将打开新项目的工作界面。
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字节)。
西门子S7300学习教程6
通过观察诊断符号,可以判断CPU模块的运行模式,是否 有强制变量,CPU模块和功能模块(FM)受否有故障。
打开在线窗口,在SIMATIC管理器中执行菜单命令 “PLC”→“Diagnostic/Setting”→“Hardware Diagnostics”,将 打开硬件诊断快速浏览窗口。在该窗口中显示PLC的状态, 看到诊断功能的模块的硬件故障,双击故障模块可以获得 详细的故障信息。
PLC是一种工业控制设备,尽管在可靠性方 面采取了许多措施,但工作环境对PLC影响 还是很大的。所以,通常每隔半年时间应 对PLC作定期检查。如果PLC的工作条件不 符合表7-1规定的标准,就要做一些应急处 理,以便使PLC工作在规定的标准环境。
表7-1 周期性检查一览表
检查项目
交流电源 电压
更换继电器
更换负载或加假负载电 阻
6
特定继电器编号的 输出不关断(动作
1、程序OUT指令的继 电器编号重复
修改程序
指示灯亮)
2、输出回路不良
更换单元
1、电源电压低
调整电压
2、程序OUT指令的继 电器编号重复
修改程序
7
输出出现不规则的 ON/OFF现象
3、噪音引起的误动作
抗噪音措施:
装抑制器、装绝缘变压 器、用屏蔽线配线等
处理
加电源 使电源电压为额定值 拧紧 把端子板补充插入、锁 紧。更换端子板联接器 更换保险丝 更换单元 更换单元 更换单元 更换单元
修改程序
更换单元 更换输出器件 检查输出线 拧紧 端子充分插入、拧紧 更换继电器 更换单元
西门子300PLC 软冗余的实现,详细步骤截图
主要硬件:(注意冗余要采用有源背板、有源导轨)本控制柜采用2个315-2DP CPU通过CP343-1连接到以太网交换机实现冗余链路,用DP通讯的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复制到项目里。
西门子S7-300学习资料
西门⼦S7-300学习资料S7-300学习笔记第⼀讲:S7-300简介⼀、标准型S7-300的硬件结构1.S7-300为标准模块式结构,各种模块相互独⽴,并安装在固定的机架(导轨)上,构成⼀个完整的PLC应⽤系统。
2.第⼀槽为电源模块,第⼆槽为CPU模块,第三槽为通信模。
3.300电源模块(PS)可⽤其它开关电源代替,⽽400必须选⽤原装模块⼆、S7-300 CPU模块1.CPU模块分类1)300PLC可分为紧凑型.标准型.⾰新型.户外型.故障安全型和特种型CPU2)C表⽰紧凑型.F故障安全型T表⽰特种型2.S7-300 CPU的主要特点3.S7-300 CPU状态故障显⽰1)SF(红⾊):系统出错/故障指⽰灯,硬件或软件出错时亮2)BATF(红⾊) :电池故障指⽰灯,没电或没有装⼊电池时亮.314和316有.故障时不影响CPU⼯作3)DC5V(绿⾊) :5V电源指⽰灯,总线5V电源正常时常亮4)FRCE(黄⾊) :强制作业有效指⽰灯,有强制时亮5)RUN(绿⾊) :运⾏指⽰灯.处于RUN时亮,在STARTUP(启动)时以2HZ闪烁,在HOLD(暂停)时0.5HZ闪烁6)STOP(黄⾊) :CPU处于STARTUP. HOLD.时常亮,在存储器复位时0.5HZ闪.在存储器置位时以2HZ闪烁.7)BUS DF(BF)(红⾊) :总线出错时亮,(只适⽤于带有DP接⼝的CPU).8)SF DP:接⼝错误指⽰灯,DP接⼝故障时亮三、S7-300 PLC功能1.⾼速的指令处理:0.1-0.6us的指令处理时间2.⼈机界⾯(HMI):⼈机界⾯集成在S7-300操作系统内3.诊断功能:CPU的智能化的诊断系统可连续监控系统的功能是否正常,记录错误和特殊的系统事件4.⼝令保护:多级⼝令保护可以使⽤户⾼度、有效的保护其技术机密,防⽌未经允许的复制和修改四、S7-300 模块PS电源模块、IM接⼝模块(360发送361接收)、FM功能模块、SM信号模块。
西门子S7300学习教程7
现PLC之间的少量数据交换,它不需要额外
的硬件和软件就可网络化。每个S7-300
CPU都集成了MPI通信协议,MPI的物理层是
RS-485。通过MPI,PLC可以同时与多个
设备建立通信连接,这些设备包括编程器
PG或运行STEP7的计算机PC、人机界面
(HMI)及其它SIMATIC S7,M7和C7。
如果PG是使用时才连接,可以用带PG 插座的网络接头,上位计算机则需使用P C/MPI适配器。
对于临时接入的PG节点其MPI地址 可设为0;或设为最高MPI地址如126, 然后用S7组态软件确定此MPI网所预设 的最高地址,如果预设的小,则把网络 里的最高MPI地址改为与这台PG—样的 最高MPI地址。
节点(装置) 缺省的MPI地 缺省的最高
址
MPI地址
PG
0
15
OP
1
15
CPU
2
15
按上述规则组建的—个MPI网络及地址分 配示于图7.4中。可用STEP 7软件包中 Configuration的功能为每个网络节点分配一个 MPI地址和最高地址,地址—般标在该节点
外壳上,用户看起来很方便。分配地址时可
(3) 插入所有需要通信的CPU 双击“GD ID”右边 的CPU栏选择需要通信的CPU。CPU栏总共有15列, 这就意味着最多有15个CPU能够参与通信。在每个 CPU栏底下填上数据的发送区和接收区,例如第一 列的CPU313C(1)的发送区填为 “DB1.DBB0:12”(DB1.DBB0:12表示从DB1.DBB0开 始的22个字节),然后在菜单“Edit”下选择“Sender” 设置为发送区,该方格变为深色,同时在单元中 的左端出现符号“>”,表示在该行中CPU313C (1)为发送站,在该单元中输入要发送的全局数 据的地址。只能输入绝对地址,不能输入符号地 址。包含定时器和计数器地址的单元只能作为发 送方。在每一行中应定义一个且只能有一个CPU作 为数据的发送方,而接收方可以有多个。同一行 中各个单元的字节数应相同。
实验报告-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中,初始化两个站,如:外围输出区、位内存地址区、数据块区、静态数据块区;区域必须连续设置;需设置三个数据块用于存储内部数据)。
S7 300 软冗余的原理和配置
M P I/P R O FIB U S or E thernet
S 7 -3 0 0 /S 7 -4 0 0 S tation A
S 7 -3 0 0 /S 7 -4 0 0 S tation B
PR O FIBU S-D P PR O FIBU S-D P
E T 200M distributed I/O device w ith IM 153-2
7.1.2 系统工作原理 在软冗余系统进行工作时,A、B 控制系统(处理器,通讯、I/O)独立运行,由主系统 的 PLC 掌握对 ET200 从站中的 I/O 控制权。A、B 系统中的 PLC 程序由非冗余(nonduplicated)用户程序段和冗余(redundant backup)用户程序段组成,主系统 PLC 执 行全部的用户程序,备用系统 PLC 只执行非冗余用户程序段,而跳过冗余用户程序段。 软冗余系统内部的运行过程参考图 7-2。
CPU 31x-2DP
6ES7 315-2AFxx-0AB0 无硬件冗余的功能。
6ES7 315-2AG10-0AB0
6ES7 316-2AGxx-0AB0
6ES7 318-2AJxx-0AB0
CPU 412-1
6ES7 412-1XFxx-0AB0 S7-400 全系列的 CPU 都可以应用于
CPU 412-2
S7-400 H 系列的 CPU 属于硬件冗余 方式,相对于软冗余,硬件冗余系统 切换速度快,主备 CPU 中的数据和 事件保证完全一致,适于高可靠性应 用场合,成本较高
CPU 416-1
6ES7 416-1XJxx-0AB0
CPU 416-2DP
6ES7 416-2XKxx-0AB0
S7300软冗余调试总结
S7-300软冗余调试总结我用的软硬件配置:概述:本系统2个315-2DP CPU通过CP343-1连接到以太网互换机实现冗余链路,用DP通信的IM153-2 冗余套件实现ET200M的冗余通信,CP1612SIEMENS以太网卡连接到互换机实现WINCC与冗余系统的通信(听说能够直接用运算机网卡实现)。
下面介绍我整理后的实现进程:硬件配置:先添加两个站A站和B站,每一个站单独进行配置,硬件配置完后,需要增加一个冗余连接,这需要打开“网络配置”(configure network),在里边右击A站CPU(B站也行)会显现菜单,选择“添加新连接”(insert new connection),假设是两个站都配置过,这是就会显现B站的信息,而且默许已经选在了B站CPU上,你需要做的确实是在下边选择“连接类型”(connection type),我用以太网ISO-TCP协议实现冗余的,那个地址依照自己需要的类型选择就行,点OK,就显现下面那个画面,那个地址边的ID:7 和LADDR十六进制100,也确实是十进制256,后边设置FC100要用到。
注意ID(hex)0007 A050 那个地址是能够选择的,原先是0001 A050,被我改成了0007 A050,这时的ID就成了7。
因为资料上说以太网实现冗余一样Local ID 不能小于2(其他方式实现没说),因此要改一下,两个CPU的都要改一致,那个在后边设置FC100参数要用到,如此就成立了一个新的连接,在界面的下方能看到一个连接显现,另外需要注意的是假设是用DP冗余I/O那么ET200M必需两个站里都要做,而且要一模一样,DP 地址也一样。
另一个需要注意的是输出地址必需持续,那个一样的时候假设是有模拟量数字量混合的话,容易不持续,需要修改一下,改成持续的,比如我那个地址Q改成0~9,那个在后边FC100设置也要用。
硬件配置需要注意的就这些。
软件实现:要实现软冗余,需要在OB100中挪用FC100“SWR_START”,用于初始化冗余,再在OB35中挪用FB101“SWR_ZYK”来实现冗余程序和数据的同步,然后再OB86中挪用FC102“SWR_DIAG”进行诊断,那个诊断挪用必需得做。
西门子S7-300软件教程
2.4 组态电源及IO模块
双击PM-E DC24S,或选中该模块将其拖至插槽,依次将DI,DO, FDI,FDO放至插槽,
2.5 HW Config 硬件组态界面
双击模块对IO地址进行设置,不进行设置将可自动分配地址
● 点击【NEXT】按钮,在新项目中选择CPU模块的型号为CPU 313C-2DP。 ● 点击【NEXT】按钮,选择需要生成的逻辑块,至少需要生成作为主程序 的组织块OB1。 ● 点击【NEXT】按钮,输入项目的名称,按【Finish】生成的项目。过程 如图2-8所示。
生成项目后,可以先组态硬件,然后生成软件程序。也可以在没有组态 硬件的情况下,首先生成软件。
窗口的左上部是一个组态简表,它下面的窗口列出了各模块详细的信 息,例如订货号、MPI地址和I/O地址等。右边是硬件目录窗口,可以用菜单命 令【View】→【Catalog】打开或关闭它。通常1号槽放电源模块,二号槽放 CPU,3号槽放接口模块(使用多机架安装,单机架安装则保留),从4到11号 则安放信号模块(SM、FM、CP)。
2.6 FDI参数设置
一般参数设置,Sensor supply通常急停设置为internal,光栅,扫描仪设 置为external。Evaluation of the sensor参数设置,1oo2 为双通道, 1oo1为单 通道
2.7 其它品牌元器件组态
如下图,右侧硬件组态列
保存编译组态,硬件组态完成。
组态时用组态表来表示导轨,可以用鼠标将右边硬件目录中的元件“拖 放”到组态表的某一行中,就好像将真正的模块插入导轨上的某个槽位一样。
①双击CPU 317F-2 PN/DP,进入CPU属性窗口,在打开 的对话框中设置模块的参数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
s7-300软冗余手册
S7-300的软冗余要求从站必须通过有源底板连接。
从站的所有模块需要确保没有故障,即SF灯不亮尤其是通讯模块。
S7-300的软冗余分为三种方式:MPI ,DP ,以太网。
三种冗余方式的通讯速度不同,以太网通讯速度最快,DP通讯速度次之,MPI通讯速度最慢。
不同的通讯方式选择的功能块不相同,具体功能块的选择如图1所示:
图1
下面以以太网冗余为例,简述冗余过程:
(一)插入两个S7-300的站,SIMATIC 300(A) 和SIMATIC 300(B)。
(二)设置A站的IP地址为192.168.0.10 ,B站的地址为
192.168.0.20 。
(三) 在A站的块中插入OB100、OB35、OB86组织块,并对其中的OB100、OB35、OB86进行编程。
(四) 在组态网络中新建ISO-ON-TCP 链接。
要求ID 号要大于2且主从站的ID 号一致。
上图为最终效果图,下图为过程
(五)
在OB100中我们调用FC100’SWR_START ’进行软冗余的初始化。
FC100’SWR_START 的各个引
脚的注释请参照最后的附录
调用FC100的位置如图
主站设置如左图所示步
骤,从站不需要再次设
定但需要在从站中给该
从站的通讯ID 号与主
站相同且大于2。
,图
1
2
3
4
5
图中1表示为当前CPU的站号,A站写A,B站写B。
图中2填写对方的地址,MPI_ADR表示对方的MPI地址,LADDR表示CP通讯处理器组态的硬件地址,采用PROFIBUS或Ethernet网络进行数据同
步时才有意义,默认值为256不需要更改。
VERB_ID表示网络链接的ID号,在NETPRO窗口中组态的链接的ID值,如FDL Connection、ISO Connection或S7 Connection。
数值要大于2。
DP_MASTER_SYS_ID表示DP主站网络的ID号,你可以在硬件组态中双击链接ET200M从站紫色的PROFIBUS主从网络,获取该ID值
双击。
图中3填写输出模块(DO..AO)总的起始地址和最终地址。
地址必须是连续的,中间不能含有没有定义的地址。
图中4填写冗余的M、计时器背景数据块、DB数据块的起始地址和长度。
数据必须是连续的,且冗余的DB块的数据不得小于2个字节。
图中5填写ET200从站的起始地址和个数。
表中需要注意的事项;
i. 冗余的DB块中数据必须大于2个字节,否则冗余会报错。
ii. 模块的输出DO,AO必须为连续的地址,冗余初始化中的输出中不能有无
效地址。
iii. 上表中的DB1,DB2,DB3数据块不需要人工创建,下载程序时CPU会自动创建数据块。
iv. 更改OB100中的FC100程序时,需要清空CPU 内的所有程序。
清空的方式为在线删除块内的所有数据。
v. 非冗余的DB块需要手动创建,数据必须大于2个字节。
(六) 一般我们建议您将您的非冗余程序段编写在OB1当中,而将冗余程序段编写在OB35当中,我们这里使用的是OB35的默认属性,即每100ms中断触发一次,您可以根据实际的需要在CPU属性中修改中断的时间间隔。
在OB35里调用FB 101 ‘SWR_ZYK’ 功能块,FB101块中封装了冗余功能的程序段,实现冗余功能。
调用FB101时,你可以在线地读出RETURN_VAL参数的数值,如果为0,说明冗余链接正常。
如果为8015说明数据同步的连接不成功,这是一个常见的错误,原因可能是CP342-5之间的FDL链接建立的不正确或物理链路不通,或者是FC100的VERB_ID参数与NETPRO中的链接ID号不一致。
当执行”SWR_START”程序块时,系统分配这些数据区,不能用S7的定时器和计数器,只能使用IEC标准的定时器和计数器。
你可以在软冗余手册的第三章第9节找到对应的诊断信息。
OB35中的程序可以分为4个部分。
(七)在OB86中调用诊断功能块FC 102 ‘SWR_DIAG’,当系统出现PROFIBUS总线错误时,该功能块返回诊断信息,供FB101使用。
(八)插入FB101内部调用的FB104,FC5、FC6等功能块,将所有的程序块下载到PLC当中。
备注
A.在使用MPI进行冗余通讯时不需要建立任何通讯连接,只需将通讯
线接好即可。
B.在使用以太网进行通讯时需要建立通讯连接。
注意,图中的ID号
不能小于2且主站和备站的ID号相同。
通讯时选择的通讯方式如图
中的Type。
组态完成后需要将主动连接的CPU进行下载。
C.在使用DP进行冗余通讯时需要建立通讯连接,连接类型选择FDL。
通讯连接建立后需要将主动连接的站的CPU进行下载。
D.
S7-300软冗余时的wincc连接设置(以太网通讯)
1.建立变量,按照正常非冗余的方式建立。
2.建立冗余连接。
打开任意一个编辑画面,在动态向导中的系统函数中选
择创建冗余连接如图
,
选择主用的连接如图,选择的是SXYC。
设置备用的连接如图
3.在全局脚本中添加脚本
MSRTCreateMsg( ServiceID, &MsgCreate, &Error );
}
}
}
if ( ServiceID != 0 )
{ MSRTStopMsgService ( ServiceID, &Error );
}
if ( GetTagDWordWait( "@SXYC@ConnectionState" ) == 0 )
{ SetTagDWord( "@SXYC@ForceConnectionState", 1 );
}
else
{ if ( GetTagBitWait( "SWR_wincc.Standby" ) == TRUE )
{ SetTagDWord( "@SXYC@ForceConnectionState", 0 );
}
}
return 1;
只需要紫色的C语言这其中的几个变量"@SXYC@ConnectionState",
"@SXYC@ForceConnectionState"这两个变量在前边说到的@SW变量组里边有。
其中的SW是连接的名字,需要对应上自己前边建的连接的名字。
"SWR_wincc.Standby"这个变量就是FB101冗余程序块的背景数据块中的变
量DB***.DBX9.1,这个变量是手动建立的,名称也可以自己设定, ***是在PLC冗余程序中调用冗余程序时自己设定的背景数据块号,我用的是DB5,所以我这里变量就连接DB5.DBX9.1这个数据位。
附录
FC100各引脚的含义。