Настройка/отладка доступного 9DOF IMU

imu magnetometer

Я купил IMU с 9 степенями свободы на AliExpress (рис. распространенная проблема (и я истекающий кровью нуб). Я попытался настроить эту плату, используя примеры кодов из Adafruit — предполагая, что это сработает и это совместимая плата (и она выглядела точно так же). Однако сюрприз - несколько ошибок.

  1. С помощью этого руководства я попытался запустить pitchrollheading - он сообщает, что LSM303 не найден. Проводка соответствует этому руководству, A4 (SDA) и A5 (SCL) подключены, 5 В, земля IMU к земле Arduino (Arduino uno, как в руководстве)

  2. Затем я отладил линии на плате с помощью мультиметра: 5 В на линии относительно земли, 5 В на линиях SDA/SDC (казалось, все в порядке)

  3. Затем я провел отладку с помощью библиотеки i2cdetect, однако она сообщила, что она пуста.

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
     00:          -- -- -- -- -- -- -- -- -- -- -- -- --
     10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
     20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
     30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
     40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
     50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
     60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
     70: -- -- -- -- -- -- -- --
    
  4. Используя аналоговое считывание, я могу получить значения, которые меняются при перемещении платы, что подтверждает, что — теоретически — плата работает.

Вопросы

  1. Разум от отладки: по каким причинам плата не указана в списке с помощью библиотеки i2cdetect (также попробовал скрипт)?
  2. Есть ли простой способ (или вы бы порекомендовали потратить время на изучение) использования необработанных данных из аналога Arduino в линиях для вычисления тангажа, крена и курса?
  3. Будет ли такой проект на несколько порядков проще в настройке с помощью raspberry pi (у меня есть готовая установка)? (больше библиотек?)
  4. Являются ли IMU обычно простыми в настройке, и вероятно ли, что это будет проще с более дорогим IMU (например, MPU9250? /6500)?

Заранее спасибо, и, пожалуйста, помните: я нуб, прошу вашего терпения и совета.

, 👍1

Обсуждение

Вы не упомянули о соединении земли платы с землей Arduino... не так ли?, @Majenko

да! :)), @user2305193

сначала я попробовал это с Arduino nano и телефонным кабелем otg. Но те же результаты с ПК и Arduino uno, @user2305193

@Majenko спасибо, добавил в описание, @user2305193

@jsotola, потому что я хочу получить совет от сообщества и приступить к сбору данных (чего я с нетерпением жду). Возможно, есть рекомендуемый способ интеграции необработанных значений датчиков в систему объединения датчиков, как уже говорилось, я новичок в этом, советы очень приветствуются. С другой стороны, я не уверен, почему вопрос «почему» ориентирован на достижение цели, если только вы не допускаете грубого заблуждения?, @user2305193

что, нет, я могу прочитать аналог, но не могу правильно подключить какую-либо библиотеку... мне непонятно, почему вы хотите закрыть это. Я также хотел помочь правильно отладить и выяснить, не сломано ли устройство так, как я пока не понимаю., @user2305193

@jsotola, вы внесли правку («у грузовика нет топлива», я даже не уверен, для чего это должна быть аналогия) в своем комментарии, которая ясно показывает ваше снисходительное отношение. Я не думаю, что это заслуживает этого сообщества... просто укажите, как я могу улучшить или улучшить свое понимание. Это буквально то, о чем я прошу. В наше время не так уж сложно найти снисходительное отношение вместо полезных замечаний., @user2305193

Давайте [продолжим это обсуждение в чате](https://chat.stackexchange.com/rooms/112752/discussion-between-user2305193-and-jsotola)., @user2305193

Я перепаял все соединения и использовал новые провода. Теперь плата распознается библиотекой i2cdetect. После мультиметрии всех подключений в непрерывном режиме я заметил, что моя макетная плата иногда не работает должным образом. Насколько я могу судить, здесь виноваты дешевые макеты и/или кабели — ошибка новичка. Я предполагаю, что соединение с землей - единственное, что я не измерял раньше, удалю вопрос через 24-48 часов, если нет возражений., @user2305193

опубликуйте это как ответ и примите его ... это может быть полезно для кого-то в будущем, @jsotola


1 ответ


Лучший ответ:

1

Я перепаял все соединения и использовал новые провода. Теперь плата распознается библиотекой i2cdetect. При мультиметрии всех подключений в непрерывном режиме (тот, который выглядит как громкоговоритель) я заметил, что мой макет иногда работает неправильно. Насколько я могу судить, здесь виноваты дешевые макеты и/или кабели — ошибка новичка. Я предполагаю, что соединение с землей - единственное, что я не измерял раньше

,