为什么在Simulink中定义全局变量会报错,出现如下情况:
因为在Simulink中的MATLAB Function中,全局变量未映射到MATLAB全局工作区(global workspace)。
因此需要使用MATLAB Function模块登记全局变量,以将数据映射到Data Store Memory(数据存储器)
Matlab官方对此有解决方案:(Share Data Globally)
步骤是:
1.在你的 MATLAB Function中定义一个全局变量。
2.在 Data Store Memory 和Simulink.Signal 中登记上你的全局变量(一定要和上一步定义的全局变量同名)。
具体步骤如下:
一、.在MATLAB Function的Data Store Memory中的设置:
1.
二、Simulink中设置:
如果要定义为矩阵,可以将dimensions处设置成[m,n].(m ,n是你的矩阵行、列数)
这样就可以啦!