首页 信号与系统SignalsandSystemsppt课件

信号与系统SignalsandSystemsppt课件

举报
开通vip

信号与系统SignalsandSystemsppt课件信号与系统SignalsandSystemsppt课件利用MATLAB进行信号与系统分析MATLAB简介信号的MATLAB表示利用MATLAB进行系统的时域分析利用MATLAB进行信号的频域分析利用MATLAB分析系统的频率特性利用MATLAB进行连续系统的S域分析利用MATLAB进行离散系统的Z域分析利用MATLAB进行系统的状态变量分析MATLAB简介(MatrixLaboratory)MATLAB的工作方式如何获取帮助表达式——变量、数值、算数运算符、关系运算符、逻辑运算符、冒号运算符数组及其运算函数文件循环...

信号与系统SignalsandSystemsppt课件
信号与系统SignalsandSystems ppt 关于艾滋病ppt课件精益管理ppt下载地图下载ppt可编辑假如ppt教学课件下载triz基础知识ppt 课件利用MATLAB进行信号与系统 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 MATLAB简介信号的MATLAB 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示利用MATLAB进行系统的时域分析利用MATLAB进行信号的频域分析利用MATLAB分析系统的频率特性利用MATLAB进行连续系统的S域分析利用MATLAB进行离散系统的Z域分析利用MATLAB进行系统的状态变量分析MATLAB简介(MatrixLaboratory)MATLAB的工作方式如何获取帮助表达式——变量、数值、算数运算符、关系运算符、逻辑运算符、冒号运算符数组及其运算函数文件循环(FOR、WHILE循环)基本绘图语句一、MATLAB的工作方式(1)窗口命令方式(2)运行以.M为扩展名磁盘文件工作方式举例%用plot函数画一个方波t=[-100113];f=[001100];plot(t,f);xlabel('t');ylabel('f(t)');axis([-1302]);直接在命令窗口输入以上命令建一个名字为my_file.M的文件,然后在命令窗口输入文件名及回车。二、获取帮助命令窗口输入:help+函数名例如helpplot三、表达式不需要变量的类型说明变量名的第一个字符必须是字母变量名长度:不超过31个字符大写和小写的字母视为不同的字符例如:num_students=25特殊变量:pi表示圆周率,inf表示无穷大,NaN(NotaNumber)表示不定量,如0/0。变量三、表达式数值MATLAB用常规的十进制表示数值用i或j作为后缀来表示复数的虚部例1.235e5表示1.235105,x=2+3jabs(x)求复数x的模angle(x)求复数x的相角(弧度)real(x)求复数x的实部imag(x)求复数x的虚部conj(x)求复数x的共轭三、表达式运算符号算数运算符+加-减*乘/除^乘方‘矩阵的复共轭转置三、表达式运算符号逻辑运算符A&B逻辑与(and)A|B逻辑或(or)~A逻辑非(not)值为0时表示逻辑假(F),其它任何非零值表示逻辑真。三、表达式运算符号关系运算符AB大于A<=B小于等于A>=B大于等于A==B等于A~=B不等于三、表达式运算符号冒号运算符表达式1:10表示产生一个行向量,它的值为12345678910表达式10:-2:1表示产生一个递减的行向量,它的值为108642四、数组1.数组的构造用冒号:产生数组例x=2:5产生一个数组,它的值为x(1)=2,x(2)=3,x(3)=4,x(4)=5x=linspace(0,2,11)将区间[0,2]均匀抽样11点作为数组x给2维数组赋值时,用分号表示一行的结束,如:z=[12;34]。用linspace产生数组四、数组1.数组的构造MATLAB提供了一些产生基本矩阵的函数zeros产生矩阵元素全为0的矩阵ones产生矩阵元素全为1的矩阵rand产生(0,1)均匀分布随机数矩阵randn产生正态分布随机数矩阵四、数组2.数组的运算数组和一个标量相加或相乘例y=x-1z=3*x2个数组的对应元素相乘除.*./例z=x.*y确定数组大小的函数size(A)返回值数组A的行数和列数(二维)length(B)确定数组B的元素个数(一维)五、函数文件M文件的第一行包含function功能:建立一个函数,可以同MATLAB的库函数一样使用。五、函数文件例:编一个绘制图示波形的函数。functiony=tri(t)y=[abs(t)<=1].*(1-abs(t));调用函数tri,并画出它的波形t=-2:0.05:2;plot(t,tri(t));六、For循环例:编写计算s=1+2+3+…+100的MATLAB程序s=0;forn=1:100s=s+n;end七、While循环s=0;n=1;eps=1e-6;while1/(n*n)>epss=s+1/(n*n);n=n+1;end例:计算的值,且误差小于10-6fprintf('s=%.5f\n',s)八、plot函数——绘图函数(continuous)t=linspace(0,4*pi,512);plot(t,sin(t),t,cos(t),'-.');title('myfigure');xlabel('t');legend('sin(t)','cos(t)');八、plot函数——绘图函数(continuous)九、stem函数——绘图函数(discrete)k=0:39;stem(k,cos(0.9*pi*k));title('cos(0.9\pik)');九、stem函数——绘图函数(discrete)cos(0.9k)波形信号的MATLAB表示基本信号的MATLAB表示指数信号Aeat、指数序列ak、抽样函数Sa(t)、正弦型信号、矩形脉冲信号、三角脉冲信号信号基本运算的MATLAB实现尺度变换、翻转、时移、相加、相乘、差分与求和、微分与积分一、基本信号的MATLAB表示指数信号Aeaty=A*exp(a*t);指数序列ak幂运算a.^k实现正弦型信号内部函数cos()和sin()抽样函数Sa(t)sinc(t)矩形脉冲信号y=rectpuls(t,width)三角波脉冲信号y=tripuls(t,width,skew)一、基本信号的MATLAB表示%decayingexponentialt=0:001:10;A=1;a=-0.4;ft=A*exp(a*t);plot(t,ft)t=0:0.1:10;A=1;a=-0.4;ft=A*exp(a*t);stem(t,ft)一、基本信号的MATLAB表示%rectpulst=0:0.001:4;T=1;ft=rectpuls(t-2*T,T);plot(t,ft)axis([0,4,-0.5,1.5])一、基本信号的MATLAB表示%tripulst=-3:0.001:3;ft=tripuls(t,4,0.5);plot(t,ft)ft=tripuls(t,4,1);一、基本信号的MATLAB表示%unitimpulssequencek=-50:50;delta=[zeros(1,50),1,zeros(1,50)];stem(k,delta)function[f,k]=impseq(k0,k1,k2)%产生f[k]=delta(k-k0);k1<=k<=k2k=[k1:k2];f=[(k-k0)==0];k0=0;k1=-50;k2=50;[f,k]=impseq(k0,k1,k2);stem(k,f)一、基本信号的MATLAB表示%unitstepsequencek=-50:50;uk=[zeros(1,50),ones(1,51)];stem(k,uk)function[f,k]=stepseq(k0,k1,k2)%产生f[k]=u(k-k0);k1<=k<=k2k=[k1:k2];f=[(k-k0)>=0];k0=0;k1=-50;k2=50;[f,k]=stepseq(k0,k1,k2);stem(k,f)二、信号基本运算的MATLAB实现t=-3:0.001:3;ft1=tripuls(2*t,4,0.5);subplot(2,1,1)plot(t,ft1)title('f(2t)')ft2=tripuls((2-2*t),4,0.5);subplot(2,1,2)plot(t,ft2)title('f(2-2t)')1.信号的尺度变换、翻转、时移(平移)已知三角波f(t),用MATLAB画出的f(2t)和f(2-2t)波形二、信号基本运算的MATLAB实现2.信号的相加与相乘相加用算术运算符“+”实现相乘用数组运算符“.*”实现例:画信号Aeatcos(w0t+f)的波形t=0:0.001:8;A=1;a=-0.4;w0=2*pi;phi=0;ft1=A*exp(a*t).*sin(w0*t+phi);plot(t,ft1)二、信号基本运算的MATLAB实现3.离散序列的差分与求和连续信号的微分与积分差分y=diff(f);求和y=sum(f(k1:k2));微分y=diff(f)/h;h为数值计算所取时间间隔定积分quad(‘function_name’,a,b);function_name为被积函数名,a和b指定积分区间。二、信号基本运算的MATLAB实现3.离散序列的差分与求和连续信号的微分与积分例:已知三角波f(t),画出其微分与积分的波形%differentiationh=0.001;t=-3:h:3;y1=diff(f2_2(t))*1/h;plot(t(1:length(t)-1),y1)%integrationt=-3:0.1:3;forx=1:length(t)y2(x)=quad('f2_2',-3,t(x));endplot(t,y2)三角波f(t)微分与积分的波形利用MATLAB进行系统的时域分析连续时间系统零状态响应的求解连续时间系统冲激响应和阶跃响应的求解离散时间系统零状态响应的求解离散时间系统单位脉冲响应的求解离散卷积的计算一、连续时间系统零状态响应的求解t表示计算系统响应的抽样点向量a=[a3,a2,a1,a0];b=[b3,b2,b1,b0];sys=tf(b,a)y=lsim(sys,f,t)sys=tf(b,a)b和a分别为微分方程右端和左端各项的系数向量f是系统输入信号向量,sys是LTI系统模型,借助tf函数获得二、连续时间系统冲激响应和阶跃响应的求解连续时间系统冲激响应可用impulse函数直接求出,其调用形式为y=impulse(sys,t)连续时间系统阶跃响应可用step函数直接求出,其调用形式为y=step(sys,t)t表示计算系统响应的抽样点向量sys是LTI系统模型三、离散时间系统零状态响应的求解b,a分别是差分方程左、右端的系数向量b=[b0,b1,b2,,bM];a=[a0,a1,a2,,aN];可用MATLAB表示为y=filter(b,a,f)f表示输入序列,y表示输出序列四、离散时间系统单位脉冲响应的求解b,a分别是差分方程左、右端的系数向量k表示输出序列的取值范围h就是单位脉冲响应h=impz(b,a,k)五、离散卷积的计算例:(s3+2s+3)(s2+3s+2)可用下面MATLAB语句求出a=[1,0,2,3];b=[1,3,2];c=conv(a,b)c=conv(a,b)式中a,b为待卷积两序列的向量表示,c是卷积结果。conv函数也可用于计算两个多项式的积例1求系统y"(t)+2y'(t)+100y(t)=10f(t)的零状态响应,已知f(t)=sin(2pt)u(t)。%program3_1微分方程求解ts=0;te=5;dt=0.01;sys=tf([1],[12100]);t=ts:dt:te;f=10*sin(2*pi*t);y=lsim(sys,f,t);plot(t,y);xlabel('Time(sec)')ylabel('y(t)')例2求系统y"(t)+2y'(t)+100y(t)=10f(t)的零状态响应,已知f(t)=d(t)。%program3_2连续时间系统的冲激响应ts=0;te=5;dt=0.01;sys=tf([10],[12100]);t=ts:dt:te;y=impulse(sys,t);plot(t,y);xlabel('Time(sec)')ylabel('h(t)')例3分析噪声干扰的信号f[k]=s[k]+d[k]通过M点滑动平均系统的响应,其中s[k]=(2k)0.9k是原始信号,d[k]是噪声。R=51;d=rand(1,R)-0.5;k=0:R-1;s=2*k.*(0.9.^k);f=s+d;figure(1);plot(k,d,'r-.',k,s,'b--',k,f,'g-');M=5;b=ones(M,1)/M;a=1;y=filter(b,a,f);figure(2);plot(k,s,'b--',k,y,'r-');例3分析噪声干扰的信号f[k]=s[k]+d[k]通过M点滑动平均系统的响应,其中s[k]=(2k)0.9k是原始信号,d[k]是噪声。噪声干扰信号f[k]=s[k]+d[k]通过M点滑动平均系统的响应例4求系统y[k]+3y[k-1]+2y[k-1]=10f[k]的单位脉冲响应。%program3_4离散系统的单位脉冲响应k=0:10;a=[132];b=[1];h=impz(b,a,k);stem(k,h)例5计算x[k]*y[k]并画出卷积结果,已知x[k]={1,2,3,4;k=0,1,2,3},y[k]={1,1,1,1,1;k=0,1,2,3,4}。%program3_5x=[1,2,3,4];y=[1,1,1,1,1];z=conv(x,y);N=length(z);stem(0:N-1,z);利用MATLAB进行信号的频域分析周期信号频谱的MATLAB实现用数值积分分析非周期信号频谱一、周期信号频谱的MATLAB实现频谱Fn一般为复数,可分别利用abs和angle函数获得其幅频特性和相频特性。其调用格式分别为x=abs(Fn)y=angle(Fn)周期信号的频谱Fn为离散信号,可以用stem画出其频谱图。例1试用MATLAB画出图示周期三角波信号的频谱。解:周期信号的频谱为画三角波信号频谱的MATLAB程序N=8;n1=-N:-1;%计算n=-N到-1的Fourier系数c1=-4*j*sin(n1*pi/2)/pi^2./n1.^2;c0=0;%计算n=0时的Fourier系数n2=1:N;%计算n=1到N的Fourier系数c2=-4*j*sin(n2*pi/2)/pi^2./n2.^2;cn=[c1c0c2];n=-N:N;subplot(2,1,1);stem(n,abs(cn));ylabel('Cn的幅度');subplot(2,1,2);stem(n,angle(cn));ylabel('Cn的相位');xlabel('\omega/\omega0');程序运行结果例2求周期矩形脉冲的Fourier级数表示式。并用MATLAB求出由前N项Fourier级数系数得出的信号近似波形。取A=1,T=2,t=1,w0=p%Gibbsphenomenont=-2:0.001:2;N=input('Numberofharmonics=');c0=0.5;cN=c0*ones(1,length(t));%dccomponentforn=0:2:N-1%evenharmonicsarezerocN=cN+cos(pi*n*t)*sinc(n/2);endplot(t,xN);%GibbsphenomenonN=5N=15N=50N=500二、用数值积分分析非周期信号频谱数值函数积分quad8可用来计算非周期信号频谱F是一个字符串,它表示被积函数的文件名。a,b分别表示定积分的下限和上限quad8的返回是用自适应Simpson算法得出的积分值y=quad8('F',a,b)例3试用数值方法近似计算三角波信号的频谱F(jw)=Sa2(w/2)解:图示三角波可表示为三角波信号频谱的理论值为例3试用数值方法近似计算三角波信号的频谱functiony=sf1(t,w);y=(t>=-1&t<=1).*(1-abs(t)).*exp(-j*w*t);w=linspace(-6*pi,6*pi,512);N=length(w);F=zeros(1,N);fork=1:NF(k)=quad8('sf1',-1,1,[],[],w(k));endfigure(1);plot(w,real(F));title('')xlabel('\omega');ylabel('F(j\omega)');figure(2);plot(w,real(F)-sinc(w/2/pi).^2);xlabel('\omega');title('计算误差');例3试用数值方法近似计算三角波信号的频谱运行结果利用MATLAB进行系统频域分析连续系统频响特性的计算周期信号通过系统的响应离散系统频响特性的计算一、连续系统频响特性的计算b分子多项式系数a分母多项式系数w需计算的H(jw)的抽样点(数组w中少需包含两个w的抽样点)。计算频响的MATLAB函数H=freqs(b,a,w)一、连续系统频响特性的计算例1三阶归一化的Butterworth低通滤波器的系统函数为w=linspace(0,5,200);b=[1];a=[1221];h=freqs(b,a,w);subplot(2,1,1);plot(w,abs(h));subplot(2,1,2);plot(w,angle(h));试画出|H(jw)|和(w)。一、连续系统频响特性的计算三阶Butterworth低通滤波器的幅度响应和相位响应二、周期信号通过系统的响应例2周期方波通过RC系统的响应。二、周期信号通过系统的响应例2周期方波通过RC系统的响应。%p5_2PeriodicsignalpassLTIsystemT=4;w0=2*pi/T;RC=0.1;t=-6:0.01:6;N=51;c0=0.5;xN=c0*ones(1,length(t));%dcforn=1:2:N%evenharmonicsarezeroH=abs(1/(1+j*RC*w0*n));phi=angle(1/(1+j*RC*w0*n));xN=xN+H*cos(w0*n*t+phi)*sinc(n*0.5);endplot(t,xN);xlabel(['timeRC=',num2str(RC)]);grid;set(gca,'xtick',[-5-3-10135]);二、周期信号通过系统的响应例2周期方波通过RC系统的响应。三、离散系统频率响应的计算计算频率响应的MATLAB函数b分子的系数a分母系数w抽样的频率点(至少2点),w在0~2p之间幅频特性:abs,相频特性:angleh=freqz(b,a,w)三、离散系统频响特性的计算b=[1];a1=[1-0.9];a2=[10.9];w=linspace(0,2*pi,512);h1=freqz(b,a1,w);h2=freqz(b,a2,w);plot(w/pi,abs(h1),w/pi,abs(h2),':');legend('\alpha=0.9','\alpha=-0.9');三、离散系统频响特性的计算利用MATLAB进行连续系统的复频域分析部分分式展开的MATLAB实现H(s)的零极点与系统特性的MATLAB计算一、部分分式展开的MATLAB实现[r,p,k]=residue(num,den)num,den分别为F(s)分子多项式和分母多项式的系数向量。r为部分分式的系数,p为极点,k为多项式的系数。若为真分式,则k为零。二、H(s)的零极点与系统特性的MATLAB计算计算多项式根roots的函数可用于计算H(s)的零极点。r=roots(N)%计算多项式N的根H(s)零极点分布图可用pzmap函数画出,调用形式为pzmap(sys)表示画出sys所描述系统的零极点图。例1用部分分式展开法求F(s)的反变换。%program7_1formatrat%将结果数据以分数的形式输出num=[12];den=[1430];[r,p]=residue(num,den)运行结果为r=-1/6,-1/2,2/3p=-3,-1,0故F(s)可展开为例2用部分分式展开法求F(s)的反变换。%program7_2num=[2305];den=conv([11],[112]);%将因子相乘的形式转换成多项式的形式[r,p,k]=residue(num,den)magr=abs(r)%求r的模angr=angle(r)%求r的相角例2用部分分式展开法求F(s)的反变换。运行结果为r=-2.0000+1.1339i,-2.0000-1.1339i,3.0000p=-0.5000+1.3229i,-0.5000-1.3229i,-1.0000k=2magr=2.299,2.2991,3.0000angr=2.6258,-2.6258,0故F(s)可展开为例3试画出系统的零极点分布图,求其单位冲激响应h(t)和频率响应H(j),并判断系统是否稳定。num=[1];den=[1221];sys=tf(num,den);poles=roots(den)figure(1);pzmap(sys);t=0:0.02:10;h=impulse(num,den,t);figure(2);plot(t,h)title('ImpulseRespone')[H,w]=freqs(num,den);figure(3);plot(w,abs(H))xlabel('\omega')title('MagnitudeRespone')运行结果利用MATLAB进行离散系统的Z域分析部分分式展开的MATLAB实现H(z)的零极点与系统特性的MATLAB计算一、部分分式展开的MATLAB实现[r,p,k]=residuez(num,den)num,den分别为F(z)分子多项式和分母多项式的系数向量。r为部分分式的系数,p为极点,k为多项式的系数。若为真分式,则k为零。二、H(z)的零极点与系统特性的MATLAB计算利用tf2zp函数计算H(z)的零极点,调用形式为[z,p,k]=tf2zp(b,a)H(z)零极点分布图可用zplane函数画出,调用形式为zplane(b,a)b和a分别为H(z)分子多项式和分母多项式的系数向量。返回值z为零点、p为极点、k为增益常数。例1将F(z)用部分分式展开。%program8_1num=[18];den=[183-4-1];[r,p,k]=residuez(num,den)运行结果为r=0.3600,0.2400,0.4000p=0.5000,-0.3333,-0.3333k=[]故F(z)可展开为例2试画出系统的零极点分布图,求其单位冲激响应h[k]和频率响应H(ejW)。%program8_2b=[121];a=[1-0.5-0.0050.3];figure(1);zplane(b,a);num=[0121];den=[1-0.5-0.0050.3];h=impz(num,den);figure(2);stem(h)xlabel('k')title('ImpulseRespone')[H,w]=freqz(num,den);figure(3);plot(w/pi,abs(H))xlabel('Frequency\omega')title('MagnitudeRespone')运行结果利用MATLAB进行系统状态变量分析微分方程到状态方程的转换状态方程系统函数矩阵H(s)的计算MATLAB求解连续系统的状态方程MATLAB求解离散系统的状态方程一、微分方程到状态方程的转换num,den分别表示系统函数H(s)的分子和分母多项式;A,B,C,D分别为状态方程的矩阵。[A,B,C,D]=tf2ss(num,den)二、状态方程系统函数矩阵H(s)的计算A,B,C,D分别表示状态方程的矩阵。K表示函数ss2tf计算的与第k个输入相关的系统函数,即H(s)的第k列。num表示H(s)第k列的m个元素的分子多项式den表示H(s)公共的分母多项式。[num,den]=ss2tf(A,B,C,D,k)三、MATLAB求解连续系统的状态方程sys由函数ss构造的状态方程模型t需计算的输出样本点,t=0:dt:Tfinalf(:,k)系统第k个输入在t上的抽样值x0系统的初始状态(可缺省)y(:,k)系统的第k个输出to实际计算时所用的样本点;x系统的状态获得连续系统状态方程的计算机表示模型sys=ss(A,B,C,D)求解状态方程[y,to,x]=lsim(sys,f,t,x0)四、MATLAB求解离散系统的状态方程sys由函数ss构造的状态方程模型f(:,k)系统第k个输入序列x0系统的初始状态(可缺省)y(:,k)系统的第k个输出n序列的下标;x系统的状态获得离散状态方程的计算机表示模型sys=ss(A,B,C,D,[])求解状态方程[y,n,x]=lsim(sys,f,[],x0)例1写出系统的状态方程。由[A,B,C,D]=tf2ss([1],[1510])可得所以系统的状态方程为C=0D=0例2已知某连续系统的状态方程和输出方程为其初始状态和输入分别为求该系统的系统函数矩阵H(s)和输出。计算系统函数矩阵H(s)A=[23;0-1];B=[01;10];C=[11;0-1];D=[10;10];[num1,den1]=ss2tf(A,B,C,D,1)[num2,den2]=ss2tf(A,B,C,D,2)运行结果num1=10-11-20den1=1-1-2num2=011000den2=1-1-2所以系统函数矩阵H(s)为计算输出%Program9_1A=[23;0-1];B=[01;10];C=[11;0-1];D=[10;10];x0=[2-1];dt=0.01;t=0:dt:2;f(:,1)=ones(length(t),1);f(:,2)=exp(-3*t)';sys=ss(A,B,C,D);y=lsim(sys,f,t,x0);subplot(2,1,1);plot(t,y(:,1),'r');ylabel('y1(t)');xlabel('t');subplot(2,1,2);plot(t,y(:,2));ylabel('y2(t)');xlabel('t');运行结果例3已知某离散系统的状态方程和输出方程为其初始状态和输入分别为求该系统的输出。计算输出%Program9_2A=[01;-23];B=[0;1];C=[11;2-1];D=zeros(2,1);x0=[1;-1];N=10;f=ones(1,N);sys=ss(A,B,C,D,[]);y=lsim(sys,f,[],x0);subplot(2,1,1);y1=y(:,1)';stem((0:N-1),y1);xlabel('k');ylabel('y1');subplot(2,1,2);y2=y(:,2)';stem((0:N-1),y2);xlabel('k');ylabel('y2');运行结果
本文档为【信号与系统SignalsandSystemsppt课件】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_270070
暂无简介~
格式:ppt
大小:1MB
软件:PowerPoint
页数:97
分类:其他高等教育
上传时间:2019-07-18
浏览量:0