Vous êtes sur la page 1sur 13

TRATAMIENTO DE SEALES-PRCTICAS

PRACTICAS
TRATAMIENTO DE SEALES

INTRODUCCIN

1.- Realizacin y presentacin de las prcticas

Para entregar las prcticas correctamente deber seguirse el siguiente criterio en


relacin al cdigo escrito y a las grficas generadas:

1. Las prcticas debern entregarse resueltas en el documento .doc adjunto a la direccin


jcpalomo@hotmail.com con el Subject 'Prctica 1', 'Prctica2', ... El archivo enviado debe
estar libre de virus.

2. El cdigo debe poder ejecutarse sin errores.

3. En todas las grficas deber aparecer:


- Ttulo (title()).
- Magnitud representada en eje de abscisas y unidades (xlabel()).
- Magnitud representada en eje de ordenadas y unidades (ylabel()).
- Leyenda en caso de representar ms de una seal un una grfica (legend()).

2.- Representacin de seales continuas en Matlab

Como ya es conocido, en Matlab todos los datos numricos se representan mediante


matrices, y por lo tanto las seales se expresarn mediante el uso de vectores. Una de las
diferencias ms importantes que vamos a encontrar con respecto a las seales estudiadas
de forma terica hace referencia a la naturaleza de las funciones que podemos generar. Al
igual que en otros sistemas o herramientas informticas de tratamiento de seal,
nicamente podremos representar seales de longitud o duracin finita, y stas han de ser
discretas. Es decir, nicamente podemos representar una serie de puntos que van a
aproximar la funcin continua que queremos analizar o con la que queremos operar.

La aproximacin a la seal continua ser tanto mejor cuanto mayor sea el nmero de
muestras que seleccionemos para representarla, es decir, cuanto menor sea el intervalo
temporal utilizado para obtener puntos de la seal. A este intervalo temporal lo
denominaremos perodo de muestreo, y a la operacin consistente en discretizar una seal
continua muestrear. El perodo de muestreo elegido debe ser suficientemente pequeo
para que la seal que queremos representar quede perfectamente identificada.

En Matlab, para representar seales en el tiempo, debemos calcular los valores que en
este eje corresponden a cada punto de la seal muestreada utilizando la informacin que
tenemos del intervalo de muestreo. Si queremos representar una seal constante de valor
1 entre 0 y 1 segundo mediante 100 muestras, generaremos 2 vectores, uno para el eje de
amplitudes y otro para el eje de tiempos. En este caso el intervalo ser de 0.01 segundos.
Los vectores necesarios sern:

1
TRATAMIENTO DE SEALES-PRCTICAS

x = ones(1,100);
t = [0.01:0.01:1];
plot(t,x);
xlabel('tiempo (seg)');
ylabel('amplitud');
title('Representacin continua de una seal discreta');

Representacin continua de una seal discreta


2

1.8

1.6

1.4

1.2
amplitud

0.8

0.6

0.4

0.2

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tiempo (seg)

Podemos ver fcilmente la influencia que tiene el intervalo de muestreo en la


