1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Báo cáo thí nghiệm thông tin số

18 7,4K 383

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 1,2 MB

Nội dung

Báo cáo thí nghiệm thông tin số Viện điện tử viễn thông Đại học bách khoa hà nội

Trang 1

BÁO CÁO THÍ NGHIỆM MÔN HỌC

THÔNG TIN SỐ

Mã học phần : ET3250 Sinh viên thực hiện:

Mã số sinh viên:

Lớp: Điện tử truyền thông 07-K56 Nhóm thí nghiệm:

1

Trang 2

Bài 1: QUÁ TRÌNH NGẪU NHIÊN CỦA TÍN HIỆU

Bài 1.1:

% -% BAI 1: QUA TRINH NGAU NHIEN CUA TIN HIEU

% Bai 11: Viet chuong trinh ve ham phan phoi chuan

% -x=-5:0.1:5; % Khoi tao mang x gom 100 phan tu

Px=(1/sqrt(2*pi)*exp(-x.^2/2)); %Gia tri cua ham P(x)

plot(x,Px,'-o');

xlabel('x'); % Tieu de cua truc Ox

ylabel('P(x)'); % Tieu de cua truc Oy

title('Ham phan bo xac suat cua phan phoi chuan');

Figure:

2

Trang 3

Bài 1.2: Tạo 1 quá trình ngẫu nhiên với phân bố chuẩn với độ dài 100000 phần tử

% -%Bai 1.2: Qua trinh ngau nhien voi phan phoi chuan voi do dai 100000 ptu

% -len = 100000; % Do dai cua qua trinh ngau nhien

x = randn(1,len); % Tao qua trinh ngau nhien theo phan phoi chuan

step =0.1; % step = 0.1

k = -5:step:5; % Khoang xet tu -5 den 5, cach deu 0.1

px = hist (x,k)/len/step; % Tinh so vector trong khoang -5 den 5

stem(k,px); % Do thi roi rac

Px_lythuyet = exp(-k.^2/2)/sqrt(2*pi);

hold on; % Ve chung voi do thi px

plot(k,Px_lythuyet,'rx '); % Hien thi dang do thi

title('Phan bo xac suat Gauss '); % Tieu de cua do thi

xlabel('x'); % Ten truc hoanh

ylabel ('P(x)'); % Ten truc tung

legend('Ly thuyet','Mo phong'); % Ky hieu

hold off;

Figure:

3

Trang 4

Bài 2: LƯỢNG TỬ HÓA TUYẾN TÍNH

Bài 2.1:

Code:

Xs =rand(1,5)*2-1;

[xi xq] =lquan(xs,-5,5,3)

Kết quả:

xs = 0.6294 0.8116 -0.7460 0.8268 0.2647

xi = 4 4 3 4 4

xq = 0.6250 0.6250 -0.6250 0.6250 0.6250

Bài 2.2:

% -% Bai 22: Cho tin hieu x(t) ngau nhien co bien do -1 den 1 xet trong

% khoang 0<= t % <=20

% va t/h luong tu xq(t) Ve do thi xt va xqt tren cung 1 do thi

% -t = 0:0.01:20;

xt= sin(randn()+t).*cos(rand()*t);

[inx xqt] = lquan(xt,-1,1,randint(1,1,3)+2);

plot(t,xt,'b',t,xqt,'r');

grid on;

title('Do thi cua tin hieu xt va xqt ');

xlabel('t');

legend('x(t)','xqt(t)');

hold off;

Figure:

4

Trang 5

Bài 3: TẠP ÂM LƯỢNG TỬ TRONG KỸ THUẬT LƯỢNG TỬ HÓA TUYẾN TÍNH

Bài 3.1:

% -% Bai 3.1: Luong tu hoa tuyen tin mot t/h ngay nhien x gom 1000 mau phan bo

% deu trong dai -1:1 So sanh voi cong thuc ly thuyet, ty so SNqR trong

% truong hop t/h vao co phan bo deu dc tin nhu sau: SNqR=6.02n

% -N=1000;

x= 2*rand(1,N)-1; % x phân bo deu tu -1 den 1

nbit= 1:10; % So bit luon tu tu 1 den 10

SNqR=zeros(size(nbit)); % Khoi tao mang SNqR chua ket qua

SNqR_lt= 6.02*nbit; % Mang chua SNqR tinh theo ly thuyet

Ps=sum(x.^2)/N; % Cong suat tin hieu x

