论文部分内容阅读
摘要:本文介绍了高压除尘风机工业自动化控制系统,给出了系统的原理设计、硬件组成、软件组成以及系统通信的实现。通过西门子组态软件WinCC组成上位机自动化监控系统,从而能够对各个设备的运行情况进行监视,同时把各种数据参数进行实时显示,并对整个系统实施远程控制。通过西门子编程软件SETP7来实现PLC的各种逻辑控制功能和各种设备的软件保护。
关键词:WinCC;PLC;自动化;监控系统
一、除尘系统工艺流程说明:
转炉二次除尘包括7#转炉炉口上方排烟罩捕集的转炉二次烟气除尘、转炉跨内辅原料及铁合金料上料各扬尘点捕集的含尘烟气、以及连铸区中间罐倾翻排烟罩捕集的烟气除尘四部分。含尘烟气通过除尘管道进入袋式除尘器,烟气经除尘器除尘后,由风机经烟囱排入大气,排放高度40m,含尘浓度≤20mg/Nm3。风机设液力偶合器进行调速,达到节能的目的。
二、 软、硬件配置
控制系统硬件为西门子公司的S7-400系列PLC;控制系统软件为STEP7 V5.4编程软件和WinCC V6.0系统监控软件。
2.1WinCC软件的简介
工控组态软件WinCC是一个集成的人机界面(HMI)系统和监控管理系统,它是西门子公司在过程自动化领域中的先进技术和微软公司强大软件功能的产物,WinCC是视窗控制中心(Windows Control Center)的简称。它包括图形设计器、报警记录、标记记录、报告设计器、全局脚本、控制中心、用户管理等功能,使其具有高性能的过程耦合、快速的画面更新、以及可靠的数据管理。WinCC能和所有主要厂商的PLC进行通讯,如:AB、GE、Omron等。如果与西门子的PLC系列及STEP 7软件合用,将大幅降低工程时间,因为STEP 7中定义的变量可以在WinCC中直接使用。
2.2控制系统硬件配置
CPU 414-2DP:具有较大大的程序存储容量和数据结构,对二进制和浮点数运算具有很好的处理能力;PROFIBUS DP 主站/从站接口;可用于大规模的I/O配置;可用于建立分布式I/O结构。
三、WinCC的组态实现
3.1主控界面的组态
本系统的设备比较多,要将所有的设备都显示在同一画面里是不可能的,所以将设备按照处理工艺的功能步骤分级在多张画面内,分为1#风机、2#风机、3#风机、趋势、报警等,之间的切换使用按钮的鼠标动作来实现。这对于用WinCC现成的鼠标动作来实现是很简单的,但是不是要在每张图上都使用相同数量且位置排列顺序一致的按钮呢?(出于对操作的一致性考虑,不能让操作人员在不同的图上,不同的位置找想要操作的按钮)这个问题的解决我们使用WinCC的脚本编程,在按钮动作中调用它的内部函数来实现。首先,组态一幅背景画面,其中包括要显示的静态文本、OLE(例如,时钟)、所有的图形切换按钮。第二,在背景画面中插入智能对象(Smart Object)中的画面窗口(Picture Window),并且使其的尺寸与其分级画面相同。第三,在相应的切换按钮的属性->事件->鼠标动作中编写如下C语言脚本代码:
#include\"apdefap.h\"
void OnClick(char *lpsz PictureName,
char *lpsz ObjectName,char *lpsz PropertyName)
SetPictureName(\"背景画面\", \"画面窗口\", \"XXXXX\");
//\"背景画面\"即为始终显示地静态背景的属性名,\"画面窗口\"即为在背景画//面中插入地画面窗口(Picture Window)属性名,\"XXXXX\"即为分级画面//的名称。这样就能方便快捷地切换画面。
3.2单个部件的组态
WinCC在其内部的图库里集成很多的图形对象,如水箱、电机、阀门等等。为了使组态画面贴近实际,能够更好的反应现场工况,图库里的元素并不能满足要求。我们可以利用WinCC的画图工具自己绘制适应实际的图形元素,并且使用C脚本使其产生动画效果。如风机的组态可以使用C脚本使其产生动画,在其运行时产生视觉上的旋转。在C语言编辑器中完成如下腳本,在扇形的属性->几何->半径中调用即可。
void turnright(char*lpszPictureName,char*lpszObjectName)
int i,j;
i=GetStartAngle(lpszPictureName,lpszObjectName)%360;
j=GetEndAngle(lpszPictureName,lpszObjectName)%360;
SetStartAngle(lpszPictureName,lpszObjectName,i+30);
SetEndAngle(lpszPictureName,lpszObjectName,j+30);
3.3语音报警的组态
在工业现场安全是极其重要的,无论从那个角度讲我们应该利用一切手段减少故障的发生。在故障已经发生的时候,应该在第一时间以多种方式通知操作人员有故障发生。现代微处理计算机的处理速度可以完全胜任对于图形,语音地同时处理。所以我们可以利用计算机的声卡和音箱在有故障发生的时候产生语言报警,但是问题是WinCC本身并不能产生语音的功能,而且其内部的上千个函数也没有提供处理声音的函数。解决这个问题的方法归功于微软开发的WinCC与操作系统地完美结合,因为在WinCC中可以直接调用Windows的API函数。实现的具体C脚本代码如下:
void jingling()
#pragma code ("Winmm.dll")
VOID WINAPI PlaySoundA (char *pszSound,char *hmode,DWORD dwflag);
if (GetTagDWord("报警变量")==1)
#pragma code ()
PlaySoundA ("C:\\WINNT\\Media\\ringout.wav",NULL,9);
else
PlaySoundA ("C:\\WINNT\\Media\\ringout.wav",NULL,4);
参考文献:
[1]Siemens AG .wincc v5 The Configuration Manual and the Communication Manual.[P].Germany:Siemens 2000.
[2]Siemens AG .wincc SIMATIC WinCC 系统描述. [P].Germany:Siemens 2000.
[3]廖晓钟 <<自动控制系统>>, 2005年,北京理工大学出版社.
(作者单位:本溪钢铁(集团)信息自动化有限责任公司)
关键词:WinCC;PLC;自动化;监控系统
一、除尘系统工艺流程说明:
转炉二次除尘包括7#转炉炉口上方排烟罩捕集的转炉二次烟气除尘、转炉跨内辅原料及铁合金料上料各扬尘点捕集的含尘烟气、以及连铸区中间罐倾翻排烟罩捕集的烟气除尘四部分。含尘烟气通过除尘管道进入袋式除尘器,烟气经除尘器除尘后,由风机经烟囱排入大气,排放高度40m,含尘浓度≤20mg/Nm3。风机设液力偶合器进行调速,达到节能的目的。
二、 软、硬件配置
控制系统硬件为西门子公司的S7-400系列PLC;控制系统软件为STEP7 V5.4编程软件和WinCC V6.0系统监控软件。
2.1WinCC软件的简介
工控组态软件WinCC是一个集成的人机界面(HMI)系统和监控管理系统,它是西门子公司在过程自动化领域中的先进技术和微软公司强大软件功能的产物,WinCC是视窗控制中心(Windows Control Center)的简称。它包括图形设计器、报警记录、标记记录、报告设计器、全局脚本、控制中心、用户管理等功能,使其具有高性能的过程耦合、快速的画面更新、以及可靠的数据管理。WinCC能和所有主要厂商的PLC进行通讯,如:AB、GE、Omron等。如果与西门子的PLC系列及STEP 7软件合用,将大幅降低工程时间,因为STEP 7中定义的变量可以在WinCC中直接使用。
2.2控制系统硬件配置
CPU 414-2DP:具有较大大的程序存储容量和数据结构,对二进制和浮点数运算具有很好的处理能力;PROFIBUS DP 主站/从站接口;可用于大规模的I/O配置;可用于建立分布式I/O结构。
三、WinCC的组态实现
3.1主控界面的组态
本系统的设备比较多,要将所有的设备都显示在同一画面里是不可能的,所以将设备按照处理工艺的功能步骤分级在多张画面内,分为1#风机、2#风机、3#风机、趋势、报警等,之间的切换使用按钮的鼠标动作来实现。这对于用WinCC现成的鼠标动作来实现是很简单的,但是不是要在每张图上都使用相同数量且位置排列顺序一致的按钮呢?(出于对操作的一致性考虑,不能让操作人员在不同的图上,不同的位置找想要操作的按钮)这个问题的解决我们使用WinCC的脚本编程,在按钮动作中调用它的内部函数来实现。首先,组态一幅背景画面,其中包括要显示的静态文本、OLE(例如,时钟)、所有的图形切换按钮。第二,在背景画面中插入智能对象(Smart Object)中的画面窗口(Picture Window),并且使其的尺寸与其分级画面相同。第三,在相应的切换按钮的属性->事件->鼠标动作中编写如下C语言脚本代码:
#include\"apdefap.h\"
void OnClick(char *lpsz PictureName,
char *lpsz ObjectName,char *lpsz PropertyName)
SetPictureName(\"背景画面\", \"画面窗口\", \"XXXXX\");
//\"背景画面\"即为始终显示地静态背景的属性名,\"画面窗口\"即为在背景画//面中插入地画面窗口(Picture Window)属性名,\"XXXXX\"即为分级画面//的名称。这样就能方便快捷地切换画面。
3.2单个部件的组态
WinCC在其内部的图库里集成很多的图形对象,如水箱、电机、阀门等等。为了使组态画面贴近实际,能够更好的反应现场工况,图库里的元素并不能满足要求。我们可以利用WinCC的画图工具自己绘制适应实际的图形元素,并且使用C脚本使其产生动画效果。如风机的组态可以使用C脚本使其产生动画,在其运行时产生视觉上的旋转。在C语言编辑器中完成如下腳本,在扇形的属性->几何->半径中调用即可。
void turnright(char*lpszPictureName,char*lpszObjectName)
int i,j;
i=GetStartAngle(lpszPictureName,lpszObjectName)%360;
j=GetEndAngle(lpszPictureName,lpszObjectName)%360;
SetStartAngle(lpszPictureName,lpszObjectName,i+30);
SetEndAngle(lpszPictureName,lpszObjectName,j+30);
3.3语音报警的组态
在工业现场安全是极其重要的,无论从那个角度讲我们应该利用一切手段减少故障的发生。在故障已经发生的时候,应该在第一时间以多种方式通知操作人员有故障发生。现代微处理计算机的处理速度可以完全胜任对于图形,语音地同时处理。所以我们可以利用计算机的声卡和音箱在有故障发生的时候产生语言报警,但是问题是WinCC本身并不能产生语音的功能,而且其内部的上千个函数也没有提供处理声音的函数。解决这个问题的方法归功于微软开发的WinCC与操作系统地完美结合,因为在WinCC中可以直接调用Windows的API函数。实现的具体C脚本代码如下:
void jingling()
#pragma code ("Winmm.dll")
VOID WINAPI PlaySoundA (char *pszSound,char *hmode,DWORD dwflag);
if (GetTagDWord("报警变量")==1)
#pragma code ()
PlaySoundA ("C:\\WINNT\\Media\\ringout.wav",NULL,9);
else
PlaySoundA ("C:\\WINNT\\Media\\ringout.wav",NULL,4);
参考文献:
[1]Siemens AG .wincc v5 The Configuration Manual and the Communication Manual.[P].Germany:Siemens 2000.
[2]Siemens AG .wincc SIMATIC WinCC 系统描述. [P].Germany:Siemens 2000.
[3]廖晓钟 <<自动控制系统>>, 2005年,北京理工大学出版社.
(作者单位:本溪钢铁(集团)信息自动化有限责任公司)