Spannung nach Einstecken des Lipos falsch

    • Sonstiges / andere

    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.

    • Spannung nach Einstecken des Lipos falsch

      Hi !

      Ich hab mal wieder ein komisches Problem.
      FC: Diatone Mamba App F722 MK1
      BF: 4.2.9

      Gestern lief alles noch problemlos, heute zickt der Copter rum.
      Verändert habe ich zwischen den beiden Tagen tatsächlich NICHTS !

      Phänomen:
      Wenn ich den Lipo einstecke (der 4.2V hat) meckert das OSD das die Akkuspannug zu niedrig sei (hier werden 3.3V angezeigt).
      Wenn ich gleichzeitig mit dem Messgerät dran hänge sind es 16.78V / 4 = 4.2V
      Versorge ich den FC gleichzeutig über USB mit Strom und stecke dann den Lipo an ist die Welt in Ordnung, auch das OSD zeigt dann 4.15V an.
      Komisch an der Sache finde ich zusätzlich, dass die Spannung nicht sofort auf 4.15V geht sondern erst dahin klettert, dass dauert also 2-3sec und sieht man auch in BF.

      5V, 9V + VCC kann ich auch sauber am FC messen wenn der Lipo eingesteckt ist (auch ohne USB Verbindung).
      Die 3.3V LED am FC leuchtet ebenfalls.

      Wenn ich im BF Menü unter "Strom & Akku" die Voltmeter Quelle von "Onboard Spannungsmessung" auf "Keine" stelle piepst es nicht mehr wie wild nach dem Einstöpseln des Lipos, aber ich bekomme natürlich auch keine Spannungen mehr angezeigt...

      Viele Grüße

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

    • lethuer schrieb:



      Verändert habe ich zwischen den beiden Tagen tatsächlich NICHTS
      Ich hab mich wohl schön selber rein gelegt...
      Ich hatte natürlich doch was in BF geändert: Ich hatte die MaxZellspannung auf 4.1V geändert.
      Dadurch erkennt der Copter 5S anstatt 4S und zeigt entsprechend bei 16.78V = 3.3V an.
      Kann man die automatische Zellerkennung abschalten und das fest vorgeben ?
    • Betaflight hält den 4s Lipo für einen 5s.

      CLI:
      set force_battery_cell_count = 4
      Das deaktiviert die automatische Erkennung des Lipos, und setzt die Zellenzahl fix auf 4s.

      Betaflight misst keine einzelnen Zellspannungen, sondern nur die Gesamtspannung des Zellpacks, stellt dann anhand dieser eine Vermutung auf wie viele Zellen er wohl haben könnte, und errechnet daraus dann die Zellspannung. Unter manchen Umständen kann das daneben gehen, weil die gleiche Gesamtspannung sowohl bei einem vollen 5s, aber auch für einen leeren 6s Lipo auftreten könnte.

      Mit 4s ist mir das allerdings auch noch nicht unter gekommen. Normalerweise passiert das erst ab 5s aufwärts.

      edit. Da bist du mir dazwischen gekommen. Wegen deinen 4.1V max tritt das bei dir schon ab 4s auf, sonst wie gesagt eher erst ab 5s aufwärts, wenn sich die Spannungsbereiche der Lipos weiter überschneiden. Stell wieder 4.2V ein, und gut ists. Ich glaube diese Einstellung hat auch keinen anderen Zweck als diese automatische Erkennung der Zellenzahl.
    • gsezz schrieb:

      Ich glaube diese Einstellung hat auch keinen anderen Zweck als diese automatische Erkennung der Zellenzahl.
      Ich hatte gehofft damit die PIDs bei vollem Pack etwas mehr reduzieren zu können da ich am Anfang des Lipos kurz ein paar Oscillations habe (direkt nach dem Abheben, Gasstellung etwas überhalb von Hover Niveau.)
    • Ja, die scheint momentan ganz dreckig per compiler macro gesetzt zu werden, und ist nicht user konfigurierbar. Steht aber auf der Todo List. ;)


      C-Quellcode: src/main/flight/mixer_init.c

      1. #if defined(USE_BATTERY_VOLTAGE_SAG_COMPENSATION)
      2. mixerRuntime.vbatSagCompensationFactor = 0.0f;
      3. if (currentPidProfile->vbat_sag_compensation > 0) {
      4. //TODO: Make this voltage user configurable
      5. mixerRuntime.vbatFull = CELL_VOLTAGE_FULL_CV;
      6. mixerRuntime.vbatRangeToCompensate = mixerRuntime.vbatFull - batteryConfig()->vbatwarningcellvoltage;
      7. if (mixerRuntime.vbatRangeToCompensate > 0) {
      8. mixerRuntime.vbatSagCompensationFactor = ((float)currentPidProfile->vbat_sag_compensation) / 100.0f;
      9. }
      10. }
      11. #endif
      Alles anzeigen

      C-Quellcode: src/main/sensors/battery.h

      1. //TODO: Make the 'cell full' voltage user adjustble
      2. #define CELL_VOLTAGE_FULL_CV 420


      edit

      Ich glaube diese Einstellung hat auch keinen anderen Zweck als diese automatische Erkennung der Zellenzahl.
      Um das richtig zu stellen: Ich konnte sie im Quellcode nur noch an einer weiteren Stelle finden, und das ist zur Ermittlung des aktuellen Ladestands, wenn die Batteriekapazität als Null konfiguriert ist. Also ziemlich uninteressant, denn die Berechnung geht von einem linearen Spannungsverlauf aus, und hat damit das Niveau einer Glaskugel...

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