基于MATLAB SIMULINK的FM调制解调.. 下载本文

内容发布更新时间 : 2024/5/20 12:36:30星期一 下面是文章的全部内容请认真阅读。

武汉理工大学《信号分析处理》课程设计说明书

图4.7解调信号频谱

图4.8加噪声解调信号频谱

4.3解调信号频谱分析

调制前信号频谱与解调后信号频谱比较:

18

武汉理工大学《信号分析处理》课程设计说明书

图4.9频谱比

调制后的信号频谱与调制器前的相似

图4.10调制信号与解调后的信号

由上图通过比较解调出来的信号与调制前的信号,可知二者信号大致相同,但是解调出来的有相位的偏移,但是不影响信号的质量。

19

武汉理工大学《信号分析处理》课程设计说明书

5 MATLAB代码仿真

5.1程序流程图

初始化程序FM调制程序添加高斯白噪声程序FM解调程序绘制频谱图程序显示程序 图5.1程序流程图

5.2 程序代码

%FM调制解调系统.m

%频率调制与解调的Matlab演示源程序 %电信1006班 石勇

%*****************初始化****************** echo off close all clear all clc

%****************FM调制*******************

dt=0.001; %设定时间步长 t=0:dt:1.5;

%产生时间向量

20

武汉理工大学《信号分析处理》课程设计说明书

am=5; %设定调制信号幅度 fm=5; %设定调制信号频率 mt=am*cos(2*pi*fm*t); %生成调制信号 fc=50; %设定载波频率 ct=cos(2*pi*fc*t); %生成载波 kf=10; %设定调频指数 int_mt(1)=0; for i=1:length(t)-1

int_mt(i+1)=int_mt(i)+mt(i)*dt; %求信号m(t)的积分 end %调制,产生已调信号 sfm=am*cos(2*pi*fc*t+2*pi*kf*int_mt); %调制信号 %*************添加高斯白噪声**************

sn1=10; %设定信躁比(小信噪比) sn2=30; %设定信躁比(大信噪比) sn=0; %设定信躁比(无信噪比) db=am^2/(2*(10^(sn/10))); %计算对应的高斯白躁声的方差 n=sqrt(db)*randn(size(t)); %生成高斯白躁声

nsfm=n+sfm; %生成含高斯白躁声的已调信号(信号通

%过信道传输)

%****************FM解调*******************

for i=1:length(t)-1 %接受信号通过微分器处理 diff_nsfm(i)=(nsfm(i+1)-nsfm(i))./dt; end

diff_nsfmn = abs(hilbert(diff_nsfm)); %hilbert变换,求绝对值得到瞬时幅度(包络检波) zero=(max(diff_nsfmn)-min(diff_nsfmn))/2; diff_nsfmn1=diff_nsfmn-zero;

%**************时域到频域转换**************

ts=0.001; %抽样间隔

21