基于MATLAB的ASK调制解调实验

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

基于MATLAB 的ASK 调制解调实验

1.实验目的

(1) 熟悉MATLAB 中M 文件的使用方法,并在掌握ASK 调制解调原理的基础上,编写出ASK 调制解调程序。

(2) 绘制出ASK 信号解调前后在时域和频域中的波形,并观察解调前后频谱有何变化以加深对ASK 信号解调原理的理解。

(3) 对信号叠加噪声,并进行解调,绘制出解调前后信号的时频波形,改变噪声功率进行解调,分析噪声对信号传输造成的影响。

2.实验原理

(1)ASK 调制原理

ASK 指的是振幅键控方式。这种调制方式是根据信号的不同,调节正弦波的幅度。幅度键控可以通过乘法器和开关电路来实现。载波在数字信号1或0的控制下通或断,在信号为1的状态载波接通,此时传输信道上有载波出现;在信号为0的状态下,载波被关断,此时传输信道上无载波传送。那么在接收端我们就可以根据载波的有无还原出数字信号的1和0。对于二进制幅度键控信号的频带宽度为二进制基带信号宽度的两倍。幅移键控法(ASK )的载波幅度是随着调制信号而变化的,其最简单的形式是,载波在二进制调制信号控制下通断, 此时又可称作开关键控法(OOK )。二进制幅度键控记作2ASK 。2ASK 是利用代表数字信息“0”或“1”的基带矩形脉冲去键控一个连续的载波,使载波时断时续地输出。有载波输出时表示发送“1”,无载波输出时表示发送“0”。2ASK 信号可表示为

t w t s t e c cos )()(0=式中,c w 为载波角频率,s(t)为单极性NRZ 矩形脉冲序列 )()(b n

n nT t g a t s -=∑其中,g(t)是持续时间b T 、高度为1的矩形脉冲,常称为

门函数;n a 为二进制数字⎩⎨⎧-=P P a n 101,出现概率为

,出现概率为 2ASK/OOK 信号的产生方法通常有两种:模拟调制(相乘器法)和键控法。本模拟幅度调制的方法用乘法器实现。相应的调制如图5-1和图5-2:

图5-1模拟相乘法

图5-2键控/开关法

(2)ASK 解调原理

2ASK/OOK 信号有两种基本的解调方法:非相干解调(包络检波法)和相干解调(同步检测法)。本课程设计要求的是相干解调,如图5-3:

图5-3相干解调

3.实验内容

(1) 产生数字基带信号并绘制时域谱和频域谱;

(2) 设置载波频率并绘制其时域谱和频域谱;

(3) 对信号进行数字调制并绘制时域谱和频域谱;

(4) 对已调信号进行解调并绘制时域谱和频域谱;

(5) 对已调信号加入高斯小噪声并绘制时域谱和频域谱;

(6) 对加小噪声信号进行解调并绘制时域谱和频域谱;

(7) 对已调信号加入高斯大噪声并绘制时域谱和频域谱;

(8) 对加大噪声信号进行解调并绘制时域谱和频域谱;

(9) 比较当信噪比不同时,误码率大小。

)

(2t e ASK

4.实验程序(1)

%产生二进制随机序列

x=ceil(rand(1,100000)-0.5) %产生二进制随机序列并取大于x 的最小整数figure(1) %窗口1,包含时域谱和频域谱

subplot(2,1,1) %分块图函数subplot,图形窗口分成2块子窗口的第1个图像

stairs(x); %第2个图像

xlabel('时间t'); %x轴标注

ylabel('序列值'); %y轴标注

title('二进制随机序列'); %添加图像标题

axis([1 21 -1 2]) %控制坐标轴的范围

grid on %图像中添加栅格

%对随机序列进行频谱分析

FFT1=fft(x,128); %对随机序列进行傅里叶变换

FFT1=abs(FFT1); %对傅里叶变换取绝对值

figure(1)

subplot(2,1,2) %第2个图像

plot(FFT1);

xlabel('频率f');

ylabel('幅度FFT1');

title('随机序列频谱');

axis([0 128 0 50])

grid on

(2)

%载波信号

t=1/360:1/360:20; %载波时间范围

Fc=36; %载波频率

carry=cos(2*pi*Fc*t); %正弦载波信号

figure(2) %窗口2,包含时域谱和频域谱

subplot(2,1,1)

plot(carry);

xlabel('时间t');

ylabel('幅度carry');

title('载波信号');

axis([1 600 -2 2])

grid on

%对载波信号进行频谱分析

FFT2=fft(carry,256); %对载波信号进行傅里叶变换

FFT2=abs(FFT2); %对傅里叶变换取绝对值

figure(2)

subplot(2,1,2)

plot(FFT2);

xlabel('频率f');

ylabel('幅度FFT2');

title('载波信号频谱');

axis([0 256 0 100])

grid on

(3)

%ASK的调制

Fd=12; %Fd为码速率,Fs为采样频率

Fs=360;

y=dmod(x,Fc,Fd,Fs,'ask',2);%调用数字带通调制函数dmod进行2ASK调制for i=1:20

if x(i)==0

yy(30*(i-1)+1:30*i)=0;

else

yy(30*(i-1)+1:30*i)=y(30*(i-1)+1:30*i);

相关文档
最新文档