Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Informe Final 1

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 15

UNIVERSIDAD CATÓLICA DE SANTA MARÍA

FACULTAD DE CIENCIAS E INGENIERÍAS FÍSICAS Y FORMALES


PROGRAMA PROFESIONAL DE INGENIERÍA ELECTRÓNICA

TEMA: Practica N°2

CURSO: Procesamiento Digital de Señales

INTEGRANTE:

Colcas Dueñas Jean Carlos

Grupo: lunes 9:00-11:00 am

AREQUIPA – 2015
UCSM-FCIFF-PPIE
PROCESAMIENTO DIGITAL DE SEÑALES
PRIMERA PRÁCTICA
SEÑALES Y SISTEMAS EN MATLAB

1. OBJETIVOS
 Conocer la forma de representación de las señales discretas
 Conocer las funciones implementadas sobre señales discretas
 Implementar operaciones con señales discretas

2. MARCO TEÓRICO

2.1 Señal

Una señal es una portadora física de información (adquirida por algún sistema de medición
o sensado), que dependen de la naturaleza de la información (mientras una señal de audio
es presión de aire, una imagen es una onda de luz). Pueden ser representadas
matemáticamente como una función de una o más variables, que suelen depender del
tiempo.

2.2 Señales discretas

Una señal x[n] en tiempo discreto, es una función de una variable independiente entera
(número de muestra), es decir está definida solo para valores enteros del argumento

Señal discreta
Las señales discretas más usadas son:
2.3 Operaciones sobre señales discretas

2.3.1 Desplazamiento

Una señal x(n) puede ser desplazada en el tiempo remplazando la variable independiente n
por n– k, donde k es un entero. Si k es un entero positivo, el desplazamiento temporal
resulta en un retrazo del origen (flecha) de la señal en k unidades de tiempo. Por el
contrario si k es negativo, el desplazamiento temporal resulta en un adelanto del origen
(flecha) de la señal en |k| unidades de tiempo.

y ( n )=x ( n−k ) −∞ <n< ∞ ,k > 0

2.3.2 Inversión temporal

Esta operación es de gran utilidad en el tratamiento de señales discretas en donde son hay
que remplazar a la variable independiente n por – n. El resultado de esta operación es un
pliegue o una reflexión de la señal con respecto al origen de tiempo n = 0, es decir,

y(n) = x(− n)
2.3.3 Escalado

Una tercera modificación de la variable independiente implica remplazar a n por μn, siendo
μ un entero. Se conoce a esta modificación de la base como escalado temporal o
submuestreo
y(n) = x(µn) –∞<n<∞

2.3.4 Escalado de Amplitud.

El escalado de amplitud de una señal por una constante A se obtiene multiplicando el valor
de cada muestra de la señal por la constante. Así, obtenemos

y(n) = Ax(n) –∞<n<∞

2.3.5 Suma

La suma de dos señales x1(n) y x2(n) es una señal y(n) cuyo valor en cualquier instante es
igual a la suma de los dos valores en ese instante de las dos señales de partida, es decir

y(n) =x1(n)+ x2(n) –∞<n<∞


2.3.6 Multiplicación.

El producto de dos señales x1(n) y x2(n) es una señal y(n) cuyo valor se define
análogamente en cada instante de tiempo como

y(n) =x1(n) x2(n) –∞<n<∞

2.3.7 Convolución

En un sistema LTI, en el que conocemos su respuesta al impulso, podemos calcular la


salida ante cualquier entrada mediante:
La expresión anterior se denomina suma de convolución y se expresa como:

y[n] = x[n] ∗ h[n]

cumple las siguientes propiedades:

a) Conmutativas

b) Asociativa

c) Distributiva

III. ACTIVIDADES

Para los ejercicios siguientes:


 Indicar los comandos de MatLab a utilizar
 Consignar las tabulaciones y las gráficas obtenidas para las funciones construidas.
Etiquetar apropiadamente los ejes y gráficas

Gráficos Básicos 2D

1. Construir la gráfica siguiente


2. Cambiar el comando plot por el comando stem, que sucedió con la gráfica?
La grafica cambio ya que el comando plot une los puntos muestriados mientras q el
comando stem da únicamente las muestras requeridas

3. Colóquele título y nombre a los ejes de la gráfica, usando title, ylabel, xlabel

y = [0 1 2 3 4];
x = [1 3 -1 2.5 2];
subplot(2,1,1),plot(y,x),
title('grafica analogicas'),
ylabel('amplitud'),
xlabel('tiempo')
subplot(2,1,2),stem(y,x),
title('graficas discretas'),
ylabel('amplitud'),
xlabel('tiempo')

grafica analogicas
3

2
amplitud

-1
0 0.5 1 1.5 2 2.5 3 3.5 4
tiempo
graficas discretas
3

2
amplitud

-1
0 0.5 1 1.5 2 2.5 3 3.5 4
tiempo

Impulso unitario
4. Usando el editor de MatLab crear la función, comente cada línea

