GPS und MultiWii

zwiebacksaege

Erfahrener Benutzer
#1
Hej,

hatte eben meinen ersten erfolgreichen Flug mit GPS und Position hold / Alt hold. Aber es haben sich bei mir noch einige Fragen aufgetan die ihr mir sicher beantworten könnt.

Muss man bei Pos Hold auch im Angle/Stable-Mode sein? Hatte beide Settings probiert und ohne Stable Mode schien er einfach in eine Richtung abzuhauen... mag aber auch Zufall gewesen sein.

Und wenn ich im Pos Hold bin und manuell die Richtung ändere dann haut er auch erstmal ab und ich hab das Gefühl, dass er erstmal ne Weile braucht bis er das realisiert. Ist das normal? Gibts da vielleicht n timeout oder so? Oder sollte das nicht so sein?

Gruß zwiebacksaege
 

zwiebacksaege

Erfahrener Benutzer
#2
hat denn keiner n Tipp für mich? ihr fliegt doch alle mit GPS!
 

reverser

Erfahrener Benutzer
#3
Bei PosHold und RTH müssen in der GUI gleichzeitig auch noch Stable Mode und Kompass aktiviert sein, Altitude Hold ist optinonal.

Was heist die Richtung ändern? Aktive Bewegung in irgendeine Richtung oder nur durch Gieren auf der Stelle drehen?

MultiWii hat im Moment nur PosHold und kein Loiter, das heisst wenn du ihn in PosHold manuell steuerst kehrt er wieder an die Position zurück an der du PosHold aktiviert hast.
 

zwiebacksaege

Erfahrener Benutzer
#4
sehr gut.. mit den aussagen kann man arbeiten!

mit richtung ändern meine ich yaw-drehung auf der stelle. dann kommt es mir so vor, als wenn er für n paar sekunden nicht weis dass er nun anders ausgerichtet ist und daher in falsche richtungen die lage korrigiert. aber kann natürlich auch mit den suboptimalen windverhältnissen zu tun haben, die ich gestern hatte.
 

reverser

Erfahrener Benutzer
#5
Eigentlich sollte er bei einer Drehung trotzdem dort bleiben wo er war, evtl wird dein Kompass durch die Drehzahländerung und der damit verbundenen Änderung der Ströme gestört.
 

zwiebacksaege

Erfahrener Benutzer
#6
Evtl hab ich auch einfach nicht die mag Option aktiviert ...:)
Warum muss man die drei auch einzeln aktivieren.
Hätte man ja einfach in die GPS Option integrieren können oder?
 

reverser

Erfahrener Benutzer
#7
MAG müsstest du aktiviert haben, sonst dürfte PosHold auch nicht funktionieren.

Deine Frage kann ich dir nicht beantworten, hätte aber sicher Sinn gemacht.
 

quansel

Erfahrener Benutzer
#8
@Zwiebacksäge
Du kannst doch in der GUI einen Schalter so belegen, dass GPS, Mag
Und ACC gleichzeitig aktiviert werden ...!? Dann kannst Du einen
Anderen - zB 3-wegeschalter - separat mit aus, Mag, ACC belegen ...

Quansel
 

zwiebacksaege

Erfahrener Benutzer
#9
@Zwiebacksäge
Du kannst doch in der GUI einen Schalter so belegen, dass GPS, Mag
Und ACC gleichzeitig aktiviert werden ...!? Dann kannst Du einen
Anderen - zB 3-wegeschalter - separat mit aus, Mag, ACC belegen ...

Quansel
ich glaub du hast mich so ganz und gar nicht verstanden. ich bin natürlich nicht so doof und habe für jede option einen separaten kanal benutzt. ich meine nur, wenn die option GPS für sich alleine gar nicht funktioniert, sondern nur in kombination mit ACC und MAG, dann sollten entweder im code direkt die funktionen von ACC und MAG mit eingeschaltet werden wenn man GPS anwählt - egal ob man es in der gui angewählt hat oder nicht - oder die gui sollte die beiden optionen ACC und MAG bei der wahl von GPS automatisch mit aktivieren. so wie es jetzt ist ist es eine unnötige fehlerquelle für leute wie mich, die einfach GPS ohne alles aktivieren und dann fliegen gehen.
 

