PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Linux, Wine und COM1



Rabenauge
10.08.2015, 15:11
Hallochen.
Für meinen autonomen Monstertruck brauche ich einen Kompass.
Den hat er auch, aber ohne Kalibrierung ist der unbrauchbar.

Das Problem hat mich schon mal wochenlang beschäftigt, und dann gab es hier: http://diydrones.com/profiles/blogs/advanced-hard-and-soft-iron-magnetometer-calibration-for-dummies
die einzige, wirklich funktionierende Lösung.
Alle anderen funktionieren von gar nicht bis kaum- nur diese tut es.

Nun aber habe ich weit und breit kein Windows mehr zur Verfügung, und das Programm MagMaster läuft in Wine nicht richtig.
Das heisst: es läuft sehr wohl, nur ist kein COM-Port auswählbar.
Ja-ich weiss, man kann da nen virtuellen Link usw- das klappt hier _nicht_.

Das Ublox U-Center hatte das Problem auch- dort war obiges die Lösung.
Funktioniert seitdem einwandfrei.
Bei MagMaster geht es _eben nicht_.

Vor lauter Verzweiflung hab ich es mit VirtualBox und nem richtigen, installierten XP auch versucht, aber es gab exakt das selbe Ergebnis- das Auswahlfeld für den COM-Port bleibt einfach leer.
Bitte jetzt aber keine Links, wie man virtuelle Com-Ports in Wine einrichtet- das bringts nicht. Die meisten der Anleitungen sind restlos veraltet, und alle anderen dürft ich wohl durch haben.
Und: mit dem U-Center funktioniert es, das Problem scheint also anderswo zu liegen.

Hat noch jemand eine Idee?

morob
10.08.2015, 15:18
sourcecode runter laden
mono verwenden, nur als idee

Rabenauge
10.08.2015, 15:23
Soweit ich weiss ist das Programm nicht quelloffen. Es gibt nur diesen Downloadlink-und das Archiv enthält keine Quellen.

morob
10.08.2015, 15:30
https://github.com/YuriMat/MagMasterSource

:D

Rabenauge
10.08.2015, 16:08
Danke.
Das allerdings bekomm ich nicht hin, dazu fehlen mir Grundlagen. Ich versteh kaum die Hälfte der Anleitung dazu.
Wie wärs, wenn wir das mal gemeinsam _hier_ angehen?
Das Programm ist nämlich _wirklich_ gut (die einzige, mir bekannte Methode, aus dem HMC5883l _wirklich_ brauchbare Daten herauszubekommen), und ich denke, das wird anderen dann auch mal helfen...

Ich hab generell kein Problem, mich da durch zu beissen, aber ohne jemanden, der echt Ahnung von hat, wird das nix.

morob
10.08.2015, 17:27
ich komme aber erst am we dazu.

Rabenauge
10.08.2015, 19:35
Kein Problem.
Nen bissel versuche ich es ja selber und- es gibt genug andere Baustellen. :)

morob
23.08.2015, 15:05
sieht nicht gut aus mit den quellen. es werden sachen vom ms verwendet, die in mono nicht implementiert sind.
ich guck mal weiter

ich habe mir mal die exe runter geladen, sieht erstmal normal aus. ich muß mal weiter schaun. die seriellen schnittstellen werden mir angezeigt.
läuft bei mir mit einer mono runtime nicht mit wine.

ich habe mein kompass gefunden :D

Rabenauge
24.08.2015, 14:40
Hm, bei mir läuft sie nicht erst.
Ausser nen paar Fehlereldungen tut sich nix, wenn ich mono MagMaster.exe tippe.


Missing method EnableVisualStyles in assembly /home/ichselber/sketchbook/MonsterTruck/MagMaster/MagMaster/MagMaster.exe, type System.Windows.Forms.Application

