Você está na página 1de 4

UNIVERSIDADE CATÓLICA DE GOIÁS ENG.

ELÉTRICA

Exper.
Sistemas Lineares Invariantes no Tempo
4 e a Operação de Convolução

Objetivo
 Estudar e verificar as propriedades de Linearidade e Invariância no Tempo dos SLIT’s;
 Estudar o conceito de Resposta do Sistema ao Impulso Unitário;
 Desenvolver o conceito da Operação de Convolução para SLIT’s de tempo discreto.

Fundamentação Teórica
SLIT – Sistema Linear Invariante no Tempo

Um sistema é dito ser LINEAR se ele obedece ao Princípio da Superposição. Dado um sistema com
entrada x1(t) associada à saída y1(t), entrada x2(t) associada à saída y2(t), e assim por diante até a n-ésima entrada
xN(t) associada à n-ésima saída yN(t).

x1(t) y1(t)
h(t)

x2(t) y2(t)
h(t)
.
.
.
xN(t) yN(t)
h(t)

ou

N
x(t ) = ∑ a K x K (t )
N
h(t) y (t ) = ∑ a K y K (t )
k =1
k =1

Figura 1 – Sistema Linear

Um sistema é dito ser INVARIANTE NO TEMPO se um retardo, ou avanço, de tempo do sinal de entrada
resultar em um deslocamento de tempo idêntico ao sinal de saída. As características de um sistema invariante no
tempo não se alteram com o tempo.

x[n] y[n] x[n – No] y[n – No]


h[n] h[n]

Figura 2 – Sistema Invariante no Tempo Discreto

Sistemas que apresentam as características de linearidade e invariância no tempo são conhecidos por
Sistemas Lineares Invariantes no Tempo – SLIT’s.

1
UNIVERSIDADE CATÓLICA DE GOIÁS ENG. ELÉTRICA

Representação de Sinais de Tempo Discretos em Termos de Impulsos Unitários

Podemos representar qualquer sinal discreto no tempo como um produto de suas amostras pela função
impulso deslocada no tempo. Vejamos um exemplo: seja o sinal discreto no tempo, representado na Figura 3:

x[n]
x[0]
x[-1]
1
... -4 -3 -2 -1 0 2 3 4
... n
x[1]

Figura 3 – Sinal Discreto no Tempo

Podemos representar cada amostra de x[n] em termos da função impulso, como se segue:

 x[ −1], n = −1
x[ −1].δ [n + 1] = 
0, n ≠ −1
 x[0], n = 0
x[0].δ [n] =  (1)
0, n≠0
 x[1], n =1
x[1].δ [n − 1] = 
0, n ≠1

Assim, podemos representar o sinal x[n] decomposto em impulsos unitários por:

x[n] = x[−1].δ [n + 1] + x[0].δ [n] + x[1].δ [n − 1] (2)

Podemos generalizar essa representação para qualquer sinal discreto contendo amostras entre − ∞ a +∞:

x[n] = • • • + x[−2].δ [n + 2] + x[−1].δ [n + 1] + x[0].δ [n] + x[1].δ [n − 1] + x[2].δ [n − 2] + • • •


+∞
x[n] = ∑ x[k ].δ [n − k ]
k = −∞
(3)

A Operação de Convolução

A resposta de um sistema discreto a uma entrada Impulso Unitário é a saída devido a uma entrada de
amplitude unitária aplicada no tempo zero (n = 0). A Resposta ao Impulso Unitário, h[n], caracteriza
completamente o comportamento dinâmico de um determinado SLIT.

δ [n] SLIT h[n ]

Figura 4 – Resposta de um Sistema ao Impulso Unitário

Supondo que o operador T{·} (transformação linear) descreva o sistema no qual a entrada x[n] é aplicada, e
usando a Equação (3) para representar a entrada x[n] para esse sistema, teremos como saída do sistema o sinal y[n]:

 +∞ 
y[n] = T  ∑ x[k ]δ [n − k ] (4)
k = −∞ 

2
UNIVERSIDADE CATÓLICA DE GOIÁS ENG. ELÉTRICA

Agora, usando a propriedade da linearidade (homogeneidade e aditividade) para trocar o operador de


transformação do sistema T{·} com o somatório, obtemos:

+∞ +∞
y[n] = ∑ x[k ].T {δ [n − k ]} =
k = −∞
∑ x[k ]h [n]
k =−∞
k (5)

