怎么在Simulink中的 Matlab Function模块添加全局变量(global)

为什么在Simulink中定义全局变量会报错,出现如下情况:
怎么在Simulink中的 Matlab Function模块添加全局变量(global)_第1张图片

因为在Simulink中的MATLAB Function中,全局变量未映射到MATLAB全局工作区(global workspace)。

因此需要使用MATLAB Function模块登记全局变量,以将数据映射到Data Store Memory(数据存储器)

Matlab官方对此有解决方案:(Share Data Globally)

步骤是:
1.在你的 MATLAB Function中定义一个全局变量。
2.在 Data Store MemorySimulink.Signal 中登记上你的全局变量(一定要和上一步定义的全局变量同名)。

具体步骤如下:
一、.在MATLAB Function的Data Store Memory中的设置:
1.
怎么在Simulink中的 Matlab Function模块添加全局变量(global)_第2张图片

怎么在Simulink中的 Matlab Function模块添加全局变量(global)_第3张图片

怎么在Simulink中的 Matlab Function模块添加全局变量(global)_第4张图片
怎么在Simulink中的 Matlab Function模块添加全局变量(global)_第5张图片
二、Simulink中设置:
怎么在Simulink中的 Matlab Function模块添加全局变量(global)_第6张图片

如果要定义为矩阵,可以将dimensions处设置成[m,n].(m ,n是你的矩阵行、列数)
怎么在Simulink中的 Matlab Function模块添加全局变量(global)_第7张图片

这样就可以啦!

你可能感兴趣的:(Matlab,matlab)