我正在用C#开发一个小型Windows Phone应用程序。这个应用程序记录加速度数据,GPS位置和指南针数据。
这里是我获取加速数据的代码:
void accelerometer_ReadingChanged(object sender, AccelerometerReadingEventArgs e)
{
Deployment.Current.Dispatcher.BeginInvoke(() => MyReadingChanged(e));
}
void MyReadingChanged(AccelerometerReadingEventArgs e)
{
if (accelerometer != null)
{
xdata = e.X.ToString("0.000");
ydata = e.Y.ToString("0.000");
zdata = e.Z.ToString("0.000");
}
}
之后,另一个代码会将数据保存到MySQL-Database ......
我的应用每秒需要8个值。所以我想用数据计算以厘米[cm]为单位的幅度(高度)。通常,使用加速度数据计算振幅的公式为:
s = 0,5 * a * t ^ 2(+ s0)
s:以米为单位的距离 - t:以秒为单位的时间 - a:加速度im m / s ^ 2
我试着用它计算振幅,但它不起作用。只有错误的价值观。
所以我的问题:
哪个单位或哪种格式具有加速度计的给定输出?真的是米/秒^ 2 [m / s ^ 2]吗?如果不是,我会很高兴你能给我一个正确的单位,最多是完整的公式/方式如何计算。保存的数据是完全正确的,所以我认为我的公式有一些错误......我使用诺基亚Lumia 1520。
由于我的英语技能,我希望你能理解我的问题。 ;)
提前谢谢!