SEÑALES Y SISTEMAS CON MATLAB
Sebastián Sebastián Araujo
1
Índice 1. Gráfico de una señal p erió dica
3
2. Cálculo de la energía total y de la potencia media de una señal
3
2.1. Potencia de señales per periódicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
3. Gráfico de una función definida por pedazos
4
4. Transformaciones de la variable independiente
5
5. Señales elementales
5.1. 5.2. 5.3. 5.4. 5.5. 5.6.
Escalón unidad . . . . . . . . . . . . . . . Pulso rectangular . . . . . . . . . . . . . . Función signo . . . . . . . . . . . . . . . . La función rampa . . . . . . . . . . . . . . La función de muestreo . . . . . . . . . . Impulso unidad . . . . . . . . . . . . . . . 5.6.1. Desplazamiento . . . . . . . . . . . 5.6.2. Aproxima macción de un Dira irac con sinc
5
. . . . . . . .
. . . . . . . .
6. Convolución
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . .
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
. . . . . . . . . . . . . . ..
5 6 7 8 8 9 10 10 11
6.1. 6.1. Convo Convoluc lución ión de dos dos puls pulsos os rect rectang angula ulares res que nos da como como result resultado ado un ppuls ulsoo trian triangul gular ar . . . 11 6.2. Otro ejemplo de convolución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2
1. Gráfi Gráfico co de una una señ señal al per periódi iódica ca Graficar Graficar una señal periódica definida por:
Usamos el código:
f (t) = t f 0 (
%gráfica una función periódica t=0:0.1:pi; ft=t; for n=-3:3 tt=t+n*pi; hold on plot(tt,ft) hold off end
lo que nos produce:
2. Cálc Cálcul ulo o de la energí energía a total total y de la potenc potencia ia media media de una seña señall Definimos la energía total como: L
E = lim
L→∞
ˆ
−L
y la potencia media como:
3
|f (t)|2 dt
1 P = lim L 2L →∞
ˆ
L
|f (t)|2 dt
−L
Para calcular calcular la primera primera integral de forma simbólica simbólica podemos usar: syms t E=int(abs(f(t))^2,t,-inf,inf)
Para la potencia podemos primero integrar: syms L integral =int(abs(f(t))^2,-L,L)
y luego calcular el límite con: P=limit(integral/(2*L),L,inf)
Para evaluar la integral como un número decimal: format long eval(E) eval(P)
2.1. 2.1.
Poten Potencia cia de seña señales les periódic periódicas as
En este caso P está se calcula por: P =
1 T
ˆ
T
|f (t)|2 dt
0
El cálculo es por la misma vía utilizando como variables syms t y T .
3. Gráfi Gráfico co de una una fun funci ción ón defin definid ida a por pedaz pedazos os Graficar la función:
−t + 1 t x(t) = 2 0
−1 t < 0 0≤t<2 2≤t≤3 t>3
%gráfica de una función definida a pedazos t1=-1:0.01:0; xt1=-t1+1; plot(t1,xt1) t2=0:0.01:2; xt2=t2; hold on plot(t2,xt2) t3=2:0.01:3; xt3=2; plot(t3,xt3)
4
t4=3:0.01:7; xt4=0; plot(t4,xt4) hold off axis([-2 7 -1 4]) xlabel(’t’) ylabel(’x(t)’) title(’Señal title(’Señal a trozos’) trozos’) Señal a trozos 4
3.5
3
2.5
2 ) t ( x
1.5
1
0.5
0
−0.5
−1 −2
−1
0
1
2
3
4
5
6
7
t
4.
Transformacio ransformaciones nes de la variable variable independien independiente te Calcular y graficar basado en el ejemplo anterior la señal: x(−3t − 2)
5. Seña Señale less elem elemen enta tales les 5.1. 5.1.
Esca Escaló lón n unid unidad ad
heaviside %ejemplo de paso unitario en 5 t=-10:.1:10; paso5=heaviside(t-5); plot(t,paso5) axis([-10 10 -2 2]) xlabel(’t’) ylabel(’u(t)’) title(’Paso unitario en 5’)
5
Paso unitario en 5 2
1.5
1
0.5
) t ( u
0
−0.5
−1
−1.5
−2 −10
−8
−6
−4
−2
0
2
4
6
8
10
t
Calcular y graficar: x(t) = u(t + 2) − 2u(t + 1) + 2 u(t) − u(t − 2) − 2u(t − 3) + 2u(t − 4)
5.2. 5.2.
Pulso Pulso rectan rectangul gular ar
rectpuls Un pulso rectangular centrado en 2 de ancho 4 y de amplitud 5: %pulso rectangular t=-10:0.01:10; pulsorec=5*rectpuls(t-2,4); plot(t,pulsorec) title(’Pulso rectangular’) xlabel(’t’) axis([-10 10 0 6])
6
Pulso rectangular 6
5
4
3
2
1
0 −10
5.3. 5.3.
−8
−6
−4
−2
0 t
2
4
6
Funció unción n sign signo o
Graficar sign(t-5) %función signo en 5 t=-10:.1:10; signo5=sign(t-5); plot(t,signo5) axis([-10 10 -2 2]) xlabel(’t’) ylabel(’sign(t)’) title(’Signo en 5’)
7
8
10
Signo en 5 2
1.5
1
0.5 ) t (
n g i s
0
−0.5
−1
−1.5
−2 −10
5.4. 5.4.
−8
−6
−4
−2
0 t
2
4
6
La funci función ón ramp rampa a
ramp 5.5. 5.5.
La func funció ión n de mue muest stre reo o
Graficar la función seno cardinal. %gráfico del sinc t=-10:.1:10; sapi=sinc(t); plot(t,sapi) axis([-10 10 -2 2]) xlabel(’t’) ylabel(’sinc(t)’) title(’Sinc de t’)
8
8
10
Sinc de t 2
1.5
1
0.5
) t ( c n i
0
s
−0.5
−1
−1.5
−2 −10
−8
−6
−4
−2
0
2
4
6
8
10
4
6
8
10
t
5.6. 5.6.
Impu Impuls lso o unid unidad ad
Usamos dirac t=-10:0.1:10; plot(t,dirac(t-2)) xlabel(’t’) ylabel(’dirac(t-2)’) title(’Un delta de Dirac en t=2’) Un delta de Dirac en t=2 1
0.8
0.6
0.4
0.2 ) 2 − t ( c a r i d
0
−0.2
−0.4
−0.6
−0.8
−1 −10
−8
−6
−4
−2
0
2
t
9
5.6.1. 5.6.1.
Desplazam Desplazamien iento to
Propiedades del delta de Dirac en variable simbólica syms x x1=x^2+1 dirac(x-3) %desplazamiento int(dirac(x-3)*x1,-inf,inf) %derivación diff(heaviside(x-3)) %desplazamiento con la derivada del Dirac diracprim=diff(dirac(x-3)) int(x1*diracprim,-inf,inf) 5.6.2. 5.6.2.
Apro Aproxim ximaci ación ón de un Dirac Dirac con sinc sinc
Escalamos y aumentamos la amplitud del seno cardinal: t=-10:0.1:10; diracsinc=100*sinc(100*t); plot(t,diracsinc) title(’Dira title(’Diracc aproximado aproximado con un seno cardinal’) cardinal’) xlabel(’t’) ylabel(’100*sinc(100*t)’) Dirac aproximado con un seno cardinal 100
80
60 ) t * 0 0 1 ( c n i s * 0 0 1
40
20
0
−20 −10
−8
−6
−4
−2
0 t
2
4
6
10
8
10
6. Con Convolu voluci ción ón 6.1. 6.1.
Convoluc Con olució ión n de do doss puls pulsos os rect rectan angu gula lare ress que que no noss da como como resu result ltad ado o un pulso triangular y (t) = rect(t) ∗ rect(t) ∞
y(t) =
ˆ
rect(τ )rect(t − τ )dτ
−∞
t=-10:0.1:10; y=conv(rectpuls(t),rectpuls(t)); plot(y)
Graficar la nueva señal redefiniendo correctamente el nuevo vector t . Verificar length(y) y length(t). t=-10:0.1/2:10; plot(t,y)
6.2. 6.2.
Otro Otro ejemp ejemplo lo de de conv convolu olució ción n
−t
x1 (t)
= 3e
x2 (t)
=
t
0≤t<∞ 0≤t<2
2
Graficar las funciones, calcular la convolución, graficar el resultado: y(t) = x1 (t) ∗ x2 (t)
Podemos expresar nuestras funciones usando pasos unitarios: %convolución y gráficos de dos funciones t=-10:0.01:10; x1=3*exp(-t).*heaviside(t); subplot(3,1,1) plot(t,x1) x2=(t/2).*heaviside(-(t-2)).*heaviside(t); subplot(3,1,2) subplot(3,1,2) plot(t,x2) plot(t,x2) y=conv(x1,x2) t=-10:0.01/2:10; subplot(3,1,3) plot(t,y)
11
3
2
1
0 −10
−8
−6
−4
−2
0
2
4
6
8
10
−8
−6
−4
−2
0
2
4
6
8
10
−8
−6
−4
−2
0
2
4
6
8
10
1
0.5
0 −10
1 0.5 0 −0.5 −1 −10
Matlab tiene conflicto al usar heviside y dirac (symbolic toolbox) dentro de la operación convolución. El resultado por lo tanto no es válido. La solución consiste en usar funciones del signal processing toolbox , en este caso sirve rectpuls. %convolución y gráficos de dos funciones usando rectpuls t=-10:0.01:10; x1=3*exp(-t).*rectpuls(t-5,10); subplot(3,1,1) plot(t,x1) ylabel(’x1(t)’) x2=(t/2).*rectpuls(t-1,2); subplot(3,1,2) plot(t,x2) ylabel(’x2(t)’) y=conv(x1,x2); t=-10:0.01/2:10; subplot(3,1,3) plot(t,y) title(’Convolucion de las dos funciones’) xlabel(’t’)
12
3
) t ( 1 x
2
1
0 −10
−8
−6
−4
−2
0
2
4
6
8
10
−8
−6
−4
−2
0
2
4
6
8
10
4
6
8
10
1
) t (
2 0.5 x
0 −10
Convolucion de las dos funciones 200 150 100 50 0 −10
−8
−6
−4
−2
0
2
t
13
Referencias [1] Mari J.-L, Glangeaud, F., Coppens, F., 1997, Traitament du signal pour géologues et géophysiciens, Éditions Technip. [2] Soliman Soliman S.S., D.S. Mandyam, Mandyam, 1999, Señales Señales y sistemas sistemas continuos continuos y discretos, discretos, Prentice Prentice Hall.
14