通信原理课设概况.docx
《通信原理课设概况.docx》由会员分享,可在线阅读,更多相关《通信原理课设概况.docx(30页珍藏版)》请在冰豆网上搜索。
通信原理课设概况
一.设计平台
Simulink是Matlab环境下的一部分,它通过使用框图的方式编辑建模,比较直观。
Simulink是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中【2】。
Simulink是Matlab最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。
在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。
Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。
同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。
Simulink是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。
对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试【3】。
Simulink是一种可视化工具。
构架在Simulink基础之上的其他产品扩展了Simulink多领域建模功能,也提供了用于设计、执行、验证和确认任务的相应工具。
Simulink与MATLAB;紧密集成,可以直接访问MATLAB大量的工具来进行算法研发、仿真的分析和可视化、批处理脚本的创建、建模环境的定制以及信号参数和测试数据的定义。
二、设计目的:
1分别设计AM,FM调制与解调通信系统,分别在理信道和非理想信道中运行,并得出仿真结果,分析比较三种不同的调制方式所存在的不同。
2熟悉MATLAB文件中M文件的使用方法,包括函数、原理和方法的应用。
3增强在通信原理仿真方面的动手能力与自学能力。
三、设计内容和实验要求
4系统建模
5确定仿真算法
6建立仿真模型
7设计仿真程序
8运行仿真程序
9输出仿真结果并进行分析
四、模拟通信系统简介
通信系统是为了有效可靠的传输信息,信息由信源发出,以语言、图像、数据为媒体,通过电(光)信号将信息传输,由信宿接收。
通信系统又可分为数字通信与模拟通信。
基于课程设计的要求,下面简要介绍模拟通信系统。
信源是模拟信号,信道中传输的也是模拟信号的系统为模拟通信。
模拟通信系统的模型如图5.1所示。
图4.1模拟通信系统模型
调制器:
使信号与信道相匹配,便于频分复用等。
发滤波器:
滤除调制器输出的无用信号。
收滤波器:
滤除信号频带以外的噪声,一般设N(t)为高斯白噪声,则Ni(t)为窄带白噪声。
4.1AM,FM调制原理
4.1.1AM调制原理
幅度调制是用调制信号去控制高频正弦载波的幅度,使其按调制信号的规律变化的过程。
幅度调制器的一般模型如图.2所示。
图4.2幅度调制模型
在图4.2中,若假设滤波器为全通网络(
=1),调制信号
叠加直流
后再与载波相乘,则输出的信号就是常规双边带(AM)调幅.AM调制器模型如图4.3所示
图4.3AM调制模型
AM信号波形的包络与输入基带信号
成正比,故用包络检波的方法很容易恢复原始调制信号。
但为了保证包络检波时不发生失真,必须满足
,否则将出现过调幅现象而带来失真。
AM信号的频谱是由载频分量和上、下两个边带组成(通常称频谱中画斜线的部分为上边带,不画斜线的部分为下边带)。
上边带的频谱与原调制信号的频谱结构相同,下边带是上边带的镜像。
显然,无论是上边带还是下边带,都含有原调制信号的完整信息。
故AM信号是带有载波的双边带信号,它的带宽信号带宽的两倍。
4.1.2FM调制原理
频率调制的一般表达式[1]为:
(4-1)
FM和PM非常相似,如果预先不知道调制信号的具体形式,则无法判断已调信号是调频信号还是调相信号。
图5.4
图4.5
图(5.4)所示的产生调频信号的方法称为直接调频法,图(5.5)所示的产生调频信号的方法称为间接调频法[4]。
由于实际相位调制器的调节范围不可能超出
,因而间接调频的方法仅适用于相位偏移和频率偏移不大的窄带调制情形,而直接调频则适用于宽带调制情形。
根据调制后载波瞬时相位偏移的大小,可将频率调制分为宽带调频(WBFM)与窄带调频(NBFM)。
宽带与窄带调制的区分并无严格的界限,但通常认为由调频所引起的最大瞬时相位偏移远小于30°时,
(4-2)
称为窄带调频。
否则,称为宽带调频。
为方便起见,无妨假设正弦载波的振幅A=1,则由式(4-1)调频信号的一般表达式,得
=
(4-3)
通过化解,利用傅立叶变化公式可得NBFM信号的频域表达式:
(5-4)
在NBFM中,由于下边频为负,因而合成矢量不与载波同相,而是存在相位偏移
,当最大相位偏移满足式(4-2)时,合成矢量的幅度基本不变,这样就形成了FM信号。
图4-5NBFM信号频谱
五、几种调制方式间的比较
5.1几种不同的模拟调制方式
假定所有调制系统在接收机输入端具有相等的信号功率,且加性噪声都是均值为0、双边功率谱密度为/2的高斯白噪声,基带信号带宽为,在所有系统都满足
例如,
为正弦型信号。
综合前面的分析,可总结各种模拟调制方式的信号带宽、制度增益、输出信噪比、设备(调制与解调)复杂程度、主要应用等如所示。
表中还进一步假设了AM为100%调制。
5.2几种模拟调制的性能比较
就抗噪性能而言,WBFM最好,DSB、SSB、VSB次之,AM最差。
NBFM与AM接近。
如6.5中所示出了各种模拟调制系统的性能曲线,图中的圆点表示门限点。
门限点以下,曲线迅速下跌;门限点以上,DSB、SSB的信噪比比AM高4.7dB以上,而FM(=6)的信噪比比AM高22dB。
就频带利用率而言,SSB最好,VSB与SSB接近,DSB、AM、NBFM次之,WBFM最差。
5.3几种模拟调制的特点及应用
AM调制的优点是接收设备简单;缺点是功率利用率低,抗干扰能力差,信号带宽较宽,频带利用率不高。
因此,AM制式用于通信质量要求不高的场合,目前主要用在中波和短波的调幅广播中。
DSB调制的优点是功率利用率高,但带宽与AM相同,频带利用率不高,接收要求同步解调,设备较复杂。
只用于点对点的专用通信及低带宽信号多路复用系统。
SSB调制的优点是功率利用率和频带利用率都较高,抗干扰能力和抗选择性衰落能力均优于AM,而带宽只有AM的一半;缺点是发送和接收设备都复杂。
SSB制式普遍用在频带比较拥挤的场合,如短波波段的无线电广播和频分多路复用系统中。
VSB调制性能与SSB相当,原则上也需要同步解调,但在某些VSB系统中,附加一个足够大的载波,形成(VSB+C)合成信号,就可以用包络检波法进行解调。
这种(VSB+C)方式综合了AM、SSB和DSB三者的优点。
所以VSB在数据传输、商用电视广播等领域得到广泛使用。
FM波的幅度恒定不变,这使得它对非线性器件不甚敏感,给FM带来了抗快衰落能力。
利用自动增益控制和带通限幅还可以消除快衰落造成的幅度变化效应。
这些特点使得NBFM对微波中继系统颇具吸引力。
WBFM的抗干扰能力强,可以实现带宽与信噪比的互换,因而WBFM广泛应用于长距离高质量的通信系统中,如空间和卫星通信、调频立体声广播、短波电台等。
WBFM的缺点是频带利用率低,存在门限效应,因此在接收信号弱、干扰大的情况下宜采用NBFM,这就是小型通信机常采用NBFM的原因。
六.MATLAB生成图像
6.1双边带频带幅度调制的系统仿真
图6.1-1双边带频带幅度调制的系统仿真框图
参数设置表
6.2双边带抑制载波幅度调制的系统仿真
图6.2-1双边带抑制载波幅度调制的系统仿真框图
参数设置表
6.3单边带幅度调制系统仿真
图6.3-1单边带幅度调制系统仿真框图
6.4FM频率调制系统仿真
图6.4-1FM频率调制系统仿真框图
参数设置表
6.5仿真结果
图6.5-1双边带频带幅度调制的系统频域图图6.5-2双边带频带幅度调制的系统时域图
6.5-3双边带抑制载波幅度调制的系统频域图6.5-4双边带抑制载波幅度调制的系统时域图
图6.5-5单边带幅度调制系统频域图图6.5-6单边带幅度调制系统时域图
图6.5-7单边带幅度调制系统频域图图6.5-8单边带幅度调制系统时域图
6.6程序仿真结果
6.6.1AM仿真结果
6.6.2FM仿真结果
6.6.3程序清单:
AM:
fm=100;
fc=500;
fs=5000;
Am=1;
A=2;
N=512;
K=N-1;
n=0:
N-1;
t=(0:
1/fs:
K/fs);
yt=Am*cos(2*pi*fm*t);
figure
(1)
subplot(1,1,1),plot(t,yt),title('频率为3000的调制信号f1的时时域波');
y0=A+yt;
y2=y0.*cos(2*pi*fc*n/fs);
y3=fft(y2,N);%fft变换
q1=(0:
N/2-1)*fs/N;
mx1=abs(y3(1:
N/2));
figure
(2)
subplot(2,1,1);
plot(t,y2);
title('已调信号的时时域波');
subplot(2,1,2);
plot(q1,mx1);
title('f1已调信号的频谱');%绘图
yc=cos(2*pi*fc*t);
figure(3)
subplot(2,1,1),plot(t,yc),title('载波fc时域波形')
N=512;
n=0:
N-1;
yc1=Am*cos(2*pi*fc*n/fs);
y3=fft(yc1,N);
q=(0:
N/2-1)*fs/N;
mx=abs(y3(1:
N/2));
figure(3)
subplot(2,1,2),plot(q,mx),title('载波fc频谱')
y4=0.01*randn(1,length(t));%用RANDN产生高斯分布序列
w=y4.^2;%噪声功率
figure(4)
subplot(2,1,1);
plot(t,y4);
title('高斯白噪声时域波形')
y5=fft(y4,N);
q2=(0:
N/2-1)*fs/N;
mx2=abs(y5(1:
N/2));
subplot(2,1,2),plot(q2,mx2),title('高斯白噪声频域波形')
y6=y2+y4;
figure(5)
subplot(2,1,1),plot(t,y6),title('叠加后的调制信号时域波形')
q3=q1;
mx3=mx1+mx2;
subplot(2,1,2),plot(q3,mx3),title('叠加后的调制信号频谱波形')%调制
yv=y6.*yc;%乘以载波进行解调
Ws=yv.^2;
p1=fc-fm;
[k,Wn,beta,ftype]=kaiserord([p1fc],[10],[0.050.01],fs);%Fir数字低通滤波
window=kaiser(k+1,beta);%使用kaiser窗函数
b=fir1(k,Wn,ftype,window,'noscale');%使用标准频率响应的加窗设计函数
yt=filter(b,1,yv);
yssdb=yt.*2-2;
figure(6)
subplot(2,1,1),plot(t,yssdb),title('经过低通已调信号的时域波形采样')
y9=fft(yssdb,N);
q=(0:
N/2-1)*fs/N;
mx=abs(y9(1:
N/2));
subplot(2,1,2),plot(q,mx),title('经过低通已调信号频域波形')%解调
ro=y9-yt;
W=(yt.^2).*(1/2);
R=W/w
r=W/ro
G=r/R
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;%求信号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解调*******************
fori=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;%抽样间隔
fs=1/ts;%抽样频率
df=0.25;%所需的频率分辨率,用在求傅里叶变换
%时,它表示FFT的最小频率间隔
%*****对调制信号m(t)求傅里叶变换*****
m=am*cos(2*pi*fm*t);%原调信号
fs=1/ts;
ifnargin==2
n1=0;
else
n1=fs/df;
end
n2=length(m);
n=2^(max(nextpow2(n1),nextpow2(n2)));
M=fft(m,n);
m=[m,zeros(1,n-n2)];
df1=fs/n;%以上程序是对调制后的信号u求傅里变换
M=M/fs;%缩放,便于在频铺图上整体观察
f=[0:
df1:
df1*(length(m)-1)]-fs/2;%时间向量对应的频率向量
%************对已调信号u求傅里变换**********
fs=1/ts;
ifnargin==2
n1=0;
else
n1=fs/df;
end
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=U/fs;%缩放
%******************************************
%*****************************************
disp('按任意键可以看到原调制信号、载波信号和已调信号的曲线')
pause
%**************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('已调信号的时域图');
%******************************************
disp('按任意键可以看到原调制信号和已调信号在频域内的图形')
pause
%************figure
(2)*********************
figure
(2)
subplot(2,1,1)
plot(f,abs(fftshift(M)))%fftshift:
将FFT中的DC分量移到频谱中心
xlabel('频率f')
title('原调制信号的频谱图')
subplot(2,1,2)
plot(f,abs(fftshift(U)))
xlabel('频率f')
title('已调信号的频谱图')
%******************************************
disp('按任意键可以看到原调制信号、无噪声条件下已调信号和解调信号的曲线')
pause
%**************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));%hilbert变换,求绝对值得到瞬时幅度(包络检波)
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('无噪声条件下解调信号的时域图');
%*****************************************
disp('按任意键可以看到原调制信号、小信噪比高斯白噪声条件下已调信号和解调信号已调信号的曲线')
pause
%**************figure(4)******************
figure(4)
subplot(3,1,1);plot(t,mt);%绘制调制信号的时域图
xlabel('时间t');
title('调制信号的时域图');
db1=am^2/(2*(10^(sn1/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));%hilbert变换,求绝对值得到瞬时幅度(包络检波)
zero=(max(diff_nsfmn)-min(diff_nsfmn))/2;
diff_nsfmn1=diff_nsfmn1-zero;
subplot(3,1,2);
plot(1:
length(diff_nsfm),diff_nsfm);%绘制含小信噪比高斯白噪声已调信号的时域图
xlabel('时间t');
title('含小信噪比高斯白噪声已调信号的时域图');
subplot(3,1,3);%绘制含小信噪比高斯白噪声解调信号的时域图
plot((1:
length(diff_nsfmn1))./1000,diff_nsfmn1./400,'r');
xlabel('时间t');
title('含小信噪比高斯白噪声解调信号的时域图');
%*****************************************
disp('按任意键可以看到原调制信号、大信噪比高斯白噪声条件下已调信号和解调信号已调信号的曲线')
pause
%**************figure(5)******************
figure(5)
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));%hilbert变换,求绝对值得到瞬时幅度(包
%络检波)
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('含大信噪比高斯白噪声解调信号的时域图');
%******************结束*******************
七·.项目设计总结
这周