Você está na página 1de 10

DELT/UFMG - ELT 088 – ASDL - Estudo Dirigido – Prof.

Maurílio Nunes Vieira

Sistemas de 1ª ordem

1. Arduino: Entradas analógicas

Um potenciômetro (Figura 1) é um componente que possui resistência elétrica ajustável. O


potenciômetro da figura possui três terminais e a conexão central é rotativa. A variação da
resistência pode ocorrer linearmente ou de forma exponencial com a rotação do cursor,
dependendo da fabricação.

Na Figura 2, o potenciômetro é usado como um divisor de tensão para a entrada analógica de


um Arduino. As entradas analógicas do Arduino têm impedância elevada em relação à
resistência do potenciômetro, a corrente de entrada é desprezível e não há “efeito de carga”
sobre o potenciômetro..

O Arduino UNO possui 6 canais de conversão analógico-digital, identificados por A0, A1, A2,
A3, A4 e A5. O conversor AD do Arduino tem a resolução de 10 bits e converte os dados lidos
pela entrada analógica em valores na faixa de 0 a 1023. A taxa de amostragem da conversão é
de até 10 MHz. Desta forma, se a tensão de entrada varia de 0-5 V, a leitura dar-se-á com uma
resolução de 5.0 V/1023 = 4,8 mV. Este valor é o erro de quantização para as entradas do
Arduino.

Figura 1. Trimpots e potenciômetros. Existem várias outras formas de construção.


A saída do divisor de tensão é usada como sinal de entrada analógica para o Arduino na Figura
2. A tensão na saída do divisor será lida e quantizada com 10 bits, isto é, os valores assumirão
níveis entre 0 e 1023, isto é, 210 – 1. Os valores lidos serão mostrados no computador através
do “monitor serial”.

Figura 2. Divisor de tensão com um potenciômetro.


Figura 3. Código para leitura de entrada analógica.

1) Monte o circuito da Figura 2, que mostra o diagrama esquemático do circuito com


o potenciômetro, ligado no pino analógico 0 (A0).
2) Digite, compile e execute o programa da Figura 3. Para verificar o funcionamento e
visualizar os valores lidos na entrada analógica, abra o monitor serial da sua IDE
em: Menu → Ferramentas → Monitor Serial. Gire o potenciômetro e veja o que
ocorre. Desejavelmente, ao aumentar-se o ângulo de rotação, a tensão deverá
aumentar. Se isto não ocorrer, inverta a conexão dos terminais fixos do
potenciômetro.
2. Suavizador em tempo discreto (filtro passa-baixas)

Figura 4. Sistema de
1ª ordem de tempo
contínuo.

dy (t )
No circuito da Figura 4, pode-se escrever que x(t )  R  i(t )  y(t ) . Como i (t )  C ,
dt
segue que
dy (t )
x(t )  RC  y (t ) (1)
dt
Esta equação pode ser discretizada amostrando-se os sinais em intervalos “pequenos” em

relação à constante de tempo 𝜏 = 𝑅𝐶 do circuito, isto é, em t  nT , onde T  RC . Assim,

a equação 1 pode ser escrita como

y[nT ]  y[(n  1)T ]


x[nT ]  RC  y[nT ] (2)
T

Isolando-se a saída y[nT ] segue que

1 RC / T
y[nT ]   x[nT ]   y[(n  1)T ] (3)
1  RC / T 1  RC / T

1 RC / T
Por fim, definindo-se   , segue que 1    e a equação 3 pode ser
1  RC / T 1  RC / T
reescrita como

y[n]    x[n]  (1   )  y[(n  1)] (4)

Note que 0    1.

Esta equação está representada no diagrama de simulação da

Figura 5.
Figura 5. Sistema de 1ª. ordem de tempo discreto

A versão discreta do filtro RC será implementado (Figura 6) para processar uma entrada
analógica de um arduino. No caso, os dados da entrada A0 (isto é, a entrada x) serão
processados (suavizados) por um filtro passa-baixas que gera a saída y. Ela corresponde a uma
média onde o valor atual da entrada x tem um peso pequeno ( = alfa) em relação ao peso
(1.0 – alfa) dado aos valores acumulados na saída anterior y_ant. Os valores de alfa poderiam
ser especifados em termos da constante RC, como está definido na Equação. 3. O programa é
mostrado na Figura 7.

Figura 6. Sistema de
1ª. ordem de tempo
discreto

Os valores podem ser visualizados graficamente usando o plotter serial. Neste caso, o código
precisa ser alterado para enviar o valor da entrada Serial.print(x), separados por um espaço
Serial.print(“ ”) e seguido do valor da saída terminado com uma nova linha Serial.println(y) .

O plotter serial é acessado por Menu → Ferramentas → Plotter Serial. Após lançar o aplicativo,
ele deverá ser ajustado para a mesma velocidade de comunicação do definida no comando
Serial.begin() do programa.
Figura 7. Filtrando a entrada analógica
3. Comparando sistema analógico e digital

Figura 8. Montagem. Comparando sistemas de tempo contínuo e discreto

Na Figura 8, a entrada e a saída do sistema de tempo contínuo (circuito RC) serão amostradas
e simuladas no Arduino. A chave representando x(t) pode estar ligada a Vcc (carregando o
capacitor) ou ao terra (descarregando-o).

3.1 Diferenças finitas. As simulações serão feitas usando a equação a diferença finitas
(Equação 3) como mostra o código da Figura 9.

Figura 9. Código. Comparando sistemas de tempo contínuo e discreto


3.2 Convolução. Também é possível obter a saída convoluindo a entrada com a resposta
inpulsiva do circuito RC. Ela será discretizada (amostrada) e truncada em alguns pontos.

Sabendo-se que a resposta ao degrau do circuito RC é s(t )  [1  et /( RC ) ]  u(t ) , segue,


derivando, que

1
h(t )  e t /( RC )  u(t )
 (5a)

Discretizando, as amostras da resposta impulsiva são

1
h[n]  e nT /( RC ) , 0  n  N , t  RC
 (5b)

O programa na Figura 10 mostra uma realização possível do sistema por meio da convolução
com a resposta impulsiva truncada. Estude-o, compile e execute, e verifique o comportamento
das formas de onda no plotter serial. Varie os parâmetros N e T e veja o que ocorre.
Figura 10. Convoluindo a entrada com a resposta impulsiva truncada
[continua]
[Figura 10. Continuação]

Você também pode gostar