Есть у кого опыт работы с акселерометром GY-61 ADXL335?

Тема в разделе "Схемотехника, компоненты, модули", создана пользователем Shestipaliy, 4 май 2016.

  1. Shestipaliy

    Shestipaliy Нерд

    День добрый.

    Собираю двухколесного робота. Хочется для начала хотя бы знать, стоит ли он на месте (застрял) или все-таки движется. Для этого купил аналоговый акселерометр из темы. Как я понял, он выдает определенное напряжение в состоянии покоя, а при ускорениях это напряжение меняется. Но не смог понять, опознает ли он движение по оси в обоих направлениях или только сам факт ускорения. Допустим по оси х в покое мне приходит значение 200. Значит ли что значение 250 это ускорение по оси в положительную сторону, а 150 в отрицательную? Вообщем для начала я собираю десять значений за секунду и усредняю. А потом смотрю отклонения. И вот по этим отклонениям мне если честно ничего не понятно, скачет все очень сильно. Я даже не могу понять стою я или нет, не говоря уже о направлении движения. Может у меня изначально неправильный подход? Если у кого есть опыт работы, поделитесь пожалуйста. Спасибо.
     
  2. ostrov

    ostrov Гуру

    Все акселерометры и гироскопы сильно шумят. Для подавления шума используют всякие математические методы, как то медиана (не то же самое что среднее значение), комплиментарный фильтр, фильтр Кальмана. Акселирометр не чувствует движение, он чувствует ускорение, то есть момент набора скорости или торможения. Гравитация это тоже по сути ускорение, поэтому акселерометр можно использовать для определения где верх а где низ, например. Однако, движение редко бывает абсолютно ровным, поэтому будет отлавливаться тряска робота по вертикальной оси. Впрочем изменения показателей от тряски будут того же порядка, что и помехи.

    Для определения застрял робот или нет можно попробовать сравнивать показания разгона и торможения с реальными разгонами и торможениями происходящими в данный момент. Если совпадают, то все окей, если по программе торможения нет, а по датчику есть, значит он во что то уперся или в чем то застрял. Наверное так.