首页资源分类电子电路电路仿真 > 利用Matlab绘制正弦信号的采集采样并做相关分析

利用Matlab绘制正弦信号的采集采样并做相关分析

已有 445005个资源

下载专区

上传者其他资源

    电子电路热门资源

    本周本月全部

    文档信息举报收藏

    标    签:信号采集

    分    享:

    文档简介

    利用Matlab绘制正弦信号的采集采样并做相关分析

    文档预览

    利用Matlab绘制正弦信号的采集采样并做相关分析 一、作业要求: 1、 用Matlab产生高、中、低频三种信号进行线性叠加。再加入白噪声信号(其中) 2、 设置采样频率,分析采样频率、采样长度和分辨率的关系。 3、 进一步分析加矩形窗哈明窗汉宁窗函数对信号的影响。 二、实验过程: (1)用matlab产生频率分别为100,200,400的三个信号进行线性叠加,设置采样频率,采样点为,其幅频图为: (2) 在上述信号中混入均值为0,方差为0.7的白噪声,其幅频图为 (3) 设置采样频率,采样点,其幅频图为 (4) 设置采样频率,采样点,其幅频图为 (5) 设置采样频率,采样点,其图像为 (6) 设置采样频率,采样点,加汉宁窗,其幅频图为 三.相关分析 1.由图1和图2看出,噪声对信号的幅值有增大的作用,说明信号和噪声有共同的成分。 2. 由图2和图3看出,改变采样点数,幅值大小改变,一定范围内采样点数越多,信号的幅值越接近真实值。 3.由图3,图4,图5看出,改变采样频率,采样频率过小,谱线的尾部发生混叠现象。采样频率过大,频率的分辨率较低,不利于采样。 4. 由图2和图6看出,加汉宁窗的信号有消除旁瓣的作用,使其旁瓣小,信号泄漏少。 附录:matlab程序。 %三种信号频谱图 clear; clf; fs=1200;N=512; %采样频率1200,采样点数512 n=0: N-1; t=n/fs; x=sin(2*pi*100*t)+sin(2*pi*200*t)+sin(2*pi*400*t); y= fft(x,N); %对信号进行傅里叶变换 yy= abs(y); %求得傅里叶变换后的振幅 yy= yy*2/N; %幅值处理 f=n*fs/N; plot(f,yy); %随频率变化的振幅 xlabel('频率(Hz)'); ylabel('振幅'); title('图1:fs=1200,N=512,正弦信号幅频谱图'); grid on; %混入均值为0,方差为0.7的白噪声 y=sin(2*pi*100*t)+sin(2*pi*200*t)+0.5*sin(2*pi*400*t) +sqrt(0.7)*randn(size(t)); z=fft(y,N); yy=abs(z); %傅里叶变换的振幅 yy=yy*2/N; %幅值处理 f=n*fs/N; plot(f(1:N/2.56),2*yy(1:N/2.56)); %绘出随频率变化的振幅 xlabel('频率(Hz)'); ylabel('振幅'); title('图2:fs=1200,N=512混入白噪声'); grid on; %增加采样点数为1024 clear; fs=1200;N=1024; n=0: N-1;t=n/fs; x=sin(2*pi*100*t)+sin(2*pi*200*t)+sin(2*pi*400*t)+sqrt(0.7)*randn(size(t)); y=fft(x,N); yy=abs(y); yy=yy*2/N; f=n*fs/N; plot(f(1:N/2.56),yy(1:N/2.56)); xlabel('频率/\itHz'); ylabel('振幅 '); title('图3:fs=1200,N=1024'); grid on; %改变采样频率fs=800 clear; fs=800;N=1024; n=0: N-1;t=n/fs; x=sin(2*pi*100*t)+sin(2*pi*200*t)+sin(2*pi*400*t)+sqrt(0.7)*randn(size(t)); y=fft(x,N); yy=abs(y); yy=yy*2/N; f=n*fs/N; plot(f(1:N/2.56),yy(1:N/2.56)); xlabel('频率/\itHz'); ylabel('振幅 '); title('图4:fs=800,N=1024'); grid on; %再次采样频率fs=2000 clear; fs=2000;N=1024; n=0: N-1;t=n/fs; x=sin(2*pi*100*t)+sin(2*pi*200*t)+sin(2*pi*400*t)+sqrt(0.7)*randn(size(t)); y=fft(x,N); yy=abs(y); yy=yy*2/N; f=n*fs/N; plot(f(1:N/2.56),yy(1:N/2.56)); xlabel('频率/\itHz'); ylabel('振幅 '); title('图4:fs=2000,N=1024'); grid on; %加汉宁窗 fs=1200;N=1024; n=0: N-1;t=n/fs; x=sin(2*pi*100*t)+sin(2*pi*200*t)+sin(2*pi*400*t)+sqrt(0.7)*randn(size(t)); window=hanning(N);%生成汉宁窗函数 x=x.*window';%加窗函数 y=fft(x,N); %对信号进行快速傅里叶变换 yy=abs(y); %求取傅里叶变换的振幅 yy=yy*2/N; %幅值处理 f=n*fs/N; plot(f(1:N/2.56),1.852*yy(1:N/2.56)); %绘出随频率变化的振幅 xlabel('频率/\itHz'); ylabel('振幅'); title('图6:fs=1200,N=1024,加hanning窗函数'); grid on;

    Top_arrow
    回到顶部
    EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高员外,我们会尽快处理。