function[x,n]=impseq(n0,n1,n2)
%Generacion x(n) = delta(n-n0); n1<=n<=n2
%[x,n]=impseq(n0,n1,n2)
n=[n1:n2];
x=[(n-n0)==0];
stem(n,x);

function[x,n]=impseq(n0,n1,n2)
n=[n1:n2];% esta linea da un parametro de tiempo para poder visualizar la muestra
x=[zeros(size(n))];x(n0-n1+1)=1%en esta linea hace que pongamos cero y uno segun requiera
stem(n,x);% no da la grafica en muestras

5. Utiliza la función para genera un impulso en n=5 visualizando entre 0 y 10 el número


de muestras
6. Agregar el comando grid on.

function[x,n]=impseq(n0,n1,n2)%n=5,n1=0,n2=10
n=[n1:n2];
x=[zeros(size(n))];x(n0-n1+1)=1
stem(n,x),grid on;
>> impseq(5,0,10)
x=
0 0 0 0 0 1 0 0 0 0 0
ans =
0 0 0 0 0 1 0 0 0 0 0
>>
1

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
0 1 2 3 4 5 6 7 8 9 10

7. Modifique la función para darle al pulso una amplitud A, donde A sería el cuarto
parámetro de entrada

function[x,n]=impseq(n0,n1,n2,A)%n=5,n1=0,n2=10,A
n=[n1:n2];
x=[zeros(size(n))];x*A(n0-n1+1)=1
stem(n,x),grid on;

8. Repita 5 considerando un pulso de amplitud -5 en n=6 visto de -5 a 12


function[x,n]=impseq(n0,n1,n2,A)%n=6,n1=-5,n2=12,A=-5
n=[n1:n2];
x=[zeros(size(n))];x(n0-n1+1)=1
stem(n,(x*A)),grid on;

-0.5

-1

-1.5

-2

-2.5

-3

-3.5

-4

-4.5

-5
-6 -4 -2 0 2 4 6 8 10 12

9. Modifique las propiedades del gráfico en términos de colores y símbolo (genere al


menos tres variantes.

10. Agregar leyenda al gráfico usando el comnado legend

Escalón unitario
11. Usando el editor de MatLab crear la función, comente cada línea

function[x,n]=stepseq(n0,n1,n2)
%Generacion x(n) = u(n-n0); n1<=n<=n2
%[x,n]=stepseq(n0,n1,n2)
n=[n1:n2];
x=[(n-n0)>=0];
stem(n,x);
function[x,n]=stepseq(n0,n1,n2)
%Generacion x(n) = u(n-n0); n1<=n<=n2
%[x,n]=stepseq(n0,n1,n2)
n=[n1:n2];
x=[zeros(1,n0-n1),ones(1,n2-n0+1)];
stem(n,x);

12. Utilice la función para genera un escalón a partir de n=4 visualizando entre -5 y 10 el
número de muestras, colocar los nombres y leyendas respectivas

function[x,n]=stepseq(n0,n1,n2) %n0=4,n1=-5,n2=10
%Generacion x(n) = u(n-n0); n1<=n<=n2
%[x,n]=stepseq(n0,n1,n2)
n=[n1:n2];
x=[zeros(1,n0-n1),ones(1,n2-n0+1)];
stem(n,x);

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
-5 0 5 10

Exponencial
Una secuencia exponencial responde a la expresión:

x[n] = C z^n Donde C y z son, en general, números complejos.

13. Construya las siguientes exponenciales

% Exponencial
n1=0;n2=15;
n=[n1:n2];
x=0.25.^n;
stem(n,x);

% Exponencial
n = 0:0.1:10;
x=0.25.^n;
stem(n,x);
El comando n = 0:0.1:10; define el vector con componentes de rango de 0 a 10 en pasos de 0.1; La
función x = 0.25^n; define un vector con componentes 0.25.^(0.1), 0.25.^(0.2), 0.25.^(0.3), etc.

% Exponencial
n = 0:15;
x=5.^n;
stem(n,x);

%Exponencial Compleja
n1=0;n2=10;
n=[n1:n2];
x=exp((1+2j)*n);
stem(n,x);

Uso del comando subplot


El comando subplot nos permite desplegar en pantalla varias gráficas. subplot(m,n,a) 'm' y 'n' son
una matriz que representa las cantidades de gráficas que se van desplegar; 'a' indicaría el lugar que
ocuparía la gráfica en el subplot.

Señal senoidal
14. Graficar la siguiente señal senoidal

%Señal Senoidal
n1=0;n2=50;
n=[n1:n2];
x=2*sin(0.2*pi*n+pi/4);
stem(n,x);

15. Graficar la siguiente señal senoidal, observe que la suma también es periódica

%Señal Senoidal
n1=0;n2=120;
n=[n1:n2];
x=2*cos(0.25*pi*n+pi/5)+sin(0.5*pi*n);
stem(n,x);

Suma de señales

16. Calcular la suma y producto de x1[n] y x2[n]

a) x1[n]=sen(2πn/5), x2[n]=2(0.2)n -20≤n≤20

