automate make process
This commit is contained in:
@@ -220,12 +220,23 @@ function [ssc]=StateSpaceControlDesign(mot,mode)
|
||||
end
|
||||
|
||||
mat2py=struct();
|
||||
[ozA,ozB,ozC,ozD]=ssdata(ss_oz);
|
||||
[pos_err_num,pos_err_den]=tfdata(filt_pos_err_z);
|
||||
for k=["Ts","V","MaxDac","ozA","ozB","ozC","ozD","pos_err_num","pos_err_den"]
|
||||
mat2py=setfield(mat2py,k,eval(k));
|
||||
end
|
||||
fn=sprintf('/tmp/ssc%d.mat',mot.id);
|
||||
%[ozA,ozB,ozC,ozD]=ssdata(ss_oz);
|
||||
%[pos_err_num,pos_err_den]=tfdata(filt_pos_err_z);
|
||||
|
||||
mat2py.Ts=Ts;
|
||||
mat2py.V=V;
|
||||
mat2py.MaxDac=MaxDac;
|
||||
mat2py.ozA=ss_oz.A;
|
||||
mat2py.ozB=ss_oz.B;
|
||||
mat2py.ozC=ss_oz.C;
|
||||
mat2py.ozD=ss_oz.D;
|
||||
mat2py.ozInpName=ss_oz.InputName
|
||||
mat2py.ozOutName=ss_oz.OutputName
|
||||
|
||||
mat2py.pos_err_num=filt_pos_err_z.Numerator{1};
|
||||
mat2py.pos_err_den=filt_pos_err_z.Denominator{1};
|
||||
|
||||
fn=[pwd '/' sprintf( 'ssc%d.mat',mot.id)];
|
||||
save(fn,'-struct','mat2py');
|
||||
disp(['saved ' fn]);
|
||||
end
|
||||
|
||||
@@ -158,7 +158,11 @@ function motCell=identifyFxFyStage(mode)
|
||||
end
|
||||
|
||||
function plotBode(mot)
|
||||
figure()
|
||||
try
|
||||
figure()
|
||||
catch
|
||||
return
|
||||
end
|
||||
h=bodeplot(mot.meas,'r',mot.ss_plt(3,1),'g',mot.ss_c1(3,1),'b',mot.ss_d1(3,1),'m',mot.ss_1(2,1),'c',mot.ss_0(2,1),'k',mot.w);
|
||||
setoptions(h,'FreqUnits','Hz','Grid','on');
|
||||
p=getoptions(h);p.YLim{2}=[-360 90];p.YLimMode='manual';setoptions(h,p);
|
||||
|
||||
Reference in New Issue
Block a user