西门子新推出了新一代的Comfort Panel(精智系列面板)和带有PROFINET 接口的S7-400H PN(CPU 41x-5H),在Comfort Panel和S7-400H PN之间建立以太网连接的配置过程中,较之传统操作面板和S7-400H,组态软件和方式都产生了变化。
注意:本文只描述S7-400H PN通过集成PN接口连接Comfort Panel,S7-400H PN通过集成MPI/DP接口或CP443-1(IP地址)连接Comfort Panel,或连接支持脚本功能的其它操作面板(例如xP277等)也可以参考本文。
本文中所使用的硬件和软件环境如下:
(A) S7-400H PN
CPU 416-5 H PN/DP (6ES7 416-5HS06-0AB0, Firmware V6.0)
IM153-4 PN HF (6ES7 153-4BA00-0XB0, Firmware V4.0)
SM 321/322 16DI/DO
(B) TP900 Comfort Panel (6AV2 124-0JC01-0AX0)
(C) TIA Portal ES 工程师站
Field PG M3 (6ES7 715-1BB20-0AA0)
Windows 7 Ultimate SP1(X64)
STEP7 Professional 2010 SR2 (STEP7 V5.5 SP2 HF1), TIA Portal V11 SP2 Upd4 (STEP7 Professional V11 SP2 Upd4, WinCC Professional V11 SP2 Upd4)
注意
由于TIA Portal V11 SP2尚未支持S7-400H,所以仍需要经典STEP7 V5.5 SP2 HF1组态S7-400H PN;可以参考以下链接:
59216386
而仅需要WinCC Comfort V11 SP2组态Comfort Panel即可。
建议安装WinCC Comfort/Advanced/Professional V11 SP2,可以参考以下链接:
56897511
2组态Comfort Panel和S7-400H PN的以太网连接
在ES站上的STEP7中组态S7-400H PN,在TIA Portal中组态Comfort Panel及其和S7-400H PN的以太网连接。
2.1 组态S7-400H PN项目
S7-400H PN的典型配置如1图所示。
图1
(A) 打开STEP7,参照实际配置,创建 SIMATIC H Station,如图2所示。
图2
(B) 设置Rack0上的CPU 的PN接口地址为192.168.0.101,Rack1上的CPU的PN接口地址为192.168.0.102。
(C) 在Rack0上的CPU属性中选择Clock memory,设置Memory byte为MW10,如图3所示。
图3
2.2 组态Comfort Panel项目
(A) 打开TIA Portal,创建新项目,添加 HMI设备,选择Comfort Panel,如图4所示。
图4
(B) 设置Comfort Panel的以太网的IP地址为192.168.0.100。
(C) 在Connection中添加用于监控Rack0的CPU的连接PLC_1,通信驱动选择”SIMATIC S7-300/400”,设置IP地址为192.168.0.101,Expansion slot为3,Rack为0,如图5所示
图5
(D) 在Connection中添加用于监控Rack1的CPU的连接PLC_2,通信驱动选择”SIMATIC S7-300/400”,设置IP地址为192.168.0.102,Expansion slot为3,Rack为1,如图6所示
图6
(E) 在Connection中添加用于创建过程变量的连接PLC_Changer_12,通信驱动选择”SIMATIC S7-300/400”,设置IP地址为192.168.0.101,Expansion slot为3,Rack为0
(F) 在HMI tags中添加如下内部和外部过程变量,如图7所示。
图7
(F) 本文附件Connection.zip中包含三段脚本。在
图8
(G) 在
(H) 在
图9
(H) 在变量trigger_PLC1的Properties-Event-Value change中添加函数,分配之前创建的过程Connection_PLC1,如图10所示。
图10
(I) 在变量trigger_PLC2的Properties-Event-Value change中添加函数,分配之前创建的过程Connection_PLC2。
(I) 在Schedule tasks中添加任务Check_Connection,Trigger选择1 Minute,在Properties-Event-Update中添加函数,分配之前创建的过程Connection_lost,如图11所示。
图11
(J) 在Screen中添加测试画面,显示所有变量和报警信息,如图12所示。
图12
2.3 切换连接的脚本逻辑解释
以变量trigger_PLC2触发过程Connection_PLC2为例解释切换脚本的逻辑:
(A) 变量trigger_PLC2表示PLC2的Clock Menory Byte的第4位,即每0.8秒0/1变化一次,其数值更新触发过程Connection_PLC2。
(B) 首先执行初始化,即确认连接PLC_2正常,而连接PLC_Changer_12默认指向连接PLC_1。
(C) 然后执行连接PLC_1的状态检测,变量con_state_PLC1累加1;如果连接PLC_1正常,则变量trigger_PLC1同样触发过程 Connection_PLC1,这样变量con_state_PLC1即被复位为1,连接PLC_Changer_12依然指向连接PLC_1。
(D) 如果连接PLC_1中断,trigger_PLC1不会触发过程Connection_PLC1,这样变量con_state_PLC1一直累加,不会复 位,直至大于10;此时执行连接切换,将连接PLC_Changer_12指向连接PLC_2,并标识连接PLC_1无效。
(E) 如果连接PLC_1和PLC_2都无效,则尝试切换连接将PLC_Changer_12指向连结PLC_2。
以变量trigger_PLC1触发过程Connection_PLC1切换连接的逻辑同上。
在Schedule tasks中触发过程Connection_lost的逻辑解释如下:
(A) 每隔一分钟判断变量con_state_PLC1/2的值:连接PLC_1/2正常时,将变量con_state_PLC1/2设置为5;
(B) 而当变量con_state_PLC1/2大于等于5时,标识连接PLC_1/2无效。
根据上述过程的脚本逻辑,变量con_state_PLC1/2的值和连接PLC1/2的状态对应关系如表1所示。
变量con_state_PLC1/2值 | 连接PLC1/2状态 |
0 | 初始化 |
1~5 | 正常 |
6~10 | 中断 |
11~20 | 故障 |
100 | 无效 |
表1
2.4 下载调试项目
将项目编译后下载到Comfort Panel后,做以下调试:
(A) 初始时,Comfort Panel和S7-400H PN的连接正常,变量trigger_PLC1/2在0/1变化,变量con_state_PLC1/2基本上在1/2变化,连接默认指向连结PLC_1,如图13所示。
图13
(B) 拔掉连接PLC_1的网线,连结PLC_1中断,变量trigger_PLC1无效,变量con_state_PLC1为100,连接PLC_Changer_12切换到连接PLC_2,如图14所示。
图14
(C) 重新连接PLC_1的网线,连结PLC_1恢复,变量trigger_PLC1在0/1变化,连接PLC_Changer_12依然保持到连接PLC_2,如图15所示。
图15
(D) 手动停止PLC2,变量trigger_PLC2不再变化,不再执行过程Connection_PLC2中对变量con_state_PLC2的复位操 作,变量con_state_PLC2为100,连接PLC_Changer_12切换到连接PLC_1,如图16所示。
图16