Baro Code Änderungen

Roberto

Erfahrener Benutzer
Update:

Mit dem Failsave bin ich weiter gekommen. Aktuell löse ich - zu Versuchszwecken - den Failsave mit dem Baroschalter aus :)
Ich habe jetzt die rudimentäre Struktur eines "Autopiloten" fertig, mit dem man verschiedene Aktionen zeit/ereignisgesteuert triggern kann. Während des Fluges wird dauernd das Durchschnittsgas bestimmt über die letzten 5-8 Sek - dadurch erhält man ein Sockelgas, das Beladung/Motorisierung berücksichtigt und nicht eingegeben werden muss. Wird die Automaik getriggert (aktuell Schalter), arbeitet er eine Liste mit Punken ab (max 1Byte=255 Punkte möglich).
1. Setze Variablen u.a Sockelgas für Althold (das Durchschnittsgas der letzten Sekunden)
2. Halte die aktuelle Höhe für 10 Sek und ermittle das dazu nötige Schwebegas
3. Setze Variablen für den Abstieg (fange mit 15cm/s an, siehe Punkt 4)
4. Abstieg
Problem:
a) Bodeneffekt braucht weniger Schwebegas
b) Baro misst falsch im Bodeneffekt und korrigiert Acc daher falsch (ab geschätzten 50 cm)
Die Probleme lassen sich m.E ohne weitere Sensoren (Kontaktschalter/Sonar etc) nicht beheben, daher "Notlösung": Wenn innerhalb von 0,5 Sek die Höhe steigt, statt fällt, dann erniedrige die Sollhöhe um 20cm (max 40cm/s+15cm/s). Die maximale Sinkrate von 55cm/s wird ausserhalb des Bodeneffektes nur kurz erreicht. Insgesamt bedächtiger Abstieg. Das Hüpfen beim Aufsetzen, limitiert sich schnell (ca 5x Hüpfen).
Wenn das Durchschnittsgas der letzten Sekunden kleiner als MinThrbaro+10 ist, gehe zu Punkt 5.
5. Motoren aus, disarm.

So weit bin ich aktuell gekommen. Steige auf eine Höhe, führe GPS Aktionen durch (PH/fliege Punkt XY an), warte X Sek usw., lassen sich durch die Punkte-Struktur relativ leicht einarbeiten. Sofort Motoren aus beim Umkippen, sollte noch unter Punkt 4 rein. Zu den Problemen unter Punkt 4: Ohne hohes Landegestell kann der Kopter eigentlich auch nicht kippen. Was wäre denn, wenn ein Copter mit 30 cm Bodenfreiheit durch ein hohes Landegestell, einen GPS/MAG -Tower hätte wie die DJI Copter, und in dem Tower auch das Baro wäre? Das hätte m.E gleich mehrere Vorteile:
- Das Baro liefert länger anständige Werte bis zur Landung.
- Das Baro wäre direkt lichtdicht und windgeschützt eingepackt.
- Das Baro wäre weiter von den Rotoren entfernt.
- Das Baro wäre weiter von elektrischen Störquellen entfernt (Ich hatte mit der Kombination: BMP085 und Frsky D4FR starke Störungen durch den Frsky - Telemetrieteil)
Tja, nur so eine Idee..

LG
Rob
 
Zuletzt bearbeitet:

fdietsch

Erfahrener Benutzer
Hört sich gut an.
Machst du auch für den normalen Baromodus eine Durchschnittsgasermittlung . Sprich solange Höhe gleich bleibt und ACC keine Änderung meldet eine Duchschnitt aus den Gaswert bilden. Das kann doch eigentlich immer mitlaufen .