% Tinh gia tri SNqR ung voi moi gia tri cua n

for i=1:length(nbit) % Size(n,2) tra ve so cot cua n

[xi xq]=lquan(x,-1,1,nbit(i)); %LTH x voi so bit nbit(i) luu kq vao xq eq=x-xq; % Tinh sai so

Pq=sum(eq.^2)/N; % Cong suat tap am luong tu Pq

SNqR(i)=10*log10(Ps/Pq); % Tinh SNqR(i) ra deciben

end

plot(nbit,SNqR,'b',nbit,SNqR_lt,'r-');

title('Do thi SNqR theo nbit');

xlabel('x');

ylabel('SNqR');

legend('Thuc te','Ly thuyet');

hold off;

5

Trang 6

Bài 3.2:

% -% Bai 3.2:

% -N=1000;

x= sin(linspace(1,5,N)); % x la tin hieu dieu hoa

nbit= 1:10; % So bit luon tu tu 1 den 10

SNqR=zeros(size(nbit)); % Khoi tao mang SNqR chua ket qua

SNqR_lt= 6.02*nbit; % Mang chua SNqR tinh theo ly thuyet

Ps=sum(x.^2)/N; % Cong suat tin hieu x

% Tinh gia tri SNqR ung voi moi gia tri cua n

for i=1:length(nbit) % Size(n,2) tra ve so cot cua n

[xi xq]=lquan(x,-1,1,nbit(i)); %LTH x voi so bit nbit(i) luu kq vao xq eq=x-xq; % Tinh sai so

Pq=sum(eq.^2)/N; % Cong suat tap am luong tu Pq

SNqR(i)=10*log10(Ps/Pq); % Tinh SNqR(i) ra deciben

end

plot(nbit,SNqR,'b',nbit,SNqR_lt,'r-');

title('Do thi SNqR theo nbit');

xlabel('x');

ylabel('SNqR');

legend('Thuc te','Ly thuyet');

hold off;

6

Trang 7

Bài 4: MẬT ĐỘ PHỔ NĂNG LƯỢNG VÀ HÀM TỰ TƯƠNG QUAN CỦA TÍN HIỆU

Bài 4.1:

% -% Bai 4.1: Tinh va ve do thi ham mat do pho nang luong cua tin hieu ngau

% nhien x voi do dai L=500 mau

% -L=500;

x=randn(1,L);

acorr_x = xcorr(x); % Ham tu tuong quan cua x

n=-(L-1):1:(L-1);

plot(n,acorr_x);

title('Ham tu tuong quan');

xlabel('n');

ylabel('acorr_x');

hold on;

% Tin hieu co bien do tang dan

x=linspace(-1,1,L);

acorr_x=xcorr(x);

n=-(L-1):1:(L-1);

plot(n,acorr_x,'k ');

hold on;

% Tin hieu since

x=sin(linspace(-10,10,L));

acorr_x=xcorr(x);

n=-(L-1):1:(L-1);

plot(n,acorr_x,'r.');

hold on;

7

Trang 8

Bài 4.2:

% -% BAI 4: MAT DO PHO NANG LUONG VA HAM TU TUONG QUAN CUA TIN HIEU

% Bai 4.2: Yeu cau:

% Tao t/h ngau nhien x voi do dai L=50 mau

% Tinh ham mat do pho nang luong cua t/h x, luu vao vector esd_x % Tim pho cua ham tu tuong quan cua x, luu vao bien ft_acorr_x % Ve do thi pho cua esd_x va ft_acorr_x

% -L=50; % t/h x ngau nhien do dai L=50 mau

N=200; % So luong tan so roi rac

x=randn(1,L);

w=linspace(0,2*pi,N);

fx=freqz(x,1,w);

esd_x=fx.*conj(fx);

acorr_x=xcorr(x);

subplot(2,1,1);

semilogy(w/pi,esd_x);

title('Mat do pho nang luong');

xlabel('n');

ylabel('S(ejw)');

hold on;

ft_acorr_x=freqz(acorr_x,1,w).*exp(j*w*(L-1));

subplot(2,1,2);

semilogy(w/pi,real(ft_acorr_x),'r');

xlabel('n');

ylabel('Rxx(ejw)');

Figure:

8

Trang 9

Bài 5: MÃ ĐƯỜNG DÂY NRZ

Bài 5.1:

% -% BAI 5: MA DUONG DAY NRZ

