CN103942086B - 基于aadl的创建、分析和仿真混成系统模型的方法 - Google Patents

基于aadl的创建、分析和仿真混成系统模型的方法 Download PDF

Info

Publication number
CN103942086B
CN103942086B CN201410037932.3A CN201410037932A CN103942086B CN 103942086 B CN103942086 B CN 103942086B CN 201410037932 A CN201410037932 A CN 201410037932A CN 103942086 B CN103942086 B CN 103942086B
Authority
CN
China
Prior art keywords
aadl
models
emulation
model
analysis
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
Application number
CN201410037932.3A
Other languages
English (en)
Other versions
CN103942086A (zh
Inventor
何积丰
刘静
钱宇清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
East China Normal University
Original Assignee
East China Normal University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by East China Normal University filed Critical East China Normal University
Priority to CN201410037932.3A priority Critical patent/CN103942086B/zh
Publication of CN103942086A publication Critical patent/CN103942086A/zh
Application granted granted Critical
Publication of CN103942086B publication Critical patent/CN103942086B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于AADL的创建、分析和仿真混成系统模型的方法,包括如下步骤:创建子语言混成AADL,利用子语言混成AADL建立混成AADL模型;对混成AADL模型进行词法和语法分析;将混成AADL模型转换至Modelica模型,得到混成系统模型;对Modelica模型进行图形化仿真,生成图形化仿真结果。本发明创建了AADL的一个扩展子语言,从而在OSATE平台上实现了利用AADL建立、分析及图形化仿真混成系统模型。

Description

基于AADL的创建、分析和仿真混成系统模型的方法
技术领域
本发明属于软件开发技术领域,尤其涉及一种基于AADL的创建、分析和仿真混成系统模型的方法。
背景技术
2002年由OMG(Object Management Group,即对象管理组织)所提出的MDA(ModelDriven Architecture,即模型驱动架构)技术应此需求而诞生。MDA提出的解决方案是将应用系统与实现技术平台分离,且以统一建模语言UML来表达与平台无关的PIM(PlatfarmIndependent Model,即平台无关模型),然后再建立适和特定某个平台的模型PSM(Platform Specific Model,即平台相关模型)。由于分隔了企业和技术的变化,从而降低了两者的关联。
OSATE是一个知名的开源工具,支持AADL建模和分析,是由SEI组织开发的基于Eclipse平台的插件。它不仅向用户提供文本和图形化编辑器去建立AADL模型,并且对工具开发人员支持AADL元模型。
混成系统一股包含连续组件和离散组件。组件之间的行为由计算模型控制。大多数复杂的控制系统既包含用微分方程描述的连续动态演化,也包含了离散控制模型。
UML用简单的符号表示和详细的语义框架描述了系统的架构和行为。然而,任务关键的实时嵌入式系统还需要建立软件到硬件的映射,既要满足功能需求又要满足非功能属性要求。因此SAE(Saciety of Autamative Engineers,即美国汽车工程师协会)在UML的基础上提出了AADL(Architecture Analysis and Design Language,即架构分析与设计语言)语言。AADL是用来设计并且分析系统的软硬件架构,包括独立的组件和它们之间的交互,特别适用于性能关键,任务关键的实时嵌入式系统。
AADL使用具有正确语法和语义的规范进行建模。规范有几种表现形式,包括:AADL文本、可扩展标记语言(XML)或者AADL图形。以上3种表现形式是相互一一对应,并且等效的。以下的图10为目前现有AADL建模过程的流程图。首先需要建立模型组件,根据模块的类型建立对应的组件类型Component Type,并为此添加组件特征features,最后创建每一个Component Type的类型实现Component Implementation。在所有Component Type和Component Implementation被建立后创建容器系统。容器系统是用来表示整个系统的边界的。之后为容器系统和模型组件中System类型组件依次添加子组件并且连接子组件与子组件,子组件与模型组件的接口。然后创建硬件组件,创建硬件组件的步骤为:创建ComponentType;建立相应的Component Implementation,添加总线访问bus access并建立执行平台实例使硬件组件与模型组件连接。创建软件组件的步骤:创建Component Type;建立相应的Component Implementation;创建process组件和thread组件实例;在process组件中添加相应的thread组件实例;创建process实例,将其添加到System类型的组件中。此时,便可对建立好的AADL模型进行分析,模型转换或者代码生成。但是,AADL建模平台并不支持混成系统的建模,分析和图形化仿真。
因此,上述现有的支持AADL的OSATE平台无法建立混成系统模型的缺陷,亟需一种能够在支持AADL的建模平台中实现建立混成系统模型的灵活的易于实现的方法。
发明内容
本发明提出了一种基于AADL的创建、分析和仿真混成系统模型的方法,包括如下步骤:
步骤一:定义子语言混成AADL的语法和语义,建立混成AADL模型;
步骤二:对所述混成AADL模型进行词法和语法分析;
步骤三:将所述混成AADL模型转换至Modelica模型,得到所述混成系统模型;
步骤四:对所述Modelica模型进行图形化仿真,生成图形化仿真结果。
本发明提出的基于AADL的创建、分析和仿真混成系统模型的方法中,步骤一中的定义子语言混成AADL的语法和语义的方法包括如下步骤:
步骤A1:在模型编辑器中导入基本类模块并建立所述基本类模块的引用关系;
步骤A2:利用所述模型编辑器建立子语言混成AADL的元模型;
步骤A3:利用BNF范式定义所述子语言混成AADL的语法和语义。
本发明提出的基于AADL的创建、分析和仿真混成系统模型的方法中,所述步骤A3定义所述子语言混成AADL的语法和语义之后进一步包括:引入解析器分析所述语法和语义,构建所述混成AADL的元模型的词法分析器与语法分析器。
本发明提出的基于AADL的创建、分析和仿真混成系统模型的方法中,步骤二中采用所述词法分析器与语法分析器对所述混成AADL模型进行词法和语法分析。
本发明提出的基于AADL的创建、分析和仿真混成系统模型的方法中,步骤二对所述混成AADL模型进行词法和语法分析包括如下步骤:
步骤B1:分析所述混成AADL模型中的代码,若所述代码不符合所述语法和语义,则停止分析并提示不符合的代码;
步骤B2:逐行对所述混成AADL模型中的代码进行词法和语法分析,直至对所述混成AADL模型中的所有代码符合所述语法和语义时为止。
本发明提出的基于AADL的创建、分析和仿真混成系统模型的方法中,步骤二对所述混成AADL模型进行词法和语法分析后进一步建立所述混成AADL模型的抽象语法树。
本发明提出的基于AADL的创建、分析和仿真混成系统模型的方法中,步骤三将所述混成AADL模型转换至Modelica模型的方法包括如下步骤:
步骤C1:根据所述混成AADL模型与所述Modelica模型的关系,制定所述混成AADL模型与所述Modelica模型之间转换的匹配规则;
步骤C2:根据所述匹配规则将所述混成AADL模型的基础构件转换为Modelica模型的语法、语义或者模型结构;
步骤C3:根据所述匹配规则将所述混成AADL模型的数据构件封装为所述Modelica模型的数据类型建模;
步骤C4:根据所述匹配规则转换所述混成AADL模型的功能函数转换为Modelica模型中相应的功能函数。
本发明提出的基于AADL的创建、分析和仿真混成系统模型的方法中,步骤四对所述Modelica模型进行图形化仿真包括如下步骤:
步骤D1:获取Modelica模型的图形化仿真工具,从所述仿真工具中导入仿真组件;
步骤D2:建立所述开发平台与所述仿真组件之间的通信与数据交互;
步骤D3:将所述Modelica模型代码导入所述仿真组件中,并设置参数
步骤D4:所述仿真组件根据所述参数对所述Modelica模型代码进行图形化仿真,生成图形化仿真结果。
本发明的有益效果包括:创建了AADL的一个扩展子语言混成AADL,使用该扩展子语言的语法和语义在支持AADL的OSATE平台中创建了一种新的词法及语法分析器,从而在OSATE平台上实现了利用AADL建立、分析及图形化仿真混成系统模型。
附图说明
图1是本发明基于AADL的创建、分析和仿真混成系统模型的方法的流程图。
图2是本发明中建立混成AADL模型与定义子语言混成AADL的语法和语义的流程图。
图3是混成AADL元模型的示意图。
图4是本发明中对所述混成AADL模型进行词法和语法分析的流程图。
图5是混成AADL模型的图形化抽象语法树的示意图。
图6是本发明中将混成AADL模型转换至Modelica模型的流程图。
图7是匹配规则的示意图。
图8是本发明中对混成系统模型进行图形化仿真的流程图。
图9是本发明中的以文本形式展现的抽象语法分析树的示意图。
图10是现有AADL建模过程的流程图。
图11是混成系统模型的图形化仿真结果。
具体实施方式
结合以下具体实施例和附图,对本发明作进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发明没有特别限制内容。
如图1所示,本发明的基于AADL的创建、分析和仿真混成系统模型的方法包括以下步骤:步骤S1:建立混成AADL模型;步骤S2:对混成AADL模型进行词法和语法分析;步骤S3:将混成AADL模型转换至Modelica模型,得到混成系统模型;步骤S4:对Modelica模型进行图形化仿真,生成图形化仿真结果。以下对于每个步骤作进一步说明。
如图2所示,步骤S1中包括下述步骤:步骤A1:在模型编辑器中导入基本类模块并建立基本类模块的引用关系,利用模型编辑器建立子语言混成AADL的元模型;步骤A2:利用BNF范式定义子语言混成AADL的语法和语义。
其中,在定义子语言混成AADL的语法和语义之前,首先需要识别开发平台所支持的子语言的需求,通过对本发明所应用的OSATE开发平台对与所支持的子语言的需求,其需求如下:
1)一个子语言可以被部署为一个Eclipse插件或者特性(feature)——高优先级;
2)在一个AADL规约中可以使用几个子语言——高优先级;
3)如果子语言插件没有被安装,OSATE仍旧能够对包含这个annex的模型进行工作——中优先级。
根据上述需求创建子语言混成AADL时需要在Ecore元模型图形编辑器中创建子语言的元模型。该元模型是相对于混成系统模型而言的,元模型是建立混成系统模型的基础,该元模型即为本发明中所使用的混成AADL模型。从适用于Ecore元模型图形编辑器中的edu.sei.emu.aadl.model/core.ecore包导入了以下基本类模块:Element,NamedElement,AnnexSu-bClause和Feature。一旦导入了以上述基本类模块之后,添加了它们之间的继承,引用和包含关系。其中包含关系只包含一个特殊field的引用关系,这个field表示它是一个包含关系,并且在属性tab中添加这样的连接之后可以被选择。最后使用EclipseModellng Framework模块中的EMF Model6enerator组件来生成元模型的java类,建立子语言混成AADL的元模型并把ecore model作为模型解释器。利用Ecore元模型图形编辑器创建的混成AADL的元模型如图3所示,其中,Element类,NamedElement类和AnnexSubclause类是AADL内置类,分别代表AADL基本元素,AADL命名元素以及子语言语句。它们三者之间存在着继承关系。HybridAnnexSubclause类是本发明中定义的类,代表混成AADL模型。混成AADL模型包含variableDeclaration(变量声明语句)和EquationExpression(等式表达式)。EquationExpression(等式表达式)又包含着IfEquation(If等式),WhenEquation(When等式),ForEquation(For等式)和SimpleExpression(简单表达式)。
生成元模型之后,定义子语言混成AADL的语法和语义。首先用BNF(Backus-NaurForm,巴科斯-诺尔范式)范式定义混成AADL的语法,可通过如下代码实现对于混成AADL的语法的定义:
1)定义语法的顶层,语法的顶层是由2个可选的部分组成:
2)定义语法的组件声明子句:
上述代码中,组件的类型前缀flow,input,output适用于组件的元素。组件声明的类型前缀discrete,parameter,constant被称作变量前缀。一个前缀为discrete的变量表示该变量是离散时间的。前缀为parameter的变量在图形化仿真过程中不允许改变其值。前缀为constant的变量类似于前缀为parameter的变量,但是constant变量在被赋值后不能再被修改其值。
3)定义等式子句,等式子句代表了模型的动态行为,可以用于建模连续模型。:
现在使用操作语义中的自然语义来定义子语言混成AADL的语义:
der(arg)操作符的语义:
reinit(arg,exp)操作符的语义:
if子句语义:
when子句语义:
for子句语义:
通过上述代码实现定义子语言混成AADL的语法和语义之后,利用OSATE平台可构建混成AADL的词法分析器和语法分析器。首先利用OSATE开发平台提供的一个扩展点org.osate.annexsupport.parser来解析annex库和annex子句。一个annex解析器可以使用该扩展点去注册内置AADL解析器。扩展点org.osate.annexsupport.parser在org.osa—te.annexsupport插件中被定义。
只要已注册的AADL解析器在分析过程中遇到一个annex库或者annex子句,便会调用合适的已被注册的annex解析器。如果某个annex没有相应的annex解析器,AADL解析器会调用一个默认的annex解析器,把DefaultAnnexParser类的对象嵌入到模型中。这些对象包含了annex名称,相应annex库和子句的原文本。因此注册了一个作为内置AADL解析器扩展的annex解析器,注册内容以XML的方式存放在plugin.xml中,具体内容可通过如下代码实现:
注册annex解析器后必须设置插件的依赖。同样,需要编辑plugin.xml文件,在requires子句中,添加以下依赖信息:
<requires>
<import plugin=″org.eclipse.ui″/>
<import plugin=″org.eclipse.core.runtime″/>
<import plugin=″edu.cmu.sei.aadl.model″/>
<import plugin=″org.eclipse.emf.ecore″/>
<import plugin=″edu.cmu.sei.osate.ui″/>
</requires>
完成上述步骤之后开始构建混成AADL的语法分析器和词法分析器。根据上述代码定义了一个接口叫作AnnexParser。该接口定义了两个方法,每当发现一个annex库或者annex子句时,这两个方法会被内置AADL解析器调用。此AnnexParser接口定义如下:
其中,parseAnnexLibrary方法必须返回一个对象,正如annex ecore模型中定义的,该对象代表annex库语法树的根元素。同样的,parseAnnexSubclause必须返回子句语法树的根对象。这2个方法的第一个参数是annex的名称,第二个参数是在annex中,被分隔符{**和**}包含的源文本。另外,参数列表中包含了当前正在被解析的源文件的文件名和文件中annex文本的起始位置。最后个参数是ParseErrorReporter对象,它与当前正在被解析的.aadl源文件有关联。通过调用parseError方法,解析器能够在解析annex文本时,报告语法错误。两个方法都可能会抛出一个异常,异常类为RecognitionException,来表明一个在annex库或者子句中的语法错误。抛出异常会迫使一股的解析组件去处理这个异常并且报告错误,它能使得解析在半途中停止。
为了创建解析器,定义了一个继承Parser类实现AnnexParser接口的解析类,称作HvbridAnnexParser:
其中,factory对象用以创建元模型的不同对象。
在完成上述步骤后,开始从子语言混成AADL的语法顶层开始制定解析方法。例如,混成AADL中的等式用BNF定义为:equation::=EQUATION equationExpression。这是个典型的BNF范式的匹配表达式,equation元素由一个令牌token(即,EQUATION),该令牌token后紧跟一个equationExpression子句组成。equationExpression子句必须在代码中另加定义。匹配表达式的存在使得能够检查源代码的语法。因此在构造本发明的混成AADL元模型时,需要在其文件中增加指定的代码。以下是带有java代码的同样的equation匹配表达式用以创建混成AADL的元模型:
equation returns[EquationSubclause aClause=
factory.createEquationSubclause()]
{EquationExpression ee:}
:((EQUATION ee=equationExpression)
{aClause.setType(Equat ionType.EQUATIONLITERAL);})
{aClause.setEquat ion(ee);};
其中,equation返回一个由factory对象创建的EquationSubclause对象。在冒号前的大括号中用java代码定义了变量EquationExpression ee。该变量在equation子句的匹配过程中被用来接收来自于equationExpression的返回对象。当equation子句被匹配时,把aClause对象的类型设置为EquationType.EQUATIO-NLITERAL。
词法分析器同样需要在相同文件中定义一个继承Lexer类的类。因此首先定义了混成AADL语言中的保留字,包括;“equation”,“when”,“if”等等。然后,使用匹配语句去匹配字符或正则表达式的某个特定顺序,以此来匹配复杂的句式。定义的保留字例如:
LESSOREQUAL:″<=″;GREATEROREQUAL:″>=″;
INTEGER:(’0’..’9’)*;
IDENTIFIER:(’a’..’z’)(’a’..’z’’0’..’9’)*;
以上是关于建立混成AADL元模型以及定义子语言混成AADL的语法和语义的具体实施过程,该混成AADL元模型是用于创建、分析和图形化仿真混成系统模型的基础,子语言混成AADL的语法和语义用于下述对该元模型进行解析以及映射至Modelica模型中。
如图4所示,步骤S2中对于混成AADL模型的语法和词法分析包括如下步骤:
步骤B1:在分析混成AADL模型中的代码时,利用上述生成的语法解析器和词法解析器按照上述解析方法对混成AADL模型中的代码进行逐行词法和语法分析,若存在语法错误或者词法错误,则语法解析器和词法解析器会停止解析过程,并弹出存在错误的代码的段落位置,从而提示用户对该段代码进行修正与调整。
步骤B2:若语法解析器和词法解析器逐行对混成AADL模型中的代码进行词法和语法分析之后未发生错误,则完成对于混成AADL模型的解析。进一步地,还可以生成混成AADL模型的抽象语法树。该实施例中生成的抽象语法树如图5所示,抽象语法树能显示出一句混成AADL语句的语法结构,例如,混成AADL语句(Real var=8;)。并可通过开发平台解析得到该抽象语法书的语法分析树,参阅图9,该语法分析树显示该语句由一个变量类型(即Real),一个变量名称(即var),一个操作符号(即“=”)和一个自然数(即“8”)组成。
如图6所示,步骤S3将混成AADL模型转换Modelica模型包括如下步骤:
步骤C1:根据混成AADL模型与Modelica模型的关系,制定混成AADL模型与Modelica模型之间转换的匹配规则。制定的总体匹配规则如图7,该匹配规则是将混成AADL模型中的Components、Components interactions及Properties转换为Modelica模型中的class/model、variable、function、equation及connect。
步骤C2:根据匹配规则将混成AADL的基本构件通过所制定的匹配规则转换为Modelica中的构件的核心主要语法、语义概念或模型结构,例如model,variable,equation等。基本构件是指混成AADL语言中的软件和硬件组件,例如设备组件,总线组件,进程组件,线程组件等等。
步骤C3:根据匹配规则将混成AADL模型的数据构件封装为Modelica模型的数据类型建模。在混成AADL中可以通过建立data type,data implementation和data instance的声明对Modelica中的数据类型建模。在混成AADL模型中,一个data type可以定义与port端口有关的数据,data implementation可以定义这个数据类型的内部结构,data instance可以定义其他构件对这个数据构件的引用。在Modelica中数据类型包括基本的数据类型和自定义数据类型,因此,将混成AADL中的数据构件进行封装,封装成两种Modelica定义的两类数据类型的包,一个包称为basic data type代表Modelica中的基本数据类型,另一个包称为cutomized data type代表开发人员定义的数据类型,从而将混成AADL模型的数据构件封装为Modelica模型的数据类型建模。
步骤C4:根据匹配规则转换混成AADL模型的功能函数转换为Modelica模型中相应的功能函数,其中尤其涉及对equation的转换。Modelica有着基于方程式的操作,指的是以equation为关键字的方程。而混成AADL模型中subprogram组件表示一个可以顺序执行的代码片段,考虑到subprogram与equation类似的语法和功能特性,在混成AADL建模中为每个物理组件提供几个subprogram执行Modelica中的对属性进行的操作。但是还需要一个能够调用subprogram的组件,以至于能够执行subprogram中所有操作。混成AADL模型中的线程组件表示一个可以顺序执行并且并发的可调度的单元,而之前定义的subprogram也是代表并发的执行过程,因此为物理元组件分配一个线程,从而能够调用与该物理元组件相对应的subprogram。
通过以上各步骤将混成AADL模型转换为Modelica模型,从而生成了混成系统模型。转换成Modelica模型后即为混成系统模型,转换后的混成系统模型完全遵守Modelica语言的语法和语义,该Modelica模型的需求,功能以及仿真结果与之前的混成AADL模型完全一致,。
在语法检查完毕之后把混成AADL模型映射为Modelica模型并用openModelica的仿真组件作为仿真引擎,对模型进行仿真并返回仿真结果:
步骤D1,把openModelica中包括omc.exe,OMPlot.exe等与仿真相关的关键组件导入到当前项目中。
步骤D2,建立开发的工具和仿真组件之间的通信方式和交互方式。
步骤D3,把生成的Modelica模型代码作为仿真组件的输入,并设定相应合理的参数。
步骤D4,正式进行图形化仿真,并显示图形化仿真结果,仿真结果以图表的形式呈现。
图11显示的混成系统模型的图形化仿真结果,其描述了弹性小球在自由落体过程中距离地面高度的仿真结果。从这个仿真结果,可以看到弹性小球距离地面的高度是随着时间的推进而降低的。根据其图形化仿真结果,本领域技术人员可以做出对该模型中某些变量的观察和动态分析。
本发明提供的技术方案使得AADL语言和OSATE工具支持对混成系统的建模,分析与图形化仿真,为模型驱动式软件后续开发的有效进行奠定基础。
本发明的保护内容不局限于以上实施例。在不背离发明构思的精神和范围下,本领域技术人员能够想到的变化和优点都被包括在本发明中,并且以所附的权利要求书为保护范围。

