Introdução
Em resposta a esta pergunta sobre amplificadores adaptativos , foi recomendado que, para lidar com condições variáveis, pode ser mais econômico simplesmente usar um ADC com resolução mais alta, para que eu não precise me preocupar com amplificação e possa fazer o dimensionamento. em software.
Visão geral
Estou tentando projetar um circuito de aquisição de dados para sensores de estiramento baseados em têxteis montados no corpo. O tecido varia de resistência à medida que é esticado (cerca de 1 ordem de magnitude, 10k -100k com 30% de alongamento). Os intervalos exatos mudam dependendo de como o tecido é cortado, se está encharcado de suor, da temperatura, da idade do material, de como é montado etc. A coisa toda precisa ser o menor possível, porque é montada na mão , minimizar o número de componentes é uma grande vantagem.Ω
Além disso, eu gostaria que o circuito fosse reutilizável para outros aplicativos que podem ter desempenho pior. Por exemplo, se eu usar uma versão mais barata do tecido, minha faixa de resistência poderá ser tão ruim quanto 100 a 300 .Ω
Caminho do sinal
[têxtil] -> [Ponte de Wheatstone] -> [passa baixo] -> [amplificador de instrumentação] -> [ADC] -> [AVR]
Exigências
Então, estou procurando um ADC que atenda aos meus requisitos. O ADC deve ser:
- 16bits +
- Tão fácil de usar quanto possível: muito melhor se já houver código de interface escrito para o AVR / Arduino ...
- ... mas, ao mesmo tempo, o mais abrangente possível: eu já vi alguns ADCs com filtros passa-baixo e PGA embutidos - tanto quanto melhores, desde que isso não torne a configuração um problema
- Mais de 8 canais ou, se for fácil o suficiente, 2x mais de 4 canais. EDIT: Se estou usando uma ponte Wheatstone, talvez eu queira 8 canais de entrada diferencial (16 canais) ...
- Eu não acho que a tensão de operação é importante ... (melhor se não for acima de 5V)
- Montagem em superfície
- Não precisa ser barato (é único)
- SPI vs. I2C não importa, eu acho ...
- 100+ Hz
Pesquisa
Até agora, no Google, encontrei os seguintes chips:
- Os dispositivos lineares oferecem vários ADCs delta sigma de 16 a 24 bits, alguns dos quais vi recomendados: http://parametric.linear.com/html/no_latency_delta_sigma_adcs?p=5312974
- O microchip tem uma variedade de opções, algumas das quais eu já vi recomendadas: http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=11022&mid=10&lang=en&pageId=79
- Os dispositivos analógicos possuem vários chips de aquisição de dados abrangentes com amplificadores e filtros (sem necessidade de processamento de sinal externo):
- Ainda não olhei para os chips da TI ...
e os seguintes tutoriais:
- http://arduino.cc/blog/2010/11/29/tired-of-a-10-bit-res-hook-up-a-better-analog-to-digital-converter/ (LTC2400)
- http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1275676171 (TI ADS8341)
- http://forums.adafruit.com/viewtopic.php?f=31&t=12269 (MCP3424)
- http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1248751435 (LTC2410)
Referência de tensão?
Finalmente, algumas pessoas recomendaram uma referência de tensão de precisão, como a série REF19x dos dispositivos analógicos . Você acha que isso é necessário? A resolução é definitivamente importante para mim.
Conclusão
Deixe-me saber se você tem alguma recomendação! Também não sei exatamente o que estou procurando, portanto, dicas sobre como decidir também são apreciadas.
Respostas:
O ADS1256 da TI possui oito canais de 24 bits de extremidade única com buffer de entrada de alta impedância e PGA. O projeto OpenEXG possui código PIC para fazer a interface (eles usam a versão ADS1255 de dois canais, mas deve ser a mesma).
Se você deseja entradas diferenciais, existe o ADS1298 , com 8 canais, PGAs e A / Ds, referência interna, mais circuitos de ECG / EEG que você pode ignorar. Não tenho certeza se você pode encontrar qualquer código de exemplo para este, no entanto.
Se você está procurando uma resolução, uma referência precisa e com baixo ruído é uma obrigação.
fonte
Uma ideia talvez não convencional, estou curioso para saber o que vocês pensam sobre isso:
Uma ordem de magnitude parece uma mudança suficientemente grande para medi-la diretamente em um circuito divisor de tensão.
Você pode usar um ADC menor e variar a corrente através do sensor. Uma fonte de tensão PWM filtrada + um seguidor de tensão (pode ser um transistor NPN se você estiver na coxa no espaço) pode melhorar drasticamente sua faixa dinâmica.
Você pode usar um ou dois destes e mudar a tensão ao medir diferentes sensores.
fonte
Se sua principal preocupação é ter uma ampla faixa dinâmica para qualquer "sensor", considere o uso de DACs (ou mesmo apenas fontes de tensão controladas por pinos MPU) para ajustar o desvio / ganho do amplificador para alterar o desempenho do sistema para diferentes materiais.
Você também pode seguir esse estágio de ganho variável com um circuito de integração de carga, para poder obter uma sensibilidade do sinal de sintonia fina ajustando o período de "exposição".
fonte
Se você tiver energia de computação suficiente para a taxa de amostragem necessária, considere a filtragem digital. Um filtro Savitzky-Golay , f / ex.
fonte
Por que não aumentar para 11 e apenas use a TI ADS1262 . É um ADC de 32 bits, com 11 entradas e um PGA!
Com 32 bits, você pode experimentar praticamente qualquer coisa. E nem é tão caro. Além disso, se você estiver fazendo apenas um desses, obtenha uma amostra grátis .
Outra opção é usar um PSoC. Estes são microcontroladores contendo blocos analógicos e digitais reconfiguráveis, que você pode usar para compor todos os tipos de funções. Você pode escolher um com um ADC de 16 bits, um PGA, um DAC e um filtro digital, para criar o seu próprio ADC de alcance automático, ajuste automático, amostragem excessiva e filtragem digital!
Programar essas coisas como uma trapaça, como você simplesmente desenha o esquema que deseja, escolhendo funções predefinidas em uma lista. Em seguida, escreva um código C e você estará fora.
fonte