07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

50
Dados analógicos no ARDUINO Professor Victory Fernandes

description

Arduino

Transcript of 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Page 1: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Dados analógicos noARDUINO

Professor Victory Fernandes

Page 2: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Entrada de dados analógicas Saídas de dados analógicas

Neste capítulo...

Page 3: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Olhe a sua volta...

Page 4: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Olhe novamente...

Page 5: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Analógico x Digital Analógico Variação contínua de uma variável

Todas as grandezas físicas naturais velocidade, pressão, temperatura, corrente elétrica, tensão, resistência

Para atingir o valor desejado qualquer é preciso passar por todos os valores intermediários

Existem infinitos valores assumidos entre dois pontos quaisquer

Page 6: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Analógico x Digital Digital Variação discreta

Passagem de um valor a outro se dá por saltos Existem finitos valores assumidos entre dois pontos

quaisquer

Page 7: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Exemplo da placa de audio Conversor A/D para capturar a voz no microfone e

grava-la como arquivo Conversor D/A para reproduzir o som gravado nas

caixas de som

Page 8: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversão A/D e D/A

Page 9: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Armazenamento Informações armazenadas em arquivos em forma

de bits

Page 10: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D

Page 11: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores D/A

Page 12: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Amostragem O sinal originalmente contínuo é discretizado O sinal é amostrado em intervalos fixos de tempo e

a essa taxa dá-se o nome de taxa de amostragem com freqüência dada em Hertz [Hz] Quantidade de vezes que o sinal é amostrado por

unidade de tempo 1 Hz = 1 Ciclo/Segundo

Page 13: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Exemplo do CD

Page 14: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Exemplo do CD 44,1 KHz São amostradas 44100 valores do sinal por

segundo Quanto maior a taxa de amostragem mais precisa

é a representação discreta do sinal originalmente contínuo

Quanto maior a taxa de amostragem mais informações (“pontos”) deverão ser armazenados e/ou transmitidos

Page 15: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Page 16: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Page 17: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Page 18: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Teorema de Nyquist Taxa de amostragem deve ser pelo menos 2 vezes

maior que a freqüência que a frequência do sinal que se deseja registrar

Caso o teorema não seja obedecido ocorre o fenômeno de alising e há distorção do sinal do sinal original

Page 19: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Exemplo do CD Como só ouvimos sons de 20Hz a 20 kHz A taxa de amostragem deveria ser de pelo menos

40 kHz para que todas as freqüências audíveis fossem ser registradas

Page 20: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Erros de Amostragem

Page 21: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Teorema de Nyquist Utilizando o teorema de Nyquist pode-se escolher a

melhor freqüência de amostragem de forma a economizar banda pois para que o sinal possa ser reconstituído basta atender ao teorema, e o aumento da taxa de amostragem com a melhor representação da onda não implica na melhor qualidade do sinal mas sim em mais informações a serem armazenadas

Page 22: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Quantização Representação dos valores amostrados em uma

quantidade finita de bits Quanto maior a quantidade de bits melhor mais

precisa a representação do sinal

Page 23: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Quantização Utilizando 8 bits é possível representar 256 valores

(0-255) Supondo que os valores dos pulsos variem de 0 a

255V Digamos que um pulso tenha valor de 147,39V

Ele terá de ser quantizado como 147V ou 148V pois não existe valor intermediário

100100112 = 14710

100101002 = 14810

Page 24: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Quantização

Page 25: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Conversores A/D e D/A

Quantização Digamos que um pulso tenha valor de 147,39V

Ele terá de ser quantizado como 147V ou 148V pois não existe valor intermediário

Ocorrerá então um erro de -0,39V ou +0,61V chamado erro de quantização

Page 26: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Erros de Quantização

Page 27: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Volume de Dados Tamanho de Arquivos

Tamanho do arquivo é diretamente proporcional à taxa de amostragem e número de bits da quantização

TA * R/8 * C * t TA = Taxa de amostragem R = Resolução em bits C = Numero de canais t = tempo em segundos

Resultado será o tamanho do arquivo em Bytes! Dividir por 1024 para obter tamanho do arquivo kBytes

Page 28: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

ExemploVolume de Dados

Tamanho de Arquivos (44100Hz)x(16bits/8)x(2 canais)x(60s)

Resultado em Bytes? Resultado em KBytes? Resultado em MBytes?

Page 29: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Resultados... Tamanho de Arquivos

(44100Hz)x(16bits/8)x(2 canais)x(60s) 10584000 Bytes 10335,94 KBytes 10,09 MBytes

Page 30: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Lendo Valores Analógicos no ARDUINO

Page 31: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

SensorLeitura de Entrada Analógica

Page 32: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

SensorLeitura de Entrada Analógica

Page 33: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

SensorLeitura de Entrada Analógica

Page 34: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

SensorLeitura de Entrada Analógica

Page 35: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

SensorLeitura de Entrada Analógica

Page 36: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02
Page 37: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Escrevendo Valores Analógicos no

ARDUINO

Page 38: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02
Page 39: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

FadeAcionamento de Saída Analógica

Page 40: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

FadeAcionamento de Saída Analógica

Page 41: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

FadeAcionamento de Saída Analógica

Page 42: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

FadeAcionamento de Saída Analógica

Page 43: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

FadeAcionamento de Saída Analógica

Page 44: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

FadeAcionamento de Saída Analógica

Page 45: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02
Page 46: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Sensor de Distância

Page 47: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Sensor de Distância

Page 48: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Bússula Analógica 1535www.dinsmoresensors.com

Page 49: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

Saída analógica do sensor

Page 50: 07arduinoandproteus Analoginputandoutput 130710205752 Phpapp02

professorVictory Fernandes

www.tkssoftware.com/victory