主要内容

实现MATLAB函数万博1manbetxMATLAB函数

MATLAB函数块使您能够定义自定义函数模型万博1manbetx®通过使用MATLAB模型®语言。MATLAB函数块支持C / 万博1manbetxc++代码生成万博1manbetx仿真软件编码器™和嵌入式编码®

使用这些块时:

  • 你有一个现有的MATLAB函数模型自定义功能,或者对你来说很容易创建这样一个函数。

  • 模型需要定制功能,不是或不能捕捉到仿真软件图形化语言。万博1manbetx

  • 你会发现更容易模型自定义功能,使用MATLAB函数比使用仿真软件框图。万博1manbetx

  • 自定义功能,你想模型不包括连续或离散动态状态。模型动态状态,使用S-functions。看到MATLAB S-Functions创建和配置

计算的平均值和标准偏差MATLAB函数

这始于一个模型,该模型包括一个示例MATLAB函数块和指导你如何自定义计算一个向量的平均值和标准偏差值。

打开模型

该模型call_stats_block1包括一个空的MATLAB功能块和块你需要例子。打开模型。

程序的MATLAB函数

程序块来计算一个向量的平均值和标准偏差值。

  1. 打开MATLAB功能块编辑器,双击MATLAB函数块。出现在一个默认功能MATLAB功能块编辑器有两个变量:一个输入和一个输出参数。

    这张图片显示了MATLAB功能块编辑器打开后从call_stats_block1模型。它包含一个默认的功能。

  2. 定义函数的输入和输出通过编辑函数声明声明:

    函数(意思是,方差)=统计(val)

    这个语句定义了一个函数调用统计数据有三个变量。语句定义了一个输入参数,瓦尔斯和两个输出参数,的意思是方差

  3. 函数声明语句后新的一行,添加以下代码:

    %计算统计均值和标准瓦尔斯%的偏差值。len =长度(val);意味着= avg (val, len);方差=√总和(vals-avg (vals, len)) ^ 2)) / len);情节(瓦尔斯,”——+”);函数意味着= avg(数组、大小)意味着=(数组)/大小总和;
  4. 退出。块更新港口名称。函数输出的意思是方差对应块输出端口的意思是方差和函数的输入瓦尔斯对应块的输入端口瓦尔斯

  5. 完成连接MATLAB函数块如图所示。

    这显示模块之间的连接信号建立在前面的形象。

  6. 保存模型call_stats_block2

检查属性MATLAB函数块变量

你可以检查和管理属性变量MATLAB函数块。看到创建和定义MATLAB函数块变量。在这个例子中,验证输入参数瓦尔斯继承它的类型和大小的属性:

  1. 双击MATLAB函数块。

  2. 打开符号面板和属性检查器。在函数选项卡上,单击编辑数据

    符号窗格中显示的变量名的名字列。的类型列决定了函数参数港口作业,它出现在函数声明语句。在这个例子中,瓦尔斯被分配给一个输入端口。的意思是方差被分配到输出端口。如果你改变类型条目或变量,函数声明语句也在改变。

  3. 检查的属性瓦尔斯。在符号窗格中,单击行瓦尔斯。属性检查器更新显示的属性瓦尔斯。的范围属性匹配类型列。

    只有一些属性可以被继承:大小,单位,复杂性,类型。当变量表明他们继承这些属性大小1,单位继承,复杂性继承了,类型继承:仿真软件一样万博1manbetx。在这个例子中,瓦尔斯使用这些值大小类型

检查其他的MATLAB函数通过选择他们的块变量符号窗格。

默认情况下,新定义的输入和输出变量继承它们的大小,单位,复杂性,和类型。如果你想要使用一个特定的变量大小,单位,明确或类型,您可以指定这些属性。例如,输入3 [2]大小作为一个属性来指定变量2×3矩阵。有关更多信息,请参见定义和修改变量的数据类型指定大小的块变量MATLAB函数

构建函数

在你输入代码MATLAB函数块,您可以检查错误和构建函数的代码。看到调试MATLAB函数块

当你建立一个模型,用MATLAB使用编译器来编译MATLAB函数块代码。如果您有多个MATLAB-supported编译器安装在万博1manbetx您的系统,您可以更改默认的编译器使用墨西哥人设置命令。看到改变默认的编译器。看到一个支持的编译器列表,打开万博1manbetx万博1manbetx支持和兼容的编译器,单击选项卡对应于您的操作系统,发现万博1manbetx仿真软件产品家族表,去模型引用,加速器模式,快速加速模式,和MATLAB函数块列。

在仿真万博1manbetx软件中,单击运行模拟模型。软件构建MATLAB函数当它构建模型和输出数据块从功能到两个显示块。

准备代码生成的块

生成独立的C / c++代码从一个模型,其中包含MATLAB函数块,用万博1manbetx仿真软件编码器或嵌入式编码器。

选择一个支持编译器万博1manbetx构建模拟和代码生成

看到一个支持的编译器列表,打开万博1manbetx万博1manbetx支持和兼容的编译器,单击选项卡对应于您的操作系统,发现万博1manbetx仿真软件产品家族表,去万博1manbetx仿真软件编码器列。

生成的代码MATLAB函数

如果你有一个许可证万博1manbetx仿真软件编码器或者嵌入式编码器,可以从模型中生成代码。生成代码:

  1. call_stats_block2模型中,双击MATLAB函数块。

  2. 打开万博1manbetx仿真软件编码器或者嵌入式编码器应用。

  3. C代码选项卡,构建编译和构建的示例模型。

    如果你得到一个错误有关变步解算器,打开配置参数窗口,然后单击解算器在左窗格中。下解算器的选择,设置类型固定步并再次生成代码。了解更多关于固定步之间的差异和变步解决者,明白了固定步与变步解决者

另请参阅

||

相关的话题

外部网站