So geht das noch ne Weile weiter...:(

Welche Vorteile hat der Kompass da, ausser dass er "recht teuer" ist?
Ich benutze die HMC5883l-Module aus Ebay- da kosten drei Stück um nen Fünfer (drei würd ich kaufen, denn ich hatte auch schon einen bei, der _gar_ nicht gehn wollte).
Ansonsten bin ich mit den Dingern zufrieden- wenn die Kalibrierung mal gemacht ist, laufen die ziemlich gut.

HaWe
24.08.2015, 15:48
kA was das mit dem mono ist, aber falls du jetzt immer noch einen gut funktionierenden Kompass brauchst:
diesen hier finde ich genial, er bringt außer 3D Einzelwerten und lagekompensiertem Magnetkompass-Heading sogar fertig Kalman-gefilterte IMU Werte mit, und einstellen oder kalibrieren braucht man überhaupt nichts:
http://www.mindstormsforum.de/viewtopic.php?f=78&p=67484#p67401

Rabenauge
24.08.2015, 19:46
Der Sensor da- hm. Ich kann nicht glauben, dass der völlig unempfindlich gegen äussere Magnetfeld-Einflüsse ist??
Das Ding sitzt bei mir in einer relativ "verseuchten" Umgebung- keine 20 cm von nem Bürstenmotor der 540er Baugrösse entfernt. Und mehr oder weniger ringsum auch Elektronik und Leitungen.
Und diese Bedingungen sind, wie sie sind, da wird nix dran geändert. Kommt der mit _sowas_ wirklich gut klar? Ich brauch es nicht aufs zehntel Grad genau, aber 2-3 Grad schon.

HaWe
24.08.2015, 20:03
davon hattest du aber bisher nichts geschrieben, mit den 20 cm von nem Bürstenmotor der 540er Baugrösse entfernt. Ich bezweifle allerdings auch, dass du das mit dem internen Rausrechnen überhaupt mit auch nur irgendeinem Kompass hinbekommst, denn lokale Störfelder (Fehlweisungen) lassen sich nur mit externen (ungestörten) Kompassen als externe Referenz herausrechnen.
Wenn du's trotzdem versuchen willst - viel Glück!

morob
24.08.2015, 20:50
mono ist sowas wie wine unter linux, funktioniert aber etwas anders

HaWe
24.08.2015, 21:11
ach so.
Ich wollte nur aufs 3D-Kalibrieren samt waagerechter Lagekompensierung aufmerksam machen, was beim CMPS11 vorn vornherein, ohne irgendwelche Hilfsprogramme funktioniert.
Unabhängig davon muss aber sicher das Kompensieren gegen Störfelder erfolgen, das geht aber nur mit externen, ungestörten Kompassen.
Immerhin wird aber beim CMPS11 jede Kompass-Drehung an sich durch andere Sensorwerte (u.a. Gyro) per Kalmanfilter gestützt, was ihn schon mal grundsätzlich inerter macht gegen Störungen als es ein reiner Kompass sein könnte.

Rabenauge
24.08.2015, 22:56
Es geht, HaWe.
Der HMC5883l lief ja bereits, und das ausreichend genau.
Genau dafür aber brauche ich MagMaster, mit dem Programm werden alle drei Achsen vermessen, und die Fehler dann herausgerechnet. Damit schafft es dann selbst dieser simple Kompass, trotz der Störungen (er wird in der Einsatzumgebung kalibriert) ne _ausreichende_ Genauigkeit zu erreichen.
Neigungskompensation ist natürlich immer ein Vorteil, aber im Grunde brauche ich die gar nicht (wollt ich evtl. später softwareseitig nachrüsten, da ich auch ne MPU 6050 ohnehin verbaut habe).
Genauigkeiten von 3-5 Grad reichen völlig, da ich ja nen GPS an Bord habe. Um nen vorgegebenen Punkt zu erreichen, ist ein gradgenauer Kompass nicht nötig, da die Kursabweichung immer grösser wird, je näher man dem Ziel kommt.

HaWe
25.08.2015, 07:50
ok, oben schriebst du:

Ich brauch es nicht aufs zehntel Grad genau, aber 2-3 Grad schon.
2-3 Grad wären eng geworden.
Jetzt schreibst du aber

Genauigkeiten von 3-5 Grad reichen völlig, da ich ja nen GPS an Bord habe.
das ist aber plötzlich schon eine ganz andere Aussage.
Dann probiers eben mit mono, wenn es geht.

morob
25.08.2015, 07:54
man kann den motor entstören und den kompass auch noch anders setzen, bin ich der meinung.

die nächsten tage kann ich den kompass mit der software unter linux testen, ich melde mich dann wieder.

Rabenauge
26.08.2015, 18:21
Enstören ist relativ nutzlos (als oller RC-Modellbauer mach ich das sowieso routinemässig), da es um Magnetfelder geht. Und die hat jedes stromführende Kabel, und das in Dimensionen, die so ein Kompass durchaus deutlich bemerkt.
Ja- man _kann_ den auf ne Stange setzen, schön weit von sämtlicher anderen Elektrik weg, und dann funktioniert es auch- aber das kommt bei mir einfach aus optischen Gründen nicht in Frage.
Ich _will_ es nicht.
Es lief auch so schon (nachdem die Hard-Iron-Calibration, um die es hier geht, gemacht wurde) ausreichend genau, also will ich es _so_ wieder haben.

Das Einzige, was sich geändert hat, ist das Betriebssystem auf meinem Rechner, sonst nix. Grad sitze ich mal wieder vor VirtualBox, offenbar wird der Arduino nicht von VB erkannt, scheinbar liegt da der Grund des Übels.

Unregistriert
27.08.2015, 07:06
Hallo,
ich nehme den Player von VMWare, der geht besser.
Ich nehme den unter Linux und habe keine Probleme mit den Schnittstellen, selbst unter XP als virtuelles System für die Telefonanlage.
Ich komme WE dazu eine Lösung unter Linux zu testen.

Gruß
morob