Divisores de tensão e ADCs

13

Eu quero ler uma tensão de 0-30V com um MCU ADC que tenha uma entrada máxima de 3V.

Inicialmente, pensei em usar um divisor de 100k-10k (então 33V se traduz em 3V), mas de acordo com as respostas à impedância de entrada ADC nos MCUs , isso adicionará um erro de 3% devido à corrente de fuga de entrada; Estou procurando um erro de 0,5% no máximo. No entanto, em valores mais baixos para o divisor, corro o risco de danificar as entradas do MCU por causa de sobretensão (os resistores atuam em conjunto com os diodos de aperto na entrada.) Também aumento a dissipação de energia em meus resistores, que são pequenos dispositivos 0603, classificados para 0,063W no máximo. Como posso evitar isso? A impedância de entrada nb não é crítica.

Não estou preocupado com a velocidade de amostragem, ele monitorará a voltagem da bateria a um máximo de 100 amostras por segundo.

Thomas O
fonte
você construiu o anterior? 3% foi o pior caso com base no vazamento do pior caso, a menos que você esteja produzindo muitos deles, você pode calibrá-los.
Kortuk
Kortuk, você acha que eu poderia ajustar um dos resistores de 3% ou segurá-lo no software (escala de 1.03x?)
Thomas O
Você está dizendo que deseja alta precisão, baixo consumo de energia e muito pouco custo extra. Não tenho certeza se isso é possível. Você pode calibrar em software como o kortuk mencionou, mas em um processo fabuloso que leva tempo que será igual a dinheiro.
Kellenjb
Dirigir uma entrada MCU ADC com uma grande impedância é ruim, pelo menos. Aumenta o tempo de estabilização e causa distorção, etc. "O ADC é otimizado para sinais analógicos com uma impedância de saída de aproximadamente 10 kΩ ou menos. Se essa fonte for usada, o tempo de amostragem será desprezível. Se uma fonte com maior impedância usado, o tempo de amostragem dependerá de quanto tempo a fonte precisa carregar o capacitor S / H, podendo variar bastante.O usuário é recomendado a usar apenas fontes de baixa impedância com sinais que variam lentamente, pois isso minimiza a transferência de carga necessária para o limite S / H "
endólito 2/11/10

Respostas:

10

Use o divisor de tensão com resistores e um seguidor de opamp posteriormente. Alternativamente, use um circuito opamp para reduzir a tensão e você poderá executar uma filtragem anti-alias em um estágio!

smashtastic
fonte
Uma utilização do amplificador operacional com um ganho de 0,1 e torná-la duplo como o filtro anti-aliasing
ajs410
Não posso pagar por um amplificador operacional. Infelizmente, não tenho espaço suficiente. Talvez eu consiga pagar por um IC de buffer, se eles forem pequenos o suficiente e estiverem disponíveis com 8 canais.
Thomas O
Normalmente você compra um pequeno amplificador operacional e o conecta como um buffer. national.com/mpf/LM/LMC7111.html O SOT23 é muito grande?
endolith 2/11/10
Oh, você quer 8 canais.
endolith 2/11/10
1
o uso de resistores de maior precisão reduzirá o erro do divisor de tensão, o segundo problema é direcionar esse sinal para um ADC. É aqui que as imprecisões ocorrerão, daí a proposta de usar um buffer.
Smashtastic #
14

Ok, da sua resposta ao meu comentário, acho que posso ajudar mais com uma resposta completa.

Construa!

Crie seu divisor resistivo simples. Isso tem muitas vantagens, para um tamanho, outro é custo.

Caracterize-o!

Agora, você também usará um microcontrolador; é aqui que você precisará caracterizar seu erro. use um gerador de voltagem muito preciso, agora verifique as voltagens e veja qual erro o uC realmente mede.

Analise!

Agora é quando fica divertido. Há várias coisas que você pode medir.

Exatidão e precisão

A maior coisa a se medir aqui é se o erro nos pontos é repetível. Se toda vez que você fizer uma varredura, você receber um erro diferente, ou se sua varredura seguindo um caminho diferente der um erro diferente no mesmo ponto, essa não será uma opção. Isso geralmente acontece com correntes de vazamento. A parte importante aqui é que você não precisa de alta precisão, apenas um alto grau de precisão. Se você pode caracterizar seu erro, seu uC pode corrigi-lo. Se você tem uma grande variação, precisa alterar sua solução.

O que é uma calibração do ponto X?

Agora, se você tiver uma alta precisão, como discutido anteriormente, poderá corrigir a precisão. Agora, se você representar graficamente sua tensão de entrada versus sua tensão de saída, precisará decidir o número de "pontos de referência" necessários. Os dispositivos agradáveis ​​permitem um ponto 1 (ou ponto zero, sem necessidade de calibração). Muitas sondas de temperatura.

Calibração de um ponto

Ambas as linhas têm a mesma inclinação, mas um deslocamento, então você só precisa encontrar o valor que deve adicionar a um ponto de dados para corrigi-lo. Essa é uma situação ideal, pois qualquer nova calibração precisa apenas de um único ponto de dados para calibrar novamente.

Calibração de dois pontos

ambas as curvas lineares, possivelmente um deslocamento e há uma diferença de inclinação, você só precisa de dois pontos de referência e interpolação linear para extrair seu deslocamento. Isso ainda é relativamente fácil, basta considerar qualquer ponto, multiplicá-lo por um escalar e adicionar um deslocamento.

Como você pode ver, fica mais confuso quanto mais pontos você precisar. Em algum momento, é mais fácil pegar todos os pontos de dados e correlacioná-los com o valor real. Por exemplo, descobrindo que 0000 é 1V, 0001 é 2V, 0002 é 1,5V. Isso é confuso e ainda funciona apenas se as compensações forem repetíveis. Isso pode acontecer embora.

Resumindo

Espero que isso ajude, diga-me se precisar de mais clareza. Se você terminar com uma corrente de vazamento variável que não é confiável, é hora de lidar com a necessidade de um buffer ou algo parecido.

Eu posso ver a possibilidade de um erro alto devido a vazamentos, mas aposto que o erro é relativamente pequeno na maior parte do intervalo e, quando existe, pode ser facilmente corrigido.

Kortuk
fonte
1
Como observação lateral, isso parece uma tonelada de trabalho, mas na verdade é uma quantidade relativamente pequena de trabalho para manter o custo dos componentes baixo.
Kortuk
bom comentário! uma maneira brilhante de fazer isso em software. Seu método final de pesquisa é provavelmente o melhor método. A única desvantagem é a ROM que consome, mas para um ADC de 8 a 10 bits em um MCU, isso deve ser possível.
Smashtastic # 02/11
Depende dos dados, tenho muitos casos diferentes, uma calibração de 1 ponto foi suficiente. Apenas um deslocamento. E, em seguida, construir o hardware para calibrar automaticamente compensa.
Kortuk