representacin de una seal. Consideremos una seal sinusoidal de 50 Hz y amplitud
unidad. El perodo de esta seal es de 0.02 seg, y representaremos 4 perodos (es decir,
una seal de 0.08 seg de duracin. Utilizaremos dos intervalos de muestreo, 0.02 seg (5
muestras de la seal) y 0.001 seg (81 muestras de la seal).

stem([0:0.015:0.08], sin(2*pi*50*[0:0.015:0.08]));
axis([0 0.1 -1.5 1.5]);
xlabel('tiempo (seg)');
ylabel('amplitud');
title('Sinusoide 50 Hz muestreo 0.015 seg');

2
TRATAMIENTO DE SEALES-PRCTICAS

Sinusoide 50 Hz muestreo 0.015 seg


1.5

amplitud 0.5

-0.5

-1

-1.5
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
tiempo (seg)

stem([0:0.001:0.08], sin(2*pi*50*[0:0.001:0.08]));
axis([0 0.1 -1.5 1.5]);
xlabel('tiempo (seg)');
ylabel('amplitud');
title('Sinusoide 50 Hz muestreo 0.001 seg');
Sinusoide 50 Hz muestreo 0.001 seg
1.5

0.5
amplitud

-0.5

-1

-1.5
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
tiempo (seg)

El perodo de muestreo en el primer caso es insuficiente para obtener una


representacin correcta de la seal deseada.

3
TRATAMIENTO DE SEALES-PRCTICAS

PRCTICA 1. DEFINICIN DE SEALES Y SISTEMAS

1.- Introduccin terica

Las seales son funciones del tiempo que representan la evolucin de una determinada
variable, como puede ser la tensin en bornes de un condensador, la temperatura de un
horno, o la actividad elctrica de una fibra muscular. Distinguiremos dos tipos de seales,
continuas y discretas.

Las seales continuas, x(t), son funciones de una variable continua (tiempo), mientras
que las discretas, x[n], se definen nicamente para valores discretos de la variable
independiente.

1.1.- Transformaciones de la variable temporal

Vamos a considerar las siguientes transformaciones:

1.1.1.- Escalado temporal

Caso a : 0 a 1 exp ansin


y t x at
Caso b : a 1 compresin

1.1.2.- Inversin temporal

y t x t

1.1.3.- Desplazamiento temporal

y t x t T

1.2.- Seales peridicas

Una seal continua x(t) es peridica si existe un valor T para el cual:

x t x t T

Una seal discreta x[n] es peridica si existe un valor N para el cual:

x n x n N

Al valor de T o N ms pequeo lo denominaremos perodo fundamental.


1.3.- Seales pares e impares

4
TRATAMIENTO DE SEALES-PRCTICAS

Una seal es par si cumple:

x t x t ; x n x n

Y ser impar si cumple:

x t x t ; x n x n

Toda seal puede ser descompuesta en su parte par y su parte impar de la forma
siguiente:

x t x p t xi t

donde

1
xp t x t x t
2
1
xi t x t x t
2

1.4.- Funciones impulso unidad y escaln discretas

Definimos la seal impulso unidad en tiempo discreto como:

1 n0
n
0 n0

n = -4:1:4;
x = zeros(size(n));
x(n==0) = 1;
stem(n,x);
axis([-4 4 -0.5 1.5]);
title('Seal impulso unidad');
xlabel('n (muestras)');
ylabel('x[n]');

5
TRATAMIENTO DE SEALES-PRCTICAS

Seal impulso unidad


1.5

1
x[n]

0.5

-0.5
-4 -3 -2 -1 0 1 2 3 4
n (muestras)

El escaln unidad en tiempo discreto se define:

1 n0
u n
0 n0

n = -4:1:4;
x= zeros(size(n));
x(n>=0)=1;
stem(n,x);
axis([-4 4 -0.5 1.5]);
title('Seal escaln');
xlabel('n (muestras)');
ylabel('x[n]');

6
TRATAMIENTO DE SEALES-PRCTICAS

Seal escaln
1.5

1
x[n]

0.5

-0.5
-4 -3 -2 -1 0 1 2 3 4
n (muestras)

Cada una de estas seales puede ser expresada en funcin de la otra:

n
u n k
k

n u n u n 1

Y se cumplir tambin:


u n n k
k 0
x n n n0 x n0 n n0

1.5.- Seales impulso y escaln continuas

Definimos la seal escaln continua en el tiempo como:

1 t 0
u t
0 t0

7
TRATAMIENTO DE SEALES-PRCTICAS

Se observa que esta funcin es discontinua en el origen, y por tanto no es


diferenciable. Sus integrales sucesivas seran:

t k 1 1
1 k
u dd 1 d k 1 t u t

k!

Para definir el impulso unidad partimos de un pulso de rea unidad, cuya integral es
una aproximacin del escaln unidad. A medida que hacemos ms estrecho el pulso
manteniendo su rea constante, su integral es una mejor aproximacin del escaln unidad.
En el lmite podemos escribir:

d
t u t
dt

Podremos escribir tambin el escaln en funcin del impulso:


t
u t d

1.5.1.- Propiedades del impulso

1.5.1.1.- Propiedad de muestreo


x t t t dt x t

0 0

1.5.1.2.- Escalado temporal


1
at t
a

1.6.- Energa y potencia

La energa total y la potencia media sobre un perodo t1 ,t 2 o n1 , n2 de una seal


arbitraria se define como:

t2 n2
E x t dt E x n
2 2

t1 n1
t2 n2
1 1
x t dt P x n
2 2
P
t 2 t1 t1 n2 n1 1 n1

1.7.- Sistemas

8
TRATAMIENTO DE SEALES-PRCTICAS

Un sistema es una relacin matemtica entre una seal de entrada y una seal de
salida.

x t y t

y t g x t

1.7.1.- Interconexiones bsicas

1.7.1.1.- Interconexin serie


1.7.1.2.- Interconexin paralelo
1.7.1.3.- Sistema realimentado

1.7.2.- Propiedades bsicas de los sistemas

1.7.2.1.- Linealidad

Un sistema es lineal si cumple las propiedades de aditividad y homogeneidad, es decir:

f 1 x1 t 2 x2 t f 1 x1 t f 2 x2 t 1 f x1 t 2 f x2 t 1 y1 t 2 y 2 t

La propiedad de linealidad se resume en el principio de superposicin: "La respuesta


a la una combinacin lineal de seales de entrada es igual a la combinacin de lineal de
sus correspondientes seales de salida".

1.7.2.2.- Memoria

Se dice que un sistema no tiene memoria si la salida y t en el instante t depende


nicamente de la entrada en ese mismo instante de tiempo. De forma similar, un sistema
tendr memoria si su respuesta en un instante dado depende de valores a la entrada en
otros instantes de tiempo.

1.7.2.3.- Causalidad

Un sistema es causal si su salida en el instante t depende nicamente de valores


anteriores y del valor actual de la entrada. En caso contrario se dice que es un sistema no
causal.

2.- Enunciados

9
TRATAMIENTO DE SEALES-PRCTICAS

2.1.- Dibujar las siguientes seales sobre el intervalo 2 t 4 .

2t 2t 0

a) x1 t u t 1 b) x2 t 2 0.5t 0t 2
0 resto