Claims (6)

1.一种基于AADL的创建、分析和仿真混成系统模型的方法,其特征在于,包括如下步骤:
步骤一:定义子语言混成AADL的语法和语义,建立混成AADL模型;所述定义子语言混成AADL的语法和语义的方法包括如下步骤:
步骤A1:在模型编辑器中导入基本类模块并建立所述基本类模块的引用关系;
步骤A2:利用所述模型编辑器建立所述子语言混成AADL的元模型;
步骤A3:利用BNF范式定义所述子语言混成AADL的语法和语义;
步骤二:对所述混成AADL模型进行词法和语法分析;
步骤三:建立所述混成AADL模型的抽象语法树;
步骤四:根据所述抽象语法树将所述混成AADL模型转换至Modelica模型,得到所述混成系统模型;
步骤五:对所述Modelica模型进行图形化仿真,生成图形化仿真结果。
2.如权利要求1所述的基于AADL的创建、分析和仿真混成系统模型的方法,其特征在于,所述步骤A3定义所述子语言混成AADL的语法和语义之后进一步包括:引入解析器分析所述语法和语义,构建所述混成AADL的元模型的词法分析器与语法分析器。
3.如权利要求2所述的基于AADL的创建、分析和仿真混成系统模型的方法,其特征在于,步骤二中采用所述词法分析器与语法分析器对所述混成AADL模型进行词法和语法分析。
4.如权利要求1所述的基于AADL的创建、分析和仿真混成系统模型的方法,其特征在于,步骤二对所述混成AADL模型进行词法和语法分析包括如下步骤:
步骤B1:分析所述混成AADL模型中的代码,若所述代码不符合所述语法和语义,则停止分析并提示不符合的代码;
步骤B2:逐行对所述混成AADL模型中的代码进行词法和语法分析,直至对所述混成AADL模型中的所有代码符合所述语法和语义时为止。
5.如权利要求1所述的基于AADL的创建、分析和仿真混成系统模型的方法,其特征在于,步骤三将所述混成AADL模型转换至Modelica模型的方法包括如下步骤:
步骤C1:根据所述混成AADL模型与所述Modelica模型的关系,制定所述混成AADL模型与所述Modelica模型之间转换的匹配规则;
步骤C2:根据所述匹配规则将所述混成AADL模型的基础构件转换为Modelica模型的语法、语义或者模型结构;
步骤C3:根据所述匹配规则将所述混成AADL模型的数据构件封装为所述Modelica模型的数据类型建模;
步骤C4:根据所述匹配规则转换所述混成AADL模型的功能函数转换为Modelica模型中相应的功能函数。
6.如权利要求1所述的基于AADL的创建、分析和仿真混成系统模型的方法,其特征在于,步骤四对所述Modelica模型进行图形化仿真包括如下步骤:
步骤D1:获取Modelica模型的图形化仿真工具,从所述仿真工具中导入图形化仿真组件;
步骤D2:建立开发平台与所述仿真组件之间的通信与数据交互;
步骤D3:将所述Modelica模型的代码导入所述仿真组件中,并设置参数
步骤D4:所述仿真组件根据所述参数对所述Modelica模型的代码进行图形化仿真,生成图形化仿真结果。
CN201410037932.3A 2014-01-26 2014-01-26 基于aadl的创建、分析和仿真混成系统模型的方法 Active CN103942086B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410037932.3A CN103942086B (zh) 2014-01-26 2014-01-26 基于aadl的创建、分析和仿真混成系统模型的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410037932.3A CN103942086B (zh) 2014-01-26 2014-01-26 基于aadl的创建、分析和仿真混成系统模型的方法

