Exercícios Resolvidos de Transformada Z

Ver Teoria

Enunciado

Obtenha a resposta ao degrau unitário u n para o sistema descrito pela equação de diferenças de segunda ordem:

y n - 3 4 y n - 1 + 1 8 y n - 2 = u n

Considere as condições iniciais iguais a 0 .

Passo 1

O exercício pede para encontrarmos a resposta do degrau unitário para um sistema descrito por uma equação de diferenças de segunda ordem. A solução y da equação de diferenças representa a resposta ao degrau unitário, logo, temos que achar uma expressão para y .

Faremos isso usando a transformada Z, por isso, primeiramente, aplicaremos a função z t r a n s do MATLAB na equação de diferenças para encontrarmos a transformada de y , que indicarems por Y .

Temos que y é em função de n e, como o enunciado não especificou nada, consideraremos que a variável independente das transformadas Z é z , que é o padrão do MATLAB. Logo, a transformada Z de y ( n ) será Y ( z ) .

Após encontrarmos Y ( z ) , vamos aplicar i z t r a n s para encontrar a inversa da transformada, isto é, y ( n ) , que é a solução da equação de diferenças e a resposta ao degrau unitário.

Passo 2

Vamos começar entrando com a equação de diferenças no MATLAB. Em um script novo, digite as linhas de código:

Na primeira linha, definimos as variáveis simbólicas n e y ( n ) (indicamos que y é em função de n ).

Na segunda linha, assumimos que n   >   0 , para que o degrau unitário u , definido logo abaixo, seja igual a 1 .

Na terceira linha, usamos a função h e a v i s i d e para criar o degrau unitário, que é armazenado em u . A função h e a v i s i d e tem a estrutura:

u = h e a v i s i d e ( n )

Ela cria um degrau unitário e o armazena em u : quando n   <   0 , u = 0 . Se n = 0 , u = 1 / 2 . Finalmente, para n >   0 , u = 1 . Como dissemos que n   >   0 , temos u = 1 .

Na quarta linha, entramos com a equação de diferenças na variável e q n , mas dando uma reformuladinha nela, jogando todos os termos para a esquerda e dizendo que ela é igual a 0 .

Passo 3

Com a equação de diferenças no MATLAB, podemos usar a função z t r a n s para calcular a transformada Z dela. Lembrando que z t r a n s tem como estrutura:

F = z t r a n s ( f )

Ela retorna a transformada Z da função f , armazenando-a na variável F . Quando não tem mais nenhuma entrada em z t r a n s além de f , o MATLAB assume que a variável independente de f é n e fará que a transformada Z F seja em função de z .

Acrescente em seu programa o comando abaixo para calcular a transformada Z de e q n :

O resultado é armazenado em E . Para ver como ficou E , rode o programa que fizemos até agora:

Ficou uma expressão bem comprida, mas dá pra perceber que tem um termo aí que aparece umas três vezes. z t r a n s ( y ( n ) ,   n ,   z ) tem exatamente a mesma estrutura da função z t r a n s e representa a transformada Z de y ( n ) , podendo ser substituído por Y ( z ) . No caso, chamaremos Y ( z ) só de Y .

Adicione os comandos abaixo em seu programa para fazer a substituição:

Primeiramente, criamos mais duas variáveis simbolicas: z e Y . Em seguida, usamos a função s u b s para pedir ao MATLAB que substitua em E a expressão z t r a n s ( y ( n ) ,   n ,   z ) por Y . O resultado da substituição é armazenado em E , ficando no lugar daquela expressão comprida que vimos.

Após a substituição, E fica assim:

E tem mais coisa pra substituir aí. O enunciado disse para considerarmos as condições iniciais nulas, isto é, y - 1 = y - 2 = 0 . Para fazer as substituições, adicione ao seu programa a linha de código:

Com este comando, substituímos y ( - 1 ) por 0 e y ( - 2 ) por 0 em E e armazenamos a nova expressão em E , no lugar daquele E mostrado no print acima. Executando o programa, podemos ver como E está agora:

Passo 4

Para encontrar y ( n ) , precisamos encontrar Y ( z ) para daí aplicar nela i z t r a n s , para termos a inversa da tranformada Z. Em E , a variável Y representa Y ( z ) e podemos usar a função s o l v e do MATLAB para encontrá-la. Adicione em seu código:

Com este comando, a função s o l v e resolve a equação E para a variável Y e armazena a solução em Y , atualizando seu valor. Na prática, isolamos Y na equação com este comando e Y passa a representar a expressão algébrica de Y ( z ) . Rodando o programa, temos que Y é igual a:

Quer dizer que:

Y z = 8 z ³ 8 z 3 - 14 z 2 + 7 z - 1

Para encontrarmos y ( n ) , devemos aplicar a inversa da transformada Z em Y ( z ) , isto é, usar a função i z t r a n s do MATLAB em Y . A função i z t r a n s tem a estrutura:

f = i z t r a n s ( F )

Ela retorna a inversa da transformada Z de F , armazenando-a na variável f . Quando não tem mais nenhuma entrada em i z t r a n s além de F , o MATLAB assume que a variável independente de F é z e fará que a inversa da transformada Z f seja em função de n .

Para encontrar Y ( n ) , entre o comando:

Com este comando, o MATLAB calcula a inversa da transformada Z de Y e armazena o resultado em y , atualizando seu valor. y é a solução da equação de diferenças e, rodando o programa, é igual a:

Resposta

A resposta ao degrau unitário u n é:

y n = 1 4 n 3 - 2 1 2 n + 8 3