Updaterate der BPM Schätzung erhöhen #27

Open
opened 2018-04-13 14:29:04 +02:00 by toni · 1 comment
Owner

Problem: Aktuell haben wir 6 Sekunden Fenster und Updaten alle 1.5 Sekunden. Zum konstanten halten einer Geschwindigkeit ist das okay. Wenn ich jetzt aber schnelle Tempiwechsel habe, zieht das System recht langsam hinterher. Bspw. von 184 BPM auf 124 BPM brauchen wir einige Zeit, bist sich die richtige Geschwindigkeit eingependelt hat. Um die Updaterate jetzt zu erhöhen, sollte pro Takt (je 4 Schläge) ein Update der BPM passieren. D.h. ein Fenster muss so viele Daten aufnehmen, wie sie innerhalb eines Taktes vorkommen, damit wir immer recht aktuelle Daten haben und keine zu alten Messungen halten, welche das Ergebnis zu stark mitteln.

Lösung: Dynamische Fenstergrößen und eine dynamische Updaterate in Abhängigkeit vom aktuellen Tempo. Bsw. bei 184 BPM -> Fenster = 1 s; Updaterate = 320 ms oder 40 BPM -> Fenster = 6 s; Updaterate = 1.5s.

Problem: Aktuell haben wir 6 Sekunden Fenster und Updaten alle 1.5 Sekunden. Zum konstanten halten einer Geschwindigkeit ist das okay. Wenn ich jetzt aber schnelle Tempiwechsel habe, zieht das System recht langsam hinterher. Bspw. von 184 BPM auf 124 BPM brauchen wir einige Zeit, bist sich die richtige Geschwindigkeit eingependelt hat. Um die Updaterate jetzt zu erhöhen, sollte pro Takt (je 4 Schläge) ein Update der BPM passieren. D.h. ein Fenster muss so viele Daten aufnehmen, wie sie innerhalb eines Taktes vorkommen, damit wir immer recht aktuelle Daten haben und keine zu alten Messungen halten, welche das Ergebnis zu stark mitteln. Lösung: Dynamische Fenstergrößen und eine dynamische Updaterate in Abhängigkeit vom aktuellen Tempo. Bsw. bei 184 BPM -> Fenster = 1 s; Updaterate = 320 ms oder 40 BPM -> Fenster = 6 s; Updaterate = 1.5s.
toni self-assigned this 2018-04-13 14:29:04 +02:00
toni added the
Feature
Android
Watch
labels 2018-04-13 14:29:04 +02:00
Author
Owner

Aktuell so gelöst: Ich habe 6 verschieden Fenstergrößen die parallel laufen. Also pro Fenster wird ein Tempo (BPM) geschätzt und am Schluss entscheide ich mich recht heuristisch, welches Fenster ich dann nehme. Diese Auswahl ist halt bisschen doof. Erst wähle ich die richtige Achse aus und dann wähle ich noch das passende Fenster. Muss doch was clevereres geben.

Aktuell so gelöst: Ich habe 6 verschieden Fenstergrößen die parallel laufen. Also pro Fenster wird ein Tempo (BPM) geschätzt und am Schluss entscheide ich mich recht heuristisch, welches Fenster ich dann nehme. Diese Auswahl ist halt bisschen doof. Erst wähle ich die richtige Achse aus und dann wähle ich noch das passende Fenster. Muss doch was clevereres geben.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: toni/Dirigent#27
No description provided.