Betaflight Schwierigkeiten (Beeper, Landen)

    ACHTUNG: Mit der neuen EU Drohnenverordnung muß sich jeder Drohnen-Betreiber beim Luftfahrtbundesamt registrieren und seine Drohne mit der e-ID kennzeichnen! Ein passendes Kennzeichen bekommst Du hier im Shop. Außerdem benötigst Du eine Drohnen-Versicherung. Hier geht es zu unserem Drohnen-Versicherungsvergleich. Informationen zum neuen EU Drohnenführerschein gibt es hier.

    • Hast du unten auf save geklickt, bevor du neu gestartet hast?
      Dynamische Filter gibt es verschiedene. Jeder Filter kann das Flugverhalten verbessern, wenn man ihn richtig einstellt. Aber Filtertuning ist kompliziert. Ich bin ganz froh dass ich mich bisher noch nicht genauer damit auseinander setzen musste.

      Die Blackbox ist eigentlich schon richtig eingestellt. Einen Debug Modus brauchst du erstmal nicht auswählen. Du musst nur noch eine SD Karte einlegen, dann solltest du schon logs bekommen.
    • Hi !
      Ja auf Save und Restart hatte ich natürlich geklickt. Nachdem der Micro dann neu gestartet hat, ist die Option aber wieder deaktiviert.
      Scheint fast so, als ob irgendwas mit eingestellt werden muss um die Option zu aktivieren.
      Bei der "PID Loop Frequenz" habe ich nämlich das gleiche Problem, hier kann ich keinen Wert > 0.5 kHz dauerhaft speichern.

      Anbei nun zwei Log Files von eben.
      Geflogen bin ich im Angle Modus auf freiem Feld.
      In der LOG00004 war alles super !
      Ich bin einmal abgehoben, hab die Höhe eine Weile gehalten und wieder hab erfolgreich landen können.
      In der LOG00005 war dann wieder das Höhenproblem, trotz Gas weg dauert es ewig bis er wieder runter kommt und stieg sogar vorher noch.
      Dateiendung von "BFL" auf "jpg" verstellt.

      Schon überragend der Log.
      Hier die Problemstelle im LOG0005 file.
      Throttle weg und dennoch steigt die Höhe im Baro.
      Kurz davor werden einige Punkte mit einem Kästchen markiert...
      Ich deute das jetzt so, als ob zwischendrin Daten fehlen.
      Wenn diese Daten natürlich wirklich nicht nur im Log fehlen, sondern der Micro zwischendurch aussteigt würde das natürlich mein Phänomen erklären ?
      Dateien
      • LOG00004.jpg

        (678,09 kB, 190 mal heruntergeladen, zuletzt: )
      • LOG00005.jpg

        (406,1 kB, 179 mal heruntergeladen, zuletzt: )

      Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von lethuer ()

    • lethuer schrieb:

      Ja auf Save und Restart hatte ich natürlich geklickt. Nachdem der Micro dann neu gestartet hat, ist die Option aber wieder deaktiviert.
      Scheint fast so, als ob irgendwas mit eingestellt werden muss um die Option zu aktivieren.
      Bei der "PID Loop Frequenz" habe ich nämlich das gleiche Problem, hier kann ich keinen Wert > 0.5 kHz dauerhaft speichern.
      Okay anscheinend liegt das am Motorprotokoll.
      Wähle ich ein anderes als "PWM", kann ich auch "Dynamic_Filter" und andere Einstellungen für die "PID Loop Frequenz" wählen und speichern.
    • Das PWM Protokoll wird vermutlich dein größtes Problem sein. Das ist einfach viel zu langsam. Für eine gute PID Reglerung muss der Regler mit der niedrigst möglichen Verzögerung auf die Messwerte reagieren können. Je größer die Latenz zwischen Messwert und Reaktion, desto größer ist die Gefahr dass sich der Regler aufschwingt. Das tut er bei dir ganz böse. Die Soll- und Ist-Werte (Gyro und Setpoint) schwingen in deinen Logs schon nach kurzer Zeit um 90° phasenverschoben hin und her. Nicht nur wenn du das Gas weg nimmst, sondern quasi die ganze Zeit. Bei dem Versuch seine horizontale Lage zu halten übersteuert er abwechselnd in beide Richtungen, und versucht das mit immer mehr und mehr Gas auszugleichen.
      Also das eigentliche Problem ist dass dass der PID Tune sehr falsch ist, und der PID Regler völlig Amok läuft. Durch das sehr langsame Motorprotokoll hat es der Regler aber extrem schwer. Dass heutige PID Regler nicht mehr auf ein so langsames Motorprotokoll ausgelegt sind kommt wahrscheinlich noch erschwerend hinzu. PWM hat wahrscheinlich schon niemand mehr benutzt bevor es Betaflight gab.

      PWM ist 80x langsamer als aktuelle Motorprotokolle. 2ms Übertragungsdauer gegenüber 25µs mit DSHOT600. Das bedeutet nicht nur dass 80x weniger individuelle Befehle pro Sekunde gesendet werden können (1s/2ms = 500Hz, deshalb die begrenzte Loop rate), sondern auch dass die Befehle mit 80x längerer Verzögerung ankommen und umgesetzt werden. Diese Verzögerung macht es dem PID Regler so schwer. Bis sein Befehl für weniger Gas vom ESC umgesetzt wird ist der Kopter schon längst übers Ziel hinaus geschossen, und er muss schon wieder gegensteuern. Das ganze immer und immer wieder, mit immer mehr und mehr Gas. Bis er letztlich so viel Gas für die Lageregelung aufbringt dass er schon nicht mehr sinken kann. Der nächste Schritt ist dann dass er einfach davon fliegt.

      Die fehlenden Daten sind merkwürdig. Was es damit auf sich hat weiß ich jetzt auch nicht. Aber die sind nicht die Ursache des Problems, denn die Probleme beginnen in beiden Logs schon sofort nach dem Start.

      Poste doch mal ganz genau welchen ESC du hast, und welche Firmwareversion darauf läuft.

      Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von gsezz ()

    • Das Problem ist die hohe Gyro-Update-Frequenz von 8kHz und das völlig veraltete PWM Protokoll.

      Dein FC liest den Gyro 8000 mal pro Sekunde aus, das PWM hat aber eine Pulslänge von 2ms, also mit Deadtime kommen da nur 250 Signale pro Sekunde am ESC an.

      Bei aktuellen Betaflight Versionen ist die Gyro Update Rate fix bei 8kHz für F4 und F7.
      Das ist auch kein Problem, da eigentlich jeder heute mit DSHOT fliegt, was schnell genug ist.

      Einzige Abhilfe wäre eine ältere Betaflight Version zu nehmen, bei der man noch die Gyro Update Rate frei einstellen kann und diese auf 500Hz einzustellen.
      Andere Alternative wären modernere ESC, die das DSHOT Protokoll unterstützen (quasi alle die es aktuell zu kaufen gibt).

    • Also zunächst einmal ganz herzlichen Dank für den Support hier ! Eure Tipps nehme ich gerne an.
      Bevor ich jetzt Unsummen für neue ESC investiere wundert mich schon warum der erste Flug so reibungslos funktioniert hat ?

      Den Versuch mit einer älteren Betaflight Version mach ich gerne mal.
      Welche Version genau wäre denn da empfehlenswert ?

      Meine aktuellen ESC gibt es durchaus ja noch zu kaufen.
      hobbyking.com/de_de/hobbyking-20a-2-4s-esc-3a-ubec.html
      Nur habe ich auch keiner Anleitung entnehmen können welche Protokolle unterstützt werden.
      Nur etwas von 16kHz Betriebsfrequenz bei Außenläufern.
      Gibt es einen Weg die aktuellen auf DSHOT umzustellen ?
      Manual

      Hier einfach mal noch das Datenblatt zu den Motoren, vielleicht wichtig für die Auswahl eines geeigneten neuen ESC.
      Laststrom 10A,
      Laststtom max (60sec) 12A
      Verbaut habe ich den Robbe BL-Motor 2827-26
      der-schweighofer.de/public/files/original/4415/44154.pdf

      Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von lethuer ()

    • Mehr als PWM können die nicht. Das sind einfach ESC aus der Steinzeit. ;)

      Aktuelle ESC findest du hier: n-factory.de/Regler-ESC#products

      Feste Gyro Sampling Rate kam in Betaflight 4.2 github.com/betaflight/betaflig…4.2%20Release%20Notes.md:
      • completely reworked the gyro loop, improved performance and made it always run at the native speed of the gyro (#9444);


      Also alles vor Betaflight 4.2 sollte halbwegs gehen mit den alten Dingern. ;)
    • Wobei "sollte halbwegs gehen" mehr oder weniger bedeutet: Er wird halt so gut oder schlecht fliegen wie Kopter früher mal geflogen sind. Das tolle handling, mit dem heute auch Racer und Freestyler möglich sind, verdanken wir zu einem großen Teil den schnelleren Protokollen und höheren Gyro und loop Raten.
    • Die sind in Ordnung. Wenn du die Möglichkeit hast einen 4 in 1 ESC zu verbauen, dann kommst du damit meistens günstiger. Allerdings müsstest du dann auch die ganze Verkabelung ändern.
      Mit BLHELI32 ESCs kannst du dann mindesten dshot300 als Motorprotokoll wählen. Wenn sie eingebaut sind, würde ich erst einmal ein Firmware Update über die BLHELI32 Suite machen. Dann solltest du auch bidirektionales Dshot und die RPM-Filter benutzen können. Für die muss man noch die anderen Filter etwas anpassen, das kann ich dir bei Gelegenheit mal verlinken, wenn ich Zuhause an PC bin.
    • gsezz schrieb:

      Wobei "sollte halbwegs gehen" mehr oder weniger bedeutet: Er wird halt so gut oder schlecht fliegen wie Kopter früher mal geflogen sind. Das tolle handling, mit dem heute auch Racer und Freestyler möglich sind, verdanken wir zu einem großen Teil den schnelleren Protokollen und höheren Gyro und loop Raten.
      Das stimmt natürlich, der fliegt dann wie ein Kopter vor 8-10 Jahren.
      Wobei ich bezweifele, dass sein Kopter jemals so gut fliegen wird wie ein Racer oder Freestyler von heute. Seine Motoren und der Frame sind mindestens genauso alt wie die ESC. Da hat sich einfach viel getan in den letzten Jahren.




      lethuer schrieb:

      Ich würde dann einfach mal den hier bestellen ?
      Ist der günstigste unter deinem Link aber beherrscht wohl alle gängigen Protokolle...
      n-factory.de/Emax-Formula-Serie-45A-3-5S-BlHeli_32
      Ja, die sind Okay, aber wie gsezz sagt denke eventuell über einen 4in1 ESC nach, das spart einiges an Gewicht und vereinfacht die Verkabelung deutlich.
    • torg3000 schrieb:

      Ja, die sind Okay, aber wie gsezz sagt denke eventuell über einen 4in1 ESC nach, das spart einiges an Gewicht und vereinfacht die Verkabelung deutlich.

      Würde ich jetzt einen neuen Quad aufbauen würde ich mich denke ich für diesen hier entscheiden, da er in die Löcher unter meinem FC passen würde:
      n-factory.de/Bardwell-4in1-3-6s-30A-ESC-BLHeli_32
      Was müsste da für ein Kondensator dran ?

      Ist sogar etwas günstiger als jetzt vier von den anderen zu kaufen, bringt aber in meinem Fall deutlich mehr Aufwand in Sachen Verkabelung mit sich.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von lethuer ()

    • Es ist nicht so wichtig welchen Kondensator man genau benutzt, jeder ist besser als gar keiner. Je größer desto besser, und je niedriger der ESR/die Impedanz desto besser. Pi * Daumen 480-1000µF und bis 25V belastbar, z.B. aus der Panasonic FR Serie. Aber so ganz unter uns, bei veilen ESCs oder FCs werden elend schlechte Elkos mitgeliefert, mit denen auch niemand Probleme hat. ;)
    • torg3000 schrieb:


      Einzige Abhilfe wäre eine ältere Betaflight Version zu nehmen, bei der man noch die Gyro Update Rate frei einstellen kann und diese auf 500Hz einzustellen.
      Andere Alternative wären modernere ESC, die das DSHOT Protokoll unterstützen (quasi alle die es aktuell zu kaufen gibt).


      Ich wollte jetzt zu Versuchszwecken die Gyro Update Rate auf 500Hz stellen.
      Wenn ich das mache verstellt sich auch die PID Loop Frequenz automatisch auf einen kleineren Wert, ich kann sie aber manuell ebenfalls auf 500 Hz stellen.
      Also Automatismus oder beide auf 500 Hz ?
    • Hallo,

      ich habe heute endlich Zeit gefunden den Test mit reduzierter Gyro Update Rate zu machen.
      Es war fast komplett windstill und zuerst dachte ich er würde ganz passabel fliegen.
      In den Logs fehlen dieses mal auch keine Datenpunkte, vom Prinzip übersteuert der PID aber noch immer.
      Könnt ihr noch was anderes in den Logs sehen ?

      Einstellungen:
      Gyro Update Rate 500Hz
      PID Loop Frequenz: 500Hz

      Der erste Flug war wieder problemlos LOG00008.
      Beim zweiten Flug LOG00009 hat es zwar deutlich länger gedauert, aber letztlich trat wieder das Höhenproblem aus.
      Dieses mal habe ich kurz bevor der Quad wieder mit der Höhe verrückt spielte ein einmaliges Piepen durch den Piepser hören können.
      Kann das ein Warnsignal gewesen sein ?
      Bilder
      • Piepser Config.JPG

        84,39 kB, 1.024×453, 119 mal angesehen

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von lethuer ()

    • Im Log 8 fehlen auch wieder Datenpunkte, ab Sekunde 11. Aber dieses mal kann man klar erkennen dass der Gyro auch während diesen Lücken dem Setpoint gefolgt sein muss. Die Daten fehlen also nur im Log, der FC scheint ansonsten auch währen diesen Lücken normal gearbeitet zu haben.

      Sonst sieht das eigentlich nicht besser aus als am Anfang. Tut mir Leid, aber ich bin dann auch etwas ratlos. Ich bin selbst erst seit 3 Jahren dabei, und hatte mit solchen extremen Problemen auf aktueller Technik einfach nie zu tun.
    • Frohes Neues zusammen ! :)
      Nach einiger Umbauzeit habe ich es nun endlich zum nächsten Testflug geschafft.

      Was in der Zwischenzeit passiert ist:
      - Umbau der ESC auf die Emax Fomula: n-factory.de/Emax-Formula-Serie-45A-3-5S-BlHeli_32
      - Update per BLHeli_32 auf die neueste Firmware Rev. 32.7


      - In Betaflight Configurator (BTFL 4.1.7):
      -- DSHOT600
      -- 8kHz Gyro Update Frequenz sowie 8kHz PID Loop Frequenz
      -- bidirektionales DShot aus - Sollte ich das einschalten ?
      -- Dynamic Filter an
      -- Airmode permanent ein
      - Zudem habe ich einige Stunden am Simulator verbracht und das Drehratenprofil übernommen




      Zwei Dinge sind mir jetzt aufgefallen:
      1. Versorge ich zuerst den Flight Controller mit Spannung und schalte erst danach die Funke ein kommt kein Signal am Controller an. Ist die Funke eingeschaltet und erst danach das Board steht die Verbindung sofort. Woran kann das liegen ?
      2. Beim Testflug bin ich jetzt höchstens mal 20cm im Angle Mode abgehoben und habe dann Throttle wieder komplett weg genommen. Der Quad sinkt dann zu Boden und bis dahin fühlt sich das ganz gut an. Aber dann zuckt er ganz komisch obwohl kein Gas mehr gegeben wird. Der Log ist wieder im Anhang LOG00018.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von lethuer ()

    • Ich habe jetzt noch einen längeren Flug (1min) mit bidirektionalem DShot an gemacht LOG00023.
      Nichts wildes, nur ein wenig höher geflogen (max 4m) als vorhin, die Höhe gehalten und langsam wieder dran gewöhnen.
      Die Drohne lässt dabei gut kontrollieren und macht keine unerwarteten Dinge mehr.

      Wenn ich nach der Landung die Motoren einfach abgeschalte ist alles gut, die Frage ist nur ob das Zucken trotz 0 Gas normal ist ?
      Ich vermute jetzt, dass die Drohne nach dem Landen ansonsten weiterhin versucht die Lage zu korrigieren und daher wild zuckt oder kann das noch eine andere Ursache haben ?
      Hier noch ein weiterer Log indem die Motoren nach der Landung weiter laufen und der Quad noch gearmt ist: LOG00022

      Auch den Failsafe habe ich nochmals getestet und dabei festgestellt, dass ich danach den Akku abstecken musste um wieder armen zu können.
      Ist das ein normales Verhalten ?

      Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von lethuer ()

    • Warum sich dein FC so komisch verhält wenn die Funke nicht an ist weiß ich nicht, finde ich aber auch nicht so wichtig. Traditionell schaltet man immer erst die Funke ein, und dann das Fluggerät. Betaflight und andere FC Firmwares haben zwar entsprechende Sicherheitsvorkehrungen um Unfälle beim einschalten zu verhindern, aber bei anderen Systemen (z.B. Wings ohne FC) kann es durchaus noch passieren dass plötzlich Propeller los drehen, oder ähnliches. Man sollte sich angewöhnen die Funke immer als erstes an, und als letztes aus zu schalten.

      Solange der Kopter gearmt ist, ist die Lageregelung aktiv. Wenn der Kopter am Boden steht kann das zu merkwürdigem Verhalten führen. Du solltest sofort disarmen wenn der Kopter am Boden ist.

      Nach einem failsafe wird das arming erstmal gesperrt, um sicher zu stellen dass der Kopter nicht plötzlich wieder los rast wenn du mit der Funke in die Nähe der Absturzstelle kommst. Ich glaube man muss den arming Schalter dann mehrfach umlegen. Wenn das auch nicht geht, dann ist die Sperre vielleicht von deinem Reciever und nicht von Betaflight. Das könnte auch dann mit dem ersten Problem in Verbindung stehen.
    • gsezz schrieb:

      Solange der Kopter gearmt ist, ist die Lageregelung aktiv. Wenn der Kopter am Boden steht kann das zu merkwürdigem Verhalten führen. Du solltest sofort disarmen wenn der Kopter am Boden ist.
      Okay beim Disarmen nach dem Landen war ja alles gut. Was ich nur nicht verstehe ist, wieso sich der Copter nur komisch verhält wenn ich gelandet bin, nicht aber nach dem armen vor dem Abheben ?


      gsezz schrieb:

      Nach einem failsafe wird das arming erstmal gesperrt, um sicher zu stellen dass der Kopter nicht plötzlich wieder los rast wenn du mit der Funke in die Nähe der Absturzstelle kommst. Ich glaube man muss den arming Schalter dann mehrfach umlegen. Wenn das auch nicht geht, dann ist die Sperre vielleicht von deinem Reciever und nicht von Betaflight. Das könnte auch dann mit dem ersten Problem in Verbindung stehen.
      Die Sperre wird es dann vermutlich sein, ich hatte nur zwei oder drei mal versucht wieder zu armen. Ist da eine zeitliche Sperre drin oder werden wirklich mehrmalige Arming Versuche gezählt ?
      Eine Frage hierzu: Der Receiver weiß doch lediglich das ein Schalter der Funke umgelegt wurde ? Basierend darauf wird die Failsafe Prozedur von Betaflight ausgeführt. Woher soll der Receiver davon Wind bekommen ?