You are on page 1of 15

UNIVERSIDAD VERACRUZANA

FACULTAD DE INGENIERIA Y CIENCIAS QUMICAS


POZA RICA, VERACRUZ

PROGRAMA EDUCATIVO

INGENIERIA ELECTRONICA Y COMUNICACIONES

EXPERIENCIA EDUCATIVA

PROCESAMIENTO DIGITAL DE SEALES

DOCENTE

GARCIA RAMOS ROMAN

TRABAJO

GRAFICAR SEALES DISCRETAS (MATLAB)

TESTUDIANTE

ANGEL OMAR LORENZO CARRERA R LAS EXPRE


FECHA

20 DE MARZO DE 2014

UNIVERSIDAD VERACRUZANA
INTRODUCCIN
SEALES EN TIEMPO DISCRETO
Las seales en tiempo discreto se representan matemticamente como secuencias de nmeros. Una secuencia de nmeros x, en los que el n-simo nmero se indica como x[n], se escribe formalmente como:

siendo n un entero. En casos prcticos, esas secuencias se derivan de muestrear una seal analgica, xa (t). en este caso el valor numrico de n-simo nmero de la secuencia es igual al valor de la seal analgica, (xa (t)) en el instante nT, esto es:

donde T es el periodo de muestreo y su inversa es la frecuencia.

Representacin grafica de una seal discreta

Aunque el eje x se representa como una lnea continua es importante tener en cuenta que x[n] est definida solo para valores enteros de n. No es correcto pensar que x[n] es cero en valores de n no enteros. Simplemente x[n] no est definida para valores no enteros de n.

UNIVERSIDAD VERACRUZANA
MATLAB
MATLAB es una herramienta de software matemtico que ofrece un entorno de desarrollo integrado con un lenguaje de programacin propio.

SOLUCIN DE EJERCICOS PROPUESTOS EN CLASE


Graficar la seal impulso unitario con adelanto de dos unidades y retraso de tres unidades. Cdigo para graficar la seal impulso unitario discreto
% % % % Programa: Proposito: Nombre: Fecha: impulso_unitario Graficar la seal discreta impulso unitario Angel Lorenzo 11/03/14

% Liberacion de localidades de memoria que se han almacenado clc clear all % Datos para representar la seal n = -10:10; x = [zeros(1,10) 1 zeros(1,10)]; % Graficar la seal definida stem(n,x,'-b') title('Impulso Unitario Discreto / Angel Lorenzo') legend('x[n]'); xlabel('n muestras') ylabel('x[n]'); axis ([-10 10 -1.5 1.5]); grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Cdigo para graficar la seal impulso unitario discreto con adelanto de dos unidades
% % % % % Programa: impulso_unitario01 Proposito: Graficar la seal discreta impulso unitario con adelanto de 2 unidades. Nombre: Angel Lorenzo Fecha: 11/03/14

% Liberacion de localidades de memoria que se han almacenado clc clear all % Datos para representar la seal. n = -10:10; x = [zeros(1,8) 1 zeros(1,12)]; % Graficar la seal definida stem(n,x,'-b') title('Impulso Unitario Discreto / Angel Lorenzo') legend('x[n+2]') xlabel('n muestras') ylabel('x[n]') axis ([-10 10 -1.5 1.5]) grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Cdigo para graficar la seal impulso unitario discreto con retraso de tres unidades
% % % % % Programa: impulso_unitario02 Proposito: Graficar la seal discreta impulso unitario con retraso de 3 unidades. Nombre: Angel Lorenzo Fecha: 11/03/14

% Liberacion de localidades de memoria que se han almacenado clc clear all % Datos para representar la seal. n = -10:10; x = [zeros(1,13) 1 zeros(1,7)]; % Graficar la seal definida stem(n,x,'-b') title('Impulso Unitario Discreto / Angel Lorenzo') legend('x[n-3]') xlabel('n muestras') ylabel('x[n]') axis ([-10 10 -1.5 1.5]) grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Graficar la seal escaln unitario con adelanto y retraso de tres unidades. Cdigo para graficar la seal escaln unitario discreto
% % % % Programa: Proposito: Nombre: Fecha: escalon_unitario Graficar la seal discreta escalon unitario. Angel Lorenzo 13/03/14

% Liberacion de localidades de memoria que se han almacenado. clc clear all % Datos para representar la seal. n = -10:10; x = [zeros(1,10) ones(1,11)]; % Graficar la seal definida. stem(n,x,'-r') title('Escalon Unitario Discreto / Angel Lorenzo') legend('u[n]') xlabel('n muestras') ylabel('u[n]') axis ([-10 10 -1.5 1.5]) grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Cdigo para graficar la seal escaln unitario discreto con adelanto de tres unidades
% % % % % Programa: escalon_unitario01 Proposito: Graficar la seal discreta escalon unitario con adelanto de tres unidades. Nombre: Angel Lorenzo Fecha: 13/03/14

% Liberacion de localidades de memoria que se han almacenado. clc clear all % Datos para representar la seal. n = -10:10; x = [zeros(1,7) ones(1,14)]; % Graficar la seal definida. stem(n,x,'-r') title('Escalon Unitario Discreto / Angel Lorenzo') legend('u[n+3]') xlabel('n muestras') ylabel('u[n]') axis ([-10 10 -1.5 1.5]) grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Cdigo para graficar la seal escaln unitario discreto con retraso de tres unidades
% % % % % Programa: escalon_unitario02 Proposito: Graficar la seal discreta escalon unitario con retraso de tres unidades. Nombre: Angel Lorenzo Fecha: 13/03/14