em que hk [n] = T {δ [n − k ]} é a resposta do sistema a um impulso unitário aplicado no tempo k. Supondo que o
sistema seja invariante ao tempo, um deslocamento de tempo no sinal da entrada resultará em um mesmo
deslocamento de tempo no sinal de saída. Isto implica que a saída devido a um impulso deslocado no tempo também
é uma versão deslocada no tempo devido ao impulso na origem; ou seja, hk [ n] = h0 [ n − k ] . Admitindo que
h[n] = h0 [n] seja a resposta ao impulso do sistema T{·} do tipo SLIT. Assim, a Equação (5) pode ser reescrita
como:

+∞
y[n] = ∑ x[k ]h[n − k ]
k = −∞ (6)

Assim, a saída de um SLIT para uma dada entrada x[n] é dada pela soma ponderada de respostas ao
impulso deslocadas no tempo. A soma na Equação (6) é chamada de soma da convolução e essa operação é
indicada pelo símbolo * (asterisco), ou seja:

+∞
y[n] = x[n] * h[n] = ∑ x[k ]h[n − k ]
k = −∞
(7)

A convolução de um sinal de tempo contínuo x(t) por um sistema com resposta impulsiva h(t), por analogia,
pode ser expressa por:

+∞
y (t ) = x(t ) * h(t ) = ∫ x(τ ) h(t − τ ) dτ (8)
−∞

EXEMPLO

Cálculo da convolução do sinal de entrada x[n] aplicado ao sistema h[n], conforme equações abaixo:

 n, 0≤n≤3
x[n] = u[n] − u[n − 4] e h[n] = 
0, outros valores.

RESOLUÇÃO:
+∞
y[ n] = x[ n] * h[n] = ∑ x[k ]h[n − k ] ,
k =−∞
+3
mas x[k ] = 1 para 0 ≤ k ≤ 3, logo : y[n] = ∑1.h(n − k )
k =0

y[0] = h[0] + h[−1] + h[−2] + h[−3] = 0


y[1] = h[1] + h[0] + h[ −1] + h[−2] = 1
y[ 2] = h[2] + h[1] + h[0] + h[−1] = 3
y[3] = h[3] + h[2] + h[1] + h[0] = 6
y[ 4] = h[4] + h[3] + h[2] + h[1] = 6
y[5] = h[5] + h[4] + h[3] + h[2] = 5
y[6] = h[6] + h[5] + h[4] + h[3] = 3
y[7] = h[7] + h[6] + h[5] + h[4] = 0

3
UNIVERSIDADE CATÓLICA DE GOIÁS ENG. ELÉTRICA

O índice k varia de 0 a 3, pois somente nestas situações x[k] será diferente de zero (e igual a um), não sendo,
portanto, necessário se avaliar a soma para outros valores da variável k.

Material Utilizado
Software MATLAB.

Procedimento Prático
1 – Desenvolva um programa Matlab para resolver o Exemplo 1. Trace os gráficos.

2 - Dadas os sinais x[n] e h[n], desenvolva um programa Matlab para traçar o gráfico da convolução entre eles.
x[n] = (0.5) u[n]
n
h[n] = u[n]

Dica: n=-5:5; x = ((0.5).^n) .* degrau(n)1;

3 - Idem para: x[n] = 2u[n + 2] − 2u[n − 12] h[n] = 0.9 n { u[n − 2] − u[n −13]}

Dica: n=-15:15; h = ((0.9).^n)) .* (degrau(n-2) - degrau(n-13));

4 - O que faz o seguinte trecho de programa?

n =-10:10; % base temporal (índices das amostras)


x = degrau(n) - degrau(n-4); % sinal de entrada para o sistema
subplot(3,1,1); stem(n,degrau(n))
subplot(3,1,2); stem(n,degrau(n-4))
subplot(3,1,3); stem(n,x)

h = zeros(size(n));
h(11:14) = 0:3; % resposta ao impulso do sistema

y = conv(x,h); % saída do sistema (convolução entre x e h): y = x*h


i = min(find(y>0.1)); % descobre a posição do 1o. valor de y maior que zero

figure
subplot(3,1,1); stem(n,x)
subplot(3,1,2); stem(n,h)
subplot(3,1,3); stem(n,y(n+i))

Grave o código desta função em um arquivo separado do programa anterior. O nome do arquivo para essa função
deverá ter o mesmo nome da função: degrau.m

function y = degrau(n)
%
% y = degrau(n) gera um sinal degrau de acordo com a base de tempo ‘n’
%
y = zeros(size(n));
y(n >= 0) = 1;

1
A função degrau(n) não é uma função predefinida do Matlab e, portanto vc precisará criá-la conforme instruído na parte inferior
dessa página.

Você também pode gostar