模拟FM调制的通信传输系统.docx
《模拟FM调制的通信传输系统.docx》由会员分享,可在线阅读,更多相关《模拟FM调制的通信传输系统.docx(14页珍藏版)》请在冰豆网上搜索。
模拟FM调制的通信传输系统
模拟FM调制的通信传输系统
一、课程设计目的
本次课程设计是对通信原理课程理论教学和实验教学的综合和总结。
通过这次课程设计,使同学认识和理解通信系统,掌握信号是怎样经过发端处理、被送入信道、然后在接收端还原。
要求学生掌握通信原理的基本知识,运用所学的通信仿真的方法实现某种传输系统。
能够根据设计任务的具体要求,掌握软件设计、调试的具体方法、步骤和技巧。
对一个实际课题的软件设计有基本了解,拓展知识面,激发在此领域中继续学习和研究的兴趣,为学习后续课程做准备。
二、课程设计内容
应用MATLAB语言编写基本的通信系统的应用程序,进行模拟调制系统,数字基带信号的传输系统的建模、设计与仿真。
图1通信系统一般模型
信息源(简称信源)的作用是把各种信息转换成原始信号。
发送端将信息直接转换得到的较低频率的原始电信号称为基带信号。
在通信系统的发送端需将基带信号的频谱搬移(调制)到适合信道传输的频率范围内进行传输。
这就是调制的过程。
信号通过信道传输后,具有将信号放大和反变换功能的接收端将已调制的信号搬移(解调)到原来的频率范围,这就是解调的过程。
信号在信道中传输的过程总会受到噪声的干扰,通信系统中没有传输信号时也有噪声,噪声永远存在于通信系统中。
由于这样的噪声是叠加在信号上的,所以有时将其称为加性噪声。
噪声对于信号的传输是有害的,它能使模拟信号失真。
在本仿真的过程中我们假设信道为高斯白噪声信道。
调制在通信系统中具有十分重要的作用。
一方面,通过调制可以把基带信号的频谱搬移到所希望的位置上去,从而将调制信号转换成适合于信道传输或便于信道多路复用的已调信号。
另一方面,通过调制可以提高信号通过信道传输时的抗干扰能力,同时,它还和传输效率有关。
具体地讲,不同的调制方式产生的已调信号的带宽不同,因此调制影响传输带宽的利用率。
可见,调制方式往往决定一个通信系统的性能。
在本仿真的过程中我们选择用调频调制方法进行调制。
调制过程是一个频谱搬移的过程,它是将低频信号的频谱搬移到载频位置。
而解调是将位于载频的信号频谱再搬回来,并且不失真地恢复出原始基带信号。
在本仿真的过程中我们选择用非相干解调方法进行解调。
所有的仿真用MATLAB程序实现,系统经过的信道都假设为高斯白噪声信道,并用程序画出调制信号,载波,已调信号、解调信号的波形。
三、设计原理
1、FM调制模型的建立
图2FM调制模型
其中,m(t)为基带调制信号,设调制信号为
设正弦载波为
信号传输信道为高斯白噪声信道,其功率为
。
2、调制过程
在调制时,调制信号的频率去控制载波的频率的变化,载波的瞬时频偏随调制信号m(t)成正比例变化,即
式中,
为调频灵敏度(
)。
这时相位偏移为
则可得到调频信号为
3、FM解调模型的建立
调制信号的解调分为相干解调和非相干解调两种。
相干解调仅仅适用于窄带调频信号,且需同步信号,故应用范围受限;而非相干解调不需同步信号,且对于NBFM信号和WBFM信号均适用,因此是FM系统的主要解调方式。
在本仿真的过程中我们选择用非相干解调方法进行解调。
图3FM解调模型
非相干解调器由限幅器、鉴频器和低通滤波器等组成,其方框图如图5所示。
限幅器输入为已调频信号和噪声,限幅器是为了消除接收信号在幅度上可能出现的畸变;带通滤波器的作用是用来限制带外噪声,使调频信号顺利通过。
鉴频器中的微分器把调频信号变成调幅调频波,然后由包络检波器检出包络,最后通过低通滤波器取出调制信号。
4、解调过程
设输入调频信号为
微分器的作用是把调频信号变成调幅调频波。
微分器输出为
包络检波的作用是从输出信号的幅度变化中检出调制信号。
包络检波器输出为
称为鉴频灵敏度(
),是已调信号单位频偏对应的调制信号的幅度,经低通滤波器后加隔直流电容,隔除无用的直流,得
5、高斯白噪声信道特性
设正弦波通过加性高斯白噪声信道后的信号为
其中,白噪声
的取值的概率分布服从高斯分布。
MATLAB本身自带了标准高斯分布的内部函数
。
函数产生的随机序列服从均值为
,方差
的高斯分布。
正弦波通过加性高斯白噪声信道后的信号为
故其有用信号功率为
噪声功率为
信噪比
满足公式
则可得到公式
我们可以通过这个公式方便的设置高斯白噪声的方差。
四、实现方法
1、程序流程图
2、源程序:
clearall
clc
%FM调制
dt=0.001;
t=0:
dt:
1.5;
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;
fori=1:
length(t)-1
int_mt(i+1)=int_mt(i)+mt(i)*dt;
end
sfm=am*cos(2*pi*fc*t+2*pi*kf*int_mt);
%添加高斯白噪声
sn2=30;
sn=0;
db=am^2/(2*(10^(sn/10)));
n=sqrt(db)*randn(size(t));
nsfm=n+sfm;
%FM解调
fori=1:
length(t)-1
diff_nsfm(i)=(nsfm(i+1)-nsfm(i))./dt;
end
diff_nsfmn=abs(hilbert(diff_nsfm));
zero=(max(diff_nsfmn)-min(diff_nsfmn))/2;
diff_nsfmn1=diff_nsfmn-zero;
%时域到频域转换
ts=0.001;
fs=1/ts;
df=0.25;
%对调制信号m(t)求傅里叶变换
m=am*cos(2*pi*fm*t);
fs=1/ts;
n1=fs/df;
n2=length(m);
n=2^(max(nextpow2(n1),nextpow2(n2)));
M=fft(m,n);
m=[m,zeros(1,n-n2)];
df1=fs/n;
M=M/fs;
f=[0:
df1:
df1*(length(m)-1)]-fs/2;
%对已调信号u求傅里变换
fs=1/ts;
n1=fs/df;
n2=length(sfm);
n=2^(max(nextpow2(n1),nextpow2(n2)));
U=fft(sfm,n);
u=[sfm,zeros(1,n-n2)];
df1=fs/n;
U=U/fs;
%****************figure
(1)********************
figure
(1)
subplot(3,1,1);plot(t,mt);
xlabel('时间t');
title('调制信号的时域图');
subplot(3,1,2);plot(t,ct);
xlabel('时间t');
title('载波的时域图');
subplot(3,1,3);
plot(t,sfm);
xlabel('时间t');
title('已调信号的时域图');
%****************figure
(2)********************
figure
(2)
subplot(2,1,1)
plot(f,abs(fftshift(M)))
xlabel('频率f')
title('原调制信号的频谱图')
subplot(2,1,2)
plot(f,abs(fftshift(U)))
xlabel('频率f')
title('已调信号的频谱图')
%****************figure(3)********************
figure(3)
subplot(3,1,1);plot(t,mt);
xlabel('时间t');
title('调制信号的时域图');
subplot(3,1,2);plot(t,sfm);
xlabel('时间t');
title('无噪声条件下已调信号的时域图');
nsfm=sfm;
fori=1:
length(t)-1
diff_nsfm(i)=(nsfm(i+1)-nsfm(i))./dt;
end
diff_nsfmn=abs(hilbert(diff_nsfm));
zero=(max(diff_nsfmn)-min(diff_nsfmn))/2;
diff_nsfmn1=diff_nsfmn-zero;
subplot(3,1,3);
plot((1:
length(diff_nsfmn1))./1000,diff_nsfmn1./400,'r');
xlabel('时间t');
title('无噪声条件下解调信号的时域图');
%****************figure(4)********************
figure(4)
subplot(3,1,1);plot(t,mt);
xlabel('时间t');
title('调制信号的时域图');
db1=am^2/(2*(10^(sn2/10)));
n1=sqrt(db1)*randn(size(t));
nsfm1=n1+sfm;
fori=1:
length(t)-1
diff_nsfm1(i)=(nsfm1(i+1)-nsfm1(i))./dt;
end
diff_nsfmn1=abs(hilbert(diff_nsfm1));
zero=(max(diff_nsfmn)-min(diff_nsfmn))/2;
diff_nsfmn1=diff_nsfmn1-zero;
subplot(3,1,2);
plot(1:
length(diff_nsfm1),diff_nsfm1);
xlabel('时间t');
title('含大信噪比高斯白噪声已调信号的时域图');
subplot(3,1,3);
plot((1:
length(diff_nsfmn1))./1000,diff_nsfmn1./400,'r');
xlabel('时间t');
title('含大信噪比高斯白噪声解调信号的时域图');
3、仿真结果:
五、总结
课程设计是培养我们综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程。
回顾这一星期的课程设计,可以说苦多于甜,但是可以学到很多东西,巩固了以前学过的知识,还接触了和诺课本上没有的东西。
通过这次课程设计,我懂得了理论与实践相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识和实践结合起来,才能不断提高自己的实际动手能力和独立思考的能力,在这次的课程设计中,可以说是困难重重,发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固……通过这次课程设计之后,一定把以前所学过的知识重新温故。
这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的辛勤指导下,同学的帮助下终于迎刃而解。
六、参考文献:
[1]樊昌信,曹丽娜《通信原理(第六版)》国防工业出版社。
2010年2月
[2]孙祥,徐流美,吴清《MATLAB7.0基础教程》清华大学出版社。
2007年2月
[3]赵宏图,茅艳《通信原理MATLAB仿真教程》人民邮电出版社。
2010年12月
[4]郑君里,杨为理等《信号与系统》高等教育出版社2006年12月