资源描述
通信原理实验报告
实验一:模拟调制系统仿真
年级专业 2011级电子信息工程
学号 201101830105 201101830106
201101830107 201101830108
姓名 郑xx 梁xx
于x 李x
实验目标
1、 掌握线性模拟调制信号的波形及产生方法;
2、掌握线性模拟调制信号的频谱特点;
3、掌握线性模拟调制信号的解调方法;
4、掌握线性模拟调制系统的MATLAB仿真实现。
实验原理
1.1 模拟调制
l 模拟调制包括幅度调制(DSB,SSB,AM)和相角调制(频率和相位调制)。
l 幅度调制(线性调制)是正弦载波的幅度随着调制信号而改变的调制方案。
l 若调制信号,频谱为,带宽为,SSB调制的带宽为,DSB和AM调制的带宽为2。VSB-AM的带宽在-2区间内。
l AM调制与DSB调制在许多方面十分相似,唯一区别在于AM调制用代替DSB的。
l
l
调制器模型如图1-1所示
图1-1 AM调制器模型
l 假设被调信号是零均值信号,则调制信号的功率为。
l 为调制信号平均功率,为边带功率,为载波功率。
l 调制信号中用于发送信息的功率和总功率的比值称为调制效率,
l 解调器输入信噪比定义为
,为理想带通滤波器带宽,在理想信道中,当带通滤波器幅频特性为常数1时,,,即可由解调器输入信噪比计算出信道噪声的单边带功率谱密度,而当系统抽样速率为时,产生的高斯白噪声带宽为,由此可计算出信道中高斯白噪声的平均功率,即方差,从而利用有关知识可以产生信道中所叠加的高斯白噪声。
1.2信道加性高斯白噪声
信道中加性高斯白噪声功率由于其均值为0,故其方差即为其平均功率,其中为高斯白噪声单边带功率谱密度;B为信道带宽。在图1中,信道噪声的功率谱密度图可以看出,当=16Hz时,叠加于信道的高斯噪声带宽为8Hz,信道中的加性高斯白噪声通过带宽为2Hz,幅度为1的理想带通滤波器后,输出的窄带噪声的平均功率即为相干解调器输入噪声的平均功率,其功率谱密度不变,仍为。可以看出,与信道加性高斯白噪声功率之间有一定的关系,其共同点是其功率谱密度相同,从图1也可以观察出来,为-20dB。因此,在理想通信系统中,利用已给解调器输入信噪比及已调信号功率和带宽,可以计算出,从而算出信道加性高斯白噪声的方差,由于其均值为0,故该方差为其平均功率,利用它可以生成信道加性高斯白噪声。转换关系为:
,,因此,
或,E是接收信号平均能量。
图1 系统采样频率为16Hz时的噪声
实验内容
调制信号为
,利用AM调制方式调制载波,假设,直流分量为3,采样频率1000Hz,解调器输入信噪比为25dB,采用相干方式解调编写matlab程序实现AM信号的调制解调。
仿真程序
l 序列的傅立叶变换
function [M,m,df]=fftseq(m,ts,df)
%各参数含义与子函数T2F中的完全相同,完成
fs = 1/ts;
if nargin ==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)];
df = fs/n;
l 计算信号功率
function p=power_x(x)
%x:输入信号
%p:返回信号的x功率
p=(norm(x).^2)./length(x);
l 信号从频域转换到时域
function [m]=F2T(M,fs)
%-------------------------输入参数
%M:信号的频谱
%fs:系统采样频率
%--------------------输出(返回)参数
%m:傅里叶逆变换后的信号,注意其长度为2的整数次幂,利用其画波形时,要注意选取m的一部分,选取长度和所给时间序列t的长度要一致,plot(t,m(1:length(t))),否则会出错。
m = real(ifft(M))*fs;
l 信号从时域转换到频域
function [M,m,df1,f]=T2F(m,ts,df,fs)
%------------------------输入参数
%m:信号
%ts:系统时域采样间隔
%df:所需的频率分辨率
%fs:系统采样频率
%---------------------输出(返回)参数
%M:傅里叶变换后的频谱序列
%m: 输入信号参与过傅里叶变换后对应的序列,需要注意的是,该序列与输入信号m的区别,其长度是不一样的,输入的m长度不一定是2的整数次幂,而傅里叶变换要求输入信号长度为2的整数次幂,故傅里叶变换前需对输入的m信号进行补零,其长度有所增加,故输出参数中的m为补零后的输入信号,其长度与输入参数m不一样,但与M,f长度是一样的,并且,其与时间序列t所对应的序列m(1:length(t))与输入参数中的m是一致的。
%df1:返回的频率分辨率
%f:与M相对应的频率序列
[M,m,df1]=fftseq(m,ts,df);
f = [0:df1:df1*(length(m)-1)] -fs/2; %频率向量
M=M/fs;
l 带通滤波器
function[H,f]=bp_f(n,f_start,f_cutoff,df1,fs,p)
%带通滤波器函数 输入设计的滤波器参数,产生带通滤波器频率特性函数H和频率向量f
%------------------------输入参数
%n 带通滤波器的输入信号长度
%f_start 通带起始频率
%f_cutoff 带通滤波器的截止频率
%df1 频率分辨率
%fs 抽样频率
%p 滤波器幅度
%----------------------输出(返回)参数
%H 带通滤波器频率响应
%f 频率向量
%设计滤波器
n_cutoff = floor(f_cutoff/df1);
n_start = floor(f_start/df1);
f = [0:df1:df1*(n-1)] -fs/2; %频率向量
H = zeros(size(f));
H(n_start+1:n_cutoff) = p*ones(1,n_cutoff-n_start);
H(length(f) - n_cutoff+1:length(f)-n_start) = p*ones(1,n_cutoff-n_start);
l 低通滤波器
function [H,f]=lp_f(n,f_cutoff,df1,fs,p)
%低通滤波器函数 输入设计的滤波器参数,产生低通滤波器频率特性函数H和频率向量f
%------------------------输入参数
%n 低通滤波器的输入信号长度
%f_cutoff 低通滤波器的截止频率
%df1 频率分辨率
%fs 抽样频率
%p 滤波器幅度
%---------------------输出(返回)参数
%H 低通滤波器频率响应
%f 频率向量
n_cutoff = floor(f_cutoff/df1); %设计滤波器
f = [0:df1:df1*(n-1)] -fs/2; %频率向量
H = zeros(size(f));
H(1:n_cutoff) = p*ones(1,n_cutoff);
H(length(f) - n_cutoff+1:length(f)) = p*ones(1,n_cutoff);
l 计算信号有效带宽
function [Bw_eq]=signalband(sf,df,T)
%计算信号等效带宽
%sf:信号频谱
%df:频率分辨率
%T:信号持续时间
sf_max=max(abs(sf));
Bw_eq=sum(abs(sf).^2)*df/T/sf_max.^
仿真结果
figure(1)
figure(2)
figure(3)
figure(4)
实验总结
通过本次试验,我掌握了运用MATLAB进行信号处理和分析的基本内容和方法加强了我对MATLAB软件的应用能力,题干自己的基础理论知识,解百纳动手能力,本次实验中,着重研究了幅度调制(DSB,SSB,AM)和相角调制(频率和相位调制),采用相干方式解调编写matlab程序实现AM信号的调制解调。实习了信号波形,频谱的分析方法。
通过本次实验。我明白了许多细小的环节是注意不到的,而这诸多环节恰恰是实验成功的关键所在,这可真应验了细节决定一切那句话,这一切告诉我们必须从全局出发,并且要注意其中的任何一个环节。
展开阅读全文