% Bai 5.1: Mo phong he thong truyen so dan bang tan co so su dung phuong

% phap ma hoa NRZ luong cuc

% -len=100000; % Do dai dong bit mo phong

SNR_db=0:2:8; % Tao vector SNR_db = 0 2 4 6 8

SNR= 10.^(SNR_db/10); % Doi SNR tu decibel sang lan

bsignal=randint(1,len); % Dong bit ngau nhien co do dai len

NRZ_signal=bsignal*2-1; % Bien doi dong bit 0 1 sang -1 1

N0=1./SNR; % Cong suat tap am

for i=1:length(SNR_db)

noise=sqrt(N0(i))*randn(1,len);

r_signal=NRZ_signal + noise;

NRZ_decoder=sign(r_signal);

[Num,Rat]=symerr(NRZ_decoder,NRZ_signal);

Pe(i)=Rat;

end

plot(SNR_db,Pe,'ko ');

title('Ty le bit loi');

xlabel('SNR_db');

ylabel('Pe');

Figure:

9

Trang 10

Bài 5.2:

% -% BAI 5: MA DUONG DAY NRZ

% Bai 5.2: Ve do thi cua ham xac suat loi ly thuyet va mo phong tren cung

% mot do thi

% -len=100000; % Do dai dong bit mo phong

SNR_db=0:2:8; % Tao vector SNR_db = 0 2 4 6 8

SNR= 10.^(SNR_db/10); % Doi SNR tu decibel sang lan

bsignal=randint(1,len); % Dong bit ngau nhien co do dai len

NRZ_signal=bsignal*2-1; % Bien doi dong bit 0 1 sang -1 1

N0=1./SNR; % Cong suat tap am

for i=1:length(SNR_db)

noise=sqrt(N0(i))*randn(1,len);

r_signal=NRZ_signal + noise;

NRZ_decoder=sign(r_signal);

[Num,Rat]=symerr(NRZ_decoder,NRZ_signal);

Pe(i)=Rat;

end

plot(SNR_db,Pe,'ko ');

title('Ty le bit loi');

xlabel('SNR_db');

ylabel('Pe');

hold on;

SNR=0:2:8;

pe=1./2.*(1-erf(sqrt(10.^(SNR/10)./2)));

plot(SNR,pe,'r+-');

legend('Mo phong','Ly thuyet');

Figure:

10

Trang 11

Bài 6:ĐIỀU CHẾ QPSK

Bài 6.1:

% -% BAI 6: DIEU CHE QPSK

% Bai 6.1: Bieu do chom sao cua tin hieu d/c QPSK va ma hoa theo ma Gray

% Y/c: Tao tin hieu nhi phan ngau nhien chieu dai 50000.Thuc hien dieu che

% QPSK tin hieu nay

% -len=50000;

bit=randint(1,len); %tin hieu vao

for i=1:2:len; % tao vong lap, step = 2

switch bit(i)

case 0

if bit(i+1)==0

qpsk_signal((i+1)/2)=exp(j*3*pi/4);

else

qpsk_signal((i+1)/2)=exp(j*5*pi/4);

end

case 1

if bit(i+1)==0

qpsk_signal((i+1)/2)=exp(j*pi/4);

else

qpsk_signal((i+1)/2)=exp(j*7*pi/4);

end

end

end

plot(qpsk_signal,'o');

hold on;

t=0:0.01:2*pi;

plot(exp(j*t),'r '); % Ve duong tron don vi

title('Bieu do chom sao cua tin hieu dieu che QPSK');

xlabel('I');

ylabel('Q');

hold off;

11

Trang 12

Bài 6.2:

% -% Bai 6.2: Cho t/h da dc dieu che o bai 6.1 di qua kenh nhieu trang (AWGN)

% voi ti le SNR=6dB Ve bieu do chom sao cua tin hieu thu duoc Sau do thay

% do ti le SNR giam dan (3dB, 0dB) va ve lai bieu do chom sao thu dc

% -len=50000;

bit = randint(1,len); % Tin hieu vao

for i=1:2:len; % Tao vong lap, voi step=2

switch bit(i)

case 0

if bit(i+1)==0

qpsk_signal((i+1)/2)=exp(j*3*pi/4);

else

qpsk_signal((i+1)/2)=exp(j*5*pi/4);

end

case 1

if bit(i+1)==0

qpsk_signal((i+1)/2)=exp(j*pi/4);

else

qpsk_signal((i+1)/2)=exp(j*7*pi/4);

