数字基带传输系统基带图形和眼图的实验
一、 实验目的
-
通过用matlab绘制不同的基带信号波形和频谱图从而来更好的认识到基带信号的产生过程以及更深刻的认识到基带信号的功率谱特性。
-
通过绘制眼图从而认识到ISI和噪声对信号的影响,能认识到眼图的重要。
-
学会灵活使用眼图对系统性能进行定性评价
二、实验任务
1.画出单极性NRZ波形及其功率谱,设0,1等概
2.画出单极性RZ波形及其功率谱,且0、1等概
3.输入为等概出现+1/-1序列,画出过不同滚降系数(3个不同系数)下的升余弦滚降系统的信号及功率谱
4 .绘制至少3种不同滚降系数的升余弦成型基带波形的眼图,并对结果进行分析从而判断系统的性能
三、实验内容和步骤
实验一: -
单极性NRZ波形的绘制
代码:
clear all;
clc;
fb=1000;
fs=10000;
M=fs/fb;%一码元的样点数8
num=8;%码元个数
sig=zeros(1,numM);%信号初始化
h_n0=ones(1,M);%成型波形
cyc=100;
sig_f=zeros(1,numM+length(h_n0)-1);
for i=1:cyc
symb=randi(2,1,num)-1;%随机生成0和1
sig(1:M:end)=symb;%内插
sig_bs=conv(sig,h_n0); %卷积成基带信号
%figure;plot(sig_bs(1:end),‘b-o’);%画出每次的成型信号
xlabel(‘t’);ylabel(‘电平’);title(‘单极性NRZ’);
sig_f=sig_f+abs(fft(sig_bs)).^2;%做fft循环叠加
end
a=length(sig_bs);
fldx=((-fs/2):(fs/length(sig_f)):(fs/2));
figure;semilogy(fldx(2:end),fftshift(sig_f)/cyc,‘b’);%画出功率谱
xlabel(‘f’);ylabel(‘p’);
title(‘功率谱’); 图形:
分析:采用离散点来表示信号,我们取的周期为10,采取半占空比,分析可知电平表示为01001110;通过分析功率谱,可以看出主要功率集中在低频附近,也就符合基带信号的功率谱,但还是存在一些高频的干扰。
2. 绘制单极性RZ波形
代码
clear
clc
%单极性NRZ波形
fb=1000;
fs=10000;
M=fs/fb;%一个码元的采样点
num=8;%码元的个数
sig=zeros(1,numM);%总的采样点数
h_n0=ones(1,M);%矩形成形
h_n1=rcosdesign(0.25,5,M);%余弦滚降
%plot(h_n1);
siga=randi(2,1,num)-1;%随机0/1信号
a=num2str(siga);%数组转字符串
sig(1:M:numM)=siga;%M倍内插
%figure;stem(sig);
signal=conv(sig,h_n0);%卷积
figure;plot(signal,‘o’);
grid on;xlabel(‘采样点数’);ylabel(‘电平’);title(‘电平取值为’,a);
% figure;
% for i=1:15
% hold on;
% plot(signal(num*(i-1)+1:num*i));
% end
图形:
分析:周期为10,信号只能取0和 1,所以是单极性,且为非归零波形,信号波形为01011100;单极性NZ的功率谱的功率也主要集中在低频附近,但高频影响很大。
3. 输入为等概出现+1/-1序列,不同滚降系数(3个不同系数)下的升余弦滚降系统
代码:
clear all;
clc;
fb=1000;
fs=10000;
M=fs/fb;%一码元的样点数8
num=150;%码元个数
sig=zeros(1,numM);%信号初始化
%h_n0=[ones(1,M/2),zeros(1,M/2)];%成型波形
h_n1=rcosdesign(1,8,M);%余弦滚降;
figure;plot(h_n1);
cyc=100;
sig_f=zeros(1,numM+length(h_n1)-1);
for i=1:cyc
symb=randi(2,1,num)-1;%随机生成0和1
sig(1:M:end)=symb;%内插
sig_bs=conv(sig,h_n1); %卷积成基带信号
%figure;plot(sig_bs(1:end),‘b-o’);%画出每次的成型信号
%xlabel(‘t’);ylabel(‘电平’);title(‘单极性RZ’);
sig_f=sig_f+abs(fft(sig_bs)).^2;%做fft循环叠加
end
a=length(sig_bs);
fldx=((-fs/2):(fs/length(sig_f)):(fs/2));
figure;semilogy(fldx(2:end),fftshift(sig_f)/cyc,‘b’);%画出功率谱
xlabel(‘f’);ylabel(‘p’);
title(‘功率谱’);
定义滚降系数为a
(1) 当a=0.25
(2) 当a=0.5
(3) a=1
分析:可知随着滚降系数的增大,拖尾收敛越快。也就是系统靠牺牲带宽来减少码间串扰。
实验二:
绘制3种不同滚降系数的升余弦成型基带波形的眼图,并对结果进行分析
代码:
通用代码,只需通过修改a的值来改变相应的滚降系数
clear
clc
%单极性NRZ波形
fb=1000;
fs=10000;
M=fs/fb;%一个码元的采样点
num=128;%码元的个数
sig=zeros(1,numM);%总的采样点数
%h_n0=ones(1,M);%矩形成形
a=0.1;%滚降系数,分别取0.1,0.5和1
L=16;
h_n1=rcosdesign(a,L,M,‘normal’);%余弦滚降;%
%figure;plot(h_n1);
siga=randi(2,1,num)2-3;%随机0/1信号
%siga=[1 0 0 1 1 1 0 1];%固定随机信号
%a=num2str(siga);%数组转字符串
sig(1:M:numM)=siga;%M倍内插
%figure;stem(sig);
signal=conv(sig,h_n1);%信号过升余弦滚降系统
%subplot(2,1,1);
figure;
plot(signal);xlabel(‘t’);ylabel(‘y’);title(‘信号波形’);
eye_num=2;%定义观测区间
offset=LM+0.5*M;%起始偏移量
figure;
for k=0:100
s_once=signal((1:eye_numM+1)+kM+offset);%分段
plot(s_once);
hold on;%叠加绘制
end
% grid on;xlabel(‘t’);ylabel(‘电平’);title(‘滚降系统’);
% p=(abs(fft(signal))).^2/(length(signal));%功率谱
% subplot(2,1,2);
% f=0:fs/length(signal):fs-1;
% plot(f,p);xlabel(‘f’);ylabel(‘p’);title(‘功率谱密度’);
% % figure;
% for i=1:15
% hold on;
% plot(signal(num*(i-1)+1:num*i));
% end
图形:
(1) 当a=0.1时
(2) 当a=0.5时
(3) 当a=1时
分析:
可见随着滚降系数a 的变大,眼图更加清晰,说明码间串扰越小,拖尾衰减越快,系统的性能也就越好,也就是当滚降系数为1时性能最好
四.实验总结
通过本次实验,再一次的回顾了第六章基带信号四种波形,以前算是只会判断,通过自己亲手取用matlab去实现,才发现了自己对基带信号学习存在的许多问题。通过信号过系统卷积的实现,也复习了信号的知识,进一步理解了卷积的物理意义。
通过对眼图的绘制,更清楚的认识到了眼图对判断系统性能方面的重要性,比如说码间串扰和噪声。
对通信原理这门课有了更大的兴趣,以前总是学理论不知道有什么用,今天用到了以往的知识才有了很大的成就感。