用GUI实时更改simulink仿真参数
资源内容介绍
本压缩文件里包含了众多的程序,并且可通过GUI实时修改simulink中各个环节的参数。 <html xmlns="http://www.w3.org/1999/xhtml"><meta charset="utf-8"><meta name="generator" content="pdf2htmlEX"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><link rel="stylesheet" href="/image.php?url=https://csdnimg.cn/release/download_crawler_static/css/base.min.css"><link rel="stylesheet" href="/image.php?url=https://csdnimg.cn/release/download_crawler_static/css/fancy.min.css"><link rel="stylesheet" href="/image.php?url=https://csdnimg.cn/release/download_crawler_static/4872988/raw.css"><script src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/js/compatibility.min.js"></script><script src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/js/pdf2htmlEX.min.js"></script><script>try{pdf2htmlEX.defaultViewer = new pdf2htmlEX.Viewer({});}catch(e){}</script><div id="sidebar" style="display: none"><div id="outline"></div></div><div id="pf1" class="pf w0 h0" data-page-no="1"><div class="pc pc1 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/4872988/bg1.jpg"><div class="c x0 y1 w2 h2"><div class="t m0 x1 h3 y2 ff1 fs0 fc0 sc0 ls0 ws0">信号与系统的<span class="_ _0"> </span><span class="ff2 sc1">MA<span class="_ _1"></span>TLAB<span class="_ _0"> </span><span class="ff1 sc0">仿真</span></span></div><div class="t m0 x2 h4 y3 ff1 fs1 fc0 sc0 ls0 ws0">一、信号生成与运算的实现</div><div class="t m0 x3 h5 y4 ff2 fs2 fc0 sc1 ls0 ws0">1.1 <span class="ff1 sc0">实现</span></div><div class="t m0 x3 h6 y5 ff2 fs2 fc0 sc1 ls0 ws0">m1<span class="_ _2"></span>1.m</div><div class="t m0 x3 h5 y6 ff3 fs2 fc0 sc1 ls0 ws0">t=-3*pi:0.01*pi:3*pi; % <span class="ff1">定义时间范围向量<span class="_ _3"> </span></span>t</div><div class="t m0 x3 h5 y7 ff3 fs2 fc0 sc1 ls0 ws0">f=sinc(t/pi); % <span class="ff1">计算<span class="_ _3"> </span></span>Sa(t)<span class="ff1">函数</span></div><div class="t m0 x3 h5 y8 ff3 fs2 fc0 sc1 ls0 ws0">plot(t,f); % <span class="ff1">绘制<span class="_ _3"> </span></span>Sa(t)<span class="ff1">的波形</span></div><div class="t m0 x3 h5 y9 ff1 fs2 fc0 sc0 ls0 ws0">运行结果:</div><div class="t m0 x3 h5 ya ff2 fs2 fc0 sc1 ls0 ws0">1.2 <span class="ff1 sc0">实现</span></div><div class="t m0 x3 h6 yb ff2 fs2 fc0 sc1 ls0 ws0">m12.m</div><div class="t m0 x3 h5 yc ff3 fs2 fc0 sc1 ls0 ws0">t=-10:0.01:10; % <span class="ff1">定义时间范围向量<span class="_ _3"> </span></span>t</div><div class="t m0 x3 h5 yd ff3 fs2 fc0 sc1 ls0 ws0">f=sinc(t); % <span class="ff1">计算<span class="_ _3"> </span></span>sinc(t)<span class="ff1">函数</span></div><div class="t m0 x3 h5 ye ff3 fs2 fc0 sc1 ls0 ws0">plot(t,f); % <span class="ff1">绘制<span class="_ _3"> </span></span>sinc(t)<span class="ff1">的波形</span></div><div class="t m0 x3 h5 yf ff1 fs2 fc0 sc0 ls0 ws0">运行结果:</div><div class="t m0 x3 h5 y10 ff2 fs2 fc0 sc1 ls0 ws0">1.3 <span class="ff1 sc0">信号相加:</span></div><div class="t m0 x3 h6 y11 ff2 fs2 fc0 sc1 ls0 ws0">m13.m</div><div class="t m0 x3 h5 y12 ff3 fs2 fc0 sc1 ls0 ws0">syms t; % <span class="ff1">定义符号变量<span class="_ _3"> </span></span>t</div><div class="t m0 x3 h5 y13 ff3 fs2 fc0 sc1 ls0 ws0">f=cos(18*pi*t)+cos(20*pi*t); % <span class="ff1">计算符号函数<span class="_ _3"> </span></span>f(t)=cos(18*pi*t)+cos(20*pi*t)</div><div class="t m0 x3 h5 y14 ff3 fs2 fc0 sc1 ls0 ws0">ezplot(f,[0 pi]); % <span class="ff1">绘制<span class="_ _3"> </span></span>f(t)<span class="ff1">的波形</span></div><div class="t m0 x3 h5 y15 ff1 fs2 fc0 sc0 ls0 ws0">运行结果:</div></div><div class="t m0 x4 h7 y16 ff3 fs3 fc0 sc1 ls0 ws0">1</div></div><div class="pi" data-data='{"ctm":[1.611850,0.000000,0.000000,1.611850,0.000000,0.000000]}'></div></div></html><div id="pf2" class="pf w0 h0" data-page-no="2"><div class="pc pc2 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/4872988/bg2.jpg"><div class="c x0 y1 w2 h2"><div class="t m0 x3 h5 y17 ff2 fs2 fc0 sc1 ls0 ws0">1.4 <span class="ff1 sc0">信号的调制:</span></div><div class="t m0 x3 h6 y5 ff2 fs2 fc0 sc1 ls0 ws0">m14.m</div><div class="t m0 x3 h5 y6 ff3 fs2 fc0 sc1 ls0 ws0">syms t; % <span class="ff1">定义符号变量<span class="_ _3"> </span></span>t</div><div class="t m0 x3 h5 y7 ff3 fs2 fc0 sc1 ls0 ws0">f=(2+2*sin(4*pi*t))*cos(50*pi*t) % <span class="ff1">计算符号函数<span class="_ _3"> </span></span>f(t)=(2+2*sin(4*pi*t))*cos(50*pi*t)</div><div class="t m0 x3 h5 y8 ff3 fs2 fc0 sc1 ls0 ws0">ezplot(f,[0 pi]); % <span class="ff1">绘制<span class="_ _3"> </span></span>f(t)<span class="ff1">的波形</span></div><div class="t m0 x3 h5 y9 ff1 fs2 fc0 sc0 ls0 ws0">运行结果:</div><div class="t m0 x3 h5 y18 ff2 fs2 fc0 sc1 ls0 ws0">1.5 <span class="ff1 sc0">信号相乘:</span></div><div class="t m0 x3 h6 yb ff2 fs2 fc0 sc1 ls0 ws0">m15.m</div><div class="t m0 x3 h5 yc ff3 fs2 fc0 sc1 ls0 ws0">t=-5:0.01:5; % <span class="ff1">定义时间范围向量</span></div><div class="t m0 x3 h5 yd ff3 fs2 fc0 sc1 ls0 ws0">f=sinc(t).*cos(20*pi*t); % <span class="ff1">计算函数<span class="_ _3"> </span></span>f(t)=sinc(t)*cos(20*pi*t)</div><div class="t m0 x3 h5 ye ff3 fs2 fc0 sc1 ls0 ws0">plot(t,f); % <span class="ff1">绘制<span class="_ _3"> </span></span>f(t)<span class="ff1">的波形</span></div><div class="t m0 x3 h5 yf ff3 fs2 fc0 sc1 ls0 ws0">title('sinc(t)*cos(20*pi*t)'); % <span class="ff1">加注波形标题</span></div><div class="t m0 x3 h5 y19 ff1 fs2 fc0 sc0 ls0 ws0">运行结果:</div><div class="t m0 x5 h4 y1a ff1 fs1 fc0 sc0 ls0 ws0">二、系统时域的仿真分析</div></div><div class="t m0 x4 h7 y16 ff3 fs3 fc0 sc1 ls0 ws0">2</div></div><div class="pi" data-data='{"ctm":[1.611850,0.000000,0.000000,1.611850,0.000000,0.000000]}'></div></div><div id="pf3" class="pf w0 h0" data-page-no="3"><div class="pc pc3 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/4872988/bg3.jpg"><div class="c x0 y1 w2 h2"><div class="t m0 x3 h5 y1b ff2 fs2 fc0 sc1 ls0 ws0">2.1 <span class="ff1 sc0">实现卷积<span class="_ _4"> </span>,其中:</span></div><div class="t m0 x3 h6 y1c ff2 fs2 fc0 sc1 ls0 ws0">m21.m</div><div class="t m0 x3 h5 y1d ff3 fs2 fc0 sc1 ls0 ws0">p=0.01; % <span class="ff1">取样时间间隔</span> </div><div class="t m0 x3 h5 y1e ff3 fs2 fc0 sc1 ls0 ws0">nf=0:p:1; % f(t)<span class="ff1">对应的时间向量</span></div><div class="t m0 x3 h5 y1f ff3 fs2 fc0 sc1 ls0 ws0">f=2*((nf>=0)-(nf>=1)); % <span class="ff1">序列<span class="_ _3"> </span></span>f(n)<span class="ff1">的值</span></div><div class="t m0 x3 h5 y20 ff3 fs2 fc0 sc1 ls0 ws0">nh=0:p:2; % h(t)<span class="ff1">对应的时间向量</span></div><div class="t m0 x3 h5 y21 ff3 fs2 fc0 sc1 ls0 ws0">h=(nh>=0)-(nh>=2); % <span class="ff1">序列<span class="_ _3"> </span></span>h(n)<span class="ff1">的值</span></div><div class="t m0 x3 h5 y22 ff3 fs2 fc0 sc1 ls0 ws0">[y<span class="_ _2"></span>,k]=sconv(f,h,nf,nh,p); % <span class="ff1">计算<span class="_ _3"> </span></span>y(t)=f(t)*h(t)</div><div class="t m0 x3 h5 y23 ff3 fs2 fc0 sc1 ls0 ws0">subplot(3,1,1),stairs(nf,f); % <span class="ff1">绘制<span class="_ _3"> </span></span>f(t)<span class="ff1">的波形</span> </div><div class="t m0 x3 h8 y24 ff3 fs2 fc0 sc1 ls0 ws0">title('f(t)');axis([0 3 0 2.1]);</div><div class="t m0 x3 h5 y25 ff3 fs2 fc0 sc1 ls0 ws0">subplot(3,1,2),stairs(nh,h); % <span class="ff1">绘制<span class="_ _3"> </span></span>h(t)<span class="ff1">的波形</span></div><div class="t m0 x3 h8 y26 ff3 fs2 fc0 sc1 ls0 ws0">title('h(t)');axis([0 3 0 1.1]);</div><div class="t m0 x3 h5 y7 ff3 fs2 fc0 sc1 ls0 ws0">subplot(3,1,3),plot(k,y); % <span class="ff1">绘制<span class="_ _3"> </span></span>y(t)=f(t)*h(t)<span class="ff1">的波形</span></div><div class="t m0 x3 h8 y27 ff3 fs2 fc0 sc1 ls0 ws0">title('y(t)=f(t)*h(t)');axis([0 3 0 2.1]);</div><div class="t m0 x3 h5 y28 ff1 fs2 fc0 sc0 ls0 ws0">子程序<span class="ff2 sc1"> sconv<span class="_ _2"></span>.m</span></div><div class="t m0 x3 h5 y29 ff3 fs2 fc0 sc1 ls0 ws0">% <span class="ff1">此函数用于计算连续信号的卷积<span class="_ _3"> </span></span>y(t)=f(t)*h(t) </div><div class="t m0 x3 h8 y2a ff3 fs2 fc0 sc1 ls0 ws0">function [y<span class="_ _2"></span>,k]=sconv(f,h,nf,nh,p) </div><div class="t m0 x3 h5 y2b ff3 fs2 fc0 sc1 ls0 ws0">% y:<span class="ff1">卷积积分<span class="_ _3"> </span></span>y(t)<span class="ff1">对应的非零样值向量</span> </div><div class="t m0 x3 h5 y2c ff3 fs2 fc0 sc1 ls0 ws0">% k:y(t)<span class="ff1">对应的时间向量</span> </div><div class="t m0 x3 h5 y2d ff3 fs2 fc0 sc1 ls0 ws0">% f:f(t)<span class="ff1">对应的非零样值向量</span> </div><div class="t m0 x3 h5 y2e ff3 fs2 fc0 sc1 ls0 ws0">% nf:f(t)<span class="ff1">对应的时间向量</span> </div><div class="t m0 x3 h5 y2f ff3 fs2 fc0 sc1 ls0 ws0">% h:h(t)<span class="ff1">对应的非零样值向量</span> </div><div class="t m0 x3 h5 y30 ff3 fs2 fc0 sc1 ls0 ws0">% nh:h(t)<span class="ff1">对应的时间向量</span> </div><div class="t m0 x3 h5 y31 ff3 fs2 fc0 sc1 ls0 ws0">% p:<span class="ff1">取样时间间隔</span> </div><div class="t m0 x3 h5 y32 ff3 fs2 fc0 sc1 ls0 ws0">y=conv(f,h); % <span class="ff1">计算序列<span class="_ _3"> </span></span>f(n)<span class="ff1">与<span class="_ _3"> </span></span>h(n)<span class="ff1">的卷积和<span class="_ _3"> </span></span>y(n) </div><div class="t m0 x3 h5 y33 ff3 fs2 fc0 sc1 ls0 ws0">y=y*p; % y(n)<span class="ff1">变成<span class="_ _3"> </span></span>y(t)</div><div class="t m0 x3 h5 yc ff3 fs2 fc0 sc1 ls0 ws0">left=nf(1)+nh(1) % <span class="ff1">计算序列<span class="_ _3"> </span></span>y(n)<span class="ff1">非零样值的起点位置</span> </div><div class="t m0 x3 h5 yd ff3 fs2 fc0 sc1 ls0 ws0">right=length(nf)+length(nh)-2 % <span class="ff1">计算序列<span class="_ _3"> </span></span>y(n)<span class="ff1">非零样值的终点位置</span></div><div class="t m0 x3 h5 ye ff3 fs2 fc0 sc1 ls0 ws0">k=p*(left:right); % <span class="ff1">确定卷积和<span class="_ _3"> </span></span>y(n)<span class="ff1">非零样值的时间向量</span></div><div class="t m0 x3 h5 yf ff1 fs2 fc0 sc0 ls0 ws0">运行结果:</div></div><div class="t m0 x4 h7 y16 ff3 fs3 fc0 sc1 ls0 ws0">3</div></div><div class="pi" data-data='{"ctm":[1.611850,0.000000,0.000000,1.611850,0.000000,0.000000]}'></div></div><div id="pf4" class="pf w0 h0" data-page-no="4"><div class="pc pc4 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/4872988/bg4.jpg"><div class="c x0 y1 w2 h2"><div class="t m0 x3 h5 y34 ff2 fs2 fc0 sc1 ls0 ws0">2.2 <span class="ff1 sc0">实现卷积<span class="_ _4"> </span>,其中:</span></div><div class="t m0 x3 h6 y35 ff2 fs2 fc0 sc1 ls0 ws0">m22.m</div><div class="t m0 x3 h5 y1e ff3 fs2 fc0 sc1 ls0 ws0">p=0.01; % <span class="ff1">取样时间间隔</span> </div><div class="t m0 x3 h5 y1f ff3 fs2 fc0 sc1 ls0 ws0">nf=0:p:2; % f(t)<span class="ff1">对应的时间向量</span></div><div class="t m0 x3 h5 y20 ff3 fs2 fc0 sc1 ls0 ws0">f=2*((nf>=0)-(nf>=2)); % <span class="ff1">序列<span class="_ _3"> </span></span>f(n)<span class="ff1">的值</span></div><div class="t m0 x3 h5 y21 ff3 fs2 fc0 sc1 ls0 ws0">nh=0:p:4; % h(t)<span class="ff1">对应的时间向量</span></div><div class="t m0 x3 h5 y22 ff3 fs2 fc0 sc1 ls0 ws0">h=exp(-nh); % <span class="ff1">序列<span class="_ _3"> </span></span>h(n)<span class="ff1">的值</span></div><div class="t m0 x3 h5 y23 ff3 fs2 fc0 sc1 ls0 ws0">[y<span class="_ _2"></span>,k]=sconv(f,h,nf,nh,p); % <span class="ff1">计算<span class="_ _3"> </span></span>y(t)=f(t)*h(t)</div><div class="t m0 x3 h5 y36 ff3 fs2 fc0 sc1 ls0 ws0">subplot(3,1,1),stairs(nf,f); % <span class="ff1">绘制<span class="_ _3"> </span></span>f(t)<span class="ff1">的波形</span> </div><div class="t m0 x3 h8 y5 ff3 fs2 fc0 sc1 ls0 ws0">title('f(t)');axis([0 6 0 2.1]);</div><div class="t m0 x3 h5 y6 ff3 fs2 fc0 sc1 ls0 ws0">subplot(3,1,2),plot(nh,h); % <span class="ff1">绘制<span class="_ _3"> </span></span>h(t)<span class="ff1">的波形</span></div><div class="t m0 x3 h8 y37 ff3 fs2 fc0 sc1 ls0 ws0">title('h(t)');axis([0 6 0 1.1]);</div><div class="t m0 x3 h5 y8 ff3 fs2 fc0 sc1 ls0 ws0">subplot(3,1,3),plot(k,y); % <span class="ff1">绘制<span class="_ _3"> </span></span>y(t)=f(t)*h(t)<span class="ff1">的波形</span></div><div class="t m0 x3 h5 y9 ff3 fs2 fc0 sc1 ls0 ws0">title('y(t)=f(t)*h(t)');axis([0 6 0 2.1]);<span class="ff1 sc0">运行结果:</span></div><div class="t m0 x3 h5 y38 ff2 fs2 fc0 sc1 ls0 ws0">2.3 <span class="ff1 sc0">设方程</span> <span class="_ _5"> </span><span class="ff1 sc0">,试求零状态响应<span class="_ _6"> </span></span> </div><div class="t m0 x3 h5 y39 ff2 fs2 fc0 sc1 ls0 ws0">m23.m<span class="ff1 sc0">:</span></div><div class="t m0 x3 h8 y3a ff3 fs2 fc0 sc1 ls0 ws0">yzs=dsolve('D2y+5*Dy+6*y=2*exp(-t)','y(0)=0,Dy(0)=0')</div><div class="t m0 x3 h8 y3b ff3 fs2 fc0 sc1 ls0 ws0">ezplot(yzs,[0 8]);</div><div class="t m0 x3 h5 y3c ff1 fs2 fc0 sc0 ls0 ws0">运行结果:</div><div class="t m0 x3 h8 y3d ff3 fs2 fc0 sc1 ls0 ws0">yzs =exp(-t)+exp(-3*t)-2*exp(-2*t)</div><div class="t m0 x3 h5 y3e ff1 fs2 fc0 sc1 ls0 ws0">即:</div></div><div class="t m0 x4 h7 y16 ff3 fs3 fc0 sc1 ls0 ws0">4</div></div><div class="pi" data-data='{"ctm":[1.611850,0.000000,0.000000,1.611850,0.000000,0.000000]}'></div></div><div id="pf5" class="pf w0 h0" data-page-no="5"><div class="pc pc5 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/4872988/bg5.jpg"><div class="c x0 y1 w2 h2"><div class="t m0 x3 h5 y3f ff2 fs2 fc0 sc1 ls0 ws0">2.4 <span class="ff1 sc0">已知二阶系统方程</span></div><div class="t m0 x3 h5 y40 ff1 fs2 fc0 sc0 ls0 ws0">对下列情况分别求<span class="_ _7"> </span>,并画出其波形。</div><div class="t m0 x3 h6 y41 ff2 fs2 fc0 sc1 ls0 ws0">a. </div><div class="t m0 x3 h6 y42 ff2 fs2 fc0 sc1 ls0 ws0">b. </div><div class="t m0 x3 h6 y43 ff2 fs2 fc0 sc1 ls0 ws0">c. </div><div class="t m0 x3 h6 y44 ff2 fs2 fc0 sc1 ls0 ws0">d. </div><div class="t m0 x3 h6 y45 ff2 fs2 fc0 sc1 ls0 ws0">m24.m: </div><div class="t m0 x3 h5 y2c ff3 fs2 fc0 sc1 ls0 ws0">R=input('<span class="ff1">电阻<span class="_ _3"> </span></span>R='); % <span class="ff1">以交互方式输入电阻<span class="_ _3"> </span></span>R<span class="_ _3"> </span><span class="ff1">的值</span></div><div class="t m0 x3 h5 y2d ff3 fs2 fc0 sc1 ls0 ws0">L=input('<span class="ff1">电感<span class="_ _3"> </span></span>L='); % <span class="ff1">以交互方式输入电阻<span class="_ _3"> </span></span>L<span class="_ _3"> </span><span class="ff1">的值</span></div><div class="t m0 x3 h5 y2e ff3 fs2 fc0 sc1 ls0 ws0">C=input('<span class="ff1">电容<span class="_ _3"> </span></span>C='); % <span class="ff1">以交互方式输入电阻<span class="_ _3"> </span></span>C<span class="_ _3"> </span><span class="ff1">的值</span></div><div class="t m0 x3 h8 y46 ff3 fs2 fc0 sc1 ls0 ws0">b=[1/(L*C)];</div><div class="t m0 x3 h8 y47 ff3 fs2 fc0 sc1 ls0 ws0">a=[1 R/L<span class="_ _8"></span> 1/(L*C)];</div><div class="t m0 x3 h8 y48 ff3 fs2 fc0 sc1 ls0 ws0">impulse(b,a)<span class="ff2">;</span></div><div class="t m0 x3 h5 y32 ff1 fs2 fc0 sc0 ls0 ws0">运行结果:</div><div class="t m0 x3 h9 y49 ff3 fs3 fc0 sc1 ls0 ws0">a. <span class="ff1">电阻<span class="_ _9"> </span></span>R=4 <span class="ff1">电感<span class="_ _9"> </span></span>L=1 <span class="ff1">电容<span class="_ _9"> </span></span>C=1/3</div><div class="t m0 x3 h9 y4a ff3 fs3 fc0 sc1 ls0 ws0">b. <span class="ff1">电阻<span class="_ _9"> </span></span>R=2 <span class="ff1">电感<span class="_ _9"> </span></span>L=1 <span class="ff1">电容<span class="_ _9"> </span></span>C=1</div></div><div class="t m0 x4 h7 y16 ff3 fs3 fc0 sc1 ls0 ws0">5</div></div><div class="pi" data-data='{"ctm":[1.611850,0.000000,0.000000,1.611850,0.000000,0.000000]}'></div></div>