У меня есть Erables из eSense.io , и я пытаюсь преобразовать значения из акселерометра, указанного в формате AD C (что означает «аналоговые значения, преобразованные в цифровые»), в линейное ускорение используя флаттер плагин для этого earables. В листе данных содержится информация об этом устройстве, как я могу преобразовать значения AD C в m/s^2
и g
, но ничего о "как получить линейное ускорение".
Другими словами: я хочу иметь значение 0 в каждом компоненте, если устройство не перемещается, за исключением компонента Y. Оно должно быть близко к гравитационной постоянной g. Например, если я использую плагин для датчиков флаттера , я могу получить этот результат очень просто:
accelerometerEvents.listen((AccelerometerEvent event) {
print(event);
});
даст что-то вроде этого: [AccelerometerEvent (x: 0.0, y: 9.8, z: 0.0)]
.
Есть ли какие плагины флаттера / дротика, которые я могу использовать, которые преобразуют значения [x, y, z] AD C в значения линейного ускорения?
Чтобы преобразовать значения X, Y, Z в m / s ^ 2 Я делаю: (eachAccValue / accScaleFactor) * g
, где eachAccValue
: значения X, Y и Z из акселерометра в формате AD C, accScaleFactor
: коэффициент, указанный единицей измерения, в моем случае это 4096, g
: константа гравитационного ускорения.
В eSense earase используется шестиосный инерциальный измерительный блок InvenSense MPU6500, включающий трехосный акселерометр, трехосный гироскоп.