一种基于云计算的工业过程数据解析平台的制作方法

文档序号:15022946发布日期:2018-07-25 01:32阅读:171来源:国知局

本发明属于工业过程控制领域,具体涉及一种基于云计算的工业过程数据解析平台。



背景技术:

在工业过程控制中,工业过程数据解析软件平台往往起到十分重要的作用,该平台主要能够实时的采集和存储过程数据,使用相应的建模算法主要实现基于数据驱动的工业过程监测以及对过程变量和质量变量的软测量,以保持能够平稳运行,提升产品质量。

其中基于数据驱动的工业过程监测即通过实测过程数据建立数理模型,从而估计并获取过程的运行状态,最后识别出过程的异常行为,实现故障的及时诊断,保证系统能够安全的运行;而过程变量和质量变量软测量即为采用某种恰当的模型,利用较为容易测量的过程变量数据来预测难以采用传感器直接测量的过程变量和质量变量进而能更好地控制产品质量提高生产效率。

目前工业过程数据解析软件平台大多处在工业现场的本地计算机中,客户端与算法程序相互嵌套,而且算法均在一台计算机上进行计算,其数据存储方式也是利用某台计算机作为数据库进行存储,因此其算法的运算效率,数据的存储能力均会受到限制。然而随着现代工业的不断发展,能够存储的工业数据越来越多,已经形成了一系列工业大数据问题,同时随着互联网、物联网的不断兴起,实现基于网络的远程监控,使用移动客户端等融合“互联网+工业”的模式也是现代工业的必然趋势。

然而传统的工业过程数据解析平台在互联网及超大规模数据驱动下已经无法满足现代工业的需求,首先传统系统已经无法存储超大规模的数据,如果仍然使用较少的数据进行运算会产生较大的偏差;其次由于数据量过多,传统的单机算法运行模式已经无法满足计算的实时性和稳定性;同时系统的客户端形式单一,客户端与算法程序均在现场无法实现远程的监测和控制;最后传统系统中的算法不具有共享性和复用性,必须为每个工业对象单独编写一套过程监测和软测量算法,算法利用率较低,且不易于对算法的管理。综上所述传统的工业过程数据解析平台在算法和软件平台方面都需要进行改进。



技术实现要素:

针对现有技术的不足,本发明提出一种基于云计算的工业过程数据解析平台,该平台能够实现各种算法高度独立,数据高度共享,且运算效率高,具体的技术方案如下:

一种基于云计算的工业过程数据解析平台,其特征在于,该平台包括云服务端、工业现场端、客户端和监控端;

所述的云服务端由系统主机和n个子集群两部分构成,所述的系统主机和各个子集群处于同一局域网内,其中,所述的系统主机中安装为监控端提供服务的Web服务器、驱动系统主机数据库的数据服务器以及连接和管理各个子集群的负载均衡器;每个子集群均包括子集群主机和与主机相连的多个从机,所述的系统主机控制多个子集群主机,所述的子集群主机控制与其连接的从机;

所述的工业现场端包括多个数据处理模块,每个数据处理模块均绑定相应的工业对象的传感器,实时读取工业对象在工作过程中的数据,并将其发送至云服务端进行分析处理;所述的数据处理模块还用于远程接收由客户端和监控端发送的控制指令,实现所述的数据处理模块采集数据的启停,所述的数据处理模块还可根据实际现场情况设定相应的工业对象控制操作;

所述的客户端用于远程连接云服务端,实时读取云服务端的计算结果并进行可视化显示,并根据需要向云服务端远程发送指令,由云服务端远程控制工业现场端的数据采集模块数据采集工作的启停以及在现场允许的条件下对工业对象的控制操作;

所述的监控端用于监控云服务端工作状态和工业对象运行数据,管理用户信息和工业对象信息,并通过云服务端实时向工业现场端发送控制指令。

进一步地,所述的工业现场端、云服务端和客户端的交互过程如下:

所述的工业现场端登录云服务端的系统主机,系统主机为其分配相应的计算子集群;工业现场端从工业现场本地数据库中实时获取变量数据,并将其按照一定的周期传至云服务端对应的子集群进行算法分析,云服务端将数据分析结果存入系统主机的数据库,客户端通过对系统主机数据库进行轮询,读取所述的数据分析结果,并进行可视化;