% Liberacion de localidades de memoria que se han almacenado. clc clear all % Datos para representar la seal. n = -10:10; x = [zeros(1,13) ones(1,8)]; % Graficar la seal definida. stem(n,x,'-r') title('Escalon Unitario Discreto / Angel Lorenzo') legend('u[n-3]') xlabel('n muestras') ylabel('u[n]') axis ([-10 10 -1.5 1.5]) grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Graficar la seal funcin rampa con adelanto de dos unidades y retraso de tres unidades. Cdigo para graficar la seal funcin rampa discreta
% % % % Programa: Proposito: Nombre: Fecha: funcion_rampa Graficar la seal discreta rampa. Angel Lorenzo 13/03/14

%Liberacion de localidades de memoria que se han almacenado. clc clear all % Definicion del rango para el vector. n = -10:10; % Genera la seal. N = length (n); x = zeros(1,N); cont = 0; for i=1:N, if n(i)>0 cont = cont + 1; x(i) = cont; end; end; % Grafica la seal obtenida. stem(n,x,'.b') title('Funcion Unitaria Rampa / Angel Lorenzo') legend('Ur[n]'); xlabel('n muestras') ylabel('Ur[n]'); axis([-10 10 min(x) max(x)]); grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Graficar una seal exponencial de la forma x[n]=a^n------0<a<1 Cdigo para graficar la seal exponencial
% % % % % Programa: exponencial_a Proposito: Graficar la seal discreta Exponencial cuando 'a' es real. Nombre: Angel Lorenzo Fecha: 14/03/14

% Liberacion de localidades de memoria que se han almacenado clc clear all % % n % a x Datos para representar la seal n solo va de 0 a 2 para que la grafica se visualice mejor = 0:0.03:2; a es real / 0<a<1 = 0.075; = a.^n;

% Graficar la seal definida stem(n,x,'.b') title('Exponencial Discreta / Angel Lorenzo') legend('x[n]=a^n') xlabel('n muestras'); ylabel('x[n]') axis ('auto'); grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Graficar una seal exponencial de la forma x[n]=a^n------1<a Cdigo para graficar la seal exponencial
% % % % % Programa: exponencial_a01 Proposito: Graficar la seal discreta Exponencial cuando 'a' es real. Nombre: Angel Lorenzo Fecha: 14/03/14

% Liberacion de localidades de memoria que se han almacenado clc clear all % n % a x Datos para representar la seal = 0:0.1:10; a es real / a > 1 = 1.3; = a.^n;

% Graficar la seal definida stem(n,x,'.b') title('Exponencial Discreta / Angel Lorenzo') legend('x[n]=a^n') xlabel('n muestras'); ylabel('x[n]'); axis ('auto') grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Graficar una seal exponencial de la forma x[n]=-a^n-------1<a<0 Cdigo para graficar la seal exponencial
% % % % % Programa: exponencial_a02 Proposito: Graficar la seal discreta Exponencial cuando 'a' es real. Nombre: Angel Lorenzo Fecha: 14/03/14

% Liberacion de localidades de memoria que se han almacenado clc clear all % n % a x Datos para representar la seal = -2:0.03:0; a es real / -1 < a < 0 = -0.075; = a.^n;

% Graficar la seal definida stem(n,x,'.b') title('Exponencial Discreta / Angel Lorenzo') legend('x[n]=-a^n') xlabel('n muestras'); ylabel('x[n]') axis ('auto'); grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA
Graficar una seal exponencial de la forma x[n]=a^n-------(a<-1) Cdigo para graficar la seal exponencial
% % % % % Programa: exponencial_a03 Proposito: Graficar la seal discreta Exponencial cuando 'a' es real. Nombre: Angel Lorenzo Fecha: 14/03/14

% Liberacion de localidades de memoria que se han almacenado clc clear all % n % a x Datos para representar la seal = -10:0.1:0; a es real / a < -1 = -1.3; = a.^n;

% Graficar la seal definida stem(n,x,'.b') title('Exponencial Discreta / Angel Lorenzo') legend('x[n]=a^n') xlabel('n muestras') ylabel('x[n]'); axis ('auto'); grid on

Published with MATLAB 7.10

UNIVERSIDAD VERACRUZANA

Si en la expresin anterior a es compleja se tiene que:

Donde la parte real est dada por:

Y la parte imaginaria:

Entonces graficar la parte real e imaginaria de la siguiente seal

% % % % %

Programa: compleja Proposito: Graficar la parte real e imaginaria de una seal compleja. Nombre: Angel Lorenzo Fecha: 20/03/14

% Liberacion de localidades de memoria que se han almacenado clc clear all % n % x Datos para representar la seal = 0:0.2:30; seal de la forma Xr[n] = r^n * cos(?n) = (0.8.^n).*(cos((pi/5)*n));

% Graficar la seal definida stem(n,x,'.b') title('Compleja / Angel Lorenzo') legend('x[n] = a^n * cos((pi/5)*n)') xlabel('n muestras') ylabel('x[n]') axis ('auto') grid on

UNIVERSIDAD VERACRUZANA

Published with MATLAB 7.10

You might also like