Publications (2)

Publication Number Publication Date
CN103942086A CN103942086A (zh) 2014-07-23
CN103942086B true CN103942086B (zh) 2017-07-04

Family

ID=51189762

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410037932.3A Active CN103942086B (zh) 2014-01-26 2014-01-26 基于aadl的创建、分析和仿真混成系统模型的方法

Country Status (1)

Country Link
CN (1) CN103942086B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106325855B (zh) * 2016-08-11 2019-07-23 南京航空航天大学 基于Prolog的AADL行为模型时间一致性验证方法
CN106681727B (zh) * 2016-12-30 2020-10-02 苏州同元软控信息技术有限公司 Modelica外部函数图形化编辑系统及其实现方法
CN108984163B (zh) * 2018-07-13 2020-10-02 华东师范大学 一种基于imcl模型的异构式多平台代码生成方法
CN109359331B (zh) * 2018-09-07 2023-06-27 华东师范大学 基于可执行领域特定建模语言xSHS的CPS动态行为建模与仿真方法
CN109858169B (zh) * 2019-02-14 2023-04-07 苏州同元软控信息技术有限公司 一种基于Modelica的模型平坦化方法
CN110866341A (zh) * 2019-11-19 2020-03-06 南京航空航天大学 基于AADL-Modelica对信息物理融合系统进行建模的方法
CN111209176A (zh) * 2020-01-06 2020-05-29 华东师范大学 硬件系统可靠性验证方法
CN111209177A (zh) * 2020-01-06 2020-05-29 华东师范大学 硬件系统可靠性验证系统
CN112463628B (zh) * 2020-12-11 2022-03-29 北京航空航天大学 一种基于模型基框架的自主无人系统软件自适应演化方法
CN113126976B (zh) * 2021-04-08 2022-06-21 复旦大学 基于语法制导编辑器生成器的跨界服务长尾变化应变方法
CN114840196B (zh) * 2022-07-06 2022-10-14 中国汽车技术研究中心有限公司 Modelica语言模型处理方法、设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8280832B1 (en) * 2009-03-04 2012-10-02 The Mathworks, Inc. Proving latency associated with references to a data store
CN102750301A (zh) * 2011-12-29 2012-10-24 中国航空工业集团公司第六三一研究所 针对aadl描述的综合化航电系统模型的蓝图生成方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8280832B1 (en) * 2009-03-04 2012-10-02 The Mathworks, Inc. Proving latency associated with references to a data store
CN102750301A (zh) * 2011-12-29 2012-10-24 中国航空工业集团公司第六三一研究所 针对aadl描述的综合化航电系统模型的蓝图生成方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Hybrid AADL–A Sublanguage Extension to AADL;Yuqing qian etc.;《Proceedings of the 5th Asia-Pacific Symposium on Internetware》;20131023;1-4 *
航天信息物理融合系统的分析与设计方法;陈明铝;《中国优秀硕士学位论文全文数据库 信息科技辑》;20131015(第10期);I140-59 *

