通信原理实验报告 实验三四.docx

上传人:b****5 文档编号:5594956 上传时间:2022-12-28 格式:DOCX 页数:20 大小:170.49KB
下载 相关 举报
通信原理实验报告 实验三四.docx_第1页
第1页 / 共20页
通信原理实验报告 实验三四.docx_第2页
第2页 / 共20页
通信原理实验报告 实验三四.docx_第3页
第3页 / 共20页
通信原理实验报告 实验三四.docx_第4页
第4页 / 共20页
通信原理实验报告 实验三四.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

通信原理实验报告 实验三四.docx

《通信原理实验报告 实验三四.docx》由会员分享,可在线阅读,更多相关《通信原理实验报告 实验三四.docx(20页珍藏版)》请在冰豆网上搜索。

通信原理实验报告 实验三四.docx

通信原理实验报告实验三四

通信原理

实验三

实验日期:

2014年12月18日

学院:

信息工程学院

班级:

12级电子信息工程二班

学号:

2012600119

姓名:

张正洁

指导老师:

彭思齐

 

实验三二进制数字信号调制仿真实验

一、实验目的

1.加深对数字调制的原理与实现方法;

2.掌握OOK、2FSK、2PSK功率谱密度函数的求法;

3.掌握OOK、2FSK、2PSK功率谱密度函数的特点及其比较;

4.进一步掌握MATLAB中M文件的调试、子函数的定义和调用方法。

二、实验内容

1.复习二进制数字信号幅度调制的原理

2.编写MATLAB程序实现OOK调制;

3.编写MATLAB程序实现2FSK调制;

4.编写MATLAB程序实现2PSK调制;

5.编写MATLAB程序实现数字调制信号功率谱函数的求解。

三、实验原理

在数字通信系统中,需要将输入的数字序列映射为信号波形在信道中传输,此时信源输

出数字序列,经过信号映射后成为适于信道传输的数字调制信号。

数字序列中每个数字产生

的时间间隔称为码元间隔,单位时间内产生的符号数称为符号速率,它反映了数字符号产生

的快慢程度。

由于数字符号是按码元间隔不断产生的,经过将数字符号一一映射为响应的信

号波形后,就形成了数字调制信号。

根据映射后信号的频谱特性,可以分为基带信号和频带

信号。

通常基带信号指信号的频谱为低通型,而频带信号的频谱为带通型。

调制信号为二进制数字基带信号时,对应的调制称为二进制调制。

在二进制数字调制中,

载波的幅度、频率和相位只有两种变化状态。

相应的调制方式有二进制振幅键控(OOK/2ASK)、

二进制频移键控(2FSK)和二进制相移键控(2PSK)。

四、实验内容

(1)按照如上介绍的方法,分别产生一组长度为500的二进制单极性不归零信号和归

零信号,存档名为Q3_1。

并求分别求出它们的功率谱密度。

请写出相应的MATLAB程序,将不归零信号波形及功率谱和归零信号波形及功率谱分别画在同一图形的四个子图中,将结果

图保存,贴在下面的空白处。

编写的MATLAB程序为:

clearall;

closeall;

A=1

fc=2;%2Hz;

N_sample=8;

N=500;%码元数

Ts=1;%1Baud/s

dt=Ts/fc/N_sample;%波形采样间隔

t=0:

dt:

N*Ts-dt;

Lt=length(t);

%产生二进制信源

d=sign(randn(1,N));

%dd=sigexpand((d+1)/2,fc*N_sample);

N1=length((d+1)/2);

dd=zeros(fc*N_sample,N1);

dd(1,:

)=(d+1)/2;

dd=reshape(dd,1,fc*N_sample*N1);

gt=ones(1,fc*N_sample);%NRZ波形

gt2=ones(1,fc*N_sample/2)%RZboxing/////

figure

(1)

subplot(221);%输入NRZ信号波形(单极性)

