石油平台中控系统操作记录的实现

2015-01-27 06:30李志刚李墨林
自动化与仪表 2015年10期
关键词:操作员驱动程序管理器

武 岳,王 伟,李志刚,张 昊,李墨林

(海洋石油工程股份有限公司,天津 300452)

众所周知,石油行业与其他行业相比较,需要的生产工艺和生产设备的安全等级比较高,因为在石油行业的生产过程和生产产品中都会有易燃有毒的气液体产生,加之海洋石油平台处于海洋中孤立的环境下,一旦发生安全事故,逃生几率很低,如果放松安全警惕,后果不堪设想。而据有关资料表明,90%的安全事故是由人的错误操作造成的,许多事故发生的原因,表面上看来是设备因素,但追究该设备的历史运行状况,一般都与人的因素有关,由此可见,一份具有历史查询功能的操作记录报表尤为重要。

本文介绍了以罗克韦尔公司的PlantPAx分布式体系结构为平台对操作员的操作情况进行实时记录并生成报表的方法,使管理人员可以方便查看操作员对设备的操作情况,当发生事故时,可以很快分清事故责任。以往的操作记录常常采用曲线记录或报警记录的方式,由于石油平台的操作基本都是数字量的脉冲信号,所以曲线记录的方式很难捕捉到这些瞬时信号,监测起来也非常不直观,而采用报警记录的方式,里面会有许多模拟量的报警信息和系统的报警记录,不易于查寻。这里介绍的方法是通过Factorytalk SE上位机组态软件中自带的数据记录服务功能,采用系统ODBC源将手动操作的变量值改变信息写入数据库SQL 2008中,再通过HMI画面按钮打开Excel对数据库中数据进行读取。此报表的特点是数据清晰及时,对操作记录的采集准确无误,具有历史查询和筛选功能,极大地方便了管理人员查看记录的工作。

1 ODBC基本概念

开放数据库互连ODBC(open database connectivity)是微软公司开放式服务结构WOSA(Windows open services architecture)中有关数据库的一个组成部分,它制定了一组协议规范,并提供了访问数据库的标准应用程序编程接口 (即 API)。ODBC API使不同的数据库系统有了统一的接口,用户使用一套接口程序就可以方便地对不同数据库系统进行操作,并且这些接口支持大部分数据库语言,所以用户可将不同的数据库语言映射到ODBC 中去[1]。

ODBC最大的优点是可以通过统一的接口方式对 SQL、Access、Oracle等数据库进行处理。当像Excel制表软件这类应用程序要对数据库进行操作时,不需要通过数据库管理系统来完成,只要对数据库管理系统对应的ODBC驱动程序进行操作即可,大大地避免了数据传递之间的软件障碍,使应用程序对数据库的访问更加灵活便捷。

一个完整的ODBC由以下几个部分所组成:

(1)应用程序(application);

(2)ODBC 管理器(administrator)。ODBC 管理器位于Windows控制面板(control panel)的ODBC数据源内,其主要作用是对数据源和安装的ODBC驱动程序进行管理;

(3)驱动程序管理器(driver manager)。驱动程序管理器是ODBC的核心部分,它包含在ODBC32.DLL中,对访问用户是不可见的,它的主要任务是对ODBC驱动程序进行管理;

(4)ODBC API;

(5)ODBC驱动程序。是一些DLL,提供了ODBC和数据库之间的接口;

(6)数据源。数据源实际上是数据库的映射文件,其中包含了数据库类型和数据库位置等信息。

ODBC的各部分关系如图1所示。

图1ODBC关系Fig.1 ODBC diagram

当用户要通过应用程序来读取数据库的内容时,首先我们要在Windows控制面板的ODBC中建立一个数据源,数据源中包含了欲访问数据库的位置、数据类型及ODBC驱动程序等信息,相当于建立起了一个通往具体数据库的入口,接下来我们要做的只是要通过应用程序使ODBC获得数据源名,那样ODBC就可以自动地链接到对应数据库中去。在ODBC中,只能通过驱动程序管理器和数据库传递信息,ODBC API不能对数据库进行直接访问。驱动程序管理器可以内嵌在Excel软件中,Excel通过驱动程序管理器访问数据库的数据源,数据库再将要访问的数据通过驱动程序管理器反馈给Excel[2],由此可见,驱动程序管理器是ODBC的核心部分。

2 应用分析

海洋石油平台中控系统作为海洋油气田开采的核心系统,仿佛是整个平台的“大脑”和“中枢神经”,对油气开采工艺过程控制及配电安全起到至关重要的作用。一般海洋石油平台中控系统主要包括3个子系统(PCS过程控制系统、ESD紧急关断系统、FGS火气系统),PCS系统可实现采油工艺流程实时监控、监控作业参数;ESD及FGS系统可对采油安全实施有效保护,对现场漏气、火灾等风险因素进行实时监控,当发生险情时逻辑判断是否需要进行设备及工艺保护关断。3套系统共同实现海洋石油平台采油过程工艺控制及安全保护,确保采油作业安全平稳进行。

操作员对中控系统的操作一般有对电机的启停控制,对SDV阀门和BDV阀门的开关控制,对PV阀门和SV阀门的开度给定,以及在特殊时刻需要对ESD紧急关断系统的设备进行操作。每当操作员在HMI监控画面上按下控制按钮时,系统将自动把操作时间和所操作的设备记录在数据库中,拥有权限的人员可在任何一台操作员站上点击“操作记录”按钮,系统会以Excel的形式自动打开操作记录报表,显示出预设周期内的所有操作记录和操作的时间。

3 Factorytalk View SE操作记录的实现

3.1 实现原理

