GPS und "Windrad" alleine wird wohl nicht genügen.Ich glaube, dass meine Sensoren prinzipiell für die Steuerung des Fliegers geeignet sind.
Was hast Du sonst noch an Sensorik?
Hallo Leute,
nachdem ich vor ein paar Monaten ein GPS-gesteuertes Fahrzeug (https://www.roboternetz.de/phpBB2/viewtopic.php?t=18005) vorgestellt hatte, wage ich mich nun daran, eine Steuerung für ein Modellflugzeug zu entwickeln. Dazu habe ich den EasyStar von Multiplex mit Gumstix-Rechner, GPS-Empfänger und Windrad ausgestattet. Einige Testflüge habe ich auch schon gemacht, so dass ich eine Handvoll Logfiles zur Verfügung habe.
In den letzten Tagen habe ich versucht, den Flieger auf Autopilot fliegen zu lassen, d.h., ich übergebe die Steuerung per Schaltkanal an der Fernsteuerung und dann soll er einfach die aktuelle Höhe, Richtung und Geschwindigkeit halten. Das tut er dann auch, aber nach wenigen Sekunden fängt alles an zu schwingen, d.h., er fliegt Schlängellinien und Auf-und-Ab bis ich die Steuerung wieder übernehmen muss, damit er nicht abstürzt.
Jetzt die Frage an die Regelungs-Experten: Ich benutze einen PID-Regler für alle drei Stellgrößen (Gas, Seitenruder, Höhe). Wie finde ich am besten die geeigneten Parameter für den Regler heraus, ohne tausendmal Testflüge zu machen und Abstürze zu riskieren? Würdet Ihr die Parameter aus den Telemetriedaten bestimmen?
Ich glaube, dass meine Sensoren prinzipiell für die Steuerung des Fliegers geeignet sind. Das GPS hat eine Update-Rate von 5 Hz und sollte damit ausreichend für den relativ langsamen Flieger sein. In der Regel macht der EasyStar so um die 40 km/h...
Ich häng mal zwei Bilder von heute Morgen an. Leider scheint ja jetzt das schöne Wetter erstmal vorbei zu sein. Mal sehen, wann ich wieder fliegen kann
Gruß, Achim.
GPS und "Windrad" alleine wird wohl nicht genügen.Ich glaube, dass meine Sensoren prinzipiell für die Steuerung des Fliegers geeignet sind.
Was hast Du sonst noch an Sensorik?
hi,
ich denke gps ist zu ungenau, was auch zu schwingungen führen kann.
am einfachsten ist die regler auslegung am modell. stell doch ein mathematisches modell auf, da gibt´s bestimmt einige unterlagen in form von uniskripten für luftis, wie man das am besten modelliert mit auftrieb, usw. dann sollten einige testflüge reichen, um die parameter zu identifizieren.
dann kannst du den regler mit den unterschidlichen verfahren, von loop-shaping, bis h-unendlich entwerfen.
am pc kannst dann dein flieger beliebig oft fliegen und abstürzen lassen in simulink oder ahnlichem. und so dein regler testen und optimieren.
sonst bleibt halt nur ausprobieren in testflügen.
mfg jeffrey
Hm, also abgesehen von zwei Temperatursensoren habe ich nur GPS und "Windrad". Letzteres hat einen Messbereich von ca. 10-40 km/h, wobei es relativ träge reagiert. Also nicht gerade ideal. Muss ich eben erstmal bei Windstille fliegen
Was die Genauigkeit von GPS betrifft, bin ich eigentlich zuversichtlich. Die Messungen schwanken zwar in bestimmten Bereichen, aber das geschieht langsam und stetig. Nur selten habe ich harte Sprünge von mehreren Metern. Weiterhin fliegt ein gut getrimmter Flieger ja auch erstmal geradeaus und der EasyStar ist eigenstabil. Lässt man ihn einfach so segeln, sieht die Flugbahn eigentlich recht geradlinig aus. Die Regelung sollte also nicht zu viel eingreifen, sondern versuchen, den Flieger möglichst sich selbst zu überlassen.
Puh, was die Reglerverfahren anbetrifft, muss ich mich wohl erstmal belesen. Naja, es stehen ja lange Winterabende an Auf jeden Fall schon mal danke für die Anregungen.
Ich denke, für den nächsten Testflug beschränke ich mich erstmal nur auf eine Stellgröße, nämlich das Seitenruder, und steuere den Rest manuell. Dann werde ich den D-Anteil des Reglers relativ hoch wählen, weil das m.E. dem Verhalten des Seitenruders am ehesten entspricht. Aus den Logfiles lese ich ab, dass man eine Kurve mit einem großen Ruderausschlag einleitet und dann mit fast neutralem Ruder durchfliegt...
OK, wenn es was neues gibt, melde ich mich wieder.
Gruß, Achim.
hi,
ich denke um einen autopilot zu programmieren musst du mindestens noch die lage des flugzeugs, woher solle er sonst wissen, ob das flugzeug ins trudeln gerät, oder gerade auf dem kopf steht.
mfg jeffrey
ja einen gyro weil das gps erkennt nicht die lage im raum den wenn dein flugzeug auf dem kopf fliegt reagiert es anderst als wenn richtig rum fliegt.
mfg
Ja, eine Lageregelung wäre natürlich wünschenswert und bei schnellen oder nicht eigenstabilen Flugzeugen auch notwendig. Ich möchte aber pragmatisch vorgehen und zeigen, dass es mit dem EasyStar auch ohne geht. Hab vor einiger Zeit mal ein Paper gelesen ( http://controls.ae.gatech.edu/papers...on_dasc_01.pdf), wo genau das beschrieben ist.
Abgesehen davon, dass ich gar keinen Platz mehr für ein Gyro habe, ist ein solcher Sensor zur Lagemessung allein nicht geeignet. Er könnte sicher helfen, Windeinflüsse auf die Drehung um die Hochachse zu stabilisieren. Aber normalerweise legt der Flieger sich nicht auf den Rücken, es sei denn, es herrscht Orkan oder der Pilot legt es darauf an.
Das Problem mit Gyros und Beschleunigungssensoren, die in Kombination sog. IMUs ergeben, ist, dass sie zu ungenau sind und mit der Zeit wegdriften oder für normale Leute nicht bezahlbar sind. Sie müssten also noch durch zusätzliche Magnetfeldsensoren oder Horizontabtaster (Infrarot- Temperatursensoren, siehe http://www.nongnu.org/paparazzi/autopilot.html) ergänzt werden. Das möchte wegen Platzmangels, zu hohem Stromverbrauch und der Einfachheit erstmal vermeiden.
Gruß, Achim.
hi,
in dem paper steht ja schon drin, wie man das flugzeug modellieren kann.
mfg jeffrey
Is ja lustig, ich bin auch gerade an dem (fast) gleichen Projekt dran und benutze ebenfalls den Easystar, der ist wirklich schön eigenstabil (jedenfalls bei Windstille).
Was benutzt du denn für einen GPS-Empfänger?
Ich glaube nicht, dass GPS allein ausreichen wird.
Ich baue mir zudem gerade die IMU selber. Platinen für die 3 Gyroskope und den 3-Achsen-Beschleunigungssensor sind fertig. Es wird dann der Gyro-Typ "XV3500CB" von Epson und der ACCL-Typ "ADXL330" von Analog Devices verbaut.
Die Lageerkennung und Lageregelung sehe ich als zwingend notwendig um eine stabile Plattform zu bekommen.
Mit der Drift hast du natürlich recht, aber ich habe schon von Projekten gelesen, wo das hin bekommen wurde.
Gerade der Beschleunigungssensor und die nachhaltige Filterung (am besten mittels Kalman-Filter) soll das kompensieren.
Gruß,
Tom
Hi, ich benutze den SAM-LS von u-blox. Den gibts dort wohl mittlerweile nicht mehr, aber die Teile werden ja immer kleiner und leistungsfähiger. Das Modul ist mit 4Hz Update-Rate angegeben, aber 5-6 Hz ist auch noch drin.
Eine IMU habe ich auch - die von Rotomotion. Das Teil ist aber viel zu groß und schwer für den Easystar. Sollte es mit GPS allein nicht klappen, muss ich mir einen anderen Flieger besorgen, der mehr Zuladung verträgt. Der Movie Star soll dafür geeignet sein...
So Leute, schönes Wochenende! Ich geh fliegen
Gruß, Achim.
Lesezeichen