一维信号频谱图仿真——matlab
2017-11-09 20:06
309 查看
程序1:
程序2:
%在MATLAB中是用连续信号在等时间间隔点的样值来近似地表示连续信号的,当采样时间间隔足够小时,这些离散的采样值就能较好地近似出连续信号,matlab中连续信号的显示实际上还是离散信号的显示,只是取样点特别 %多的时候,用线连接起来,显示出来的图形就比较圆滑,接近连续信号;如果取样点特别少,连接起来就会变成折线; clear all; %这个其实可以没有,只不过以前出过问题,现在就加上! N=1024; %这个是你举得信号的点数,随便你了 fs=16000; %这个是抽样频率,记得要高于信号中最高频率的2倍 t=(0:N-1)/fs;%信号时域横轴向量,以等间隔抽样时间1/fs为一系列时间点做横向坐标轴,因为信号的周期为1/20,即0.05s,而1024点的抽样时间为20.48s,所以画出来的图形大概为400多个周期,周期太多,太集中 t1=(0:3)/fs; %显示出来后,看起来就像正方形。而且抽样时间为0.02,一个周期为0.05,所以一个周期内就取了3个点,一个周期的图形显示出来后明显是个折线图;如图subplot(1,3,3);如果一个周期内多取一些点,图形就会越 t2=0:0.000001:0.05;%接近原图形,如图subplot(1,4,4); f=(0:N-1)*fs/N; %信号频域横轴向量,不过待会要减半处理一下 x=sin(2*pi*125.*t); %想分析什么函数,自己写 x1=sin(2*pi*20.*t1); x2=sin(2*pi*20.*t2); y=abs(fft(x)); %频域分析,不过记得要求模 f=f(1:N/2); %减半了,根据那奎斯特抽样定理,抽样频率要高于信号中最高频率的两倍,才不会失真,因此频谱中(fs/2,fs)为无用谱,故频域信号的定义域向量与值域向量都应该做减半处理。 y=y(1:N/2); %减半了 %subplot(2,2,1) %画图 %plot(t,x); %subplot(2,2,2) %画图 plot(f,y); %subplot(2,2,3) %plot(t1,x1); %subplot(2,2,4) %plot(t2,x2);
程序2:
% 在MATLAB中是用连续信号在等时间间隔点的样值来近似地表示连续信号的,当采样时间间隔足够小时,这些离散的采样值就能较好地近似出连续信号,matlab中连续信号的显示实际上还是离散信号的显示,只是取样点特别 %多的时候,用线连接起来,显示出来的图形就比较圆滑,接近连续信号;如果取样点特别少,连接起来就会变成折线; clear all; %这个其实可以没有,只不过以前出过问题,现在就加上! N=1024; %这个是你举得信号的点数,随便你了 fs=50; %这个是抽样频率,记得要高于信号中最高频率的2倍 t=(0:N-1)/fs;%信号时域横轴向量,以等间隔抽样时间1/fs为一系列时间点做横向坐标轴,因为信号的周期为1/20,即0.05s,而1024点的抽样时间为20.48s,所以画出来的图形大概为400多个周期,周期太多,太集中 t1=(0:3)/fs; %显示出来后,看起来就像正方形。而且抽样时间为0.02,一个周期为0.05,所以一个周期内就取了3个点,一个周期的图形显示出来后明显是个折线图;如图subplot(2,2,3);如果一个周期内多取一些点,图形就会越 t2=0:0.000001:0.05;%接近原图形,如图subplot(2,2,4); f=(0:N-1)*fs/N; %信号频域横轴向量,不过待会要减半处理一下 x=sin(2*pi*20.*t); %想分析什么函数,自己写 x1=sin(2*pi*20.*t1); x2=sin(2*pi*20.*t2); y=abs(fft(x)); %频域分析,不过记得要求模 f=f(1:N/2); %减半了,根据那奎斯特抽样定理,抽样频率要高于信号中最高频率的两倍,才不会失真,因此频谱中(fs/2,fs)为无用谱,故频域信号的定义域向量与值域向量都应该做减半处理。 y=y(1:N/2); %减半了 subplot(2,2,1) %画图 plot(t,x); subplot(2,2,2) %画图 plot(f,y); subplot(2,2,3) plot(t1,x1); subplot(2,2,4) plot(t2,x2);
相关文章推荐
- 【matlab】仿真4PSK调制信号在高斯信道下的性能,并与理论分析结果比较——仿真篇
- 信号与系统课程中关于各种编码MATLAB仿真的绘图函数
- 利用MATLAB绘制信号时域波形和信号的频谱
- MATLAB中通过fft计算信号频谱的问题
- MATLAB处理信号得到频谱、相谱、功率谱
- 多普勒失真信号重采样的Matlab仿真分析
- Matlab信号提取、频谱分析、滤波、阈值设定、寻找极值点
- 基于MATLAB的声音信号频谱分析仪设计
- OFDM信号仿真MATLAB程序
- 有关在matlab中对信号采样及频谱的一些解释;复数的频谱,高分辨率谱,高密度谱的一些理解
- MATLAB 信号处理仿真入门实验
- 基于matcom的仿真信号采集与频谱分析
- 有关在matlab中对信号采样及频谱的一些解释;复数的频谱,高分辨率谱,高密度谱的一些理解
- 【信号】用matlab实现一维信号的高斯滤波
- 用matlab实现一维信号的高斯滤波
- 常见信号的模拟仿真(matlab)(spike signal)
- Matlab:显示time信号的频谱
- 信号傅立叶变换后实际频谱图(Matlab)
- Matlab信号提取、频谱分析、滤波、阈值设定、寻找极值点
- 用MATLAB对信号做频谱分析