end

end

end

plot(qpsk_signal, 'r*' );

12

Trang 13

title( 'Do thi chom sao QPSK' );

xlabel( 'I' );

ylabel( 'Q' );

hold on ;

Es=std(qpsk_signal).^2; %Tinh nang luong

% -// Ti le SNR = 6 dB

// -N0=Es/(10^(6/10)); % Cong suat tap am cua nhieu voi SNR = 6 dB

noise=sqrt(N0/2).*(randn(1,length(qpsk_signal))+1i.*randn(1,length(qpsk_signal))); qpsk=qpsk_signal + noise; % Tin hieu khi co nhieu

subplot(3,1,1); plot(qpsk, 'o' );

title( 'SNR=6dB' );

grid on ;axis auto ;

xlabel( 'I' );

ylabel( 'Q' );

% -// Ti le SNR = 3 dB

// -N1=Es/(10^(3/10)); % Cong suat tap am cua nhieu voi SNR = 3 dB

noise1=sqrt(N1/2).*(randn(1,length(qpsk_signal))+1i.*randn(1,length(qpsk_signal))); qpsk1=qpsk_signal + noise1;

subplot(3,1,2);

plot(qpsk1, 'o' );

title( 'SNR=3dB' );

grid on ;

axis auto ;

xlabel( 'I' );

ylabel( 'Q' );

% -// Ti le SNR = 0 dB

// -N2=Es/(10^(0/10)); % Cong suat tap am cua nhieu voi SNR = 0 dB

noise2=sqrt(N2/2).*(randn(1,length(qpsk_signal))+1i.*randn(1,length(qpsk_signal))); qpsk2=qpsk_signal + noise2;

subplot(3,1,3);

plot(qpsk2, 'o' );

title( 'SNR=0dB' );

grid on ;

axis auto ;

xlabel( 'I' );

ylabel( 'Q' );

13

Trang 14

14

Trang 17

Bài 7:MÔ PHỎNG ĐIỀU CHẾ QPSK QUA KÊNH NHIỄU GAUSS

% -% Bai 70: Dem so loi xuat hien suot qua trinh phat va ve do thi ti le loi

% bit (BER) voi ti le tin hieu tren nhieu SNR= 0, 2, 4, 6, 8 dB

% -len=100000;

x = randint(1,len);

M=4;

qpsk=qammod(x,M);

SNR_db=0:2:8; %Khoi tao vecto SNR_db

SNR=10.^(SNR_db/10);

N0=1./SNR; %tao vecto N0

for i=1:length(SNR_db)

noise=sqrt(N0(i)/2)*(randn(size(qpsk))+j*randn(size(qpsk))); %Tao nhieu qpskx_nhieu=qpsk+noise;

r_x=qamdemod(qpskx_nhieu,M);

n=0;

for a=1:length(x)

if x(a)~=r_x(a)

n=n+1;

end

end

BER(i)=n/len;

end

plot(SNR_db,BER,'r-');

title('Mo phong dieu che QPSK qua kenh nhieu Gauss');

xlabel('SNR_db');

ylabel('BER');

Figure:

17

Trang 18

Bài 8:XÁC SUẤT LỖI BIT TRONG ĐIỀU CHẾ QPSK

% -% BAI 8: XAC SUAT LOI BIT TRONG DIEU CHE QPSK

% Yeu cau: Tinh ti le loi bit ly thuyet pb cua he thong va ve do thi

% SNR=0,2,4,6,8 dB So sanh ket qua ly thuyet nay voi ket qua mo phong o

% bai 5

% -len=100000;

x = randint(1,len);

M=4;

qpsk=qammod(x,M);

SNR_db=0:2:8; %khoi tao vecto SNR_db 0 2 4 6 8

SNR=10.^(SNR_db/10);

N0=1./SNR; %tao vecto N0

for i=1:length(SNR_db)

BERBPSK(i)=(1./2)*erfc(sqrt(SNR(i)/2));

BERQPSK(i)=(1./2)*erfc(SNR(i)/sqrt(2));

end

plot(SNR_db,BERBPSK,'b* ',SNR_db,BERQPSK,'mo ');

title('So Sanh Ti Le Bit Loi Trong Dieu Che Tin Hieu');

xlabel('SNR_db');

ylabel('BER');

legend('Mo phong','Ly thuyet');

hold off;

Figure:

18

Ngày đăng: 28/04/2014, 20:39

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w