为导入信号编辑器创建自定义文件类型
缺省情况下,为Simul金宝appink®金宝app支持中所列表单中的信号输入数据的形式.要导入包含不支持格式的信号的文件类型,请创建并注册您自己的自定义文件类型读取器。金宝app金宝appSimu金宝applink支持自定义文件类型读取器金宝appSimulink.io.FileType
.
金宝appSimulink提供了这些文件类型。
金宝appSimulink.io.SignalBuilderSpreadsheet
-信号生成器文件类型文件类型示例
金宝appSimulink.io.MySignalMatFile
金宝appSimulink.io.CreateSignals
创建文件阅读器需要熟悉面向对象编程。它是为高级读者准备的。
要包含您的包文件夹,请创建一个文件夹并将该文件夹路径添加到MATLAB®路径。
在该文件夹中添加包含信号的自定义文件,例如
mySignals.mat
.在该文件夹中创建一个
+金宝app仿真软件
文件夹,并在该文件夹中创建+输入输出
文件夹中。类中继承的类
金宝appSimulink.io.FileType
.classdefMyFileType < 金宝appSimulink.io.FileType
将这个类保存为
yourfolder/ 金宝app+仿真软件/ + io
.要注册和与信号编辑器交互,实现这些静态方法:
实现这些公共方法:
在运行时调用
whosImpl
通过谁
当你运行金宝appSimulink.io.FileType
对象。谁
具有相同的语法whosImpl
.
检查你的班级是否已经注册。在信号编辑器选项卡上,选择开放>进口,而在进口对话框窗口,单击浏览.
包含您的信号的自定义文件,例如
custompath/ mySignals.mat
,显示在文件浏览器中。选择包含自定义信号的自定义文件。
返回到类文件并实现这些额外的公共方法:
在运行时,调用
loadImpl
通过负载
当你运行金宝appSimulink.io.FileType
对象。负载
具有相同的语法loadImpl
.
要导入自定义信号,请使用
进口
方法。dataOnFile=进口(读者)
,在那里读者读取器的文件类型对象是否指定为金宝appSimulink.io.FileType
对象。输出,dataOnFile,是一个带场的结构结构. data
,这是一个信号的单元阵列,以及结构. name
,它是对应信号名称的单元格数组。例如,dataOnFile. data
是蜂窝阵列的信号和吗dataOnFile. name
包含相应的信号名称。返回到信号编辑器开放>进口然后再尝试导入。
成功导入自定义信号后,可以在信号编辑器中操作它们。完成后,如果您已经实现了exportImpl
方法,则可以通过调用出口
方法在运行时为您的阅读器提供。的导出对话框导出信号到自定义注册文件类型.
例如实现,参见:
打开(“Si金宝appmulink.io.CreateSignals”)
-实现如何创建信号打开(“Si金宝appmulink.io.MySignalMatFile”)
-实现如何注册自定义文件类型导入到Simulink。金宝app
定义新的文件类型
使用的对象金宝app
一个文件类型
object是一个组件,您可以使用它来为当前不支持的格式存在的信号创建读取器。金宝app金宝app用MATLAB编写读卡器,并使用信号编辑器开放>进口选项注册阅读器并导入自定义格式文件。
请注意
在导入之前,检查自定义文件类型类文件的所有编辑器是否已关闭。在尝试将自定义文件类型类文件作为读取器导入时编辑它会导致意外行为。
定义文件类型
对象
创建一个
文件类型
对象,以便在Simulink中使用。金宝app本例为自定义格式的信号创建一个读取器。创建一个类定义文本文件来定义您的
文件类型
对象。在类定义文件的第一行,指定您的
文件类型
和从的子类金宝appSimulink.io.FileType
.的金宝appSimulink.io.FileType
基类使您能够使用所有的基本类文件类型
对象的方法。对于你的班级:
添加适当的基础
文件类型
对象方法来注册信号编辑器并与之交互。验证信号格式。
确定信号文件的内容。
从信号文件加载变量。
导入信号。
请参阅每个方法的参考页面以及下面每个方法的实现的完整类定义文件。要查看自定义信号读取器的完整类定义,请运行:
打开(“Si金宝appmulink.io.MySignalMatFile”)
.
另请参阅
exportImpl
|getFileTypeDescription
|loadAVariableImpl
|loadImpl
|金宝appSimulink.io.FileType
|金宝appSimulink.io.FileType.i金宝appsFileSupported
|金宝appSimulink.io.SignalBuilderSpreadsheet
|validateFileNameImpl
|whosImpl