客户端向云服务端发送指令,修改系统主机数据库中相应字段的标志位,工业现场端对系统主机数据库相应字段进行轮询,读取该标志位,启动相应的控制操作。

进一步地,所述的监控端、云服务端和工业现场端的交互包括:

所述的监控端通过对云服务端的系统主机数据库进行轮询,并将数据可视化,进而监控工业现场端的运行状态;监控端访问云服务端中的系统主机数据库,读取用户信息,实现对用户信息的增删改查;监控端实时读取系统主机和子集群的工作参数并进行动态显示;

监控端向云服务端发送指令,修改系统主机数据库相应字段的标志位,工业现场端对系统主机数据库相应字段进行轮询,读取该标志位,启动相应的控制操作。

进一步地,所述的负载均衡器均衡负载的过程如下:

负载均衡器每隔相同时间读取与之连接的子集群的工作状态信息,包括各个子集群节点的静态配置以及在工作过程中的动态性能,所述的动态性能包括CPU频率、内存占用情况、磁盘I/O读取速率和通讯网络带宽使用情况,在读取后采用负载均衡算法动态地计算此时该为各个子集群分配的用户数,然后更改系统主机数据库中存储的每个客户端连接子集群节点IP地址的字段,客户端通过对所述的字段进行轮询,读取所分配的计算节点的IP地址,并与该节点相连,从而实现重新为各个子集群调配用户。

进一步地,所述的负载均衡器采用基于负载权值概率的动态负载均衡算法控制所述的子集群的负载分配,所述的算法包括如下步骤:

步骤一:定义描述子集群中计算节点的综合静态性能指标C(sij)和实时动态性能指标L(sij):

C(sij)=k1×nij×C(cij)+k2×C(mij)+k3×C(dij)+k4×C(pij)

L(sij)=k1×L(cij)+k2×L(mij)+k3×L(dij)+k4×L(pij)

其中,i=1,…,N,j=1,…,Mi,N为系统主机所连接的子集群个数,Mi为第i个子集群下所连接的计算节点个数,sij为第i个子集群下的第j个计算节点,nij为该计算节点的CPU核数,cij代表节点CPU的使用情况,C(cij)代表预先配置的静态频率,L(cij)代表工作时实时的动态CPU频率;mij代表节点内存的使用情况,其中C(mij)代表预先配置的内存容量,L(mij)代表工作时实时的动态内存占用率;dij代表节点磁盘I/O的使用情况,C(dij)代表预先配置的磁盘I/O读取速率,L(dij)代表工作时实时动态磁盘I/O占用率;pij代表每个节点网络使用情况,其中C(pij)代表预先配置的节点网络吞吐量,L(pij)代表节点网络带宽的实时占用率,其中k1,k2,k3,k4为权重系数,且k1+k2+k3+k4=1;

步骤二:由计算节点的静态性能指标和动态性能指标定义节点的负载权值W(sij)

步骤三:将各个节点的负载权值求和取均值,获得每个子集群的负载权值W(Si)

步骤四:将某个时刻各个子集群中最大的负载权值表示为Wmax(S),将其与此时所有子集群的负载权值作差,获得负载差值ΔQ(Si)

ΔQ(Si)=Wmax(S)-W(Si)

步骤五:定义系统主机向各个子集群分配用户的概率P(Si)

步骤六:将当前使用该平台的用户数与用户分配概率相乘,得到每个子集群应该分配的用户数

R(S1)=floor(P(S1)×Num)

R(S2)=floor(P(S2)×Num)

R(Sk)=0

其中Num为当前使用该平台的人数,floor为向下取整,R(Si)每个子集群所分配的用户数。

进一步地,所述的系统主机数据库用于存储用户的基本信息以及该用户所绑定的工业对象信息、客户端及监控端发送的控制指令以及从子集群中获取的分析数据。

进一步地,所述的子集群配置分布式文件存储架构和基于Map-Reduce的分布式并行计算框架,所述的子集群主机为调度节点,所述的子集群主机连接的从机为数据节点和计算节点,所有的过程监测以及变量软测量算法均以Map-Reduce的形式编写在各个子集群中的从机的计算节点上,并基于MVC编程模型为每个算法形成一个功能接口存储在各个子集群主机中,同时数据也在各个计算节点的数据库中分布式存储。