se define primero para poder reconocer x1 y x2

x1=sin((2*pi.*nx1)/5);n1=-20;n2=20;nx1=n1:n2;
x2=2*(0.2.^nx2);n3=-10;n4=30;nx2=n3:n4;
function[x,n]=suma(x1,n1,n2,x2,n3,n4);
%x1=sin((2*pi.*nx1)/5);n1=-20;n2=20;nx1=n1:n2;
%x2=2*(0.2.^nx2);n3=-10;n4=30;nx2=n3:n4;
n0=min(n1,n3);
n5=max(n2,n4);
n=n0:n5;
x1=[zeros(1,n1-n0) x1 zeros(1,n5-n2)];
x2=[zeros(1,n3-n0) x2 zeros(1,n5-n4)];
x=x1+x2;
stem(x,n);

30

25

20

15

10

-5

-10

-15

-20
-5 0 5 10 15 20
6
x 10

b) x1[n]=2 δ ( n+3 ), x2[n]=3u[n-2] -10≤n≤30

n1=-10;n2=30;
n=[n1:n2];
n0=1%asumimos n0;
x1=2*zeros(size(n+3));
x1(n0-n1+1)=1;
x2=[zeros(1,n0-n1) ones(1,n2-n0+1)];
sum=x1+x2;
mul=conv(x1,x2);
stem(n,sum)
2

1.8

1.6

1.4

1.2

0.8

0.6

0.4

0.2

0
-10 -5 0 5 10 15 20 25 30

Convolución

21. Hallar gráficamente la convolución de x1[n] y x2[n] consideradas en el punto 19a


22. Hallar gráficamente la respuesta al impulso de

definidas para -15<n<15


h1[n]=sen(2πn/5){u(n)-u(n-5)},
h2[n]=2(0.25)n
n1=-20;n2=20;
n=[n1:n2];
x1=sin(2*pi*n/5)
x2=2*0.2.^n
mul=conv(x1,x2)
stem(mul)
14
x 10
2

1.5

0.5

-0.5

-1

-1.5

-2
0 10 20 30 40 50 60 70 80 90

CUESTIONARIO FINAL

1. Crear un programa en matlab donde se grafiquen las siguientes ondas: (use subplot)
cos(2πn/16)
cos(2πn2/16)
cos(2πn4/16)
cos(2πn8/16)
cos(2πn12/16)

n=0:1:45;
y1=cos(2*pi*n/16);
y2=cos(2*pi*n*2/16);
y3=cos(2*pi*n*4/16);
y4=cos(2*pi*n*8/16);
y5=cos(2*pi*n*12/16);
subplot(5,1,1),plot(n,y1)
subplot(5,1,2),plot(n,y2)
subplot(5,1,3),plot(n,y3)
subplot(5,1,4),plot(n,y4)
subplot(5,1,5),plot(n,y5)
1
0
-1
0 5 10 15 20 25 30 35 40 45
1
0
-1
0 5 10 15 20 25 30 35 40 45
1
0
-1
0 5 10 15 20 25 30 35 40 45
1
0
-1
0 5 10 15 20 25 30 35 40 45
1
0
-1
0 5 10 15 20 25 30 35 40 45

CONCLUSIONES

Emita al menos ocho conclusiones en torno al manejo de señales en MatLab y las


operaciones que se pueden implementar.

 En la práctica pudimos muestrear una señal de impulso pero antes tendríamos q


llenar de zeros para que matlab pueda reconocer la señal como un vector y pueda
muestrearla

 Al muestrear las señales podemos darles los diferentes puntos y ver por donde pasan
exactamente gracias a que estos se muestran como puntos en las gráficas y ver todo
lo que les pasa y tratarlas.

 En la práctica recordamos algunas cosas que ya se habían aprendido, en cómo crear


funciones, tratar con señales mirar su comportamiento en el tiempo, aprender a
utilizar las herramientas cada vez más, para desarrollar un mejor trabajo.

 La práctica nos ayudo mucho a ver como muestrear las señales poder darles unos
intervalos y trabajar sobre ellos, es así que podemos desarrollar mas cosas gracias a
la herramienta que nos ofrece matlab.
 A las señales que les hicimos los análisis , pudimos sacar las grafica de cada una de
ellas para que después podamos muestrearlas, podemos muestrearlas con varios
valores pero podemos tener un cierto error.

 Con las señales muestreadas, podemos ver si tiene alguna interrupción en su forma,
y así poder filtrarla como los ecos de una radio podemos tomar un eco y aplicarle un
pasa banda y eliminar lo demás que no nos sirve.

 La práctica nos ayudo mucho a ver como muestrear las señales poder darles unos
intervalos y trabajar sobre ellos, es así que podemos desarrollar mas cosas gracias a
la herramienta que nos ofrece matlab.

También podría gustarte