Sistemas discretos

Anuncio
Sistemas discretos:
· Desplazamiento: x(n-k) (n,k enteros, por supuesto, que estamos en sistemas discretos)
· A la derecha si k>0
· A la izquierda si k<0
· Secuencia periódica: x(n+N)=x(n), N perÃ−odo fundamental
· x(n) periódica <=> Omega0=racional*2*pi => Omega0 y Omega0+2*pi son iguales
=> (fracción), N(perÃ−odo)=denominador de esa fracción IRREDUCIBLE
· Sistemas discretos: Aquellos con entradas y salidas discretas.
· Respuesta al impulso (h(n)=L[delta(n)]). Convolución suma: conv(x(n),h(n))=sum(k=-inf,inf,x(k)*h(n-k))
Al final irá multiplicado por u(n) o algo asÃ− si es causal, claroxtá.
· Propiedades de la convolución suma:
· conv(x(n),delta(n))=x(n)
· conv(h1(n),h2(n))=conv(h2(n),h1(n))
· sistemas en serie => convolución
· sistemas en paralelo => suma o lo que indique el circuito.
· conv(conv(x(n),h1(n)),h2(n))=conv(x(n),conv(h1(n),h2(n)))
· conv(x(n),h1(n))+conv(x(n),h2(n))=conv(x(n),h1(n)+h2(n))
· si h(n) es de duración limitada => Sistema FIR
· Si h(n) es de duración infinita => Sistema IIR
· SLI estable <=> sum(n=-inf,inf,|h(n)|)<inf => FIR siempre estables, pero los IIR pueden, o no, serlo.
· Si x(n) (N1<n<N2), y(n) (M1<n<M2) => z(n)=conv(x(n),y(n)) (N1+M1<n<N2*M2)
* Las convoluciones se pueden hallar casi siempre analiticamente puesto que muchas veces no son más que
progresiones geométicas.
· Sistema causal: h(n)=0 para todo n<0
· Sistemas descritos por ecuaciones en diferencias: sum(k=0,N,a(k)·y(n-k))=sum(k=0,M,b(k)·x(n-k))
<=> sum(k=1,N,a(k)·D(^k)(n))=sum(k=0,M,b(k)·D(^k)·x(n))
1
* Sistema retardador: x(n) ->|D|->x(n-1), h(n)=delta(n-1)
****
Análisis de Fourier de señales periódicas discretas:
· x(n) periódica de perÃ−odo N (x(n)=x(n+N))
· OJO! no hablamos de transformada de fourier, porque seguimos en el dominio del tiempo
· x(n)=sum(k=0,N-1,a(k)·exp(j·2·pi/N·k·n)). Hasta N-1 porque lueo se repite lo mismo (es
periódico), a(k)=1/N·sum(n=0,N-1,x(n)·exp(-j·2·pi/N·k·n)), a(k)=a(k+N)
=>Al no extenderse hasta infinito, siempre converge
· k es el número de armónico (k=0 => componente contÃ−nua, k=1 => componente armónico (o
fundamental)).
· Propiedades:
· Linealidad: A·x1(n)+B·x2(n) <=> A·a(1k)+B·a(2k) (periódicas de perÃ−odo N)
· Desplazamiento: x(n) <=> a(k) => x(n-m) <=>
a(k)·exp(-j·2·pi/N·k·m)=|a(k)|·exp(-j·(2·pi/N·k·m+arg(a(k)))
=> |a(k)|·exp(-j·arg(a(k)))
· SimetrÃ−a (x(n) real): a(k)=conj(a(N-k)) (conj(x)=conjugado de x)
* NOTA: Hay coeficientes a(k) solo hasta (N-1), luego se repiten en el siguiente perÃ−odo.
· Convolución circular: y(n)=convc(x1(n)mx2(n))=sum(m=0,N-1,x1(m)·x2(n-m) <=> N·a(1k)·a(2k)
para todo k
· Producto: x1(n)·x2(n) <=> convc(a(1k),a(2k))
· TParseval: Potencia media =>
Pm=(1/N)·sum(n=0,N-1,|x1(n)|^2)=sum(k=0,N-1,a1(k)·conj(a2(k)))=sum(k=0,N-1,|a1(k)|^2)
· Respuesta en frecuencia:
y(n)=exp(j·omega0·n)·H(omega0)=|H(omega0)|·exp(j·(omega0·n+arg(H(omega0))))
señal de entrada ganancia desfase
· Respuesta a una señal periódica: y(n)=sum(k=0,N-1,[a(k)·H(2·pi/N·k)]·exp(j·2·pi/N·k·n))
------------------>b(k)
x(n)=sum(k=0,N-1,a(k)·exp(j·2·pi/N·k·n)), y(n) periódica con el mismo perÃ−odo (N) que x(n) y
coeficientes b(k)=a(k)·H(2·pi/N·k)
****
2
Transformada de Fourier de una secuencia:
· X(omega)=TF[x(n)]=sum(n=-inf,inf,x(n)·exp(-j·omega·n))
· x(n)=(TF^-1)[X(omega)]=(1/(2·pi))·int(<2·pi>,X(omega)·exp(j·omega·n),omega) Duración 2pi
ya que omega se repite periódicamente cada 2pi en sistemas discretos.
· Convergencia si sum(n=-inf,inf,|x(n)|)<inf
· X(omega)=X(omega+2·pi) es una señal contÃ−nua de perÃ−odo N=2·pi
· TF[exp(j·omega0·n)]:=sum(m=-inf,inf,2·pi·delta(omega-omega0-2·pi·m))
· De la lÃ−nea anterior deducimos:
TF[x(n)]=sum(m=-inf,inf,sum(k=0,N-1,2·pi·a(k)·delta(omega-2·pi/N·k-2·pi·m)))
· Propiedades:
· Linealidad: a1·x1(n)+a2·x2(n) <=> a1·X1(omega)+a2·X2(omega)
· Desplazamiento en tiempo: x(n-n0) <=> emp(-j·omega·n0)·X(omega)
· Diferenciación: n·x(n) <=> j·d(X(omega))/d(omega)
· Convolución: conv(x(n),h(n)) <=> X(omega)·H(omega) (En Serie => producto, En Paralelo => Lo que
indike el diagrama)
· Modulación: x1(n)·x2(n) <=> conv(X1(omega),X2(omega))
· Desplazamiento en frecuencia: exp(j·omega0·n)·x(n) <=> X(omega-omega0)
· Teorema de Parseval:
sum(n=-inf,inf,x(n)·conj(y(n)))=1/(2·pi)·int(0,2·pi,X(omega)·conj(Y(omega)),omega)
* Si x(n)=y(n) => EmergÃ−a=sum(n=-inf,inf,|x(n)|^2)=1/(2·pi)·int(0,2·pi,|X(omega)|^2,omega)
----------------> en tiempo -------------------------> en frecuencia
· SimetrÃ−as:
· Si x(n) real => X(omega)=conj(X(-omega)) => |X(omega)|=|X(-omega)|, arg(X(omega))=-arg(X(-omega))
· x(-n) <=> X(-omega)
· conj(x(n)) <=> conj(X(-omega))
· Muestreo (conversión C/D (ContÃ−nuo/Discreto))
· xa(t)=señal contÃ−nua => x(n)=xa(n·T)=señal discreta, T=perÃ−odo de muestreo
· Para muestrear: xa(t) ->(x)-> xs(t)=sum(x1(n·T)·delta(t-n·T))
3
^-- s(t)=sum(n=-inf,inf,delta(t-n·T))=Tren de deltas
· Efecto del muestreo en el dominio frecuencial:
· X(omega)=TF[x(n)]=sum(-inf,inf,x(n)·exp(-j·n·omega))
· Xa(w)=TF[xa(t)]=int(-inf,inf,xa(t)·exp(-j·w·t),t)
· omega=w·T
· X(omega)=1/T·sum(k=-inf,inf,Xa((omega+2·pi·k)/T))
* Como w -> (omega+2·pi·k)/T hay 3 efectos: omega=w·T, repetición periódica cada 2·pi y
multiplicar por 1/T
* Teorema de Nyquist: Para no perder información, frecuencia de muestreo>=2·B=Bt
· Conversión D/C: Xa(w)=T·rect(w/(2·pi/T))·X(w·T)
----->Bt ----->Señal discreta
--------------->filtro paso panda
· frec(Xa(n))=frec(muestreo)·(1/N)
· Procesado en tiempo discreto de señales contÃ−nuas: ->(C/D)->|H(omega)|->(D/C) <=> ->|Ha(w)|->
· Ha(w)=rect(w/(2·pi/T))·H(w·T), T=1/fmuestreo, omega=w·T
· h(n)=T·ha(n·T)
· H(omega)=sum(k=-inf,inf,Ha((omega+2·pi·k)/T))
****
Transformada Z:
· TZ[x(n)]=sum(n=-inf,inf,x(n)·Z^(-n))=X(Z) ; Z=r·exp(j·omega) => X(Z)=TF[x(n)·r^(-n)],
(X(Z)|(r=1))=X(omega)
· ROC: TZ C <=> TF[x(n)·r^(-n)] C
(igual que antes convergÃ−an en rectas verticales, ahora lo hacen en circunferencias)
· Depende |Z|=r (si C en r·exp(j·omega0) => C en r·exp(-j·omega) para todo omega
· x(n) causal => ROC: |Z|>R+
· x(n) anticausal => ROC: |Z|<R· En general => ROC: R+<Z<R-
4
* Hay que mirar los ceros y los polos en cero e infinito: lim(N/D,Z->x)= 0 (cero) ó inf (polo)
· Propiedades:
· Linealidad: a1·x1(n)+a2·x2(n) <=> a1·X1(Z)+a2·X2(Z), ROC: intersección(ROC1,ROC2) (al
menos)
· Desplazamiento en tiempo: x(n-n0) <=> Z^(-n0)·X(Z), ROC la misma (puede que no en 0 e infinito)
· Escalado en Z: (a^n)·x(n) <=> X((a^-1)·Z), ROC: R+<|(a^-1)·Z|<R- => a·R+<|Z|<a·R· Diferenciación respecto a Z: (n^k)·x(n) <=> -(Z^k)·d(^k)(X(Z))/d(Z), ROC la misma.
· Valor inicial: lim(X(Z),Z=inf)=x(0) (x(n) habrá de ser causal, claroxtá, para que el valor inicial sea en
t=0)
· Valor final: lim((1-(Z^-1))·X(Z),Z=1)=x(inf) (si es ke existe...)
· Convolución: conv(x(n),h(n)) <=> X(Z)·H(Z), ROC: intersección(ROC(X),ROC(H)) (al menos)
* Sistema retardador: x(n)->|delta(n-1)|->x(n-1) <=> X(Z)->|(Z^-1)|->X(Z-1)
· TZ racionales:
X(Z)=N(Z)/D(Z)=sum(i=0,M,b(i)·(Z^-i))/sum(i=0,N,a(i)·(Z^-i))=sum(i=0,M,b'(i)·(Z^i))/sum(i=0,N,a'(i)·(Z^i)),
b(i),a(i) constantes reales.
· Las raices de N(Z) son los ceros y las de D(Z) los polos.
· Ceros y polos aparecen por pares conjugados por ser bi,ai reales.
· Los polos no pueden estar en la ROC => La ROC viene limitada por los polos. De los contrario,
tendrÃ−amos un filtro inestable.
· TZ inversa: (por si vale, recuerda: h(n)=(A^n)·u(n) <=> 1/(1-A·(Z^-1))
· Método de integración: x(n)=1/(2·pi·j)·intcircular(<r>,X(Z)·(Z^(n-1)),Z)
· Desarrollo en series polinomiales (cuando puedas, usa esta): X(Z)=a0+a1·(Z^-1)+.. } x(n)=[a0,a1,...]
}=> x(n)=a(n)
X(Z)=sum(n=0,inf,x(n)·(Z^-n)) }
· Descomposición en fracciones simples:
· hipótesis: x(n) causal (si no, han de darme la ROC), X(Z) racional, polos simples y M=<N
· X(Z)=sum(i=0,M,b'(i)·(Z^i))/sum(i=0,N,a'(i)·(Z^i))=(b'(M)/a'(M))+sum(i=1,N,A(i)/(Z+P(i))), (-P(i))
polos de D(Z), A(i)=((Z+P(i))·X(Z)|Z=-P(i))
------------->Solo aparece si M=N, pero akÃ− es mejor aplicar propiedades de retardos y cosas asÃ−.
5
· x(n)=(b'(M)/a'(M))·delta(n)+sum(i=1,N,A(i)·(-(P(i))^(n-1))·u(n-1))
Al ser causal, C => |Z|>max|-P(i)|
· SLIs discretos racionales: sum(k=0,N,a(k)·D(^k)·y(n))=sum(k=0,M,b(k)·D(^k)·x(n)) =>
H(Z)=Y(Z)/X(Z)=sum(k=0,M,b(k)·(Z^(-k)))/sum(k=0,N,a(k)·(Z^(-k))), función racional
----->retardador de orden k
* Para hallar H(Z): SLIs discretos racionales, h(n)=y(n)|(x(n)=delta(n))<=>H(Z), H(Z)=Y(Z)/X(Z) => De
estas tres formas podemos hallar H(Z)
· Estabilidad y causalidad:
· Estabilidad: circunferencia de radio 1 en la ROC (tb en el borde)
· Causalidad: |Z|>R+
· Para que se cumplan ambas: Los polos han de estar dentro del cÃ−rculo unidad.
· Sistema inverso: Hi(Z)=1/(H(Z)) => Para que sea estable y causal, dado que los ceros pasan a ser polos y
viceversa, ambos han de estar dentro del cÃ−rculo unidad.
****
Diseño de filtros analógicos y digitales:
· Igualador de fase: |Hf(omega)|=1, arg(Hf(omega))=-dirtorsión de fase a compensar,
H(Z)=k·mult(k=1,M,(1-C(k)·Z^(-1))/(1-conj(1/(C(k)))·Z^(-1))
---->multiplicatorio
· Caso contÃ−nuo: Si polo=>pico { se acerca al eje imaginario => pico ó valle más estrecho
cero=>valle { se aleja del eje imaginario => pico ó valle más ancho
{ sobre el eje imaginario => filtro inestable (oscilador)
Caso discreto: Si un polo (ó un cero) de H(Z) está cercano a exp(j·omega0) introduce un pico, si es un
polo, ó un valle, si es un cero, en |H(omega0)|
· Atenuación (dB): alfa(omega)=10·log(1/(|H(omega)|^2))
· Diseño de filtros analógicos (H(s)): (log(x)=log10(x))
· Filtro de Butterworth:
· (|H(w)|^2)=1/(1+(w/wc)^(2·N))
· N=(1/2)·(log((delta1·(2-delta1)·(delta2)^2)/(((1-delta1)^2)·(1-((delta2)^2))))/log(w0/ws)) =>
redondeamos al entero superior más próximo
6
· Pasando por el punto de (1-delta1): wc=wp/((((1/(1-delta1))^2)-1)^(1/(2·N)))
· Pasando por el punto de delta2: wc=ws/(1/(((delta2)^2)-1)^(1/(2·N)))
· H(s)=1/P(N)(s/wc), Pn(s) polinomio de Butterworth de órden N.
· Transformación de frecuencias: s=>s', Z=>Z'
Ej: paso bajo => paso alto: s=wc/s' => s'=wc/s => j·w'=-j·wc/w => w'=-wc/w
· Filtro de Chebyschev:
· El órden del filtro se ve en el número de picos (recuerda que el filtro tiene parte simétrica, hay ke
contarlos todos)
· AkÃ− en lugar de (1-delta1) hay que poner 1/sqrt(1+eps^2)
· (|H(w)|^2)=1/(1+(eps^2)·(C(N)(w/wp))^2)
· C(N)(x) polinomio de Chebyschev de órden N: { cos(N·ArcCos(x)) si |x|=<1
{ cosh(N·ArcCosh(x)) si |x|>1
· C(N)(1)=1, C(N)(x)=2·x·C(N-1)(x)-C(N-2)(x), C(0)(x)=1, C(1)(x)=1
· eps=sqrt((1/((1-delta1)^2))-1)
· Si x y N grandes, C(N)(x)aprox=2^(N-1)·x^N>>1 => N=(6-20·log(delta2·eps))/(6+20·log(ws/wp))
=> redondeamos al entero superior más próximo
· H(s)=A/mult(i=0,N-1,s-s(i)) { S(i)=sigma(i)+j·w(i)
{ sigma(i)=sen((2·i-1)/N)·(pi/2)·senh(beta), i=0,..,N-1
{ w(i)=cos((2·i-1)/N)·(pi/2)·cosh(beta), beta=(1/N)·ArcSenh(1/eps)
* (H(s)|(s=0))=(H(w)|(w=0))=((|H(w)|)|(w=0))
* Para hallar A: H(0)=A/mult(i=0,N-1,-S(i))={ 1 si N impar
{ 1/sqrt(1+eps^2) si N par
· Diseño de filtros digitales IIR (H(Z)):
* Especificaciones filtro digital => especif. filtro analógico => Ha(s) => H(Z)
· Método para la respuesta al impulso invariante:
{ 1+delta1 } { 1+delta1 } { Ha(s)=sum(i=1,N,A(i)/(s+P(i))) <=> ha(t)=sum(i=1,N,A(i)·exp(-P(i)·t))·u(t)
{1-delta1, delta2} => {1-delta1,delta2} => Ha(s) => H(omega)=sum(k=-inf,inf,Ha(omega+2·pi·k)) {
h(n)=ha(n)=sum(i=1,N,A(i)·exp(-P(i)·n))·u(n)
7
{ omegap } { wp=omegap } { => H(Z)=sum(i=1,N,A(i)/(1-exp(-P(i)·Z^(-1))))
{ omegas } { ws=omegas }
· Transformación bilineal:
* filtro estable { s en eje j·w => Z en la circunferencia unidad } => s=(Z-1)/(Z+1)=(1-Z^(-1))/(1+Z^(-1))
{ s en semiplano izquierdo => Z en el cÃ−rculo unidad }
{ 1+delta1 } { 1+delta1 }
{1-delta1, delta2} => {1-delta1,delta2 } => Ha(s) => H(Z)=(Ha(s))|(s=(1-Z^(-1))/(1+Z^(-1)))
{ omegap } {wp=tan(omegap/2)}
{ omegas } {ws=tan(omegas/2)}
--->tan(x)=tangente de x
****
Procesos estocásticos discretos:
(Notación: xva => x, que es una variable aleatoria)
· Nivel instantáneo:
· Valor medio de xva(n) -> E[xva(n)]=int(xva(n)·p(xva(n)),xva(n)), donde p es la fdp
· Potencia media instantánea -> E[|xva(n)|^2]=int(|xva(n)|^2·p(xva(n)),xva(n))
· Varianza -> sigma^2(n)=E[|xva(n)-E[xva(n)]|^2]
· Potencia media = Varianza +(Valor medio)^2
· Memoria o redundancia
· Autocorrelación ->
R(n,k)=E[xva(n)·conj(xva(k))]=int(int(xva(n)·xva(k)·p[xva(n),xva(k)],x(n)),x(k))
· Autocovarianza -> C(n,k)=E[{xva(n)-E[xva(n)]}·(conj(xva(k))-E[conj(xva(k))])]
· Proceso estacionario en sentido amplio:
· El nivel se mantiene con n:
· E[xva(n)]=mu=cte para todo n
· E[|xva(n)|^2]=p=cte para todo n
· sigma^2(n)sigma^2=cte para todo n
8
· La redundancia depende de n-k:
· R(n,k)=R(n-k)= R(m) (ahora ya es unidimensional) = E[xva(n+m)·conj(xva(n))]
· C(n,k)=C(n-k)=C(m)
· R(0)=potencia media
· DEP: S(omega)=TF[R(m)]=sum(R(m)·exp(-j·omega·m)) =>
R(m)=TF^(-1)[S(omega)]=(1/(2·pi))·int(-pi,pi,S(omega)·exp(j·m·omega),omega)
· Propiedades del par R(m) <=> S(omega)
· R(0)=(1/(2·pi))·int(-pi,pi,S(omega),omega)=potencia media=E[|x(n)|^2]
· R(m)=conj(R(-m)), hermiticidad => S(omega) es real
· S(omega) >= 0 para todo omega, R(0) >= |R(m)| para todo m
· Relaciones a la salida de un filtro:
· Ryy(m)=conv(Rxx(m),h(-m),h(m))
· Syy(omega)=Sxx(omega)·|H(omega)|^2
****
Notas:
· |X|^2=X·conjugado(X)
· Delta(t) = (+inf si t=0, 0 si t<>0)
· rect((w-w0)/Bt) es un pulso rectangular centrado en w0 y de anchura total Bt.
· Sistema h(n) no periódico => H(omega)=sum(n=0,inf,h(n)·exp(-j·omega·n))
· Progresión geomética => S=(el primero - el último·razón)/(1-razón)
· Muchas veces el poner senos y cosenos como exponenciales simplifica mucho el análisis.
· En los filtros, el lÃ−mite superior se planta en 1, no en 1+delta1.
· omega=w·T (T => perÃ−odo de muestreo)
· delta(n-n0) <=> exp(-j·omega·n0)
· conv(a·delta(n-n0),b·delta(n-m0))=a·b·delta(n-n0-m0)
· X(omega)·delta(omega-omega0)=X(omega0)·delta(omega-omega0)
· Si X no es una variable aleatoria => E[X]=X
9
· mÃ−nimo común múltiplo: comunes y no comunes con su máximo exponente.
10
Descargar