Você está na página 1de 12

UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

GENERACIN DE RUIDO MEDIANTE SIMULACIN NUMRICA

Prctica #2

Rony Smith Chuquin Balseca


rchuquin@est.ups.edu.ec

Nivel/Grupo: 7mo G2
RESUMEN: En el presente informe se detalla cmo se este tipo de fenmenos, se caracterizan como procesos
genera ruido con la simulacin numrica, para ello se aleatorios [1].
emplea el software Matlab. Se observa cmo afecta el
ruido gaussiano a las diferentes seales, de uso comn, 2.2 Ruido
que se pueden generar como la senoidal, cosenoidal,
cuadrada y como se produce la distorsin del mensaje al
trasmitirse ya que el ruido es inevitable. En el El ruido es un fenmeno natural, inevitable y
procedimiento se detallan los pasos seguidos, para la generalmente incontrolable. En otras palabras, el ruido
generacin de las seales en Matlab y para aadir ruido siempre estar presente en cualquier sistema de
a las mismas. El anlisis se basara en los resultados comunicaciones y contribuir, en mayor o menor medida,
obtenidos en la realizacin de la prctica. al deterioro de la seal a la salida del receptor, adems
de constituir el principal factor limitante en su deteccin.
De acuerdo con lo anterior, el ruido es efectivamente una
PALABRAS CLAVES. Escala, generacin,, grfica
Matlab, simulacin.
Seal indeseable, aunque el uso del trmino seal es
discutible, ya que el ruido no representa informacin
1. OBJETIVOS excepto en casos muy aislados. El ruido, la distorsin y la
interferencia juegan un papel muy importante en los
1.1 GENERAL sistemas de comunicacin, ya que limitan la calidad de la
seal de informacin, si bien su naturaleza es
completamente diferente. El ruido es, esencialmente
Generar distintos tipos de seales anlogas aleatorio tanto en amplitud como en fase, en tanto que la
y digitales para simular la adicin de ruido en distorsin y la interferencia siguen, por lo general,
las mismas. patrones determinados, con frecuencia difciles de
identificar. Segn su origen, el ruido puede clasificarse
1.2 ESPECFICOS como natural y artificial [2].

Usar los diferentes comandos para graficar


funciones analgicas y digitales.
Configurar distintas caractersticas
configrales y aditivas dentro de las grficas
de Matlab para poder visualizar el
comportamiento de la seal al ser aadido
ruido.
Analizar el comportamiento de la seal para
obtener conclusiones acerca de la relacin
seal ruido.

2. MARCOTERICO Figura 1.- diagrama de bloques de un sistema de comunicacin


(simplificado) [3].

2.1 Introduccin. 2.3 Ruido Blanco Aditivo


Cuando una seal se transmite a travs de un canal Un sistema de comunicaciones se ve afectado por el
de comunicaciones hay dos tipos de imperfecciones que ruido que se introduce en el canal de comunicaciones por
hacen que la seal recibida sea diferente de la seal el teorema de limite central este puede ser modelado
transmitida. como un ruido blanco gaussiano aditivo (AWGN) el mismo
que afecta a todas las componentes de frecuencia de las
Una clase de imperfecciones es de naturaleza seales que atraviesan el canal. As un sistema de
determinista, como es la distorsin. La segunda clase es comunicaciones real puede ser modelado como indica la
no determinista, como el ruido. Para hacer un estudio de figura:

1
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

2.6 Comandos usados


Rand(1, N).- Devuelve una n x n matriz de nmeros
aleatorios.
Randn(1, N).-Devuelve un escalar aleatorio extrado
de la distribucin normal estndar. Devuelve un n x n
matriz de nmeros aleatorios distribuidos normalmente.

y=wgn(m,n,p)
y=wgn(m,n,p,imp)
Figura 2.- Sistema con ruido aditivo [4]

Donde Tx representa el transmisor y Rx el receptor de y = wgn(m,n,p) genera un m- por -n matriz de ruido blanco
manera que la seal que se envi no es exactamente la Gaussiano. p especifica la potencia de y en decibelios en
que se recibe, ya que se ver afectada por el ruido y por relacin a un vatio. La impedancia de carga por defecto
varios efectos propios del canal, degradando el es 1 ohmio.
desempeo del sistema y limitando la velocidad a la que
puede ser transmitida la informacin [4]. y = wgn(m,n,p,imp) es lo mismo que la sintaxis anterior,
excepto que imp especifica la impedancia de carga en
2.4 Seales continuas analgicas. ohmios.

