MATLAB:如何从GUI m文件到Simulink模型中获取变量

时间:2010-11-25 10:57:51

标签: user-interface simulink matlab

嘿伙计们,我不知道我是否正确地解决了我的问题,但我已经创建了一个GUI,一个m文件和一个simulink。最初我有变量从m文件进入Simulink,但现在我希望用户能够更改变量,所以我创建了一个GUI。我不断收到错误,我不认为变量会再次从GUI m文件转到simulink模型。我记得你必须设置一些东西来做,比如simset或setcurrentsim或者别的东西,但是我记不起来了,所以我想知道有人可以帮我这个吗?

2 个答案:

答案 0 :(得分:0)

使用set_param命令。

看起来应该是这样的:

set_param('model name/block name','block type',string);

在我的代码中,我有一个名为Pitch_Control的模型,带有一个称为Pitch Rate Sensor的增益块。 k2是一个整数。

set_param('Pitch_Control/Pitch Rate Sensor','Gain',num2str(k2));

我希望这会有所帮助。

答案 1 :(得分:0)

extern C有效,但它是一种非常具体的方式,只能用于更改块设置而不能传递参数。

您要找的是assignin。 你选择:var data = new FormData($('#yourFormID')[0]); $.ajax({ url: serverURL, data: data, cache:false, contentType: false, processData: false, type: 'POST', error: function(jqXHR,textStatus,errorThrown){ }, success: function(data){ } }); 由于Simulink从基础工作区导入变量,因此它与旧脚本完成的操作相同。