进一步地,所述的客户端运行在PC上和/或移动终端上,所述的监控端以网页形式运行。

进一步地,所述的云服务端的子集群的计算节点中配置的过程监测以及变量软测量算法均具有分布式并行模式和单机模式。

进一步地,所述的客户端还可直接上传本地数据到云服务端进行数据分析。

本发明的有益效果如下:

本发明的基于云计算的工业过程数据解析平台,通过在云服务器中配置多个集群,每个集群均安装有分布式并行计算框架,将所有分布式工业监测和软测量算法在云服务器中进行编写,并形成各个算法的调用接口,同时采用多线程技术实现所有算法可以在同一时间被使用;工业现场端实时采集数据并远程发送至云端进行计算,客户端再从云服务器中读取计算结果并可视化。实现过程监测和软测量算法高度独立,高度共享,并提升运算效率。

附图说明

图1为本发明的基于云计算的工业过程数据解析平台的整体架构图;

图2为云服务端的架构示意图;

图3为云服务端的负载均衡器的工作原理图;

图4为子集群中文件分布式存储架构示意图;

图5为子集群中分布式计算框架的架构示意图;

图6为工业现场端与云服务端、客户端的交互过程示意图;

图7为客户端与云服务端、工业现场端的交互过程示意图;

图8为监控端与云服务端、工业现场端的交互过程示意图。

具体实施方式

下面根据附图和优选实施例详细描述本发明,本发明的目的和效果将变得更加明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,一种基于云计算的工业过程数据解析平台,该平台包括云服务端、工业现场端、客户端和监控端;

其中云服务端由系统主机和n个子集群两部分构成,所述的系统主机和各个子集群处于同一局域网内,其中,所述的系统主机中安装为监控端提供服务的Web服务器、驱动系统主机数据库的数据服务器以及连接和管理各个子集群的负载均衡器;每个子集群均包括子集群主机和与主机相连的多个从机,所述的系统主机控制多个子集群主机,所述的子集群主机控制与其连接的从机;子集群配置分布式文件存储架构和基于Map-Reduce的分布式并行计算框架,所述的子集群主机为调度节点,所述的子集群主机连接的从机为数据节点和计算节点,所有的过程监测以及变量软测量算法均以Map-Reduce的形式编写在各个子集群中的从机的计算节点上,并基于MVC编程模型为每个算法形成一个功能接口存储在各个子集群主机中,同时数据也在各个计算节点的数据库中分布式存储。

工业现场端是以软件形式呈现,包括多个数据处理模块,每个数据处理模块均绑定相应的工业对象的传感器,实时读取工业对象在工作过程中的数据,并将其发送至云服务端进行分析处理;所述的数据处理模块还用于远程接收由客户端和监控端发送的控制指令,实现所述的数据处理模块采集数据的启停,所述的数据处理模块还可根据实际现场情况设定相应的工业对象控制操作;

客户端用于远程连接云服务端,实时读取云服务端的计算结果并进行可视化显示,并根据需要向云服务端远程发送指令,由云服务端远程控制工业现场端的数据采集模块数据采集工作的启停以及在现场允许的条件下对工业对象的控制操作;客户端运行在PC上和/或移动终端上。

监控端采用网页形式,用于监控云服务端工作状态和工业对象运行数据,管理用户信息和工业对象信息,包括编辑用户的注册信息,增加和注销用户,查看目前云服务端绑定的工业对象信息,并通过云服务端实时向工业现场端发送控制指令。管理员可以在任何时间和地点登陆监控端网页进行管理。

下面分别具体介绍平台云服务端、工业现场端、客户端以及监控端的具体工作原理及功能。

1.云服务端

云服务端的具体架构如图2所示,下面具体介绍云服务端中各个模块的具体功能和工作过程。

1.1系统主机

1.1.1数据服务器

数据服务器主要用于驱动系统主机数据库,以及获取子集群中存储在分布式数据库中的算法分析结果。其中系统主机数据库中的用户信息数据表首先用来存储用户的登陆、注册信息、使用时长、购买时间等信息,其次存储该用户所绑定的工业对象信息、客户端及监控端发送的控制指令以及从子集群中获取的分析数据,(如以PCA(主元分析)进行过程监测,则从子集群中获取的分析数据即为T2和SPE统计量以及二者的控制限),以便客户端和监控端利用数据服务器读取数据和发送指令。

