CN108280291A - 可重用仿真模型接口设计与对接方法、装置和计算机设备 - Google Patents
可重用仿真模型接口设计与对接方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN108280291A CN108280291A CN201810060394.8A CN201810060394A CN108280291A CN 108280291 A CN108280291 A CN 108280291A CN 201810060394 A CN201810060394 A CN 201810060394A CN 108280291 A CN108280291 A CN 108280291A
- Authority
- CN
- China
- Prior art keywords
- model
- file
- simulation
- simulation model
- tree
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种可重用仿真模型接口设计与对接方法、装置、介质和计算机设备,该方法包括:从工作空间获取仿真模型头文件或模型描述文件,根据仿真模型头文件或模型描述文件生成仿真模型框架;根据仿真模型框架生成仿真模型树在模型操作界面进行显示;接收对应仿真模型树输入的模型修改数据,根据模型修改数据对仿真模型框架进行修改,得到重用仿真模型;当接收到对应仿真模型树输入的数据输出指令时,根据重用仿真模型得到模型文件并在模型操作界面显示。通过提供可视化的模型编辑界面进行模型数据的编辑操作,可以快速构建生成可重用仿真模型的框架,让模型开发人员不必过分关注可重用模型开发规范的代码细节,而可以把更多的精力放在模型功能开发,提高了模型的设计和对接效率以及可重用性。
Description
技术领域
本发明涉及计算机仿真模型设计技术领域,特别是涉及一种可重用仿真模型接口设计与对接方法、装置和计算机设备。
背景技术
随着科技的快速发展,系统的复杂程度越来越高,为解决复杂系统建模分析时对其各模型重复利用、信息保密等问题和系统内各模型进行接口对接和确定,需要有一种基于可重用的仿真模型接口设计与对接方法。在复杂系统仿真应用中往往要求仿真是可演进的,即随着设计的深入,前一阶段的仿真模型能够在后一阶段继续使用或重用。仿真模型重用与对接也是当前仿真领域的热点和难点问题之一。
随着的发展,传统的模型开发方法是采用HLA(High Level Architecture,高层体系结构)分布仿真技术,利用对象模型开发工具(Object Model Development Tool,OMDT)进行仿真模型的设计,而OMDT软件普遍采用表单化设计,使用不便,在模型的重用上需要耗费大量的时间,相关的模型文档也得不到很好的管理,模型间的链接也很难实现,传统的模型开发方法存在模型对接效率低、难以重用等缺点。
发明内容
基于此,有必要针对上述问题,提供一种对接效率高的可重用仿真模型接口设计与对接方法、装置和计算机设备。
一种可重用仿真模型接口设计与对接方法,包括以下步骤:
从工作空间获取仿真模型头文件或模型描述文件,根据所述仿真模型头文件或所述模型描述文件生成仿真模型框架;
根据所述仿真模型框架生成仿真模型树在模型操作界面进行显示;
接收对应所述仿真模型树输入的模型修改数据,根据所述模型修改数据对所述仿真模型框架进行修改,得到重用仿真模型;
当接收到对应所述仿真模型树输入的数据输出指令时,根据重用仿真模型得到模型文件并在所述模型操作界面显示。
一种可重用仿真模型接口设计与对接装置,包括:
模型导入模块,用于从工作空间获取仿真模型头文件或模型描述文件,根据所述仿真模型头文件或所述模型描述文件生成仿真模型框架;
仿真模型树显示模块,用于根据所述仿真模型框架生成仿真模型树在模型操作界面进行显示;
仿真模型修改模块,用于接收对应所述仿真模型树输入的模型修改数据,根据所述模型修改数据对所述仿真模型框架进行修改,得到重用仿真模型;
模型数据输出模块,用于当接收到对应所述仿真模型树输入的数据输出指令时,根据重用仿真模型得到模型文件并在所述模型操作界面显示。
上述可重用仿真模型接口设计与对接方法和装置,通过提供可视化的模型编辑界面可以使得模型开发人员可直接根据界面显示的仿真模型树进行模型数据的编辑操作,可以快速构建生成可重用仿真模型的框架,让模型开发人员不必过分关注可重用模型开发规范的代码细节,而可以把更多的精力放在模型功能开发,与传统的模型开发方法相比,提高了模型的设计和对接效率以及可重用性。
一种计算机可读存储介质,存储有计算机程序,存储的计算机程序被处理器执行时实现上述方法的步骤。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
上述计算机存储介质和计算机设备,通过提供可视化的模型编辑界面可以使得模型开发人员可直接根据界面显示的仿真模型树进行模型数据的编辑操作,可以快速构建生成可重用仿真模型的框架,让模型开发人员不必过分关注可重用模型开发规范的代码细节,而可以把更多的精力放在模型功能开发,与传统的模型开发方法相比,提高了模型的设计和对接效率以及可重用性。
附图说明
图1为一实施例中可重用仿真模型接口设计与对接方法的流程图;
图2为另一实施例中可重用仿真模型接口设计与对接方法的流程图;
图3为一实施例中可重用仿真模型接口设计与对接装置的结构图;
图4至图7为一实施例中修改仿真模型框架的界面流程示意图;
图8至图24为一实施例中设计仿真模型框架的界面流程示意图。
具体实施方式
在一个实施例中,一种可重用仿真模型接口设计与对接方法,如图1所示,包括以下步骤:
步骤S120:从工作空间获取仿真模型头文件或模型描述文件,根据仿真模型头文件或模型描述文件生成仿真模型框架。
工作空间用于存储已有模型框架的仿真模型头文件和模型描述文件,可通过保存的存储链接找到工作空间,并从工作空间中获取仿真模型头文件或模型描述文件,根据获取的文件构建仿真模型框架。
步骤S130:根据仿真模型框架生成仿真模型树在模型操作界面进行显示。
仿真模型树用于展示仿真模型框架的架构和模型状态,根据仿真模型框架的类型不同,生成的仿真模型树的结构也会对应有所不同,在一个实施例中,仿真模型树的子节点包括模型基本信息、宏定义、自定义数据类型、模型成员变量、初始化参数表、输入参数表、输出参数表和工作参数表。模型基本信息包括模型的英文名称、中文名称、运行环境等基本信息。自定义数据类型包括struct(结构)、enum(枚举)、union(联合)等。
步骤S150:接收对应仿真模型树输入的模型修改数据,根据模型修改数据对仿真模型框架进行修改,得到重用仿真模型。
具体地,用户可通过点击仿真模型树相应的节点,在模型操作界面弹出的编辑页面中输入模型数据信息。在“模型基本信息”中可编辑模型名称、功能、调用时机、版本号等模型基本信息;在“宏定义”中可编辑模型宏定义信息;在“模型成员变量”中可编辑模型成员变量信息;在“初始化参数表”中可创建初始化参数表(如果有多个参数,则多次创建),一个初始化参数对应一个结构类型;在“输入参数表”中同样可创建输入参数;在“输出参数表”中同样可创建输出参数;在“工作参数表”中同样可创建工作参数。以编辑模型基本信息为例,在用户点击仿真模型树中的“模型基本信息”节点后,模型操作界面弹出模型基本信息编辑页面,以供用户对模型基本信息进行编辑。
本实施例中,结合可重用仿真模型开发规范(ReUsable Model developmentspecification,RUM)进行模型接口设计从而得到可重用仿真模型。可重用仿真模型开发规范是一种基于标准C++语言的仿真模型可重用开发规范,对仿真模型接口描述、代码结构、执行流程、产品形式及开发注意事项等进行了详细描述,可用于指导模型开发者规范、快速的开发可重用仿真模型。
此外,在对仿真模型树的模型数据信息编辑后,可以得到可重用仿真模型文件及对应模型描述文件、设计文件和公共数据接口文件。并且可以将可重用仿真模型的模型文件及对应模型描述文件、设计文件和公共数据接口文件进行保存,以免下次调用再次进行重新设计,提高了使用便利性。
步骤S160:当接收到对应仿真模型树输入的数据输出指令时,根据重用仿真模型得到模型文件并在模型操作界面显示。
具体地,可重用仿真模型的模型文件可以在相应仿真模型树中的“模型文件”节点下的目录进行显示,用户同样可通过点击“模型文件”节点下的具体模型文件对其进行提取,以便用户查看。模型文件指可重用仿真模型的模型相关文件,具体可包括:模型文件及对应模型描述文件、设计文件和公共数据接口文件。
步骤S160之后,该方法还可包括根据模型文件进行模型封装得到封装文件的步骤。对应地,根据可重用仿真模型的模型头文件、模型实现文件和模型配置文件进行模型封装,形成封装文件以便模型的重用工作,封装文件具体可以是Windows或Linux库文件。
上述可重用仿真模型接口设计与对接方法,通过提供可视化的模型操作界面显示用作进行仿真模型新建,模型开发人员可直接根据界面显示的仿真模型树进行模型数据信息的录入操作,可以快速构建生成可重用仿真模型的框架,让模型开发人员不必过分关注可重用模型的代码规范细节,而可以把更多的精力放在模型功能开发,与传统的模型开发方法相比,提高了可重用模型的对接集成效率。
在一个实施例中,如图2所示,步骤S130之后,步骤S150之前,该方法还包括步骤S140。
步骤S140:当接收到对应仿真模型树输入的状态显示指令时,获取仿真模型框架的属性参数进行显示。
具体地,用户可通过点击仿真模型树中相应的节点完成状态显示指令的输入,在模型操作界面弹出的编辑页面中显示仿真模型框架的属性参数。同样以显示模型基本信息为例,在用户点击仿真模型树中的“模型基本信息”节点后,在模型操作界面弹出模型基本信息编辑页面中显示仿真模型框架的模型基本信息。用户可根据显示的信息决定是否需要进行数据修改,对于无需修改的数据则不需要输入模型修改数据,提高了设计便利性。
在一个实施例中,继续参照图2,步骤S120之前,该方法还包括以下步骤:
步骤S110:检测工作空间是否存储有仿真模型头文件或模型描述文件。
同样可先通过保存的存储链接找到工作空间,先检测工作空间是否存储有仿真模型头文件或模型描述文件,若是,则进行步骤S120,生成仿真模型框架进行模型重用设计;否则进行步骤S170,进行新建模型操作。
此外,步骤S110之前,该方法还可包括检测是否保存有存储链接的步骤。具体可以是在用户点击桌面图标启动程序之后检测是否保存有存储链接;若是,则进行步骤S110;若否,则输出工作空间设置提示信息,提醒用户设置工作空间以便保存数据。
步骤S170:生成空白模型树在模型操作界面进行显示。
可根据预存的模型信息生成空白模型树,以供用户导入数据进行新建模型操作。可以是在检测工作空间未存储有仿真模型头文件和模型描述文件之后直接在模型操作界面显示空白模型树,也可以是接收到用户在模型操作界面输入的新建指令之后,在模型操作界面显示空白模型树。
步骤S180:接收对应空白模型树输入的模型设置数据,根据模型设置数据进行模型设计,得到仿真模型框架进行保存。
同样的,用户可通过点击空白模型树的子节点,在模型操作界面弹出的对应编辑页面中输入模型设置数据。接收用户输入的模型设置数据后,通过模型解算操作接口结合模型设置数据和可重用仿真模型开发规范进行模型设计,得到仿真模型框架,并将仿真模型框架的模型文件如模型定义文件、模型实现文件、模型配置文件等保存至工作空间,以便下次进行模型读取和重用。
可以理解,空白模型树的具体结构并不唯一,模型设置数据的种类也会对应有所不同。在一个实施例中,模型设置数据包括模型基本信息、宏定义、自定义数据类型、模型成员变量、参数表和模型对外交互关系。其中,参数表包括初始化参数表、输入参数表、输出参数表和工作参数表。此外,还可以在“模型对外交互关系”中编绘模型对外交互关系图。
本发明还提供了一种可重用的仿真模型的开发方法,其包括以下步骤:
步骤210:检测工作空间发现存储有仿真模型头文件或模型描述文件。
步骤220:从工作空间获取仿真模型头文件或模型描述文件,将仿真模型中的宏定义、模型成员变量、初始化参数、输入参数、输出参数、工作参数、数据结构类型等信息加载到对应仿真模型树的相应子节点。
步骤230:对仿真模型树的子节点“模型基本信息”进行编辑,并可对子节点“初始化参数表””、“输入参数表”、“输出参数表”、“工作参数表”中各模型数据相应信息进行修改。此外,还可以在“模型对外交互关系”中编绘模型对外交互关系图。
步骤240:在对仿真模型树的模型数据信息编辑修改后,保存并得到可重用仿真模型文件及对应模型描述文件、设计文件和公共数据接口文件。
在一个实施例中,一种可重用仿真模型接口设计与对接装置,如图3所示,包括模型导入模块120、仿真模型树显示模块130、仿真模型修改模块150和模型数据输出模块160。
模型导入模块120用于从工作空间获取仿真模型头文件或模型描述文件,根据仿真模型头文件或模型描述文件进行模型导入得到仿真模型框架。
仿真模型树显示模块130用于根据仿真模型框架生成仿真模型树在模型操作界面进行显示。
在一个实施例中,仿真模型树的子节点包括模型基本信息、宏定义、自定义数据类型、模型成员变量、初始化参数表、输入参数表、输出参数表和工作参数表。
仿真模型修改模块150用于接收对应仿真模型树输入的模型修改数据,根据模型修改数据对仿真模型框架进行修改,得到重用仿真模型。
模型数据输出模块160用于当接收到对应仿真模型树输入的数据输出指令时,根据重用仿真模型得到模型文件并在模型操作界面显示。
模型数据输出模块160还可用于根据模型文件进行模型封装得到封装文件。对应地,根据可重用仿真模型的模型头文件、模型实现文件和模型配置文件进行模型封装,形成封装文件以便模型的重用工作,封装文件具体可以是Windows或Linux库文件。
上述可重用仿真模型接口设计与对接装置,通过提供可视化的模型操作界面显示用作进行仿真模型新建,模型开发人员可直接根据界面显示的仿真模型树进行模型数据信息的录入操作,可以快速构建生成可重用仿真模型的框架,让模型开发人员不必过分关注可重用模型的代码规范细节,而可以把更多的精力放在模型功能开发,与传统的模型开发方法相比,提高了可重用模型的对接集成效率。
在一个实施例中,该装置还包括属性参数显示模块。属性参数显示模块用于在模型树显示模块130根据仿真模型框架生成仿真模型树在模型操作界面进行显示之后,仿真模型修改模块150接收对应仿真模型树输入的模型修改数据,根据模型修改数据对仿真模型框架进行修改,得到重用仿真模型之前,当接收到对应仿真模型树输入的状态显示指令时,获取仿真模型框架的属性参数进行显示。
在一个实施例中,该装置还包括模型文件检测模块、空白模型树显示模块和仿真模型设置模块。
模型文件检测模块用于在模型导入模块120从工作空间获取仿真模型头文件或模型描述文件,根据仿真模型头文件或模型描述文件生成仿真模型框架之前,检测工作空间是否存储有仿真模型头文件或模型描述文件;若是,则控制模型导入模块120从工作空间获取仿真模型头文件或模型描述文件。
模型文件检测模块检测工作空间是否存储有仿真模型头文件或模型描述文件之前,还检测是否保存有存储链接,若是,则检测工作空间是否存储有仿真模型头文件或模型描述文件;若否,则输出工作空间设置提示信息,提醒用户设置工作空间以便保存数据。
空白模型树显示模块用于当工作空间未存储仿真模型头文件和模型描述文件时,生成空白模型树在模型操作界面进行显示。
仿真模型设置模块用于接收对应空白模型树输入的模型设置数据,根据模型设置数据进行模型设计,得到仿真模型框架进行保存。
本实施例中,空白模型树的子节点同时包括模型基本信息、宏定义、自定义数据类型、模型成员变量、参数表和模型对外交互关系,用户可通过点击相应子节点,在弹出的编辑页面导入对应的数据。
在一个实施例中,一种计算机可读存储介质,存储有计算机程序,其特征在于,存储的计算机程序被处理器执行时实现上述方法的步骤。
在一个实施例中,一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述方法的步骤。
上述计算机可读存储介质和计算机设备,通过提供可视化的模型操作界面显示用作进行仿真模型修改,模型开发人员可直接根据界面显示的仿真模型树进行模型修改数据的录入操作,可以快速构建生成重用仿真模型的框架,让模型开发人员不必过分关注可重用模型规范的代码细节,而可以把更多的精力放在模型功能开发,与传统的模型开发方法相比,提高了可重用模型的设计效率。
为便于更好地理解上述可重用仿真模型接口设计与对接方法,下面结合具体实施例进行详细的解释说明。
可重用仿真模型接口设计与对接方法用于对可重用仿真模型进行设计开发及封装,基于标准C++语言的仿真模型RUM规范,利用可视化技术主要对仿真模型接口描述、代码结构、执行流程、产品形式及开发注意事项等进行了详细设计。
由于仿真模型在设计上采用“面向服务”的思想,在具体实现上表现为模型的服务接口。仿真模型一般采用面向对象程序设计方法,能够作为独立的服务实体被存储、管理和运行。因此,可重用仿真模型接口设计与对接方法规定了模型与外界交互的标准操作(服务)接口,包括模型导入操作、参数输入操作、模型状态恢复操作、工作参数及状态调整操作(如果需要)、数据输出操作、模型状态获取操作和模型解算操作共七种标准操作。利用可重用仿真模型接口设计与对接方法开发或封装生成的仿真模型将是一个独立的服务实体,与外界进行信息交互的唯一方式就是通过“服务接口”实施。在模型的内部禁止对外界的直接访问,同时也禁止外界对模型内部信息的直接访问(在不影响可重用的前提下,模型开发方可自定义相应的接口,分别用于直接从文件中获取模型配置数据,以及地理、电磁、气候等环境数据)。仿真模型定义的每一类服务接口由一个或多个重载的接口函数构成。模型参数可以是简单数据类型或自定义数据类型,模型参数按照接口类型可分为三类:初始化变量、输入变量、输出变量,分别与接口对应。其中,初始化变量和输入变量从信息传输方向上属于从外界到模型内部,但是它们在模型的物理意义和信息使用时机上有一定区别:初始化变量一般对应实体模型的一些属性变量、性能指标、结构参数等,在一次仿真运行中只需赋值一次;而输入变量则是模型解算时需要外界提供的(如其它模型的输出)数据信息,在一次仿真过程中往往不只一次。另外,对于初始化变量和输入变量,模型在使用时只需运行读取操作,而不能执行修改操作。该方法按照上述设置将仿真模型所定义的七个外部服务接口方法均在模型基类CSimuModel中定义为虚方法,用户在具体的仿真模型类中只需重载服务接口并定义自己的成员变量,功能函数等,以辅助实现外部服务接口的逻辑处理功能。
模型输入数据操作主要负责在仿真系统运行期间,对模型内部的输入变量进行赋值。模型解算操作接口主要负责实现模型所有的动作、逻辑判断、行为控制等功能。调度方程序在调用相应模型解算操作接口之前,需要调用模型输入参数设置操作接口对模型内部变量进行赋值。模型解算函数根据变量的当前值,做出相应的逻辑行为处理。获取仿真状态的接口以及状态数据时,如需要对模型状态进行保存的状态参数,可以采用可回滚机制数据类型来保存仿真模型的状态数据。模型输出数据接口主要负责获取模型解算之后的输出数据。在模型解算方法执行完毕之后,作为结果会把各种输出数据保存在输出缓冲区中,同时,如果有错误,报出错误所在的模型或对象ID、模型名称、错误类型和错误描述。调用该接口可以从输出缓冲区读取输出数据。开发完成的仿真模型源代码应包括:模型定义文件(*.h)、模型实现文件(*.cpp)、模型配置文件(*.pzw)等。在此基础上,可以对模型进行封装,形成Windows或Linux库文件。
根据上述设计思路,本方法使用流程如下。
本方法的程序实现主界面如图4所示,通过自动搜索相应工作空间目录及其下一级子目录,寻找.mos(模型描述文件)文件,找到后作为已有模型生成到左边模型树下。如果没找到,则模型树下没有模型。
左边模型树的组织结构(目录形式,用+、-号收缩、展开)包括:
模型(用户将鼠标放在此位置,按右键,弹出“新建模型”菜单,与“文件”菜单项下的一致,还可弹出“删除”菜单删除此模型。注意:软件中所有删除操作需二次确认),每个模型下面又包括:
模型基本信息(鼠标点击,右边显示模型基本信息编辑界面)自定义数据类型(鼠标点击,右边显示模型自定义数据类型,如结构,枚举等)的编辑页面如图5所示。模型成员变量(鼠标点击,右边显示模型成员变量定义编辑界面)的编辑页面如图6所示。初始化函数、输入函数、输出函数、工作参数设置函数(鼠标点击,右边显示函数参数定义界面)的编辑页面如图7所示。
如果用户已按可重用仿真模型开发规范开发好了仿真模型,通过本方法可以生成对应的模型描述文件,完成后即可生成模型描述文件(.mos)、模型详细设计文档等。仿真模型已设计(.mos文件已存在),用户使用本方法可以进行模型功能及接口设计的修改,完成后即可重新生成模型详细设计文档、模型描述文件(.mos)、模型定义头文件(.h)、ComDataInterface.h及模型接口代码源文件(.cpp)等。
本方法模型新建流程如下。
1.启动程序
界面启动之后,会自动加载工作空间中的模型文件夹,一个模型文件夹中包含有模型相关的cpp头文件和源文件,模型设计文档,模型对外交互关系图,和模型描述文件(.mos)文件,注意一个模型文件夹中只能有一个.mos文件,如有多个,则不能保证模型信息的一致性,此种情况下,程序将不会加载该文件夹中的内容。如图8所示为加载工作空间中的模型文件夹后的界面示意图。
2.工作空间设置
如图9所示为设置工作空间的界面示意图,程序启动时,如果发现未配置模型工作空间位置,会弹出如下窗口提示用户设置工作空间。如果设为默认工作空间,程序会保存该工作空间位置,并在下次启动时自动加载该工作空间的模型内容,否则下次启动时仍会提示用户设置工作空间。如果在使用过程中需要更换工作空间,可以通过:菜单栏--->文件--->设置工作空间,来进行设置。
3.新建和导入
可以在:菜单栏-->文件,新建或添加模型,如图10所示。
“新建”:新建一个空模型
“从模型描述文件导入”:从.mos文件中解析模型信息,并导入到工作空间。
“从头文件导入”:从.h文件中解析模型信息,并导入到工作空间。
新建模型也可以选中界面左侧“工作空间”,鼠标点击右键,选择“新建”来新建模型,如图11所示。
4.配置模型信息
通过展开目标模型的树形结构,双击树形结构的叶子节点,树形结构右边会显示对应的编辑页面。
a)“模型基本信息”编辑页面
如图12所示为模型基本信息编辑页面的界面示意图,模型基本信息包括模型的英文名称,中文名称,运行环境等基本信息,可供模型使用者参考。双击“模型基本信息”,开始配置模型的基本信息。要将保存刚才的修改,则点击编辑界面上方的保存修改按钮。
b)“宏定义”编辑页面
如图13所示为宏定义编辑页面的界面示意图。在此页面中添加模型需要用到的宏定义,和模型文件需要包含的额外头文件。
c)“自定义数据类型”编辑页面
如图14为自定义数据类型编辑页面的界面示意图。在此页面可以添加自定义的cpp复合类型,包括struct(结构),enum(枚举),union(联合)。如图15中选中InitFixedWingMotion一行,鼠标点击右键,选择“展开选中复合类型编辑窗口”,由于该自定义类型是一个cpp结构体,所以会弹出如图16所示的结构体编辑窗口。如果在关闭图15所示的复合类型编辑窗口时发现有未保存的内容,将会弹出提示窗口,提示用户保存修改。
类似的,如果选中的行是enum(枚举)或union(联合),则分别会弹出如图16所示的枚举编辑窗口和图17所示的联合编辑窗口。
d)“模型成员变量”编辑界面
如图18所示为模型成员变量编辑界面的界面示意图,可添加模型需要使用到的成员变量。
e)“参数表”节点
参数表节点包括:初始化参数表,输入参数表,输出参数表,工作参数表。一个参数表实际上是对一个满足RUM规范的模型的一个公共接口的多个重载,RUM规范规定的可重载函数名包括Initialize,SetInputData,GetOutputData和SetWorkingPara。例如初始化参数表对应了一个满足RUM规范的模型的Initialize函数接口,用户可以选中该节点,点击右键选中“新建”,添加一个该函数的重载。这些参数表除了配置的对象函数不同外,其他操作是一致的,下面用如图19所示的初始化参数表的使用做说明。图19中初始化参数表的配置对应的是Initialize(vector<InitFixedWingMotion*>*initProperty)函数,RUM规范规定参数的类型只能是vector<xxx*>*或xxx*类型,其中xxx是一个结构体,在界面的“变量类型”中可进行选择,可以通过“数据类型”设置参数的是哪种结构。这里选择的结构可以是之前通过自定义数据类型配置好的,也可以是直接通过在页面的“数据类型”下拉框中选择“新建结构”来新建一个结构,对于选中的或新建的数据类型,在编辑页面下方可以对选中的数据类型做编辑修改,由于自定义数据类型变量是全局的,所以这里的修改会反映到其他需要使用到数据类型的地方。
在编辑页面的成员变量表中,可以定义此函数形参的结构类型成员变量的大小限制等信息,如果配置了,则这些信息会与此处定义的函数重载绑定,在生成代码时,会生成相应的验证函数,来验证形参成员变量是否满足大小限制条件。
f)模型对外交互关系图
模型对外交互关系图可以用图形的方式,形象的展示模型的与外界的交互关系。模型对外交互关系图编辑窗口可以点击“模型基本信息”编辑页面上方的“编辑模型对外交互关系”呼出。编辑界面如图20所示。
双击窗口内的空白处,可以添加新的交互对象,选中交互对象,点击右键,可以添加该对象到模型的交互关系,如图21所示。
双击新添加的输入(输出)关系边,可以编辑此边代表的交互关系的详细内容,编辑窗口如图22所示。
5.保存模型
保存模型会生成模型描述文件(.mos),模型的头文件和源文件,模型设计文档。例如在上述的FixedWingMotionModel的例子中,就生成了如图23所示的文档。
要保存一个模型,可以在选中树形结构中的某个模型树形中任意节点的情况下,选择菜单栏的“文件”-->“保存”,也可以选中一个模型树形结构的“模型文件”节点,鼠标点击右键,来生成模型文件,此操作实际上就是保存文件,用户可以双击“模型文件”的子节点,查看具体的文件内容,如图24所示。
若仿真模型未设计,用户可使用本方法进行模型功能及接口设计,完成后即可生成模型详细设计文档、模型描述文件(.mos)、模型定义头文件(.h)、ComDataInterface.h及模型接口代码源文件(.cpp)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种可重用仿真模型接口设计与对接方法,其特征在于,包括以下步骤:
从工作空间获取仿真模型头文件或模型描述文件,根据所述仿真模型头文件或所述模型描述文件生成仿真模型框架;
根据所述仿真模型框架生成仿真模型树在模型操作界面进行显示;
接收对应所述仿真模型树输入的模型修改数据,根据所述模型修改数据对所述仿真模型框架进行修改,得到重用仿真模型;
当接收到对应所述仿真模型树输入的数据输出指令时,根据重用仿真模型得到模型文件并在所述模型操作界面显示。
2.根据权利要求1所述的可重用仿真模型接口设计与对接方法,其特征在于,所述仿真模型树的子节点包括模型基本信息、宏定义、自定义数据类型、模型成员变量、初始化参数表、输入参数表、输出参数表和工作参数表。
3.根据权利要求1所述的可重用仿真模型接口设计与对接方法,其特征在于,所述根据所述仿真模型框架生成仿真模型树在模型操作界面进行显示之后,所述接收对应所述仿真模型树输入的模型修改数据,根据所述模型修改数据对所述仿真模型框架进行修改,得到重用仿真模型之前,还包括以下步骤:
当接收到对应所述仿真模型树输入的状态显示指令时,获取所述仿真模型框架的属性参数进行显示。
4.根据权利要求1所述的可重用仿真模型接口设计与对接方法,其特征在于,所述从工作空间获取仿真模型头文件或模型描述文件,根据所述仿真模型头文件或所述模型描述文件生成仿真模型框架之前,还包括以下步骤:
检测工作空间是否存储有仿真模型头文件或模型描述文件;
若是,则进行所述从工作空间获取仿真模型头文件或模型描述文件,根据所述仿真模型头文件或所述模型描述文件生成仿真模型框架的步骤;
若否,则生成空白模型树在模型操作界面进行显示;
接收对应所述空白模型树输入的模型设置数据,根据所述模型设置数据进行模型设计,得到仿真模型框架进行保存。
5.根据权利要求4所述的可重用仿真模型接口设计与对接方法,其特征在于,所述模型设置数据包括模型基本信息、宏定义、自定义数据类型、模型成员变量、参数表和模型对外交互关系。
6.一种可重用仿真模型接口设计与对接装置,其特征在于,包括:
模型导入模块,用于从工作空间获取仿真模型头文件或模型描述文件,根据所述仿真模型头文件或所述模型描述文件生成仿真模型框架;
仿真模型树显示模块,用于根据所述仿真模型框架生成仿真模型树在模型操作界面进行显示;
仿真模型修改模块,用于接收对应所述仿真模型树输入的模型修改数据,根据所述模型修改数据对所述仿真模型框架进行修改,得到重用仿真模型;
模型数据输出模块,用于当接收到对应所述仿真模型树输入的数据输出指令时,根据重用仿真模型得到模型文件并在所述模型操作界面显示。
7.根据权利要求6所述的可重用仿真模型接口设计与对接装置,其特征在于,还包括属性参数显示模块,
所述属性参数显示模块用于在所述模型树显示模块根据所述仿真模型框架生成仿真模型树在模型操作界面进行显示之后,所述仿真模型修改模块接收对应所述仿真模型树输入的模型修改数据,根据所述模型修改数据对所述仿真模型框架进行修改,得到重用仿真模型之前,当接收到对应所述仿真模型树输入的状态显示指令时,获取所述仿真模型框架的属性参数进行显示。
8.根据权利要求6所述的可重用仿真模型接口设计与对接装置,其特征在于,还包括:
模型文件检测模块,用于在所述模型导入模块从工作空间获取仿真模型头文件或模型描述文件,根据所述仿真模型头文件或所述模型描述文件生成仿真模型框架之前,检测工作空间是否存储有仿真模型头文件或模型描述文件;若是,则控制所述模型导入模块从工作空间获取仿真模型头文件或模型描述文件;
空白模型树显示模块,用于当工作空间未存储仿真模型头文件和模型描述文件时,生成空白模型树在模型操作界面进行显示;
仿真模型设置模块,用于接收对应所述空白模型树输入的模型设置数据,根据所述模型设置数据进行模型设计,得到仿真模型框架进行保存。
9.一种计算机可读存储介质,存储有计算机程序,其特征在于,存储的计算机程序被处理器执行时实现如权利要求1-5中任一项所述方法的步骤。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810060394.8A CN108280291A (zh) | 2018-01-22 | 2018-01-22 | 可重用仿真模型接口设计与对接方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810060394.8A CN108280291A (zh) | 2018-01-22 | 2018-01-22 | 可重用仿真模型接口设计与对接方法、装置和计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108280291A true CN108280291A (zh) | 2018-07-13 |
Family
ID=62804521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810060394.8A Withdrawn CN108280291A (zh) | 2018-01-22 | 2018-01-22 | 可重用仿真模型接口设计与对接方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108280291A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109657360A (zh) * | 2018-12-21 | 2019-04-19 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向gpu芯片硬件架构的建模方法及视图系统 |
CN110069876A (zh) * | 2019-04-29 | 2019-07-30 | 北京世冠金洋科技发展有限公司 | 一种实验管理方法及装置 |
CN110796265A (zh) * | 2019-10-29 | 2020-02-14 | 深圳前海微众银行股份有限公司 | 决策树模型的交互式操作方法、装置、终端设备及介质 |
CN111124897A (zh) * | 2019-12-06 | 2020-05-08 | 北京京航计算通讯研究所 | 一种可重用仿真接口模型的生成方法 |
CN111124790A (zh) * | 2019-12-06 | 2020-05-08 | 北京京航计算通讯研究所 | 一种可重用仿真接口模型的生成系统 |
CN111459621A (zh) * | 2020-04-10 | 2020-07-28 | 中国人民解放军国防科技大学 | 云仿真集成与调度方法、装置、计算机设备和存储介质 |
CN111985055A (zh) * | 2020-08-28 | 2020-11-24 | 北京世冠金洋科技发展有限公司 | 一种模型封装方法、装置及电子设备 |
CN112559643A (zh) * | 2020-12-21 | 2021-03-26 | 北京仿真中心 | 一种仿真实体模型描述方法 |
CN112861456A (zh) * | 2021-01-29 | 2021-05-28 | 中国电子科技集团公司第二十九研究所 | 工艺ip仿真模型封装及库管理方法及系统、存储介质 |
CN113076631A (zh) * | 2021-03-22 | 2021-07-06 | 广东博智林机器人有限公司 | 一种机器人模拟器生成方法、机器人模型仿真方法及装置 |
CN113420045A (zh) * | 2021-07-21 | 2021-09-21 | 中睿信数字技术有限公司 | 一种基于交互式分析的技战法模型构建方法及系统 |
CN114692431A (zh) * | 2022-04-25 | 2022-07-01 | 中电普信(北京)科技发展有限公司 | 一种避免仿真模型库膨胀提高模型重用度的方法 |
CN116644580A (zh) * | 2023-05-29 | 2023-08-25 | 苏州异格技术有限公司 | 一种电子产品模型设计自动化方法、装置、设备和介质 |
-
2018
- 2018-01-22 CN CN201810060394.8A patent/CN108280291A/zh not_active Withdrawn
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109657360A (zh) * | 2018-12-21 | 2019-04-19 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向gpu芯片硬件架构的建模方法及视图系统 |
CN110069876A (zh) * | 2019-04-29 | 2019-07-30 | 北京世冠金洋科技发展有限公司 | 一种实验管理方法及装置 |
CN110796265A (zh) * | 2019-10-29 | 2020-02-14 | 深圳前海微众银行股份有限公司 | 决策树模型的交互式操作方法、装置、终端设备及介质 |
CN110796265B (zh) * | 2019-10-29 | 2024-01-30 | 深圳前海微众银行股份有限公司 | 决策树模型的交互式操作方法、装置、终端设备及介质 |
CN111124897B (zh) * | 2019-12-06 | 2023-01-10 | 北京京航计算通讯研究所 | 一种可重用仿真接口模型的生成方法 |
CN111124790B (zh) * | 2019-12-06 | 2023-01-10 | 北京京航计算通讯研究所 | 一种可重用仿真接口模型的生成系统 |
CN111124897A (zh) * | 2019-12-06 | 2020-05-08 | 北京京航计算通讯研究所 | 一种可重用仿真接口模型的生成方法 |
CN111124790A (zh) * | 2019-12-06 | 2020-05-08 | 北京京航计算通讯研究所 | 一种可重用仿真接口模型的生成系统 |
CN111459621A (zh) * | 2020-04-10 | 2020-07-28 | 中国人民解放军国防科技大学 | 云仿真集成与调度方法、装置、计算机设备和存储介质 |
CN111459621B (zh) * | 2020-04-10 | 2023-03-28 | 中国人民解放军国防科技大学 | 云仿真集成与调度方法、装置、计算机设备和存储介质 |
CN111985055A (zh) * | 2020-08-28 | 2020-11-24 | 北京世冠金洋科技发展有限公司 | 一种模型封装方法、装置及电子设备 |
CN111985055B (zh) * | 2020-08-28 | 2023-08-08 | 北京世冠金洋科技发展有限公司 | 一种模型封装方法、装置及电子设备 |
CN112559643A (zh) * | 2020-12-21 | 2021-03-26 | 北京仿真中心 | 一种仿真实体模型描述方法 |
CN112861456A (zh) * | 2021-01-29 | 2021-05-28 | 中国电子科技集团公司第二十九研究所 | 工艺ip仿真模型封装及库管理方法及系统、存储介质 |
CN113076631A (zh) * | 2021-03-22 | 2021-07-06 | 广东博智林机器人有限公司 | 一种机器人模拟器生成方法、机器人模型仿真方法及装置 |
CN113420045A (zh) * | 2021-07-21 | 2021-09-21 | 中睿信数字技术有限公司 | 一种基于交互式分析的技战法模型构建方法及系统 |
CN114692431A (zh) * | 2022-04-25 | 2022-07-01 | 中电普信(北京)科技发展有限公司 | 一种避免仿真模型库膨胀提高模型重用度的方法 |
CN116644580A (zh) * | 2023-05-29 | 2023-08-25 | 苏州异格技术有限公司 | 一种电子产品模型设计自动化方法、装置、设备和介质 |
CN116644580B (zh) * | 2023-05-29 | 2024-01-19 | 苏州异格技术有限公司 | 一种电子产品模型设计自动化方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108280291A (zh) | 可重用仿真模型接口设计与对接方法、装置和计算机设备 | |
US20220197454A1 (en) | User interface logical and execution view navigation and shifting | |
Viyović et al. | Sirius: A rapid development of DSM graphical editor | |
US7865350B1 (en) | Partitioning a model in modeling environments | |
US7567890B1 (en) | Conversion of model components into references | |
US7523440B2 (en) | Dynamic generation of formatted user interfaces in software environments | |
US9274761B1 (en) | Dual programming interface | |
EP3163436A1 (en) | Visual software modeling method based on software meta-view for constructing software view | |
JP2006107478A (ja) | ワークフローを設計するための拡張可能フレームワーク | |
US20070156374A1 (en) | Complex process modeling and simulation system and method | |
CA2952088A1 (en) | Software element model-based universal software modeling method fot constructing software model | |
US11775142B2 (en) | Preferential automation view curation | |
US20120060141A1 (en) | Integrated environment for software design and implementation | |
Oliveira Junior et al. | SMartySPEM: a SPEM-based approach for variability management in software process lines | |
Lumertz et al. | User interfaces metamodel based on graphs | |
US7412367B1 (en) | Transparent subsystem links | |
CN102081521B (zh) | 一种通用的武器装备操作界面开发平台 | |
CN104778323A (zh) | 集成多源性能分析数据的复杂装备作业流程仿真方法 | |
CN101976196B (zh) | 一种面向“服务质量”的代码自动生成方法 | |
Rieder et al. | A methodology to specify three-dimensional interaction using Petri Nets | |
CN112784417A (zh) | 一种基于SysML的航电分布式联合仿真方法及系统 | |
Davis | System testing: Implications of requirements specifications | |
Caffiau et al. | Generating interactive applications from task models: A hard challenge | |
Rath et al. | Declarative specification of domain specific visual languages | |
Sulistyo et al. | Recursive modeling for completed code generation |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20180713 |