Sei sulla pagina 1di 5

% ************************* PRE LABORATORIO 04**************************

clc; clear all; close all;

% Transmision Digital
% BPSK
%
clear
Nf=10;
Na=1000;
T=0.01;
n=64; %Eta
Ts=T/n; %periodo de muestreo
Eb=1; %energia del bit =1

for SNR=0:1:1

for i=1:1:Nf

%PSD del ruido


N0=Eb*10^(-SNR/10);

%DATA SOURCE
a = randi([0 1],1,Na);

%MAPEADOR DE SIMBOLOS
SM=[+1 -1];
Vn=SM(a+1);

%FILTRO DE TRANSMISION
Ti=upsample(Vn,n);% Divisiones de rangos en vn y eta -generacion de tren
de impulsos
ht=(1/sqrt(T)).*ones(1,n);% forma pulso rectangular
hR = fliplr(ht);
V=conv(Ti,ht);%

for k=64001:1:64063
V(64001)=[]; %valores truncados
end

t=0:T/64:T*Na;%tiempo
t(64001)=[];

%Modulador
fc=400;
vct=sqrt(2)*V.*cos(2*pi*fc*t);

%canal transmicion AWGN


ru = sqrt(1/Ts*N0/2)*randn(1,length(vct));
%rc = vct + sqrt(1/Ts*N0/2)*randn(1,length(vct));

SNR = 20;
rc = awgn(complex(Vn),SNR); % Add whiteGaussian noise to a signal
scatterplot(rc)%diagrama de constelacion
title('ScatterPlot : Constelación BPSK');

(a): Diagrama de espacio de señal


(Fuente: archivo )
(b): Energia transmitida promedio Eb.
(FUENTE:http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.415.4700&rep=rep1&type=pdf)

La energía por bit es la energía total de la señal, dividida por el número de bits contenidos
en la señal. También podemos expresar energía por bit como la potencia de señal
promedio multiplicada por la duración de un bit. De cualquier manera, la expresión para
Eb es:

Donde N es el número total de muestras en la señal y fbit es la velocidad de bits en bits


por segundo.

Usando Matlab, encontramos la energía por bit, 'eb', de nuestra señal transmitida, 'x', que
tiene una tasa de bits 'fb', como:

eb = sum(x. ^ 2)/(length (x)* fb).

Como nuestra señal, x (n), está en unidades de voltios, las unidades de Eb son julios.

%PRELAB - PARTE (b)


fb=100; % bit rate (Taza de bit)
Eb = sum(V.^ 2)/(length (V)* (fb));
disp(sprintf('Energia transmitida por bit Eb : %d', Eb'));

(c): Energia transmitida promedio Eb.

FUENTE: http://www.dsplog.com/2007/08/05/bit-error-probability-for-bpsk-modulation/
(d): Probabilidad de error con SNR = 5dB.
%PRELAB - Parte d
Probab_error =(1/2)*erfc(sqrt(5)); %pe using theoretical formula
disp(sprintf('Probabilidad de error usando la Formula Teorica :
%d', Eb'));

(e): Repetir para 2-PAM


REFERENCIAS:
http://mat.hjg.com.ar/tic/img/bit-error-rate_simulation_using_matlab.pdf

https://la.mathworks.com/help/comm/ug/bit-error-rate-ber.html

https://la.mathworks.com/help/comm/ug/plot-signal-constellation.html

https://la.mathworks.com/help/comm/ug/scatter-plots.html
http://ecelabs.njit.edu/ece489v2/lab3_theory.php
http://www.sce.carleton.ca/courses/sysc-4600/f16/Labs-F16/SYSC4600-Fall2016-Lab4.pdf

Potrebbero piacerti anche