1.1.2Web服务器

Web服务器是用作驱动监控端网页的服务器,即监控端网站站点的所有程序均在系统主机中的Web服务器中执行。由于监控端需要实时地向云端发送指令,读取和管理存储在系统主机数据库中的用户信息,工业对象信息,云端分析数据等,因此监控端需要通过Web服务器访问系统主机的数据库进行上述对系统主机数据库的动态操作。

1.1.3负载均衡器

在系统主机中实现各个子集群负载均衡的目的是是为了解决大量用户同时访问某个子集群时所造成的负载不均。当某个子集群的工作负荷已经很大时,其运算能力和运算速度均会大大降低,而其他子集群的负荷可能不大,因此需要将大负荷子集群的负载(用户)分配给其他子集群,从而使每个子集群均保持最好的工作状态,保证了云服务器整体的运算速度。

在本平台中所设计的负载均衡器工作原理如图3所示,负载均衡器安装在系统主机中,负载均衡器每隔相同时间读取与之连接的子集群的工作状态信息,包括各个子集群节点的静态配置以及在工作过程中的动态性能,所述的动态性能包括CPU频率、内存占用情况、磁盘I/O读取速率和通讯网络带宽使用情况,在读取后采用负载均衡算法动态地计算此时该为各个子集群分配的用户数,然后更改系统主机数据库中存储的每个客户端连接子集群节点IP地址的字段,客户端通过对所述的字段进行轮询,读取所分配的计算节点的IP地址,并与该节点相连,从而实现重新为各个子集群调配用户。

而本平台中所设计的负载均衡器,其内部的负载均衡策略为基于负载权值概率的动态负载均衡算法,该算法的原理为:

步骤一:定义描述子集群中计算节点的综合静态性能指标C(sij)和实时动态性能指标L(sij):

C(sij)=k1×nij×C(cij)+k2×C(mij)+k3×C(dij)+k4×C(pij)

L(sij)=k1×L(cij)+k2×L(mij)+k3×L(dij)+k4×L(pij)

其中,i=1,…,N,j=1,…,Mi,N为系统主机所连接的子集群个数,Mi为第i个子集群下所连接的计算节点个数,sij为第i个子集群下的第j个计算节点,nij为该计算节点的CPU核数,cij代表节点CPU的使用情况,C(cij)代表预先配置的静态频率,L(cij)代表工作时实时的动态CPU频率;mij代表节点内存的使用情况,其中C(mij)代表预先配置的内存容量,L(mij)代表工作时实时的动态内存占用率;dij代表节点磁盘I/O的使用情况,C(dij)代表预先配置的磁盘I/O读取速率,L(dij)代表工作时实时动态磁盘I/O占用率;pij代表每个节点网络使用情况,其中C(pij)代表预先配置的节点网络吞吐量,L(pij)代表节点网络带宽的实时占用率,其中k1,k2,k3,k4为权重系数,且k1+k2+k3+k4=1;

步骤二:由计算节点的静态性能指标和动态性能指标定义节点的负载权值W(sij)

步骤三:将各个节点的负载权值求和取均值,获得每个子集群的负载权值W(Si)

步骤四:将某个时刻各个子集群中最大的负载权值表示为Wmax(S),将其与此时所有子集群的负载权值作差,获得负载差值ΔQ(Si)

ΔQ(Si)=Wmax(S)-W(Si)

步骤五:定义系统主机向各个子集群分配用户的概率P(Si)

步骤六:将当前使用该平台的用户数与用户分配概率相乘,得到每个子集群应该分配的用户数

R(S1)=floor(P(S1)×Num)

R(S2)=floor(P(S2)×Num)

R(Sk)=0

其中Num为当前使用该平台的人数,floor为向下取整,R(Si)每个子集群所分配的用户数。

1.2子集群

1.2.1子集群中的文件分布式存储架构

由上述可知,为了提高海量数据的存储和提取速度,本平台采用分布式文件存储架构,且用户数据量较少只存储在系统主机所附加的数据库中即可,而大量的用于计算和算法建模的数据就需要并行分布地存储在各个子集群中。

