通信原理课程设计
一、 引言
1.1 概述
《通信原理》是通信工程专业的一门极为重要的专业基础课,但内容抽象,基本概念较多,是
一门难度较大的课程,通过 MATLAB 仿真能让我们更清晰地理解它的原理,因此信号的调制与解调在
通信系统中具有重要的作用。本课程设计是 AM 及 SSB 调制解调系统的设计与仿真,用于实现 AM 及
SSB 信号的调制解调过程,并显示仿真结果,根据仿真显示结果分析所设计的系统性能。在课程设
计中,幅度调制是用调制信号去控制高频载波的振幅,使其按调制信号的规律变化,其他参数不变。
同时也是使高频载波的振幅载有传输信息的调制方式。
1.2 课程设计的目的
在此次课程设计中,我需要通过多方搜集资料与分析:
(1) 掌握模拟系统 AM 和 SSB 调制与解调的原理;
(2) 来理解并掌握 AM 和 SSB 调制解调的具体过程和它在 MATLAB 中的实现方法;
(3) 掌握应用 MATLAB 分析系统时域、频域特性的方法,进一步锻炼应用 MATLAB 进行编程
仿真的能力。
通过这个课程设计,我将更清晰地了解 AM 和 SSB 的调制解调原理,同时加深对 MATLAB 这
款《通信原理》辅助教学操作的熟练度。
1.3 课程设计的要求
(1) 熟悉 MATLAB 的使用方法,掌握 AM 信号的调制解调原理,以此为基础用 MATLAB 编程实
现信号的调制解调;
(2) 设计实现 AM 调制与解调的模拟系统,给出系统的原理框图,对系统的主要参数进行设
计说明;
(3) 采用 MATLAB 语言设计相关程序,实现系统的功能,要求采用一种方式进行仿真,即直
接采用 MATLAB 语言编程的静态方式。要求采用两种以上调制信号源进行仿真,并记录各个输出
点的波形和频谱图;
(4) 对系统功能进行综合测试,整理数据,撰写课程设计论文。
二、AM 调制与解调及抗噪声性能分析
2.1 AM调制与解调
2.1.1 AM调制与解调原理
成绩:
1
幅度调制是由调制信号去控制高频载波的幅度,使正弦载波的幅度随着调制信号而改变的调制
方案,属于线性调制。
AM信号的时域表示式:
频谱:
调制器模型如图所示:
AM的时域波形和频谱如图所示:
图1-1 调制器模型
时域
频域
AM信号的频谱由载频分量、上边带、下边带三部分组成。它的带宽是基带信号带宽的2倍。
图1-2 调制时、频域波形
在波形上,调幅信号的幅度随基带信号的规律而呈正比地变化,在频谱结构上,它的频谱完全是基
带信号频谱在频域内的简单搬移。
所谓相干解调是为了从接受的已调信号中,不失真地恢复原调制信号,要求本地载波和接收信
成绩:
2
号的载波保证同频同相。相干载波的一般模型如下:
将已调信号乘上一个与调制器同频同相的载波,得
S
AM
t)(
cosw
t
c
)](
[
tmA
0
1
[
2
tmA
0
2
cos
tw
c
1
[
2
)](
tmA
0
)](
cos
2
tw
c
由上式可知,只要用一个低通滤波器,就可以将第1项与第2项分离,无失真的恢复出原始的调
制信号
)(
TM
0
1
2
[
(
TMA
0
)]
相干解调的关键是必须产生一个与调制器同频同相位的载波。如果同频同相位的条件得不到满
足,则会破坏原始信号的恢复。
2.1.2 调试过程:
t=-1:0.00001:1; %定义时长
A1=6; %调制信号振幅
A2=10; %外加直流分量
f=3000; %载波频率
w0=2*f*pi; %角频率
Uc=cos(w0*t); %载波信号
subplot(5,2,1);
plot(t,Uc); %画载波信号
title('载波信号');
axis([0,0.01,-1,1]); %坐标区间
T1=fft(Uc);
subplot(5,2,2);
plot(abs(T1));%画出载波信号频谱
title('载波信号频谱');
axis([5800,6200,0,200000]); %坐标区间
mes=A1*cos(0.002*w0*t); %调制信号
subplot(5,2,3);
%傅里叶变换
成绩:
3
plot(t,mes);%画出调制信号
title('调制信号');
T2=fft(mes); %傅里叶变换
subplot(5,2,4);
plot(abs(T2)); %画出调制信号频谱
title('调制信号频谱');
axis([198000,202000,0,1000000]); %坐标区间
Uam1=A2*(1+mes/A2).*cos((w0).*t);
subplot(5,2,5);
plot(t,Uam1);%画出已调信号
title('已调信号');
T3=fft(Uam1); %已调信号傅里叶变换
subplot(5,2,6);
plot(abs(T3)); ;%画出已调信号频谱
title('已调信号频谱');
axis([5950,6050,0,900000]); %坐标区间
%AM 已调信号
sn1=20; %信噪比
db1=A1^2/(2*(10^(sn1/10))); %计算对应噪声方差
n1=sqrt(db1)*randn(size(t)); %生成高斯白噪声
Uam=n1+Uam1; %叠加噪声后的已调信号
Dam=Uam.*cos(w0*t); %对AM已调信号进行解调
subplot(5,2,7);
plot(t,Dam);% 滤波前的AM解调信号
title('滤波前的AM解调信号波形');
T4=fft(Dam); %求AM信号的频谱
subplot(5,2,8);
plot(abs(T4));% 滤波前的AM解调信号频谱
title('滤波前的AM解调信号频谱');
axis([187960,188040,0,600000]);
Ft=2000; %采样频率
fpts=[100 120]; %通带边界频率fp=100Hz 阻带截止频率fs=120Hz
mag=[1 0];
dev=[0.01 0.05]; %通带波动1%,阻带波动5%
成绩:
4
%由fir1设计滤波器
[n21,wn21,beta,ftype]=kaiserord(fpts,mag,dev,Ft);
%kaiserord估计采用凯塞窗设计的FIR滤波器的参数
b21=fir1(n21,wn21,Kaiser(n21+1,beta));
z21=fftfilt(b21,Dam);
%FIR低通滤波
subplot(5,2,9);
plot(t,z21,'r');% 滤波后的AM解调信号
title('滤波后的AM解调信号波形');
axis([0,1,-1,10]);
T5=fft(z21); %求AM信号的频谱
subplot(5,2,10);
plot(abs(T5),'r');%画出滤波后的AM解调信号频谱
title('滤波后的AM解调信号频谱');
axis([198000,202000,0,500000]);
运行结果:
成绩:
5
成绩:
6
2.2 相干解调的抗噪声性能分析
2.2.1抗噪声性能分析原理
AM线性调制系统的相干解调模型如下图所示。
)(m tS
图中
图3.5.1 线性调制系统的相干解调模型
可以是AM调幅信号,带通滤波器的带宽等于已调信号带宽[10]。下面讨论AM调制系
统的抗噪声性能[11]。
AM信号的时域表达式为
A
通过分析可得AM信号的平均功率为
S AM
)t(
[
0
)]t(m
cosw
t
c
又已知输入功率
N
i
n
B
0
(
S AM
i
)
2
A
0
2
)t(m
2
2
, 其中B表示已调信号的带宽。
由此可得AM信号在解调器的输入信噪比为
(
NS
i
i
)
AM
2
A
0
n2
0
2
)t(m
B
AM
AM信号经相干解调器的输出信号为
因此解调后输出信号功率为
)t(m0
1
2
)t(m
2
)t(m
2
A
0
fn4
0
H
(
S
0
)
AM
)t(m
2
0
1
4
2
)t(m
在上图中输入噪声通过带通滤波器之后,变成窄带噪声
)t(n i ,经乘法器相乘后的输出噪声为
n (t)
p
经LPF后,
n (t)cosw t
i
c
1
1
2
2
n (t)
c
因此解调器的输出噪声功率为
[n (t)cosw t-n (t)sinw t]cosw t
c
c
c
c
s
[n (t)cos2w t-n (t)sin2w t]
c
s
c
c
)t(n
0
1
2
)t(n
c
N
0
2
)t(n
0
1
4
2
)t(n
c
1
4
N
i
可得AM信号经过解调器后的输出信噪比为
成绩:
7
(
NS
0
0
)
AM
2
)t(m
n
B
0
2
)t(m
fn2
0
H
由上面分析的解调器的输入、输出信噪比可得AM信号的信噪比增益为
GAM
NS
0
NS
i
0
i
2
)t(m2
2
2
A
0
)t(m
%清除窗口中的图形
%定义变量区间
%给出相干载波的频率
%定义输入信号幅度
%定义调制信号频率
%输入调制信号表达式
%输入小信躁比(dB)
%由信躁比求方差
%产生小信噪比高斯白躁声
%输出调制信号表达式
%输出叠加小信噪比已调信号波形
%输入大信躁比(dB)
%由信躁比求方差
%产生大信噪比高斯白躁声
%输出已调信号波形
%划分画图区间
%画出输入信号波形
2.2.2 调试过程
clf;
t=0:0.01:2;
fc=50;
A=10;
fa=5;
mt=A*cos(2*pi*fa.*t);
xzb=5;
snr=10.^(xzb/10);
db=A^2./(2*snr);
nit=sqrt(db).*randn(size(mt));
psmt=(A+mt).*cos(2*pi*fc.*t);
psnt=psmt+nit;
xzb1=30;
snr1=10.^(xzb1/10);
db1=A^2./(2*snr1);
nit1=sqrt(db1).*randn(size(mt) );
psnt1=psmt+nit1;
subplot(2,2,1);
plot(t,nit,'g');
title('小信噪比高斯白躁声');
xlabel(' t');
ylabel(' nit');
subplot(2,2,2);
plot(t,psnt,'b');
title('叠加小信噪比已调信号波形');
xlabel('时间');
成绩:
8