Holen Sie Abstand von coreMotion Daten

Ich habe eine arduino-Steuerung und led-Licht-Streifen, und ein iphone angeschlossen an den arduino über bluetooth. also die Anzahl der Lichter, die eingeschaltet sind, entsprechen den Handys die position entlang einer x-Achse enter image description here

Ist es möglich, verwenden Sie den Beschleunigungsmesser, um die Entfernung einschätzen zu können, muss das Telefon gereist. ich bin derzeit der Abruf der Beschleunigungsmesser bei 0,01-Sekunden-Intervallen. so im 0,5 Sekunden werde ich ein array von 50 Werten. Ich glaube, jeder Wert repräsentiert die g-Kraft bei der Instanz, die es gemessen wurde, also 1.0 = 9.8 Meter/Sekunde. Was wäre die Formel zu nehmen und das array und das Zeitintervall zur Berechnung der Entfernung? Bin ich das Rad neu erfinden hier? ich fühle mich wie arKit zu verwenden hat irgendeine Art von positions-tracking ähnelt. Gibt es etwas in coreMotion könnte diese Aufgabe für mich.

Die obligatorische Entschuldigung für die, die nicht wissen, was ich Tue. auch die ähnliche Frage gestellt, bevor, aber Sie sind >2 Jahre alt, und die Antwort war dann sein kann, aber nicht genau. ich nehme an, es könnte genauer sein, jetzt, da arkit nicht funktionieren würde, ohne dabei so etwas wie

1 Antworten

  • Duncan C
    4. Mai 2019

    Nein, das ist nicht praktisch. Das problem ist die drift. Sie können nicht sagen, ob das Telefon ist immer noch oder bewegen mit einer Konstanten Geschwindigkeit, und der Beschleunigungssensor nicht genau genug, um "null-out" die Geschwindigkeit des Telefons. Kleinere Fehler in Ihren Berechnungen fast sofort Sumpf Ihrer Ergebnisse, und Sie können nicht sagen, ob das Telefon sitzen immer noch oder bewegen sich mit konstanter Geschwindigkeit.