APP下载

可扩展的数据采集软件系统开发与设计

2013-10-08赵立本

中国科技信息 2013年19期
关键词:配置文件调用管理系统

赵立本

中国石化山东分公司,山东 济南 250014

引言

测控系统在现代生产和生活当中具有重要意义。数据采集作为测控系统的重要组成部分,是指从传感器和其它待测设备等模拟和数字被测单元中自动采集信息的过程。在这个微电子技术和微处理器技术不断发展的今天,大量新的智能仪表不断涌现,智能仪表和数据采集已进入了崭新的发展阶段。可扩展的数据采集软件系统具有高通用性和高移植性,可以通过不同参数配置实现对不同的数据采集模块(数据采集通信协议)的调用,从而实现对不同数据采集设备的数据采集。因工程需求,需要添加新的数据采集设备时,只需要编写小量数据采集模块的代码,而不用更改源程序代码,就可以实现对新添加的数据采集设备进行数据采集了。可扩展的数据采集软件系统设计方法的应用,将会大大降低项目开发成本,节约项目开发时间,有效避免了程序的二次开发。

1 数据采集应用系统的总体结构

图1 数据采集应用系统的层次结构图

数据采集应用系统是获取监控对象的数据,完成数据处理、分析与显示功能的一套系统。它分为三个层次:物理层、采集层、应用层。层次结构图如图1所示。其中数据采集设备位于物理层,它通过传感器获取监控对象的数据;数据管理系统位于管理层,它对数据进行计算处理;可扩展的数据采集软件系统位于监控系统的采集层,一方面它接收来自物理层的各种数据采集设备的数据,另一方面又把数据传送给管理层的数据管理系统。

2 系统设计策略

可扩展的数据采集系统的包括五个模块,其中参数配置模块是一个单独的模块,不与其他模块之间发生关系,只是把配置信息写入配置文件,而数据采集模块,接口初始化模块,配置信息存储模块都是通过主控程序进行调用的。系统的工作流图如图2所示。主控程序作为核心部分调控各个模块之间的执行顺序。它首先通过socket建立一个TCP/IP服务器监听特定网络端口的数据,当获取到数据管理程序发送过来的start命令之后,主控程序首先根据配置文件信息,对所有与数据采集设备连接的接口进行初始化,然后再建立一个数据采集线程,线程里面运行一个Timer,这个Timer按照一定的采样周期循环调用数据获取函数,获取数据采集设备采集到的数据,然后再建立一个TCP/IP客户端,把数据发送给数据管理程序。在这个数据获取函数内部通过一个for循环读取配置文件中每个数据采集设备的配置信息,把这个设备的配置信息保存在配置信息存储模块中,然后根据这个数据采集设备的型号动态调用与该数据采集设备相对应类,调用这个类里面的数据采集函数,并传递一个参数,该参数是配置信息存储模块的一个类。

其中数据采集模块中的类是这么规定的,每个数据采集设备,对应一个数据采集的类,该类放在程序的特定文件当中,当添加新的设备时,只要按照程序设计的要求写上该类,从新编译一下就可以了。如图2。

3 接口设计

外部接口:参数配置接口:用户可以根据配置值界面设定每个设备的配置信息。

采集系统与数据管理系统通信接口:

采集系统与数据管理系统通过socket相互联系,它们可以通过socket协议去获取对方的数据,只要在数据管理系统中设定采集系统的IP地址,以便能向数据采集系统所在的主机发送数据。而数据采集系统则是直接通过程序获取数据管理系统的IP地址,返回它采集到的数据。数据采集系统与数据管理系统的通信涉及两个socket,一个作为服务器接收数据管理系统发送过来的解释命令,一个作为客户端,周期性的向数据管理系统发送数据。

它们之间相互通信方式如图3所示,它们之间的交换的数据是一种具有特定数据格式的数据。采集系统获取的数据包括:控制命令、采样周期。数据管理系统获取的数据为从采集设备采集后经过组合的特定数据结构的数据。各数据的数据描述如下表所示。

表1 接口数据表

图2 系统工作流程图

图3 采集系统与数据管理系统外部数据接口图

计算机与采集设备接口:具有数据采集设备需要用到的计算机外部接口。

4 数据描述

设备配置文件中的数据项如表2所示。模块内部、以及模块之间的数据项在详细设计文档当中会有详细描述。

表2 数据项描述表

数据结构:

初始化接口所需参数信息:struct interface{

commport,stopbit,baudrate,parity,databit,address};

设备信息:struct instrument{ Manufacturer,model,id };

传感器信息:struct sensor{voultageU,courrentA,powerP,frequencyf };

其它模块内部设计到得数据结构在详细设计的模块中有详细描述。

5 运行设计

运行模块组合:参数配置模块单独执行,其它模块在主控程序模块的调控下执行。

运行控制:主控程序模块在收到数据管理系统发送过来的命令之后,调用各个模块的函数,完成参数配置设定的功能。

本文作者创新观点:本文设计了一种能够根据智能仪表的不同进行不同参数配置实现不用功能数据采集系统,具有高扩展性和高通用性,将会很好地解决用户在使用不同类型的数据采集设备时重写程序的麻烦。

[1]王琳,商周,王学伟. 数据采集系统的发展与应用. 电测与仪表,2004,41(8):4~8

[2]罗光坤,张令弥,王彤. 基于 GPIB 接口的仪器与计算机之间的通讯.仪器仪表学报,2006,27(6):634~637

[3]杨会民,田秋成,邢建功等. 基于GPIB 接口的自动测试系统.微计算机信息,2005,21(1):93~94,147

[4]邱健,扬冠玲,何振江.实现波形和数据采集的虚拟仪器技术. 国外电子测量技术,2002,21(3):24~27

[5]李莹,孟军霞. USB 接口通讯的分析与研究. 焦作大学学报,2006,2:67~68。

[6]周娟,陈向华. 在VB中使用Winsock 控件建立基于UDP协议的应用程序. 成都电子机械高等专科学校学报,2005,2:17~20

[7]邓绯,陈印. 使用Winsock控件开发服务器/客户端程序.四川职业技术学院学报, 2004,14(4):105~107

[8]Zhongwen Guo, Pengpeng Chen, Yuan Feng, Yongguo Jiang, and Feng Hong“ISDP: Interactive Software Development Platform for Household Appliances Testing Industry” IEEE TRANS. ON INSTRUM. MEAS., JUNE 10, 2009:4-6

[9]S. Frattesi, L. Andrenacci, L. Pasqualini, and L. Starna, “A modern approach

猜你喜欢

配置文件调用管理系统
基于James的院内邮件管理系统的实现
从Windows 10中删除所有网络配置文件
用软件处理Windows沙盒配置文件
互不干涉混用Chromium Edge
核电项目物项调用管理的应用研究
系统虚拟化环境下客户机系统调用信息捕获与分析①
基于Zookeeper的配置管理中心设计与实现
基于LED联动显示的违停管理系统
停车场寻车管理系统
海盾压载水管理系统