将生产PLC与Factorytalk View SE进行组态,使SE采集将要进行记录的变量值,并对这些变量做适当的配置,在配置过程中通过ODBC可以连接对应的数据库,将变量值和时间等参数保存到数据库中去,这时会有一个对应的数据源产生,最后在SE监控画面上绘制按钮,该按钮的作用是以Excel的形式打开上述数据源,形成报表。系统解决方案框图如图2所示。

图2 系统解决方案框图Fig.2 System solution diagram

在海洋石油平台中控系统中,罗克韦尔产品的系统架构为分布式体系结构,即配置2台冗余服务器进行监控页面发布,其余操作员站对服务器进行访问的网络结构方式,网络结构如图3所示。

图3 网络结构Fig.3 Network structure diagram

我们将操作记录的数据库建立在服务器中,并将数据源共享,这样,操作员站无需任何设置就可以通过HMI界面直接访问服务器中的操作记录数据源。

3.2 SQL 2008数据库的设置

SQL Server 2008在Microsoft的数据平台上发布,可以组织管理任何数据。能够将即时文档、历史文档、消息文档、时间标签等数据直接存储到数据库中。能够对数据进行查询、搜索、同步、报告和分析之类的操作。SQL Server 2008允许使用Microsoft.NET和Visual Studio开发的自定义应用程序中使用数据,在面向服务的架构SOA和通过Microsoft BizTalk Server进行的业务流程中使用数据。信息工作人员可以通过日常使用的工具直接访问数据。

在SQL 2008 Management Studio中建立要存放操作记录的数据库,命名为“test”。需要注意的是,由于我们要在其他客户端对数据库进行访问,所以数据库要使用用户名和密码登录的方式,不能使用Windows身份登陆。

3.3 数据日志的设置

数据日志的作用是将组态的变量存储为历史变量,方便用户进行历史记录的查询[3]。在对数据日志进行配置时,需要将变量添加到数据日志中去,并配置这些变量的采集周期和历史存储周期,对于变量的存储有2种方式,其一是存储为内部文件,我们这里用到的是第二种方式,即通过ODBC存储到数据库中,再使用Excel生成报表。

在数据日志模型中添加操作记录配置文件,由于我们要在数据库中记录操作,所以记录模式选择ODBC数据源,在配置数据源中,选择只用于服务器的系统数据源,并选择SQL Server作为驱动程序,登录方式选择使用用户名密码登录,最后更改默认的数据库为刚刚在SQL中新建的数据库“test”,点击测试数据源,系统会显示“测试成功”,说明我们创建的数据源已成功与SQL数据库链接。如果直接点击数据记录模型配置文件中的“创建表格”按钮,系统将自动在“test”数据库中分别创建表格“Tag Table”、“Float Table”、“Sting Table”,其中“Tag Table”中记录的是标签名、标签类型、标签数据类型以及标签长度,“Float Table”中记录的是标签发生时间、标签数值、标签状态、标签标记等,“Sting Table”中记录的是字符串型数据。在操作记录报表中我们只需要“Tag Table”中的标签名和“Float Table”表中的内容,在此,我们选择最简单的方式,即删除“Tag Table”,只在数据库中建立“Float Table”表和“Sting Table”表,这样,标签名将自动添加到“Float Table”表中,为了查看方便,对其进行中文注释。如图4所示。

图4 报表设置Fig.4 Report setting diagram

在数据记录模型中添加需要进行记录的操作标签名,并将记录触发方式更改为“On Change”,即一旦变量发生改变就进行记录的方式,这样可以快速及时地对操作员的操作进行捕捉,最后设置历史记录保存周期,可以以天、星期、月为单位。

值得一提的是,一般来讲Factorytalk View SE软件的HMI服务器只能加载1个数据日志,而历史曲线数据日志是每个中控系统必不可少的,所以为了将操作记录与历史曲线记录分开,我们需要启动一个应用项目的多个数据日志模型,所以我们要在启动宏中使用多个DataLogOn命令(表示数据日志模型的名称)。

3.4 打开Excel报表

在HMI画面中创建用于打开操作记录报表的按钮,并为其编写VBA代码:

为了使任意一台操作员站都能打开报表,位于服务器的Excel软件和“test”数据源都应设为共享。最终报表如图5所示。

图5 最终表格Fig.5 Final report

4 结语

石油平台中控系统操作记录报表是结合ODBC数据源和SQL 2008数据库而实现的,经过一周的实际应用证明,所有的被监控操作均能够及时准确地写入操作记录表格中去,此报表不但能够查询操作员的历史操作记录,还可对操作记录进行筛选,针对某一设备或某一时间段重点查询,操作方便,数据清晰准确,完全符合中控系统的要求和需要,填补了设备操作这一数据空白。而且报表的功能不只局限于操作记录,同时也可对设备的运行情况给予记录,为重要设备的检修和维护以及能源消耗情况提供重要依据。

[1]聂文燕.开放式数据库互连(ODBC)技术的探讨[J].新疆职业大学学报,2004,12(1):74-77.

[2]檀磊.ODBC 研究[J].软件导刊,2011,10(1):41-42.

[3]FactoryTalk View SE 用户手册[Z],2008.

猜你喜欢
操作员驱动程序管理器
美空军特种战术操作员正在进行军事自由落体跳伞
启动Windows11任务管理器的几种方法
应急状态启动磁盘管理器
浅谈基于H3C云计算管理平台的系统管理功能
阻止Windows Update更新驱动程序
Windows文件缓冲处理技术概述
计算机硬件设备驱动程序分析
无人机操作员的选用机制研究
面向知识自动化的磨矿系统操作员脑认知特征与控制效果的相关分析
在Win 7下利用凭据管理器提高访问速度等