对于每个子集群而言,集群主机可以看作调度节点,其所连接的从机可以看作数据节点。在进行文件存储时集群主机中的调度节点首先将数据按照一定的大小进行分块,再将每块数据的分配结果通知到从机中的数据节点,最后由各个数据节点将所得到的数据块存入所在计算机或服务器的磁盘中。

在进行文件读取时,同样由集群主机中的调度节点通知各个数据节点所需要提取的文件,在完成通知后各个数据节点会按照需求并行地将相应的数据块提取并拼接为新的文件发送给客户端。

上述文件分布式存储过程如图4所示。

1.2.2子集群中的分布式计算框架

本平台中主要完成算法运算的部分为子集群中的计算节点,为了提高算法在处理大数据过程中的能力,本平台在各个子集群中配置了基于MapReduce的分布式并行计算框架。

分布式并行计算框架与文件分布式存储框架类似,也是由集群主机管理和调度各个计算节点的运算进程,通过其管辖下的多个计算节点对数据块同时计算来实现任务或算法的并行。

而MapReduce即为分布式并行计算的一种,它主要是通过Map环节将存储于各个计算节点中的数据块并行提取和处理并映射成键值对形式,再存储到各个计算节点的磁盘中,而Reduce环节则并行地将Map生成的键值对进行提取,并按照具有相同键值的数据进行归约,再对归约后的数据进行处理。

上述MapReduce过程均是在计算节点中完成的,而集群主机仍然负责该过程中各项进程之间的调度,因此子集群中的分布式计算框架如图5所示。

1.2.3过程监测及软测量算法库

在每个子集群中都包含过程监测及软测量算法库,该算法库从运行方式来分包括分布式并行算法以及单机算法;从功能角度来分包括过程监测算法以及软测量算法。所有算法的代码均存储在子集群的计算节点中,并形成参数和数据传入,结果传出的调用接口。

当多个用户同时使用相同算法时,计算节点会以多线程的模式同时处理两个请求,并且为每个用户形成一个专属的文件夹,使得所有算法均可以实现大规模用户的同时使用。

用户还可以通过客户端直接上传本地数据到云服务端进行数据分析。

下面介绍平台各个端之间的交互过程。

工业现场端与云服务端和客户端的交互过程如图6所示,工业现场端登录云服务端的系统主机,系统主机为其分配相应的计算子集群;工业现场端从工业现场本地数据库中实时获取变量数据,并将其按照一定的周期传至云服务端对应的子集群进行算法分析,云服务端将数据分析结果存入系统主机的数据库,客户端通过对系统主机数据库进行轮询,读取所述的数据分析结果,并进行可视化;

客户端向云服务端发送指令,修改系统主机数据库中相应字段的标志位,工业现场端对系统主机数据库相应字段进行轮询,读取该标志位,启动相应的控制操作。

客户端与云服务端、工业现场端的交互过程如图7所示,客户端实时读取云服务端数据的方法仍然采用对云服务端系统主机数据库轮询技术,即每隔一定的周期对云端系统主机数据库读取一次分析结果,并在客户端进行可视化显示。同时客户端在向工业对象发送指令时也是通过对系统主机数据库相关字段进行更新,工业现场端也可以对系统主机数据库进行轮询进而读取到该字段,进而由它去更新工业监控软件的本地数据库完成控制操作。

监控端与云服务端、工业现场端的交互如图8所示。监控端是以网页的形式呈现的,主要具有云端服务器工作状态监控,用户信息管理,工业对象信息管理,工业对象运行数据监控以及发送简单控制指令等功能。

监控端通过对云服务端的系统主机数据库进行轮询,并将数据可视化,进而监控工业现场端的运行状态;监控端访问云服务端中的系统主机数据库,读取用户信息,实现对用户信息的增删改查;监控端实时读取系统主机和子集群的工作参数并进行动态显示,并绘制实时动态曲线;

监控端向云服务端发送指令,修改系统主机数据库相应字段的标志位,工业现场端对系统主机数据库相应字段进行轮询,读取该标志位,启动相应的控制操作。

本领域普通技术人员可以理解,以上所述仅为发明的优选实例而已,并不用于限制发明,尽管参照前述实例对发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在发明的精神和原则之内,所做的修改、等同替换等均应包含在发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1