Also Published As

Publication number Publication date
CN103942086A (zh) 2014-07-23

Similar Documents

Publication Publication Date Title
CN103942086B (zh) 基于aadl的创建、分析和仿真混成系统模型的方法
CN104598240B (zh) 一种跨平台的仿真模型开发方法及系统
CN106648662B (zh) 基于工程造价计算描述语言bcl的报表生成装置及生成方法
Voelter et al. Language modularization and composition with projectional language workbenches illustrated with MPS
US20080244541A1 (en) Code translator and method of automatically translating modeling language code to hardware language code
Nogueira et al. Test case generation, selection and coverage from natural language
Lasnier et al. An implementation of the behavior annex in the aadl-toolset osate2
Reis et al. An on-the-fly grammar modification mechanism for composing and defining extensible languages
Pop Integrated Model-Driven Development Environments for Equation-Based Object-Oriented Languages
Serna et al. Dash: A new language for declarative behavioural requirements with control state hierarchy
Visser Understanding software through linguistic abstraction
Kolassa et al. Tunit-unit testing for template-based code generators
Silva et al. On the symbiosis of aspect-oriented requirements and architectural descriptions
Beg et al. Development of a prototype translator from Circus to CSPm
Henriksson A lightweight framework for universal fragment composition: with an application in the semantic web
Lamancha et al. Model-driven test code generation
WO2008075087A1 (en) Code translator and method of automatically translating modelling language code to hardware language code
Fritzson et al. Formal semantics based translator generation and tool development in practice
Birleanu CHDL1: Implementing a simplified version of the CompactHDL hardware description language
Djeddai et al. Integrating a formal development for DSLs into meta-modeling
Colla et al. Tools integration through a central model and automatic generation of multi-platform control code
Gjøsæter et al. Teaching model driven language handling
Limyr et al. Semaphore–a model-based semantic mapping framework
Hasu Programming Language Technology for Niche Platforms
Sjölund Bidirectional External Function Interface Between Modelica/MetaModelica and Java

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant