通信电子线路研究性学习.docx
《通信电子线路研究性学习.docx》由会员分享,可在线阅读,更多相关《通信电子线路研究性学习.docx(25页珍藏版)》请在冰豆网上搜索。
通信电子线路研究性学习
《通信电子线路》课程研究性学习报告
姓名董耀聪
班级通信1110
学号11211003
指导教师任希
时间2013-10-31
基于matlab的AM,PM,FM的调制与解调
目录
第1章概述
第2章AM,FM,PM调制原理
AM调制原理
FM调制原理
PM调制原理
第3章AM,FM,PM的matlab调制与解调仿真
AM的matlab调制解调仿真
FM的matlab调制解调仿真
PM的matlab调制解调仿真
心得体会
参考文献
第1章概述
通信系统是为了有效可靠的传输信息,信息由信源发出,以语言、图像、数据为媒体,通过电(光)信号将信息传输,由信宿接收。
通信系统又可分为数字通信与模拟通信。
一、调制的基本涵义
调制的涵义
任意一高频信号
称为调幅(AM)
称为调频(FM)
称为调相(PM)
其中调频和调相统称为调角。
(1)正弦波幅度调制
正弦载波幅度随调制信号而变化的调制,简称调幅(AM)。
数字幅度调制也叫作幅度键控(ASK)。
调幅的技术和设备比较简单,频谱较窄,但抗干扰性能差,广泛应用于长中短波广播、小型无线电话、电报等电子设备中。
早期的无线电报机采用火花式放电器产生高频振荡。
传号时火花式发报机发射高频振荡波,空号时发报机没有输出。
这种电报信号的载波不是纯正弦波,它含有很多谐波分量,会对其他信号产生严重干扰。
理想的模拟正弦波调幅是:
载波幅度与调制信号瞬时值ua(t)成线性关系,但载频fC=ωC/2π和相位ψ保持不变。
单频调制时,调幅信号uA(t)可用下式表示:
uA(t)=UC(1+macosΩt)cos(ωCt+ψ)
(1)
式中UC是载波幅度;Ω=2πF,是调制信号的角频率,其中F是调制信号频率;ma是一个和调制信号幅度Ua成比例的常数,叫作调幅系数,数值应在0~1之间。
调幅波的瞬时幅度变化曲线叫作包络线。
调幅系数ma不能大于1,否则包络线和调制信号不能保持线性关系,会产生失真。
这种情况叫做过调幅。
式
(1)的调幅波不是单一的简谐波,它包含fC、fC+F和fC-F三个频率分量。
后两个频率分量位于载频fC的两边,分别叫作上边频和下边频。
这种已调制信号有时叫作标准调幅波。
如果调制信号占有一个频带,最高频率为Fmax,则标准调幅波的频谱宽度BWA=2Fmax,位于载频fC两边的频带分别称为调幅信号的频谱上边带和下边带。
调幅波的载频分量与调制信号无关,但边带分量随调制信号变化。
这意味着所欲传送的消息都包含在边带之中,只用一个边带信号就能够传送全部消息。
把载波去掉的调幅信号,叫做抑制载波调幅;把载波和某一个边带一起抑制掉,只剩下一个边带的调幅信号,叫做单边带调幅(SSB)。
单边带调幅节省功率,抗干扰性能较好,而且节省频带,但设备比较复杂。
(2)正弦波频率调制
正弦载波的瞬时频率随调制信号的瞬时值而变化的调制,简称调频(FM)。
数字频率调制也称移频键控(FSK)。
调频是1933年E.H.阿姆斯特朗发明的。
这种调制具有良好的抗干扰性能,广泛用于高质量广播、电视伴音、多路通信和扫频仪等电子设备中。
理想的调频是:
载波的瞬时角频率ω与调制信号瞬时值ua(t)成线性关系,而幅度UC不变。
单频调制时,瞬时角频率ω的表示式是
ω=ωC+墹ωcosΩt
(2)
式中墹ω=kfUa,是一个和调制信号幅度Ua成正比的常数,称为最大角频率偏移。
正弦波调频后也产生新的频率分量,这些分量和调频指数mf有关。
在理论上单频调频时调频波具有无穷多个边频分量,相邻两边频的距离等于F。
通常把幅度小于载波原来幅度1/100的边频分量忽略不计,有效边频分量所占据的频带为调频波的带宽。
是单频调制时调频波的频谱。
mf很小时,载频分量较大,边频幅度很小;mf增大时,载频幅度减小,边频幅度增大,幅度大的边频数也增多;mf继续增加时,载频和各边频的幅度交替增减,这些频率分量的幅度是以mf为宗数的各阶贝塞尔函数。
在实用中,调制信号ua(t)的最大值通常保持不变,因此最大频移墹f也不变。
这时mf随调制信号频率F而减小。
是墹f为定值时调频波的频谱。
F小时,相邻各频率分量的距离较小,但由于mf较大,有效的边频分量较多;F较大时,各边频的距离增大,但mf却减小,有效的频率分量也较少。
因此调频波的波形的频谱宽度大体上保持不变。
这是调频波的特点。
它的频谱宽度BWf可以用下面的经验公式来计算
BWf≈2(mf+1)F (4)
式中F=Ω/2π,是调制信号的频率。
当mf较大时,调频波的带宽约等于最大频偏墹f的两倍。
宽带调频具有较强的抗干扰性能。
1933年阿姆斯特朗证明:
当输入信噪比Si/Ni较大时,调频接收机的输出信噪比SO/NO与最大频移墹f的平方成正比;增加调频波的带宽可以改善通信系统的质量。
不过这种改善是有限度的,因为带宽过大时,调频接收机的内部噪声Ni增加,Si/Ni减小;当Si/Ni降低到某一阈值时,SO/NO反而急剧变坏。
图6是调频接收机输出信噪比SO/NO与输入信噪比Si/Ni的关系曲线,在曲线拐点左边,调频的抗干扰性能比调幅还差。
利用预加重和反馈调频接收的方法可以使SO/NO得到改善。
(3)正弦波相位调制
正弦载波的瞬时相位随调制信号而变化的调制,简称调相(PM)。
数字调相也称移相键控(PSK)。
单频调制时调频波的波形,理想调相波uφ(t)的表示式是
uφ(t)=UCcos(ωCt+墹φcosΩt+φ0) (5)
式中墹φ为载波相位随调制信号而变化的最大相移,称调相指数。
它与调制信号幅Ua成正比,但与调制角频率Ω无关。
这是调相和调频的区别。
调相波的频谱与调频波相似,但是当墹φ为定值时,其频谱宽度BWφ随Ω而变化,Ω大时频谱宽,Ω小时频谱窄。
因此频带不能充分利用。
数字调相具有优越的抗干扰性能,而且频带窄,是一种比较理想的调制方式,在各种数据传输和数字通信系统中得到广泛应用。
二、解调的基本涵义
解调是调制的逆过程。
调制方式不同,解调方法也不一样。
与调制的分类相对应,解调可分为正弦波解调(有时也称为连续波解调)和脉冲波解调。
正弦波解调还可再分为幅度解调、频率解调和相位解调,此外还有一些变种如单边带信号解调、残留边带信号解调等。
同样,脉冲波解调也可分为脉冲幅度解调、脉冲相位解调、脉冲宽度解调和脉冲编码解调等。
对于多重调制需要配以多重解调。
解调同样分为AM,FM,PM。
在此就不一一赘述了。
第2章AM,FM,PM调制原理
一、AM调制原理
幅度调制模型
AM调制模型
AM信号波形的包络与输入基带信号成正比,故用包络检波的方法很容易恢复原始调制信号。
但为了保证包络检波时不发生失真,必须满足,否则将出现过调幅现象而带来失真。
AM信号的频谱是由载频分量和上、下两个边带组成(通常称频谱中画斜线的部分为上边带,不画斜线的部分为下边带)。
上边带的频谱与原调制信号的频谱结构相同,下边带是上边带的镜像。
显然,无论是上边带还是下边带,都含有原调制信号的完整信息。
故AM信号是带有载波的双边带信号,它的带宽信号带宽的两倍。
二、FM调制原理
直接调频法
间接调频法
由于实际相位调制器的调节范围不可能超出,因而间接调频的方法仅适用于相位偏移和频率偏移不大的窄带调制情形,而直接调频则适用于宽带调制情形。
根据调制后载波瞬时相位偏移的大小,可将频率调制分为宽带调频(WBFM)与窄带调频(NBFM)。
宽带与窄带调制的区分并无严格的界限,但通常认为由调频所引起的最大瞬时相位偏移远小于30°时,
称为窄带调频。
否则,称为宽带调频。
三、PM调制原理
在模拟调制中,一个连续波有三个参数可以用来携带信息而构成已调信号。
当幅度和频率保持不变时,改变载波的相位使之随未调信号的大小而改变,这就是调相的概念。
角度调制信号的一般表示形式为:
S(t)=Acos[ωt+φ(t)]
式中,A是载波的恒定振幅;[ωt+φ(t)]是信号的瞬时相位,而φ(t)称为瞬时相位偏移;d[ωt+φ(t)]/dt为信号的瞬时频率,而dφ(t)/dt称为瞬时频率偏移,即相对于ω的瞬时频率偏移。
设高频载波为u=Ucosωt,调制信号为UΩ(t),则调相信号的瞬时相位
φ(t)=ω+KUΩ(t)
瞬时角频率ω(t)==ω+K
调相信号u=Ucos[ωt+KuΩ(t)]
将信号的信息加在载波的相位上则形成调相信号,调相的表达式为:
S(t)=Acos[ωt+Kf(t)+φ](2-6)
这里K称为相移指数,这种调制方式,载波的幅度和角频率不变,而瞬时相位偏移是调制信号f(t)的线性函数,称为相位调制。
调相与调频有着相当密切的关系,我们知道相位与频率有如下关系式:
ω==ω+Kf(t)
φ(t)=ωt+K
所以在调相时可以先将调制信号进行微分后在进行频率调制,这样等效于调相,此方法称为间接调相,与此相对应,上述方法称为直接调相。
第3章AM,FM,PM的调制仿真
AM
FM
PM
Matlab程序(基于matlabr2012a)
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);%绘制