Endlich GPS für Multiwii

weisseruebe

Erfahrener Benutzer
Kann man nicht nur die Dezimalstellen filtern, den Rest so lassen und das danach wieder zusammenbauen? Nur die letzten Stellen brauchen doch Filterung.
 

Derjunior

Erfahrener Benutzer
Hey, bei mir funktioniert jetzt auch das ublox mit ubx :eek: .
Jürgen wenn ich die einstellungen so vornehme wie in deinem Link beschrieben steht, ist das dann so richtig? wie lese ich die Firmware aus im Ublox prog?
Also Fix hab ich relativ schnell bekommen aber wenn ich über Google Earth schaue wandert das Gps schon so im 50m umkreis:)
Mal schauen ob man das noch besser hinbekommt.

Gruß Micha
 

Roberto

Erfahrener Benutzer
Hi!

@Der Junior: Hehe, dann hättest Du Dir den NMEA fix sparen können :)

Die "uint32-Bit-NMEA" Geschichte hat mein wolle-Lz-GPS auch echt nach vorne gebracht!

Jetzt wirds OT.
Ich hatte mir so einen Spike - Filter vorgestellt.
Der sollte eigentlich so funktionieren:
Beispiel mit 5 Elementen:

54321

Im ersten Schritt wird sortiert von niedrig nach hoch:

12345

Der Wert in der Mitte ist dann das Ergebnis: hier "3"
Neue Werte werden an beiden Enden eingefügt.
Z.B Neuer Wert 4

42344

Dann wird sortiert:

23444

Das Ergebnis (die Mitte) ist dann: 4

Jetzt kommt ein Aussreisserwert z.B 9

93449

Sortieren:

34499

Das Ergebnis (die Mitte) ist dann: 4

Jetzt wieder ein "normaler" Wert z.B 5

54495

Sortieren

44559
Das Ergebnis (die Mitte) ist dann: 5

usw.

Das funktioniert sogar mit Barowerten erstaunlich gut. Nur bei GPS Daten geht es noch vor die Wand.
Vielleicht kann jemand etwas damit anfangen.

LG
Rob
 
Zuletzt bearbeitet:

Roberto

Erfahrener Benutzer
Danke!!
Mittlerweile habe ich den GPS code mal hier und da auf 64 Bit aufgebohrt, jetzt scheint der Spikefilter zu funktionieren. Den original moving average habe ich gelöscht, und durch den "baro" gleitenden Mittelwert ersetzt (allerdings 64Bit). Tja, wie es mit der Rechenzeit aussieht weiss ich nicht, aber er scheint 10Hz GPS Daten noch verdauen zu können...... Hoffentlich bringen die Änderungen auch einen praktischen Nutzen und nicht nur Murks.

LG
Rob
 

Roberto

Erfahrener Benutzer
Hi!

Ich glaube, in der NMEA Auswertung gab es noch mehr Probleme mit den Datentypen. Aktuell habe ich das mal komplett auf "uint_32" umgestellt, ausserdem ist der moving average Filter anders, und auf 64 Bit in der Auswertung aufgebohrt.
Ich habe die Datei zum öffentlichen Testen hier angehängt. Die Voreinstellungen sind - rein zufälliger Weise :) - für das "wolle lz gps", also MMEA MTK 10HZ (SBAS ist eingeschaltet). Heute komme ich wahrscheinlich nicht mehr zum Testen.

LG
Rob
 

Anhänge

Karsten J.

Erfahrener Benutzer
Hi Rob. ich hab mein gps auf 5 hz eingestellt.
muss ich vorm Aufspielen Deines Prog. mein gps auf 10 hz schalten oder spielt das keine rolle.

Gruss Karsten
 

Roberto

Erfahrener Benutzer
Danke Karsten, für Dein Interesse!
Ich weiss nicht, was Du für ein GPS hast. Die Änderung dürfte hauptsächlich bei GPS Modulen im NMEA Betrieb etwas bringen.
Ein einfaches //#define NMEA macht es da schon. Die Einstellungen Deines GPS Moduls werden nicht geändert. Wenn Du ein MTK Modul im NMEA Modus verwendest, hast Du die Wahl zwischen #define ROBNMEAMTK10HZ oder #define ROBNMEAMTK5HZ.
In beiden Fällen wird SBAS und WAAS eingeschaltet. Wenn es bereits über Deine GPS FW eingestellt war, wird es nur doppelt eingeschaltet :). Das Vorgehen habe ich mir im Arducoptercode abgeschaut :).
Da das lz gps sowieso auf 10 Hz läuft (eigene FW) wird NUR bei der Auswahl von 5Hz dem MTK Modul auch der entsprechende Befehl gesendet. Wenn Du 10Hz bei Deinem MTK einstellen willst, musst Du leider noch Zeile 1249 und 1250 auskommentieren - sorry hatte ich vergessen vor dem uploaden - kann ja nicht jeder ein lz gps haben :) .

