引言
原来的控制系统采用SIMATIC S5-155U PLC,编程软件为SIMATIC APT,通过PROFIBUS-DP现场总线与分布式I/O ET200M站相连,其上位机监控软件采用SIMATIC PCS OSx V3.12A;操作员站的硬件平台为基于Intel Pentium 133MHz的586工控机,已经没有备件供应;软件平台为基于SCO UNIX的组态软件,已于2004年6月宣告生命周期结束,不再提供技术支持,系统面临着维护成本的增加以及系统崩溃带来的停产风险,基于这种情况,我们决定对该系统进行升级。
1 控制系统构成
为了不影响正常生产,保留原有正常运行的S5下位机系统,将原来的监控系统SIMATIC PCS OSx升级为WinCC 6.0,采用冗余客户机服务器结构,WinCC服务器通过CP1613卡通过工业以太网和下位机CP1430卡进行通讯,客户机通过普通以太网加载冗余服务器上的数据包Serverdata和下位机进行数据交换,冗余服务器可以在任意一台服务器出现故障后实现自动切换,提高了系统的稳定性,系统结构如下:
图1 改造系统结构图
2 控制系统升级
2.1.通讯建立
WinCC服务器采用CP1613卡和S5 155U PLC的CP1430进行通讯
首先在Step5中配置CP1430,增加和WinCC的连接
图2 建立CP1430卡连接
然后在所建立的WinCC工程中添加“SIMATIC S5 Ehernet Layer4”通讯协议,建立连接。
图3 建立WinCC连接
运行WinCC,使用WinCC的通道诊断工具(Channel Diagnosis)来检查通讯是否正确。
图4 WinCC通道诊断
2.2.画面组态应实际要求,在WinCC画面组态时,尽量沿用原来 SIMATIC PCS OSx的操作风格,同时根据需要加入新的操作功能。
图5 画面组态
在SIMATIC PCS OSx监控系统中,对于下位机PLC的变量请求操作,系统自带有“Request”功能能够实现对下位机变量的自动赋值和选择,在升级为WinCC后,该项功能只能通过其它方式完成,通过监控变量发现,SIMATIC PCS OSx中操作的变量实际为APT程序编译产生的中上传的变量,我们利用WinCC的全局脚本实现这些功能,并且利用WinCC的Audit和Logon选件完成监控系统的操作记录和用户管理等其他要求。
2.3.变量的连接
SIMATIC PCS OSx系统加载S5下位机的变量表为APT程序编译产生的文件,利用记事本打开该文件发现,生成的变量为结构型变量,以阀门为例,一个阀门包含了诸如状态(STATUS)、反馈监控时间(TIMEOUT)、强制命令(OVERRIDE)、开关命令(SETPOINT)、模式切换(MODE_CMD)等变量信息。
图6 变量结构
WinCC在画面状态显示中提供了直接连接、动态对话框,和C脚本语言等连接方式。直接连接可以将变量直接传递给对象属性;动态对话框可以利用变量进行运算或通过运算改变对象属性;当对象属性比较复杂时可以采用C脚本语言来对对象的属性进行操作,在本系统中,上传上来的变量为一个16位的字,每一位都表示不同的信息,为此我们对于对象的属性显示采用C脚本进行操作。
2.4.程序的修改
原来的控制系统为四套采用CPU948的SIMATIC S5-155U PLC,编程软件为SIMATIC APT 1.9,随着工艺的改进和生产的要求,原有的程序不能满足用户的需要,在此基础上,通过APT编程软件编写新制工艺的生产程序。
在系统的改造过程中,出现了WinCC监控画面中对象的状态显示信息变化慢,不能及时反映现场设备的状态的情况,即WinCC画面信息和CPU信息不同步,明显滞后。通过分析发现问题的原因是WinCC监控画面涉及到的变量调用的数据块太多(在APT程序编译过程中,如果新Mark了上传变量,每进行一次部分编译上传变量,这些新上传变量在自动生成时就开辟一个新的数据块,从而造成了变量调用的数据块比较分散),WinCC系统每次请求S5 CPU的数据块过多,相应的数据交换就会变慢甚至产生状态信息丢失。
为了能够及时的显示现场设备的状态信息,满足生产的需要,我们通过在Step 5中编写程序,将“”中分散在零乱数据块中的变量赋值到指定数据块,大大减少WinCC调用的数据块的数量,经过修改,将每个CPU中原来的几十个数据块中的变量集中到十个左右的数据块,将数据块合并的程序通过PG下载到CPU中,WinCC读取的数据块改为合并后的数据块,提高了上下位机数据交换的速度,满足了现场的操作要求。
图7 数据块合并示意图
3 控制系统运行
系统进行时,首先在保留原有SIMATIC PCS OSx监控系统的情况下,通过组态CP1430卡,加入WinCC的连接,观察WinCC监控系统是否能正确运行和操作,待系统验证正确后,将原有的SIMATIC PCS OSx监控系统去掉。升级后,现已投入正常生产。运行结果表明,利用WinCC对原SIMATIC PCS OSx监控系统升级后的系统能够准确及时的反映现场生产设备的实际情况,满足现场生产的工艺和操作人员的操作需求,效果良好。
4 系统升级体会
本系统的正常投运证明了在原有的SIMATIC S5 PLC上采用CP1430通讯处理器与WinCC系统通讯的可行性,也证明了利用WinCC改造SIMATIC PCS OSx监控系统的可行性,为S5老系统的改造积累了一定的经验。
上位机在改造成WinCC的过程中,遇到了监控反映速度变慢的情况,这是由于原有的APT是与PCS OSx的通讯是采用改变触发方式,而上位机采用单独的WinCC是自己主动对下位机变量进行扫描,加重了系统通讯的负担,我们通过在S5中编写数据块合并程序来解决这个问题。
APT是西门子早期的针对S5,TI系列的结构化编程语言,将设备用Device来描述,然后在SFC和CFC中编写程序通过保留字(open、close、start、stop等)对这些Device进行指令动作,从而对现场实际设备进行操作。
(转载)