[AB] 如何实现Comfort Panel(精智系列面板)和 S7-400H PN的工业以太网...

[复制链接]
查看51250 | 回复0 | 2024-9-2 20:13:31 | 显示全部楼层 |阅读模式
1 简介
        西门子新推出了新一代的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,或连接支持脚本功能的其它操作面板

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所示。



(B) 设置Rack0上的CPU 的PN接口地址为192.168.0.101,Rack1上的CPU的PN接口地址为192.168.0.102。
(C) 在Rack0上的CPU属性中选择Clock memory,设置Memory byte为MW10,如图3所示。



2.2 组态Comfort Panel项目
(A) 打开TIA Portal,创建新项目,添加 HMI设备,选择Comfort Panel,如图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所示



(D) 在Connection中添加用于监控Rack1的CPU的连接PLC_2,通信驱动选择”SIMATIC S7-300/400”,设置IP地址为192.168.0.102,Expansion slot为3,Rack为1,如图6所示



(E) 在Connection中添加用于创建过程变量的连接PLC_Changer_12,通信驱动选择”SIMATIC S7-300/400”,设置IP地址为192.168.0.101,Expansion slot为3,Rack为0
(F) 在HMI tags中添加如下内部和外部过程变量,如图7所示。



(F) 本文附件Connection.zip中包含三段脚本。在Scripts中添加过程Connection_PLC1,将 connecton_PLC1.txt中的文本分别拷贝到Sub中,注意系统函数ChangeConnection的参数需要和连接PLC_1的地址和位 置一致,如图8所示。



(G) 在Scripts中添加过程Connection_PLC2,将connecton_PLC2.txt中的文本拷贝到脚本中,注意系统函数ChangeConnection的参数需要和连接PLC_2的地址和位置一致。
(H) 在Scripts中添加过程Connection_lost,将connecton_lost.txt中的文本拷贝到脚本中,如图9所示。



(H) 在变量trigger_PLC1的Properties-Event-Value change中添加函数,分配之前创建的过程Connection_PLC1,如图10所示。



(I) 在变量trigger_PLC2的Properties-Event-Value change中添加函数,分配之前创建的过程Connection_PLC2。
(I) 在Schedule tasks中添加任务Check_Connection,Trigger选择1 Minute,在Properties-Event-Update中添加函数,分配之前创建的过程Connection_lost,如图11所示。


(J) 在Screen中添加测试画面,显示所有变量和报警信息,如图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无效


2.4 下载调试项目
        将项目编译后下载到Comfort Panel后,做以下调试:
(A) 初始时,Comfort Panel和S7-400H PN的连接正常,变量trigger_PLC1/2在0/1变化,变量con_state_PLC1/2基本上在1/2变化,连接默认指向连结PLC_1,如图13所示。



(B) 拔掉连接PLC_1的网线,连结PLC_1中断,变量trigger_PLC1无效,变量con_state_PLC1为100,连接PLC_Changer_12切换到连接PLC_2,如图14所示。



(C) 重新连接PLC_1的网线,连结PLC_1恢复,变量trigger_PLC1在0/1变化,连接PLC_Changer_12依然保持到连接PLC_2,如图15所示。



(D) 手动停止PLC2,变量trigger_PLC2不再变化,不再执行过程Connection_PLC2中对变量con_state_PLC2的复位操 作,变量con_state_PLC2为100,连接PLC_Changer_12切换到连接PLC_1,如图16所示。



图16

该项目可以实现Comfort Panel在S7-400H PN单CPU断线和停机时的自动切换。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则