Wie im anderen Thread bereits geschrieben möchte ich mir einen elektronischen Kompass bauen, besser gesagt ich möchte einem Mikroprozessor, welcher eine Strecke misst mitteilen, in welche Richtung er sich bewegt. Der Mikroprozessor sollte am Schluss die Richtung angeben können, in die ich mich bewegen muss um zum Ausgangspunkt zu gelangen. Bei meiner Suche nach einem passenden Chip habe ich einige gefunden (hauptsächlich von Honeywell), allerdings weiß ich nicht, welche für mich in Frage kommen. Muss ich für mein Vorhaben ein Kompass-Modul mit einem Beschleunigunssensor kombinieren um akzeptable Ergebnisse zu bekommen? Das Ergebnis sollte auf 1°-2° genau stimmen, eine Auflösung von 1° sollte man erreichen. Der Sensor sollte auch bei Neigung bis ca. 45° noch richtige Messwerte ausgeben.
Wie wird die Strecke gemessen? Und aus welcher Entfernung soll wieder zurück gefunden werden? Besteht die Möglichkeit zum GPS-Empfang? Mit einer Kombination aus Beschleunigungssensor, Wegmessung und Kompass kannst du theoretisch Koppelnavigation betreiben und deine aktuelle Position festellen. Praktisch hat man dabei kein leichtes Speil, weil sich alle Fehler aufsummieren...
Wasser schrieb: > sollte man erreichen. Der Sensor sollte auch bei Neigung bis ca. 45° > noch richtige Messwerte ausgeben. Schau mal nach CMP03, der benutzt 2 Phillips-Hallsensoren. Für einen neigungsunempfindlichen Magnetfeldsensor brauchst du dann sogar noch eine 3 Achse/Sensor, damit du Inklination und Deklination messen kannst. Im Anhang ist das ganz gut erklärt (KMZ51/52)
Ich werde mich als nächstes mal mit dem pdf auseinandersetzen, die Materie scheint mir schwieriger zu sein als ich dachte. GPS-Empfang ist nicht möglich. Es ist auch nicht notwendig, zu wissen, wo auf der Erde ich mich befinde, ich möchte nur, dass der µC mir anzeigt, dass ich mich 100m nach Süden bewegen soll, wenn ich mich vorher 100m nach Norden bewegt habe. Die zurückgelegte Strecke beträgt ca. 1km und man sollte den Ursprungspunkt auf ca. 50m genau treffen. Meiner Meinung nach sollte das ohne Accelerometer nur mit einem 3-Achsen Magnetfeldsenser möglich sein (hoffe ich), aber das steht hoffentlich in dem pdf.
> Meiner Meinung nach sollte das ohne Accelerometer nur mit einem 3-Achsen > Magnetfeldsenser möglich sein Nein, schwerer Denkfehler, denn der merkt überhaupt nicht, wie weit du dich mit ihm zusammen bewegst.
>> Meiner Meinung nach sollte das ohne Accelerometer nur mit einem 3-Achsen >> Magnetfeldsenser möglich sein >Nein, schwerer Denkfehler, denn der merkt überhaupt nicht, wie weit du >dich mit ihm zusammen bewegst. Ich habe mich falsch ausgedrückt. Es sollte nur mit einem 3-Achsen Magnetsensor möglich sein zu bestimmen, in welche Richtung man sich bewegt. Die Information, ob man sich überhaupt bewegt und wie weit oder ob man in Ruhe ist, kommt natürlich nicht vom Magnetsensor. Der Magnetsensor soll mir nur angeben, in welchem Winkel ich zum Nordpol stehe, nur soll er das auch noch tun wenn er um 45° geneigt ist. Und das sollte ohne Accelerometer gehen.
Wasser schrieb: > Der Magnetsensor soll mir nur angeben, in welchem Winkel ich zum Nordpol > > stehe, nur soll er das auch noch tun wenn er um 45° geneigt ist. Und das > > sollte ohne Accelerometer gehen.Beitrag melden | Bearbeiten | Löschen | Lies dir das PDF durch. Dann wirst du feststellen das es ohne Accelerometer nicht geht. Damit stellt man "virtuell eine plane Bezugsebene her.
Ich bin endlich dazu gekommen das pdf zu lesen und hab jetzt auch verstanden warum es ohne Beschleunigungssensor nicht geht. Kennt jemand vielleicht ein fertiges neigungskompensiertes Kompassmodul, welches über eine Schnittstelle auslesbar ist (also den Winkel direkt ausgibt ohne das ich noch irgendwelche Berechnungen durchführen muss)? Gefunden habe ich bis jetzt nur das CMPS03, aber das ist nicht neigungskompensiert.
Schau dir doch mal den LSM303DLH von ST an. Ist ein 3 Achsen Kompassmodul mit eingebautem 3 Achsen Beschleunigungsmesser. Das ganz lässt sich über I2C ansprechen.
PeterK schrieb: > Schau dir doch mal den LSM303DLH von ST an. Sorry, habe erst jetzt gesehen dass du den Winkelwert mit Kompensation möchtest. Dies müsstest du beim ST selbst berechnen. Honeywell hat sonst noch Kompas Module (evtl könnte der HMC6343 für dich intressant sein) im Angebot welche dir den Winkelwert mit einberechneter Kompensation über die Schnittstelle ausgeben. Die gewünschte Genauigkeit könnte dir jedoch noch Probleme machen. Einfluss der Batterie auf das Magnetfeld welcher je nach Ladezustand variiert. Hier müsstest du aber mal ein paar Tests machen...
Der HMC6343 scheint ganz interessant zu sein, den werde ich mir mal anschauen.
@PeterK: Hast du mit dem LSM303DLH schon etwas gemacht bzw. ihn zum laufen bekommen? Ich habe ihn gerade zu Testzwecken,allerdings bekomme ich ihn nicht zum laufen.Woran das liegt ist mir ein wenig schleierhaft,da er ja intern nur aus dem HMC5843 und dem LIS331DLH besteht.Den HMC5843 besitze ich ebenfalls separat und der funktioniert wie gewünscht. MfG Maik
Das hilft aber immer noch nicht, das Problem zu lösen. Auch bei einem neigungskompensierten Magnetsensor kommt hinten nur die Richtung dabei raus, wie der Sensor im Raum orientiert ist. Dieser Wert ändert sich aber nur, wenn man die ganze Anordnung dreht. Sie ändert sich nicht, wenn man sich parallel im Raum bewegt, ohne den Sensor zu drehen. Somit bekommt das Ding niemals mit, wie weit Du Dich bewegst. Stell Dir einfach den klassischen Kompass mit seiner Magnetnadel vor. Nichts anderes ist der elektronische Kompass mit Magnet- und Lagesensoren. Nur daß die Ablesung ein elektrischer Wert ist. Wenn Du allein mit Beschleunigungssensoren den Weg ermitteln möchtest den Du gehst, dann musst Du die Beschleunigung sowohl Linear in 3 Dimensionen wie auch die Rotation über 3 Achsen aufintegrieren und daraus die Geschwindigkeit und darüber die Strecke im Raum errechnen. (Genaueres: http://de.wikipedia.org/wiki/Tr%C3%A4gheitsnavigation ). Das wirst aber mit bezahlbaren Sensoren nicht genau genug hinbekommen. Also bist Du darauf angewiesen, die Wegstrecke entweder anders zu ermitteln (Schritte zählen, Kilometerzähler) und mit den Winkeldaten zu verrechnen. ( http://de.wikipedia.org/wiki/Koppelnavigation ) oder ein GPS-Gerät zu benutzen.
http://www.mikrokopter.de/ucwiki/MK3Mag https://www.mikrocontroller.com/index.php?main_page=product_info&cPath=69&products_id=242&zenid=23de537536678e5ce6b55009cf19972b
hat einen von euch schon mal mit der LSM303DHL was gemacht , versuche schon seit woche daten auszulesen aber immer ohne Erfolg
Auch mit einem 3 achsigen Magnetfelsensor wird solch ein Projekt kaum funktionieren.Das Magnetfeld der Erde ist in allen ! drei Achsen ständig geringen Schwankungen unterworfen.Diese Schwankungen sind teilweise erheblich.Nur ein GPS-Gerät ist erfolgversprechend. http://www-app3.gfz-potsdam.de/Magnetogramme/Niemegk/niemegk_dhz_old.html http://www-app3.gfz-potsdam.de/Magnetogramme/Niemegk/niemegk_dhz.html
nein , das stimmt nicht ich kann die Y und Z Achse richtig lesen aber die X Achse wird immer falsch gelesen , obwohl ich den selben Lesevorgang für die drei Achse einsetze , ich würde mich auf ein gelungenes code freuen Danke
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.