Eu tenho várias coisas a dizer aqui, e algumas delas envolvem concordar com pingswept e outras com penjuin.
cr3000
A amostragem cr3000 em 16 bits e 100 Hz será um pouco lenta para você remover facilmente o ruído dos seus dados, mas com uma precisão significativamente maior, será utilizável. Duvido que você possa obter 13 ou 14 bits de precisão sem alguns algoritmos de filtragem muito bons. Os acelerômetros me ensinaram que a vibração é o diabo, fótons detonados.
Capacitor de saída
Você precisa fazer o que a folha de dados diz e a teoria dos sinais indica. Para citar a folha de dados:
A saída do ADXL103 / ADXL203 possui uma largura de banda típica de 2,5 kHz. O usuário deve filtrar o sinal neste momento para limitar erros de alias. A largura de banda analógica não deve exceder a metade da frequência de amostragem analógico-digital para minimizar o alias. A largura de banda analógica pode ser reduzida ainda mais para reduzir o ruído e melhorar a resolução.
Isso significa que você precisa escolher um capacitor para manter sua taxa abaixo de 50Hz. Se você colocá-lo acima disso, poderá obter o alias e o alias torna o ruído da vibração um demônio com o qual você assinou um acordo. Eles afirmam como calcular os níveis de ruído do dispositivo e, a uma largura de banda de 50Hz, um pico de pico a ruído de 0,006 * A gravidade nem será notada se você o tiver em um dispositivo com vibrações.
Interpretando Dados
Provavelmente é nisso que você mais se interessa e é relativamente fácil de fazer. Você precisa marcar um tempo em que o dispositivo está em ponto morto, quando é plano e você o mantém relativamente parado. Aguarde um ou dois segundos nesse momento e, em seguida, você pode tirar a mediana desses dados para determinar a tensão sem G. Em seguida, você pode usar isso como um ponto com o qual você comparou o dispositivo. Agora, a partir deste ponto, posso citar diretamente a folha de dados:
Quando o acelerômetro é perpendicular à gravidade, sua produção muda quase 17,5 mg por grau de inclinação .
Portanto, você pode simplesmente usar essa aproximação se não quiser inclinar muito, mas precisará usar a geometria se planeja inclinar na direção e em ângulos que não são extremamente pequenos.
Se você estiver indo para um tamanho maior, eles ainda terão as equações definidas como:
PASSO = ASIN (AX / 1 g)
ROLO = ASIN (AY / 1 g)
Tanto quanto eu posso dizer, seu dispositivo oferece uma mudança de 1V por 1G de aceleração colocada nele. Se você tiver realizado a fase de calibração, poderá fazer medições, subtrair o deslocamento e ter o número de Gs sendo experimentados.
Pare de ler aqui, a menos que você tenha problemas ou queira obter mais informações para melhorar a abordagem.
Eu adicionei um pouco mais decente de falar sobre outras abordagens e métodos para melhorar sua abordagem para sistemas ou sistemas em rápida mudança nos quais você vai programar o dispositivo fazendo as amostras.
Frequência de amostragem
Você precisa fazer uma amostragem significativamente mais rápida do que a velocidade com que o dispositivo altera as direções em que está acelerando, pois é necessário medir a orientação de 20 a 30 vezes por segundo. você precisa ser capaz de medir com rapidez suficiente para filtrar o ruído de vibração e a aceleração devido a outros efeitos, que eu achei bastante grandes ao trabalhar com um acelerômetro.
Acelerômetro de 3 eixos
Segundo, se você tiver um acelerômetro de três eixos, poderá facilmente reconhecer quando um eixo está perdendo parte da aceleração devido à gravidade (ou seja, quando o eixo z tem sua queda de magnitude em 2m / s ^ 2, você sabe que o ganho que você viu no outro eixo é a gravidade). Isso ainda será confuso, mas, em geral, haverá uma adição de aceleração que fornece a velocidade necessária para alterar sua orientação e, em seguida, uma alteração na aceleração devido à mudança de orientação, permitindo que você reconheça a orientação.
Problemas com 2 eixos
Isso será, como disse penjuin, quase impossível com um acelerômetro de 2 eixos e superficial na melhor das hipóteses se você tiver um sistema que possa ter de 20 a 30 orientações diferentes por segundo ou se precisar de uma medida exata de orientação em todas as vezes. Estou certo de que um aluno de mestrado poderia escrever uma tese bastante interessante sobre isso, ou um doutorado poderia escrever uma dissertação sobre como melhorar esse algoritmo.
Ruído de vibração
Para adicionar mais, se você puder colocar seu dispositivo em cima de algo que o manterá estaticamente bloqueado ao movimento do dispositivo, mas reduzirá a vibração, você obterá números muito melhores e não precisará de tanta filtragem de software. Algum preenchimento simples de espuma pode ser colocado entre o acelerômetro e o dispositivo, e se for digital, isso não aumentará o ruído elétrico e ajudará a absorver o ruído da vibração. Isso só deve ser feito se houver problemas com o ruído da vibração.
Acelerômetro digital
Eu sugeriria um acelerômetro digital ao qual você pode usar o SPI para se conectar. Os dados podem ser atingidos com uma taxa muito alta e você pode trabalhar em segundo plano, pois o seu SPI realiza o trabalho constante de carregar o próximo conjunto de valores. Você precisará de um bom microcontrolador se for feito digitalmente. Se você pode me dar melhores detalhes sobre o que você quer fazer, posso dar um feedback melhor. Se você deseja um aviso com base na detecção de inclinação, deve ser muito fácil fazer com todos os analógicos, mas se você deseja medir a posição e o ângulo do equipamento durante a operação, prepare-se para algum trabalho.
Informe-me se há algo que eu possa adicionar para tornar essa resposta mais clara ou aplicável ao que você estava procurando.