AW: Steigungsmesser im Smartphone?
Ich hab darüber auch schon ein wenig nachgedacht. Ich denke, dass es schwierig ist, zumindest aber relativ ungenau, denn:
Ich denke bei Handys wird die Neigung aus den Daten des Beschleunigungssensors abgeleitet. Soll heißen, in Ruhe ist der Betrag des Vektors den der Sensor liefert etwa 9,81 m/s^2. Die Projektion dieses Vektors auf die Geräteachsen liefert die Neigungswinkel in drei Koordinaten.
Bildlich gesehen hast du an deinem Handy einen Gummiband mit einem Gewicht hängen und misst die Winkel zwischen Faden und Gerät und die Länge. Das funktioniert Prima, solange das Gerät ruht, aber wenn es sich bewegt nicht mehr so gut.
Die Analogie mit dem Faden ist relativ gut, denke ich (wenn man Schwingung aufgrund der Trägheit und Windreibung vernachlässigt):
Der angezeigte Wert wird verändert durchs Treten,
Bremsen/Beschleunigen allgemein, Kurven, Bodenunebenheiten usw. Der Vektor ist die Summe aus (statischer) Erdbeschleunigung und (dynamischer) Fahrtbeschleunigungen. Wird der Betrag größer als 9,81m/s^2 gibt es unendlich viele Möglichkeiten der Zusammensetzung.
Manche dieser Probleme lassen sich vermindern durch sorgfältige Kalibrierung (speziell feste Ausrichtung des Geräts zum Fahrradrahmen), andere durch gute Filterung (Mittelung...) der Messwerte über eine Gewisse Zeit. Und ein gutes Modell der Beschleunigungen, die am Fahrrad auftreten braucht man auch. Zu allem Überfluss sind in Handys billige Sensoren verbaut, die sich nicht gerade durch hohe Genauigkeit auszeichnen.
Um dann die geleisteten Höhenmeter berechnen zu können benötigt man noch die Strecke oder die Geschwindigkeit+Zeit. GPS wäre theoretisch möglich, frisst aber Strom wie blöd (und die Höhenangaben aus dem GPS sind extrem ungenau). Theoretisch könnte man diese Daten auch aus dem Beschleunigungssensor bekommen, man hat aber die gleichen Probleme wieder, die ich oben schon beschrieben habe. Stichwort Trägheitsnavigation / Dead reckoning.
Unter Laborbedingungen geht das sicher alles prima, aber in der Praxis ist es alles andere als trivial.
Für Android kannst du Dir mal "SportsTracker (by STL)" von sportstracklive.com anschauen. Arbeitet auf GPS-Basis. Als ich es das erste mal getestet habe, waren die angezeigten Höhenmeter fünf Mal höher als realistisch, nach einem Update immer noch zwei Mal höher. Das ist aber schon eine Weile her, vielleicht hat es sich noch gebessert.
Da hast du aber natürlich keine live-Steigungswerte.