信号与系统的matlab仿真
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信号时域分析
%li418 num=[2,3]; den=[1,0.4,1]; [num,den]=eqtflength(num,den); [z,p,k]=tf2zp(num,den)
a=[1,5,6]; b=[3,2]; impulse(b,a);%(impluse(b,a,t);
信号频域分析
信号时域分析
信号matlab表示
3工具箱中的信号
sawtooth——三角波或锯齿波形信号 square——方波信号 rectpuls-非周期方波 tripuls——非周期三角波
sawtooth(t,width)-产生一个周期为2pi幅度在【-1,1】的周期性三角波信号,width表 示最大幅度出现位置[0,1] X=sawtooth(kt,width),则周期为2pi/k dt=1/1000;t=0:dt:1; x1=sawtooth(10*pi*t,0);x2=sawtooth(10*pi*t,1);x3=sawtooth(10*pi*t,0.5); subplot(311);plot(t,x1);subplot(312);plot(t,x2);subplot(313);plot(t,x3);
num=[2,3]; den=[1,0.4,1]; [num,den]=eqtflength(num,den); [z,p,k]=tf2zp(num,den)
产生频率为10Hz,功率为1的正弦信号,应用matlab编程绘出信号的频谱 (参见 lifft.m)
• • • • • • • • • • • • • • • • • • • • • • • • • • • • • •
clc; clear all; f=10; fs=4*f dt=1/fs; N=2^6 t=0:dt:(N-1)*dt; x=sqrt(2)*sin(2*pi*f*t); E_s=sum(abs(x).^2)/N y=fft(x); pyy=abs(y).^2; df=fs/N; fc=-N/2*df:df:(N/2-1)*df;%0:df:(N-1)*df; subplot(211); plot(fc,pyy ); xlabel('Hz'); grid on; SNR=-5; n_g=sqrt(E_s/(10^(SNR/10))); n=n_g*randn(1,N); E_n=sum(abs(n).^2)/N ssnr=10*log10(E_s/E_n) y1=x+n; y1=fft(y1); pyy1=abs(y1).^2; subplot(212); plot(fc,pyy1); xlabel('Hz'); title('ÓÐÔëÉù'); grid on; % hold off;
(t ) arctan[
s (t )
]
a(t ) 称为复信号的瞬时幅值, (t ) 称为瞬时相位,
可知 a(t ) s(t ) ,这表明代表 a(t ) 的曲线“包着” s(t ) a(t ) 代表的曲线,所以将 称作包络
解析信号
实信号s(t)的解析信号计算方法:
ˆ(t ) z (t ) s(t ) js
T0 / 2
s(t )e j 2 nf0t dt
s(t )
C
n
பைடு நூலகம்
exp{ j 2 nt / T0 }
频谱函数中 Cn 是一个复数,代表在频率 nf 0
上信号分量的复振幅
确知信号的频域性质
能量信号的频谱密度
设一个能量信号s(t)的频谱密度为: S( f )
逆变换
s(t ) S ( f )e
即解析信号是信号的频谱的右半轴对应的信号的两倍
基带信号
1 s(t ) a(t ) cos[2 f 0t (t )] a(t )[e j[2 f0t (t )] e j[2 f0t (t )] ] 2
上述窄带信号的正、负频分量明显分开,负频分量容易被 滤出。保留其正频部分,并将幅度加倍,即可得到其解析 信号为: j ( t ) j 2 f 0t
解析信号
表示复信号 z(t ) 的最简单方法是用所给定的实信号 x(t ) s (t ) 作其实部,再另外构造一“虚拟信号” z (t ) s(t ) jx(t ) 作其虚部,即: 若将 z(t ) 写作极坐标形式: z(t ) a(t )e j (t ) 则有: x(t )
a (t ) s 2 (t ) x 2 (t )
能量信号——能量有限正值,但平均功率为零;
功率信号——平均功率有限正值,但能量为无穷大
E s (t )dt
2
确知信号的频域性质
功率信号的频谱 设一个周期性功率信号s(t)的周期为 T0 则其频谱函数为:
1 f0 T0
1 Cn C (nf 0 ) T0
n
T0 / 2
信号时域分析
信号matlab表示
2单位阶跃信号
[x,n]=stepseq(-5,5,0); [x1,n1]=stepseq(-5,5,-2); subplot(211); stem(n,x,'b'); text(-3,0.5,'u(n)'); subplot(212); stem(n1,x1,'r'); text(-3,0.5,'u(n+2)');
对通信和雷达一类信息系统,常用的信号是实的窄带信号, 即:
s A a(t )e
e
j 2 f 0 t 式中, 为复数,作为信息的载体而不含有用的信息。 e 将上式两边乘以 e j 2 f0t ,即可将载波频率下移 f 0 ,变成
零载频,得到一新信号为:
sB a(t )e
j ( t )
这种零载频的信号称为基带信号(baseband singal),或称零中频信号。由上述论述可知, 解析信号和基带信号存在以下关系:
f=150; fs=4*f; t=0:1/fs:1; sy=sin(2*pi*f*t); y=hilbert(sy); N=length(t); % plot([0:fs/N:(N-1)/N*fs],abs(fft(y))); % grid on; % a=abs(fft(y)); % b=find(a==max(a)); % fg=(b-1)*fs/N plot(t(1:50),real(y(1:50)),'-r',t(1:50),imag(y(1:50)),'--g'); grid on; axis([0 0.09 -1.6 1.6]); hold on; plot(t(1:50),sy(1:50),':b'); hold off; legend('解析信号实部','解析信号虚部','原实信号');
s A (t ) sB (t )e j 2 f0t
这表明基带信号 sB (t )就是解析信号 s A (t ) 的复包络
确知信号
确知信号——取值在任何时间都是确定的和 可预知的信号,通常可以用数学公式表示它 在任何时间的取值 信号平均功率:
1 T /2 2 P lim s (t )dt T T T / 2
第4章 信号与系统的matlab仿真
授课教师:刘福来
东北大学秦皇岛分校
主 要 内 容
信号与时域分析 信号与系统频域分析
信号时域分析
信号matlab表示
1单位冲激信号
n=n1:dt:n2; x=(n==0); n=-5:5; x=(n==0);stem(x)
[x,n]=delta(-5,5,0); [x1,n1]=delta(-5,5,-2); stem(n,x,'b'); hold on; stem(n1,x1,'r'); hold off;
信号时域分析
信号matlab表示
3工具箱中的信号
X=tripuls(t,width, skew) 产生一个最大幅度为1,宽度为width,斜率为skew的三 角脉冲信号;以t=0为中心左右展开width/2范围,skew位于[-1,1],最大值位置位于 width/2*skew t=-6:0.001:6;x1=tripuls(t,4,0); x2=tripuls(t,4,0.5);x3=tripuls(t+2,4,0.5); subplot(131);plot(t,x1); axis([-4 4 0 1]); grid on; subplot(132);plot(t,x2); axis([-4 4 0 1]); grid on; subplot(133);plot(t,x3); axis([-4 4 0 1]); grid on;
信号时域分析
信号matlab表示
3工具箱中的信号
x=rectpuls(t,width) 产生一个 幅度为1,宽度为width,以t=0为中心左右对阵的矩 形波信号。 Li48.m
信号时域分析
信号运算
相乘,相加,时移,周期移位,翻褶,卷积,相关, 能量,功率
时移例子参见li411.m
周期移位li412.m 翻褶li413.m 卷积参见li414.m 相关y=xcorr(x1,x2) 能量y=sum(abs(x).^2)dt; 功率E=sum(abs(x).^2)/N
确知信号的频域性质
能量信号的能量谱密度
设一个能量信号s(t)的能量为E
根据巴塞伐尔定理有
2
E
s 2 (t )dt
2
E s (t )dt S ( f ) df
S ( f )为s(t ) 的频谱密度(傅立叶变换)。上式表明 | S ( f ) |
解析信号的频谱
假设实信号s(t)的解析信号
ˆ(t ) z (t ) s(t ) js
则
Z ( f ) F ( f ) j ( j sgn( f )) F ( f ) F ( f )(1 sgn( f )) 2 F ( f )U ( f )
j f 0 1 ˆ(t )] j sgn( f ) F[ s(t )] H ( f ) F [ ] j sgn( f ) j f 0 F[ s t 0 f 0
k=[1 2 5]'; t=-10:0.01:10; yy=sin(kron(k,t))./kron(k,t); y=zeros(size(yy)); for kk=1:length(k) y(kk,:)=k(kk)/pi*yy(kk,:); end plot(t,y,'linewidth',1.5); legend('k=1','k=2','k=5'); title('函数波形举例'); grid on;
信号时域分析
信号matlab表示
3工具箱中的信号
X=square(t,duty) 产生一个周期2pi, 幅度正负1的周期方波信号,其中duty表示占 空比。 %40hz,占空比25 50 75 dt=1/10000; t=0:dt:1; x1=square(2*pi*40*t,25);x2=square(2*pi*40*t,50);x3=square(2*pi*40*t,75); subplot(311);plot(t,x1); axis([0 0.2 -1.5 1.5]); subplot(312);plot(t,x2); axis([0 0.2 -1.5 1.5]); subplot(313);plot(t,x3); axis([0 0.2 -1.5 1.5]);
j 2 f
df
s(t )e j 2 ft dt
单位冲激函数
(t )dt 1 (t ) 0 t 0
单位冲激函数可以看作一个高度无穷大宽度无穷小面积为 1的脉冲,可以用抽样函数的极限描述 k sin t Sa(kt )dt 1 Sa(t )= t
ˆ(t ) 是 s (t ) 的Hilbert变换 其中 s
ˆ(t ) H s(t ) s s( ) 1 d s ( t ) t t 1
Matlab中实信号s(t)的解析信号产生函数—hilbert
• • • • • • • • • • • • • • • • • •