Добрый вечер, Купил и подключил сенсор IMU. Начал просматривать показания порта - выяснил странную закономерность: если установить сенсор осью Z вверх и не трогать, то постепенно растут показания "yaw" Другими словами, если положить его на стол и подождать минуту другую, то они вырастут от 0 до 180 и так далее. Есть ли какие-то объяснения этому?
Мне помогло: 1. в примере от амперки добавляем коээфициент // обновляем входные данные в фильтр gy поправочный коэффициент filter.update(gx, gy + 0.005 , gz, ax, ay, az); цифру можно посчитать экспериментально - добавляем коэффициент от балды - если поехало в другую сторону делим пополам и снова пробуем - я подобрал быстро.... (+ или - смотря в какую сторону отклонения) 2. Вместо ПК цепляем любой экран куда и печатаем значения yaw и организовываем нормальное питание IMU с пина 5V+ Ардуино. Саму Ардуину запитываем от внешнего источника питания. Через com порт мне так и не удалось добиться стабильной работы этого модуля. Макетка с экраном и батарейкой лежала на столе и показания практически не уплывали.
6 осей или 9? Если 6 ,то x y imu будет держать, имея как реф g, а угол рыскания будет дрейфовать, но 180° в минуту - многовато. Еслы выставить калибровку должен рыскать 0,01-0,1°/с. Если нужно четко держать угол рыскания, то берите 9 осей, но там свои тонкости - у него как реф по рысканию компас, в помещения и у железа хреново держит, только на воздухе вдали от эм полей и железок.
Сенсор вот этот: >> ТУТ << С рысканьем: ситуация такая 0.01 град за 10 ms то есть 1 град в с или около того. Есть ли какой-то способ найти угол поворота в принципе? Идея робота была в том, чтобы сделать корабль, который бы корректировал свой курс относительно заданного изначально угла. Пока не получается - так как при повороте робота я не могу точно диагностировать на какой угол он повернулся. Я думал IMU должен был бы мне помочь в этом.
должно быть раз в 100 меньше. Для отстройки дрейфа нужен imu с копмпасом, 9250 например. Но с ним также нужно аккуратно - только на воздухе и без магнитных полей.
Я пользуюсь без компаса - с компасом вообще какая-то фигня... да и кстати если на датчик подуть из обычного бытового фена показания плывут в одну сторону а если обмахивать листом бумаги понижая температуру то в другую. Надо выводить какую ту зависимость от температуры и корректировать скетч - благо термометр там в комплекте
Датчик сильно температурно-зависим. Попробуйте калибровать гироскоп на включении. Надеюсь, считывание показаний происходит через равные интервалы времени? Тогда после старта обнулите yaw, подождите хотя-бы 20 интервалов времени и полученный угол разделите на 20. У вас выйдет текущая поправка на дрейф при данной температуре. Вот ее и отнимайте после каждого измерения. Естественно, температура в процессе может изменяться и поправка будет огрубляться, но зато это лучше, чем ничего Правильные системы калибруют по температуре, которую выдает встроенный температурный датчик. Но это сложно и дорого.