d_NRZ=conv(dd,gt);

plot(t,d_NRZ(1:

length(t)));

axis([01001.2]);ylabel('输入信号');

subplot(222);%输入NRZ频谱

dt=t

(2)-t

(1);

T=t(end);

df=1/T;

N=length(d_NRZ(1:

length(t)));

f=-N/2*df:

df:

N/2*df-df;

d_NRZf=fft(d_NRZ(1:

length(t)));

d_NRZf=T/N*fftshift(d_NRZf);

plot(f,10*log10(abs(d_NRZf).^2/T));

axis([-22-5010]);ylabel('输入信号功率谱密度(dB/Hz)');

%/////////

subplot(223);%输入NRZ信号波形(单极性)

d_RZ=conv(dd,gt2);

plot(t,d_RZ(1:

length(t)));

axis([01001.2]);ylabel('输入信号');

subplot(224);%输入NRZ频谱

dt=t

(2)-t

(1);

T=t(end);

df=1/T;

N=length(d_RZ(1:

length(t)));

f=-N/2*df:

df:

N/2*df-df;

d_RZf=fft(d_RZ(1:

length(t)));

d_RZf=T/N*fftshift(d_RZf);

plot(f,10*log10(abs(d_RZf).^2/T));

axis([-22-5010]);ylabel('输入信号功率谱密度(dB/Hz)');

结果图为:

(2)对刚才产生的长度为500的不归零波形对载波频率为2Hz,幅度为1的余弦信号

进行OOK调制,并求出调制信号的功率谱密度。

编写程序实现之,存档名为Q3_2。

要求将

不归零信号波形及功率谱和OOK调制信号波形及功率谱分别画在同一图形的四个子图中,图

形名为图2,将结果图保存,贴在下面的空白处。

编写的程序为:

clearall;

closeall;

A=1

fc=2;%2Hz;

N_sample=8;

N=500;%码元数

Ts=1;%1Baud/s

dt=Ts/fc/N_sample;%波形采样间隔

t=0:

dt:

N*Ts-dt;

Lt=length(t);

%产生二进制信源

d=sign(randn(1,N));

%dd=sigexpand((d+1)/2,fc*N_sample);

N1=length((d+1)/2);

dd=zeros(fc*N_sample,N1);

dd(1,:

)=(d+1)/2;

dd=reshape(dd,1,fc*N_sample*N1);

gt=ones(1,fc*N_sample);%NRZ波形

figure

(1)

subplot(221);%输入NRZ信号波形(单极性)

d_NRZ=conv(dd,gt);

plot(t,d_NRZ(1:

length(t)));

axis([01001.2]);ylabel('输入信号');

subplot(222);%输入NRZ频谱

dt=t

(2)-t

(1);

T=t(end);

df=1/T;

N=length(d_NRZ(1:

length(t)));

f=-N/2*df:

df:

N/2*df-df;

d_NRZf=fft(d_NRZ(1:

length(t)));

d_NRZf=T/N*fftshift(d_NRZf);

plot(f,10*log10(abs(d_NRZf).^2/T));

axis([-22-5010]);ylabel('输入信号功率谱密度(dB/Hz)');

ht=A*cos(2*pi*fc*t);

s_2ask=d_NRZ(1:

Lt).*ht;

subplot(223)

plot(t,s_2ask);

axis([010-1.21.2]);

ylabel('OOK');

dt=t

(2)-t

(1);

T=t(end);

df=1/T;

N=length(s_2ask);

f=-N/2*df:

df:

N/2*df-df;

s_2askf=fft(s_2ask);

s_2askf=T/N*fftshift(s_2askf);

subplot(224)

plot(f,10*log10(abs(s_2askf).^2/T));

axis([-fc-4fc+4-5010]);

ylabel('OOK功率谱密度(dB/Hz)');

结果图为:

(3)按照3.3所提供的2FSK调制的思路和范例程序,运用

