Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

在 MATLAB Function 模块中创建结构体

下面是在 MATLAB Function 模块中创建结构体的工作流:

  1. 确定结构体的类型(或作用域)(请参阅Types of Structures in MATLAB Function Blocks)。

  2. 根据作用域,遵循下面的规范创建结构体:

    结构体作用域:执行下列步骤:
    Input

    1. 在基础工作区创建一个 Simulink.Bus 对象,以定义结构体输入。

    2. MATLAB Function 模块中添加数据,如Define MATLAB Function Block Data中所述。数据应具有以下属性:

      • Scope = “Input

      • Type = “Bus: <object name>

        对于 <object name>,请输入定义结构体输入的 Simulink.Bus 对象的名称

    请参阅Rules for Defining Structures in MATLAB Function Blocks

    输出

    1. 在基础工作区创建一个 Simulink.Bus 对象,以定义结构体输出。

    2. MATLAB Function 模块中添加具有以下属性的数据:

      • Scope = “Output

      • Type = “Bus: <object name>

        对于 <object name>,请输入定义结构体输出的 Simulink.Bus 对象的名称

    3. 将输出结构体隐式定义并初始化为 MATLAB® 函数中的变量,如用于代码生成的结构体定义中所述。

    4. 确保输出结构体变量定义中的字段数量、类型和大小与 Simulink.Bus 对象的属性匹配。

    Local

    将结构体隐式定义为 MATLAB 函数中的局部变量,如用于代码生成的结构体定义中所述。默认情况下,MATLAB Function 模块中的局部变量是临时的。

    Persistent

    将结构体隐式定义为 MATLAB 函数中的持久变量。

    Parameter

    1. 在基础工作区创建一个结构体变量。

    2. MATLAB Function 模块中添加具有以下属性的数据:

      • Name = 您在步骤 1 中创建的结构体变量的名称。

      • Scope = “Parameter

    请参阅Define and Use Structure Parameters

结合使用非虚拟总线与 MATLAB Function 模块

在此示例模型中,MATLAB Function 模块包含创建一个结构体的 MATLAB 代码。如果 MATLAB Function 模块输出一个结构体,则必须使用 Simulink.Bus 对象来定义总线输出。

要查看结构体定义,请双击 MATLAB Function 模块。

打开总线编辑器并展开表示该结构体的 Bus 对象定义。

要查看 Bus 对象如何定义 MATLAB Function 模块的总线输出,请在 MATLAB 工具条的 Editor 选项卡上,点击 Edit Data,然后点击 y。输出 Type 定义为 function_bus Bus 对象。

相关主题