西门子PLC总线技术在特种氧化铝微粉系统中的应用
2011-06-04邱田迎山东齐韵有色冶金工程设计院山东淄博255052
邱田迎,林 杰(山东齐韵有色冶金工程设计院,山东 淄博 255052)
1 引言
Profibus是目前国际上通用的现场总线标准之一,以其独特的技术特点、严格的认证规范、开放的标准、众多厂商的支持和不断发展的应用行规,已成为最重要的和应用最广泛的现场总线标准。Profibus是目前自动化控制系统中最成功的现场总线之一,得到了广泛的应用。它是开放式的现场总线,各种各样的自动化设备均可通过同样的接口协议进行网络信息传输交换。Profibus-DP有较高的数据传输率,适用于控制系统和外部智能设备及远程I/O设备之间的通信。Profibus-DP现场总线系统可网络连接许多现场设备(如PLC、智能变送器、变频器)在同一总线进行双向多信息数字通信,因此可方便地使用不同厂家生产的控制测量系统相互连接成通信网络。
中铝山东分公司特种氧化铝种子制备微粉控制系统采用西门子S7-300系列PLC系统利用Profibus-DP总线技术完成与其他三方设备之间的通信,实现对设备的控制及监控。通过ABB公司的RPBA-01 PROFIBUS-DP适配器模块实现与ABB的ACS800变频器通信,通过施耐德公司的VW3A3307型Profibus-DP通信卡实现与施耐德ATV71变频器通信,通过Profibus-DP实现与尤耐特公司的UNT-MMI智能MCC控制保护管理装置通信。通过Profibus总线组态及对变频器和智能MMC综合保护器的主要通信参数进行设置,实现了PLC系统和现场智能设备的通信。
2 系统配置
2.1 系统网络配置通信结构
西门子PLC系统硬件组态软件版本为Setp7 v5.4,工作站监控软件版本为WinCC v6.0。该系统以西门子公司S7-300系列PLC系统和ABB公司ACS800变频器、施耐德公司ATV71变频器、尤耐特公司UNT-MMI智能MMC保护装置利用Profibus-DP通信协议实现网络通信过程及控制方法。西门子PLC控制系统CPU选型为6ES7 315-2AG10-0AB0,通过IM 153-1扩展部分模拟量和数字量I/O模块,使用主-从通信原理,对Profibus总线设置波特率及主从站地址。硬件组态时对Profibus总线上所有驱动设备作为从站并对从站地址统一分配,现场驱动设备的波特率及工作地址等参数与Profibus总线组态地址相统一。工作站与PLC系统以太网模块采用TCP/IP协议实现通信进行监控及操作控制。任何从站设备,如果想挂上Profibus-DP网络,都必须提供一个GSD文件。这个GSD文件起到一个识别其身份、分配其功能的作用。ABB变频器ACS800系列的GSD文件为ABB_0812.GSD,施耐德变频器ATV71系列的GSD文件为Tele0956.GSD,尤耐特智能MMC控制保护管理装置的GSD文件为MMIB.GSD。打开西门子SIMATIC Manager后建立一个SIMATIC 300 Station工程项目,进入Hardware管理器,在Options选项下找到Install GSD Files,浏览找到上面三个GSD文件进行安装。GSD文件安装完成后都可以在PROFIBUS DP树型菜单下找到,显示路径分别为:Additional Field DevicesDrivesTeleATV71-Profibus-DP,Additional Field DevicesDrivesABB Drives RPBA-01,Additional Field DevicesI/OUNTUNT-MMI-B。PLC系统的CPU配置为DP master作为主站,负责总线管理和从站的通信。变频器驱动和尤耐特UNT-MMI-B驱动作为从站直接挂在PROFIBUS总线上,但ABB Drives RPBA-01驱动中应选择PPO Type 4。在本系统中,S7-300 PLC作为主站,变频器和智能MMC保护器作为从站,主站向变频器传送控制字命令,同时接受变频器反馈的状态字信号。变频器控制字是现场总线系统控制传动单元的基本方法,它由现场总线主机站发送给传动单元,适配器模块充当一个网关的作用,传动单元根据控制字的位码信息作出反应,并且通过状态字将状态信息反馈给主机。整个系统网络通信配置图(受图形大小影响对该图部分设备进行删减)如图1所示。
图1 系统网络通信配置图
2.2 现场总线设备通信参数设置
尤耐特智能MMC控制保护装置在通信选项里选择设置为Profibus,参数设置比较简单,具体通信参数可进入参数设置中对通信参数口的总线通信地址及波特率进行详细设置。其它运行参数、保护参数、可编程输入输出参数等可根据需要进行参数定义。
要实现施耐德ATV71变频器与Profibus-DP网络的物理连接,Profibus-DP通信卡VW3A3307是必不可少的。对于该通信卡,仅需要设置Profibus-DP的从站地址,这8个Profibus-DP寻址开关的最低位在右边,最高位在左边。拨码拨到下面为ON,拨到上面为OFF。改动地址后,要重新上电才能使用。如果用户要通过Profibus-DP网络实现对变频器的启动、停止和速度给定的控制,则需要对命令通道的相关参数进行设置。在变频器的1.6命令菜单里,当变频器插上通信卡后,给定通道的选项里会新增一项选项:通信卡,如果用户需要通过Profibus-DP通讯给定速度,则将给定通道选择为“通信卡”。当变频器插上通信卡后,命令通道设置的选项里会增加一项“通信卡”。如果用户需要通过Profibus-DP通信控制变频器的起停,则需要将命令通道设置定义为“通信卡”。在变频器的“1.9通信”菜单里,前两个子菜单分别是COM.SCANNER INPUT和COM.SCANNER OUTPUT。通过对这两个子菜单的设置,我们可以实现变频器和PLC之间的数据交换。要注意:这里INPUT和OUTPUT是从PLC的角度去看的。对于变频器,INPUT是它要发送给PLC的数据,OUTPUT是它接收的来自PLC的数据。COM.SCANNER INPUT这个菜单内含8组参数,从Scan.IN1 address到Scan.IN8 address。用来定义PLC要读取变频器的哪些参数的数据(读)。对前三个输入字定义好地址后分别读取状态字、频率信号、电流信号。COM.SCANNER OUTPUT这个菜单内含8组参数,从Scan.Out1 address到Scan.Out8 address。用来定义PLC要修改变频器的哪些参数的数据(写)。对前两个输出字定义好地址就可以写入命令控制字和频率给定信号。
ACS800变频器现场总线适配器模块通信参数主要参数98.02用于现场总线的设置值定义为FIELDBUS,参数98.07用于现场总线的设置值定义为ABB DRIVES。适配器模块能自动检测所使用的通信速率和PPO类型,在参数组51中可以修改站节点地址、波特率、PZD3等参数设置,新设定值只有当传动单元下次启动之后才生效。传动控制参数中控制命令源选择参数10.02和11.06现场总线控制的设定值定义为COMM.MODULE,参数11.02定义为DI3(数字输入,0=EXT1,1=EXT2),该参数定义信号源,EXT1为当前控制地时,控制信号源由参数10.01和11.03定义为现场手动控制,EXT2为控制地时,控制信号源由参数10.02和11.06定义为PLC自动控制。系统控制输入参数16.01和16.04定义为COMM.MODULE。ACS800变频器标准应用程序支持四个数据集,每一方向上有两个,即两个用于发送,两个用于接收,两个数据集作为主给定数据集和辅助给定数据集用于控制传动单元,传动单元分别从参数90.04和参数90.05中读取这两个主、辅给定数据集,主给定数据集的内容是固定的,而辅助给定数据源的内容可以通过参数90.01,90.02,90.03进行选择。
3 过程数据采集及控制原理
尤耐特智能MMC控制保护装置根据硬件组态每个总线地址可以作为一个I/O模块来进行过程数据采集。模拟量输入信号(数据类型定义为INT)可以根据实际量程进行转换后来进行监控显示,过程数据模拟量输入电流信号需要先进行单整转双整(块指令为I_DI),再由双整转换成浮点数(块指令为DI_R),然后用浮点数除比例数ctA(块指令为DIV_R,MMC保护装置选ct1时ctA=1000;ct2时ctA=100;ct3时ctA=10;ct4时ctA=10;ct5时ctA=10;ct6时ctA=1;ct7时ctA=1)将转换数据存放在DB块中,这样DB块里存放的实时数据就是电机的实际电流信号数据。过程数据开关量输入信号和输出信号可以直接根据以组态数据地址按位地址进行过程数据读取和写入,方便进行逻辑控制处理和实时监控。建立一个子程序,根据电机过程数据信号建立相应的内部变量,这样所有的具有相同信号类型的电机控制都可以调用同一个子程序来进行控制,调用子程序的时候只需要根据内部变量连接相应的外部设备变量就可以对每台电机实现控制管理。电机控制原理子程序如图2所示。
图2 电机控制原理子程序图
PLC主站组态添加变频器GSD文件驱动后在硬件组态里每个通道都是只有16位数据,占一个字的存储空间,数据类型基本定义为WORD型,模拟量输入信号中电流反馈和频率反馈数据类型可定义INT方便进行数据转换处理。通过ACS800变频器通信卡传输采集的过程数据状态字(SW)进行数据转换处理后才能得到实际数字开入量信号,利用16进制数与功能块(WAND_W)来进行数据转换处理,采集的状态字(SW)与上W#16#0800后和整型数0进行比较得到的数据信号为遥控信号,采集的状态字(SW)与上W#16#0004后和整型数0进行比较取反得到的数据信号为运行信号,采集的状态字(SW)与W#16#0008后和整型数0进行比较取反得到的数据信号为故障信号。模拟量输入信号电流(一般变频器通信参数定义为PZD3区)和频率(一般变频器默认通信参数定义为ACT区)信号需要先进行单整转双整(快指令为I_DI),再由双整转换成浮点数(块指令为DI_R),然后用浮点数除比例数(块指令为DIV_R,一般ACS800变频器频率反馈信号比例数为100.0,电流反馈信号比例数为10.0)将数据存放在DB块中,这样DB块里存放的数据就是变频器显示的实际数据了,工作站就可以直接读取DB块中地址进行数据通信。频率给定信号数据处理先是设定值乘比例数(块指令为MUL_R,此处比例数为400.0),然后对该浮点数进行取余运算(块指令为ROUND)直接写入到过程数据通信参数控制字区REF中。变频器启动/停止控制只需要根据开关量联锁条件传送(块指令MOVE)W#16#047F和W#16#047E到控制字区CW中就可以实现变频器启/停控制。
施耐德变频器和ABB变频器在Profibus总线通信里的状态字和控制字都不一样,也需要进行数据处理。通过施耐德变频器通信卡传输采集的过程数据状态字(SW默认定义为第一个输入字)进行数据转换处理后才能得到实际信号,和ABB变频器一样都要利用16进制数与功能块(WAND_W)来进行数据转换处理,由于过程数据里的状态字有自己的二进制编码,所以参与过程数据运算的16进制数就要相应改动,过程数据采集的状态字(SW)与W#16#0200运算后和整型数512进行比较得到数据信号为遥控信号,采集的状态字(SW)与W#16#0037运算后和整型数55进行比较得到的数据信号为运行信号,采集的状态字(SW)与W#16#0008运算后和整型数8进行比较得到的数据信号为故障信号。模拟量输入信号电流(一般定义为第三个输入字)和频率(一般定义为第二个输入字)信号需要先进行单整转双整(快指令为I_DI),再由双整转换成浮点数(块指令为DI_R),然后用浮点数除比例数(块指令为DIV_R,一般ATV71变频器频率反馈信号比例数为30.0,电流反馈信号比例数为10.0)将数据存放在DB块中,这样DB块里存放的数据就是变频器显示的实际数据了。频率给定信号数据处理先是设定值乘比例数(块指令为MUL_R,此处比例数为30.0),然后对该浮点数进行取余运算(块指令为ROUND)直接写入到控制字区(第二个输出字)中。变频器启动/停止控制只需要根据开关量联锁条件传送(块指令MOVE)W#16#000F和W#16#0006到控制字区(第一个输出字)中就可以实现变频器启/停控制。
4 WinCC监控实现
4.1 工程设置及变量管理
打开Wincc项目管理器,建立新的工程,在WinCC项目管理器中计算机属性里的启动栏里一般选择全局脚本运行系统、报警记录运行系统、变量记录运行系统、图形运行系统,其他可根据需要进行选择。在参数栏中对运行时语言选择为中文(中国),在图形运行系统栏中组态启始画面,并在窗口属性中选择全屏显示。在变量管理中添加新的驱动程序,选择SIMATIC S7 Protocol Suite.chn驱动程序文件,驱动添加后选择TCP/IP并建立新驱动程序的连接,并在系统参数的单元中选择好逻辑设备名称(即要通信的网卡名称)。然后在新的驱动程序连接下分别建立变量组,如仪表信号主要分为压力、流量、温度、液位等信号,建立新变量并设置通信地址。电气信号普通电机主要有遥控、运行、故障、启停、电流信号。变频器通信信号主要有遥控、运行、故障、启停、电流、频率反馈、频率给定信号。为了能够实现窗口精灵,必须规范电气通信信号变量名称结构统一,如普通电机可用设备号(M11)加“REM”/“RUN”/“ERR”/“PA”/“ON”/“OFF”实现,例如某电气设备编号为M11,建立连接变量分别为M11REM(遥控信号),M11RUN(运行信号),M11ERR(故障信号),M11PA(电流信号),M11ON(启动信号),M11OFF(停止信号)。变频器电机根据信号类型也用同样的方法实现。
4.2 控制窗口精灵
打开图形编辑器,建立工艺流程图主画面(MAIN.PDL),编辑组态工艺流程图内容并连接工艺监控信号。建立一普通电机MOP控制窗口精灵,实现对智能MMC保护装置通信的数据进行监控显示和控制,窗口中所有组态对象连接变量时只取设备号(如M11)后不同部分,删掉变量前缀。同样建立变频器电机MUOP控制窗口精灵,对窗口中组态对象变量连接也只取设备号后不同部分,例如组态两个“输入输出域”来显示电流和频率,在输入输出域中变量连接输入“PA”和“PF”就可以,变量前缀通过动作脚本代码实现。在工艺流程图主窗口中添加一个画面窗口,画面窗口名称定义为Picwindowm,然后修改画面窗口属性,对“可移动”、“调整大小”、“可以关闭”选项都修改默认值为“是”。在工艺流程主系统图中对每个电气设备添加一个控件(或者按钮),通过点击操作可以弹出每个设备的控制窗口。例如电气设备(M11)的控件名称为“控件1”,则在“控件1”对象属性中的事件里鼠标动作进行编辑,VBS动作代码编辑如下:
按左键VBS脚本:
Dim pic
Set pic=HMIRuntime.Screens(“MAIN”). ScreenItems(“Picwindowm”)
pic.tagprefix=”M11”//设备号//
释放左键VBS脚本:
Dim pic,sb
Set pic=HMIRuntime.Screens(“MAIN”).ScreenItems(“Picwindowm”)
Set sb= HMIRuntime. Screens(“MAIN”). ScreenItems(“控件1”)//控件号//
pic.left=sb.left+100
pic.top=sb.top+100
pic.ScreenName=“MOP”//控制窗口精灵名称//
pic.captiontext=“M11”//设备号//
pic.visible=TRUE
pic.tagprefix=“ ”
通过编辑鼠标动作代码可以实现弹出的控制窗口对象自动连接设备号为M11的所有变量,然后进行数据状态监控和启/停控制,对于更多的其它设备只需要根据要操作的控件对象对VBS代码里的控件号和设备号进行统一修改就可以了,变频器电机除了对控件号和设备号进行修改还要根据组态对控制窗口精灵名称进行修改。通过规范变量结构统一和对弹出控制窗口进行VBS脚本编辑,实现了多台电气设备可以调用同一控制窗口精灵,避免了建立大量的控制窗口和每个窗口中都要进行变量连接的重复烦琐的劳动。
5 结束语
特种氧化铝种子制备微粉控制系统采用Profibus总线技术和其它现场智能设备进行通信,节省了大量的I/O设备及电气电缆,具有设备成本低,信号传输距离远,抗干扰性性强等特点,经验证是一个非常成功的控制系统方案。该PLC系统已经运行两年多,系统性能稳定,满足了工艺控制要求,创造了较好的经济效益。
[1] ABB. ACS800-04P/07P泵和风机传动应用程序固件手册[Z]. 2006.
[2] ABB. PROFIBUS-DP适配器模块RPBA-01用户手册[Z]. 2002.
[3] 施耐德变频器. ATV71和ATV61的Profibus-DP连接使用手册[Z]. 2006.
[4] 施耐德电气. Altivar 71异步电机变频器编程手册[Z]. 2005.
[5] 尤耐特电气. UNT-MMI智能MMC控制保护管理装置使用手册[Z]. 2006.