Les capteurs magnétiques Android donnent des valeurs différentes de différents appareils

StackOverflow https://stackoverflow.com/questions/8401817

  •  28-10-2019
  •  | 
  •  

Question

J'essaie de faire une analyse qui implique d'interpréter les résultats des différents capteurs de l'appareil Android. En ce moment, j'analyse le capteur de champ magnétique qui devrait me dire (selon Cette page de documentation) Les valeurs du champ magnétique ambiant dans UT (micro Tesla). Tout est clair jusqu'à présent, mais sur les 2 appareils sur lesquels j'ai testé (Galaxy S, Galaxy Gio), les résultats sont différents. Et par différent je veux dire très différent.

Par exemple, avoir la même orientation sur une table, voici ce que ces appareils montrent (juste un exemple):

S2:  -2,12, 60 (approximate values on x,y,z accordingly)
Gio: -2,12,-36 (approximate values on x,y,z accordingly)

Même si je change les positions, les résultats sont les mêmes. J'ai aussi lu la suite cette page À propos de l'intensité du champ magnétique et je crois que je devrais avoir environ 50ut compte tenu de ma latitude géographique.

Quelqu'un peut-il expliquer ce que ces capteurs signifient?

Quelqu'un sait-il comment expliquer ce comportement?

Merci,

Iulian

Était-ce utile?

La solution

Je peux juste confirmer le problème.

En tant qu'auteur du boussole régulière Application, j'ai effectué de nombreux tests de capteurs de champ magnétique avec différents appareils. J'ai constaté que l'un des appareils a signalé une valeur absolue de MF environ 2x la quantité rapportée par d'autres dispositifs différents dans les mêmes conditions.

J'ai fait beaucoup de test après l'étalonnage du téléphone, et j'ai même mis les appareils en "mode avion" en essayant de minimiser les interférences électromagnétiques provenant du propre appareil. Un autre commentaire est que le branchement du câble USB sur certains appareils peut créer d'importantes variations de champ magnétiques.

Les pires résultats que j'ai vus sur un dispositif donné (après l'étalonnage, le mode avion et la USB déconnectés) est la suivante: en utilisant une application Compass avec l'appareil sur un plan horizontal, je prends une lecture, tourne le téléphone de 90 degrés dans le plan horizontal et prends une nouvelle lecture de boussole. Les deux lectures diffèrent en plus de 15 degrés!

Heureusement, tous les appareils ne comprennent pas de si mauvais capteurs. Les meilleurs appareils ont des erreurs d'environ 2 à 3 degrés après une rotation de 90 degrés.

La conclusion: à moins que vous ne soyez très confiant sur votre capteur de champ magnétique, car vous avez testé et certifié un bon comportement, vous devez donner une fiabilité limitée aux lectures rapportées par un tel capteur.

Autres conseils

J'ai également rencontré ces problèmes avec les capteurs. Je crois que les téléphones donneront différentes lectures de capteurs en fonction du matériel utilisé par le fabricant. Essayez de lire la précision du capteur pour capteur_status_unreliable. Vous devrez peut-être recalibrer le magnétomètre.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top