一种可在线配置的数据采集与分析平台制造技术

技术编号:17912558 阅读:43 留言:0更新日期:2018-05-10 18:21
本发明专利技术提出一种可在线配置的数据采集与分析平台,包括六个模块:OPC数据采集模块、业务模块调度模块、数据分发模块、实时数据存储模块、TCP/IP数据发布模块、UI人机界面模块。所述业务调度模块负责根据模块配置启停各业务功能。所述数据分发模块负责将OPC数据和业务数据根据分发配置实时分发到各业务模块。所述实时数据存储模块负责根据存储配置将需要存储的数据点按周期存储到数据库中。所述TCP/IP数据发布模块采用【订阅<‑‑>发布】模式接收来自局域网上的TCP/IP客户端的订阅请求,根据请求将数据发布到各订阅客户端。所述UI人机界面模块提供人机交互接口。本发明专利技术能够实现系统模块间和业务模块间的即时数据共享,并实现实时数据存储。

【技术实现步骤摘要】
一种可在线配置的数据采集与分析平台
本专利技术涉及数据采集与分析平台,尤其涉及一种可在线配置的数据采集与分析平台。
技术介绍
现代轧机控制系统一般由基础自动化、二级监控系统、区域级的管理系统和整体产销管理系统及设备管理系统四个部分组成。其中二级监控系统主要用于完成一级控制系统实时数据的采集、处理、实时监控等功能,包含了信息传送、故障检测、远程诊断、维护等各种系统技术。在二级系统总体结构中,主要包括OPC数据采集模块、一个或多个业务逻辑判断分析模块、数据存储模块,通常做法是将三个功能模块分开来编写,并采用数据库或在线通讯(如.NetRemoting、TCP/IP、WCF等)的方式在三个模块间进行数据共享和传输。而业务的多变性使该三个模块不时的需要修改配置,另外,一个业务模块很难一次性将所有业务逻辑全部处理完成;如果用多个业务模块来处理业务逻辑,各业务模块间又不能很好的实现数据共享,这些问题都可能造成每次业务的修改都会重启整个系统。
技术实现思路
为了使二级系统总体结构中的各模块可在线编辑,实现系统模块间和业务模块间的即时数据共享和实时数据存储,本专利技术提出一种可在线配置的数据采集与分析平台。实现上述目的的具体技术方案如下:一种可在线配置的数据采集与分析平台,主要包括六个模块:OPC数据采集模块、业务模块调度模块、数据分发模块、实时数据存储模块、TCP/IP数据发布模块、UI人机界面模块。所述OPC数据采集负责根据采集配置与基础自动化通讯,实时读取自动控制系统中的数据。所述业务调度模块负责根据模块配置启停各业务功能。所述数据分发模块负责将OPC数据和业务数据根据分发配置实时分发到各业务模块。所述实时数据存储模块负责根据存储配置将需要存储的数据点按周期存储到数据库中,所述数据库优选为,分布式文档存储数据库(MongoDB),MongoDB是一个介于关系数据库和非关系数据库之间的产品,它支持的数据结构非常松散,因此可以存储比较复杂的数据类型。所述TCP/IP数据发布模块采用【订阅&lt;--&gt;发布】模式接收来自局域网上的TCP/IP客户端的订阅请求,根据请求将数据发布到各订阅客户端。所述UI人机界面模块提供人机交互接口,用于更新以上各模块配置,并实施监测各模块的运行日志。本专利技术还提供上述可在线配置的数据采集与分析平台的搭建方法,具体步骤如下所述:步骤一:平台搭建部署一台安装服务器,将其连接到自动控制系统的PLC网络中,安装工业远程通信控制组件,并配置名OPCServer,通过此OPCServer,平台可以访问到自动控制系统PLC中的数据点。在服务器上安装数据库软件,并新建数据库,在此数据库中添加关于平台各项配置的数据表。步骤二:OPC数据采集OPC(OLEforProcessControl),是一个基于微软的OLE(现在的ActiveX)、COM(部件对象模型)和DCOM(分布式部件对象模型)技术的工业标准,包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。目前由OPC基金会来管理这套标准。1、使用OPC基金会提供的OPCAutomation.dll枚举出本地计算机安装的OPC服务实例名,输入采集组和采集周期并保存后,系统将该OPC采集配置保存到数据库中,同时启动OPC数据采集客户端,并开始监听该OPCServer的运行状态和数据点变化事件。2、根据业务需要添加采集点。采集点的内容包括采集点名、扩展代码、数据类型、是否需要实时存储;其中采集点名是指在OPCServer中的标签名;扩展代码用于在业务系统中区分采集点。步骤三:链接库动态加载1、编写基于统一基类的线程单元模块,在线程内完成业务逻辑判断,并编译成dll文件。2、在平台内配置模块的运行方式、数据分发方式及运行周期,并保存到平台数据库中。3、在平台内读取各模块的配置,按照配置读取各模块的dll文件,并启动该dll文件内的线程单元。模块内的业务处理单元的执行方式分为同步执行和异步执行:同步执行是指线程单元内的逻辑模块必须等上一次执行完成后才能继续执行;异步执行是指线程单元内的逻辑模块执行在一个单独的线程内,无需等上一次执行完成;同步执行方式用于有业务优先级的逻辑模块中,而异步执行方式不用考虑业务优先级,但保证了业务处理能力,不会造成采集点。步骤四:实时数据分发1、平台遍历各业务模块,根据配置的OPC采集点订阅和业务输出点订阅,向模块内的队列中提交订阅点集合。2、模块在接收到订阅的采集点和业务输出点后,在线程单元内使用订阅点完成业务逻辑。3、数据分发的优化。结合模块线程单元的运行周期和实际业务逻辑处理时长,按照模块的数据接收和处理能力(每周期内能处理的订阅点集合数量)向模块分发数据。步骤五:实时数据存储根据存储配置将需要存储的数据点按周期存储到数据库中,所述数据库优选为,分布式文档存储数据库(MongoDB)。步骤六:实时数据发布数据发布采用【订阅&lt;--&gt;发布】模式接收来自局域网上的TCP/IP客户端的订阅请求,订阅内容包括请求类型、订阅点列表,其中,请求类型为读请求和写请求,当请求类型为读请求时,订阅列表内容为采集点名;当请求类型为写请求,订阅列表内容为采集点名和采集点值。平台在接收到客户端订阅请求后,根据请求类型处理请求。当请求类型为读请求时,从平台缓存中找出符合订阅列表的采集点名及其值组成集合,并序列化成二进制流发送到客户端;当请求类型为写请求时,平台读取列表中的采集点名及采集点值,通过OPCClient写入到OPCServer中。本专利技术的有益效果是:1、本专利技术能够基于Com协议的OPC进行数据采集当平台正在运行时,可浏览本地OPCServer,对本地OPCServer进行自定义的数据采集,可随时启停OPC数据采集,及修改数据采集周期和采集点;2、本专利技术能够基于MongoDB的进行实时存储当平台正在运行时,可添加MongoDB的实时存储功能,可随时对存储周期及需要存储的数据点进行更新或删除操作;3、本专利技术能够基于文件流的动态业务进行模块调用基于公用基类,可编写基于不同业务或不同逻辑的业务模块,可在不添加业务模块引用的情况下调用业务模块的逻辑运算单元,同时在业务模块运行的情况下对其进行文件的删除覆盖操作;4、本专利技术能够实现OPC数据采集数据和业务数据的分发共享由OPC数据采集产生的数据和各业务模块产生的业务数据可根据模块的订阅配置在平台内分发给各业务模块;5、本专利技术可以采用多TCP/IP客户端数据发布可接收来自TCP/IP客户端的数据订阅请求,针对不同用户的数据订阅要求(订阅点和订阅周期)进行数据发布;6、本专利技术能够通过上述5相功能,使二级系统开发人员将精力主要集中在业务逻辑分析上,而不用关心后台的功能,实现系统模块间和业务模块间的即时数据共享,并实现实时数据存储。具体实施方式为了便于本领域内技术人员理解,下面结合具体实施方式对本专利技术作详细说明。一种可在线配置的数据采集与分析平台,主要包括六个模块:OPC数据采集模块、业务模块调度模块、数据分发模块、实时数据存储模块、TCP/IP数据发布模块、UI人机界面模块。所述OPC数据采集负责根据采集配置与基础自动化通讯,实时读取自动控制系统中本文档来自技高网...

