Inhaltsverzeichnis:

Neigungskompensierter Kompass mit LSM303DHLC - Gunook
Neigungskompensierter Kompass mit LSM303DHLC - Gunook

Video: Neigungskompensierter Kompass mit LSM303DHLC - Gunook

Video: Neigungskompensierter Kompass mit LSM303DHLC - Gunook
Video: 2.0: LM303DLHC MEMs Compass Bearing Tracking Robot 2024, November
Anonim
Neigungskompensierter Kompass mit LSM303DHLC
Neigungskompensierter Kompass mit LSM303DHLC

In diesem Instructable möchte ich zeigen, wie man den LSM303-Sensor verwendet, um einen neigungskompensierten Kompass zu realisieren. Nach einem ersten (erfolglosen) Versuch habe ich mich mit der Kalibrierung des Sensors beschäftigt. Dadurch haben sich die Werte des Magnetometers deutlich verbessert. Die Kombination der kalibrierten Werte von Magnetometer und Beschleunigungsmesser führte dann zu einem neigungskompensierten Kompass.

Was du brauchst:

1 Arduino Uno

1 LSM303DHLC-Ausbruch

1 Steckbrett

1 Widerstand 220 Ohm

1 Potentiometer 10k

1 2x16 LCD im 4-Bit-Modus

1 Kartonetui

1 Kompass

1 Winkelmesser

Einige Drähte

Schritt 1: Erstellen der Rohdaten für die Kalibrierung

Erstellen der Rohdaten für die Kalibrierung
Erstellen der Rohdaten für die Kalibrierung
Erstellen der Rohdaten für die Kalibrierung
Erstellen der Rohdaten für die Kalibrierung
Erstellen der Rohdaten für die Kalibrierung
Erstellen der Rohdaten für die Kalibrierung
Erstellen der Rohdaten für die Kalibrierung
Erstellen der Rohdaten für die Kalibrierung

Die Kalibrierung erfolgt jeweils getrennt für Magnetometer und Beschleunigungsmesser in gleicher Weise. In einem ersten Schritt werden die Rohdaten des Sensors an 12 definierten Positionen ausgelesen (Bild 5.2). Anschließend werden die Korrekturdaten mit Hilfe von Magmaster 1.0 (Bild 5.3) berechnet und können in einer entsprechenden Skizze ausgewertet werden. Eine sehr gute Anleitung findest du hier

www.instructables.com/id/Easy-hard-and-soft-iron-magnetometer-calibration/

Danke YuriMat!

Die Arduino-Skizze "LSM303DHLC_Acc_andMag_Raw_Measurements_201218.ino" liefert die notwendigen Rohdaten. Dazu können Sie in Zeile 17 die Quelle auswählen.

Um mit Magmaster 1.0 zu arbeiten, schließen Sie bitte das Serial Monitor Fenster.

Schritt 2: Erstellen der kalibrierten Messungen

Erstellen der kalibrierten Messungen
Erstellen der kalibrierten Messungen
Erstellen der kalibrierten Messungen
Erstellen der kalibrierten Messungen

Um die kalibrierten Messungen von Magnetometer und Beschleunigungsmesser zu erhalten, übertragen Sie die Werte in die Transformationsmatrix und den Bias in den Arduino-Skizze "LSM303DHLC_Tilt_compensated_Compas_211218", Zeile 236 - 246 für Magnetometer, 268 - 278 für Beschleunigungsmesser.

Zur Kontrolle bietet die Skizze auch einen Vergleich der Rohdaten und der kalibrierten Sensorwerte. Darüber hinaus können Sie die Messwerte mit Kompass und Winkelmesser überprüfen.

Schritt 3: Hinzufügen eines LCDisplays

Hinzufügen eines LCDisplays
Hinzufügen eines LCDisplays
Hinzufügen eines LCDisplays
Hinzufügen eines LCDisplays

Das LC-Display dient zur Anzeige der aktuellen Position relativ zum Erdmagnetfeld. Die X-Achse des Sensors zeigt nach Norden, wobei 0° dem magnetischen Norden entspricht. Der Wert erhöht sich durch Drehen im Uhrzeigersinn auf 360°. Die Neigung des Sensors ist gut kompensiert, sollte aber 45° nicht überschreiten.

Der Anschluss des 16x2 LC-Displays ist Standard und im folgenden Arduino-Tutorial gut erklärt:

www.arduino.cc/en/Tutorial/HelloWorld

Ich hoffe, ich konnte Sie zu neuen Instructables inspirieren und freue mich auf Ihre Projekte.

Empfohlen: