RCT Jeti VarioMeter released

  • VOBO
  • VOBO's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • Posts: 537
  • Thank you received: 135

TPL_KUNENA_MESSAGE_REPLIED_NEW RCT Jeti VarioMeter released

05 Sep 2017 16:42
#7
Ja, alles wie beim Jeti-Vario oder dem von Unisens.

Gruß Volker

Please Log in or Create an account to join the conversation.

  • Klausp
  • Klausp's Avatar
  • Offline
  • New Member
  • New Member
  • Posts: 8
  • Thank you received: 0

TPL_KUNENA_MESSAGE_REPLIED_NEW RCT Jeti VarioMeter released

05 Sep 2017 17:08
#8
Danke

Please Log in or Create an account to join the conversation.

  • nightflyer88
  • nightflyer88's Avatar
  • Offline
  • Premium Member
  • Premium Member
  • Posts: 137
  • Thank you received: 143

TPL_KUNENA_MESSAGE_REPLIED_NEW RCT Jeti VarioMeter released

08 Oct 2017 20:08
#9
Habe den Code noch ein wenig optimiert und erweitert:

- Präzision und Reaktionszeit des Vario optimiert, die Auflösung ist nun bei 1cm
- Fehler behoben: die aktuelle Höhe wurde vom BMP280 nur mit 1Meter Auflösung gelesen, daher war das Vario ziemlich ungenau
- exponentiellen Filter und Mittelwert Berechnung des Vario Wert durch einen schnellen Tiefpass Filter ersetzt
- alle Einstellungen der Firmware übersichtlich in der Defaults.h Datei zusammengefasst
- Es wird nun auch der BME280 Sensor unterstützt, damit wird auch die Luftfeuchte angezeigt (kann in der defaults.h Datei eingestellt werden - standard ist BME280 eingestellt)

hier mal zum testen: github.com/nightflyer88/Jeti_VarioMeter

Habe den Sensor nur kurz getestet, der ausführliche Praxistest kommt noch. Evtl. muss man am Vario Tiefpass Filter noch ein wenig Feintuning machen :whistle:

Please Log in or Create an account to join the conversation.

  • VOBO
  • VOBO's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • Posts: 537
  • Thank you received: 135

TPL_KUNENA_MESSAGE_REPLIED_NEW RCT Jeti VarioMeter released

08 Oct 2017 20:21 - 08 Oct 2017 20:23
#10
Interessant.
Allerdings ist es etwas ominös das wir plötzlich eine Auflösung von 1cm haben sollen. Nach meiner Kenntnis hat der BMP280 nur eine maximale Auflösung von 1m.

Aber egal, werde meine RCT-Variometer dann umflashen und schaun ob sich was ändert.

Gruß Volker
Last edit: 08 Oct 2017 20:23 by VOBO.

Please Log in or Create an account to join the conversation.

  • TeroS
  • TeroS's Avatar Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
  • RC-Thoughts
  • Posts: 527
  • Thank you received: 370

TPL_KUNENA_MESSAGE_REPLIED_NEW RCT Jeti VarioMeter released

09 Oct 2017 04:43
#11
Interesting indeed.

I was under theimpression that altitude can be measured with one meter precision with BMP280. But you are right on the vario, the pressure is multiplied with 100.

What I don't understand is why you read altiude as "curAltitude = bmp.readAltitude(1013.25) * 100; // In Meter", what is the purpose of 1013.25? I think there is no need for that since a) that should be adjusted to every users local value and b) we are more interested in relative altitude? it does not harm anything, that's for sure.

Looks interesting, I'll have a test-run tonight. Thanks for the work, mu code usually has a lot room for improvement :)

Please Log in or Create an account to join the conversation.

  • nightflyer88
  • nightflyer88's Avatar
  • Offline
  • Premium Member
  • Premium Member
  • Posts: 137
  • Thank you received: 143

TPL_KUNENA_MESSAGE_REPLIED_NEW RCT Jeti VarioMeter released

09 Oct 2017 10:55
#12
VOBO wrote: Nach meiner Kenntnis hat der BMP280 nur eine maximale Auflösung von 1m.

Neinnein der ist viel genauer. Schaut mal hier ins Datenblatt aus Seite 8: ae-bst.resource.bosch.com/media/_tech/me...-BMP280-DS001-18.pdf

Kurze Erläuterung zum Programmablauf:

Schauen wir uns mal die funktion in der BMx280 lib an:
float Adafruit_BME280::readAltitude(float seaLevel)

readAltitude liefert den Höhe Wert als float zurück. Also als Zahl mit Dezimalstelle (zB: 511.23m). Nun wird der Wert in curAltitude geschrieben, curAltitude ist aber ein long. Das bedeutet, dass curAltitude keine Dezimalstelle speichern kann, wir haben nun im Beispiel nur noch 511m. Multiplizieren wir jedoch den float wert von readAltitude mit 100, so haben wir nun in curAltitude die Höhe in cm (also 51123).

Wie man oben erkennen kann ist der Wert in Klammern 1013.25, der Luftdruck auf Meereshöhe. Der Wert ist nach internationaler Höhenformel, jedoch ergibt sich daraus nur eine theoretische absolute Höhe, und variiert je nach Wetterlage sehr stark (+/-50m oder sogar +/-100m ist nichts ungewöhnliches). Ich musste aus kompatibilitäts Gründen zur BME280 lib einen Wert in die Klammern setzten, da sonst immer ein Fehler vom compiler gemeldet wurde.

Please Log in or Create an account to join the conversation.

Time to create page: 0.370 seconds
Powered by Kunena Forum