The MATLAB Notebook v1.6

Anuncio
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
PRACTICAS
SEÑALES Y SISTEMAS
INTRODUCCIÓN
1.- Realización y presentación de las prácticas
Para entregar las prácticas correctamente deberá seguirse el siguiente criterio en
relación al código escrito y a las gráficas generadas:
1. Las prácticas deberán entregarse resueltas en el documento .doc adjunto a la dirección
[email protected] con el Subject 'Práctica 1', 'Práctica2', ... El archivo enviado debe estar
libre de virus, y el incumplimiento de este requisito conlleva el suspenso de la
asignatura.
2. El código debe poder ejecutarse sin errores.
3. En todas las gráficas deberá aparecer:
- Título (title()).
- Magnitud representada en eje de abscisas y unidades (xlabel()).
- Magnitud representada en eje de ordenadas y unidades (ylabel()).
- Leyenda en caso de representar más de una señal un una gráfica (legend()).
2.- Representación de señales continuas en Matlab
Como ya es conocido, en Matlab todos los datos numéricos se representan mediante
matrices, y por lo tanto las señales se expresarán mediante el uso de vectores. Una de las
diferencias más importantes que vamos a encontrar con respecto a las señales estudiadas
de forma teórica hace referencia a la naturaleza de las funciones que podemos generar. Al
igual que en otros sistemas o herramientas informáticas de tratamiento de señal,
únicamente podremos representar señales de longitud o duración finita, y éstas han de ser
discretas. Es decir, únicamente podemos representar una serie de puntos que van a
aproximar la función continua que queremos analizar o con la que queremos operar.
La aproximación a la señal continua será tanto mejor cuanto mayor sea el número de
muestras que seleccionemos para representarla, es decir, cuanto menor sea el intervalo
temporal utilizado para obtener puntos de la señal. A este intervalo temporal lo
denominaremos período de muestreo, y a la operación consistente en discretizar una señal
continua muestrear. El período de muestreo elegido debe ser suficientemente pequeño
para que la señal que queremos representar quede perfectamente identificada.
En Matlab, para representar señales en el tiempo, debemos calcular los valores que en
este eje corresponden a cada punto de la señal muestreada utilizando la información que
tenemos del intervalo de muestreo. Si queremos representar una señal constante de valor
1 entre 0 y 1 segundo mediante 100 muestras, generaremos 2 vectores, uno para el eje de
-1-
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
amplitudes y otro para el eje de tiempos. En este caso el intervalo será de 0.01 segundos.
Los vectores necesarios serán:
x = ones(1,100);
t = [0.01:0.01:1];
plot(t,x);
xlabel('tiempo (seg)');
ylabel('amplitud');
title('Representación continua de una señal discreta');
Representación continua de una señal discreta
2
1.8
1.6
1.4
amplitud
1.2
1
0.8
0.6
0.4
0.2
0
0
0.1
0.2
0.3
0.4
0.5
tiempo (seg)
0.6
0.7
0.8
0.9
1
Podemos ver fácilmente la influencia que tiene el intervalo de muestreo en la
representación de una señal. Consideremos una señal sinusoidal de 50 Hz y amplitud
unidad. El período de esta señal es de 0.02 seg, y representaremos 4 períodos (es decir,
una señal de 0.08 seg de duración. Utilizaremos dos intervalos de muestreo, 0.02 seg (5
muestras de la señal) y 0.001 seg (81 muestras de la señal).
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-
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
Sinusoide 50 Hz – muestreo 0.015 seg
1.5
1
amplitud
0.5
0
-0.5
-1
-1.5
0
0.01
0.02
0.03
0.04
0.05
0.06
tiempo (seg)
0.07
0.08
0.09
0.1
0.09
0.1
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
1
amplitud
0.5
0
-0.5
-1
-1.5
0
0.01
0.02
0.03
0.04
0.05
0.06
tiempo (seg)
0.07
0.08
El período de muestreo en el primer caso es insuficiente para obtener una
representación correcta de la señal deseada.
-3-
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
PRÁCTICA 1. DEFINICIÓN DE SEÑALES Y SISTEMAS
Plazo entrega: 12 de Marzo.
Duración aproximada: 2 horas.
1.- Introducción teórica
Las señales son funciones del tiempo que representan la evolución de una determinada
variable, como puede ser la tensión en bornes de un condensador, la temperatura de un
horno, o la actividad eléctrica de una fibra muscular. Distinguiremos dos tipos de señales,
continuas y discretas.
Las señales 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  expansión
yt   xat 
 Caso b : a  1  compresión
1.1.2.- Inversión temporal
yt   x t 
1.1.3.- Desplazamiento temporal
yt   xt  T 
1.2.- Señales periódicas
Una señal continua x(t) es periódica si existe un valor T para el cual:
xt   xt  T 
Una señal discreta x[n] es periódica si existe un valor N para el cual:
xn  xn  N 
Al valor de T o N más pequeño lo denominaremos período fundamental.
-4-
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
1.3.- Señales pares e impares
Una señal 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 señal puede ser descompuesta en su parte par y su parte impar de la forma
siguiente:
xt   x p t   xi t 
donde
1
xt   x t 
2
1
xi t   xt   x t 
2
x p t  
1.4.- Funciones impulso unidad y escalón discretas
Definimos la señal impulso unidad en tiempo discreto como:
1 n  0
0 n  0
 n  
n = -4:1:4;
x = zeros(size(n));
x(n==0) = 1;
stem(n,x);
axis([-4 4 -0.5 1.5]);
title('Señal impulso unidad');
xlabel('n (muestras)');
ylabel('x[n]');
-5-
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
Señal impulso unidad
1.5
x[n]
1
0.5
0
-0.5
-4
-3
-2
-1
0
n (muestras)
El escalón unidad en tiempo discreto se define:
1 n  0
un  
0 n  0
n = -4:1:4;
x= zeros(size(n));
x(n>=0)=1;
stem(n,x);
axis([-4 4 -0.5 1.5]);
title('Señal escalón');
xlabel('n (muestras)');
ylabel('x[n]');
-6-
1
2
3
4
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
Señal escalón
1.5
x[n]
1
0.5
0
-0.5
-4
-3
-2
-1
0
n (muestras)
1
2
Cada una de estas señales puede ser expresada en función de la otra:
n
un 
  k 
k  
 n  un  un  1
Y se cumplirá también:

un    n  k 
k 0
xn n  n0   xn0  n  n0 
1.5.- Señales impulso y escalón continuas
Definimos la señal escalón continua en el tiempo como:
1 t  0
u t   
0 t  0
-7-
3
4
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
Se observa que esta función es discontinua en el origen, y por tanto no es
diferenciable. Sus integrales sucesivas serían:
t  k 1
1
 


   u dd 1 d k 1 
1 k
t ut 
k!
Para definir el impulso unidad partimos de un pulso de área unidad, cuya integral es
una aproximación del escalón unidad. A medida que hacemos más estrecho el pulso
manteniendo su área constante, su integral es una mejor aproximación del escalón unidad.
En el límite podemos escribir:
 t  
d
u t 
dt
Podremos escribir también el escalón en función 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
 at 
1
 t 
a
1.6.- Energía y potencia
La energía total y la potencia media sobre un período t1 ,t 2  o n1 ,n2  de una señal
arbitraria se define como:
t2
E   xt  dt
2
t1
P
-8-
t2
n2
E   xn
2
n1
n2
1
1
2
2


x
t
dt
P

xn


t 2  t1 t1
n2  n1  1 n1
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
1.7.- Sistemas
Un sistema es una relación matemática entre una señal de entrada y una señal de
salida.
xt 
g 
yt 
yt   g xt 
1.7.1.- Interconexiones básicas
1.7.1.1.- Interconexión serie
1.7.1.2.- Interconexión paralelo
1.7.1.3.- Sistema realimentado
1.7.2.- Propiedades básicas 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 y2 t 
La propiedad de linealidad se resume en el principio de superposición: "La respuesta
a la una combinación lineal de señales de entrada es igual a la combinación de lineal de
sus correspondientes señales 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.
-9-
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
2.- Enunciados
2.1.- Dibujar las siguientes señales sobre el intervalo  2  t  4 .
 2t

b) x2 t   2  0.5t
 0

