2012-02-12 136 views

回答

2

嗯,有點,但你需要做的處理很多..

你可以頻繁的加速度計讀數和integrate the values once to get velocity。這不會給你一個準確的起始速度,但過了一段時間它可能會工作(除非你開始時,手機在車裏開車)。另見this post。現在

,一些僞代碼:

我們開始在t=0並測量在所有三個軸的加速度。

a = get_acceleration() 

vx = vx + a.x - gravity.x; 
vy = vy + a.y - gravity.y; 
vz = vz + a.z - gravity.z; 

這樣做了幾秒鐘後,所有的加速度值(如果你經常品嚐,即,50赫茲)的總和應該是速度。您還需要確定設備的哪個方向,因此您讀取的加速度組件有多少是由於重力和補償。

+0

聽起來不錯。但有點複雜。也許使用GPS是在移動平臺上獲得速度的最佳方式。 – flypen 2012-02-12 08:38:42

+1

也有基本的物理問題,即使你可以完美的取樣(而且手機的方向沒有改變),你不知道你的參照系的速度(即你無法知道不知道是否當你開始採樣時,你以恆定的速度移動)。 – 2012-02-12 09:14:00

+0

另一個問題是隨着時間的流逝,錯誤變得越來越大 - 小的偏差加起來有很大的差別,除非你有辦法不時地規範化。 – johndodo 2012-05-20 17:51:27

相關問題