gpt4 book ai didi

Android:同步传感器和 GPS 的时间戳

转载 作者:行者123 更新时间:2023-11-30 04:06:54 28 4
gpt4 key购买 nike

有没有办法同步传感器(例如加速度)(SensorEvent.timestamp) 和 GPS (Location.getTime()) 测量值中的时间戳。< br/>SensorEvent.timestamp 是设备启动后的纳秒数(本地时间)。 Location.getTime() 是自 1970 年以来的毫秒数(全局时间)。

我想到的一个解决方案是计算本地时间和全局 (GPS) 时间之间的偏移量。但问题是,Location 中的时间是 GPS 消息到达设备的时间,但设备的 GPS 单元(不知道它是如何调用的)计算位置和计算位置需要一些时间将它转发到我的应用程序,所以我无法计算消息到达的本地时间。我在某个地方(不记得在哪里)读到消息从到达到被处理的延迟可能是几百毫秒,所以我总是会在 GPS 数据和来自其他传感器的数据之间有一个高偏移,如果当应用程序获取位置消息和位置中的时间戳时,我会设置本地时间。
有没有办法计算出处理 GPS 消息需要多长时间?或者有其他方法可以同步测量吗?

我想要同步值的原因是,我想对数据应用过滤器(例如卡尔曼过滤器)。为此,我想尽可能准确地计算传感器值和 gps 值之间的偏移量。

最佳答案

通常,每秒脉冲 (PPS) 信号用于将测量时间与本地时钟相关联。 GPS 接收器在测量时切换脉冲。然后使用本地时钟为该脉冲加上时间戳。在 Android 手机上,这不可用。

除了处理和传输时间造成的延迟外,GPS 软件中的过滤也可能导致额外的延迟。这种延迟甚至可能取决于所用卫星的速度或数量。

您可以通过比较来自两者的信号来“校准”GPS 数据和传感器数据之间的延迟。例如:如果您从加速变为减速,您会在手机的加速度计和 GPS 速度中清楚地看到这一点。但是,我怀疑您是否可以获得延迟的良好准确性。您甚至可以在估计延迟的卡尔曼滤波器中添加一个状态。

关于Android:同步传感器和 GPS 的时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11461274/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com