论文部分内容阅读
摘要:在单井自动化系统中,产品的调试、配置工作量较大,目前在油田现场,施工人员只能通过远程桌面或TeamViewer之类的远程控制软件来连接服务器,之后通过RTU驱动软件来进行产品的调试和配置。这种工作方式的缺点是,在同一时间只能有一个用户操作服务器上的RTU驱动软件,降低了施工效率。因此,开发了可多台电脑同时进行RTU远程调试、配置的软件系统---RTU客户端调试系统。
关键词:单井自动化RTU多点同时
1引言
在系统施工过程中,产品的调试、配置都是通过服务器上的RTU驱动软件来进行的。RTU客户端调试系统基于系统桌面软件开发,支持TCP、UDP连接方式,通过网络传输协议自动连接服务器,不需要本机数据库支持,且在不同的电脑上可同时运行,能同时对不同的RTU进行调试和配置,提高了单井自动化系统的施工效率。
2系统开发环境
客户端系统的开发环境为Microsoft Visual Studio 2010,开发语言为C#,为了使软件界面整体风格简洁、美观,使用了部分界面控件包。
3软件系统结构
3.1通讯模块
通讯模块负责完成RTU客户端系统与服务器上RTU驱动软件之间的数据通讯,包括模拟注册、连接、接收数据、发送数据。每个客户端系统运行时将首先生成一个在60000-65535之间的ID(此ID由本机IP地址参与计算后得出,因此具有唯一性)。服务器RTU驱动软件会把ID在60000以上的注册设备自动识别为客户端,将客户端发送的数据转发给对应的RTU设备,并将RTU设备发送的数据转发给相应的客户端。为了简化通讯流程,RTU驱动软件将不转发功图、电流图测试数据,当完成功图、电流图测试后,RTU驱动软件只通知客户端系统功图、电流图测试完成,由客户端自己去数据库中查找相应的数据。
通讯模块中定义了通讯接口,并完成了TCP/UDP兩种通讯协议的实现,在系统设置中完成对通讯协议的配置后,客户端系统会自动调用相对应的协议实现来完成数据通讯。
3.2数据处理模块
在客户端系统中,将数据分为5大类:
1)功图数据模块,完成功图、电流图数据的解析;
2)电参数据模块,完成电参数据的解析;
3)油井组织结构数据模块,完成油井井号、归属关系的解析,最终形成树形结构;
4)RTU配置数据模块,包含了RTU的信道、ID、IP地址、RTU巡检参数、RTU程序版本、RTU下所属油井树形结构等数据;
5)系统日志数据模块,将用户对RTU的所有操作记录及RTU的数据反馈格式化为固定的格式,并自动将数据保存到日志文件中。
3.3系统设置模块
系统设置模块负责读取和保存客户端系统的各项功能配置。客户端系统运行时,将首先调用系统设置模块,根据用户设置来调用相应的实现模块,并对各项用户设置进行初始化。
3.4数据库操作模块
数据库操作模块负责完成以下工作:
1)数据库连接测试;
2)数据库端口是否开放测试;
3)建立并断开数据库连接;
4)根据指定条件读取油井列表及油井组织关系;
5)读取功图、电流图数据;
6)读取并设置用户权限信息。
3.5用户权限信息模块
在客户端系统中,将用户划分为三类,超级用户,管理区用户,普通浏览用户。超级用户可以查看所有油井数据,查看、设置RTU运行参数;管理区用户则只能看到自己区块内的油井及RTU,并进行相关操作;普通浏览用户则只能查看所属区块内的油井及RTU相关数据,不能对RTU进行设置。
用户权限信息模块负责检查用户登录账号的权限,并判断用户的操作是否符合其权限。
4系统交互数据定义
由于客户端系统不能直接连接RTU,所有数据均需要经过服务器RTU驱动软件转发,因此必须定义客户端系统与RTU驱动软件之间的交互数据格式,具体格式为:
目标RTU ID+目标油井ID+测试类型+数据+本机IP地址
其中测试类型定义为枚举型变量,包含了查看RTU时钟、校正RTU时钟、查看RTU巡检参数、设置RTU巡检参数、查看RTU信道、设置RTU信道、查看固化程序版本、测试电参、测试功图、测试电流图等类型。
同时在RTU驱动软件上增加客户端系统数据解析模块和消息处理链表,链表中的节点为数据转发类的实例,数据转发类定义如下:
在数据转发类中包含了目标油井ID,目标RTU ID,测试类型,数据和客户端IP地址。
RTU驱动软件接收到客户端系统的测试要求后,转发数据到指定的RTU,同时在消息处理链表中增加一个节点。之后,RTU驱动软件接收到数据后需与消息处理链表中的节点进行比较,如发现有符合项,则将数据或测试结果转发给客户端系统,同时将该消息节点从消息处理链表中删除。
5系统优势
客户端系统具有以下优势:
1)系统采用标准模块化设计,方便扩展。例如,如需增加其他类型协议的解析,只需提取协议模块接口,编写新协议实现代码即可,不需要对其他部分代码做修改;
2)整个系统免安装,直接拷贝到用户电脑上即可使用;
3)系统运行日志自动上传到服务器上,方便公司研发人员查找产品问题;
4)系统可同时在多台电脑上运行,方便多人同时执行单井自动化产品的调试和配置,提高了产品施工的效率。
6结束语
客户端系统的开发,给油田信息化部门同志的产品安装和调试带来了很大便利,后续将着手开发基于安卓平台和IOS平台的客户端系统,使产品安装和调试工作脱离电脑的束缚。
参考文献
[1]殷建平,徐云,王刚·《算法导论》·机械工业出版社,2012
(作者单位:贵州航天凯山石油仪器有限公司)
关键词:单井自动化RTU多点同时
1引言
在系统施工过程中,产品的调试、配置都是通过服务器上的RTU驱动软件来进行的。RTU客户端调试系统基于系统桌面软件开发,支持TCP、UDP连接方式,通过网络传输协议自动连接服务器,不需要本机数据库支持,且在不同的电脑上可同时运行,能同时对不同的RTU进行调试和配置,提高了单井自动化系统的施工效率。
2系统开发环境
客户端系统的开发环境为Microsoft Visual Studio 2010,开发语言为C#,为了使软件界面整体风格简洁、美观,使用了部分界面控件包。
3软件系统结构
3.1通讯模块
通讯模块负责完成RTU客户端系统与服务器上RTU驱动软件之间的数据通讯,包括模拟注册、连接、接收数据、发送数据。每个客户端系统运行时将首先生成一个在60000-65535之间的ID(此ID由本机IP地址参与计算后得出,因此具有唯一性)。服务器RTU驱动软件会把ID在60000以上的注册设备自动识别为客户端,将客户端发送的数据转发给对应的RTU设备,并将RTU设备发送的数据转发给相应的客户端。为了简化通讯流程,RTU驱动软件将不转发功图、电流图测试数据,当完成功图、电流图测试后,RTU驱动软件只通知客户端系统功图、电流图测试完成,由客户端自己去数据库中查找相应的数据。
通讯模块中定义了通讯接口,并完成了TCP/UDP兩种通讯协议的实现,在系统设置中完成对通讯协议的配置后,客户端系统会自动调用相对应的协议实现来完成数据通讯。
3.2数据处理模块
在客户端系统中,将数据分为5大类:
1)功图数据模块,完成功图、电流图数据的解析;
2)电参数据模块,完成电参数据的解析;
3)油井组织结构数据模块,完成油井井号、归属关系的解析,最终形成树形结构;
4)RTU配置数据模块,包含了RTU的信道、ID、IP地址、RTU巡检参数、RTU程序版本、RTU下所属油井树形结构等数据;
5)系统日志数据模块,将用户对RTU的所有操作记录及RTU的数据反馈格式化为固定的格式,并自动将数据保存到日志文件中。
3.3系统设置模块
系统设置模块负责读取和保存客户端系统的各项功能配置。客户端系统运行时,将首先调用系统设置模块,根据用户设置来调用相应的实现模块,并对各项用户设置进行初始化。
3.4数据库操作模块
数据库操作模块负责完成以下工作:
1)数据库连接测试;
2)数据库端口是否开放测试;
3)建立并断开数据库连接;
4)根据指定条件读取油井列表及油井组织关系;
5)读取功图、电流图数据;
6)读取并设置用户权限信息。
3.5用户权限信息模块
在客户端系统中,将用户划分为三类,超级用户,管理区用户,普通浏览用户。超级用户可以查看所有油井数据,查看、设置RTU运行参数;管理区用户则只能看到自己区块内的油井及RTU,并进行相关操作;普通浏览用户则只能查看所属区块内的油井及RTU相关数据,不能对RTU进行设置。
用户权限信息模块负责检查用户登录账号的权限,并判断用户的操作是否符合其权限。
4系统交互数据定义
由于客户端系统不能直接连接RTU,所有数据均需要经过服务器RTU驱动软件转发,因此必须定义客户端系统与RTU驱动软件之间的交互数据格式,具体格式为:
目标RTU ID+目标油井ID+测试类型+数据+本机IP地址
其中测试类型定义为枚举型变量,包含了查看RTU时钟、校正RTU时钟、查看RTU巡检参数、设置RTU巡检参数、查看RTU信道、设置RTU信道、查看固化程序版本、测试电参、测试功图、测试电流图等类型。
同时在RTU驱动软件上增加客户端系统数据解析模块和消息处理链表,链表中的节点为数据转发类的实例,数据转发类定义如下:
在数据转发类中包含了目标油井ID,目标RTU ID,测试类型,数据和客户端IP地址。
RTU驱动软件接收到客户端系统的测试要求后,转发数据到指定的RTU,同时在消息处理链表中增加一个节点。之后,RTU驱动软件接收到数据后需与消息处理链表中的节点进行比较,如发现有符合项,则将数据或测试结果转发给客户端系统,同时将该消息节点从消息处理链表中删除。
5系统优势
客户端系统具有以下优势:
1)系统采用标准模块化设计,方便扩展。例如,如需增加其他类型协议的解析,只需提取协议模块接口,编写新协议实现代码即可,不需要对其他部分代码做修改;
2)整个系统免安装,直接拷贝到用户电脑上即可使用;
3)系统运行日志自动上传到服务器上,方便公司研发人员查找产品问题;
4)系统可同时在多台电脑上运行,方便多人同时执行单井自动化产品的调试和配置,提高了产品施工的效率。
6结束语
客户端系统的开发,给油田信息化部门同志的产品安装和调试带来了很大便利,后续将着手开发基于安卓平台和IOS平台的客户端系统,使产品安装和调试工作脱离电脑的束缚。
参考文献
[1]殷建平,徐云,王刚·《算法导论》·机械工业出版社,2012
(作者单位:贵州航天凯山石油仪器有限公司)