zwiebacksaege

Erfahrener Benutzer
#10
Hallo nochmal...

hatte heute bei schönem Abendwetter und Windstille endlich mal Gelegenheit PositionHold ausführlicher zu testen. Dabei hatte ich teilweise ganz schön Probleme. Manchmal stand der Copter bei Aktivierung recht gut direkt an Ort und Stelle. Bei anderen Versuchen drehte er sich dann aber mal seltsam um die YAW Achse oder kippte ich Schräglage und wollte irgendwo anders hin sodass ich abbrechen und manuell zurückholen musste.
Die Daten vom OSD zeigten mir 9 Sats und Heading vom Kompass zeigte auch kein ungewöhnliches Schwanken.
Woran kann das liegen?

P.S.: ACC war gut ausbalanciert und für alles ausser yaw, pitch und roll habe ich Standard-PIDs verwendet.
 

reverser

Erfahrener Benutzer
#11
Drehen um die Gierachse deutet stark auf Mag-Fehler hin.
Mach mal die Props ab und häng den Copter an die GUI. Wenn du jetzt Gas gibst, die Ruder rumreißt und die Motoren mal von Hand bremst (-> Propeller simulierst, Ströme erzeugst) darf sich der Pfeil nicht sonderlich drehen.
Hab kein OSD, könnte aber sein das das etwaige Mag-Störungen glattbügelt.
Wenn der Kurs nicht stimmt kann der Copter auf die GPS-Daten auch nur mit willkührlichen Manövern reagieren.

Alternativ, hast du evtl RTH statt PosHold gedrückt? Dann dreht der Copter bei Standardeinstellung mit der Nase in Richtung Home.Position.

Die GPS-Standardeinstellungen funktionieren ohne Wind schon ganz gut, bis er auch bei starkem Wind oder bei voller Geschwindigkeit so richtig "eingerastet" ist hats bei mir aber einiges an Änderungen gebraucht.
 

zwiebacksaege

Erfahrener Benutzer
#12
okay ich werde das mal versuchen zu testen... wie muss man den MAG sensor eigentlich genau kalibrieren? hab irgendwo gelesen man muss den copter um alle drei achsen drehen und hat dafür 30s zeit. ist das korrekt?

warum kippt er manchmal zur seite weg? es sieht dann aus als würde er versuchen ganz woanders hinzukommen... was ich dann natürlich unterbinden muss damit er mir nicht ganz und gar abhaut. sollte man einen filter fürs GPS im MWcode aktivieren? Wenn ja, welchen? da gibts ja den LEAD-Filter und den average-Filter...?
 

zwiebacksaege

Erfahrener Benutzer
#13
MultiWii hat im Moment nur PosHold und kein Loiter, das heisst wenn du ihn in PosHold manuell steuerst kehrt er wieder an die Position zurück an der du PosHold aktiviert hast.
ich hab grad im MW2.2 diese Zeilen hier gefunden:
Code:
   /* Temporarily Disables GPS_HOLD_MODE to be able to make it possible to adjust the Hold-position when moving the sticks.*/
    #define AP_MODE 40  // Create a deadspan for GPS.
Ist das nicht genau das, was man als Loiter bezeichnen würde?
 

quansel

Erfahrener Benutzer
#14
Hi zwiebacksäge!

Wenn ich den Sketch richtig verstehe, heißt das lediglich, dass er solange
die Position zu halten versucht, wie die Stickeingaben unter dem Wert 40
liegen. Wenn ich stärkere Impulse gebe, "darf" er die Position verlassen.
Ob das Loiter entspricht, weiß ich aber nicht, da ich mich bisher "nur" mit
MultiWii beschäftigt habe.

