CN103164257B - 工业组态应用中的多平台画面动态调用方法和系统 - Google Patents
工业组态应用中的多平台画面动态调用方法和系统 Download PDFInfo
- Publication number
- CN103164257B CN103164257B CN201110406835.3A CN201110406835A CN103164257B CN 103164257 B CN103164257 B CN 103164257B CN 201110406835 A CN201110406835 A CN 201110406835A CN 103164257 B CN103164257 B CN 103164257B
- Authority
- CN
- China
- Prior art keywords
- picture
- dynamic call
- configuration
- class
- platform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
Abstract
根据本发明的一个方面,提供了一种工业组态应用中的多平台画面动态调用方法,包括:激活对应于第一组态的第一动态调用类库;激活对应于第二组态的第二动态调用类库;启动多平台画面编辑基类以及所述第一和第二动态调用类库的继承类;启动多平台画面运行基类,以统一运行各组态的画面;在单个监控界面下调用至少一个画面;以及根据该被调用的画面的组态来启动与该组态相对应的动态调用类库,以获得显示该被调用的画面所需的运行环境。本发明可以运行单个画面,也可以运行多个画面,窗口数量可以灵活配置,而且可以将不同语言平台开发的画面在同一个监控界面上显示,能够根据用户的不同需求构造出丰富、灵活的监控画面,以适应工业监控软件监控形态多样化的需求。
Description
技术领域
本发明涉及工业组态应用,尤其涉及一种工业组态应用中的多平台画面动态调用方法和系统。
背景技术
工业企业是一个复杂的大系统,按照发展新型工业和企业信息化的要求,自动化应该是集管理和控制于一体的,它包含低层的控制与高层的管理监控的自动化。工业组态软件作为工业自动化的基础型工具平台,随着自动化软件技术的发展,监控组态应用不断地被赋予新的内容,在社会信息化进程中将扮演越来越重要的角色。而传统工业组态应用只支持自己的传统画面,已不能满足日益丰富的客户需求,不能适用于新型领域和高难度的画面呈现。必须为工业组态应用设计一种动态调用多种平台画面的机制和方法,这种方法可以运行单个画面,也可以运行多个画面,窗口数量可以灵活配置,而且可以将不同语言平台开发的画面在同一个监控界面上显示,能够根据用户的不同需求构造出丰富、灵活的监控画面,以适应工业监控应用监控形态多样化的需求。
发明内容
根据业界的上述需求,本发明旨在提供一种工业组态应用中的多平台画面动态调用方法和系统。本发明可以运行单个画面,也可以运行多个画面,窗口数量可以灵活配置,而且可以将不同语言平台开发的画面在同一个监控界面上显示,能够根据用户的不同需求构造出丰富、灵活的监控画面,以适应工业监控软件监控形态多样化的需求。
根据本发明的一个方面,提供了一种工业组态应用中的多平台画面动态调用方法,包括:激活对应于第一组态的第一动态调用类库;激活对应于第二组态的第二动态调用类库;启动多平台画面编辑基类以及所述第一和第二动态调用类库的继承类;启动多平台画面运行基类,以统一运行各组态的画面;在单个监控界面下调用至少一个画面;以及根据该被调用的画面的组态来启动与该组态相对应的动态调用类库,以获得显示该被调用的画面所需的运行环境。
较佳地,在上述的多平台画面动态调用方法中,所述第一动态调用类库是微软的.NET用户控件动态调用类库。
较佳地,在上述的多平台画面动态调用方法中,所述第二动态调用类库是真三维画面动态调用类库。
较佳地,在上述的多平台画面动态调用方法中,所述多平台画面编辑基类和所述多平台画面运行基类定义了基本属性、数据绑定和事件响应机制。
较佳地,在上述的多平台画面动态调用方法中,所述根据该被调用的画面的组态来启动与该组态相对应的动态调用类库的步骤进一步包括:执行所定义的数据绑定和事件响应机制,以在各种语言平台下进行画面的实时数据显示和事件处理。
较佳地,在上述的多平台画面动态调用方法中,所述执行所定义的数据绑定和事件响应机制的步骤进一步包括:获取需要读取数据的数据名字列表,以传给被调用的画面;当所述被调用的画面有事件触发时,调用事件响应机制,以将事件处理结果返回给所述被调用的画面。
此外,根据本发明的另一方面,提供了一种工业组态应用中的多平台画面动态调用系统,包括:用于激活对应于第一组态的第一动态调用类库的装置;用于激活对应于第二组态的第二动态调用类库的装置;用于启动多平台画面编辑基类以及所述第一和第二动态调用类库的继承类的装置;用于启动多平台画面运行基类以统一运行各组态的画面的装置;用于在单个监控界面下调用至少一个画面的装置;以及用于根据该被调用的画面的组态来启动与该组态相对应的动态调用类库以获得显示该被调用的画面所需的运行环境的装置。
较佳地,在上述的多平台画面动态调用系统中,所述第一动态调用类库是微软的.NET用户控件动态调用类库。
较佳地,在上述的多平台画面动态调用系统中,所述第二动态调用类库是真三维画面动态调用类库。
较佳地,在上述的多平台画面动态调用系统中,所述多平台画面编辑基类和所述多平台画面运行基类定义了基本属性、数据绑定和事件响应机制。
应当理解,本发明以上的一般性描述和以下的详细描述都是示例性和说明性的,并且旨在为如权利要求所述的本发明提供进一步的解释。
附图说明
包括附图是为提供对本发明进一步的理解,它们被收录并构成本申请的一部分,附图示出了本发明的实施例,并与本说明书一起起到解释本发明原理的作用。附图中:
图1示出了本发明的多平台画面动态调用方法的流程图。
图2示意性地示出了本发明的动态调用多种平台画面的机制和方法的各个模块及其之间的关系。
图3示出了微软.NET用户控件和专用的.NET组态画面动态调用类库的原理示意图。
图4示出了真三维画面动态调用类库的原理示意图。
图5示出了多平台画面基类以及各种画面继承类原理示意图。
图6示出了多平台画面运行的数据绑定方法和事件响应机制的原理示意图。
具体实施方式
现在将详细参考附图描述本发明的实施例。
图1示出了本发明的多平台画面动态调用方法的流程图。如图1所示,本发明的工业组态应用中的多平台画面动态调用方法100主要可以包括以下步骤:
步骤101:激活对应于第一组态的第一动态调用类库;
步骤102:激活对应于第二组态的第二动态调用类库;
步骤103:启动多平台画面编辑基类以及所述第一和第二动态调用类库的继承类;
步骤104:启动多平台画面运行基类,以统一运行各组态的画面;
步骤105:在单个监控界面下调用至少一个画面;以及
步骤106:根据该被调用的画面的组态来启动与该组态相对应的动态调用类库,以获得显示该被调用的画面所需的运行环境。
特别是,在步骤101中,所述第一动态调用类库优选是微软的.NET用户控件动态调用类库,从而允许动态调用用户控件以及专用的.NET组态画面。在步骤102中,所述第二动态调用类库优选是真三维画面动态调用类库,从而允许动态调用真三维组态画面。此外,步骤103允许统一编辑管理各种画面,例如根据所述步骤101的类库来实现编辑管理微软.NET用户控件继承类和专用的.NET组态画面继承类以及根据所述步骤102的类库来实现编辑管理真三维组态画面继承类。
在步骤103中,所述多平台画面编辑基类和所述多平台画面运行基类定义了基本属性、数据绑定和事件响应机制。此外,上述的步骤106可以进一步包括:执行所定义的数据绑定和事件响应机制,以在各种语言平台下进行画面的实时数据显示和事件处理。特别是,所述执行所定义的数据绑定和事件响应机制的步骤可以进一步包括:获取需要读取数据的数据名字列表,以传给被调用的画面;当所述被调用的画面有事件触发时,调用事件响应机制,以将事件处理结果返回给所述被调用的画面。
此外,根据本发明的另一方面,还提供了执行图1所示的各步骤的一套工业组态应用中的多平台画面动态调用系统。
现在转到图2,本发明的一个较佳实施例的系统可以包括建立集成编辑组件(ziScadaStudio)201、运行组件(ziScadaView)202、用户控件203、真三维模块204以及数据绑定和事件处理205。该集成编辑组件201可以进行各种画面的管理和编辑,含有其他一系列功能,此处不作详细描述。该集成编辑组件201需建立多平台画面基类以及各种画面继承类,这将在图5里作详细介绍。此外,还可以将传统画面编辑运行整合进这个组件里,类似于其他画面,此处不作详细描述。运行组件(ziScadaView)202可以是工业组态应用里的运行组件,该组件可以进行各种画面的运行、数据处理以及事件处理等,含有其他一系列功能,此处不作详细描述。用户控件模块203可以进行动态调用微软.NET用户控件和专用的.NET组态画面,将在图3里作详细介绍。真三维模块204可以动态调用真三维画面,并进行相关处理,将在图4里详细介绍。此外,在图2所示的示例中,数据绑定和事件处理机制205涉及与画面进行数据交换以及事件消息处理,将在图7里作详细介绍。
根据以上图2所示的示例,本发明的具体实施流程可以如下:
通过集成编辑组件(ziScadaStudio),可以新建或添加画面,并可以调用各自画面的编辑组件。微软.NET用户控件通过VisualStudio2005编辑;专用的.NET组态画面有专用的.NET组态画面编辑器(zsScada.Studio.Net.exe);真三维画面也有专用的真三维画面编辑器(zi3DStudio.exe)。ziScadaStudio可以调用专用的画面编辑器,并可以设置相关数据。当画面编辑完成后,便可以执行运行组件(ziScadaView),将画面显示出来,并实时处理数据交互和事件处理,响应画面上的事件,如图8所示。各个画面有自己的运行环境,如果环境不符合时,ziScadaStudio和ziScadaView便不会打开该画面,以确保整个流程的稳定运行。其中,在编辑和运行微软.NET用户控件和专用的.NET组态画面时,都是用户控件模块在动态处理。在编辑和运行真三维画面时,都是真三维模块在动态处理。
现在转到图3,图3是微软.NET用户控件和专用的.NET组态画面动态调用类库的原理示意图。其中包括了外部程序动态调用COM301、COM接口IUserControlInterface302、COM类UserControlService303、基本属性和方法304、绑定数据处理和方法305以及事件处理和方法306。
对于外部程序动态调用COM301,建立一个类(UserControlBaseAPI),用以动态调用UserControlBase.dll。该类通过COM组件调用方式来动态调用UserControlBase.dll,并提供了一系列的方法,方便外部程序调用。这样就可以确保在没有.NET环境下依然可以稳定运行,保证了整个程序的正常运行。
建立一个接口类(IUserControlInterface)302,提供对外的COM接口方法,包括各种属性、绑定数据、事件方法等。
建立一个类(UserControlService)303,实现IUserControlInterface里面的所有方法,并处理相关平台转换问题。该类内部调用了UserControlBase类,并会根据实际请求加载微软.NET用户控件或者专用的.NET组态画面。
建立UserControlBase类,该类继承自System.Windows.Forms.UserControl,包含三大部分:基本属性和方法304、绑定数据处理和方法305、事件处理和方法306。具体的,提供基本属性和方法304:打开文件、关闭文件、保存文件、标题内容、显示模式、状态等等,以便用户控件和专用的.NET组态画面继承和使用;提供绑定数据处理机制和方法305:增加绑定数据、删除绑定数据、获取绑定数据列表等等,以便用户控件和专用的.NET组态画面继承和使用。提供事件处理机制和方法306:实现了事件处理机制、设置事件通知函数指针等等。以便用户控件和专用的.NET组态画面继承和使用。
现在转到图4,图4是真三维画面动态调用类库的原理示意图。该真三维画面动态调用类库主要包括:真三维API401和真三维处理类402。
首先,建立一个输出标准API的类库,提供一系列的相关API函数,以便外部程序可以根据情况动态调用。该API内部则调用了真三维处理模块(D3Main.dll),处理了相关衔接工作。有了API接口,这样外部程序就没有必要静态加载真三维相关类库,确保在无真三维环境下依然可以稳定运行。其次,建立一系列的真三维处理类402,编辑和运行真三维画面,具体参见我们公司的专利《工业组态软件首创真3D技术》。
现在转到图5,图5是多平台画面基类以及各种画面继承类原理示意图。由于编辑基类和运行基类原理相同,只是状态不同,因而此处一起介绍。如图5所示,建立一个多平台画面基类,定义基本属性和方法501、绑定数据处理和方法502、事件处理和方法503。各画面继承类里面分别继承实现这些方法,这里采用的是C++里的多态特性,这样在操作各种画面时只需要操作多平台画面基类对象便可以了,简化了处理逻辑和过程,提高了运行效率。同时,也便于以后新增其他画面类型。
这里需要特别说明的是:微软.NET用户控件和专用的.NET组态画面处理继承类里面调用了图3所示的微软.NET用户控件和专用的.NET组态画面动态调用类库;真三维画面处理继承类里面调用了图4是所示的真三维画面动态调用类库。
请参见图6,图6是多平台画面运行的数据绑定方法和事件响应机制的原理示意图:
601.获取需要读数据的数据名字列表。
执行运行组件(ziScadaView)调用数据绑定方法获取需要读数据的数据名字列表,然后通过各种方式收集并整理数据,以便传给画面。
602.更新数据。
当有数据更新时,执行运行组件(ziScadaView)通过数据绑定方法将更新数据传给画面,画面再作处理和显示。
603.通知事件并返回执行结果。
当画面有事件触发时,调用事件处理方法,将消息通知给执行运行组件(ziScadaView)。执行运行组件(ziScadaView)根据不同消息进行不同的处理,并将处理结果返回给画面,画面再根据返回结果进行相应的处理。
通过这样的数据和事件处理机制,执行运行组件(ziScadaView)可以很方便的跟各画面进行数据和事件交互。
本发明所述的工业组态应用中的多平台画面动态调用方法和系统由于编写了不同的动态调用类库(例如,微软.NET用户控件动态调用类库以及真三维画面动态调用类库),这样在编辑和显示画面时便可以动态调用这些画面。即使没有安装微软.NETFrameWork2.0运行环境或者真三维3D运行环境,本方法依然可以稳定运行,只是此时不能够显示这些画面而已,确保不会导致程序故障;并且只有当打开了这个画面时,才会动态加载该画面所需的运行环境,确保程序可以稳定高效的运行在不同环境中;另外,由于本发明采用了统一的数据绑定方法和事件响应机制,可以实现各种语言平台下画面的实时数据显示和事件处理,以满足工业监控软件的实时监控功能。
本领域技术人员可显见,可对本发明的上述示例性实施例进行各种修改和变型而不偏离本发明的精神和范围。因此,旨在使本发明覆盖落在所附权利要求书及其等效技术方案范围内的对本发明的修改和变型。
Claims (6)
1.一种工业组态应用中的多平台画面动态调用方法,其特征在于,包括:
激活对应于第一组态的第一动态调用类库;
激活对应于第二组态的第二动态调用类库;
启动多平台画面编辑基类以及所述第一和第二动态调用类库的继承类;
启动多平台画面运行基类,以统一运行各组态的画面;
在单个监控界面下调用至少一个画面;以及
根据该被调用的画面的组态来启动与该组态相对应的动态调用类库,以获得显示该被调用的画面所需的运行环境,
其中,所述第一动态调用类库是微软的.NET用户控件动态调用类库,且所述第二动态调用类库是真三维画面动态调用类库。
2.如权利要求1所述的多平台画面动态调用方法,其特征在于,所述多平台画面编辑基类和所述多平台画面运行基类定义了基本属性、数据绑定和事件响应机制。
3.如权利要求2所述的多平台画面动态调用方法,其特征在于,所述根据该被调用的画面的组态来启动与该组态相对应的动态调用类库的步骤进一步包括:
执行所定义的数据绑定和事件响应机制,以在各种语言平台下进行画面的实时数据显示和事件处理。
4.如权利要求3所述的多平台画面动态调用方法,其特征在于,所述执行所定义的数据绑定和事件响应机制的步骤进一步包括:
获取需要读取数据的数据名字列表,以传给被调用的画面;
当所述被调用的画面有事件触发时,调用事件响应机制,以将事件处理结果返回给所述被调用的画面。
5.一种工业组态应用中的多平台画面动态调用系统,其特征在于,包括:
用于激活对应于第一组态的第一动态调用类库的装置;
用于激活对应于第二组态的第二动态调用类库的装置;
用于启动多平台画面编辑基类以及所述第一和第二动态调用类库的继承类的装置;
用于启动多平台画面运行基类以统一运行各组态的画面的装置;
用于在单个监控界面下调用至少一个画面的装置;以及
用于根据该被调用的画面的组态来启动与该组态相对应的动态调用类库以获得显示该被调用的画面所需的运行环境的装置,
其中,所述第一动态调用类库是微软的.NET用户控件动态调用类库,且所述第二动态调用类库是真三维画面动态调用类库。
6.如权利要求5所述的多平台画面动态调用系统,其特征在于,所述多平台画面编辑基类和所述多平台画面运行基类定义了基本属性、数据绑定和事件响应机制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110406835.3A CN103164257B (zh) | 2011-12-08 | 2011-12-08 | 工业组态应用中的多平台画面动态调用方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110406835.3A CN103164257B (zh) | 2011-12-08 | 2011-12-08 | 工业组态应用中的多平台画面动态调用方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103164257A CN103164257A (zh) | 2013-06-19 |
CN103164257B true CN103164257B (zh) | 2016-05-25 |
Family
ID=48587374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110406835.3A Active CN103164257B (zh) | 2011-12-08 | 2011-12-08 | 工业组态应用中的多平台画面动态调用方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103164257B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106873437B (zh) * | 2015-12-11 | 2018-12-04 | 中广核工程有限公司 | 核电站实时信息监控系统画面检测及自动组态系统和方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101877716A (zh) * | 2010-03-10 | 2010-11-03 | 艾默生网络能源有限公司 | 组态模板的定制方法、组态模板的显示方法及服务器 |
CN101882071A (zh) * | 2009-05-07 | 2010-11-10 | 北京四方继保自动化股份有限公司 | 一种组态软件的画面设计方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8959439B2 (en) * | 2008-09-26 | 2015-02-17 | Rockwell Automation Technologies, Inc. | Weakly-typed dataflow infrastructure with standalone, configurable connections |
-
2011
- 2011-12-08 CN CN201110406835.3A patent/CN103164257B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882071A (zh) * | 2009-05-07 | 2010-11-10 | 北京四方继保自动化股份有限公司 | 一种组态软件的画面设计方法 |
CN101877716A (zh) * | 2010-03-10 | 2010-11-03 | 艾默生网络能源有限公司 | 组态模板的定制方法、组态模板的显示方法及服务器 |
Non-Patent Citations (1)
Title |
---|
工业组态软件的设计与实现;朱小菲;《中国优秀硕士学位论文全文数据库(电子期刊)》;20050630(第2005年第6期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103164257A (zh) | 2013-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109597814B (zh) | 一种后台管理信息系统的在线快速交付系统 | |
US8176465B2 (en) | Pluggable model elements | |
CN112328212A (zh) | 一种基于引擎模式前后端分离的快速开发平台及其使用方法 | |
US9245256B2 (en) | Assigning and managing reviews of a computing file | |
US8914397B2 (en) | Rich-context tagging of resources | |
MX2008000515A (es) | Transiciones fluidas entre animaciones. | |
JP6817253B2 (ja) | 表示制御装置、表示制御方法、および表示制御プログラム | |
US20060259386A1 (en) | Building digital assets for use with software applications | |
US8495566B2 (en) | Widget combos: a widget programming model | |
CN114064213B (zh) | 基于Kubernets容器环境的快速编排服务方法及系统 | |
US20230418562A1 (en) | Interactive graphic design system to enable creation and use of variant component sets for interactive objects | |
CN113298503A (zh) | 一种面向政务的工作流管理系统及其分库分表方法 | |
US11748118B2 (en) | Systems and methods for tracking and visualizing state transitions | |
CN102541561B (zh) | 配置式软件开发方法及装置 | |
US7168062B1 (en) | Object-oriented software system allowing live modification of an application | |
US8122381B2 (en) | Context debugger | |
US9058188B2 (en) | Transformative user interfaces | |
CN103164257B (zh) | 工业组态应用中的多平台画面动态调用方法和系统 | |
US20220413843A1 (en) | Combining model-driven applications and canvas-type applications with application lifecycle management | |
CN113157268B (zh) | 一种流程引擎与物联网相结合的设备状态处理系统 | |
CN115617441A (zh) | 绑定模型和图元的方法、装置、存储介质及计算机设备 | |
CN114849240A (zh) | 应用于游戏客户端的ui编辑方法、装置及电子设备 | |
CN102841918A (zh) | 二进制长对象流化数据处理装置和方法 | |
CN114693103A (zh) | 设备管理模型生成与设备管理方法、设备及存储介质 | |
CN105183491A (zh) | 跨平台的桌面gis系统及其启动方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |