6ES7212-1BB23-0XB8供应现货
6ES7212-1BB23-0XB8供应现货
1 引言
随着工业自动化控制技术、计算机及网络技术发展的突飞猛进,工业自动化已经渗透到各行各业的生产当中。近年来,随着港口物流的兴起,粮食港口开始使用工业自动化技术进行粮食的中转调运,使管理和统计方便快捷。
罗克韦尔自动化公司的自动化产品十几年来在国内得到了广泛的应用,特别是ControlLogix系统已经应用到全国各行业的实际生产中。本文以某粮食港口为例,介绍了该粮食码头的工艺流程并应用ControlLogix系统对该粮港口自动控制系统进行了设计。
2 项目概况
该粮食现代物流项目规划总仓容30万吨,本期建设仓容10万吨,由立筒库、计量塔、工作塔、火车、汽车卸粮坑及转接地沟、汽车发放站、输送栈桥办公楼组成。该粮食码头是以散粮装卸为主,包粮为辅的粮食码头,其接卸能力为1000吨/小时,设计年通过能力为400万吨,储粮品种为玉米、小麦和大豆,粮食以中转为主,由火车和汽车运来,由汽车或船舶运出。该港口粮流图如图1所示。
图1 粮流图
2.1 系统工艺描述
该港散粮系统输送工艺包括了港区的装船工艺、卸车工艺、装车工艺、筒仓工艺等多种粮食储运作业。根据装卸工艺及粮食输送能力,储运流程分为四类:
入仓流程:卸火车入(筒/星)仓、卸汽车入(筒/星)仓;
出仓流程:出仓装船、出仓装汽车;
倒仓流程:筒仓—筒仓、筒仓—星仓、星仓—筒仓;
转运流程:卸火车装船、卸汽车装船、卸火车装汽车。
根据对粮食的操作及所用设备不同,以上每一组又有多条路径。整个工艺流程共八组,近300个流程(不包括仓号的变化)。
对于包粮在进卸粮坑前加开包流程和在运出前加打包流程。
2.2 控制对象
该港粮食系统主要包括大型设备(输送粮食的刮板机、皮带机、斗提机等)、除尘器、阀闸三类设备。需要控制设备包括气垫式皮带机,皮带机风机,斗提机,埋刮板机,除尘器,电动阀闸,气动阀闸,料位器,电子秤,布料器,变频器及其它辅助设备。
3 应用ControlLogix系统对自动控制系统的设计
3.1 控制系统结构
本控制系统由硬件和软件两部分组成。
(1) 硬件系统
硬件部分包括现场传感器、MCC(低压配电柜)、PLC控制系统、上位机监控系统、UPS(不间断电源)。参见图2。
图2 ControlLogix 构架
其中PLC控制系统选择Rockwell Automation的ControlLogix系统,它是Rockwell Automation众多产品zhonggong能强大的一个系列,能够提供一个先进、高效、高灵活性和高扩展性的控制平台。图2为ControlLogix 构架,它提供了各种输入和输出模块,以适应从高速离散控制到过程控制的多种应用场合。
整个系统的特点以及应用于该项目中优点:
●ControlLogix系统将PLC与DCS的功能结合在一起。提供顺序控制,过程控制,传动及运动控制的统一的控制平台。完全能够满足粮食物流行业对于将多种设备、多种控制方式、控制要求集中在一起的需求。
●ControlLogix具有非常强大的、高性能的处理器。支持多维数组和用户定义数据结构,从而可以实现基于对象的编程,非常适合粮食工艺流程中筒仓、皮带机、粉尘控制、阀门、闸门等控制对象的应用。处理器的内存可以扩充到8M,能够满足未来二期、三期工程的扩展需求。
●ControlLogix采用标签寻址方式(即编程与具体的I/O分配无关)以及模块化的编程方式,可以大大提高代码的代码的可重利用率,从而降低系统扩展的编程成本。
●ControlLogix的I/O为高性能,智能化I/O模块,所有的模块都具有高性能的微处理器,全部通过软件组态就可完成I/O配置。同时具有I/O掉线检测、无负载检测、模块级的工程单位转换,双重高低报警。时间标签记录等内置的超强的诊断和工程调试功能,减少了现场调试的周期,大大方便了维修、维护人员整个控制系统采用分布式方式,对于衔接各个分布控制站的网络架构(如图3所示),笔者采用Rockwell Automation的NetLinx 开放性网络集成框架中DeviceNet(设备网),ControlNet(控制网)和信息层网络Ethernet(以太网)来实现无缝连接,参见图3。
图3 网络构架
●将生产应用中的现场控制、传感设备赋予智能化,通过设备网(DeviceNet)上的网络总线完成现场设备与控制器之间的控制,信息,诊断数据的传递,提供现场设备的可靠性和易维护性和智能化,降低安装费用和工期。本设计中对于智能MCC是通过设备网DeviceNet连接到主控制系统中来。
●直接对生产过程进行的控制,包括连锁和循环控制,驱动控制和测量的监控。不同的控制器通过具有实时性,确定性和可重复性的主干控制网(ControlNet)(实时5Mbps带宽)完成,ControlNet具有预定信息和非预定信息的传递。统一的硬件和软件控制平台将顺序控制,过程控制和传动控制有机的结合起来。本设计中对于不同的三个配电中心的PLC工作站之间以及各个工作站的不同I/O框架之间采用冗余的控制网(ControlNet)来实现智能化的高速的实时控制,并共享数据和信息。
●在工业控制中EtherNet以太网常用于程序的维护,对生产工艺过程进行监控和给以操作指导,以及将工厂级的数据传入或传出到更高的级别的MIS管理信息系统或MES生产执行系统,完成批量数据的存储,分类,管理及优化事件登录等功能。本设计中上位监控RSViewSE的服务器和客户端之间以及控制系统与管理信息系统之间的通讯是通过EtherNet来完成的。
上位机监控系统包括工控机、彩色显示器、激光打印机等。上位机系统的配置原则是能适应工业现场(防磁、防尘、防震),直观方便地监视和控制设备并且可以打印报表与文档。本系统采用SERVER-CLIENT结构。构成CLIENT端的多台图形工作站(CGP)均可作为监视及操作平台,使操作员在中央控制室(CCR)即可以实现对现场全线设备的监控。系统操作方式分为“就地”和“远程”两种。其中“就地”又分为TEST和LOCAL,“远程”分为集中手动和自动,而只有“远程”方式才是操作员在CCR可以操作的方式。
(2) 软件系统
软件部分选用的是RSLogix5000、RSViewSE、PLC应用程序、上位机监控软件。其中RSLogix5000是与ControlLogix系统配套的编程环境,提供了易于使用的标准接口,采用结构和数组的符号化编程,以及专用的顺序控制、运动控制、传动控制和过程控制场合的指令集,用来进行PLC应用程序的编写、下载、调试、修改,大大提高了编程效率。
灵活的继电器梯形图和功能块图编辑器,使用户创建应用程序变得轻松自如。在梯形图和功能块图编辑器中,用户能看到标准的、易于使用且直观的操作界面。
整个系统应用于该项目中优点:
●在线帮助(包括概述信息、编程信息、屏幕信息和参考信息)和在线参考书(包括电子版的相关参考手册和用户手册);
●易于使用的I/O寻址方法;
●灵活的、易于使用的功能块图编辑器;
●包括继电器梯形图和功能块指令的指令集;
●一个自由格式操作的梯形图编辑器,可以让用户同时修改多个逻辑梯级,也可以通过点击界面提示输入梯级;
●诊断监控能力,包括控制器的状态显示、程序验证功能和强有力的数据监控器;
●容易组态,包括图形化的控制器管理器,I/O组态对话框,运动组态工具和点击组态方法;
●完善的数据处理,采用数组和用户定义结构,可提供必要的灵活性满足应用系统要求,而不是强迫它去适应特殊的内存结构,如控制器的数据表内存;
●拖放编辑和导航功能,可以快速地从一个数据文件移动数据元素到另一个数据文件,从一个子程序或项目中把梯级移动到另一个,或从梯级将指令移动到另一个梯级,或在一个项目内的指令在功能块图之间相互移动。
RSViewSE作为上位机监控软件的开发和运行平台,要用它来完成通讯接口和驱动程序的配置、数据库的建立、画面的制作、动画的连接,运行过程的监控。
上位机监控软件的功能及特点:
监控画面上所有设备图形都是对具体设备微缩而成的三维图形或使用标准符号,易于辩识。运行状态要求动画显示,直观。
监控软件的主辅画面如上所述,熏蒸、空压、照明等系统对应的图标放在“辅助系统查询”画面上,可以使主画面简洁并加快了主画面的刷新速度。设备状态为运行、停止(阀门类设备为开到位、关到位)、故障,设备对应的图标的颜色不同,并且故障时图标会闪烁。单击设备对应的图标,将会弹出设备状态对话框,在自动方式下,该对话框中的指示灯将显示设备的状态;在手动方式(集中手动、机旁手动)下,对话框中除了显示设备状态的指示灯外,还有一些启动、停止或正转、反转、停止按钮。在集中手动方式下,可以点击按钮对设备进行操作;在机旁手动方式下,这些按钮点击操作无效,仅用来显示机旁按钮的状态。为了减少设备对话框的数量,同类设备公用一个对话框,设备切换时对话框中的按钮和指示灯对应的变量将重新赋值。在紧急状态下,可以点击画面上的急停按钮,立即停止输送设备的运行,同时关闭收粮和仓下发粮闸门,防止粮食溢出到设备外。
监控软件运行时会向PLC发送操作方式、输送路径、启动、停止、急停、复位信号,从而影响PLC程序的运行,改变生产流程。在PLC运行时,退出监控软件或切断上位机与PLC的通讯不影响PLC中程序的正常运行。
3.2 控制策略
根据该粮食物流的工艺要求,对输送过程的监控分10种方式:卸火车入(筒/星)仓、卸汽车入(筒/星)仓、出仓装船、出仓装汽车、卸火车装船、卸汽车装船、卸火车装汽车、倒仓、集中手动、机旁手动。前八种监控方式均为自动,即选定路径上设备的启动、停止,阀门的开、闭均可以自动完成。正如控制系统的目的就是实现粮食的入仓、倒仓、出仓的全过程自动化,并可实现手动操作。在这一过程中,为了减小启动设备对电网的冲击,防止因同时启动多台设备导致变压器过载跳闸,为了防止在物料输送过程中发生堵料、重载停车和堵料等事故。要求流程基本的控制方式:启动时逆料流顺序启动;流程停止时顺料流顺序停止;当流程运行过程中,如果流程内某一设备出现故障,那么流程上游设备应该紧急停止,下游设备继续运行,以免发生物料的堵塞,从而造成粮食的撒漏或设备的损坏;当故障排除后,再按照逆料流的顺序依次启动流程内的设备。选择集中手动方式后,在中央控制室中操作员通过鼠标点击屏幕上的按钮即可完成设备的启停,阀门的开闭。为了单台设备调试方便,要求设置机旁操作箱,在设备旁可以对设备设备进行控制。机旁手动时,要求解除各设备间的联锁关系,任何设备的动作不依赖其它设备的状态或动作(输送机和输送机风机除外),实现设备的就地控制。
由于物料在输送过程中会产生大量的粉尘,为防止粉尘引发安全事故,在大型设备的两两连接处还安装了除尘器。要求在流程启动前5min启动除尘器,流程设备停止后除尘器接着运行5min。如果在流程启动或者运行中除尘器发生故障,那么要求除尘器所关联的设备要立刻停止,并且由此引发该设备上游设备立刻停止。除尘器在控制上的特点是每个除尘器的启动和停止都可以用唯一一个大型设备的运行(选中状态)来选择运行。
所需要控制的闸阀包括三通闸(TW)、开关阀(AG)、和与除尘系统相关的气动、电动阀门。闸阀控制上的特点是可由上下游两个大型设备或除尘器就可以确定闸阀的开启或关闭方向。
4 结束语
ControlLogix系统采用模块化的结构, 通过背板实现模块间信息的高速传送;带控制器模块的系统,作为先进的控制平台不仅具有先进的通讯能力和新的I/O技术,为实际应用提供了灵活的、方便的应用。本文介绍的ControlLogix系统强大功能中的一部分(顺序控制),同时该系统在运动控制、传动控制等方面也具有卓越的功能。
该粮食控制系统是集计算机技术、控制技术、网络通信技术和图形显示技术于一体的系统。系统的结构、软件及主要技术环节的设计,都实现了生产过程的自动控制,提高了生产效率。在自动控制系统设计时遵循了以下原则:系统运行高效、可靠,软件操作容易、维护简单,设备检修快捷,系统扩展方便、性价比优。
中的应用尤其令人瞩目。其现有氰化处理能力已达到易选冶精矿400吨/日,复杂精矿100吨/日。本系统是一个大型的氰化车间,要采集数据的地点分布在整个厂区,而且数量也很多,在数据采集和传输方面需解决分布广,数量多的问题。为了解决这个问题,在传统的DCS系统上引进了现场总线技术,提出了基于现场总线PROFIBUS的DCS控制系统。
现场总线技术是当今工业自动化领域技术发展的热点,适用于现场仪表、控制系统和控制室之间的一种全分散、全数字化、智能、双向、互联、多点、多站的通讯系统。DCS技术是计算机技术、自动控制技术、通信技术和CRT显示技术竞相发展并紧密结合的产物,而通信技术在集散控制系统中占有重要地位。DCS是用分散的过程控制单元实现控制过程对象的目的,利用集中监视和操作管理单元来达到综合信息全面管理的目的。将过程控制单元(现场控制站)、监视操作单元(操作单元)和系统管理单元(工程师站)通过通讯网络构成一个完整的系统,从而实现分散控制集中管理的目的。
2 系统介绍
氰化工艺系统主要包括加料、磨矿、碱浸压滤、浸出、置换、浮选前压滤、综合回收、浮选尾矿压滤等几个主要工段,终把金、银、铜、铅等分离出来;尾矿渣回收,用来提取其他非金属(硫等)。
本系统设有两个中央控制室,每个控制室CPU主站选用Siemens的Simatic S7-400的CPU414-2DP,每台CPU都有一个CP443-5通讯处理器,在正常情况下,CP443-5通讯处理器可以分担CPU-414-2DP的通讯任务,在非正常情况下,实现了系统的软冗余。上位机采用Simatic WinCC6.0作为上位监控软件。1#控制室400PLC主站配置6个ET200M子站。2#控制室400PLC主站配置2个ET200M子站。CPU414-2DP集成MPI通讯口和Profibus-DP通讯口,各子站与400PLC主站采用Profibus-DP[5]方式相连;同时400PLC主站通过MPI接口与上位机实现通讯。现场传感器的输出信号由各站信号模板采集、转化为相应的数字信号然后通过通讯模块送到400PLC主站,400PLC主站把各站送来的数据按要求进行各种运算、处理后通过MPI网络传到服务器。客户机和服务器之间通过OPC方式进行数据的传递。
3 OPC技术在本系统中的应用[1]
3.1 OPC概念意义
由于计算机和工控软硬件产品开发的渐进性与生命周期,的工控系统已经形成多厂商产品共存的异构环境。由于开发商的不同和设备、软件的不同,目前的各种自动化系统都设计了各自专用的接口,这样不同的开发商设计生产的产品就不能实现互相通信。而对集成大型自动化系统来说,在硬、软件组件的选择上受到很大的限制,不能利用现成的硬、软件资源,浪费了大量的劳动却不能保证所集成系统的质量。随着技术的发展,自动化系统要求实现大范围的信息共享及实时监控,因而对工业控制系统的开放性、快速性、安全性提出了越来越高的要求。正是这种应用需求的强烈驱使,由基金会OPC国际组织(OLE for Process Control)提出一种专门适用于工业控制过程的标准。OPC提供了访问工业控制中的站端数据的一种通用方式。按此标准设计自动化系统,可使不同厂家的产品实现通用化,使系统能够实现即插即用和无缝连接。
3.2 OPC技术原理
OPC是为了解决应用软件和各种设备驱动程序的通讯而产生的一项工业技术规范和标准。它采用客户/服务器体系,基于Microsoft的OLE/COM和DCOM(Distributed Component bbbbbb Model)技术,为硬件厂商和软件开发者提供了一套标准的接口。OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性。OPC是一种标准接口,它能被连接到I/O装置、PLC(Prog- rammable Logic Control)、现场总线、组态软件等,该技术提供一种即插即用的硬、软件组件,用户很容易将它们集成为完整的自动化系统。利用OPC技术开发标准的OPC服务器来代替过去专用的I/O设备驱动器软件,并将各种应用设计成OPC的客户端,这样在OPC客户和OPC服务器之间就可进行通信和互操作,OPC硬件和软件制造商就能够在互联问题上花费很少的时间而将大量的精力放在应用问题上,从而减少大量的劳动。
OPC可以充当现场设备、数据传输和向上层的应用程序的接口。当作为下层现场设备的标准接口时它代替传统的“I/O驱动器”来完成与现场设备的通信。当OPC服务器向上层应用程序提供标准接口时,使上层的应用程序能够取到OPC服务器中的数据,从而向上实现互联,如图1所示。
图1 采用OPC前(1)后(2)的通信状况
(1) 优越性
基于先进的COM技术的OPC技术在过程控制中广泛使用是顺理成章的事情。
●系统开放
采用OPC的系统,是完全开放的系统。尽管各个厂家的硬件设备和系统有所不同,但只要采用统一的OPC接口,就可容易的接入,因此用OPC构成的系统是完全开放的系统;
●成本低
一是硬件可以选择价廉物美的产品,二是软件开发费用大幅度降低。三是人员的培训期短,费用低;
●构成容易使用灵活
用户可以根据自己的情况组成理想的系统,既便于组成新的系统,也便于原有系统的改造;
●即插即用
即插即用在设备制造厂和监控系统的销售商都支持OPC的场合。若用OPC构成一个监控系统的话,可以根据项目自身的特点选用佳的设备、远程终端和监控组态软件,构成合适的系统。图2是采用OPC接口的系统结构。
图2 采用OPC接口的系统结构
(2) OPC服务器的组成
OPC服务器由3类对象组成,相当于3种层次上的接口:服务器(server)、组(group)和数据项(item)。
服务器对象包含服务器的所有信息,同时也是组对象的容器。一个服务器对应于一个OPC Server,即一种设备的驱动程序。在一个Server中,可以有若干个组。
组对象包含本组的所有信息,同时包含并管理OPC数据项。OPC组对象为客户提供了组织数据的一种方法。组是应用程序组织数据的一个单位。客户可对其进行读写,还可设置客户端的数据更新速率。当服务器缓冲区内数据发生改变时,OPC Server将向客户发出通知,客户得到通知后再进行必要的处理,而无需浪费大量的时间进行查询。OPC规范定义了2种组对象:公共组(或称全局组,public)和局部组(或称局域组、私有组,local)。公共组由多个客户共有,局部组只隶属于一个OPC客户。
数据项是读写数据的小逻辑单位,一个数据项与一个具体的位号相连。数据项不能独立于组存在,必须隶属于某一个组。组与项的关系如图所示。在每个组对象中,可以加入多个OPC数据项(Item)。
OPC数据项是服务器端定义的对象,通常指向设备的一个寄存器单元。OPC客户对设备寄存器的操作都是通过其数据项来完成的。通过定义数据项,OPC规范尽可能地隐藏了设备的特殊信息,也使OPC服务器的通用性大大增强。OPC数据项并不提供对外接口,客户不能直接对其进行操作,所有操作都是通过组对象进行的。
应用程序作为OPC接口的Client方,硬件驱动程序作为OPC接口中的Server方。每一个OPC Client应用程序都可以连接若干个OPC Server,每一个硬件驱动程序可以为若干个应用程序提供数据。
(3) OPC的报警(alarm)和事件(event)
报警和事件处理机制增强了OPC客户处理异常的能力。服务器在工作过程中可能出现异常,此时,OPC客户可通过报警和事件处理接口得到通知,并能通过该接口获得服务器的当前状态。在很多场合,报警和事件的含义并不加以区分,两者也经常互换使用。从严格意义上讲,两者含义略有差别。
依据OPC规范,报警是一种异常状态,是OPC服务器或服务器的一个对象可能出现的所有状态中的一种特殊情况。例如,服务器上标记为FC101的一个单元可能有如下状态:高出警戒、严重高出警戒、正常、低于警戒、严重低于警戒。除了正常状态外,其他状态都视为报警状态。
事件则是一种可以检测到的出现的情况,这种情况或来自OPC客户,或来自OPC服务器,也可能来自OPC服务器所代表的设备,通常都有一定的物理意义。事件可能与服务器或服务器的一个对象的状态有关,也可能毫无关系。如高出警戒和正常状态的转换事件和服务器的某个对象的状态有关,而操作设备、改变系统配置以及出现系统错误等事件和对象状态就无任何关系。
(4) OPC的接口方式
OPC规范提供了2套接口方案,即COM接口和自动化接口。COM接口效率高,通过该接口,客户能够发挥OPC服务器的佳性能,采用C++语言的客户一般采用COM接口方案;自动化接口使解释性语言和宏语言访问OPC服务器成为可能,采用VB语言的客户一般采用自动化接口。自动化接口使解释性语言和宏语言编写客户应用程序就很简单,然而自动化运行时需进行类型检查,这一点则大大牺牲了程序的运行速度。
(5) OPC的数据访问方式
OPC服务器本身就是一个可执行程序,该程序以设定的速率不断地同物理设备进行数据交互。服务器内有一个数据缓冲区,其中存有新的数据值:数据质量戳和时间戳。时间戳表明服务器近一次从设备读取数据的时间。服务器对设备寄存器的读取是不断进行的,时间戳也在不断更新。即使数据值和质量戳都没有发生变化,时间戳也会进行更新。
客户既可从服务器缓冲区读取数据,又可直接从设备读取数据,从设备直接读取数据速度会慢一些。一般只有在故障诊断或极特殊的情况下才会采用。
4 OPC技术在本系统中的应用
4.1 OPC应用设计
WinCC是西门子公司在自动化领域采用先进的技术与微软公司在共同开发的居于地位的工控综合软件平台。它集成的OPC服务器使得过程数据可由其它应用程序(OPC客户机)访问。
统计办公室的客户机,通过厂区的局域网与服务器相连。本项目在客户机上开发一个简单的WinCC应用程序,由于接下来用VB开发的应用程序中也要求显示监控画面,所以我们就没有在该客户机上的WinCC应用程序中建立监控画面,而仅仅只是利用WinCC内置的OPC进行数据的传递,把服务器上的实时数据读到该客户机上,方便VB应用程序的读取。由于通讯程序是WinCC内部集成的,所以省去了很多编程工作,极大的推动了工程的进展。具体的操作:在WinCC Explorer窗口中,右击Tag Management选择Add New Driver,在弹出的对话框中选择OPC.CHN打开,在Tag Management目录下就会添加OPC目录。打开OPC目录,下面会出现OPC GROUPS,右击它选择System bbbbbeter,弹出OPC Item Managr对话框,点击computer按钮在弹出的对话框中输入服务器的计算机名,完成搜索,在服务器上打开的文件夹中,选择要读取的变量,完成OPC连接工作,配置如图3所示。
图3 OPC连接
工程开始时,我们也想省去这个中间环节,不借助WinCC的内置OPC功能,而直接编写一个VB通讯程序,实现客户机与服务器的通讯。但是通过对该系统一段时间的使用和观察,我们发现实际和理论之间确实存在着差距,在通讯程序运行过程中,总会出现一些我们理论上没有考虑周全的问题,使得通讯程序频频出错,造成很多数据的缺失,导致系统运行的不稳定。下面对方案的采纳和改进作一下具体的说明。
初期,在客户机与服务器的通讯方面,我们曾在Visual Basic的环境下开发了一个OPC客户端应用程序,利用该程序与服务器进行通讯,但是运行不久后,客户机出现死机的问题,通过日志文件的监测,发现死机时的服务器状态为ServerState =2,OPCFailed表示OPC服务器由于异常而停止,出现该错误的原因是,客户端程序中没有实现较为完善的容错和故障诊断的功能,当服务器出现短暂错误时,造成OPC连接中断,此时客户机不能及时的实现故障诊断,造成死机。
为了解决这一问题,提出第二种方案:即在客户端程序中加入诊断程序,通过不断连接服务器从而不断检测Sverstate参数来判断服务器是否出现故障,若服务器状态不正常,于是重新启动该系统软件,从而实现故障的诊断和处理。但是运行数周后,发现服务器资源被大量的消耗,经过查阅资料与反复试验发现这种现象是由于客户机与服务器频繁的连接与断开而引发,从而造成服务器资源被大量的消耗。于是提出了第三种方案。
第三种方案将OPC通讯分为两部分来做(如图4所示),部分也就是重要的部分是客户机与服务器的通讯,这部分通讯我们利用了WinCC内部集成的OPC接口,也就是说在客户机上开发了一个小型的WinCC客户端应用程序,利用WinCC内部集成的OPC接口进行服务器和客户机之间数据的传输,把服务器上的数据传输入WinCC客户端应用程序中的标签内,这是考虑到了其内部集成的接口的稳定性与较完善的故障诊断与处理,这种方式可以应对服务器所出现的各种情况,彻底避免死机情况。第二部分是Visual Basic 和 客户机上的WinCC进行通讯,这一部分的通讯我们是利用了自己开发的一个OPC客户端应用程序来实现的,这个客户端程序是在Visual Basic6.0的开发环境下进行开发的,其作用就是把WinCC客户端应用程序中的标签内的数据通过OPC接口传输入该系统软件的界面上及数据库内,以便进行整个系统的开发。
图4 OPC通讯
WinCC在安装时提供了OPC的客户端控件:Siemens OPC DAAutomation 2.0(SOPCDAAuto.dll),这个控件就是我们在VB中要用到的控件,我们也可以使用通用的OPC客户端控件:OPC Automation 2.0[6][7]。OPC连接部分的程序设计思路如下图5所示
4.2 监测评估程序基本功能
系统要完成三部分的监测与管理的功能。监测部分要完成70多个量的实时监测与累计,并显示出各个瞬时量的实时曲线;管理部分要完成统计计算,统计报表,成本核算,数据分析,错误列表,数据备份,参数设置,导入Excel表等几大功能。要具备完善的数据汇总功能还要具有较完善的查询功能及数据库的维护功能,在此基础上,进行大量数据分析和网络数据库查询的设计。
系统完成如下功能:通过OPC客户端程序与本机上的WinCC客户端进行通讯,每当服务器上的数据有变化时,客户端的WinCC上的数据也随之发生变化,相应的管理软件上的数据也发生变化,从而进行实时的监测。每四分钟把所有的瞬时量读入4min数据库中,用来划出时实曲线,每半小时把所有量(包括瞬时量和累计量)读入半小时数据库,通过统计计算生成8小时数据库和天数据库。之所以要生成这两个中间数据库,是因为要对每个班次进行考核和满足日后的日查询功能。生产车间共分为甲、乙、丙3个班次,每个班次工作8小时,所以建立了8小时数据库;在今后的查询功能中都是以日查询为基础的,所以又建立了24小时数据库。通过这两个中间数据库,可对各个部门的数据按要求显示报表,计算各个部门的成本或消耗,并按条件选择进行数据计算,以供用户对各个部门生产状况进行分析比较,并可以以棒图和饼图两种方式形象的显示。在数据采集的过程中,各个监测量越限错误状态也被实时的写入错误列表,并可按选择的条件进行错误列表的查询。当进入新的一年时,可执行备份功能将不需要分析的数据备份至备份库中。为了方便对数据进行进一步的处理分析,还可将各个部门的数据按要求与EXCEL表链接,生成EXCEL表格式的文件。
5 项目中的技术难点
统计办公室要对各个部门进行月结考核,需要记录车间多个指标以及数据的变化并进行相应的数据处理,同时需要计算生产成本并打印详细月报表等。由于WinCC自身的很多性能特点,满足这么多细致的要求,工作量十分大。所以考虑到在统计报表及访问数据库方面Visual Basic 6.0具有强大的数据操作功能,该系统采用VB6.0结合Access数据库进行开发。在通讯方面客户机与服务器的通讯采用了服务器上的WinCC.Client与WinCC.Server上的WinCC内部集成的OPC互相通讯的方式,而客户机上的Visual Basic 6.0与本机上的WinCC.Client的通讯则是通过在VB中开发OPC客户端程序实现的。这样做的目的是为了更好的利用WinCC内部集成的OPC来进行比较复杂的通讯,只在简单部分使用VB的OPC客户端应用程序。
6 结束语
本系统现已投入运行,且运行情况良好。系统对工艺流程和相关设备进行了改造,使重金属的提取比例提高,使磨矿分级、氰化浸出、污水排放等工艺指标达到较高水平,不但为企业创造更大的经济效益而且减少了环境污染,同时也改善了工人的工作环境降低了工作强度。本系统的开放性和可扩展性也很好的适应了车间改良的需求,可根据用户的要求方便的链接多个从站,受到了用户的好评