Ссылка в связанном вопросе содержит следующее:
Поскольку, в частности, выборка в единицу измерения IMU (Acc / Gyro / Magn) синхронизируется LSM6DSL внутренний генератор R C, разность временных меток может варьироваться, и реальная частота дискретизации составляет + -10% от номинала, указанного в параметре подписки . Образцы ЭКГ являются точными, так как этот чип использует тактовый сигнал от стабильного генератора
Таким образом, образцы будут дрейфовать из-за ограничений оборудования датчика IMU.
Чтобы уменьшить, что API измерений включают в себя кристалл-стабилизированные временные метки, которые позволяют синхронизировать потоки данных от разных датчиков:
- Проще всего, что вы могли бы пропустить выборка из потока, который находится позади другого более чем на длину выборки. Этот метод вызывает дрожание синхронизации выборок, но прост в реализации.
- Более сложным способом является повторная выборка обоих потоков и выборка выборок с использованием интерполированных значений на основе временных отметок.
Полное раскрытие: я работаю в команде Movesense