Geothermal Power Plant At Dusk (Iceland),
Este exemplo não é tão simples quanto os anteriores. A idéia com este exemplo é mostrar que a saída de um sistema pode ser realimentada (aproveitada) dentro do próprio sistema, isto é, neste sistema a saída depende de amostras de saída anteriores e não apenas das amostras de entrada, algo como:
Um sistema discreto baseado numa equação de diferenças pode permitir determinar (aproximadamente) como a temperatura de um copo de água mudaria se ele fosse colocado em uma geladeira fria. Esperamos que você possa perceber que a temperatura do copo de água cairia gradativamente até atingir a mesma temperatura da geladeira.
Este modelo toma a diferença de temperatura inicial entre a água e a geladeira como a entrada e fornece a mudança na temperatura relativa à temperatura inicial ao longo do tempo como a saída . Como a temperatura do copo de água acabará por corresponder à temperatura da geladeira, então eventualmente atingirá um valor quase constante e atingirá um estado estacionário (valor constante em regime permanente).
Seria uma equação como:
(eq. 1)
Este modelo foi derivado da Lei do Resfriamento de Newton. A constante é chamada de constante de resfriamento e depende da quantidade de água no vidro e do isolamento térmico fornecido pelo vidro que contém a água. A variável é o intervalo de amostragem usado pelo sistema. O produto não deve ser superior a 0,01 para garantir que este modelo seja razoavelmente preciso.
A constante geralmente é determinada por meio de experimentação e, uma vez encontrada, você pode usar este modelo para prever como a temperatura de um copo de água mudaria ao longo do tempo para qualquer diferença de temperatura inicial e qualquer temperatura do refrigerador (uma vez que a água permaneça líquida!). Você também precisaria cobrir o vidro para evitar qualquer evaporação em caso de altas temperaturas!.
Transformando a eq. (1) num diagrama de fluxo de sinais teríamos:
Como exemplo, vamos tentar modelar como a temperatura de um copo de água mudaria se ele estivesse inicialmente em 15 °C e depois fosse colocado em uma geladeira a 4 °C. A diferença é, portanto, de 11 °C e a entrada será uma sequência de valores de amostragem que são todos valores iguais à 11:
Neste exemplo, definiremos a constante de resfriamento como valendo 0,01. Como estamos sintetizando o sinal de entrada, podemos usar qualquer valor de que desejarmos ( período de amostragem); quanto menor o valor de , mais preciso será o modelo; no entanto, se for muito pequeno, teremos que realizar muitos cálculos antes que a saída alcance um estado estacionário. Um valor razoável para neste caso é 1.
A equação de diferenças (eq. (1)) fica portanto:
Usando Matlab/Octave:
>> k=0.01; T=1;
>> b=(-k*T)/(1+k*T)
b =
-0.009901
>> a=1/(1+k*T)
a =
0.9901
Assim a eq. (1) ficaria:
Para determinar a saída do sistema, você precisa resolver esta equação de diferenças para diferentes valores de . Resolver para resulta:
Como e não foi definido, teremos:
Usando Matlab:
Notar que no Matlab, os índices de vetores/matrizes iniciam em 1 e não em 0, então:
xxxxxxxxxx
>> y(1)=b*11
y =
-0.10891
Resolvendo agora para , teremos:
Usando Matlab
xxxxxxxxxx
>> y(2)=b*11+a*y(1)
>> y(2)
ans =
-0.21674
Todas as amostras de saída restantes podem ser determinadas de maneira semelhante, o que é possível, mas um tanto tedioso. Na prática, um computador seria usado para determinar as amostras de saída.
A tabela à abaixo mostra as primeiras 7 amostras de saída do modelo de sistema discreto e você deve certificar-se de poder resolvê-las manualmente para garantir que entendeu o processo.
n | x[n] | y[n] |
---|---|---|
0 | 11 | -0.10891 |
1 | 11 | -0.21674 |
2 | 11 | -0.32351 |
3 | 11 | -0.42922 |
4 | 11 | -0.53388 |
5 | 11 | -0.6375 |
6 | 11 | -0.7401 |
O gráfico à seguir mostra um gráfico de 1.000 amostras de saída e você deve notar que a saída atinge o que é conhecido como estado estacionário após cerca de 400 amostras ( 393 segundos), o que corresponde a 500 segundos neste exemplo, já que o intervalo de amostragem é de 1 segundo.
Lembre-se de que a saída representa a alteração do valor de entrada inicial, portanto a leitura de estado estacionário de -11 °C significa que a temperatura do copo de água eventualmente atinge 4 °C (valor inicial de 15 °C menos 11 °C).
Exercício Proposto: use o Matlab ou Octave para gerar os valores de para .
Sobre a eq. (1) capaz de modelar um sistema térmico:
Note que se fizermos:
A eq. (1) pode ser re-escrita como:
Como: , teremos:
ou seja, resultaria num sistema de 1a-ordem, com um zero na origem e um pólo.
A mesma conclusão poderia ser obtida reescrevendo a eq. (1) no formato padrão de equações de diferença:
ou:
Aplicando a transformada-, temos:
Adaptando para o uso com a função filter()
fica:
x>> x = 11*ones(7,1) % inicializando o vetor x[n]
x =
11
11
11
11
11
11
11
>> k = 0.01; T=1;
>> b = (-k*T)/(1+k*T);
>> a = 1/(1+k*T);
>> T = 1; % período de amostragem adotado (1 segundo = 1 Hz)
>> N = b; % preparando o numerador
>> D = [1 -a]; % preparando o denominador
>> H = tf(N, D, T) % montando a tf deste "filtro" (modelo)
H =
-0.009901
----------
z - 0.9901
Sample time: 1 seconds
Discrete-time transfer function.
>> y = filter(N, D, x)
>> n = 0:6;
>> [n' y]
Obs. sobre a funçao filter()
do Matlab, clique [ aqui ].
Fim.
Fernando Passold, 29/03/2024.