(1)产生的不归零码组对

载波频率为2Hz,幅度为1的余弦信号进行2FSK调制,存档为Q3_3,并将所得的结果存盘,

贴在下面空格处。

编写的程序为:

clearall;

closeall;

A=1

fc=2;%2Hz;

N_sample=8;

N=500;%码元数

Ts=1;%1Baud/s

dt=Ts/fc/N_sample;%波形采样间隔

t=0:

dt:

N*Ts-dt;

Lt=length(t);

%产生二进制信源

d=sign(randn(1,N));

%dd=sigexpand((d+1)/2,fc*N_sample);

N1=length((d+1)/2);

dd=zeros(fc*N_sample,N1);

dd(1,:

)=(d+1)/2;

dd=reshape(dd,1,fc*N_sample*N1);

gt=ones(1,fc*N_sample);%NRZ波形

figure

(1)

subplot(221);%输入NRZ信号波形(单极性)

d_NRZ=conv(dd,gt);

plot(t,d_NRZ(1:

length(t)));

axis([01001.2]);ylabel('输入信号');

subplot(222);%输入NRZ频谱

dt=t

(2)-t

(1);

T=t(end);

df=1/T;

N=length(d_NRZ(1:

length(t)));

f=-N/2*df:

df:

N/2*df-df;

d_NRZf=fft(d_NRZ(1:

length(t)));

d_NRZf=T/N*fftshift(d_NRZf);

plot(f,10*log10(abs(d_NRZf).^2/T));

axis([-22-5010]);ylabel('输入信号功率谱密度(dB/Hz)');

%2FSK

%s_2fsk=A*cos(2*pi*fc*t+int(2*d_NRZ-1));

sd_2fsk=2*d_NRZ-1;

s_2fsk=A*cos(2*pi*fc*t+2*pi*sd_2fsk(1:

length(t)).*t);

subplot(223)

plot(t,s_2fsk);

axis([010-1.21.2]);

xlabel('t');

ylabel('2FSK')

subplot(224)

%[f,s_2fsk]=T2F(t,s_2fsk);

dt=t

(2)-t

(1);

T=t(end);

df=1/T;

N=length(s_2fsk);

f=-N/2*df:

df:

N/2*df-df;

s_2fsk=fft(s_2fsk);

s_2fsk=T/N*fftshift(s_2fsk);

plot(f,10*log10(abs(s_2fsk).^2/T));

axis([-fc-4fc+4-5010]);xlabel('f');

ylabel('2FSK功率谱密度(dB/Hz)');

结果为:

(4)按照3.4所提供的2PSK调制的思路和范例程序,运用

(1)产生的不归零码组对

载波频率为2Hz,幅度为1的余弦信号进行2PSK调制,存档为Q3_4,并将所得的结果存盘,

贴在下面空格处。

编写的程序为:

clearall;

closeall;

A=1

fc=2;%2Hz;

N_sample=8;

N=500;%码元数

Ts=1;%1Baud/s

dt=Ts/fc/N_sample;%波形采样间隔

t=0:

dt:

N*Ts-dt;

Lt=length(t);

%产生二进制信源

d=sign(randn(1,N));

%dd=sigexpand((d+1)/2,fc*N_sample);

N1=length((d+1)/2);

dd=zeros(fc*N_sample,N1);

dd(1,:

)=(d+1)/2;

dd=reshape(dd,1,fc*N_sample*N1);

gt=ones(1,fc*N_sample);%NRZ波形

figure

(1)

subplot(221);%输入NRZ信号波形(单极性)

d_NRZ=conv(dd,gt);

plot(t,d_NRZ(1:

length(t)));

axis([01001.2]);ylabel('输入信号');

subplot(222);%输入NRZ频谱

dt=t

(2)-t

(1);

T=t(end);

df=1/T;

N=length(d_NRZ(1:

length(t)));

