Anda di halaman 1dari 18

Laboratorio N2 Seales y Sistemas en Matlab Quispe Gutierrez Albert 055237

1. Manipulando Seales con Matlab 1.1. Generar 2 seales sinusoidales con diferentes amplitudes y fases. ( ) ( ( ) ) ( ) ) ( ( ) Para seleccionar la amplitud de la seal use y use para la edad de cada persona, para la fase use los ltimos nmeros de su nmero telefnico el cual representara el desfase en grados centgrados de la primera seal; y para la segunda seal el desfase ser de cuando pase las fases a matlab no se olvide de convertirlo a radianes. Exhiba aproximadamente 3 ciclos de la seal. La seal debe de contener un porcentaje de la seal un tiempo negativo y que posea por lo menos 20 muestras por periodo de la seal. Use subplot(3,1,1) para la seal y subplot (3,1,2) para la seal , haz un tercer grafico donde ubiques ambas seales en el mismo grfico. Crea una sinusoide que contiene las seales Solucin Cdigo matlab
A1=13; A2=24; %edad f1=63; %dos ultimos digitos #telfonico f2=-30; rf1=f1*pi/180; %fase en radianes rf2=f2*pi/180; %fase en radianes t=-0.0005:0.000002:0.0005; %tiempo para la grafica x1=A1*cos(2*pi*3000*t+rf1); %seal x1 x2=A2*cos(2*pi*3000*t-rf2); %seal x2 x3=x1+x2; %seal x3, suma de x1 y x2 figure(1) subplot(3,1,1),plot(t,x1),grid on,title('Seal x1') subplot(3,1,2),plot(t,x2),grid on,title('Seal x2') subplot(3,1,3),plot(t,x2),hold on,plot(t,x1),grid on,title('Seal x1 y x2') figure(2) subplot(3,1,1),plot(t,x3),grid on,title('Seal x3') subplot(3,1,2),plot(t,x1),grid on,hold on,plot(t,x3),title('Seal x1 y x3') subplot(3,1,3),plot(t,x2),grid on,hold on,plot(t,x3),title('Seal x2 y x3')

, ubique esta sinusoide sobre el grafico

Graficas resultantes

1.2.

Representacin grfica de las seales continuas y discretas Tipee la siguiente secuencia de comandos n=0:2:60; y=sin(n/6); subplot(3,1,1) stem(n,y)

Este grafico muestra la seal discreta de la seal sin(n/6) la cual esta uniformemente espaciada a intervalos de 2(sin(n/6)). Una computadora Digital no puede guardar todos los puntos de una seal continua en el tiempo desde que esto requiere de una cantidad de memoria infinita. Es sin embargo posible graficar una seal que parezca continua, calculando los valores de la seal a intervalos lo ms cercano posibles y conectndolos con lneas, el comando plot es usado para generar dichos grficos. Use el siguiente cdigo para generar de grficos de la seal sin(t/6). n1=0:2:60; z=sin(n1/6); subplot(3,1,2) plot(n1,z) n2=0:10:60 w=sin(n2/6); subplot(3,1,3) plot(n2,w)

Como se puede apreciar, es importante tener gran variedad de puntos para que la seal aparezca suavizada, comente la precisin de cada una de las grficas. 2. Calculacin Numrica de seales Continuas en el Tiempo. 2.1. Calculo de la energa de una seal acotada en el tiempo Una operacin comn que puede ser ejecutada en el dominio continuo de la seal es la Integracin. La Figura 1 ilustra un mtodo usado para calcular la Integral por el Mtodo de Riemann. La cual consiste una aproximacin del rea de la curva dada por la suma de los rectngulos que poseen el mismo ancho t.

Figura1. Ilustracin de la Integral de Riemann

Escriba un archivo M que calcule la integral de seal sin2(5t) en el intervalo de [0,2], la sintaxis de la funcin debe de ser I=integ1(N), N es el nmero de rectngulos usados para aproximar la integral, esta funcin debe de usar el comando sum , y no contener ningn bucle. Comprobando con la funcionn int del matlab para hallar la integral: >> int((sin(5*t)).*(sin(5*t)),t,0,2*pi) Escriba otro archivo M que evalu I(N) para 1 <= N <= 100, guarde los resultados en un vector y graficarlos en funcin de N. Probando mi funcion con un valor mayor a cien y otro dentro del intervalo: >> integ12(102) Repita el procedimiento anterior para la seal exp(t) en el intervalo de [0,1]. Escriba otro archivo M que calcule el mximo, mnimo y la energa de la seal de las seales anteriores, debe de usar las funciones del matlab min y max , la definicin de energa est dada por: | ( )|

Elige los intervalos adecuados de las funciones anteriores para calcular la energa de las seales y comente acerca de los resultados. 3. Funciones Especiales 3.1. Grafique las siguientes 2 funciones continuas sobre los intervalos especificados use el comando subplot para dibujar ambas seales, asegurase de etiquetar los ejes horizontales. sinc(t) in [-10,10] rect(t) in [-2,2] Solucin
x = -10*pi:10*pi; y = sinc(x); plot(y)

La funcin rect(t) puede ser producida por la siguiente secuencia: Si t=-10:0.1:10, entonces y=(abs(t)<=0.5) .
t=-10:0.1:10; y=(abs(t)<=0.5); plot(y)

% Graficar: >> x=-10*pi:.1:10*pi;

subplot(2,2,1); plot(x,sinc(x)); subplot(2,2,2); plot(x,cos(x)); subplot(2,2,3) plot(x,exp(-x)); subplot(2,2,4); plot(peaks); Graficas resultantes

LA FUNCION ESCALON UNITARIO >> n=x; y=(n>=0); % La funcin escaln es y=u(x) plot(n,y); Graficas resultantes

% Otra Manera de expresar el escaln Escalon unitario con u(n-10), en [-20,20] >> t=-1000:0.1:1000; x1=zeros(size(t)); x1((t-1)>=0)=1; plot(t-10,x1) axis([-20 20 -0.1 1.1]); title('Seal 1a'); grid; xlabel('tiempo (segundos)'); ylabel('x1(t)'); Graficas resultantes

4. Muestreo 4.1. La palabra muestreo se refiere a la conversin de una seal continua a una discreta. La seal continua es convertida a discreta tomando valores o muestras uniformemente espaciadas. El tiempo entre 2 consecutivas muestras es llamado el periodo de muestreo. x=sin(Ts*n); subplot(4,1,1) stem(n,x) axis([0,100,-1,1]) n=0:30; Ts=1/3, x=sin(Ts*n); subplot(4,1,2) stem(n,x) axis([0,30,-1,1]) n=0:20; Ts=1/2, x=sin(Ts*n); subplot(4,1,3) stem(n,x) axis([0,20,-1,1])

n=0:9; Ts=10/9, x=sin(Ts*n); subplot(4,1,4) stem(n,x) axis([0,9,-1,1]) Grafica resultante

Aunque en el grafico parecieran seales de igual frecuencia, son distintas. Cada una tiene un eje distinto, El periodo va decreciendo conforma se dan los grficos. 5. Sistemas en Matlab 5.1. Todo sistema se puede representar por una funcin de transferencia como se muestra en la figura 2. El objetivo de esta parte del laboratorio es familiarizar al alumno con el tratamiento de sistemas en Matlab POLY

Figura 2: Sistemas LTI >> r=[-2,-1]; >> p=poly(r) p= 132 >> r=[-4,5,3,9,1]; >> p=poly(r) p= 1 -14 32 194 - 753 540 5.1.1. ROOTS >> p=[1 3 2]; >> r=roots(p) r= -2 -1 >> p=[4,0,1,2,9,1]; >> r=roots(p) r= 0.8545 + 0.9789i 0.8545 - 0.9789i -0.7976 + 0.8153i -0.7976 - 0.8153i -0.1138 5.1.2. POLYVAL >> p=[1 3 2]; >> x=[3]; >> y=polyval(p,x) y= 20

>> p=[4,0,1,2,9,1]; >> x=[-2,1,4,17]; >> y=polyval(p,x) y= -145 17 4229 5685073 5.1.3. RESIDUE num=[1 0 0 1]; den=[2 5 6]; [r p k]= residue(num,den) r= 0.8125 - 0.9253i 0.8125 + 0.9253i p= -1.2500 + 1.1990i -1.2500 - 1.1990i k= 0.5000 -1.2500 num=[1 4 1]; den=[2 1 2]; [r p k]= residue(num,den) r= 0.8750 + 0.2259i 0.8750 - 0.2259i p= -0.2500 + 0.9682i -0.2500 - 0.9682i k= 0.5000 6. CONVOLUCION 6.1. Convolucion en una dimension f=[1 2 3 4]; h1=[1 -1]; h2=[1 1]; g11=conv(f,h1) g12=conv(f,h2) g21=conv(h2,f) g11 = 1 1 1 1 -4 g12 = 13574 g21 = 13574

6.2.

Convolucion en 2 dimensiones f=[1 1]; h1=[1 -1;1 -1]; h2=[1 1;-1 -1]; h3=[1 -1;-1 1]; h4=[1 1;1 1]; g1=conv2(f,h1) g2=conv2(f,h2) g3=conv2(f,h3) g4=conv2(f,h4) g1 = 1 0 -1 1 0 -1 g2 = 121 -1 -2 -1 g3 = 1 0 -1 -1 0 1 g4 = 121 121 Cree un archivo M con los siguientes comandos y explique qu es lo que pasa con la seal. f=[1 1]; h1=[1 -1; 1 -1]; h2=[1 1; -1 -1]; h3=[1 -1; -1 1]; h4=[1 1; 1 1]; figure(1) imagesc(f); colormap(gray). image(f) Figure(2) g1=conv2(f,h1); imagesc(g1) colormap(gray) figure(3) g2=conv2(f,h2); imagesc(g2) colormap(gray)

figure(4) g3=conv2(f,h3); imagesc(g3) colormap(gray) figure(5) g4=conv2(f,h4); imagesc(g4) colormap(gray) Graficas Resultantes

Las grficas muestran que es posible seleccionar que pixeles modificar

7. SIMULINK Simulink es una herramienta grafica la cual puede ser usada para crear modelos de seales para simulaciones en tiempo y frecuencia, uno puede usar Simulink para programar un grupo de ecuaciones diferenciales representadas por una funcin de trasferencia y determinar la respuesta de dicho sistema. Para entrar al Simulink, tipear Simulink en el espacio de trabajo. Esto abrir el navegador de Simulink (Figura 3 muestra el entorno grafico del Simulink). El panel de la parte baja muestra las operaciones matemticas y las libreras evaluables en Simulink tome unos minutos reconociendo las diferentes libreras evaluables.

Figura 3. Navegador de Libreras del Simulink Cree un nuevo modelo seleccionando File => New => Model. Esto abrir una nueva ventana en la cual se podr modelar nuestro sistema, los modelos son creados aadiendo bloques funcionales a dicha ventana, estableciendo los parmetros de los bloques, y conectando los bloques en una correcta secuencia. Para aadir los bloques solo es necesario jalarlos de sus libreras correspondientes y ubicarlo sobre nuestra ventana de edicion. Aada una funcin escaln a nuestro modelo, esta se encuentra ubicada bajo la librera Source, abra la librera haciendo un doble click, encuentre el bloque del escaln y ubquelo en la ventana del modelo creado. Despus aade un Sumador y un bloque de Slider Gain, estos estn ubicados en la librera Math. A continuacin aada el bloque discret transfer Fcn que se encuentra en la librera Discrete y el bloque del osciloscopio que se encuentra en la librera sinks.

Tu modelo debiera de verse como el de la figura 4 sin las lneas de conexin.

Figura 4. Modelo de Simulink de un Sistema Lineal Los parmetros de cada bloque deben de especificarse para su correcto funcionamiento. De 2 click sobre el icono Sum, esto abrir la ventana de configuracin del bloque. En la opcin list of signs nosotros podemos ver 2 signos + (++), esto indica que el bloque opera como un sumador, cambie el contenido a (+-) para que el bloque tome la diferencia de las seales anteriores como se puede apreciar en la figura 5.

Figura 5. Ventana de Parmetros del Bloque del Sumador Haga doble click sobre el icono de Slider Gain y cambie el valor del medio de 1 a

0.38 y cierre la ventana. Configure el bloque de Funcin de Transferencia Discreta (discret transfer Fcn ) y tipee los coeficientes de la siguiente funcin de transferencia ( ) Tal como se muestra en la figura 6, y haga un click en OK.

Figura 6. Ventana de Parmetros del Bloque discret transfer Fcn Ahora todos los bloques estn ubicados adems de tener sus parmetros correctos, ahora solo falta conector los bloques. Como se puede observar los bloques tienen diferentes puertos de entrada y salida (>) para conectar los bloques basta ubicarse sobre los puertos y el cursor cambiara entonces basta ubicar el curso al puerto de entrada correspondiente, utilice el anterior procedimiento para conectar todos los bloques tal como se observa en la figura 4. Para comenzar a simular el modelo construido, en la barra de Menu seleccione Simulation => Star. Despus de que la simulacin se complete de 2 clicks sobre el bloque del osciloscopio para ver la respuesta del sistema, el grafico debera de verse como el de la figura 7

Figura 7. Grfico de Salida del Osciloscopio de Simulink Para cambiar los parmetros de la simulacin vaya a Simulate => Simulation Parameters y ac uno puede modificar diferentes parmetros para visualizar mejor la seal. Antes de salir de Simulink , guarde su modelo.

Anda mungkin juga menyukai