Gast
#1724044
Hallo. Ich habe mit einem 3-achsigen Magnetfeldsensor einen elektronischen Kompass realisiert. Dieser funktioniert schon ziemlich gut, allerdings nur,wenn ich ihn in horizontaler Lage halte. Zusätzlich möchte aber nun noch eine Neigungskompensation mit Hilfe eines Beschleunigungssensors für den Kompass realisieren. Im Internet habe ich schon mehrere Pdf´s gefunden,die größtenteils alle auf die selben Formeln zur Neigungskompensation zurückgreifen: X' = X*cos(alpha) + Y*sin(alpha)*sin(beta) - Z*cos(beta)*sin(alpha) Y' = Y*cos(beta) + Z*sin(beta) azimuth = atan(Y'/X') / PI * 180 Diese Formel habe ich in meinen Controller programmiert. Wenn ich mir nun die azimuth-Werte z.B. bei einer X-Achsen-Neigung des Beschleunigungssensors um +/-20° ausgeben lassen,dann schwanken diese in einem Bereich von ca. 80° (azimuth nei -20°:ca. 310°; azimuth bei Nulllage: 16°; azimuth bei +20°: 30°) Meine Frage nun: Was ist an der Formel falsch bzw. muss ich noch weitere Berechnungen ergänzen,damit ich bei Neigung des Kompasses die Richtung nahezu konstant bleibt? Mfg,Sven