1
我有從Android手機計算的傳感器數據。我使用xyz座標上的矩陣進行轉換。然後我通過手機獲取的加速度來查找速度和位移。這是我的代碼來找到位移和速度。它總是得到相應的前值:Android傳感器數據位移
velocity[e] = (accel[e-3]) * (time[i]-time[i-1])+velocity[e-3];
velocity[e+1] = (accel[e-2]) * (time[i]-time[i-1]) +velocity[e-2];
velocity[e+2] = (accel[e-1]) * (time[i]-time[i-1])+ velocity[e-1];
displacement[e] = (velocity[e-3])*(time[i]-time[i-1])+.5*(accel[e-3])*pow((time[i]-time[i-1]),2) + displacement[e-3];
displacement[e+1] = (velocity[e-2])*(time[i]-time[i-1])+.5*(accel[e-2])*pow((time[i]-time[i-1]),2) + displacement[e-2];
displacement[e+2] = (velocity[e-1])*(time[i]-time[i-1])+.5*(accel[e-1])*pow((time[i]-time[i-1]),2) + displacement[e-1];
但是我得到像-3436.0 19206.2 11373.5越來越號碼這不應該是差不多高的位移。我甚至做了一個測試文件來測試我的公式,就我得到的數字而言,一切都是正確的。但是,它與真實數據不一樣。另外,我讀了一些關於從加速度,速度和位移中去除平均值的內容,但不太明白,那麼有人可以解釋一個解決方案,以便獲得正確的數字嗎?
代碼中存在錯誤,但即使您修復它們也不起作用。看到我的答案。 – Ali
很高興看到它的幫助。 – Ali