创建自定义文件类型导入到信号编辑器
默认为Simulink万博1manbetx®万博1manbetx中列出的形式支持信号输入数据的形式.若要导入包含不受支持格式的信号的文件类型,请创建并注册自己的自定义文件类型读取器。万博1manbetx万博1manbet万博1manbetxxSimulink支持自定义文件类型阅读器万博1manbetxSimulink.io.FileType
.
万博1manbetxSimulink提供了这些文件类型。
万博1manbetxSimulink.io.SignalBuilderSpreadsheet
—Signal Builder文件类型万博1manbetxSimulink.io.BaseWorkspace
—基本工作区文件类型万博1manbetxSimulink.io.MatFile
- MAT-file文件类型万博1manbetxSimulink.io.ModelWorkspace
-建模工作空间文件类型万博1manbetxSimulink.io.SLDVMatFile
- MAT-file contains万博1manbetxSimulink设计验证器™sldvData
结构文件类型示例
万博1manbetxSimulink.io.MySignalMatFile
万博1manbetxSimulink.io.CreateSignals
万博1manbetx仿真软件测试™提供了
sltest.io.万博1manbetxSimulinkTestSpreadsheet
(万博1manbetx仿真软件测试)文件类型。
创建文件读取器要求您熟悉面向对象编程。它是为高级观众准备的。
要包含包文件夹,请创建一个文件夹并将该文件夹路径添加到MATLAB®路径。
将包含信号的自定义文件添加到该文件夹,例如
mySignals.mat
.在该文件夹中,创建一个
+万博1manbetx仿真软件
文件夹,并在该文件夹中创建+输入输出
文件夹中。类的继承类
万博1manbetxSimulink.io.FileType
.classdefMyFileType < 万博1manbetxSimulink.io.FileType
将这个类保存到
yourfolder/ 万博1manbetx+仿真软件/ + io
.要注册并与信号编辑器交互,实现这些静态方法:
实现这些公共方法:
在运行时调用
whosImpl
通过谁
当你运行万博1manbetxSimulink.io.FileType
对象。谁
具有相同的语法whosImpl
.
检查您的类是否已注册。在信号编辑器选项卡上,选择开放>进口,而在进口对话框窗口,单击浏览.
包含信号的自定义文件,例如
custompath/ mySignals.mat
,出现在文件浏览器中。选择包含自定义信号的自定义文件。
返回到类文件并实现这些额外的公共方法:
在运行时调用
loadImpl
通过负载
当你运行万博1manbetxSimulink.io.FileType
对象。负载
具有相同的语法loadImpl
.
要导入自定义信号,请使用
进口
方法。dataOnFile=进口(读者)
,在那里读者读取器的文件类型对象是否指定为万博1manbetxSimulink.io.FileType
对象。输出,dataOnFile,是一个包含字段的结构结构. data
,这是一个信号的单元格数组,和结构. name
,是对应信号名称的单元格数组。例如,dataOnFile. data
是单元阵列的信号和dataOnFile. name
包含相应的信号名称。返回到信号编辑器开放>进口并尝试再次导入。
成功导入自定义信号后,可以在Signal Editor中操作它们。完成时,如果您已经实现了exportImpl
方法,则可以通过调用出口
方法。或者,您也可以使用导出对话框导出信号到自定义注册文件类型.
有关示例实现,请参见:
打开(“Si万博1manbetxmulink.io.MySignalMatFile”)
实现如何注册自定义文件类型导入到Simulink。万博1manbetx
定义新的文件类型
用于万博1manbetx
一个文件类型
object是一个组件,可用于为当前Simulink中不支持的格式的信号创建读取器。万博1manbetx万博1manbetx用MATLAB编写读卡器,并使用信号编辑器开放>进口选项来注册阅读器并导入自定义格式文件。
请注意
在导入之前,请检查自定义文件类型类file的所有编辑器是否已关闭。在试图将自定义文件类型类file作为阅读器导入时编辑它会导致意外行为。
定义文件类型
对象
创建一个
文件类型
对象在Simulink中使用。万博1manbetx本示例为自定义格式的信号创建读取器。创建一个类定义文本文件来定义您的
文件类型
对象。在类定义文件的第一行上,指定您的
文件类型
子类from万博1manbetxSimulink.io.FileType
.的万博1manbetxSimulink.io.FileType
基类使您能够使用所有的基类文件类型
对象的方法。对于您的课程:
添加适当的基本
文件类型
对象方法来注册并与信号编辑器交互。验证信号格式。
确定信号文件的内容。
从信号文件加载变量。
导入信号。
请参阅每种方法的参考页和下面的完整类定义文件,以了解每种方法的实现。要查看自定义信号读取器的完整类定义,运行:
打开(“Si万博1manbetxmulink.io.MySignalMatFile”)
.
另请参阅
万博1manbetxSimulink.io.FileType
|万博1manbetxSimulink.io.BaseWorkspace
|万博1manbetxSimulink.io.MatFile
|万博1manbetxSimulink.io.PluggableNamespace
|万博1manbetxSimulink.io.SignalBuilderSpreadsheet
|万博1manbetxSimulink.io.SLDVMatFile
|exportImpl
|sltest.io.万博1manbetxSimulinkTestSpreadsheet
(万博1manbetx仿真软件测试)|getFileTypeDescription
|万博1manbetxSimulink.io.FileT万博1manbetxype.isFileSupported
|loadImpl
|loadAVariableImpl
|validateFileNameImpl
|whosImpl