Habe Gestern mal BAro2 probiert.:( Beim Einschalten hält er die Höhe fest dann habe ich versucht zu sinken geht nicht bis min Gas runter bleibt der stehen. Dann wollte ich steigen also mehr Gas gegeben. Erst tat sich nix dann stieg er Gas zurück in Mittelpositon hört auf zu steigen unf fällt, fängt an zu pumpen was sich aufschaukelt und immer stärker wird 15m Höhenunterschied bis zum Bodenkontakt. :( Abfangen konnte ich Ihn nicht mit Gas .Nix passiert. :) Habe das noch 2 malprobiert immer das selbe. ?
 

Roberto

Erfahrener Benutzer
Hört sich gut an.
Machst du auch für den normalen Baromodus eine Durchschnittsgasermittlung. Sprich solange Höhe gleich bleibt und ACC keine Änderung meldet eine Duchschnitt aus den Gaswert bilden. Das kann doch eigentlich immer mitlaufen .
Nein, beim normalen Baroeinschalten wird davon ausgegangen, dass bereits ein ausreichendes Gas zum fliegen anliegt. Die Barologic2 passt das Sockelgas dann ggf. an. Bei einem Failsave bin ich davon ausgegangen, dass er in den letzten Sekunden noch einen ausreichenden Gaswert zum fliegen hatte. Bei Eintreten der Notfallsituation kann das Gas des Empfängers nicht mehr verwendet werden und es wird auf den Durchschnittswert zurückgegriffen. Dabei ist es nicht so wild, wenn der nicht korrekt ist, da der Althold Kontroller kaum Begrenzungen hat und die Höhe erreicht/hält. Für das weitere Vorgehen ist dann ein genaues Schwebegas nötig, deswegen wird 10s die Höhe gehalten.

Habe Gestern mal BAro2 probiert. Beim Einschalten hält er die Höhe fest dann habe ich versucht zu sinken geht nicht bis min Gas runter bleibt der stehen. Dann wollte ich steigen also mehr Gas gegeben. Erst tat sich nix dann stieg er Gas zurück in Mittelpositon hört auf zu steigen unf fällt, fängt an zu pumpen was sich aufschaukelt und immer stärker wird 15m Höhenunterschied bis zum Bodenkontakt. Abfangen konnte ich Ihn nicht mit Gas .Nix passiert. Habe das noch 2 malprobiert immer das selbe. ?
Beim Einschalten der Barologic2 wird gewartet, bis die Mitte erreicht ist, bevor eine Änderung der Höhe möglich ist.
Deine Symptome sind m.E Acc und Alt PID Einstellungssache. Im Baromodus2 nicht wild am Gas rudern, bei Problemen - Baro aus schalten. Zum Einstellen #define Rapid_Exit_Barologic2 oder Barologic1 verwenden. Baro muss licht und winddicht sein.

LG
Rob
 

helste

Erfahrener Benutzer
Nachdem ich mich nun wieder dem AIO zuwende, muss ich hier gleich mal was nachfragen. Habe zwar den Thread so einigermaßen weiter verfolgt, aber es kann sein, dass ich auch was übersehen habe. Also bitte um Nachsicht, wenn ich was frage, was hier schon mal erwähnt wurde.
Die erste Frage bezoeht sich auf die neue dev. Da heißt acc jetzt ja level und horizon ist neu dazu gekommen. In der BaroPID4Ginal sind die noch nicht drinnen. Gibt wohl auch noch keine Baroversion mit den neuen Modi, oder? Ich würde nämlich den Horizon mal gerne ausprobieren. Ich habe hier zwar irgendwo gelesen, dass da so mancher seinen Kopoter damit geschrottet hat, aber das wäre mir egal. Ich habe ja noch meinen CD Hüllenquad hier rum stehen und da ist jetzt wieder das AIO drauf. Der ist zum einen nahezu unzerstörbar (ist mir letztens aus 3m Höhe runter geknallt, weil ich was ausprobiert habe) und da war absolut nichts kaputt. Zum anderen ist es mir bei dem sowieso egal, wenn er hin ist, weil ich den ja schon zerlegen wollte, aber ihn dann eben für so Testzwecke lassen habe.

Die 2. Frage dreht sich um die Bluetoothversion. Was soll man da drunter verstehen? Habe nur irgendwo hier wo gelesen, dass es da eine gibt, aber nicht was die kann.
Gestern habe ich ja mal das Bluetooth an das AIO mit der BaroPID4Final angeschlossen und das funktioniert einwandfrei. Was also bedeutet dann die Bluetoothversion?
 

merlin4

Erfahrener Benutzer
Die BT-Version ist für das Nanowii-Board.
Die hat zwar USB (serial 0) zum flashen der Software. Da geht aber kein BT-USB-Modul. Die Nanowii hat aber eine weitere serielle Schnittstelle (serial1), an die man ein BT modul anschließen kann. Nur ist in der MW 2.1 (15.07.12) noch keine Unterstützung für BT am serial1. Dafür hat Ronco seinerzeit den Code aufgebohrt.
Na ja, und die Config-Werte über BT einzustellen ist ja doch erheblich stressfreier... Deswegen habe ich aus der Ronco-Version die relevanten Zeilen in die Baro-Versionen übernommen. Da habe ich mittlerweile Übung drin :)
In den neueren DEVs ist die Schnittstelle bereits vorhanden.

LG Holger
 

helste

Erfahrener Benutzer
So, war gerade mit meinem Testkopter mit dem AIO im Garten. Es war dunkel und es war feucht (99% Luftfeuchtigkeit).
Habe mal die Dev eingespielt, wo der Horizon Modus dabei ist. Blöderweise stimmt die Anzeige der Modi am Android überhaupt nicht, aber da musste ich eh nix einstellen. Habe mich mal um die PID Werte gekümmert. Der komische Quad fliegt wirklich gut. Echt schade, dass seine Tage bald gezählt sind.
Habe dann mal den Horizon Mode getestet. Ich merke da kaum einen Unterschied zum Angle Mode. Zumindest auf dem engen Raum konnte ich da nichts feststellen. Muss man natürlich mal auf ner großen Wiese, wo man voll Stoff geben kann ausprobieren.

