s&s_lab8_parte2_2013-1
DESCRIPTION
laboratorio 8 - señales y sistemasTRANSCRIPT
-
Ing. Armando Alberto Cajahuaringa Camaco Pgina 1
FIEE UNI ANALISIS DE SEALES Y SISTEMAS
LABORATORIO N
Generacin de seales muestreadas
P1) a) Generar una seal muestrada a partir de una seal rectangular de frecuencia 250 Hz,
amplitud 2 y ciclo de trabajo de 50%; muestreada a la frecuencia de 8000Hz.
b) repita lo anterior para frecuencia de muestreo de 1000 Hz. Comente sus resultados.
P2) a) Generar unes seal escaln unitario discreto desde -2 hasta 10, que empiece en n=1
b) Genere una seal impulso unitario desde -2 hasta 10, que empiece en n=3.
P3) Muestre la grafica de las siguientes seales, todas juntas, para n variando entre -6 a 6.
a) y1[n]= cos((2pi/3)n) b) y2[n]= cos((8pi/3)n) c) y3[n]= cos((4pi/3)n)
Comente sus resultados
Mtodos de anlisis de sistemas discretos
1 METODO RECURSIVO
1.1 Manual o analtico
P1) Para la siguiente ecuacin en diferencias, 0.8[ 1] + [] = [], [] = 0.5[] y
[0] = 1, determinar la solucin en forma recursiva: a) la salida [] b) Salida para entrada
cero, [] c) salidas para estado cero, [].
Solucin
a) Para resolver recursivamente y de forma manual, despejamos y[n] de la ecuacin en
diferencias
[] = [] 0.8[ 1] = 0.5[] 0.8 [ 1]
Empezamos con el valor de la condicin inicial para la salida:
[0] = 1
[1] = 0.5[1] 0.8 [0] = 0.5 0.8 (1)= 1.3
[2] = 0.5[2] 0.8 [1] = 0.25 0.8 (1.3)= 0.7900
[3] = 0.5[3] 0.8 [2] = 0.125 0.8 (0.79)= 0.7570
[4] = 0.5[4] 0.8 [3] = 0.0625 0.8 (0.7570) = 0.5431
Graficamos en Matlab la secuencia
obtenida, para n entre 0 y 4:
n=0:4;
y=[-1 1.3 -0.7900 0.7570 -0.5431];
stem(n,y,'fill')
b) Para la salida de entrada cero,
[] = 0.
[0] = 1
[1] = 0.8 [0] = 0.8 (1)= 0.8
[2] = 0.8 [1] = 0.8 (0.8)= 0.8
7
-
Ing. Armando Alberto Cajahuaringa Camaco Pgina 2
[3] = 0.8 [2] = 0.8 (0.8) = 0.8
[4] = 0.8 [3] = 0.8 (0.8)= 0.8
c) Para la salida de estado cero, [0] = 0.
[0] = 0
[1] = 0.5[1] 0.8 [0] = 0.5 0.8 (0)= 0.5
[2] = 0.5[2] 0.8 [1] = 0.25 0.8 (0.5)= 0.15
[3] = 0.5[3] 0.8 [2] = 0.125 0.8 (0.15)= 0.245
[4] = 0.5[4] 0.8 [3] = 0.0625 0.8 (0.245)= 0.1335
Ntese como la suma de las secuencias de (b) y (c) da como resultado la secuencia de (a).
1.2 Solucin numrica usando MatLab
Ahora usaremos Matlab para determinar las secuencias de (a), (b) y (c). Antes, debemos de
tomar en cuenta que en Matlab los ndices de los elementos de un vector o matriz, son
mayores o iguales a 1. En la pregunta, el sistema empieza en n=0 (como podra empezar en
un n=-3). Para remontar este inconveniente, trabajemos con los ndices de los elementos de n
y no con los valores de n. Usaremos n de 0 a 10; por lo que los ndices de sus elementos
varan de 1 a 11. Para obtener los ndices de un vector (o matriz) usaremos la funcin find
a) Solucin completa b) Solucin de entrada cero c) Solucin de estado cero
n=0:10; k=find(0
-
Ing. Armando Alberto Cajahuaringa Camaco Pgina 3
0.8 + 1 = 0 = 0.8, 1[] = 1(0.8)[] = (0.8)[]; . .
2.1.2 Solucin de estado cero, y2[n] (C.I. cero o en reposo)
Debemos de determinar la solucin para [] 0.
0.82[ 1] + 2[] = [], 2[0] = 0
La solucin de entrada cero es la suma de la solucin homognea mas la solucin particular
2[] = 2[] + 2[], 2[0] = 0 2[] = (0.8); 2[] = (0.5)
Remplazando la solucin particular en la ecuacin en diferencias, se obtiene:
0.8 (0.5) + (0.5) = (0.5) =5
13 2[] =
5
13(0.5), 0
Finalmente, aplicaremos la C.I. a la solucin 2[]:
2[0] = 0 = (0.8) +5
13(0.5) =
5
13 2[] =
5
13(0.8) +
5
13(0.5)
Calculando algunos valores:
[0] = 0
2[1] =
[0.5 (0.8)] = 0.5
2[2] =
[0.5 (0.8)] = 0.15
2[3] =
[0.5 (0.8)] = 0.245
Se observa que los valores numricos, concuerdan con los resultados del mtodo recursivo.
2.2 Mtodo numrico usando Matlab
Para este mtodo, se requiere de la expresin de la funcin de transferencia del sistema
discreto. Para esto es necesario, primero, ordenar la ED en orden decreciente de sus
diferencias (a diferencia de las EDO en los que se ordena de mayor a menor orden), tanto para
la variable de salida como para la variable de entrada. As:
[] + 0.8[ 1] = []
3 Mtodo de solucin de ecuacin en diferencias (ED) usando las
funciones filtic y filter
P2) Para la siguiente ecuacin en diferencias, 0.8[ 1] + [] = [], [] = 0.5[] y
[0] = 1, determinar la solucin en forma recursiva: a) la salida [] b) Salida para entrada
cero, [] c) salidas para estado cero, [].
Un sistema se describe por medio de su ecuacin en diferencias
[] 1.143[ 1] + 0.4128[ 2] = 0.0675[] + 0.1349[ 1] + 0.0675[ 2]
Determinamos la salida en respuesta a entra-da cero y condiciones iniciales [1] = 1, [2] = 2
empleando los comandos:
>> a= [1, -1.143, 0.4128];
>> b= [0.0675, 0.1349, 0.0675];
>> x= zeros(1,50)
>> zi = filtic(b,a,[1,2]);
>> y =filter(b,a,x,zi);
-
Ing. Armando Alberto Cajahuaringa Camaco Pgina 4
>> stem(1:50,y);
El resultado se aprecia en la grfica adjunta:
Ahora haciendo la condiciones iniciales cero y la entrada x[n]=cos(0.1*pi*n), la grfica de
salida es:
>> a=[1,-1.143,0.4128];
>> b=[0.0675,0.1349,0.0675];
>> n=0:100;
>> x=cos(0.1*pi*n);
>> zi=filtic(b,a,[0]);
>> y=filter(b,a,x,zi);
>> stem(1:101,y);
Haciendo las condiciones iniciales cero y la entrada [] = (0.2 ), la grfica de salida
es:
>> a=[1,-1.143,0.4128];
>> b=[0.0675,0.1349,0.0675];
>> n=0:100;
>> x=cos(0.1*pi*n);
>> zi=filtic(b,a,[0]);
>> y=filter(b,a,x,zi);
>> stem(1:101,y);
Ahora se resolver el siguiente ejercicio, analticamente y usando Matlab.
P3) Resolver la ecuacin en diferencias:
[] 0.25[ 2] = 2[] + [ 1], sujeta a condiciones iniciales cero y [] = [] .
SOLUCION:
Primero, la solucin homognea.
Haciendo la entrada cero y suponiendo una solucin
-
Ing. Armando Alberto Cajahuaringa Camaco Pgina 5
. = , =
Segundo la solucin particular.
= [].
Evaluando la solucin (recuerde [] = [] ).
[] 0.25 [ 2] = 2 [] + [ 1], = 2.
0.25 = 2 + 1, = 4;
La forma de la solucin es:
[] = 1 + 2
+ ;
Evaluando en n=0 y n=1.
[0] = 1 + 2 + 4 = 2,
[1] = 1 1
2 + 2
1
2 + 4 = 3,
Evaluando en la ecuacin original, se llega al sistema:
1 + 2 = 2
1 2 = 2
El cual tiene por solucin: C1=-2 y C2=0.
Por lo tanto la solucin es:
[] = (2(0.5) + 4) []. (la cual se puede comprobar introduciendo varios valores de prueba).
Usando Matlab:
>> a=[1,0,-0.25];
>> b=[2,1];
>> u=[1,ones(1,50)];
>> zi=filtic(b,a,[0]);
>> y=filter(b,a,u,zi);
>> stem(0:50,y);
La cual genera la grfica:
La cual es igual a [] = (2(0.5) + 4) []. Y se puede comprobar graficndola en Matlab.
>> n=0:50;
>> y=(-2*((0.5).^n)+4);
>> stem(0:50,y);
Ejercicios
De acuerdo a lo estudiado resuelva las siguientes ecuaciones en diferencias usando Matlab,
sino se especifican las condiciones iniciales asmalas cero.
() [] = 3[ 1] + 4 [ 2] + [] + 2 [ 1]
Para la entrada: i) Impulso unitario ii) Escaln Unitario
() [] = 1/2 [ 1] + 2 [], [1] = 3, [] = 2(1/2)[].
() [] = 1/4 [ 1] + 1/8 [ 2] + [] + [ 1], [] = 4[] (0.2 ).
-
Ing. Armando Alberto Cajahuaringa Camaco Pgina 6
Sugerencia: Para una entrada escaln unitario, puede auxiliarse de
>> delta=[1,zeros(1,50)];
Adicionales
Para complementar los ejercicios
Investigue sobre los comandos filter y filtic.
Muestre todos los programas de la solucin de las ecuaciones con sus respectivas grficas.
Implemente diagrama de bloques para las ecuaciones.
Que pasa si los valores de lambda son complejos?
1 METODO RECURSIVO1.1 Manual o analtico1.2 Solucin numrica usando MatLab
2 Mtodo de solucin de ecuacin en diferencias (ED)2.1 Mtodo manual o analtico 2.1.1 Solucin de entrada cero, y1[n]2.1.2 Solucin de estado cero, y2[n] (C.I. cero o en reposo)
2.2 Mtodo numrico usando Matlab
3 Mtodo de solucin de ecuacin en diferencias (ED) usando las funciones filtic y filter