Adafruit BNO055 "raw data" quaternion выход
Вам всем привет,
Прошу прощения за основной вопрос, но я не смог проверить это сам, просматривая библиотечные файлы. В справочном руководстве BNO055 есть пример "Необработанные данные датчиков", который советует следующее:
Если вы не хотите использовать Унифицированную сенсорную систему Adafruit ( например, если вы хотите получить доступ к необработанным данным акселерометра, магнитометра или гироскопа непосредственно перед обработкой их алгоритмами слияния датчиков ), вы можете использовать необработанные вспомогательные функции в драйвере.
Ключевыми функциями необработанных данных являются:
getVector (adafruit_vector_type_t vector_type) getQuat (пустота) getTemp (пустота)
А вот и код для кватернионов:
imu::Quaternion quat = bno.getQuat();
/* Display the quat data */
Serial.print("qW: ");
Serial.print(quat.w(), 4);
Serial.print(" qX: ");
Serial.print(quat.y(), 4);
Serial.print(" qY: ");
Serial.print(quat.x(), 4);
Serial.print(" qZ: ");
Serial.print(quat.z(), 4);
Serial.println("");
Я проследил, что функция просматривает значения регистров для вывода кватернионов из спецификации датчика (см. раздел 4.3.34).
Но кое-что меня смущает.
- являются ли данные, выводимые из вышеуказанной функции, плавлеными и калиброванными данными от датчика BNO с использованием их фильтров?
- Если нет, то как мне получить эти данные (данные "самого высокого качества" от датчика)?
- если данные из приведенного выше кода являются выходными данными алгоритмов слияния датчиков, то почему руководство советует обратное, как указано выше? И почему ему нужно делать дополнительную математику на нем, как описано в классе кватернионов?
Извините, если это многословно. Я ценю, что вы нашли время, чтобы помочь новичку! Я пытался спросить на официальных форумах, но ответа пока нет.
0
- Эмуляция 1-проводных устройств
- Использование библиотеки емкостных датчиков с мультиплексором 74HC4067
- Определение относительно точной скорости с помощью ИДУ
- Датчик освещенности BH1750 всегда дает выходной сигнал 54612 лк
- Получить значения акселерометра от BNO055 с помощью Единой библиотеки датчиков adafruit
- Не удалось найти подходящую библиотеку для MPU9250.
- Ошибка повторного объявления библиотеки Arduino
- Использование Broadcom AFBR-S50 с Arduino