Zu unserem Missverständnis: ich weiß nicht, ob wir uns wirklich missverstanden
haben, aber ich wollte nur ausdrücken, dass man per Einstellung in der GUI
es auf einfache Art und Weise ermöglichen kann, Mag, ACC und GPS zu aktivieren.
Vielleicht geht man auf Seiten der Entwickler davon aus, dass, wer mit MultiWii
fliegt, sich eh damit mehr auseinandersetzen muss und daher auch das Schalten
der Sensoren im Griff haben sollte ... ich weiss es nicht.

Gruss
Quansel
 

zwiebacksaege

Erfahrener Benutzer
#15
Hi Quansel,

ja man geht sicher davon aus, dass man den Code verstanden hat aber ich störe mich einfach daran, dass es eine Option gibt, die einem eine Funktion suggeriert, die dann aber erst in Kombination mit anderen aktivierten Optionen wirklich funktioniert. Ich kann mir gut vorstellen, dass so eine Sache viele Leute abschreckt oder frustriert, zumal es leicht zu ändern wäre. Man müsste einfach im Code sagen, dass wenn POSHOLD aktiviert ist, auch alle Funktionalitäten der ANGLE und MAG Optionen eingeschaltet werden... unahhängig davon, ob sie in der Gui gesetzt wurden oder nicht.

Zum AP_MODE
nachdem was ich bisher in den Foren gelesen habe, sollte eine neue Hold-Position gesetzt werden wenn diese Funktion aktiviert wird. Ich war mir bis eben nur nicht klar, ob es sich bei der Zahl um Knüppelausschlag oder eine Zeit handelt. Ist aber wohl Knüppelausschlag.
 

zwiebacksaege

Erfahrener Benutzer
#16
ich habe noch eine nette Inspiration von einem member des MW forums bekommen was PosHold angeht.
Er meinte (und ich teile diese Auffassung), dass ein "Aussetzen" des PH bei Knüppelbewegungen und anschliessender Reaktivierung in der neuen Position zu einem schwer regelbaren Zustand führt. Viel besser wäre es, wenn man während PH aktiviert ist mit den Küppeln lediglich die Halteposition ändert. Also nicht direkt die Steuerung des Copters erlangt sondern bei Vollausschlag der Knüppel beispielsweise die gewünschte HoldPosition um 50cm/s bzgl. der momentanen Ausrichtung des Copters ändert. Dann könnte die Regelung ohne großes Überschwingen langsam der geänderten Zielposition folgen. Gerade für Luftbildanwendungen ist das sicher ein viel eleganteres Verhalten. Für den Baro-Code gibt es das meines Wissens in 2.2 schon wenn man die entsprechende Option auskommentiert. Für GPS Koordinaten mit Transformation auf die momentane Copterorientierung ist es natürlich ungleich schwerer. Ich habe mich mal am Code versucht aber bin zu wenig in der Materie, um es wirklich zu Ende zu bringen - dementsprechend betrachtet es bitte nur als groben Code-Vorschlag:

Code:
derzeitiger Code
//                GPS_hold[LAT] = GPS_coord[LAT];
//                GPS_hold[LON] = GPS_coord[LON];
meine Idee
                    GPS_hold[LAT] = GPS_hold[LAT]+50/1.113195*(rcCommand[PITCH]*cos_yaw_x+rcCommand[ROLL]*sin_yaw_y);
                    GPS_hold[LON] = GPS_hold[LON]+50/1.113195*(rcCommand[ROLL]*cos_yaw_x+rcCommand[PITCH]*sin_yaw_y);
wäre echt toll wenn das jemand mal sauber zuende bringen könnte, damit ich es am WE testen kann.
 
Zuletzt bearbeitet:
FPV1

Banggood

Oben Unten