LG
Rob
 

Karsten J.

Erfahrener Benutzer
Hi Rob.

Auch ich hab ein lz gps und habe mit mini gps das ganze auf 5hz umgestellt, daher die Frage:
 

Roberto

Erfahrener Benutzer
"mini gps das ganze auf 5hz umgestellt,"
Das bleibt nur bis zum nächsten Ausschalten erhalten, danach läuft Dein GPS wieder brav auf den original Firmware 10 HZ!!
Bei mir ist das so. Überprüfe das bitte auch mal. Nach dem Umschalten mit mini GPS macht er brav 5 HZ, wenn Du dann das GPS Modul neu startest und wieder mit mini GPS ausliesst, wirst Du feststellen, dass er wieder auf 10 HZ läuft.
An Deiner Stelle würde ich #define ROBNMEAMTK10HZ nehmen und im multiwiisketch #define GPS_FILTERING aktiviert lassen.

LG
Rob

EDIT: In der Zwischenzeit habe ich EOS Bandi informiert, mal sehen.
 
Zuletzt bearbeitet:

Karsten J.

Erfahrener Benutzer
Hi Rob,

da ich mittlerweile ein Fan Deiner Firmwares bin, werde ich die morgen mal aufspielen und testen :
 

Roberto

Erfahrener Benutzer
Danke für Deine Testbereitschaft!
Eos Bandi sagt, dass es keinen Überlauf geben könnte, weil die Multiwii nur 4 statt 5 Stellen (arducopter) ausliesst. Hmm...... vielleicht ist es auch eine Compiler-Sache ?
 

martinez

Erfahrener Benutzer
GPS Modul ist bestellt.

Hi Leute,

das wird jetzt aber echt interessant... so ein GPS Modul muss her!
Ich hab´ mir eben so ein http://www.rctimer.com/index.php?gOo=goods_details.dwt&goodsid=763&productname= GPS Modul vom RC Timer bestellt (23 EUR), sobald das da ist kommt es an mein CRIUS AIO.

@Rob: Wenn du hier auch so ein knackig geilen Code wie dein BARO Code hinlegst, dann...... :D
.....auf jeden Fall bin ich sobald mein GPS Modul da ist wieder ein treuer Tester ;)

Viele Grüße

Martinez
 

Butcher

Bill the Butcher
Hallo,m hab endlich auch mien GPS, kabel ist gebastelt, jetz miene frage:

Kann ich das GPS egal "In welche richtung" ausrichten? also so dass meinetwegen es nicht nach forn zeigt sondern 30 grad nach links? sollte gehn odeer? den rest macht ja der kompas ?
 

weisseruebe

Erfahrener Benutzer
Mein MTK-GPS fällt auch wieder auf die Standardwerte der Firmware zurück nach dem Ausschalten. Ich habe die 38400 / 5Hz Firmware und es funktioniert, aber ich habe auch keinen Vergleich, ob es mit 10 Hz oder 115.000 besser wäre.
Mein Drotek GPS lässt sich irgendwie nicht mit 115.000 flashen, dann kommt nur noch Kauderwelsch vom Uart.
 

fdietsch

Erfahrener Benutzer
GPS fällt auch wieder auf die Standardwerte der Firmware zurück
Wirklich gespeichert ?
Pufferbatterie leer ? mal eine Nacht unter Spannung lassen.



martinez
habe das gleiche Modul funktioniert perfekt. musst aber die baudrate auf 115 und 5Hz stellen.
Kabel musst du umlöten.
 
Zuletzt bearbeitet:

Roberto

Erfahrener Benutzer
@Butcher: Dein GPS kann zeigen wohin es will, es muss nur ungehindert den Himmel "sehen" können.
@Martinez: Mit der Hardware wird das was: http://diydrones.com/profiles/blogs/proof-of-concept-test-extremely-accurate-3d-velocity-measurement 5mm/s Anzeigegenauigkeit....
Ach, ja wieso hast Du nicht hier: http://www.foamzone.de/store/index....id=151&zenid=9a2a2daac1b071f5932b31ee00e9e831
gekauft, denn teuer ist immer besser, sogar besser als beim "Hersteller" http://store.diydrones.com/3DR_GPS_LEA_6_p/br-3drlea-6.htm :) :)

@fdietsch: Nope, keine Pufferbatterie/"CAP" dabei.....

LG
Rob
 

Butcher

Bill the Butcher
Definiere ungehindert, habe es auf den turm UNTER die cd spindel-haube gepackt?
 

Roberto

Erfahrener Benutzer
"Definiere ungehindert," ....

für:
a) "Donauwellen"
b) "Wellblech"
c) "elektromagnetische Wellen"

Die richtige Antwort gibt es nach der Werbepause.

LG
Rob
 
FPV1

Banggood

Oben Unten