Una seal dependiente de valores continuos de la y = awgn(x,snr)


variable independiente t se denomina seal continua en
el tiempo. (SEAL ANALGICA).
y = awgn(x,snr) ruido blanco Gaussiano se agrega a la
seal de vector x. El escalar snr especifica la relacin de
seal a ruido por ejemplo, en dB. Si x es complejo, awgn
agrega ruido complejo. Esta sintaxis se supone que la
potencia de x es 0 dBW.

x=square(t)
x=square(t,duty)

x = square(t) genera una onda cuadrada con periodo 2


para los elementos del vector de tiempo t. square(t) es
similar al sin(t), sino que crea una onda cuadrada con
Figura 3.- Seal contina. picos de 1 en lugar de una onda senoidal.

2.5 Seales digitales x = square(t,duty) genera una onda cuadrada con ciclo de
trabajo especificado, duty, que es un nmero entre 0 y
Son variables elctricas con dos niveles bien 100. El ciclo de servicio es el porcentaje del periodo en
diferenciados que se alternan en el tiempo transmitiendo que la seal es positiva.
informacin segn un cdigo previamente acordado.
Cada nivel elctrico representa uno de dos smbolos: 0 y = pulstran(t,d,'func')
1, V o F, etc. Los niveles especficos dependen del tipo
de dispositivos utilizado. Por ejemplo si se emplean pulstran genera trenes de pulso de funciones continuas o
componentes de la familia lgica TTL (transistor- pulsos de muestreo prototipo.
transistor-logic) los niveles son 0 V y 5 V, aunque
cualquier valor por debajo de 0,8 V es correctamente
interpretado como un 0 y cualquier valor por encima de 2 y = pulstran(t,d,'func') genera un tren de pulso basado en
V es interpretado como un 1 (los niveles de salida estn muestras de una funcin continua, 'func', donde 'func' es
por debajo de 0,4 V y por encima de 2,4 V
respectivamente). 'gauspuls', para generar un pulso sinusoidal
modulada de Gauss
'rectpuls', para generar un rectngulo
muestreado aperidico
'tripuls', para generar un tringulo aperidico
muestreado

Figura 4.- Seal digital [5]

2
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

3. MATERIALES Y EQUIPO A=5;%amplitud de la onda senoidal


1. PC
2. Software T=1*10.^9;
3. MATLAB
4. Mandil
t=0:0.0001:3;%periodo de la seal
4. DESARROLLO Y PROCEDIMIENTO
x=A*cos(2*pi*t);%funcion que determina si
- Se realiza los siguientes ejercicios con la ayuda del
es cosenoidal
software de Matlab:

- Para cada ejercicio se realiza la programacin figure(1);%para indicar que se graficque


respectiva en matlab y su simulacin.
en la ventana denomindad figura 1
- Se procede a anotar los resultados obtenidos para
despus ser analizados.
subplot(2,1,1);%indica que habra dos
graficas en la ventana
4.1 Ejercicio 1.
plot(t,x,'b');%indica que funciones se
Genere una seal cosenoidal de frecuencia 1 [GHz]
donde se visualice tres periodos, aada ruido de graficaran y de que color seran
distribucin gaussiana con desviacin estndar 0.5 y
media 1. Grafique la seal generada y la seal con ruido.
grid on;%para imprimir en la grafica una
malla que permita ver mejor
4.2 Ejercicio 2.
z=x+0.5*randn(1,length(t));%funcion que
Para la seal cosenoidal anterior aada ruido blanco genera numeros randomicos
gaussiano cuya relacin seal a ruido (S/N) sea de 5 [dB],
luego aada ruido de 30[dB]. Grafique en una sola
pantalla usando subplot las tres seales: la seal sin subplot(2,1,2);%inidca el lugra en el que
ruido, la seal con ruido de 5 [dB] y la seal con ruido de se mostrara la segunda grafica
30 [dB].

plot(t,z,'r');%dibuja las funciones y


4.3 Ejercicio 3. especifica de que color seran

Genere una seal cuadrada cuya amplitud sea de -1


y 1 [V] cuya frecuencia sea de 10[MHz], visualice cuatro axis([0 3 -8 8]);%para dar una escala
periodos. Aada ruido cuya potencia sea de 2 [dBm]. adecuada para la visualizacion
Grafique la seal generada y la seal con ruido.