f=-N/2*df:

df:

N/2*df-df;

d_NRZf=fft(d_NRZ(1:

length(t)));

d_NRZf=T/N*fftshift(d_NRZf);

plot(f,10*log10(abs(d_NRZf).^2/T));

axis([-22-5010]);ylabel('输入信号功率谱密度(dB/Hz)');

ht=A*cos(2*pi*fc*t);

%2PSK信号

d_2psk=2*d_NRZ-1;

s_2psk=d_2psk(1:

Lt).*ht;

subplot(223)

plot(t,s_2psk);

axis([010-1.21.2]);

ylabel('2PSK');

subplot(224)

%[f,s_2pskf]=T2F(t,s_2psk);

dt=t

(2)-t

(1);

T=t(end);

df=1/T;

N=length(s_2psk);

f=-N/2*df:

df:

N/2*df-df;

s_2pskf=fft(s_2psk);

s_2pskf=T/N*fftshift(s_2pskf);

plot(f,10*log10(abs(s_2pskf).^2/T));

axis([-fc-4fc+4-5010]);

ylabel('PSK功率谱密度(dB/Hz)');

结果为:

(5)按照3.4所提供用两路不同频率的2ASK信号合成一路2FSK信号的思想,设计相

关程序实现之,存档为Q3_5,并将所得的结果存盘,贴在下面空格处。

程序为:

clearall;

closeall;

clc;

%随机产生一个包含十个元素的数组,该数组中的元素非0即1,用作FSK信号的输入数据。

x=[1011000101];%产生10个非零数

N=length(x);%码元个数

fl=100;%载频低频

fh=500;%载频高频

fs=10000;%采样频率

ts=1/100;%码元速率100波特,即每秒传递100个码元,ts为传递一个码元的时间

N1=ts*fs/fh;%传递一个码元的时间间隔含有的采样波形数为5个,高频的

N2=ts*fs/fl;%传递一个码元的时间间隔含有的采样波形数为1个,低频的

tt=(0:

1/fs:

ts-1/fs);%传递一个码元的时间间隔内,以每一个采样波形的周期为间隔划分时间,采样

N_tt=length(tt);%一个码元时间间隔内的采样点数,100

t=0:

1/fs:

N*ts-1/fs;

%时间间隔串,以一个码元传递时间为时间间隔

%对该输入信号FSK调制

%循环语句实现调制

fori=1:

1:

N

forj=1:

1:

N_tt

y(i,j)=x(i)*cos(2*pi*fh*tt(j))+~x(i)*cos(2*pi*fl*tt(j));

end

end

%改变矩阵大小

