组态数据处理系统、方法及电子设备与流程

文档序号:30461493发布日期:2022-06-18 04:56阅读:216来源:国知局
组态数据处理系统、方法及电子设备与流程

1.本技术实施例涉及数据处理技术领域,尤其涉及一种组态数据处理系统、方法及电子设备。


背景技术:

2.随着网络技术的发展,组态软件的应用也越来越广泛,可以通过组态软件实现相关的业务。
3.现有技术中,在实现业务的过程中,一般可以包含两个子过程,一个子过程为编辑过程,另一个子过程为运行过程,编辑过程中得到的组态数据可以直接供运行过程应用。
4.然而,在编辑过程与运行过程均对应同一份数据时,当某一过程的数据出现异常,直接影响到另一过程数据的正常运行,降低了组态数据的稳定性及安全性,进而影响了业务的正常运行。


技术实现要素:

5.本技术实施例提供一种组态数据处理系统、方法及电子设备,以提高组态数据的稳定性及安全性。
6.第一方面,本技术实施例提供一种组态数据处理系统,包括:第一存储装置以及第二存储装置,
7.所述第一存储装置用于:接收并存储第一组态数据,其中,所述第一组态数据为应用于业务编辑过程中,供用户编辑或确认的数据;
8.所述第二存储装置用于:复制所述第一存储装置中的第一组态数据,得到第二组态数据,其中,所述第二组态数据为应用于业务运行过程中,且禁止编辑的数据;存储所述第二组态数据,以供运行装置获取并运行所述第二组态数据。
9.可选的,所述第一组态数据中包含第一目标版本号,
10.所述第二存储装置还用于:在根据所述第一目标版本号确定所述第一组态数据为新添加的组态数据时,复制所述第一存储装置中的第一组态数据,得到第二组态数据,并存储所述第二组态数据。
11.可选的,所述第一存储装置还用于:在所述第一存储装置处于异常状态时,发送第一存储装置异常提示至所述第二存储装置;
12.所述第二存储装置还用于:在接收到所述第一存储装置异常提示时,暂停复制第一组态数据的动作。
13.可选的,所述系统还包括校验装置,
14.所述校验装置用于:从所述第二存储装置中获取所述第二组态数据,并对所述第二组态数据进行校验处理,并在所述第二组态数据校验通过后,将所述第二组态数据发送至所述运行装置。
15.可选的,所述校验装置还用于:
16.对所述第二组态数据进行以下至少一种处理:
17.格式完整性校验、身份校验、关键词校验和预运行校验;
18.其中,所述格式完整性校验用于对所述第二组态数据的组成项目进行校验,所述身份校验用于对所述第二组态数据的编辑用户进行校验,所述关键词校验用于根据预设词语对所述第二组态数据中的词语进行校验,所述预运行校验为在所述运行装置正式运行所述第二组态数据前预先运行进行校验的过程。
19.可选的,所述校验装置还用于:
20.获取预先定义好的组态数据包含的项目,所述项目包含下述至少一项:页面数据、组件数据、状态数据以及属性数据,其中,所述页面数据表示待显示页面的基本信息,所述组件数据表示所述待显示页面中包含的组件的基本信息,所述状态数据表示所述待显示页面中包含的组件的状态信息,所述属性信息表示所述待显示页面中包含的组件的自定义描述信息;
21.若所述第二组态数据中包含的项目与所述预先定义好的组态数据中包含的项目相匹配,则确定所述第二组态数据通过格式完整性校验。
22.可选的,所述校验装置还用于:
23.若所述第二组态数据校验未通过,则确定未通过校验类型;
24.若所述未通过校验类型为格式完整性校验,则发送格式完整性校验失败提示至所述第二存储装置;
25.所述第二存储装置还用于:在接收到所述格式完整性校验失败提示之后,重新复制所述第一存储装置中的第一组态数据,得到新的第二组态数据,并将所述新的第二组态数据发送至所述校验装置。
26.可选的,所述第一存储装置还用于:
27.接收第三方组态编辑应用程序发送的第一组态数据,其中,所述第一组态数据为所述第三方组态编辑应用程序响应用户的触控操作形成的,所述触控操作包括拖动组件操作以及输入操作;
28.存储所述第一组态数据。
29.第二方面,本技术实施例提供一种组态数据处理方法,应用于第二存储装置,包括:
30.复制第一存储装置中的第一组态数据,得到第二组态数据,其中,所述第一组态数据为应用于业务编辑过程中,供用户编辑或确认的数据,所述第二组态数据为应用于业务运行过程中,且禁止编辑的数据;
31.存储所述第二组态数据,以供运行装置获取并运行所述第二组态数据。
32.第三方面,本技术实施例提供一种组态数据处理方法,应用于第一存储装置,包括:
33.接收并存储第一组态数据,以使所述第二存储装置复制所述第一存储装置中的第一组态数据,得到第二组态数据,并存储所述第二组态数据,以供运行装置获取并运行所述第二组态数据,其中,所述第一组态数据为应用于业务编辑过程中,供用户编辑或确认的数据,所述第二组态数据为应用于业务运行过程中,且禁止编辑的数据。
34.第四方面,本技术实施例提供一种电子设备,包括:处理器,以及与所述处理器通
信连接的存储器;
35.所述存储器存储计算机执行指令;
36.所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求第二方面或第三方面所述的组态数据处理方法。
37.第五方面,本技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,以实现如权利要求第二方面或第三方面所述的组态数据处理方法。
38.第六方面,本技术实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,以实现如权利要求第二方面或第三方面所述的组态数据处理方法。
39.本技术实施例提供了一种组态数据处理系统、方法及电子设备,所述系统包括第一存储装置、第二存储装置以及运行装置,第一存储装置可以用于接收并存储组态数据,第二存储装置可以复制第一存储装置中的第一组态数据,得到第二组态数据,并存储第二组态数据,运行装置可以从第二存储装置中获取第二组态数据,并运行第二组态数据,采用上述方案后,可以将用于供用户编辑或确认的第一组态数据与用于直接运行且不可编辑的第二组态数据隔离开,避免编辑过程与运行过程均对应同一数据时,当任一过程对应的数据出现问题,均会直接影响另一过程的正常运行的情况,提高了组态数据的稳定性及安全性,进而保证了组态数据对应的业务的正常运行。
附图说明
40.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
41.图1为现有技术中的应用示意图;
42.图2为本技术实施例提供的一种应用场景图;
43.图3为本技术实施例提供的组态数据处理系统的结构示意图;
44.图4为本技术实施例提供的组态数据组成部分的结构示意图;
45.图5为本技术另一实施例提供的组态数据处理系统的结构示意图;
46.图6为本技术另一实施例提供的组态数据处理系统的结构示意图;
47.图7为本技术实施例提供的组态数据处理方法的流程示意图;
48.图8为本技术实施例提供的电子设备的硬件结构示意图。
具体实施方式
49.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
50.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理
解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例还能够包括除了图示或描述的那些实例以外的其他顺序实例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
51.下面对本技术的应用场景及发明构思进行解释说明。
52.随着工业物联网领域的发展,与工业相关的业务需求越来越广泛(例如,针对车间级的巡查业务、监测业务等),对应的,相关的开发工作也越来越多。为了提高开发人员的开发效率,可以应用第三方组态软件进行业务的开发。第三方组态软件又可称为组态监测系统软件,可以指数据采集与过程控制的专用软件,也可以指在自动控制系统监测层一级的软件平台和开发环境。第三方组态软件为一种通过灵活的组态方式,为用户提供快速构建工业领域自动控制系统监测功能的或其他通用功能的软件工具,且可以广泛应用于机械、汽车、石油、化工、造纸、水处理等诸多工业领域。
53.图1为现有技术中的应用示意图,如图1所示,在现有技术中,在通过组态软件实现业务的过程中,一般可以包含两个子过程,一个子过程为编辑过程,另一个子过程为运行过程。编辑过程具体可以指业务实现时开发的过程(例如,可以为组态页面开发的过程),在该过程中,可以对业务数据进行编辑、确认等操作(示例性的,可以通过编辑模块实现)。运行过程可以指业务开发完成之后,即业务数据编辑或确认完成之后,运行业务数据的过程(示例性的,可以通过运行装置实现),在该过程中,业务数据不可再编辑,仅供业务应用。然而,编辑过程与运行过程均对应同一份组态数据(示例性的,该组态数据可以存储于存储模块中),当某一过程的数据出现异常,直接影响到另一过程数据的正常运行。例如,若编辑过程中数据被恶意更改,在运行过程中运行的为被恶意更改之后的数据,导致业务无法正常实现,降低了组态数据的稳定性及安全性,进而影响了业务的正常运行。
54.基于上述技术问题,本技术通过将用于供用户编辑或确认的第一组态数据与用于直接运行且不可编辑的第二组态数据隔离开,避免编辑过程与运行过程均对应同一数据时,当任一过程对应的数据出现问题,均会直接影响另一过程的正常运行的情况,达到了既提高了组态数据的稳定性及安全性,进而保证了组态数据对应的业务的正常运行的技术效果。
55.图2为本技术实施例提供的一种应用场景图,如图2所示,在该实施例中,可以包括第一存储装置以及第二存储装置。第一存储装置可以接收第一组态数据并存储第一组态数据,其中,第一组态数据为编辑过程对应的数据,也可称为编辑态数据,该第一组态数据可以为供用户编辑或确认的数据。
56.可选的,第一存储装置接收的第一组态数据可以为组态编辑模块生成的,开发人员可以通过组态编辑模块编辑(例如,更改数据属性、添加组件等)或确认组态数据,然后可以将编辑或确认完成的第一组态数据发送至第一存储装置进行存储,或第一存储装置定期从组态编辑模块中获取编辑或确认完成的第一组态数据。另外,已经存储于第一存储装置中的第一组态数据,也可以通过组态编辑模块重新进行编辑。具体的,在需要对组态编辑模块中的第一组态数据重新进行编辑时,可以先从第一存储装置中获取需要编辑的第一组态数据,然后通过组态编辑模块对第一组态数据继续进行编辑,并在编辑完成后,重新将编辑
完成的新的第一组态数据存储于第一存储装置中。其中,组态编辑模块可以为第三方组态编辑软件,可以与第一存储装置部署于相同的硬件设备中,也可以与第一存储装置部署于不同的硬件设备中,在此不再详细进行限定。
57.另外,在将第一组态数据存储于第一存储装置中之后,还需要运行组态数据以实现相关的业务,编辑与运行为两个不同的过程,为了更好的将两个过程隔离开,避免任一过程中的操作影响另一个过程的实现,可以将两个过程的数据隔离开,即每个过程分别对应不同的数据,在不同的过程中对数据进行操作时,分别针对对应的数据进行操作,两个过程的数据互不影响。可选的,可以将两个过程的数据分别存储于不同的存储模块中,即在将第一组态数据存储于第一存储装置中之后,可以复制第一组态数据,得到第二组态数据,并将第二组态数据存储于第二存储装置中。其中,第二组态数据为运行过程对应的数据,也可称为运行态数据,该第二组态数据可以为供运行装置运行,且该第二组态数据不可再进行编辑。可选的,第一存储装置与第二存储装置可以为具体的硬件存储设备,也可以为数据库等存储方式。且第一存储装置与第二存储装置可以部署于相同的硬件设备中,用于节省硬件资源,也可以部署于不同的硬件设备中,提高组态数据存储的安全性,在此不再详细进行限定。
58.此外,在将第二组态数据存储于第二存储装置中之后,可以将第二组态数据发送至运行装置运行。可选的,运行装置可以有一个或多个,且运行装置的设备类型也可以不同。对应的,运行装置可以为个人电脑、平板等可以运行第二组态数据的设备,还可以为显示设备,用于显示第二组态数据。
59.示例性的,第二组态数据可以为不同工厂车间对应的页面数据,在该页面数据中可以包含车间中的设备,各设备的位置信息、状态信息等。运行装置在获取到工厂车间对应的页面数据之后,可以渲染显示该页面数据,使得相关运维人员可以方便了解工厂车间中各设备的运行状态。另外,运行装置可以有多个,可以分别设置于不同的工厂车间中,在向运行装置发送第二组态数据时,可以将不同工厂车间对应的第二组态数据发送至对应的运行装置中,使得相关运维人员可以方便了解本工厂车间中各设备的运行状态。
60.下面以具体地实施例对本技术的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
61.图3为本技术实施例提供的组态数据处理系统的结构示意图,如图3所示,本技术实施例提供的组态数据处理系统可以包括:第一存储装置以及第二存储装置。
62.所述第一存储装置用于:接收并存储第一组态数据,其中,所述第一组态数据为应用于业务编辑过程中,供用户编辑或确认的数据。
63.所述第二存储装置用于:复制所述第一存储装置中的第一组态数据,得到第二组态数据,其中,所述第二组态数据为应用于业务运行过程中,且禁止编辑的数据;存储所述第二组态数据,以供运行装置获取并运行所述第二组态数据。
64.在本实施例中,可以通过组态数据处理系统实现组态数据的编辑、发布、存储与运行等过程,进而实现组态数据对应的业务。其中,组态数据可以为通过第三方组态软件生成的数据,第三方组态软件可以提供组态数据编辑器,无需开发人员撰写代码,只需要在编辑器中,拖拽与业务相关的组件到编辑器的画布中,再对相关组件进行配置(例如,对相关组件的显示样式、数据源和交互动作等进行配置),即可以可视化的方式生成组态数据。示例
性的,若业务为开发应用程序,生成的组态数据可以为应用程序开发过程中的一个子流程的开发过程对应的数据,在组态数据生成之后,即表示组态数据对应的子流程的开发完成。综上,通过第三方组态软件的方式来实现相关业务,简化了业务的实现过程,进而提高了相关业务的实现效率。
65.进一步的,所述第一存储装置还用于:
66.接收第三方组态编辑应用程序发送的第一组态数据,其中,所述第一组态数据为所述第三方组态编辑应用程序响应用户的触控操作形成的,所述触控操作包括拖动组件操作以及输入操作。
67.存储所述第一组态数据。
68.具体的,触控操作可以为拖动组件操作以及输入操作,拖动组件操作可以为开发人员根据实际业务需求在第三方编辑程序的编辑器中拖动相关的组件的操作,而输入操作可以开发人员在拖动相关的组件之后,配置组件的具体信息的操作。
69.另外,组态数据可以包含不同的项目,且不同的组态数据包含的项目可以相同,也可以不同。在一种实现方式中,图4为本技术实施例提供的组态数据组成部分的结构示意图,如图4所示,本技术实施例提供的组态数据可以包括如下项目的至少一项:页面数据、组件数据、状态数据以及属性数据。其中,页面数据表示待显示页面的基本信息,组件数据表示待显示页面中包含的组件的基本信息,状态数据表示待显示页面中包含的组件的状态信息,属性信息表示待显示页面中包含的组件的自定义描述信息。综上,通过以项目的方式定义组态数据,使得组态数据的组成更加清晰,为后续组态数据的存储、分割发布以及校验等过程都提供了良好的数据基础。其中,此处的组态数据可以表示第一组态数据,也可以表示第二组态数据。
70.示例性的,组态数据可以为描述一个工厂车间的所有数据,该组态数据中可以包含四个项目,分别为页面数据、组件数据、状态数据以及属性数据。对应的,页面数据可以为该车间的显示页面的基本数据,例如,可以为页面名称、车间描述信息、该车间管理人员的权限信息等。组件数据可以为该车间的显示页面中包含的所有组件,例如,可以为表示车间中a设备的椭圆形,表示车间中b设备的矩形,表示车间中c设备的圆形等。状态数据可以为表示该车间中的设备的状态、以及车间中的温度、湿度等信息。组件数据中的各组件是静态的数据,各设备其实是有对应的状态数据的,因此,可以通过组态数据为各设备添加对应的状态,例如,设备的开启时长、使用年限等。属性信息可以为开发人员手动配置的车间中各组件的信息,例如,可以为每个组件的具体位置、大小、颜色等。
71.另外,第一存储装置可以每隔预设时长主动从组态编辑模块中获取第一组态数据,也可以在组态编辑模块生成新的第一组态数据之后,主动将第一组态数据发送至第一存储装置,在此不再详细进行限制。在第一存储装置接收到第一组态数据之后,由于该第一组态数据为编辑过程对应的组态数据,为可编辑或可确认的数据,因此,可以先将第一组态数据保存至用来存储编辑过程的数据的第一存储装置中。然后可以复制该第一组态数据,得到用来运行,且不可更改的第二组态数据,再将该第二组态数据保存至用来存储运行过程的数据的第二存储装置中。其中,在复制并保存第二组态数据时,可以为第二存储装置每隔预设时长主动确认是否有需要复制的数据的,也可以为第一存储装置在保存了新的第一组态数据之后,主动发送向第二存储装置发送有新数据提示的。
72.可选的,第一存储装置、第二存储装置与运行装置可以位于相同的硬件设备中,也可以位于不同的硬件设备中,还可以部分位于相同的硬件设备中,在此不再详细进行限定。
73.综上,采用上述方案后,可以将用于供用户编辑或确认的第一组态数据与用于直接运行且不可编辑的第二组态数据隔离开,避免编辑过程与运行过程均对应同一数据时,当任一过程对应的数据出现问题,均会直接影响另一过程的正常运行的情况,提高了组态数据的稳定性及安全性,进而保证了组态数据对应的业务的正常运行。另外,也保证组态数据由编辑过程向运行过程的单向流转,降低了组态处理系统生产运行过程中的出错概率,从而提高了组态处理系统的可用性。
74.基于图3的系统,本说明书实施例还提供了该系统的一些具体实施方案,下面进行说明。
75.在另一实施例中,所述第一组态数据中包含第一目标版本号,
76.则所述第二存储装置还用于:在根据所述第一目标版本号确定所述第一组态数据为新添加的组态数据时,复制所述第一存储装置中的第一组态数据,得到第二组态数据,并存储所述第二组态数据。
77.在本实施例中,可以在生成的新的第一组态数据时,为第一组态数据分配一新的第一目标版本号,后续在将新的第一组态数据存储至第一存储装置中时,可以供第二存储装置复制第一组态数据,生成应用于运行过程的第二组态数据。进一步的,由于第二存储装置中有多个数据,无法确定新得到的第一组态数据是否为之前已经存储过的数据,因此,在第二存储装置从第一存储装置中复制数据时,可以通过新得到的第一组态数据中的第一目标版本号来确定是否为新的数据。可选的,可以将第二存储装置中的第二组态数据包含的第二目标版本号与新得到的第一组态数据中包含的第一目标版本号进行比对,若均不相同,则表明第二存储装置中没有存储过该数据,则可以复制第一组态数据,生成应用于运行过程的第二组态数据,并保存该第二组态数据。其中,复制得到的第二组态数据中的第二目标版本号与复制前的第一组态数据中的第一目标版本号相同。
78.综上,通过根据组态数据中包含的版本号来确定是否需要复制组态数据的方式,避免了重复复制组态数据的情况,提高了组态数据的处理效率。
79.此外,在另一实施例中,所述第一存储装置还用于:在所述第一存储装置处于异常状态时,发送第一存储装置异常提示至所述第二存储装置。
80.所述第二存储装置还用于:在接收到所述第一存储装置异常提示时,暂停复制第一组态数据的动作。
81.在本实施例中,由于网络故障或者设备故障等原因,第一存储装置可能会处于异常状态,即不可用状态。当第一存储装置处于不可用状态时,第一存储装置中的第一组态数据也对应的处于不可用状态,即不可进行编辑、复制等操作。因此,在第一存储装置处于异常状态时,可以向第二存储装置发送第一存储装置异常提示,第二存储装置在接收到第一存储装置发送的第一存储装置异常提示时,可以暂停复制第一组态数据的动作,并可以运行第二存储装置中之前保存的第二组态数据。
82.此外,还可能存在第一存储装置处于异常状态时,无法向第二存储装置发送第一存储装置异常提示的情况,则可以仅将第一存储装置的状态设置为异常状态,在第二存储装置向第一存储装置中获取数据时,即可确定第一存储装置处于异常状态,进而可以暂停
复制第一组态数据的动作,并运行第二存储装置中之前保存的第二组态数据。
83.综上,通过将编辑过程的组态数据与运行过程的组态数据分开设置的方式,在编辑过程的组态数据异常时,运行过程的组态数据除了无法获取到最新的组态数据之外,还是可以保证组态数据对应的业务的正常运行,避免了组态数据单点设置时,任一过程的数据异常均会影响编辑过程和运行过程的情况,提高了组态数据的稳定性与安全性。此外,通过发送存储模块异常提示的方式,可以让开发人员及时了解设备状态,保证了组态处理系统的稳定运行。
84.图5为本技术另一实施例提供的组态数据处理系统的结构示意图,如图5所示,在该系统中,除了可以包括第一存储装置以及第二存储装置之外,所述系统还可以包括校验装置。
85.所述校验装置用于:从所述第二存储装置中获取所述第二组态数据,并对所述第二组态数据进行校验处理,并在所述第二组态数据校验通过后,将所述第二组态数据发送至所述运行装置。
86.在本实施例中,第二存储装置可以直接将第二组态数据发送至对应的运行装置,使得运行装置直接运行接收到的第二组态数据。然而,第二组态数据在从第一存储装置复制到第二存储装置,并从第二存储装置发送至运行装置的过程中,可能会由于网络线路等原因出现故障,影响第二组态数据的正常运行。因此,可以在第二存储装置将第二组态数据发送至运行装置之前,先将第二组态数据发送至校验装置进行校验,校验通过之后,再将第二组态数据发送至运行装置运行,既提高了组态数据的安全性,又保证了组态数据对应的业务的正常实现。
87.进一步的,所述校验装置还用于:
88.对所述第二组态数据进行以下至少一种处理:
89.格式完整性校验、身份校验、关键词校验和预运行校验。
90.其中,所述格式完整性校验用于对所述第二组态数据的组成项目进行校验,所述身份校验用于对所述第二组态数据的编辑用户进行校验,所述关键词校验用于根据预设词语对所述第二组态数据中的词语进行校验,所述预运行校验为在所述运行装置正式运行所述第二组态数据前预先运行进行校验的过程。
91.具体的,在对第二组态数据进行校验时,可以通过不同的方式进行校验。对应的,对于格式完整性校验方式,格式完整性校验用于对第二组态数据的组成项目进行校验,第二组态数据中可以包含不同的组成项目,通过格式完整性校验可以确定第二组态数据中的格式是否正确,运行装置运行所需的数据是否均被包含在内。
92.对于身份校验方式,身份校验用于对第二组态数据的编辑用户进行校验,每个组态数据生成之后,仅可以由组态编辑模块对应的用户对其进行编辑或确认,其他用户没有权限对组态数据进行编辑或确认。因此,在组态数据生成之后,可以为组态数据分配一组态编辑模块对应的指纹数据,并锁定该组态数据,防止外部人员(如黑客等)篡改数据,并减少了因外部人员篡改数据导致组态数据中部分数据丢失的情况,保证了组态数据的一致性与安全性,进而保证了组态数据的正常运行。
93.对于关键词校验方式,关键词校验用于根据预设词语对第二组态数据中的词语进行校验,其中,预设词语可以为预先设定的不符合相关规定的,或者违反法律法规的词语。
通过关键词校验,保证了组态数据的安全性。
94.对于预运行校验方式,预运行校验为在运行装置正式运行第二组态数据前预先运行进行校验的过程,通过提前运行的方式可以检测第二组态数据是否可以成功运行,示例性的,第二组态数据为车间页面对应的数据,通过预运行校验,可以判断第二组态数据是否可以成功渲染出车间页面。其中,预运行校验可以通过现有的js检测、埋点检测、自动化脚本等方式实现,提高了组态数据的可用性。
95.综上,通过采用不同校验方式来对第二组态数据进行校验时,从不同维度对第二组态数据进行了校验,提高了第二组态数据的安全性,进而保证了第二组态数据的运行效果。
96.更进一步的,关于格式完整性校验,所述校验装置还用于:
97.获取预先定义好的组态数据包含的项目,所述项目包含下述至少一项:页面数据、组件数据、状态数据以及属性数据,其中,所述页面数据表示待显示页面的基本信息,所述组件数据表示所述待显示页面中包含的组件的基本信息,所述状态数据表示所述待显示页面中包含的组件的状态信息,所述属性信息表示所述待显示页面中包含的组件的自定义描述信息;
98.若所述第二组态数据中包含的项目与所述预先定义好的组态数据中包含的项目相匹配,则确定所述第二组态数据通过格式完整性校验。
99.具体的,在对第二组态数据进行格式完整性校验时,由于不同的第二组态数据所包含的项目可能不同,因此,可以先获取预先定义好的组态数包含的项目,然后将待校准的第二组态数据中包含的项目与预先定义好的组态数据中包含的项目进行匹配,若匹配成功,则确定第二组态数据通过格式完整性校验。其中,匹配成功可以理解为待校准的第二组态数据中包含的项目与预先定义好的组态数据中包含的项目完全相同,或待校准的第二组态数据中包含的项目包含在预先定义好的组态数据中包含的项目中,具体规则可以根据实际应用场景自定义进行设置,在此不再详细进行限制。
100.此外,所述校验装置还用于:
101.若所述第二组态数据校验未通过,则确定未通过校验类型。
102.若所述未通过校验类型为格式完整性校验,则发送格式完整性校验失败提示至所述第二存储装置。
103.所述第二存储装置还用于:在接收到所述格式完整性校验失败提示之后,重新复制所述第一存储装置中的第一组态数据,得到新的第二组态数据,并将所述新的第二组态数据发送至所述校验装置。
104.具体的,在对第二组态数据进行校验时,可能存在校验未通过的情况。当第二组态数据校验未通过时,可以先确定未通过校验类型,然后根据未通过校验类型对应进行处理。
105.可选的,若未通过校验类型为格式完整性校验,表明第二组态数据在传输过程中可能出现了数据丢失的情况,因此,可以向第二存储装置发送格式完整性校验失败提示,第二存储装置在接收到格式完整性校验失败提示之后,重新复制第一存储装置中的第一组态数据,得到新的第二组态数据,并将新的第二组态数据发送至校验装置重新进行校验。
106.此外,对于其他的未通过校验类型,也可以通过重新复制第一组态数据的方式来重新进行校验,在此不再详细进行论述。
107.综上,通过将第一组态数据与第二组态数据隔离设置,在校验未通过时,可以重新复制第一组态数据得到新的第二组态数据进行校验,提高了组态数据的可用性与可靠性。另外,通过二次校验的方式,减少了有效数据的丢失,提高了数据的完整性。
108.图6为本技术另一实施例提供的组态数据处理系统的结构示意图,在该实施例中,可以应用于工业生产管控领域(例如,可以为制造业车间级生产管控领域),在工业生产管控过程中,主要可以分为两部分,第一部分为生产数据采集过程,第二部分为生产过程和设备状态可视化展示,以及设备控制过程,本实施例可以主要应用于第二部分,且组态数据可以为车间级页面对应的数据。另外,在工业生产管控过程中,主要有三个重要的指标,即安全性、可靠性与可用性。为了满足上述要求,本技术提供了一种组态数据处理系统,如图6所示,所述处理系统可以包括组态编辑模块、第一存储装置、第二存储装置、校验装置以及运行装置。组态编辑模块可以为部署于硬件设备中的第三方组态编辑应用程序,开发人员可以通过第三方组态编辑应用程序完成车间级页面的开发,得到车间级页面对应的第一组态数据,然后可以生成包含第一组态数据的数据发布指令,并通过传输通道发送至编辑过程对应的第一存储装置,其中,编辑过程可以为显示车间级页面的业务中的子过程。第一存储装置接收到发布指令后,可以存储发布指令中包含的第一组态数据,并为该第一组态数据分配第一目标版本号,然后可以发送数据复制提示至运行过程对应的第二存储装置,第二存储装置在接收到复制提示之后,可以复制第一组态数据,得到第二组态数据,并存储第二组态数据。其中,运行过程为显示车间级页面的业务中的子过程。另外,第二存储装置还可以将第二组态数据发送至校验装置进行校验,并在校验装置确定第二组态数据符合校验规则之后,将第二组态数据发送至通信装置,通信装置可以将第二组态数据分发至对应的运行装置。运行装置获取到新的第二组态数据后,可以根据第二组态数据中包含的第二目标版本号进行版本比对,并再确定差异数据后完成车间级页面的更新。其中,第一存储装置与第二存储装置可以统称为分割装置。第一存储装置与第二存储装置可以为数据库、文件等可以数据持久化的介质。
109.另外,通信装置再向运行装置分发第二组态数据时,可以通过长连接通道主动推送的方式,也可以通过运行装置主动向通信装置请求的方式。
110.综上,本实施例通过将组态数据分割为第一组态数据和第二组态数据,并结合数据校验机制,提高了组态数据的可靠性,进而保障了组态业务应用过程的高可用性。且本技术将组态数据从无状态数据转换为状态隔离数据,在定义上将运行过程中的数据和编辑过程中的数据区分开,对业务运行的高可用提供了底层支撑。
111.图7为本技术实施例提供的组态数据处理方法的流程示意图,该实施例可以应用于第二存储装置,如图7所示,所述方法可以包括:
112.s701:复制第一存储装置中的第一组态数据,得到第二组态数据,其中,第一组态数据为应用于业务编辑过程中,供用户编辑或确认的数据,第二组态数据为应用于业务运行过程中,且禁止编辑的数据。
113.s702:存储第二组态数据,以供运行装置获取并运行第二组态数据。
114.在该实施例中,第二存储装置可以每隔预设时长从第一存储装置中确定新的第一组态数据,并复制新的第一组态数据得到第二组态数据。还可以在接收到第一存储装置发送的新数据提示时,从第一存储装置中确定新的第一组态数据,并复制新的第一组态数据
得到第二组态数据。
115.另外,运行装置可以有多个,在运行装置获取并运行第二组态数据时,可以根据运行装置的实际需求将第二组态数据发送至对应的运行装置,而无需是全部的运行装置,提高了组态数据的发布效率。
116.采用上述方案后,可以将用于供用户编辑或确认的第一组态数据与用于直接运行且不可编辑的第二组态数据隔离开,避免编辑过程与运行过程均对应同一数据时,当任一过程对应的数据出现问题,均会直接影响另一过程的正常运行的情况,提高了组态数据的稳定性及安全性,进而保证了组态数据对应的业务的正常运行。
117.此外,所述第一组态数据中包含第一目标版本号,所述方法可以包括:在根据所述第一目标版本号确定所述第一组态数据为新添加的组态数据时,复制所述第一存储装置中的第一组态数据,得到第二组态数据,并存储所述第二组态数据。
118.此外,所述方法还可以包括:在接收到所述第一存储装置异常提示时,暂停复制第一组态数据的动作。
119.此外,所述方法还可以包括:在接收到所述格式完整性校验失败提示之后,重新复制第一组态数据,得到新的第二组态数据,并将所述新的第二组态数据发送至所述校验装置。其中,所述格式完整性校验失败提示为在第二组态数据校验未通过,且确定未通过校验类型为格式完整性校验时发送的。
120.在另一实施例中,本技术提供了另一种组态数据处理方法,该方法可以应用于第一存储装置,所述方法可以包括:
121.接收并存储第一组态数据,以使所述第二存储装置复制所述第一存储装置中的第一组态数据,得到第二组态数据,并存储所述第二组态数据,以供运行装置获取并运行所述第二组态数据,其中,所述第一组态数据为应用于业务编辑过程中,供用户编辑或确认的数据,所述第二组态数据为应用于业务运行过程中,且禁止编辑的数据。
122.采用上述方案后,可以将用于供用户编辑或确认的第一组态数据与用于直接运行且不可编辑的第二组态数据隔离开,避免编辑过程与运行过程均对应同一数据时,当任一过程对应的数据出现问题,均会直接影响另一过程的正常运行的情况,提高了组态数据的稳定性及安全性,进而保证了组态数据对应的业务的正常运行。
123.此外,所述方法还可以包括:
124.接收第三方组态编辑应用程序发送的第一组态数据,其中,所述第一组态数据为所述第三方组态编辑应用程序响应用户的触控操作形成的,所述触控操作包括拖动组件操作以及输入操作。
125.存储所述第一组态数据。
126.在另一实施例中,本技术提供了另一种组态数据处理方法,该方法可以应用于校验装置,所述方法可以包括:
127.从所述第二存储装置中获取所述第二组态数据,并对所述第二组态数据进行校验处理,并在所述第二组态数据校验通过后,将所述第二组态数据发送至所述运行装置。
128.此外,所述方法还可以包括:
129.对所述第二组态数据进行以下至少一种处理:
130.格式完整性校验、身份校验、关键词校验和预运行校验。
131.其中,所述格式完整性校验用于对所述第二组态数据的组成项目进行校验,所述身份校验用于对所述第二组态数据的编辑用户进行校验,所述关键词校验用于根据预设词语对所述第二组态数据中的词语进行校验,所述预运行校验为在所述运行装置正式运行所述第二组态数据前预先运行进行校验的过程。
132.此外,所述方法还可以包括:
133.获取预先定义好的组态数据包含的项目,所述项目包含下述至少一项:页面数据、组件数据、状态数据以及属性数据,其中,所述页面数据表示待显示页面的基本信息,所述组件数据表示所述待显示页面中包含的组件的基本信息,所述状态数据表示所述待显示页面中包含的组件的状态信息,所述属性信息表示所述待显示页面中包含的组件的自定义描述信息。
134.若所述第二组态数据中包含的项目与所述预先定义好的组态数据中包含的项目相匹配,则确定所述第二组态数据通过格式完整性校验。
135.此外,所述方法还可以包括:
136.若所述第二组态数据校验未通过,则确定未通过校验类型;
137.若所述未通过校验类型为格式完整性校验,则发送格式完整性校验失败提示至所述第二存储装置,以使所述第二存储装置在接收到所述格式完整性校验失败提示之后,重新复制所述第一存储装置中的第一组态数据,得到新的第二组态数据,并将所述新的第二组态数据发送至所述校验装置。
138.采用上述方案后,可以将用于供用户编辑或确认的第一组态数据与用于直接运行且不可编辑的第二组态数据隔离开,避免编辑过程与运行过程均对应同一数据时,当任一过程对应的数据出现问题,均会直接影响另一过程的正常运行的情况,提高了组态数据的稳定性及安全性,进而保证了组态数据对应的业务的正常运行。
139.基于同样的思路,本说明书实施例还提供了上述方法对应的设备。
140.本技术实施例提供了一种组态数据处理设备,可以应用于第二存储装置,所述设备可以包括:
141.第一处理模块,用于复制第一存储装置中的第一组态数据,得到第二组态数据,其中,所述第一组态数据为应用于业务编辑过程中,供用户编辑或确认的数据,所述第二组态数据为应用于业务运行过程中,且禁止编辑的数据。
142.存储模块,用于存储所述第二组态数据,以供运行装置获取并运行所述第二组态数据。
143.此外,所述第一组态数据中包含第一目标版本号,所述第一处理模块还用于:在根据所述第一目标版本号确定所述第一组态数据为新添加的组态数据时,复制所述第一存储装置中的第一组态数据,得到第二组态数据,并存储所述第二组态数据。
144.此外,所述第一处理模块还用于:在接收到所述第一存储装置异常提示时,暂停复制第一组态数据的动作。
145.此外,所述第一处理模块还用于:在接收到所述格式完整性校验失败提示之后,重新复制第一组态数据,得到新的第二组态数据,并将所述新的第二组态数据发送至所述校验装置。其中,所述格式完整性校验失败提示为在第二组态数据校验未通过,且确定未通过校验类型为格式完整性校验时发送的。
146.在另一实施例中,本技术提供了另一种组态数据处理设备,该设备可以应用于第一存储装置,所述设备可以包括:
147.接收模块,用于接收并存储第一组态数据,以使所述第二存储装置复制所述第一存储装置中的第一组态数据,得到第二组态数据,并存储所述第二组态数据,以供运行装置获取并运行所述第二组态数据,其中,所述第一组态数据为应用于业务编辑过程中,供用户编辑或确认的数据,所述第二组态数据为应用于业务运行过程中,且禁止编辑的数据。
148.采用上述方案后,可以将用于供用户编辑或确认的第一组态数据与用于直接运行且不可编辑的第二组态数据隔离开,避免编辑过程与运行过程均对应同一数据时,当任一过程对应的数据出现问题,均会直接影响另一过程的正常运行的情况,提高了组态数据的稳定性及安全性,进而保证了组态数据对应的业务的正常运行。
149.此外,所述接收模块还可以用于:
150.接收第三方组态编辑应用程序发送的第一组态数据,其中,所述第一组态数据为所述第三方组态编辑应用程序响应用户的触控操作形成的,所述触控操作包括拖动组件操作以及输入操作。
151.存储所述第一组态数据。
152.在另一实施例中,本技术提供了另一种组态数据处理设备,该设备可以应用于校验装置,所述设备可以包括:
153.第二处理模块,用于从所述第二存储装置中获取所述第二组态数据,并对所述第二组态数据进行校验处理,并在所述第二组态数据校验通过后,将所述第二组态数据发送至所述运行装置。
154.此外,所述第二处理模块,还用于:
155.对所述第二组态数据进行以下至少一种处理:
156.格式完整性校验、身份校验、关键词校验和预运行校验。
157.其中,所述格式完整性校验用于对所述第二组态数据的组成项目进行校验,所述身份校验用于对所述第二组态数据的编辑用户进行校验,所述关键词校验用于根据预设词语对所述第二组态数据中的词语进行校验,所述预运行校验为在所述运行装置正式运行所述第二组态数据前预先运行进行校验的过程。
158.此外,所述第二处理模块,还用于:
159.获取预先定义好的组态数据包含的项目,所述项目包含下述至少一项:页面数据、组件数据、状态数据以及属性数据,其中,所述页面数据表示待显示页面的基本信息,所述组件数据表示所述待显示页面中包含的组件的基本信息,所述状态数据表示所述待显示页面中包含的组件的状态信息,所述属性信息表示所述待显示页面中包含的组件的自定义描述信息。
160.若所述第二组态数据中包含的项目与所述预先定义好的组态数据中包含的项目相匹配,则确定所述第二组态数据通过格式完整性校验。
161.此外,所述第二处理模块,还用于:
162.若所述第二组态数据校验未通过,则确定未通过校验类型。
163.若所述未通过校验类型为格式完整性校验,则发送格式完整性校验失败提示至所述第二存储装置,以使所述第二存储装置在接收到所述格式完整性校验失败提示之后,重
新复制所述第一存储装置中的第一组态数据,得到新的第二组态数据,并将所述新的第二组态数据发送至所述校验装置。
164.本技术实施例提供的装置,可以实现上述实施例的方法,其实现原理和技术效果类似,此处不再赘述。
165.图8为本技术实施例提供的电子设备的硬件结构示意图,如图8所示,本实施例提供的设备800包括:处理器801,以及与所述处理器通信连接的存储器。其中,处理器801、存储器802通过总线803连接。
166.在具体实现过程中,处理器801执行所述存储器802存储的计算机执行指令,使得处理器801执行上述方法实施例中的方法。
167.处理器801的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
168.在上述的图8所示的实施例中,应理解,处理器可以是中央处理单元(英文:central processing unit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digital signal processor,简称:dsp)、专用集成电路(英文:application specific integrated circuit,简称:asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
169.存储器可能包含高速ram存储器,也可能还包括非易失性存储nvm,例如至少一个磁盘存储器。
170.总线可以是工业标准体系结构(industry standard architecture,isa)总线、外部设备互连(peripheral component interconnect,pci)总线或扩展工业标准体系结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本技术附图中的总线并不限定仅有一根总线或一种类型的总线。
171.本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述方法实施例的组态数据处理方法。
172.本技术实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上所述的组态数据处理方法。
173.上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
174.一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(application specific integrated circuits,简称:asic)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
175.本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
176.最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1