Bài tập lớn môn mô phỏng hệ thống truyền thông

11 766 2
Bài tập lớn môn mô phỏng hệ thống truyền thông

Đ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

Nhiệm vụ: hệ thống truyền dẫn số tốc độ liệu Cơ sở lý thuyết 1.1.Sơ đồ khối hệ thống tham số hệ thống r1(t) s1(t) ak Khối điều chế QPSK ak_r Khối giải điều chế QPSK n(t) AWGN So sánh Đếm lỗi 1.2.Lý thuyết a Tín hiệu hình tương đương băng gốc:  Các tham số hệ thống:  Rbit = / – Tốc độ liệu  Nbit = 1000 – Số lượng bit thực  Coi =  Fsam =  Fc = - Tần số lấy mẫu - Tần số sóng mang  Thực theo chuẩn Es=1 b QPSK - Tín hiệu truyền qua kênh AWGN () ( )= ( )+ ( ) - n(t) nhiễu Gauss trắng cộng giá trị phức gồm hai thành phần tạp âm vng góc nI(t) nQ(t) - Trong chu kỳ ký hiệu Ts lấy mẫu tín hiệu sn(t) xác định pha tính lấy mẫu dnk = dk + xk , k= 1, 2, 3, …, N; N số chu kỳ ký hiệu Ts thành phần nhận từ tín hiệu phát - d= - xk biến ngẫu nhiên gây tạp âm Ta có vector khơng gian tín hiệu QPSK: Cặp bit vào Pha tín hiệu QPSK 00 π/4 01 3π / 10 5π / 11 7π / Từ khảo sát ta thấy tín hiệu QPSK đặc trưng trùm tín hiệu hai chiều (N=2) bốn điểm tin (M=4), cặp bit 00, 01,11,10 biễu diễn thơng qua tham số Sau dịch góc = /4 pha tín hiệu phát: Cặp bit vào dk 00 01 J 11 -1 10 -j st Dạng tín hiệu phổ tín hiệu 2.1.Code %%Ngơ Minh Đức- L12VT2- B12LDVT067 d=randint (1,1000);%chuoi nhi phan dau vao L=length(d); SNR=15; %y so tin hieu tren tap am y=1; N=5*10^6;%toc du lieu Fc=10^7;%tan so song mang T=1/N;%thoi gian truyen bit t=0:T*L/(30*L-1):T*L; %tao chuoi dk gom 1,-1,j va -j for x=1:2:L if d(x)==0 && d(x+1)==0 dk((y-1)*60+1:y*60)=1; y=y+1; elseif d(x)==0 && d(x+1)==1 dk((y-1)*60+1:y*60)=j; y=y+1; elseif d(x)==1 && d(x+1)==1 dk((y-1)*60+1:y*60)=-1; y=y+1; elseif d(x)==1 &&d(x+1)==0 dk((y-1)*60+1:y*60)=-j; y=y+1; end end end end end %tao tin hieu phat st voi pha cua tin hieu phat la pi/4 st=dk*exp(j*pi/4); st_awgn=awgn(st,SNR,'measured');%tin hieu qua kenh AWGN % Ve dang tin hieu ban dau subplot(3,1,1) stairs(d) axis([0 100 -1.5 1.5]) title( 'Chuoi ban dau' ) subplot(3,1,2) stairs(b) axis([0 100 -0.5 1.5]) title( 'Chuoi phat' ) subplot(3,1,3) plot(t,a) title( 'Chuoi QPSK phat di' ) %Giai dieu che ban tin QPSK %tim pha cua tin hieu tai phia thu for x=1:60*L/2 if angle(st_awgn(x))0 phi(x)=pi/4; elseif angle(st_awgn(x))pi/2 phi(x)=3*pi/4; elseif angle(st_awgn(x))-pi/2 phi(x)= 7*pi/4; elseif angle(st_awgn(x))-pi phi(x)=5*pi/4; end end end end end %tim lai vecto phat z=1; for x=30:60:60*L/2 if phi(x)==pi/4 r((z-1)*30+1:z*30)=0; r(z*30+1:z*30+30)=0; z=z+2; elseif phi(x)==3*pi/4 r((z-1)*30+1:z*30)=0; r(z*30+1:z*30+30)=1; z=z+2; elseif phi(x)==5*pi/4 r((z-1)*30+1:z*30)=1; r(z*30+1:z*30+30)=1; z=z+2; elseif phi(x)==7*pi/4 r((z-1)*30+1:z*30)=1; r(z*30+1:z*30+30)=0; z=z+2; end end end end end %ve bieu chom QPSK h=scatterplot(st_awgn,1,0,'xb'); hold on scatterplot(st,1,0,'or',h) title('bieu chom tin hieu QPSK') %ve dang song tin hieu for x=1:30*L sdc(x)=cos(2*pi*Fc*t(x)+ angle(st(x))); sdc_awgn(x)=cos(2*pi*Fc*t(x)+angle(st_awgn(x))); end figure(2) plot(t,sdc) title('dang song tin hieu tai dau bo dieu che') figure(3) plot(t,sdc_awgn); title('dang song tin hieu qua kenh awgn') figure(4) plot(t,r) title('dang song tin hieu sau duoc khoi phuc') %ve mat(chua lam duoc) %% Mau mat cua tin hieu tai cac diem tren he thong %ve cua tin hieu %pho tin hieu dieu che f=(-30*L/2:30*L/2-1)/(30*L*(t(2)-t(1))); pho_dc=fft(sdc,30*L); pho_dc=fftshift(pho_dc); figure(5) plot(f,abs(pho_dc).^2/(30*L)) title('pho tin hieu sau dieu che') %pho tin hieu qua kenh awgn pho_awgn=fft(sdc_awgn,30*L); pho_awgn=fftshift(pho_awgn); figure(6) plot(f,abs(pho_awgn).^2/(30*L)) title('pho tin hieu qua kenh awgn') %pho tin hieu khoi phuc tai phia thu pho_r=fft(r,30*L); pho_r=fftshift(pho_r); figure(7) plot(f,abs(pho_r).^2/(30*L)) title('pho tin hieu duoc khoi phuc') %ve duong cong xac xuat loi %tao chuoi bit ngau nhien QPSK Dk=randint(1,5*10^5,[0 3]); Phi=2*pi*Dk/4 + pi/4; sk=exp(j*Phi); SNRdB=0:15;%dB for k=1:length(SNRdB) st=awgn(sk,SNRdB(k),'measured'); for c=1:length(Dk) if angle(st(c))0 phi(c)=pi/4; elseif angle(st(c))pi/2 phi(c)=3*pi/4; elseif angle(st(c))pi phi(c)= 5*pi/4; elseif angle(st(c))3*pi/2 phi(c)=7*pi/4; end end end end end error=phi-phi; %tim so symbol sai so_loi=length(find(error~=0)); BER(k)=so_loi/(5*10^5); end % BER theo ly thuyet truyen dan QPSK la: BER_lt=erfc(sqrt(10.^(SNRdB./10))); %ve thi figure(8) semilogy(SNRdB,BER,'*',SNRdB,BER_lt); xlabel('SNR') ylabel('BER') legend('theo mo phong','theo ly thuyet') title('duong cong bit loi QPSK') grid 2.2 Kết a) Dạng sóng tín hiệu đầu điều chế b) Dạng sóng tín hiệu qua kênh AWGN c) Dạng sóng tín hiệu sau khơi phục d) Biểu đồ chòm tín hiệu QPSK 10 e) Phổ tín hiệu sau điều chế f) Phổ tín hiệu qua kênh AWGN 11 g) Phổ tín hiệu sau khôi phục h) Đường cong bit lỗi QPSK 12 2.3.Mô Monte-Carlo clear N = 5*10^7; % number of symbols Es_N0_dB = [ -3:14]; % multiple Eb/N0 values ipHat = zeros(1,N); for ii = 1:length(Es_N0_dB) ip = (2*(randi(1,N)>0.5) -1) + j*(2*(rand(1,N)>0.5) -1); % s = (1/sqrt(2))*ip; % normalization of energy to n = 1/sqrt(2)*[randi(1,N) + j*N)]; % white guassian noise, 0dB variance y = s + 10^( -Es_N0_dB(ii)/20)*n; % additive white gaussian noise % demodulation y_re = real(y); % real y_im = imag(y); % imaginary ipHat(find(y_re < & im 0)) = -1 + -1*j; ipHat(find(y_re >= & im > 0)) = + 1*j; ipHat(find(y_re < & im >= 0)) = -1 + 1*j; ipHat(find(y_re >= & im < 0)) = - 1*j; nErr(ii) = size(find([ip - ipHat]),2); % couting the number of errors end simSer_QPSK = nErr/N; theorySer_QPSK = erfc(sqrt(0.5*(10.^(Es_N0_dB/10)))) (1/4)*(erfc(sqrt(0.5*(10.^(Es_N0_dB/10)) ))).^2; close all figure semilogy(Es_N0_dB,theorySer_QPSK, 'b -'); hold on semilogy(Es_N0_dB,simSer_QPSK, 'mx -'); axis([ -3 15 10^ -5 1]) grid on legend( 'theory -QPSK' , 'simulation -QPSK' ); 13 ... cặp bit 00, 01,11,10 biễu diễn thông qua tham số Sau dịch góc = /4 pha tín hiệu phát: Cặp bit vào dk 00 01 J 11 -1 10 -j st Dạng tín hiệu phổ tín hiệu 2.1.Code mô %%Ngô Minh Đức- L12VT2- B12LDVT067...b QPSK - Tín hiệu truyền qua kênh AWGN () ( )= ( )+ ( ) - n(t) nhiễu Gauss trắng cộng giá trị phức gồm hai thành phần... f) Phổ tín hiệu qua kênh AWGN 11 g) Phổ tín hiệu sau khơi phục h) Đường cong bit lỗi QPSK 12 2.3 .Mô Monte-Carlo clear N = 5*10^7; % number of symbols Es_N0_dB = [ -3:14]; % multiple Eb/N0 values

Ngày đăng: 25/02/2019, 14:19

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan