1

Я печатаю на консоли различные компоненты, прочитанные службой движения (величина, ускорение и гироскоп).Как интерпретировать инструменты данных датчика движения TI (техас)?

Я немного смущен, поскольку мои предположения/интуиция кажутся неправильными.

Например, когда устройство наклонено/наклонено определенным образом, я вижу непрерывное чтение, где величина больше 100. Это даже несмотря на то, что само устройство почти не перемещается (если есть). Я ожидал бы, что величина будет близка к нулю (0), поскольку устройство вообще не движется.

Я делаю простую векторную математику, чтобы получить величину, основанную на трехмерной координате, которую устройство выводит из didGetNotificaiton делегированный метод. По простой математике я хочу получить длину вектора из координаты координат 3D.

Вот пример данных.

Movement magnetic= 134.824387985183. 
Movement acceleration = 8.46825231870429. 
Movement gyro = 16.482123031426. 

Может кто-нибудь мне точку в любой документ/исх/пример, который объясняет эти компоненты движения?

ответ

0

Для каждого сенсората есть wiki страниц. Найдите свое, и будут подробные объяснения.

Все в порядке. Какую модель устройства вы используете?

2

Чтобы правильно ответить на ваш вопрос, нам нужно знать, что такое точная модель SensorTag, которую у вас есть. Но я могу помочь с основным объяснением того, что представляют цифры.

Каждый сенсорный тег содержит несколько MEMS (Micro Electro-Mechanical Systems), в которых только спецификация этого сенсора MEMS будет описывать, как декодировать эту информацию. Важными деталями каждого документа спецификации MEMS-датчика будут «диапазон измерения» и «чувствительность измерения», в котором должен помочь следующий пример. Обратите внимание, что следующий пример был создан на основе спецификации Multi-Standard SensorTag, в которой используется MCU MC2650. Этот сенсорный тэг использует MCU Invensense в качестве гироскопа, акселерометра и компаса (см. https://www.invensense.com/products/motion-tracking/9-axis/mpu-9250/)

Фокусировка только на акселерометре в этом примере документация показывает акселерометр «Полномасштабный диапазон» (красный квадрат) и «Чувствительность» Масштабный коэффициент "(синяя рамка).

Accelerometer Specification

Поскольку этот микроконтроллер предоставляет данные акселерометра в 16 битах, это означает, что мы имеем 2^16 = 65535 точек данных, которые могут быть использованы для преобразования данных. Если датчик MEMS запрограммирован на использование диапазона ± 2g, это означает, что мы имеем чувствительность 16 384 LSB/g. В других спецификационных документах принято выражать это значение в мг/LSB, который в этом случае будет 0,061 мг/LSB. Это означает, что каждый раз, когда LSB выхода изменяется на 1, он будет представлять собой изменение 0,061 мг.

В качестве примера, акселерометр, лежащий в таблице, испытывает гравитационное ускорение (1 г), указывающее на пол (отрицательная ось Z), поэтому для поддержания равновесия и, поскольку он плоский на столе, акселерометр будет читать 1 г, указывающий на небо (ось Z).

Таким образом, значение компонента оси z акселерометра, когда оно плотно на столе, должно быть 16500.Так,

16500 LSB * 0,061 мг/LSB = 1,006.5 мг ≈ 1 г

После того, как это применяются ко всей оси акселерометра (или гироскоп со своими собственными значениями) вы будете иметь вектор в желаемых единицах ,

Надеюсь, это поможет!

 Смежные вопросы

  • Нет связанных вопросов^_^