西门子OP270触摸屏6寸
凡在上海朕锌电气设备有限公司采购西门子产品,均可质保一年,假一罚十
花30秒询价,你会知道什么叫优势;花60秒咨询,你会知道什么叫服务;
合作,你会知道什么叫质量!以质量求生存,以信誉求发展。
我司将提供一流的质量,服务作为自已重要的责任。
1 简介
软件冗余是低成本的冗余解决方案,适用于对切换时间要求不是很高的场合,主备切换
时间为秒级的控制系统。软冗余系统为两个站,一个为主站,一个为备用站;主备站的数据通讯链路为标准西门子通讯协议 (MPI/Profibus/Ethernet);冗余范围内的I/O模板需通过Profibus-DP网络连接到ET200M从站上;西门子的软件冗余 可以在S7-300或S7-400的标准系统中实现,只需调用软冗余软件包中的程序块。
西门子的多功能面板支持和软冗余CPU通讯,系统架构如图1所示,并且当某个CPU
连接中断,面板可以自动切换连接到另一个CPU;如果两个CPU主备切换,面板可以切换到主CPU。
图1
本文描述的是用WinCC flexible组态的多功能面板通过脚本的方式实现切换连接的方
法;本文只描述面板和CPU的集成PN口之间通过工业以太网通讯,面板和CPU之间通过其他通讯方式(如MPI/Profibus)连接也可以参考本文。
本文所使用的硬件和软件如下:
(A) S7-300 soft redundancy
CPU 315-2PN/DP (6ES7315-2EH13-0AB0, Firmware V2.5)
CPU 317F-2PN/DP (6ES7317-2FK14-0AB0, Firmware V3.2)
CP342-5 (6GK7342-5DA02-0XE0, Firmware V5.0)
IM153-2 (6ES7153-2BA02-0XB0)
(B) Panel
MP377 12”Touch (6AV6 644-0AA01-2AX0)
(C) Software
WinCC flexible 2008 SP3
Step7 V5.5 SP2+HF1
此方法只适用于支持三个以上连接,支持脚本及ChangeConnection函数的面板,如
TP/OP270、TP/OP277、MP270、MP277、MP370、MP377等。
本文不介绍软件冗余的原理及组态方法,详细可以参考:
《SIEMENS PLC系统软件冗余的说明与实现》
中心文档编号:A0039
78604454
2 组态Multi Panel和S7-300软冗余系统的通讯
2.1 CPU组态
A站:315-2PN/DP+IM153-2
B站:317F-2PN/DP+IM153-2
AB站之间通过CP342-5建立连接,实现冗余数据同步。
2.1.1 Step7中的硬件组态
A站:在Step7中组态315-2PN/DP,在DP总线上添加IM153-2,如图2所示。
图2
在CPU的属性中选择Clock Memory,设置Memory byte为MB0,如图3所示。
图3
B站:在Step7中组态317F-2PN/DP,在DP总线上添加IM153-2,如图4所示。
图4
在CPU的属性中选择Clock Memory,设置Memory byte为MB0,如图5所示。
图5
2.1.2 Step7中的网络组态
A站和B站之间通过CP342-5建立FDL连接,此连接为AB站之间的数据链路通道,打开Netpro界面,新建一个FDL连接,如图6所示。
图6
2.1.3 Step7中的CPU编程
说明:本文描述的编程只涉及实现软冗余功能的部分,其他功能的实现不予介绍。
A站:OB100中调用FC100,实现初始化,如图7所示。
图7
OB35中调用FB101,必须在执行冗余用户程序的前/后分别调用FB101,如图8所示,而FB101内部调用了FB104、FC5、FC6,必须装载这三个块。
图8
OB86中调用FC102,当DP总线有故障时CPU可以实现主备切换,如图9所示。
图9
B站:OB100中调用FC100,实现初始化,如图10所示。
西门子OP270触摸屏6寸
图10
OB35和OB86中的编程和A站相同。
组态好的项目分别到CPUA和CPUB中,做好硬件接线。
2.2 在WinCC flexible中组态Multi Panel
在Step7中插入一个Simatic HMI station,选择设备类型为MP377 12” Touch,如图
11所示。
(说明:本文描述的是在Step7中集成组态MP377的项目,这不是必须的,也可以分开
组态,即单独组态CPU和MP377。)
图11
2.2.1 组态连接
在项目中组态三个连接,分别对应A站、B站和实际连接。
Conn_A对应A站,CPU的参数是A站的参数,如图12所示。
图12
Conn_B对应B站,CPU的参数是B站的参数,如图13所示。
图13
建立Conn_real用于创建过程变量,通信驱动程序选择“SIMATIC S7 300/400”,PLC
的地址参数默认设置为192.168.0.2,扩展插槽是2,机架号是0。切换连接的脚本会根据切换条件给conn_real分配不同的参数。
2.2.2 组态变量
在Conn_A下建立变量,如图14所示。其中trigger_PLCA的地址是M0.4,采集模式是
“循环连续”,采集周期是500ms。
图14
在Conn_B下建立变量,如图15所示。其中trigger_PLCB的地址是M0.4,采集模式是
“循环连续”,采集周期是500ms。
图15
项目中的其他变量如图16所示,test1~test5是测试变量,用于测试conn_real的连接状
态。
图16
2.2.3 切换连接的脚本逻辑解释
在变量trigger_PLCA的“事件—更改数值”中添加脚本connection_PLCA,实现切换连
接到conn_A,如图17。脚本逻辑参见下文。
图17
在变量trigger_PLCB的“事件—更改数值”中添加脚本connection_PLCB,实现切换连
接到conn_B,如图18。脚本逻辑参见下文。
图18
在项目树下面的“设备设置—调度器”中建立一个作业,每分钟执行,在函数列表
中添加脚本connection_lost,用于检测是否和两个CPU的连接都中断,如果都中断,提示“connection lost”,如图19所示。
图19
本文附件中包含三个脚本文件。在项目树的“脚本”下添加脚本“connection_PLCA”,
将附件中的connection_PLCA.txt文件内容拷贝到connection_PLCA中,注意ChangeConnection的参数必须和conn_A的参数一致,如图20所示。
图20
继续添加脚本“connection_PLCB”,将附件中的connection_PLCB.txt文件内容拷贝
到connection_PLCB中,注意ChangeConnection的参数必须和conn_B的参数一致,如图21所示。
图21
继续添加脚本“connection_lost”,将附件中的connection_lost.txt文件内容拷贝到
connection_lost中,如图22所示。
图22
以connection_PLCA为例解释脚本逻辑。
(1) 触发变量trigger_PLCA的地址M0.4,每0.8秒0/1变化,如果面板和CPU连接正常,能一直检测到变量数值变化,即能触发connection_PLCA动作;
(2) 初始化。给”connected_to”变量赋值"Conn_A, 192.168.0.2";
(3) 给A站的连接状态值"conn_state_PLCA"复位为1,表明连接正常;
(4) 判断B的连接状态值"conn_state_PLCB",如小于10则加1,如果检测到B站断开,则B的连接状态值会加到11;
(5) 切换连接。给出切换条件:
(A) 如果B的连接状态值>=11,说明B站断开;
(B) 如果B的连接状态值<=5,即连接正常,但同时读A站的软冗余状态字SwitchPLCA和B站的软冗余状态字SwitchPLCB,如果A状态字=5同时B状态字=10,说明A为主B为备;
(C) 如果B的连接状态值<=5,即连接正常,但A站的软冗余状态字SwitchPLCA=0h25(十进制37),B站的软冗余状态字SwitchPLCB=9,说明A运行而B停机。
以上三个条件只要满足一个,就可以切换连接到CPUA,因此三个条件做“或”运算。
CPU状态与状态字变量SwitchPLCA(DB5.DBB9)和SwitchPLCB(DB5.DBB9)的对
应关系请参考表1。
操作 | CPUA状态 | CPUB状态 | CPUA状态字 SwitchPLCA | CPUB状态字 SwitchPLCB | 连接到 |
上电 | 主、Run | 备、Run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
A停机 | 备、stop | 主、run | 0000 0101 (0x05) | 0010 1001 (0x29) | Conn_B |
A启动 | 备、run | 主、run | 0000 0110 (0x06) | 0000 1001 (0x09) | Conn_B |
B停机 | 主、run | 备、stop | 0010 0101 (0x25) | 0000 1001 (0x09) | Conn_A |
B启动 | 主、run | 备、run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
B从站断开 | 主、run | 备、run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
B从站恢复 | 主、run | 备、run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
A从站断开 | 备、run | 主、run | 0000 0110 (0x06) | 0000 1001 (0x09) | Conn_B |
A从站恢复 | 备、run | 主、run | 0000 0110 (0x06) | 0000 1001 (0x09) | Conn_B |
表1
连接状态变量conn_state_PLCA/B的值和连接的对应关系如表2。
变量conn_state_PLCA/B的值 | 连接状态 |
0 | 初始化 |
1~5 | 连接正常 |
6~10 | 连接中断 |
11~20 | 故障 |
100 | 无效 |
表2
(6) 如果检测到无连接的状态,则切换到A站。
脚本connection_PLCB的逻辑和connection_PLCA基本相同,只是在第⑤步的切换条
件上不同,具体如下。
(A) 如果A的连接状态值>=11,说明A站断开;
(B) 如果A的连接状态值<=5,即连接正常,但同时读A站的软冗余状态字SwitchPLCA和B站的软冗余状态字SwitchPLCB,如果A状态字=6同时B状态字=9,说明B为主A为备;
(C) 如果A的连接状态值<=5,即连接正常,但A站的软冗余状态字SwitchPLCA=5,B站的软冗余状态字SwitchPLCB=0h29(十进制41),说明B运行而A停机。
以上三个条件只要满足一个,即切换连接到CPUB。
脚本connection_lost的逻辑如下。
(1)每分钟读两个连接的状态变量,如果连接正常,将连接变量conn_state_PLCA/B设为5;
(2)如果读到连接状态变量的值大于等于5,则设为100,表明连接无效;
(3)如果两个连接的状态变量值均为100,说明两个连接都无效,显示“connection lost”。
2.2.4组态画面
组态一个画面,如图23所示。其中current connection后面的IO域连接的是
“connected_to”变量,显示当前conn_real连接的是哪个CPU;plc A/B connection status后面的IO域连接的是“conn_state_PLCA/B”变量,显示两个CPU的连接状态变量;trigger_PLCA/B后面的IO 域连接的是“trigger_PLCA/B”变量;test1~test5后面的IO域连接的是“test1~test5”变量,是测试变量; Status of PLC A/B后面的IO域连接的是“StatusOfPLCA/B(DB5.DBW8)”变量,用于显示两个CPU的状态信息。
图23
2.3 项目测试
组态后的项目编译到MP377中,在MP377和两个CPU之间连好网线,做如下调
试。
(1)上电初始化,A为主站、run,B为备站、run,变量trigger_PLCA/B都在0/1变化,
MP377默认和A站连接,如图24所示。
图24
(2) 手动停止CPUA,A站为stop状态,B站为主、run。Conn_A无效,变量
trigger_PLCA无效,连接变量conn_state_PLCA为100,连接conn_real切换到CPUB,如图25所示。
图25
(3) 再次启动A站,A为备、run,B为主、run。Conn_A恢复,trigger_PLCA/B都在
0/1变化,conn_real保持和CPUB连接,如图26所示。
图26
(4) 拔掉B和屏之间的网线,conn_B断开,trigger_PLCB无值,conn_real切换到和
CPUA连接,如图27所示。
图27
(5) 再拔掉A和屏之间的网线,两个连接都无效,因此屏上显示“connection lost”,
conn_real连接中断,如图28所示。
图28
(6) 连上A站和B站与屏之间的网线,conn_A和conn_B均恢复,trigger_PLCA/B都在
0/1变化,conn_real和CPUB连接,因为B为主、Run,A为备、Run,如图29所示。
图29
描述
关于食品和药品管理局的常规描述可以在条获得。
WinCC flexible 解决方案:
WinCC flexible 提供以下选件和方法来满足 FDA 法规:
访问保护
Audit Trail
Change Control
电子签名
不锈钢表面(面板)
不锈钢前面板有以下特点:
前面板 (不锈钢 1.4301, 聚酯箔)
表面 (粉刷, 240 grit, EPDM gasket)
优化的结构外形
倾斜表面不带前置 USB 接口
后置张紧结构
访问保护(运行系统, 面板):
访问保护通过软件包 SIMATIC Logon (集中用户管理) 和本地用户管理来实现。
本地用户管理的例子:
在 WinCC flexible 组态中定义各用户及其分配给用户组的权限。
在 WinCC flexible 的用户管理中定义基于用户组的授权等级。
支持密码有效期;可以定义密码的有效长度和重试次数。
如果在一段定义的时间内无任何操作,登陆的用户会由系统自动退出登陆。
SIMATIC Logon 的例子:
管理员确保中央用户管理 (使能, 禁用, 锁定, 解锁, 分配用户组)。
用户 ID 和密码的组合。
定义组和用户的访问权限。
密码时效
初始密码
经过设定次数的失败登录尝试后,登录用户会被锁死,然后只能由管理员解锁。
自动注销
记录功能
供了关于SIMATIC Logon的更多信息。
Audit Trail (运行系统, 面板)
Audit Trail 由选件 WinCC flexible/Audit 提供。WinCC flexible/Audit 是用来在运行模式下监视操作员动作的。
下面是实现需求的例子。
过程数据(例如过程值,过程和操作消息)在改变时会被自动存储。
操作员在操作过程中对 HMI 系统进行的相关改变被保存在 Audit Trail 中。
数据保存在一个 CSV 文件中。
使用 "Audit Viewer" (仅在 PC 上使用) 进行评估。
Change Control (工程系统)
使用 WinCC flexible Change Control 选件可以记录 WinCC flexible 项目的变化,例如,对于归档及报警显示和画面的改变,定义的访问权限的改变等。
电子签名 (运行系统, 面板)
WinCC flexible 允许用户对操作进行电子签名。在工程阶段,定义的变量和在运行系统中对他们的任何改变必须进行带电子签名的确认。电子签名可以包含输入一个密码和一个注 释。这个改变也会被保存在 Audit Trail 里。
西门子OP270触摸屏6寸