一种基于Matlab的关联信号赋值方法与流程

文档序号:14175230阅读:1157来源:国知局
一种基于Matlab的关联信号赋值方法与流程

本发明涉及matlab模型开发领域,特别是涉及一种基于matlab的关联信号赋值方法。



背景技术:

基于模型的开发技术在各行业的应用越来越广泛,软件系统的规模越来越大。随着复杂度的增加,大量的输入信号给验证和测试带来困难,尤其是为了生成代码的质量,输入信号按规则进行命名关联是必然的。同环境下,测试赋值却会与此产生冲突。

基于模型的开发测试中,关联信号的赋值问题在于输入信号要进行关联时,需在workspace里进行声明,类型为signal。测试时,如果直接在workspace对输入信号进行赋值,会覆盖原signal信号,对应信号由signal变为常量,而常量不能进行关联和仿真测试。



技术实现要素:

本发明的目的是克服现有技术中的不足之处,提供一种基于matlab的关联信号赋值方法。

本发明的目的是通过以下技术方案来实现的:

一种基于matlab的关联信号赋值方法,包括以下步骤:

s01、建立模型,在workspace中声明变量并将声明的变量与其对应的模块进行关联;

s02、将声明的关联变量从workspace转移至datadictionary数字字典,并与模型链接;

s03、在workspace对声明的关联变量赋值并进行仿真测试。

在其中一个实施例中,所述步骤s01具体为:

s011、利用模型编辑器,在workspace中声明变量,包括变量的名称、维数和数据类型;

s012、将声明的变量与其对应的模块的输入端口或者输出端口通过信号线进行连接并关联。

在其中一个实施例中,所述步骤s02具体为:

s021、将workspace中声明的关联变量转换成.sldd格式的datadictionary数据字典,与模型进行链接;

s022、清空workspace。

在其中一个实施例中,所述步骤s03具体为:

s031、在workspace中对所有声明的关联变量赋值后打包集合,通过dataimport/export的loadfromworkspace载入数据进行仿真测试。

本次技术方案相比于现有技术有以下有益效果:

1.通过将声明的关联变量转移至datadictionary数字字典,有效地解决了在进行仿真测试对声明的关联变量赋值时报错的问题。

2.本次技术方案无需使用其他测试软件工具就可以解决进行仿真测试对声明的关联变量赋值时报错的问题,可用于复杂模型的前期功能性测试,保证模型的正确性。

附图说明

图1为本实施例中的基于matlab的关联信号赋值方法流程图;

图2为本实施例中基于matlab的关联信号赋值方法中输入信号变量、输出信号变量和模型关联的一操作界面示意图;

图3为本实施例中基于matlab的关联信号赋值方法中进行数字字典关联的一操作界面示意图;

图4为本实施例中基于matlab的关联信号赋值方法中进行数字字典关联的另一操作界面示意图;

图5为本实施例中基于matlab的关联信号赋值方法中进行赋值操作的操作界面示意图;

图6为本实施例中基于matlab的关联信号赋值方法中进行模型参数配置的一操作界面示意图。

具体实施方式

为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施方式。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本发明的公开内容理解的更加透彻全面。

需要说明的是,当元件被称为“固定于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的,并不表示是唯一的实施方式。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。

如图1所示为基于matlab的关联信号赋值方法流程示意图,包括以下步骤:

s01、建立模型,在workspace中声明变量并将声明的变量与其对应的模块进行关联;

s02、将声明的关联变量从workspace转移至datadictionary数字字典,并与模型链接,清空workspace;

s03、在workspace对声明的关联变量赋值并进行仿真测试。

具体地,所述步骤s01具体为:

s011、利用模型编辑器,在workspace中声明变量,包括变量的名称、维数和数据类型等属性;

s012、将声明的变量与其对应的模块的输入端口或者输出端口通过信号线进行连接并关联。

需要说明的是,模块为测试者根据测试用例进行自行构建的模块,其模块包含输入端口和输出端口,输入端口和输出端口分别与其对应的声明的相关联变量连接。

具体地,所述步骤s02具体为:

s021、将workspace中声明的关联变量转换成.sldd格式的datadictionary数据字典,与模型进行链接;

s022、清空workspace。

具体地,所述步骤s03具体为:

s031、在workspace中对所有声明的关联变量赋值后打包集合,通过dataimport/export的loadfromworkspace载入数据进行仿真测试。

实施例

请结合参照图2、图3、图4、图5和图6。

建立signalvol模型,对模型signalvol的输入输出信号变量进行声明。具体为,打开模型signalvol窗口中的tools-modelexplorer,在baseworkspace中选择添加signal,signalname分别命名为state、vol和open,并设置输入输出信号变量对应的数据类型、维数等属性。

输入state、vol以及open信号线命名为对应信号名,右击信号线,选择properties,将信号名称与对应信号对象关联。如图2所示,输入信号变量vol和state以及输出信号变量open已经和模型signalvol中的进行了关联。

打开对应模型signalvol窗口中的file-modeproperties-linktodatadictionary,如图3所示,弹出modelproperties子窗口进行数据字典关联。如图4所示,选中datadictionary,点击new,选择保存路径,命名,点击ok即可完成数字字典关联操作。

需要说明的是,在选择保存路径时,最好将保存路径选择和模型的保存路径相同,以便后续工作的查找。

还需要说明的是,在命名操作时,保存文件的后缀名格式为.sldd格式的文件。

在上述步骤完成后,即可在commandwindow主窗口对声明的变量进行赋值操作。如图5所示,具体为,令state=a1,vol=a2,即可在worksapce中声明出值为a1(a1的值即为图5的值1)的常量state和值为a2(a2的值即为图5的值3.5)的常量vol。此外,还可以输入t=0,tempinp=[t,state,vol],生成包含所有输入信号变量的结构体tempinp。

在对声明的变量成功赋值后,还需要对模型进行参数配置,如图6所示,点击模型窗口中的modelconfigurationparametets进行模型参数配置,选择dataimport/export,在input选项打上勾,输入tempinp或[t,state,vol]即可。

还需要说明的是,在进行赋值操作时t,state,vol可以为多维,表示对应t=t1,t2,t3…时刻,对变量赋不同的值,或间隔多少t后改变变量的值,对应不同的测试工况。

最后进行仿真测试。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1