Por que os acelerômetros de 3 eixos aparentemente têm um sistema de coordenadas para canhotos?

8

A inspeção cuidadosa da página 35 (figura 58) da folha de dados do ADXL345 mostra que somente sob carregamento gravitacional, o chip usa um sistema de coordenadas para canhotos. Minhas próprias experiências com este chip confirmam isso.

Normalmente, uso apenas o chip para indicar o vetor de gravidade. Portanto, ao usar esse chip, simplesmente nego os valores para obter um sistema de coordenadas para a mão direita. Mas isso não parece certo. Suponho que exista uma explicação lógica e matemática para o sistema de coordenadas para canhotos, mas não consigo descobrir o que possa ser.

Imagem da ADXL345 Ficha técnica

Ben
fonte
Não tenho certeza se existe um padrão para isso, mas poderia ter algo a ver com o fato de que a maioria dos aplicativos de dinâmica de vôo usa o sistema de coordenadas com a mão direita (talvez o fabricante pense que os acelerômetros encontrarão o máximo de uso em bots / veículos aéreos). Apenas um palpite. Mas qual é a sua pergunta de qualquer maneira? Se você não gostar do sistema de coordenadas, transforme-o no sistema que melhor lhe convier!
metsburg 17/09/2013
11
Além disso, se você negar todos os seus valores, na verdade não está convertendo para outro sistema de coordenadas, está apenas passando de 1 para 7 . Em vez disso, considere trocar os eixos y e z.
Chuck
Parece uma pergunta válida para mim ...
JJM Driessen

Respostas:

6

A resposta é que os acelerômetros de 3 eixos não têm um sistema de coordenadas para canhotos apenas pela gravidade. Em condição estática (isto é, se o acelerômetro não estiver acelerando em relação a qualquer estrutura inercial), eles medem o oposto da aceleração da gravidade, não a própria aceleração da gravidade.

Em termos mais gerais, os acelerômetros medem a diferença entre a aceleração real do sensor em relação a qualquer quadro inercial e a aceleração gravitacional: Essa "aceleração" medida pelo acelerômetro às vezes é chamada aceleração adequada .

aaccelerometer=asensorFrameg

Isso pode ser facilmente verificado verificando a medida de um acelerômetro em queda livre: como nesse caso a aceleração real do sensor será igual a , a medida do acelerômetro será .g0

traversaro
fonte
1

Isso não está usando um sistema de coordenadas para canhotos! Confira minhas edições brutas no diagrama.

insira a descrição da imagem aqui

Observe que cada sistema de coordenadas (RGB para XYZ, preto para gravidade) tem o vetor de gravidade alinhado na direção negativa do eixo apropriado, enquanto o diagrama mostra uma leitura positiva. Eu poderia tê-los desenhado de outra maneira, mas a aceleração real na ausência de gravidade seria ascendente para produzir a mesma leitura. Talvez seja por isso que negar os valores funcione para o seu aplicativo.

Brian Lynch
fonte
Então você está dizendo que se você acelerar o chip na direção X com uma quantidade de 1g, ele produzirá uma resposta de -1g em X? Isso está simplesmente reafirmando a questão. Eu sei que este é um sistema de coordenadas destro. A questão é por que a negação.
Ben
Não estou reafirmando a pergunta, você está dizendo que ela usa um sistema de coordenadas para canhotos, mas seu diagrama mostra um sistema de coordenadas para destros de acordo com as várias respostas. Meu comentário é sobre o fato de que, se você acelerar na direção "para frente" (digamos no seu carro), sentirá o peso empurrando "para trás" - e esse é o principal por trás de como o acelerômetro funciona. A gravidade é sentida mesmo que você não esteja acelerando; portanto, se você deseja obter o mesmo sinal em gravidade zero, precisará acelerar para cima e não para baixo. Desculpe se minha resposta é um pouco confusa!
Brian Lynch
Se você acelerar o chip na direção X com uma quantidade de 1g, ele produzirá uma resposta de 1g em X (não -1g). Considere quando a gravidade está apontando na direção -X (ou seja, a configuração na parte superior no lado esquerdo do diagrama), se você acelerasse na direção X, sentiria um peso adicional empurrando para trás, o que acrescentaria para o 1g já sendo sentido pela gravidade - positivo na direção X, como mostrado no diagrama do fabricante. Por outro lado, se você deixou cair nessa configuração, ele iria acelerar com -1g na direção X e anular a 0.
Brian Lynch
0

No final do dia, você pode usar uma matriz para transformar qualquer sistema de coordenadas usado no seu próprio sistema. Normalmente, esse é o caso em que é necessário colocar as peças em uma determinada direção devido a dificuldades de roteamento. Usando uma matriz 3x3 simples, você pode transformar as leituras X, Y, Z para que todas elas se alinhem em vários sensores. A matriz terá valores 0, 1 e -1 de acordo, dependendo de como a transformação deve ser feita.

Gustavo Litovsky
fonte
Isso não responde de maneira alguma por que um sistema de coordenadas à esquerda é usado.
JJM Driessen
0

Meu melhor palpite para isso seria que, com um sistema de coordenadas para canhotos, a gravidade é positiva quando você está do lado direito para cima e negativa quando está de cabeça para baixo. Como mencionado no meu comentário, tenha cuidado com o modo como você "transforma" seus sistemas de coordenadas - negar todos os valores apenas o move de um octante para outro.

Chuck
fonte