kompassmodul Werte 0 bis 360? kalibrieren?

  • Ich habe ein Kompassmodul (auf dem SENSE HAT verbaut) welches ich in einer Dauerschleife auslese und den Wert mir auf den Bildschirm schreibe.
    Jetzt lege ich das Sensormodul auf einen ebenen Tisch, fern von Magneten oder Metallen und drehe es langsam im Kreis. Eigentlich erwarte ich jetzt Werte von 0 bis 360, dies ist jedoch nicht der Fall. Es kommen Werte herraus die nicht einmal zur Drehbewegung synchron verlaufen, sondern einmal sich schnell ändern und einmal sich langsam ändern, jedoch auch nicht zur eigentlichen Gradänderung passen, bei selbst gleichmäßiger Drehbewegung. Als Sicherheit habe ich auch in meine Python-Dauerschleife eine Wartezeit von 1 Sekunde mit eingebaut, damit der Raspi auch hinterherkommt mit der sense_hat Bibliothek. Als Input verwende ich >>>from sense_hat import SenseHat<<<
    Wenn keine Wartezeit programiert ist, dann sind die ausgegebenen Werte noch schlimmer unterschiedlich.

    Wenn ich den Sensor kippe kommen natürlich auch andere Werte heraus, was ja normal ist wegen der Horizontalen und Vertikalen Komponente des Erdmagnetfeld (Feldlinien verlaufen nur am Äquator parallel zur Erdoberfläche).
    aber das nur am Rande ...

    Ich fürchte jedoch das die sense hat Bibliothek keine Kalibrierung des magnetischen Sensor's vorgesehen hat, weis jemand Rat, dann bittte posten. Kennt jemand ein Kalibrierungsprogramm / Pythonbibliotek womit ich einen magnetischen Sensor kalibrieren kann, vielleicht auch in Verbindung mit dem Gyroskop und dem Accelerometer.
    Wenn die Rechenleistung des Raspi für eine schnelle Signalverarbeitung nicht ausreichen würde, so habe ich die Möglichkeit den ermittelten Sensorwert per W-Lan zu übertragen und auf einem anderen Rechner zu verarbeiten.

    Meine Motivation ist einen funktionstüchtigen elektronischen Kompass zu programieren/bauen. Der Vorteil der Sense Hat Platine ist, dass ich mich nicht so sehr um die Hardware kümmern muss.

    Danke für's Teilhaben an euren Ideen, Verbesserungen, Einwände und Tipps. Nur Gemeinsam :thumbs1: sind wir stark!!!

  • Hallo,

    habe in einem Beispiel aus der Doku von SENSE HAT folgendes gefunden:

    Code
    # To get good results with the magnetometer you must first calibrate it using
    # the program in RTIMULib/Linux/RTIMULibCal
    # The calibration program will produce the file RTIMULib.ini
    # Copy it into the same folder as your Python code

    Hoffe es hilft ;)

    LG

    <woltlab-metacode data-name="align" data-attributes="WyJjZW50ZXIiXQ=="><p><span style="font-size: 10pt">Ein "Gefällt mir" oder die Bewertung im Profil ist eine nette Geste für die Hilfe die wir hoffentlich waren oder sind.</span></p></woltlab-metacode>

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!