CN106873972A - 基于插件的电网规划仿真平台计算模块接入方法及系统 - Google Patents
基于插件的电网规划仿真平台计算模块接入方法及系统 Download PDFInfo
- Publication number
- CN106873972A CN106873972A CN201611252215.8A CN201611252215A CN106873972A CN 106873972 A CN106873972 A CN 106873972A CN 201611252215 A CN201611252215 A CN 201611252215A CN 106873972 A CN106873972 A CN 106873972A
- Authority
- CN
- China
- Prior art keywords
- computing module
- interface
- module
- plug
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000013439 planning Methods 0.000 title claims abstract description 30
- 230000002452 interceptive effect Effects 0.000 claims abstract description 29
- 238000011161 development Methods 0.000 claims abstract description 25
- 238000012423 maintenance Methods 0.000 claims abstract description 21
- 238000013461 design Methods 0.000 claims abstract description 18
- 238000004458 analytical method Methods 0.000 claims abstract description 13
- 238000013515 script Methods 0.000 claims abstract description 10
- 238000004364 calculation method Methods 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 64
- 238000004088 simulation Methods 0.000 claims description 12
- 238000013523 data management Methods 0.000 claims description 11
- 230000003993 interaction Effects 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 claims description 7
- 238000007726 management method Methods 0.000 claims description 3
- 230000005611 electricity Effects 0.000 claims 2
- 230000008859 change Effects 0.000 abstract description 9
- 230000008878 coupling Effects 0.000 abstract description 7
- 238000010168 coupling process Methods 0.000 abstract description 7
- 238000005859 coupling reaction Methods 0.000 abstract description 7
- 230000008901 benefit Effects 0.000 description 4
- 230000008676 import Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 238000010494 dissociation reaction Methods 0.000 description 1
- 230000005593 dissociations Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013277 forecasting method Methods 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06313—Resource planning in a project environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Human Resources & Organizations (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Health & Medical Sciences (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Water Supply & Treatment (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Public Health (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种基于插件的电网规划仿真平台计算模块接入方法,包括下述步骤:在需求分析阶段对开发任务进行分层,解耦仿真平台与计算模块间的交互关系,独立出仿真平台和计算模块;基于QML脚本语言在平台前端定制可自定义扩展的接口系统;将计算模块设计为即插即用式的插件;设计计算模块配置文件对计算模块进行初始化配置;简化计算模块的加载和维护。本发明提供的技术方案简化了多模块、松耦合、易变化型仿真系统的构建复杂度,减轻了平台开发人员负担,提升了系统升级维护效率,极大缩短了仿真系统集成周期。
Description
技术领域
本发明涉及电力仿真系统集成领域,具体涉及一种基于插件的电网规划仿真平台计算模块接入方法及系统。
背景技术
电力系统规划课题非常庞杂,研究范围广,涵盖了源-网-荷的规划及协调统一。各课题研究方法众多,包括负荷预测方法、电源规划方法、电网规划方法、不确定性电网规划方法和电网规划的可靠性、经济性、安全性评价方法等。
在实际研究中,将各研究课题作为计算模块向平台集成,平台为各模块提供数据,通过平台接口调用计算模块或计算模块内部功能,通过平台与计算模块间交互通信获取计算模块执行的迭代信息、进度信息,最终将结果返回平台进行结果处理、展示、使用。建立统一的电网规划平台,各计算模块可以独立完成上述闭环,模块间无深度交叉,而且考虑在研究阶段有利于各模块的分散开发,因此设计解耦化的平台架构,有利于多个开发人员和单位独立完成模块开发,提升协同工作效率。鉴于电力系统规划领域新课题新方法不断涌现,平台应提供可伸缩、易扩展的接口系统,针对规划领域需求的多变性,平台界面应易于定制,只需修改较少代码就能适应不同项目的需求,增减模块也应简单方便。
合理、准确的电力系统规划及其经济合理性不仅关系到电力工业本身能源利用和投资使用的经济和社会效益,同时也将对国民经济其他行业的发展产生巨大的影响,其重要性不可低估。电力系统规划的目的是力求在规划末期使电网达到一个较理想的结构,确定一个较理想的电网结构是涉及多方面的因素的复杂问题,人工进行规划方案分析费时费力,且繁琐、枯燥、非标准化、易出错,因此开发智能高效图形化的电网规划仿真平台将很大程度上提高电力规划的科学性、可靠性和效率。
发明内容
为解决上述现有技术中的不足,本发明的目的是提供一种基于插件的电网规划仿真平台计算模块接入方法及系统,本发明简化了多模块、松耦合、易变化型仿真系统的构建复杂度,减轻了平台开发人员负担,提升了系统升级维护效率,极大缩短了仿真系统集成周期。
本发明的目的是采用下述技术方案实现的:
本发明提供一种基于插件的电网规划仿真平台计算模块接入方法,其改进之处在于,所述方法包括下述步骤:
(1)在需求分析阶段对开发任务进行分层,解耦仿真平台与计算模块间的交互关系,独立出仿真平台和计算模块;
(2)基于QML脚本语言在平台前端定制可自定义扩展的接口系统;
(3)将计算模块设计为即插即用式的插件;
(4)设计计算模块配置文件对计算模块进行初始化配置(对平台与计算模块间、多个计算模块之间、计算模块内部交互的数据流、控制流进行配置管理);
(5)简化计算模块的加载和维护。
进一步地,所述步骤(1)中,在需求分析阶段对开发任务进行分层,包括:用户层、QML主框架层、主窗口C++层、模块管理器层和计算模块层;所述解耦仿真平台与计算模块间的交互关系为:解耦仿真平台与计算模块,计算模块与仿真平台之间遵循相同的接口标准。
进一步地,所述仿真平台与计算模块间的交互关系包括:
1)所述仿真平台设置计算模块仿真参数的参数编辑界面;
2)所述仿真平台控制计算模块启动的控制信息、启动计算信息、计算执行过程信息以及发出计算结束指令;
3)所述仿真平台回收计算模块结果信息和结果展示。
进一步地,所述步骤(2)中,所述接口系统的菜单栏和工具栏根据XML文件动态配置接口数量和位置,依据id选择和切换选项,选项命令以字符串的方式传递给主应用程序统一入口进行处理。
进一步地,所述接口系统包括:数据管理功能接口、通用功能接口和计算模块专用功能交互接口;
所述数据管理功能接口用于实现电网数据的交互,包括标准格式数据的导入导出、电网运行方式数据的导入导出和规划数据导入导出;
所述通用功能接口用于电力系统仿真通用功能的接入;
所述计算模块专用功能交互接口依据拟接入的计算模块预先定制模块导航栏,并通过工具栏XML文件配置计算模块对应的工具栏选项。
进一步地,所述步骤(3)中,依据Qt系统插件机制,将计算模块设计为插件,并设计计算模块插件化的实现流程;编写插件数据标准接口并导出给第三方单位,第三方单位依据插件数据接口标准开发;将开发好后生成的插件文件放至指定目录下,仿真平台在运行时完成插件加载及计算模块的初始化。
进一步地,所述步骤(5)中,所述计算模块加载由仿真平台自动完成,模块升级维护简化为对计算模块动态链接库文件的替换操作。
本发明还提供一种基于插件的电网规划仿真平台计算模块接入系统,其改进之处在于,所述系统包括:
分层及解耦模块:用于在需求分析阶段对开发任务进行分层,解耦仿真平台与计算模块间的交互关系,独立出仿真平台和计算模块;
定制模块:基于QML脚本语言在平台前端用于定制可自定义扩展的接口系统;
设计模块:用于将计算模块设计为即插即用式的插件;
初始化模块:设计计算模块配置文件用于对计算模块进行初始化配置;
维护模块:用于简化计算模块的加载和维护。
进一步地,所述仿真平台与计算模块间的交互关系包括:
1)所述仿真平台设置计算模块仿真参数的参数编辑界面;
2)所述仿真平台控制计算模块启动的控制信息、启动计算信息、计算执行过程信息以及发出计算结束指令;
3)所述仿真平台回收计算模块结果信息和结果展示。
进一步地,所述定制模块定制的接口系统包括:数据管理功能接口、通用功能接口和计算模块专用功能交互接口;
所述数据管理功能接口用于实现电网数据的交互,包括标准格式数据的导入导出、电网运行方式数据的导入导出和规划数据导入导出;
所述通用功能接口用于电力系统仿真通用功能的接入;
所述计算模块专用功能交互接口依据拟接入的计算模块预先定制模块导航栏,并通过工具栏XML文件配置计算模块对应的工具栏选项。
与最接近的现有技术相比,本发明提供的技术方案具有的优异效果是:
本发明的技术方案对于典型的多模块、松耦合的仿真系统集成方法进行改进,使用本发明中基于平台/插件式的软件开发架构对开发任务进行解耦,使平台和计算模块相互独立,并基于QML脚本语言在平台前端定制易于扩展的接口系统,并将计算模块实现为“即插即用”式的插件,当计算模块接入平台时基于自定义的配置文件对平台与计算模块间、多个计算模块之间、计算模块内部交互的数据流、控制流进行配置管理,提高了系统稳定性和执行效率。计算模块升级维护时,在保证接口和声明不变的情况下,只需对插件文件进行维护即可,升级维护简单方便。系统扩展时,也只需按相同流程实现插件和配置文件,并在平台配置相应接口即可。本方法简化了多模块、松耦合、易变化型仿真系统的构建复杂度,减轻了平台开发人员负担,提升了系统升级维护效率,极大缩短了仿真系统集成周期。
为了上述以及相关的目的,一个或多个实施例包括后面将详细说明并在权利要求中特别指出的特征。下面的说明以及附图详细说明某些示例性方面,并且其指示的仅仅是各个实施例的原则可以利用的各种方式中的一些方式。其它的益处和新颖性特征将随着下面的详细说明结合附图考虑而变得明显,所公开的实施例是要包括所有这些方面以及它们的等同。
附图说明
图1为本发明提供的平台/插件式系统架构图;
图2为本发明提供的电网规划仿真平台解耦化设计架构图;
图3为本发明提供的平台与计算模块简化后的交互关系图;
图4为本发明提供的平台主界面接口系统设计图;
图5为本发明提供的插件实现的类图;
图6为本发明提供的用户执行计算模块功能的操作流程图;
图7是本发明提供的基于插件的电网仿真平台计算模块接入方法的流程图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步的详细说明。
以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。其他实施方案可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的组件和功能是可选的,并且操作的顺序可以变化。一些实施方案的部分和特征可以被包括在或替换其他实施方案的部分和特征。本发明的实施方案的范围包括权利要求书的整个范围,以及权利要求书的所有可获得的等同物。在本文中,本发明的这些实施方案可以被单独地或总地用术语“发明”来表示,这仅仅是为了方便,并且如果事实上公开了超过一个的发明,不是要自动地限制该应用的范围为任何单个发明或发明构思。
实施例一
本发明是对于典型的多模块、松耦合的仿真系统集成方法进行改进,使用本提案中基于平台/插件式的软件开发架构对开发任务进行分解,使平台和计算模块相互独立,并基于QML脚本语言在平台前端定制易于扩展的接口系统,并将计算模块实现为“即插即用”式的插件,当计算模块接入平台时基于自定义的配置文件对平台与计算模块间、多个计算模块之间、计算模块内部交互的数据流、控制流进行配置管理,提高了系统稳定性和执行效率。计算模块升级维护时,在保证接口和声明不变的情况下,只需对插件文件进行维护即可,升级维护简单方便。系统扩展时,也只需按相同流程实现插件和配置文件,并在平台配置相应接口即可。
本发明提供一种基于插件的电网规划仿真平台计算模块接入方法,其流程图如图7所示,包括下述步骤:
(1)基于平台/插件式的软件开发架构,在需求分析阶段对开发任务进行分层,独立出平台和各计算模块,并降低平台与各计算模块间、不同计算模块间的耦合度;
在需求分析阶段对开发任务进行分层,包括:用户层、QML主框架层、主窗口C++层、模块管理器层和计算模块层,所述解耦仿真平台与计算模块,计算模块与计算模块之间遵循同样的接口标准。
模块化功能一般包括通用功能模块和计算模块,后者设计为插件,各计算模块遵循同样的接口标准,这样在不同单位分散开发之后,进行系统集成时只需进行模块组装,而不是对源代码进行合并。当需要新的功能时只需按标准接口继续开发即可,之后按同样的方式组装即可使用,平台/插件式系统架构见图1所示。
(2)平台核心功能需要与模块交互,基于QML脚本语言在平台前端定制可自定义扩展的接口系统,基于QML语言创建界面,实现图形数据分离,可对图形界面进行任意自定义布局,包括标题栏、菜单栏、模块导航栏、工具栏、状态栏、缩放工具、信息反馈窗口等。其中,菜单栏和工具栏可根据XML文件动态配置接口数量和位置,菜单栏XML文件描述菜单和菜单项(id,名称,正常状态图标、选中状态图标),工具栏XML文件描述工具栏和工具栏项(id,名称,正常状态图标、选中状态图标),通过id选择和切换选项,选项命令以字符串的方式传递给主程序统一入口进行处理。另外,菜单栏还可通过特殊处理实现多级菜单。
在规划平台主界面中预定义的接口包括数据管理功能接口、通用功能接口和计算模块功能交互接口。数据管理功能接口主要是电网数据交互功能,包括PSASP7.1、PSD-BPA、PSASP5.1标准格式数据的导入导出,另外还包括电网运行方式数据的导入和导出、规划数据导入导出。通用功能接口包括电力系统仿真通用功能接入,如潮流计算、短路电流计算、稳定分析计算等,通用功能的接入可用于对规划方案作深入分析及校核。数据导入导出和通用功能接口均布局在菜单栏接口位置。计算模块功能交互接口主要依据拟接入的计算模块预先定制模块导航栏,并通过工具栏XML文件配置模块对应的工具栏选项。
(3)为方便计算模块接入平台,依据Qt系统插件机制,将计算模块设计为插件,并设计了计算模块插件化的实现流程。编写插件标准接口并导出给第三方单位,第三方单位依据插件接口标准开发。将开发好后生成的插件文件放至指定目录下,平台可在运行时完成插件加载及模块初始化。
(4)考虑到电网规划仿真平台计算模块众多,各计算模块与平台间、计算模块间、计算模块内部的交互频繁,各种数据流和信息流交错,平台维护复杂度较高。因此,为便于平台对计算模块统一管理,设计了计算模块配置文件对计算模块进行初始化配置,这样保证各模块数据流和信息流独立,提高了系统稳定性和效率。
(5)当模块需要升级维护时,只要保证接口和声明不变的情况下修改插件实现,修改完毕后重新生成插件并替换目录下的旧插件即可,升级维护简单方便。
本发明提供的技术方案简化了多模块、松耦合、易变化型仿真系统的构建复杂度,减轻了平台开发人员负担,提升了系统升级维护效率,极大缩短了仿真系统集成周期。
实施例二
(1)基于平台/插件式开发架构对电网规划仿真平台开发任务进行分层,简化平台与计算模块间交互关系,将计算模块独立,平台解耦化设计架构如图2所示,仿真平台与计算模块简化后的交互关系图如图3所示。
(2)基于QML脚本语言设计平台主界面,并依据计算模块接入需求在主界面布局可自定义扩展的接口系统,包括标题栏、菜单栏、模块导航栏、工具栏、状态栏、缩放工具、信息反馈窗口等,如图4所示。
(3)平台依据菜单栏XML文件对菜单栏进行动态配置,可实现菜单栏分级呈现,示例如下。菜单栏主要负责平台数据导入导出和通用功能模块的接入,一般在平台开发前期已经开发完成。
(4)平台依据工具栏XML文件对工具栏进行动态配置,示例如下。工具栏主要是对接入的计算模块功能的调用接口,一般包括:参数设置、数据编辑、启动计算、查看报表及结果展示等。
(5)依据Qt插件实现机制,将计算模块实现为插件并接入平台,插件设计类图见附图5。
具体实现流程如下:
1)开发插件标准接口类APPlanModelPlugin。主要依据Qt系统的插件实现机制进行设计,并导出给第三方,之后按着Qt实现插件的方式定义插件接口类APPlanModelPlugin,接口类继承了基类的两个纯虚函数keys和create,在接口文件中不定义任何实现,具体的实现全部交给派生类去完成,保证了所开发的插件合法,且能被Qt插件加载机制识别。
2)第三方开发者依据平台提供的标准插件接口开发插件。编写插件类时需要继承接口并实现接口中定义的两个虚函数。其中,函数keys中返回模块名称列表,函数create中根据调用时传入的key值初始化名称为key的接入模块。可以将所有接入模块均在一个插件中接入,也可以分散在多个插件中接入,区别是如果分散实现在多个插件中接入时需要重复实现继承自平台接口的插件类。
模块功能实现包括模块参数设置、模块执行计算、模块结果报表、保存等,并通过配置文件ModelName1.ini、ModelName2.ini对其进行初始化。
根据模块功能需求,设计模块功能类,因为各模块功能虽不统一但有较大相似性。
(6)自定义配置文件设计。计算模块接入时通过构造函数传入配置文件进行初始化,在配置文件中定义了模块全部功能的exeID,平台通过预先在工具栏定义的计算模块接口交互传入对应功能的exeID,与配置文件中字段进行匹配,当匹配正确时执行exec函数完成指定功能调用。
[globe]
model_id=ModelID
model_name=ModelName
model_ver=0.1.0.1
model_data_dir=$(bin_dir)PlanModel/ModelName/data/
[parmexe]
type=inner
name=计算参数设置
cfg_path=$(model_data_dir)
[reportexe]
type=inner
name=查看报表
cfg_path=$(model_data_dir)
[modelexe]
type=bat
name=执行计算
batch=1
count=3
[modelexe_1]
name=准备数据
type=refer
refid=outputdata
[modelexe_2]
name=潮流校验
type=refer
refid=PFCalc
配置文件中定义了计算模块中的参数设置、查看报表、执行计算三个功能,对应的exeID分别为:paraexe、reportexe、modelexe。配置文件中type表示计算模块执行类型,值为inner时为执行当前功能块,值为bat时为批处理,值为refer时为其他模块调用,如modelexe功能块,会依次执行modelexe_1、modelexe_2,还可以自定义其它计算模块执行类型。在配置文件中还可以引用环境变量,也可以定义一些通用的过程供其他过程引用,模块间也可以实现通用配置单元的复用等。
(7)插件加载和计算模块初始化。插件开发完成后,生成dll文件至指定目录,程序运行时通过依据Qt内部插件加载机制设计的插件加载流程自动加载目录下的插件文件。上述方法中,使用QfactoryLoader加载插件,具体操作如下:
1)初始化插件,依据仿真平台插件接口中的声明,加载目录下的合法插件,并返回版本和配置信息。
2)返回模块列表
插件加载成功后,即可通过loader对象获取插件中包含的模块列表。
3)计算模块创建
获取插件接入的模块名称列表后,对模块名进行遍历并依次创建模块,如果创建成功则系统增加模块成功。
(8)平台加载计算模块插件成功后,即可通过平台模块导航窗口调用计算模块,并动态配置该计算模块对应的工具栏选项,执行计算模块功能的操作流程见附图6。
(9)模块维护、升级时,保证接口不变的情况下修改计算模块接口函数实现,修改完成后,重新生成dll文件并替换插件目录下的旧插件即可,模块升级维护完成。
平台/插件式的软件设计架构是将开发任务一分为二,一部分为平台核心功能,另一部分为模块化功能,可实现为插件。插件式开发的优势在于保证系统本身变动最小的情况下使系统功能得到扩展和加强,当插件开发接口发布后,任何公司或个人想对主程序进行扩展时都可以依据接口标准开发自己的插件,灵活高效,插件可以实现“热插拔”,即在系统运行时,动态加载/移除/更新插件,模块接入平台时不再需要编译平台代码,是真正意义上的“即插即用”。
插件式开发具有诸多优点,插件实现形式基于动态链接库(DLL),动态链接库是二进制编码方式,避免人为修改文件造成破坏,同时能对核心代码进行隐藏。根据整个软件业务的不同需求,可以对多个插件进行并行开发,能极大提高开发效率和产品质量。另外,基于插件开发时,不需要每次重新编译全部程序,节省开发人员时间。插件式开发升级维护方便,只需要文件替换即可完成。随着业务需求的增多,实现的功能模块也不断增加,插件库将得以扩充和丰富,有利于技术成果积累。
配置文件是对不同对象进行不同配置的文本文件。平台数据流、信息流复杂,基于配置文件进行平台与计算模块、计算模块间、计算模块内部交互的数据流和信息流的配置,能降低平台计算模块接入复杂度,提升平台稳定性和效率。
实施例三
基于同样的发明构思,本发明还提供一种基于插件的电网规划仿真平台计算模块接入系统,包括:
分层及解耦模块:用于在需求分析阶段对开发任务进行分层,解耦仿真平台与计算模块间的交互关系,独立出仿真平台和计算模块;
定制模块:基于QML脚本语言在平台前端用于定制可自定义扩展的接口系统;
设计模块:用于将计算模块设计为即插即用式的插件;
初始化模块:设计计算模块配置文件用于对计算模块进行初始化配置;
维护模块:用于简化计算模块的加载和维护。
仿真平台与计算模块间的交互关系包括:
1)所述仿真平台设置计算模块仿真参数的参数编辑界面;
2)所述仿真平台控制计算模块启动的控制信息、启动计算信息、计算执行过程信息以及发出计算结束指令;
3)所述仿真平台回收计算模块结果信息和报表展示。
定制模块定制的接口系统包括:数据管理功能接口、通用功能接口和计算模块专用功能交互接口;
所述数据管理功能接口用于实现电网数据的交互,包括标准格式数据的导入导出、电网运行方式数据的导入导出和规划数据导入导出;
所述通用功能接口用于电力系统仿真通用功能的接入;
所述计算模块专用功能交互接口依据拟接入的计算模块预先定制模块导航栏,并通过工具栏XML文件配置计算模块对应的工具栏选项。
以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员依然可以对本发明的具体实施方式进行修改或者等同替换,这些未脱离本发明精神和范围的任何修改或者等同替换,均在申请待批的本发明的权利要求保护范围之内。
Claims (10)
1.一种基于插件的电网网规划仿真平台计算模块接入方法,其特征在于,所述方法包括下述步骤:
(1)在需求分析阶段对开发任务进行分层,解耦仿真平台与计算模块间的交互关系,独立出仿真平台和计算模块;
(2)基于QML脚本语言在平台前端定制可自定义扩展的接口系统;
(3)将计算模块设计为即插即用式的插件;
(4)设计计算模块配置文件对计算模块进行初始化配置;
(5)简化计算模块的加载和维护。
2.如权利要求1所述的接入方法,其特征在于,所述步骤(1)中,在需求分析阶段对开发任务进行分层,包括:用户层、QML主框架层、主窗口C++层、模块管理器层和计算模块层;所述解耦仿真平台与计算模块间的交互关系为:解耦仿真平台与计算模块,计算模块与仿真平台之间遵循相同的接口标准。
3.如权利要求2所述的接入方法,其特征在于,所述仿真平台与计算模块间的交互关系包括:
1)所述仿真平台设置计算模块仿真参数的参数编辑界面;
2)所述仿真平台控制计算模块启动的控制信息、启动计算信息、计算执行过程信息以及发出计算结束指令;
3)所述仿真平台回收计算模块结果信息和结果展示。
4.如权利要求1所述的接入方法,其特征在于,所述步骤(2)中,所述接口系统的菜单栏和工具栏根据XML文件动态配置接口数量和位置,依据id选择和切换选项,选项命令以字符串的方式传递给主应用程序统一入口进行处理。
5.如权利要求4所述的接入方法,其特征在于,所述接口系统包括:数据管理功能接口、通用功能接口和计算模块专用功能交互接口;
所述数据管理功能接口用于实现电网数据的交互,包括标准格式数据的导入导出、电网运行方式数据的导入导出和规划数据导入导出;
所述通用功能接口用于电力系统仿真通用功能的接入;
所述计算模块专用功能交互接口依据拟接入的计算模块预先定制模块导航栏,并通过工具栏XML文件配置计算模块对应的工具栏选项。
6.如权利要求1所述的接入方法,其特征在于,所述步骤(3)中,依据Qt系统插件机制,将计算模块设计为插件,并设计计算模块插件化的实现流程;编写插件标准接口并导出给第三方单位,第三方单位依据插件标准接口开发;将开发好后生成的插件文件放至指定目录下,仿真平台在运行时完成插件加载及计算模块的初始化。
7.如权利要求1所述的接入方法,其特征在于,所述步骤(5)中,所述计算模块加载由仿真平台自动完成,模块升级维护简化为对计算模块动态链接库文件的替换操作。
8.一种基于插件的电网规划仿真平台计算模块接入系统,其特征在于,所述系统包括:
分层及解耦模块:用于在需求分析阶段对开发任务进行分层,解耦仿真平台与计算模块间的交互关系,独立出仿真平台和计算模块;
定制模块:基于QML脚本语言在平台前端用于定制可自定义扩展的接口系统;
设计模块:用于将计算模块设计为即插即用式的插件;
初始化模块:设计计算模块配置文件用于对计算模块进行初始化配置;
维护模块:用于简化计算模块的加载和维护。
9.如权利要求8所述的接入系统,其特征在于,所述仿真平台与计算模块间的交互关系包括:
1)所述仿真平台设置计算模块仿真参数的参数编辑界面;
2)所述仿真平台控制计算模块启动的控制信息、启动计算信息、计算执行过程信息以及发出计算结束指令;
3)所述仿真平台回收计算模块结果信息和结果展示。
10.如权利要求8所述的接入系统,其特征在于,所述模块定制的接口系统包括:数据管理功能接口、通用功能接口和计算模块专用功能交互接口;
所述数据管理功能接口用于实现电网数据的交互,包括标准格式数据的导入导出、电网运行方式数据的导入导出和规划数据导入导出;
所述通用功能接口用于电力系统仿真通用功能的接入;
所述计算模块专用功能交互接口依据拟接入的计算模块预先定制模块导航栏,并通过工具栏XML文件配置计算模块对应的工具栏选项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611252215.8A CN106873972A (zh) | 2016-12-30 | 2016-12-30 | 基于插件的电网规划仿真平台计算模块接入方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611252215.8A CN106873972A (zh) | 2016-12-30 | 2016-12-30 | 基于插件的电网规划仿真平台计算模块接入方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106873972A true CN106873972A (zh) | 2017-06-20 |
Family
ID=59164251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611252215.8A Pending CN106873972A (zh) | 2016-12-30 | 2016-12-30 | 基于插件的电网规划仿真平台计算模块接入方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106873972A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562468A (zh) * | 2017-08-07 | 2018-01-09 | 浪潮金融信息技术有限公司 | 一种模拟设备的开发方法 |
CN108229799A (zh) * | 2017-12-20 | 2018-06-29 | 江苏瑞中数据股份有限公司 | 一种多源异构电网运行实时数据接入系统及方法 |
CN108829462A (zh) * | 2018-06-21 | 2018-11-16 | 安徽大中润科技有限公司 | 一种信息的显示方法、系统及插件管理平台 |
CN109656635A (zh) * | 2018-11-30 | 2019-04-19 | 中国电力科学研究院有限公司 | 基于平台和插件的电力仿真应用软件组装开发方法及系统 |
CN110209471A (zh) * | 2019-06-11 | 2019-09-06 | 珠海格力电器股份有限公司 | 集成了多种仿真软件的云仿真方法及系统 |
CN110221926A (zh) * | 2019-05-27 | 2019-09-10 | 中国电建集团华东勘测设计研究院有限公司 | 一种高拱坝浇筑进度仿真的隔离计算管理方法 |
CN110688096A (zh) * | 2019-09-10 | 2020-01-14 | 平安普惠企业管理有限公司 | 包含插件的应用程序的构建方法、装置、介质及电子设备 |
CN110928531A (zh) * | 2019-11-19 | 2020-03-27 | 中国电子科技集团公司第四十一研究所 | 一种电磁频谱监测系统软件平台构建方法 |
CN111125098A (zh) * | 2019-12-06 | 2020-05-08 | 中国人民财产保险股份有限公司 | 包含多模块的应用前端的接入方法、模块注册方法及装置 |
CN111752666A (zh) * | 2020-06-30 | 2020-10-09 | 杭州海康威视数字技术股份有限公司 | 窗口显示方法、装置和终端 |
CN112306573A (zh) * | 2020-10-30 | 2021-02-02 | 中国民航信息网络股份有限公司 | 一种多航司接入方法、装置及电子设备 |
CN112685073A (zh) * | 2019-10-17 | 2021-04-20 | 天津天堰科技股份有限公司 | 一种系统架构和应用该系统架构的系统 |
CN112925575A (zh) * | 2020-12-29 | 2021-06-08 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种基于框架及插件的机载仿真运行方法 |
CN113010227A (zh) * | 2021-03-18 | 2021-06-22 | 南京仁谷系统集成有限公司 | 一种基于模型驱动的仿真平台实现方法 |
CN114020359A (zh) * | 2021-11-08 | 2022-02-08 | 中国电子科技集团公司第二十八研究所 | 一种基于插件的分布式平台集成方法 |
CN114546538A (zh) * | 2022-04-27 | 2022-05-27 | 季华实验室 | 一种基于osgi的虚拟仿真平台构建方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103164239A (zh) * | 2012-12-11 | 2013-06-19 | 广东电网公司电力科学研究院 | 基于微网可视化平台的插件实现方法 |
CN103970589A (zh) * | 2014-05-09 | 2014-08-06 | 国家电网公司 | 一种基于pss/e潮流api接口的长动态过程仿真方法 |
CN105760599A (zh) * | 2016-02-16 | 2016-07-13 | 东南大学 | 一种用于大型电力系统暂态稳定研究的小型化超级仿真器 |
KR101645689B1 (ko) * | 2015-06-26 | 2016-08-05 | (주)네모파트너즈엔이씨 | 스마트 전력수요자원 네모모델링데이터 시뮬레이션 모듈을 통한 전력수요관리사업 프로젝트 경제성 분석장치 및 방법 |
-
2016
- 2016-12-30 CN CN201611252215.8A patent/CN106873972A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103164239A (zh) * | 2012-12-11 | 2013-06-19 | 广东电网公司电力科学研究院 | 基于微网可视化平台的插件实现方法 |
CN103970589A (zh) * | 2014-05-09 | 2014-08-06 | 国家电网公司 | 一种基于pss/e潮流api接口的长动态过程仿真方法 |
KR101645689B1 (ko) * | 2015-06-26 | 2016-08-05 | (주)네모파트너즈엔이씨 | 스마트 전력수요자원 네모모델링데이터 시뮬레이션 모듈을 통한 전력수요관리사업 프로젝트 경제성 분석장치 및 방법 |
CN105760599A (zh) * | 2016-02-16 | 2016-07-13 | 东南大学 | 一种用于大型电力系统暂态稳定研究的小型化超级仿真器 |
Non-Patent Citations (1)
Title |
---|
郑志伟等: "电力系统规划仿真平台设计与实现", 《电力信息与通信技术》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562468A (zh) * | 2017-08-07 | 2018-01-09 | 浪潮金融信息技术有限公司 | 一种模拟设备的开发方法 |
CN108229799A (zh) * | 2017-12-20 | 2018-06-29 | 江苏瑞中数据股份有限公司 | 一种多源异构电网运行实时数据接入系统及方法 |
CN108229799B (zh) * | 2017-12-20 | 2022-04-05 | 江苏瑞中数据股份有限公司 | 一种多源异构电网运行实时数据接入系统及方法 |
CN108829462A (zh) * | 2018-06-21 | 2018-11-16 | 安徽大中润科技有限公司 | 一种信息的显示方法、系统及插件管理平台 |
CN109656635A (zh) * | 2018-11-30 | 2019-04-19 | 中国电力科学研究院有限公司 | 基于平台和插件的电力仿真应用软件组装开发方法及系统 |
CN110221926A (zh) * | 2019-05-27 | 2019-09-10 | 中国电建集团华东勘测设计研究院有限公司 | 一种高拱坝浇筑进度仿真的隔离计算管理方法 |
CN110209471B (zh) * | 2019-06-11 | 2020-12-29 | 珠海格力电器股份有限公司 | 集成了多种仿真软件的云仿真方法及系统 |
CN110209471A (zh) * | 2019-06-11 | 2019-09-06 | 珠海格力电器股份有限公司 | 集成了多种仿真软件的云仿真方法及系统 |
CN110688096A (zh) * | 2019-09-10 | 2020-01-14 | 平安普惠企业管理有限公司 | 包含插件的应用程序的构建方法、装置、介质及电子设备 |
CN110688096B (zh) * | 2019-09-10 | 2024-03-01 | 刘艾勇 | 包含插件的应用程序的构建方法、装置、介质及电子设备 |
CN112685073A (zh) * | 2019-10-17 | 2021-04-20 | 天津天堰科技股份有限公司 | 一种系统架构和应用该系统架构的系统 |
CN110928531A (zh) * | 2019-11-19 | 2020-03-27 | 中国电子科技集团公司第四十一研究所 | 一种电磁频谱监测系统软件平台构建方法 |
CN111125098A (zh) * | 2019-12-06 | 2020-05-08 | 中国人民财产保险股份有限公司 | 包含多模块的应用前端的接入方法、模块注册方法及装置 |
CN111752666B (zh) * | 2020-06-30 | 2023-05-30 | 杭州海康威视数字技术股份有限公司 | 窗口显示方法、装置和终端 |
CN111752666A (zh) * | 2020-06-30 | 2020-10-09 | 杭州海康威视数字技术股份有限公司 | 窗口显示方法、装置和终端 |
CN112306573A (zh) * | 2020-10-30 | 2021-02-02 | 中国民航信息网络股份有限公司 | 一种多航司接入方法、装置及电子设备 |
CN112306573B (zh) * | 2020-10-30 | 2024-06-14 | 中国民航信息网络股份有限公司 | 一种多航司接入方法、装置及电子设备 |
CN112925575A (zh) * | 2020-12-29 | 2021-06-08 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种基于框架及插件的机载仿真运行方法 |
CN113010227A (zh) * | 2021-03-18 | 2021-06-22 | 南京仁谷系统集成有限公司 | 一种基于模型驱动的仿真平台实现方法 |
CN114020359A (zh) * | 2021-11-08 | 2022-02-08 | 中国电子科技集团公司第二十八研究所 | 一种基于插件的分布式平台集成方法 |
CN114020359B (zh) * | 2021-11-08 | 2024-04-16 | 中国电子科技集团公司第二十八研究所 | 一种基于插件的分布式平台集成方法 |
CN114546538A (zh) * | 2022-04-27 | 2022-05-27 | 季华实验室 | 一种基于osgi的虚拟仿真平台构建方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106873972A (zh) | 基于插件的电网规划仿真平台计算模块接入方法及系统 | |
US7865350B1 (en) | Partitioning a model in modeling environments | |
CN104021460B (zh) | 一种工作流程管理系统及工作流程处理方法 | |
CN102449598B (zh) | 包设计和生成 | |
KR102237877B1 (ko) | 실시간 협업지원 지능형 소프트웨어 자동 개발 시스템 및 그 방법 | |
US7954059B2 (en) | Automatic conversion of text-based code having function overloading and dynamic types into a graphical program for compiled execution | |
US10095488B2 (en) | Expressive generic model technology | |
Karneyeu et al. | MCPLOTS: a particle physics resource based on volunteer computing | |
CN105843630A (zh) | 一种基于机器人图形化编程开发的方法 | |
CN108280291A (zh) | 可重用仿真模型接口设计与对接方法、装置和计算机设备 | |
EP3163436A1 (en) | Visual software modeling method based on software meta-view for constructing software view | |
Pidd et al. | Simulation software: not the same yesterday, today or forever | |
CN105512304A (zh) | 在线生成互联网应用方法和系统集成方法及支撑平台 | |
CN108268615B (zh) | 一种数据处理方法、装置以及系统 | |
Muschevici et al. | Feature nets: behavioural modelling of software product lines | |
CN109960492A (zh) | 一种基于qt平台的检测系统及其使用方法 | |
CN106779594A (zh) | 一种基于Activiti的工作流管理方法 | |
CN105930344A (zh) | 一种基于产品研制流程的数据库应用系统快速开发平台 | |
CN102289428A (zh) | 一种批量生成表单的方法和装置 | |
CN109684189A (zh) | 区块链智能合约的逻辑验证方法和装置及计算机存储介质 | |
KR20180135654A (ko) | 프로그램의 직관적 제작방법 | |
CN116578294A (zh) | 一种基于Python的人工智能算法工具箱设计方法 | |
Folli et al. | Refactoring of UML models using AGG | |
CN107621939A (zh) | 一种应用优化方法及装置 | |
Caffiau et al. | Generating interactive applications from task models: A hard challenge |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170620 |
|
RJ01 | Rejection of invention patent application after publication |