[求助] 如何将GUI回调函数中得到的变量送到matlabworkspace里阿
function = simulink_Callback(h, eventdata, handles, varargin)fangzhen1
a1=handles.num1;
b1=handles.den1;
a2=handles.num3;
b2=handles.den3;
set_param('fangzhen1/D(z)','Numerator',...
'a1','Denominator','b1');
set_param('fangzhen1/G(z)','Numerator',...
'a2','Denominator','b2');
为什么不能把a1 b1 a2 b2 送到simulink里阿
[ 本帖最后由 lxq 于 2007-5-2 23:48 编辑 ] 要把a1 b1 a2 b2 送到simulink<BR>你首先的把被传递的simulink模型打开,你可以添加以下代码<BR>...<BR>if isempty(find_sysrem('Name','fangzhen1')) <BR> open_system('fangzhen1');%打开模型<BR> open_system('fangzhen1/D(z)');%打开待设置的模块<BR> figure();%括号里为带编辑模块的句2柄<BR> set_param('fangzhen1/D(z)','Numerator',...<BR> 'a1','Denominator','b1'); %设置参数<BR>set_param('fangzhen1/G(z)','Numerator',...<BR> 'a2','Denominator','b2');%设置参数<BR>end 这问题我也碰到过,楼主指令第一句用了<BR>fangzhen1<BR>已经达到了打开模型的功能了,二楼的说法有点问题<BR>执行set_param('fangzhen1/D(z)','Numerator', 'a1')<BR>这种写法并不是不能送进模型,而是模型会把D(z)的数值改为a1这个字符串。要改为<BR>set_param('fangzhen1/D(z)','Numerator',num2str(a1))<BR>如果a1是向量,则要在字符串num2str(a1)前面加'[',后面加']'
页:
[1]