.net 如何从WPF应用程序使用Windows 8平板电脑上的运动传感器?

.net 如何从WPF应用程序使用Windows 8平板电脑上的运动传感器?,.net,wpf,windows-8,sensors,.net,Wpf,Windows 8,Sensors,我有一台Windows8平板电脑。我正在.NET4.5中开发一个WPF应用程序(即不是现代的Windows应用商店应用程序) 平板电脑将安装在卡车上,我需要获得平板电脑的行驶速度。我目前使用的是Windows定位服务(System.Device.Location),但只使用lat/lon坐标。我无法根据坐标随时间的变化对速度进行插值,因为设备没有发出足够的读数进行精确计算 我知道如果我正在开发一个现代应用程序,我可以使用,但这似乎不适用于WPF应用程序 有人知道我如何在WPF应用程序中访问加速计

我有一台Windows8平板电脑。我正在.NET4.5中开发一个WPF应用程序(即不是现代的Windows应用商店应用程序)

平板电脑将安装在卡车上,我需要获得平板电脑的行驶速度。我目前使用的是Windows定位服务(System.Device.Location),但只使用lat/lon坐标。我无法根据坐标随时间的变化对速度进行插值,因为设备没有发出足够的读数进行精确计算

我知道如果我正在开发一个现代应用程序,我可以使用,但这似乎不适用于WPF应用程序


有人知道我如何在WPF应用程序中访问加速计传感器吗?我更喜欢.NET解决方案,虽然我必须考虑一个原生的解决方案。

< P>你不能使用加速度计读数来精确地计算速度,因为如果你错过了值或者读不好或者错过相等和相反的力,你可能会漂移。例如,用户不小心踢了一下平板电脑,因此你读取到了一个巨大的加速度峰值,但由于采样频率的原因,你错过了减速,所以现在你认为你在高速公路上超速,即使你没有。基本上,你无法根据加速度计读数得到可靠的速度计算


您应该继续使用Windows位置服务并进行采样。然后根据你所在位置的最后(x)个样本计算你的移动平均速度。如果您启用了GPS,定位服务将使用GPS,因此在几秒钟的时间内,您可能能够计算出足够准确的速度。我不知道多少秒的采样时间可以为您的速度计算提供一个良好的平均值,但您可以尝试看看哪种方法最有效。

我认为gps跟踪比加速度计的航位推算更准确?特别是,在卡车通常以高速行驶,但加速或减速的频率较低的情况下,为什么会投反对票?这是一个提出得很好的问题。