Höhe halten funktioniert auf Anhieb sehr gut. Da bewegt sich in vertikaler Richtung so gut wie nichts. Das spielt sich alles innerhalb eines Korridors von vielleicht mal 20-30cm ab. Zumindest im Schweben. Habe dann mal im Vorwärtsflug so ca. 20m zurück gelegt und da sinkt er etwas ab. Deshalb habe ich dann D von 80 auf 90 erhöht und da wurde das dann besser. Muss ich auch mal bei Tageslicht auf der Wiese ausprobieren. Leider komme ich da diese Woche nicht mehr dazu.

GPS konnte ich mangels Platz nicht ausprobieren. Ich kriege aber nach dem Anstecken des Akkus sehr schnell Fix mit 7-8 Satelliten. Ich stecke den Akku an, dann hole ich das Mobiltelefon raus, starte die Naze32app, verbinde mit dem Bluetooth und gehe auf die Seite, wo die Sats angezeigt werden. Da ist er schon mit 7-8 Satelliten im Geschäft. Dauert maximal 15 Sekunden. Das ist sehr gut.
 

fdietsch

Erfahrener Benutzer

helste

Erfahrener Benutzer
Danke, werde die EZGui mal ausprobieren. Lade sie gerade runter.

Angle = Llevel. Heißt jetzt nur anders.
Horizon ist Level, wenn der rechte Stick (Mode2) in der Mitte ist. Je weiter man den Stick von der Mitte entfernt, desto mehr wird der Mode Level zum Mode Acro. Der ACC wird mit zunehmender Entfernung von der Stickmitte immer weniger benutzt und man fliegt dann praktisch mehr mit Gyro. So habe ich das zumindest verstanden.
 

helste

Erfahrener Benutzer
Die Multiwii EZGUI app funktioniert super. Danke für den Tipp. Ich habe gleich mal damit herum gespielt und habe dabei bemerkt, dass ich mitten im Haus 10-11 Satelliten rein bekomme. Wenn ich auf Karte schalte, dann sehe ich sogar den roten Punkt im Haus umher wandern, wenn ich umher gehe. Das ist ja Wahnsinn. Das ublox GPS ist wirklich super.
 

Roberto

Erfahrener Benutzer
@Helste:

Danke, für Dein Feedback!

.. Es war dunkel und es war feucht ...
Kenn' ich :)
Habe dann mal den Horizon Mode getestet. Ich merke da kaum einen Unterschied zum Angle Mode.
Das ging mir auch so. Den Flugmodus habe ich für mich erstmal ad acta gelegt.

Im Multiwii Forum passiert auch etwas. http://www.multiwii.com/forum/viewtopic.php?f=8&t=2371&start=360#p26954
Das ist irgendwie SEHR merkwürdig. Jetzt mal ehrlich, das Thema Althold ist eigentlich durch. Mit mehr Speicher und Rechenleistung liesse sich wahrscheinlich noch eine leichte Verbesserung herbeiführen. Für einen funktionierenden Nazastyle ein closed source .hex zu machen ist lachhaft. Nicht, dass am Ende noch unsere, funktionierende Variante da verscheuert wird :).

LG
Rob
 

FireN

trägt sonst keine Brille!
Was die reinen Multiwii FC´s mit 8 bit betrifft, denke ich auch das du das Optimum rausgeholt hast (baromäßig), werde meine Version auch nicht mehr ändern, Barocode Final4 mit Mwii 2.1 bleibt.
Bin vollstens zufrieden ;)
Das einzige was mich nervt und was noch verbessert werden sollte ist die 32bit software, das die nicht so gut läuft und mir Probleme bereitet geht mir total auf den Sack ^^

Robertooo :)!! :rolleyes:
 

Roberto

Erfahrener Benutzer
Ich lade grade Eclipse und so herunter und werde versuchen "Baseflight" zu kompilieren. Wenn das geht, kommen unsere Änderungen rein, dann gibt es ein Hexfile, das ich nicht testen kann. Da kommst Du dann mit sehr vielen Propellern ins Spiel...

LG
Rob
 

JUERGEN_

Generation 60++
Ich lade grade Eclipse und so herunter und werde versuchen "Baseflight" zu kompilieren.
TC hat ne andere IDE. :(
geht bei mir nur im Terminal mit MAKE.

ich hatte allerdings nur Eclipse nach PX4 angaben.

wenn du noch ne FC ohne DOF haben willst?
ich habe noch eine im Keller. - -
- PM me
 
Zuletzt bearbeitet:

helste

Erfahrener Benutzer
Rob, vielleicht haut der wirklich Deinen Barocode raus und gibt ihn als den seinen aus. Als Hex File ist das schon merkwürdig, für ein Opensource Projekt. Naja, jeder wie er meint.

Was mich anbelangt, so werde ich es auch so machen, dass die Final4 die finale Version für mich ist. Habe ja jetz mal zum Testen des Horizon die dev drauf, aber das brauche ich nicht.
Mache morgen wieder Deine Final4 drauf und die bleibt dann auch auf dem AIO.
Dann baue ich da in den nächsten Tagen einen netten agilen Trikopter drumherum und gut ist.
 
FPV1

Banggood

Oben Unten