4.4 Ejercicio 4. grid on;%malla

Genere una seal cuadrada cuya amplitud sea de 0 y


1 [V] cuya frecuencia sea de 1 [GHz], visualic 5 periodos.
Aada ruido cuy relacin seal a ruido (S/N) sea de 2 [dB],
luego aada ruido de 17 [dB]. Grafique e una sola pantalla Figura 5.-. Cdigo del ejercicio 1.
usando subplot las tres seales: la seal sin ruido, la
seal con ruido de 2 [dB] y la seal con ruido de 17 [dB].

5. ANLISIS Y RESULTADOS
Del ejercicio 1 se obtiene el siguiente cdigo con su
simulacin:

3
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

subplot(3,1,2);%especifica que la segunda


grafica aparezca en el mismo frame

r=awgn(x,5);%vector que aade ruido blanco


de tipo gaussiano

plot(t,x,t,r,'b');%grafica el vector
tiempo+el ruido+un color dado azul

grid on;%aade una malla para mejor


visualizacion

Figura 6. Seales coseno de 1 GHz con ruido gaussiano. title('seal coseno con realcion seal
Como se observa en la figura 6 se aade un ruido de ruido 5[dB]');%titulod e la tercera
desviacin gaussiana con el comando randn ya que este grafica
comando tiene valores positivos tanto negativos y tiene
una distribucin normal. La seal coseno esta
distorsionada, se observa como hay unos picos chiquitos xlabel('eje x');%nombre de eje x
a esto se le llama ruido.

Del ejercicio 2 se obtiene el siguiente cdigo con su ylabel('eje y');%nombre de eje y


simulacin:
subplot(3,1,3);%especifica donde aparecer
t=0:0.0001:3;%vector tiempo la tercera grfica

x=A*cos(2*pi*t);%%funcion para graficar r=awgn(x,30);%vector que aadir ruido


una seal tipo coseno blanco

figure(2);%especifica que las graficas plot(t,x,t,r);%dibuja tanto el ruido como


apareceran en la ventan 2 la funcion coseno usando el mismo tiempo

subplot(3,1,1);%para graficar varias grid on;%aade malla para mejor


seales en una sola ventana visualizacin

plot(t,x,'m');%grafica el vector timepo y title('seal coseno con realcion de seal


la funcion x de color cafe ruido 30[dB]');%titulo de identificacin

grid on;%aade una malla para una xlabel('eje x');%nombre del eje x
visualizacion mejor de las seales

title('seal coseno sin ruido');%aade un ylabel('eje y');%nombre del eje y


titulo a la primera grafica Figura 7.- Cdigo del ejercicio 2.

xlabel('eje x');%da un nombre al eje x


Como se observa en la figura 6 Matlab nos
proporciona el comando awgn que es un ruido blanco
ylabel('eje y');%da nombre al eje y gaussiano aditivo esto quiere decir que es un ruido que
se encuentra en todas las frecuencias y como su nombre
lo dice es aditivo se aade a la seal y es un ruido

4
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

inevitable, este comando permite especificar la relacin


de seal ruido por muestra en [dB]. subplot(2,1,1);%especfica que habr mmas
de una grfica en el mismo frame

plot(t/pi,x,'c');%dibuja la grfica de la
seal

title('seal cuadrada de 10[MHz] sin


ruido');%%titulo de la primera grfica

xlabel('eje x');%nombre del eje x

ylabel('eje y');%nombre del eje y

axis([0 8 -2 2]);%da una escala adecuad

Figura 8. Seales coseno de 1 GHz con ruido gaussiano de subplot(2,1,2);%especifica que habr otra
5[dB] y 30[dB]. grfica

Como se observa en la figura 8 la seal con ruido de


5[dB] est ms distorsionada que la seal con ruido de r=awgn(x,-28);%identifica que el ruido
30[dB], esto quiere decir que entre ms sea la potencia
tendra una relacion de seal ruido de -28
en decibelios menor es el ruido.
que son 2DBm
5[dB] = 3.16W
30[dB]= 1000W
plot(t,x,t,r,'b');%grafica la seal y el
Del ejercicio 3 se obtiene el siguiente cdigo con su ruido las dos en base del mismo vector
simulacin: timepo

= ( )

grid on;%malla que ayuda a ver mejor la
2 = 10 ( )
1
grfica
2
= ( )
10 1
title('seal cuadrada de 10[MHz] con
2 relacion seal ruido de 2[dBm]');%titulo
10 10 = 10(1)
de la seal con ruiddo
1.58 =
1

= 1.58 xlabel('eje x');%nombre del eje x

1.58
= 10 ( ) = ylabel('eje y');%nombre del eje y
1

axis([0 25 -2 2]);%especifca una escala


t=0:0.00001:25.1;%vector tiempo
adecuada

x=square(t);%grafica de un tren de pulsos

figure(3);%especifica que la grafica Figura 9.- Cdigo del ejercicio 3.

aparecera en la ventana 3 Como se observa en la figura 8 se utiliza el comando


awgn y este comando acepta la relacin de seal ruido en
dB por esta razn se realiza una transformacin de dBm

5
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

a dB para utilizar el comando como se observa en la


Ecuacin 1. plot(x,y);%dibujo del tren de pulsos
usando x

title('seal cuadrada de 1[GHz] sin


ruido');%titulo de las primera grfica

xlabel('eje x');%nombre del eje x

ylabel('eje y');%nombre del eje y

axis([-5 60 -2 2]);%cambiamos la escala


para visualizar mejor

subplot(3,1,2);%unbicacion de la segunda
Figura10. Seales cuadrada de 10 MHz con ruido grfica
gaussiano de 2[dBm]

Como se observa en la figura 10 la seal cuadrada r=awgn(y,30);%genrecaion del ruido blanco


prcticamente no se ve el ruido es ms que la seal, se de tipo gaussiano
tiene una distorsin y perdida de datos total , el ruido dao
la seal y esto es lo que pasa en la vida diaria por esta
razn a veces se escucha radio y se pierde la seal. plot(x,y,x,r,'c');%dibujamos los pulsos +
el ruido
Del ejercicio 4 se obtiene el siguiente cdigo con su
simulacin:
grid on;%malla para ver mejor las seales

D=5; %amplituid de los pulsos title('seal cuadrada de 1[GHz] con


relacion de seal ruido de

T=10;%timpo de pulsos 2[dB]');%titulod de la segunda grfica

n=5; %numero de pulsos xlabel('eje x');%nombre del eje x

x=linspace(0,T*n,1000000);%vector funcion ylabel('eje y');%nombre del eje y

que creara los pulsos


axis([-5 60 -2 2]);%escala del eje y

d=[0:T:T*n];%vector tiempo para los pulsos


subplot(3,1,3);%especificamos la

y=pulstran(x,d,'rectpuls',D);%funcion que unbicacion y la existencia de la tercera

creara los pulsos grfica

figure(4);%ventan donde se mostraran las r=awgn(y,17);%ruido blanco de 17 DB

graficas
plot(x,y,x,r,'r');%adimos las grficas

subplot(3,1,1);%indica eu habr mas de una del tren de pulsos + ruido

grfica
grid on;%malla para visuaizar mejor

6
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

aumente este valor, el valor del ruido aumenta


title('seal cuadrada de 1[GHz] con como se observa en la figura 12 y 10.
relacion de seal nruido de
Al momento de aadir ruido blanco gaussiano a
17[dB]');%titulo de la tercera grafica
las seales en dB o dBm en funcin de Watts
mientras ms disminuye este valor, el valor del
xlabel('eje x');%nombre del eje y ruido aumenta como se observa en la figura 11.

7. REFERENCIAS
ylabel('eje y');%nombre del eje y

[1] TSC, [En lnea]. Available: http://www.tsc.uc3m.es.


[ltimo acceso: 11 Noviembre 2016].
axis([-5 60 -2 2]);%escala adecuada para ver [2] perezvr, Unican, [En lnea]. Available:
http://personales.unican.es. [ltimo acceso: 11 Noviembre
mejor 2016].
Figura 11. Cdigo del ejercicio 4.
[3] R. Digital, efdeportes, Abril 2013. [En lnea]. Available:
http://www.efdeportes.com. [ltimo acceso: 04 Noviembre
2016].
[4] B. Arguero, Generacin de ruido mediante simulacin
numrica, Quito, 2016.
[5] K. N. P. C. T. Antony Garca Gonzlez, Panama Hitek,
PanamaHitek Creative Team, 2013. [En lnea]. Available:
http://panamahitek.com. [ltimo acceso: 11 Noviembre
2016].

Figura 12. Tren de pulsos cuadrados de 1 GHz con ruido


gaussiano de 2[dB] y [17dB]

Como se observa en la figura 12 se tiene un ruido de


2[dB] donde prcticamente la seal no hay fue
distorsionada por el ruido y se perdi totalmente los datos.
El ruido con 17[dB] tiene distorsin pero no tanto como lo
tiene con ruido de 2[dB] esto quiere decir que entre menos
decibelios se tenga en el ruido se pierde totalmente la
informacin.

6. CONCLUSIONES

El ruido blanco gaussiano es inevitable se


encuentra en todas as frecuencia y afecta en la
trasmisin de datos por ejemplo se tiene en
amplitud una seal cuadrada de 2 voltios que
sale de la fuente pero al transmitir por el canal
se aade el ruido de 5 dBm la amplitud baja a
1.0987 V como se puede observar afecto a la
seal ya no es la misma y se pierde datos,
llegando al receptor datos distintos a los que se
trasmiti en un principio.

Al momento de aadir ruido blanco gaussiano a


las seales en voltios o dBmV mientras ms

7
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

8. ANEXOS

1. Realice un script en Matlab que genere 100 bits aleatorios cuyo tiempo de bit sea de 1[ms]. Grafique los bits generados
mediante una seal cuya amplitud sea de 0 y 1 [V]. Esta parte del script representa el transmisor (TX).

2. Aada a esta seal ruido gaussiano aditivo cuya SNR sea de 5, 15, 20 y 30 dB. Para cada relacin SNR grafique la
seal transmitida y la recibida en el receptor (RX).

Fs = 3*1e6;%frecuencia de muestreo

t = 0:1/Fs:(10*8e-3);%vector tiempo basado en el tiempo de muestreo

pulsewidth = 1e-3;%ancho de los pulsos generados

pulseperiods = [0:10]*2e-3;%duracion de cada periodo

x = pulstran(t,pulseperiods,'rectpuls',pulsewidth);

figure(1);

title('seal transmitida (sin ruido)');

xlabel('tiempo(ms)');

ylabel('amplitud(v)');

plot(t,x)

axis([0 8e-3 -0.5 1.5])

grid on;

figure(2);

r=awgn(x,5);%ruido blanco de 5 DB

plot(t,x,t,r,'r');

8
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

title('seal recibida con una relacion de seal ruido de 5DB');

xlabel('tiempo(ms)');

ylabel('amplitud(v)');

axis([0 8e-3 -10 10])

grid on;%malla para visuaizar mejor

figure(3);

r=awgn(x,15);%ruido blanco de 15 DB

plot(t,x,t,r,'b');

title('seal recibida con una relacion de seal ruido de 15DB');

xlabel('tiempo(ms)');

ylabel('amplitud(v)');

axis([0 8e-3 -0.5 1.5])

grid on;%malla para visuaizar mejor

figure(4);

r=awgn(x,20);%ruido blanco de 25 DB

plot(t,x,t,r,'m');

title('seal recibida con una relacion de seal ruido de 20DB');

xlabel('tiempo(ms)');

ylabel('amplitud(v)');

axis([0 8e-3 -0.5 1.5])

9
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

grid on;%malla para visuaizar mejor

figure(5);

r=awgn(x,30);%ruido blanco de 30 DB

plot(t,x,t,r,'c');

title('seal recibida con una relacion de seal ruido de 30DB');

xlabel('tiempo(ms)');

ylabel('amplitud(v)');

axis([0 8e-3 -0.5 1.5])

grid on;%malla para visuaizar mejor

Figura 13. Cdigo de Matlab correspondiente al trabajo para el informe

Figura 14. Tren de pulsos cuadrados de 1 ms sin ruido gaussiano (seal transmitida)

10
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

Figura 15. Tren de pulsos cuadrados de 1 ms con ruido gaussiano de 5 DB (seal recibida)

Figura 16. Tren de pulsos cuadrados de 1 ms con ruido gaussiano de 15 DB (seal recibida)

11
UNIVERSIDAD POLITCNICA SALESIANA LABORATORIO DE COMUNICACIONES DIGITALES 1

Fecha: 04/11/2016

Figura 17. Tren de pulsos cuadrados de 1 ms con ruido gaussiano de 20 DB (seal recibida)

Figura 18. Tren de pulsos cuadrados de 1 ms con ruido gaussiano de 30 DB (seal recibida)

12

Você também pode gostar