Если брать готовый IMU, то там уже есть вся нужная фильтрация. Самому тоже можно все это сделать, но будет немного посложнее, обычно народ на калмане обламывается :))
Определение падения как раз сильно проще, иногда этот алгоритм вообще встраивается в акселерометры. Там, собственно, просто анализируется модуль вектора ускорения, и если он пробивает нижний порог — скорее всего падение. Проще говоря — детектор невесомости, без особенных затей.
С заваливанием мотоцикла посложнее, но тоже ничего особенного.
Именно. Ничего более сложного не надо, для того чтобы определить опасную ситуацию достаточно чтобы вектор ускорения, полученный с трехосевого акселерометра, был направлен вправо или влево от проекции продольной оси мотоцикла на дорогу. Ситуации наклонов в поворотах, и прочее при этом полностью исключены.
Но нужно еще учитывать угловое ускорение, то есть распознавать именно начало заваливания. А точнее даже не само ускорение (вторую производную), а третью производную, то есть угловой рывок. Если отклонение больше порога, и рывок при этом больше порога — выпускаем шасси с этой стороны. Как только все пришло в норму, и стало ниже порогов — убираем, через какое-то время.
Для надежности можно поставить два или три IMU, и сравнивать их сигналы, исключая таким образом отказы. На наземном транспорте обычно ограничиваются дублированием, троирование — это уже из авиации.
Можно, тем более что принудительного заваливания у тебя и нет (ты же не хочешь упасть), а есть только входы в повороты.
Если хочешь, могу накидать алгоритм, но нужно нормальное IMU. Долларов 150 будет стоить, если брать бюджетный вариант. Впрочем, бюджетный сойдет, тут супернадежность не требуется.
1. Защита от выпуска на скорости.
2. Автоматический выпуск при начале заваливания мотоцикла.
Второе особенно важно, ты же без ног, друже. Мало ли что, вовремя лапы не выставишь, завалишься — сам потом не встанешь. Сделать это можно, понадобится IMU и немного программирования, если что обращайся, я помогу и расскажу, что и как надо сделать.
Просто нубы чаще пишут сочинения на тему «я и мой новый мотик» — у них свербит, эмоции, гормоны, хочется поделиться. Пишут обычно что-то восторженное, всегда одинаково.
На Али есть готовые модули на ней, тысяча рублей, примерно.
Все нужные данные можно прямо с нее забирать, она сама делает всю обработку и фильтрацию.
Определение падения как раз сильно проще, иногда этот алгоритм вообще встраивается в акселерометры. Там, собственно, просто анализируется модуль вектора ускорения, и если он пробивает нижний порог — скорее всего падение. Проще говоря — детектор невесомости, без особенных затей.
С заваливанием мотоцикла посложнее, но тоже ничего особенного.
А опыт конечно со временем придет. Тем более что никакого рокетсайенс тут нет.
Но нужно еще учитывать угловое ускорение, то есть распознавать именно начало заваливания. А точнее даже не само ускорение (вторую производную), а третью производную, то есть угловой рывок. Если отклонение больше порога, и рывок при этом больше порога — выпускаем шасси с этой стороны. Как только все пришло в норму, и стало ниже порогов — убираем, через какое-то время.
Для надежности можно поставить два или три IMU, и сравнивать их сигналы, исключая таким образом отказы. На наземном транспорте обычно ограничиваются дублированием, троирование — это уже из авиации.
Впрочем, тут все проще, чем вы думаете :))) Простая физика.
Если хочешь, могу накидать алгоритм, но нужно нормальное IMU. Долларов 150 будет стоить, если брать бюджетный вариант. Впрочем, бюджетный сойдет, тут супернадежность не требуется.
1. Защита от выпуска на скорости.
2. Автоматический выпуск при начале заваливания мотоцикла.
Второе особенно важно, ты же без ног, друже. Мало ли что, вовремя лапы не выставишь, завалишься — сам потом не встанешь. Сделать это можно, понадобится IMU и немного программирования, если что обращайся, я помогу и расскажу, что и как надо сделать.