1
我有一个M脚本,它通过GUI从用户处获取参数值,然后用更新后的参数值模拟simulink模型。我想将它转换为一个独立的exe文件,该文件可以在没有Matlab & Simulink(即只有Matlab运行时编译器)的情况下运行。我正在使用MATLAB 2010b 32位。simulink matlab独立可执行文件无法获得输出
我的方法:
由于MATLAB编译器不能转换SIM功能,我先转换我的Simulink模型使用快速仿真目标一个exe文件,然后叫我从MATLAB脚本的exe文件。
[Gain1, Gain2]= InputDataGUI;
load Par.mat %contains parameter structure of the model
param_struct.parameters.values(1:2) = [Gain1 Gain2]; %update
save Par.mat param_struct;
!SimulinkModelName.exe -p Par.mat
save results.mat
这个脚本在Matlab中工作没有错误。最后,我使用deploytool将M文件和所有其他所需文件一起打包成exe文件。这个最终的exe文件运行GUI并保存更新的Par.mat文件,但不会给出仿真结果文件。我也尝试了到档案块来保存结果。我认为脚本无法运行模拟。
我的方法是否正确?
我应该创建一个simulink mex文件吗?
非常感谢您的帮助。
嗨菲尔。感谢您的回复。 – Aastha
我已经检查,我已经遵循所有这些要点。目前我只是用正弦输入进行测试。所以,不需要输入文件。我正在使用'To File'来存储输出。我也只是使用默认输出文件名进行测试。 经过一些测试,我认为不可能将exe文件打包到另一个exe文件中。我今天发现,当我在Matlab中运行最终的exe文件(由deploytool制作)时,它无法访问Simulink Model exe。我收到错误“命令SimulinkModelName.exe被写入不正确或无法找到” – Aastha