Forum: Mikrocontroller und Digitale Elektronik Kompassmodul CMPS14 ignoriert (Erd-)Magnetfeld?!


von MagnetoMaxe (Gast)


Lesenswert?

Moin,

Ich lese ein CMPS 14 Kompassmodul 
(http://www.robot-electronics.co.uk/files/cmps14.pdf) per I2C aus, wie 
hier beschrieben:
http://www.robot-electronics.co.uk/htm/arduino_examples.htm#CMPS12/11%20I2C

Ja, das Beispiel ist für CMPS12, aber die Register liegen gleich.

Das funktioniert auch erstmal, Pitch und Roll sehen gut aus, aber das 
Heading springt beim Start jedes Mal auf 306,6°, egal wie der Kompass 
gerade ausgerichtet ist. Drehungen werden dann korrekt erkannt, aber 
eben nicht bezogen auf das Erdmagnetfeld.

Auch ein starker Magnet in der Nähe hat keinerlei Auswirkung auf die 
Ausgabe.

Es wirkt, als ob nur die Drehung gemessen würde, nicht aber das 
Magnetfeld...

Muss ich dem internen Kalibrierungsprozess mehr Zeit geben, oder mache 
ich etwas grob falsch? Der 14 soll ja schon kalibriert sein...

Ich habe das Modul schon um alle Achsen gedreht, 8-Bewegungen 
ausgeführt, abgewartet...
Die Ausgabe in Ruhelage bleibt absolut stabil. Nur eben bezogen auf die 
Ausgangslage, nicht auf das Erdmagnetfeld.

Ich würde mich freuen, wenn mir jemand ein Tipp geben kann...

Ich hatte vor Jahren schon mal eine CMPS10 oder 11, der funktionierte 
einwandfrei.

von Wolfgang (Gast)


Lesenswert?

MagnetoMaxe schrieb:
> Ich würde mich freuen, wenn mir jemand ein Tipp geben kann...

Versuche es mit systematischer Fehlersuche.

Wie sehen die Rohdaten vom Magnetometer aus (Serial Command 0x19 bzw. 
I²C Register 0x06..0x0B)?

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Soviele Möglichkeiten gibt es nicht.
1. Der Magnetometerteil des Chips ist defekt
2. Irgendwer hat mit einem starken Magneten im Chip etwas 
ferromagnetisches (gibt es das?) in die Sättigung magnetisiert
3. Die Kalibration ist irgendwo an die Wand gefahren (sollte sich aber 
rückstellen lassen).

von Wolfgang (Gast)


Lesenswert?

Was steht in in den Kalibrierstatusbits?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.