c ) x3 t 0.5t 1 donde t es un pulso de anchura 1 centrado en el origen


d ) x4 t 2t 2 (intervalo 2, 10 ) donde t es una funcin tringulo que
comienza en (-1,0), llega a (0,1) y termina en (1,0)

sen 6t
e) x5 t e
2 t
f ) x6 t
6t

2 t
g ) x7 t sen (intervalo 20, 20 )
t 2

Ejemplos:

a) Una posible solucin es:

u = inline('t>=0')
t=-10:0.01:10;
x1 = u(t-1);
plot(t,x1)
axis([-10 10 -0.1 1.1]);
title('Seal 1a');
grid;
xlabel('tiempo (segundos)');
ylabel('x1(t)');
Seal 1a

0.8

0.6
x 1(t)

0.4

0.2

-10 -8 -6 -4 -2 0 2 4 6 8 10
tiempo (segundos)

Otro programa de Matlab es:

10
TRATAMIENTO DE SEALES-PRCTICAS

t=-10:0.01:10;
plot(t,u(t),'r');
hold on;
plot(t,u(t-1),'k','linewidth',2);
axis([-10 10 -0.1 1.1]);
grid on;
title('Seal 1a');
xlabel('tiempo (segundos)');
ylabel('u(t), u(t-1)');
legend('u(t)', 'u(t-1)')

Seal 1a

u(t)
1 u(t-1)

0.8

0.6
u(t), u(t-1)

0.4

0.2

-10 -8 -6 -4 -2 0 2 4 6 8 10
tiempo (segundos)

b) Para resolver este apartado, puede ser conveniente el uso de parntesis lgicos. Por ejemplo, el alumno
puede considerar
fb = inline('(2+t).*(-2<=t).*(t<0) ')
y ampliarla para conseguir la funcin pedida.
Por qu se pone .* en vez de *? Si se pone * funciona fb(3)? Si se pone * funciona fb(0:.1:3)?

2.2.- Considere la siguiente seal gaussiana:


2
1 t
x t e
t0

t0

11
TRATAMIENTO DE SEALES-PRCTICAS

a) Dibujar la seal x t en el intervalo 2,2 para t 0 1, 0.5, 0.1, 0.05, 0.01


sobre la misma grfica.
b) Calcula el rea de cada una de las seales obtenidas. Puede ser til la funcin
quad.
c) Qu ocurre con x t cuando t 0 0 ?

2.3.- Dibujar las siguientes seales, su parte par e impar, y reconstruir la seal original a
partir de ellas:

2 1 t 3
a ) x1 t e
t 1
b) x 2 t
0 resto

c) x3 t 3sen 6t c ) x4 t 4 cos 2t

2.4.- Dada la siguiente seal:

x t 4e 2t cos t

Dibuje x t y las siguientes seales:

a ) x t 1 b) x 2 t

t
c) x 2t 1 d ) x 4
2

e) x t x t u t f ) x t t 1 t 1

2.5.- Una forma aproximada de calcular la energa de una seal x t es aproximar el rea
de x 2 t utilizando un intervalo de muestreo muy pequeo. Si, adems, x t es una
seal peridica, podemos calcular su potencia dividiendo la energa de un periodo entre el
periodo.

Dada la seal:

sen 2t
x t 3 t
t

sen 2t
a) Dibuja la seal x t . Cul es su relacin con la seal 3 ?
t
b) Calcula la energa de la seal.
c) Calcula la potencia de la seal si la seal x t es un periodo de una seal
peridica con T =1.4 segundos.

12
TRATAMIENTO DE SEALES-PRCTICAS

2.6.- Dibuje las siguientes seales y determine si son seales peridicas, y en ese caso,
cul es su perodo fundamental.


a ) x1 t 3 cos 4t
3

b) x2 t Re e j t 1 c) x3 t cos 2 2t

13