油气井生产数据管理软件的总体设计思路是利用DTU配套的ActiveX控件实现了GPRS透明传输;当DTU数据上传到数据管理中心时,触发数据采集、解码、存储等一系列动作,并利用DundasChart控件绘制实时数据曲线。另外,软件根据用户界面操作,触发数据查询、历史曲线绘制、报表导出、参数设置等功能。
1功能模块设计
油气井生产数据管理软件有三个功能模块:数据采集与存储、数据查询与导出、系统设置。数据采集与存储:通过ActiveX控件获取进口DTU上传的数据,然后根据系统设置中的数据结构对数据进行解码和校验。将数据存储于数据库对应表中,并同时将数据写入Dun-dasChart控件,重新绘制对应井的曲线。数据查询与导出:通过井号、起始时间、结束时间等关键字段,进行组合查询,查询的结果以报表和曲线形式呈现,可以对数据进行增加、删除、编辑等操作,也可以导出到EXCEL报表中,方便用户进一步使用或分析数据。系统设置:为其它模块正常运行提供基础参数,包括生产数据管理软件使用的网络IP、侦听端口号、DTU注册ID、DTU通讯密码、DTU对应的井号、实时监控的范围、告警阀值、数据结构(数据解码与校验)、数据库备份与还原、用户名和密码以及拥有的权限。
2数据库设计
数据库设计遵循第三范式的规则,数据表中的每一列数据都和主键直接相关,使得数据冗余度较低,数据库结构合理。数据库包括五张数据表:生产数据、DTU参数、生产井信息、用户信息、本系统参数。生产数据表的主要字段为:DTU注册ID、压力、温度、流量、液面高度、时间等。DTU参数表的主要字段为:DTU注册ID、电话号码、网络协议、网络IP、端口号、登录时间、更新时间、工作状态等。生产井信息的主要字段为:井号、DTU注册ID、生产单位、开井时间、备注等。用户信息表的主要字段为:用户名、密码、所属部门、角色、权限等。
3曲线设计(显示没一点的值)
采用DundasChart控件为生产数据管理软件提供先进的数据可视化功能。利用DundasChart控件创建实时曲线和历史曲线,两种曲线在元素布局上保持一致,方便使用者快速获取和理解曲线中所蕴含的信息,但在样式设计上采用不同风格,以便使用者快速区分实时曲线和历史曲线。另外,实时曲线是不断向左滑动的,当有新的数据时,首先删除最早的数据,然后添加新的数据点,始终保持最近五个数据点的曲线。历史曲线根据查询结果绘制曲线,同时显示所有符合查询条件的点。当使用者更换查询条件或修改数据时,历史曲线会重新绘制。生产数据管理软件最多同时显示六口井的实时曲线,同时监控所有井的状态;当生产数据超过告警阀值,软件会弹出警告提示;如果当前显示的实时曲线不包括该异常井,软件会用异常井的实时曲线替换当前显示的最后一口井的实时曲线。另外,实时曲线和历史曲线可以放大和缩小,隐藏或显示告警阀值线,隐藏或显示指定井的曲线。
4软件实现
生产数据管理软件在.NET平台上,使用C#技术在Micro-softVisualStudio2008环境下进行开发,后台使用SQLServer2005数据库,GPRS通讯使用OCX(ObjectLinkingandEmbe-ddingControleXtension)控件,绘制曲线采用DundasChartfor.NET图表控件。
作者:胡军 单位:中国石化江汉油田分公司石油工程技术研究院