【技术保护点】
一种可在线配置的数据采集与分析平台,其特征在于,包括六个模块:OPC数据采集模块、业务模块调度模块、数据分发模块、实时数据存储模块、TCP/IP数据发布模块、UI人机界面模块;所述业务调度模块负责根据模块配置启停各业务功能;所述数据分发模块负责将OPC数据和业务数据根据分发配置实时分发到各业务模块;所述实时数据存储模块负责根据存储配置将需要存储的数据点按周期存储到数据库中;所述TCP/IP数据发布模块采用【订阅<‑‑>发布】模式接收来自局域网上的TCP/IP客户端的订阅请求,根据请求将数据发布到各订阅客户端;所述UI人机界面模块提供人机交互接口。

【技术特征摘要】
1.一种可在线配置的数据采集与分析平台,其特征在于,包括六个模块:OPC数据采集模块、业务模块调度模块、数据分发模块、实时数据存储模块、TCP/IP数据发布模块、UI人机界面模块;所述业务调度模块负责根据模块配置启停各业务功能;所述数据分发模块负责将OPC数据和业务数据根据分发配置实时分发到各业务模块;所述实时数据存储模块负责根据存储配置将需要存储的数据点按周期存储到数据库中;所述TCP/IP数据发布模块采用【订阅&lt;--&gt;发布】模式接收来自局域网上的TCP/IP客户端的订阅请求,根据请求将数据发布到各订阅客户端;所述UI人机界面模块提供人机交互接口。2.一种可在线配置的数据采集与分析平台的搭建方法,其特征在于,包括以下步骤:步骤一:平台搭建所述平台搭建主要为,部署一台安装服务器,将其连接到自动控制系统的PLC网络中,安装工业远程通信控制组件,并配置名OPCServer,通过此OPCServer,平台可以访问到自动控制系统PLC中的数据点;步骤二:OPC数据采集所述步骤二中包括如下操作:(1)、使用OPC基金会提供的OPCAutomation.dll枚举出本地计算机安装的OPC服务实例名,输入采集组和采集周期并保存后,系统将该OPC采集配置保存到数据库中,同时启动OPC数据采集客户端,并开始监听该OPCServer的运行状态和数据点变化事件;(2)、根据业务需要添加采集点;步骤三:链接库动态加载(1)、编写基于统一基类的线程单元模块,在线程内完成业务逻辑判断,并编译成dll文件;(2)、在平台内配置模块的运行方式、运行周期,并保存到平台数据库中;(3)、在平台内读取各模块的配置,按照配置读取各模块的dll文件,并启动该dll文件内的线程单元;步骤四:实时数据分发(1)、平台遍历各业务模块,根据配置的OPC采集点订阅和业务输出点订阅,向模块内的队列中提交订阅点集合;(2)、模块在接收到订阅的采集点和业务输出点后,在线程单元内使用订阅点完成业务逻辑;(3)、数据分发的优化;结合模块线程单元的运行周期和实际业务逻辑处理时长...

【专利技术属性】
技术研发人员:黄伟吴海王崇鹏李婷钱慧季向前周忠姚焕琴侯冬武
申请(专利权)人:江苏恒创软件有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1