我正在尝试获取时间戳数据以匹配加速度计和陀螺仪的读数。
我正在使用带python的Raspberry Pi 3 B +来获取加速度计(Adxl345)和陀螺仪(ITG3200)的读数。我目前正在以最快的速度通过I2C读取它们,并且在读取之前我从系统时间(time.time())编写了一个时间戳。
我认为这将足够准确,但是当我查看结果数据时,时间通常不是单调的和/或看起来是错误的。实际上,如果我扔掉除了第一个时间戳以外的所有时间戳,然后根据我从中收集设备的频率综合创建时间,结果通常似乎与我跟踪的运动更好地匹配!
也就是说,这种方法显然给了我错误的数据,但是我对在哪里提取正确的数据一无所知。加速度计和陀螺仪似乎没有在任何事情中都包括时间,如果我尽可能快地提取数据,我仍然会以最快的速度错过它们,这意味着我使用的时间总是有些错误。
加速度计还具有一个FIFO缓存,它可以存储一些值,但是,如果再次从这种情况下提取,我如何知道每个值都带有什么时间戳?该文档提到了缓存存储值,但没有涉及时间戳。
所有这些使我相信我缺少一些东西。我不知道这里有秘密吗?还是我不知道的标准做法?任何想法或建议都将受到欢迎。