y=reshape(y',1,[])';

%绘制图形

%调制前的二进制随机序列图

subplot(311)

stem([0:

N-1],x(1:

N),'bx');

title('调制前的二进制随机序列')

xlabel('Time');

ylabel('Amplitude');

holdon

subplot(312)

plot(t,y);

title('FSK信号的时域图形');

N_y=length(y);%时域调制信号长度1000

y_fft=fft(y)/N_y;%傅里叶变换

y_fft=fftshift(y_fft);

f=linspace(-fs/2,fs/2,N_y);%频域向量(-5000Hz-5000Hz)

holdon

subplot(313)

plot(f,abs(y_fft));%绘图

title('FSK信号的频域图形');

set(gca,'XTick',-fs/2:

5000:

fs/2);

实验结果为:

(6)根据上面的介绍,我们可以获得基带信号、2ASK调制信号、2FSK调制信号和2PSK调制信号的功率谱,请分析并比较这四个信号功率谱曲线的异同。

通信原理

实验四

实验日期:

2014年12月18日

学院:

信息工程学院

班级:

12级电子信息工程二班

学号:

2012600119

姓名:

张正洁

指导老师:

彭思齐

 

实验四模拟信号数字传输仿真实验

一、实验目的

1.进一步理解抽样定理的原理和实现方法;

2.掌握非均匀量化的原理和实现方法;

3.掌握编码的原理和实现方法;

4.掌握MATLAB中M文件的调试方法及子函数的定义与调用。

二、实验内容

1.编写MATLAB程序实现对模拟信号的抽样

2.编写MATLAB程序实现运用A律13折线法对抽样后的信号进行量化

3.编写MATLAB程序实现运用u律对抽样后的信号进行量化

4.编写MATLAB程序实现PCM编码

三、实验原理

实验中的信源通常都是模拟的,如电视信号、麦克风拾取的语音信号等。

为了能够利用

数字通信的方式,需要将模拟信号进行数字化。

数字化的过程一般由抽样、量化和编码组成。

其中,抽样要保证不丢失原始数据,量化要满足一定的质量,编码解决信号的表示。

四、实验步骤

(1)按照3.1介绍的抽样原理,运行提供的范例程序,将得到的结果图贴在如下的空

白处。

实验结果图为:

(2)修改3.1中的范例,将其抽样速率降低到4Hz以下,在同一图形的三个子图中分

别画出原低通信号波形、抽样序列和从抽样序列中恢复出的信号。

修改后的程序为:

clearall;

closeall;

dt=0.01;

t=0:

dt:

10;

xt=0.1*cos(0.15*pi*t)+1.5*sin(2.5*pi*t)+0.5*cos(4*pi*t);

[f,xf]=T2F(t,xt);

%抽样信号,抽样速率为4Hz

fs=2;

sdt=1/fs;

t1=0:

sdt:

10;

st=0.1*cos(0.15*pi*t1)+1.5*sin(2.5*pi*t1)+0.5*cos(4*pi*t1);

[f1,sf]=T2F(t1,st);

t2=-50:

dt:

50;

gt=sinc(fs*t2);

stt=sigexpand(st,sdt/dt);

xt_t=conv(stt,gt);

figure

(1)

subplot(311);

plot(t,xt);

axis([010-44]);

title('原始信号');

xlabel('t');

holdon;

plot(t1,st,'go');

axis([010-44]);

subplot(312);

plot(t1,st,'ro');

axis([010-44]);

title('抽样信号');

xlabel('t1');

subplot(313);

t3=-50:

dt:

60+sdt-dt;

plot(t3,xt_t);

title('抽样恢复信号');

holdon;

plot(t,xt,'r--');

axis([010-44]);

实验结果图为:

请问,此时的恢复信号与原信号是否一致?

如果不一致,是什么原因造成的?

答:

(3)运行3.2中的程序program4_1,改实验结果图贴在下面。

(4)修改3.2中的程序program4_2,使之画出第一、三象限内的u律压缩特性和15折

线近似曲线。

修改后的程序为:

clearall;

closeall;

dx=0.01;

x=-1:

dx:

1;

u=255;

%A=87.6;

%ulaw

yu=sign(x).*log(1+u*abs(x))/log(1+u);

%program4_2

figure

(2)

plot(x,yu,'k.:

');

title('ulaw');

xlabel('x');

ylabel('y');

gridon;

holdon;

xx=[-1,-127/255,-63/255,-31/255,-15/255,-7/255,-3/255,-1/255,1/255,3/255,7/255

15/255,31/255,63/255,127/255,1];

yy=[-1,-7/8,-6/8,-5/8,-4/8,-3/8,-2/8,-1/8,1/8,2/8,3/8,4/8,5/8,6/8,7/8,1];

plot(xx,yy,'r');

stem(xx,yy,'b-.');

legend('u律压缩折线','折线近似u律');

axis([-1,1,-1,1]);

实验结果图为:

(5)运行program4_3,将结果图保存并粘贴在下面,要求分析量化信号的A律PCM编

码,经过传输后,接收端进行PCM译码的全过程中信号变化的情况。

实验结果图为:

信号变化分析如下:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1