利用MATLAB仿真模拟调制系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

利用MATLAB仿真模拟调制系统
MATLAB的名称源自Matrix Laboratory,专门以矩阵形式处理数据,是目前国际上流行的进行科学研究、工程计算的软件,广泛地应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作中。

MATLAB的出现使得通信系统的仿真能够用计算机模拟实现,只需要输入不同的参数就能得到不同情况下的系统性能,而且在结构的观测和数据的存储方面也比传统的方式有优势,因而MATLAB在通信仿真领域得到越来越多的应用。

本文中,我们对模拟调制系统、数字带通传输系统等列举了一些MATLAB仿真的实例,作为大家学习MATLAB的参考资料,让读者学会处理具体问题的建模编程方法,逐渐掌握MATLAB的通信系统仿真。

由本章的学习我们知道,各种信源所产生的基带信号并不能在大多数信道内直接传输,而是需要经调制后再送到信道中去。

在接受端就必须通过相反的过程,即解调。

本章中,我们以常规双边带调幅AM系统为例仿真模拟通信系统的各个过程。

我们假定信号频率为10Hz,载波频率为50Hz,采样率为1000Hz,信噪比SNR等于3。

要求利用MATLAB软件仿真AM调制每一点的波形,包括信息信号、AM信号、载波信号、已调信号、通过带通滤波器后的信号,解调后的信号;并仿真AM信号频谱、已调信号频谱与解调信号频谱。

MATLAB程序如下:
% 标准调幅AM调制
a0=2;f0=10;fc=50;snr=3; fs=1000; % 变量定义
t=[-50:0.001:50];
am1=cos(2*pi*f0*t); % 产生信号频率为f0的基带信号
am=a0+am1; % 产生AM信号
c_am=cos(2*pi*fc*t); % 产生频率为fc的载波
AM_mod=am.*c_am; % 产生调制信号
am_f=fft(am); % AM频域
AM_modf=fft(AM_mod);
y=awgn(AM_mod,snr); % 叠加噪声
figure(1); hold on;
subplot(2,2,1); plot(t,am1); axis([0 0.4 -2 2]); title('基带信号波形'); % 绘图subplot(2,2,2); plot(t,am); axis([0 0.4 -2 6]); title('AM信号波形');
subplot(2,2,3); plot(t,c_am); axis([0 0.4 -2 2]); title('载波信号波形'); subplot(2,2,4); plot(t,AM_mod); axis([0 0.4 -8 8]); title('已调信号波形'); hold off;
figure(2); hold on;
subplot(2,2,1); plot(t,AM_mod); axis([0 0.4 -8 8]); title('已调信号波形'); subplot(2,2,2); plot(t,y); axis([0 0.4 -8 8]); title('叠加噪声后的信号波形');; a=[35,65];b=[30,70];
Wp=a/(fs/2);Ws=b/(fs/2);Rp=3; Rs=15;
[N,Wn]= Buttord(Wp,Ws,Rp,Rs) ; % 计算巴特沃斯数字滤波器的阶数和
3db截止频率
[B,A]=Butter(N,Wn,'bandpass'); % 计算巴特沃斯模拟滤波器系统函数的分子、分母多项式系数向量
sig_bandpass=filtfilt(B,A,y); % 带通滤波后信号
subplot(2,2,3); plot(t,sig_bandpass); axis([0 0.4 -8 8]); title('经带通滤波后信号波形');
hold off;
AM_dem=sig_bandpass.*c_am;
Wp=15/(fs/2);Ws=40/(fs/2);Rp=3; Rs=20;
[N,Wn]= Buttord(Wp,Ws,Rp,Rs) ; % 同上
[B,A]=Butter(N,Wn,'low');
AM_demod=filtfilt(B,A,AM_dem) % 低通滤波后信号
AM_demodf=fft(AM_demod);
subplot(2,2,4); plot(t,AM_demod); axis([0 0.4 0 2]); title('解调信号波形'); hold off;
f=(0:100000)*fs/100001-fs/2;
figure(3); hold on;
subplot(3,1,1); plot(f,fftshift(abs(am_f))); title('AM 信号频谱'); % 绘图 subplot(3,1,2); plot(f,fftshift(abs(AM_modf))); title('已调信号频谱'); subplot(3,1,3); plot(f,fftshift(abs(AM_demodf))); title('解调信号频谱'); hold off;
其波形如5- 所示。

00.10.20.30.4-2
-101
2基带信号波形
00.10.20.30.4
AM 信号波形
0.1
0.2
0.3
0.4
-2-1012载波信号波形
0.10.2
0.30.4
已调信号波形
图1 发送端信号波形
0.1
0.2
0.3
0.4
已调信号波形
0.1
0.2
0.3
0.4
-505叠加噪声后的信号波形
0.1
0.2
0.3
0.4
经带通滤波后信号波形
0.10.20.30.4
00.511.52
解调信号波形
图2 接收端信号波形
-500-400
-300-200-1000100200300400500
5
AM 信号频谱
-500-400
-300-200-1000100200300400
500
4
已调信号频谱
-500-400-300-200-1000100200300400
500
5
解调信号频谱
图3 信号频谱图。

相关文档
最新文档