a) x1 t   ut 1
2t 0
0t 2
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 función “triángulo” que
comienza en (-1,0), llega a (0,1) y termina en (1,0)
e) x5 t   e
f ) x6 t  
2 t
sen 6t 
6t
2
t
g ) x7 t   sen  (intervalo  20, 20 )
t
2
Ejemplos:
a) Una posible solución 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('Señal 1a');
grid;
xlabel('tiempo (segundos)');
ylabel('x1(t)');
Señal 1a
1
0.8
x1(t)
0.6
0.4
0.2
0
-10
- 10 -
-8
-6
-4
-2
0
2
tiempo (segundos)
4
6
8
10
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
Otro programa de Matlab es:
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('Señal 1a');
xlabel('tiempo (segundos)');
ylabel('u(t), u(t-1)');
legend('u(t)', 'u(t-1)')
Señal 1a
u(t)
u(t-1)
1
0.8
u(t), u(t-1)
0.6
0.4
0.2
0
-10
-8
-6
-4
-2
0
2
tiempo (segundos)
4
6
8
10
b) Para resolver este apartado, puede ser conveniente el uso de paréntesis lógicos. Por ejemplo, el alumno
puede considerar
fb = inline('(2+t).*(-2<=t).*(t<0) ')
y ampliarla para conseguir la función 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 señal gaussiana:
1  
xt   e 
t0
- 11 -
t

t0 
2
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
a) Dibujar la señal xt  en el intervalo  2,2 para t0  1, 0.5, 0.1, 0.05, 0.01 sobre la
misma gráfica.
b) Calcula el área de cada una de las señales obtenidas. Puede ser útil la función
quad.
c) ¿Qué ocurre con xt  cuando t0  0 ?
2.3.- Dibujar las siguientes señales, su parte par e impar, y reconstruir la señal original a
partir de ellas:
a) x1 t   e
 t 1
c) x3 t   3sen6t 
2  1  t  3
b) x2 t   
resto
0
c) x4 t   4 cos2t 
2.4.- Dada la siguiente señal:
xt   4e2t cost 
Dibuje xt  y las siguientes señales:
a) xt 1
b) x2  t 
c) x2t  1
t

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 energía de una señal xt  es aproximar el área
de x 2 t  utilizando un intervalo de muestreo muy pequeño. Si, además, xt  es una señal
periódica, podemos calcular su potencia dividiendo la energía de un periodo entre el
periodo.
Dada la señal:
xt   3
sen 2t 
 t 
t
a) Dibuja la señal xt  . ¿Cuál es su relación con la señal 3
- 12 -
sen 2t 
?
t
SEÑALES Y SISTEMAS. PRÁCTICAS 2006/2007
b) Calcula la energía de la señal.
c) Calcula la potencia de la señal si la señal xt  es un periodo de una señal
periódica con T =1.4 segundos.
2.6.- Dibuje las siguientes señales y determine si son señales periódicas, y en ese caso,
cuál es su período fundamental.


a) x1 t   3 cos 4t  
3

- 13 -

b) x2 t   Re e j t 1

c) x3 t   cos2 2t 
Descargar