Alguém sabe me informar como saber o tempo mínimo para leitura de um sensor através de um

conversor A/D ? Já olhei em datasheets, só que existem várias informações a respeito de tempo

e eu não estou entendendo.

Agradeço.

Exibições: 3314

Responder esta

Respostas a este tópico

Diego, depende do tipo de ADC. Existem vários tipos de ADC. Os mais rápidos são os Flash converters.

No caso do Arduino com ATMega 328, veja as especificações do datasheet:

24. Analog-to-Digital Converter
24.1 Features
• 10-bit Resolution
• 0.5 LSB Integral Non-linearity
• ± 2 LSB Absolute Accuracy
• 13 - 260μs Conversion Time
• Up to 76.9kSPS (Up to 15kSPS at Maximum Resolution)
• 6 Multiplexed Single Ended Input Channels
• 2 Additional Multiplexed Single Ended Input Channels (TQFP and QFN/MLF Package only)
• Temperature Sensor Input Channel
• Optional Left Adjustment for ADC Result Readout
• 0 - VCC ADC Input Voltage Range
• Selectable 1.1V ADC Reference Voltage
• Free Running or Single Conversion Mode
• Interrupt on ADC Conversion Complete
• Sleep Mode Noise Canceler

O tempo de conversão ADC varia entre 13 e  260μs. Isto siginifica que a taxa de amostragem pode ser de até 76,9 mil amostras por segundo (baixa resolução) e até 15.000 amostras por segundo com a resoluçao de 10 bits.

Sabendo-se que a frequência de amostragem ideal (mínima) é de cinco vezes a frequencia do sinal capturado, vê-se que a frequencia do sinal capturado pode ser de até 3 KHz com 10 bits de resolução ( muito baixa a frequência).

Gustavo, entendi sua resposta. Mas eu estava lendo um material que informava que pra cada leitura que você faz de, por exemplo, um sensor, deve-se existir um tempo mínimo para realizar a leitura do sinal, caso contrário, você irá realizar uma leitura errada. Queria aprender a calcular isso. 

Vou postar pra você uma parte do livro que informa isso.

Anexos

?

Diego, existem circuitos que se chamam SAMPLE and HOLD, mas são usados quando o sinal tem variações de tensão mais rápidas do que a taxa de amostragem do ADC.

Você sabe qual a frequencia do sinal que pretende capturar? e a taxa de amostragem do ADC?

Como disse anteriormente:

a frequência de amostragem ideal (mínima) é de cinco vezes a frequencia do sinal capturado,

nesse caso normalmente não é preciso circuito sample and hold. 

http://en.wikipedia.org/wiki/Sample_and_hold

Como o José Gustavo já disso, vc não precisa se preocupar a esse nível. Deixa isso para o projetista do ADC. Ele internamente tem os componentes necessários para cumprir a promessa de frequência.

O Sample e Hold é um estagio dos ADCs que são feitos por aproximação sucessiva ou outros métodos que precisam que o sinal esteja estável durante a conversão. Só por curiosidade, não entre em paranoia, mas uma tecnologia de ADC, por ex, não lembro o nome, chuta o bit mais significativo, converte pra analogico e compara. Se for maior poe 1, menor poe 0 nesse bit, depois coloca 1 no segundo bit mais significativo e compara, etc, etc, etc, até o ultimo, em um loop. Se o sinal mudar no meio da conversão vc compara com uma coisa em um instante e com outra em outro, gerando erros grotescos.

Mas se um ADC comprado prometer que consegue converter a tal velocidade significa que ele consegue. Se pra isso precisar de um sample e hold ou ele tem internamente ou está escrito no datasheet dele o que vc precisa ligar. Esses de uso mais simples sempre vem completos.

Por outro lado, só para complementar, existe uma chave comutadora analógica (MUX) interna que seleciona qual pino vai ser ligado ao ADC (AD) interno. Essa chave pode gerar atrasos. Pode ser que imediatamente após a comuntaçao da chave seja necessário uma espera. No integrado que costumo trabalhar (c8051F340) pelo menos, ela existe. Já nas bibliotecas do Arduino se existe é feita internamente e vc nem percebe. 

Enfim, essa taxa de amostragem é considerada geralmente para 1 canal sendo digitalizado. Se vc precisar de 2 canais tem metade se a chave for ideal ou menos, caso ela provoque um atraso.

Ou seja: Os ADs de microcontrolador, em geral, são para uso com sinais DC ou no máximo audio frequencia de baixa qualidade. Se precisar de mais velocidade existem integrados mais específicos com ADs mais rápidos, como o:

http://www.silabs.com/products/mcu/mixed-signalmcu/Pages/C8051F12x3... (não compativel com Arduino, é um 8051 turbinado).

Que faz 100Ksps na maxima resolução, mas tb não é tanto assim, dependendo do projeto.

Caro Eduardo o ADC que você comentou usa um registrador de sucessão aproximada (SAR).

Esses precisam de um Sample and hold, enquanto processam a conversão de sinal analógico para digital.

O site da Analog Devices (os melhores ADCs) explica:

http://www.analog.com/static/imported-files/tutorials/MT-021.pdf

Pessoal, é o seguinte... Eu trabalho com um Microcontrolador MSP430 e uma vez eu estava desenvolvendo um trabalho com acelerômetro e um dos motivos do meu projeto não ter funcionado, foi pelo fato de não ter configurado corretamente a quantidade de Ciclos para conversão da informação analógica para digital. Com isso, o projeto teve problemas. Só depois que descobrir que é preciso ter um tempo mínimo de leitura para que o sinal não venha a ser convertido com alguma distorção. Portanto, queria entender melhor como calcular os ciclos necessários para evitar tais erros.

Agradeço.

Ahh, sim, todo AD deve ter um pino ou bit que informa o fim da conversão. Normalmente o nome é EOC (End of Conversion), que inclusive costuma gerar uma interrupcão nos microcontroladores.

Vc precisa disparar uma conversão e esperar o AD terminar de converter, ou respeitar um intervalo minimo, dependendo da velocidade do conversor, gerada por timer ou ciclos de maquina.

De forma mais polida vc pode usar uma interrupção de timer, ou de EOC. E assim que ler um valor já disparar a conversão de outro. 

Eduardo, trabalho com o MSP430 e eu estava estudando e vi esses calculos para calcular o tempo mínimo para conversão de um sinal sem existir distorções no mesmo. Veja esse link de uma parte do livro que eu estava estudando. 

http://storage.ning.com/topology/rest/1.0/file/get/1939622996?profi...

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço