Определение положения в пространстве

Тема в разделе "Arduino & Shields", создана пользователем 4iFF, 9 авг 2016.

  1. 4iFF

    4iFF Нуб

    Здравствуйте!
    Хочу решить сабж через комбо HMC5883L+MPU6050+BMP180. У меня возникло несколько вопросов. Не могли бы Вы помочь мне на них ответить?
    1. В любой плате arduino есть только два аналоговых порта SDA и SCL. Но в MPU6050 и HMC5883L они нужны. Можно ли их оба подключить к SDA и SCL сразу? Вообще можно ли подключить все эти три датчика сразу?
    2. Как я понял что с углом "рысканья" у MPU6050 проблемы, поэтому нужен HMC5883L, и у HMC5883L проблемы с нахождением угла отклонение если начинать его поворачивать не только по углу "рысканья" на горизонтальной плоскости поэтому ему нужен MPU6050. Но проблема в том что у магнитрометр нуждается в не тривиальной калибровке (т.к. на магнитное поле воздействует метал и магниты), если же ее пропустить то значения буду совсем грубые. Причем как я понял калибровать надо и MPU6050. Знаю о способах каллибровки с помощью последовательного порта и программ с gui, но ведь каллибровать надо для каждого применения датчика каждый раз... Есть ли способы приемлемой автоматизированной каллибровки? Про каллибровку MPU6050 ни чего не нашел, как с ней дела обстоят?
    3. А есть ли контроллер где есть все эти три датчика и который сам их каллибрует (по функции в библиотеки или как либо еще)?
    4. Очень интересуют ссылки на матчасть по акселерометру\гироскопу и магнитрометру + по их взаимодействию, в основном то что мне удалось найти это все очень вскольз упоминалось. Очень хотелось бы самому для них библиотеки написать.

    Спасибо за внимание.
     
  2. vvr

    vvr Инженерище

    все ваши датчики имеют разные адреса и в подключении на одну шину проблемы не будет.

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

    смотрите в сторону контроллера Алексея Москаленко ALEXMOS ( супер чувак - его работы сделали прорыв в стабилизаторах для видео)
     
  3. olegtur77

    olegtur77 Нерд

    алексмос несколько другое...ТС вам прямая дорога на изучение Multiwii, там все библиотеки, датчики и т.д. В чем главная задача?
     
  4. vvr

    vvr Инженерище

     
  5. Onkel

    Onkel Гуру

    1 Да
    2 Это не баг, это фича. Исходите из реальности, точного значения угла рыскания простыми методами и простыми железками вы не получите. Автоматизированная калибровка- см. п. 3
    3 mpu6050 имеет на борту вычислитель с самокалибровкой.
    4 задача для батальона штатных вычислителей. Судя по п. 1-3, рекомендую отложить это на потом. ДОстаточно сложная математика.
     
  6. 4iFF

    4iFF Нуб

    Да согласен, в железках у меня совсем не большой опыт. Но матчасть я считаю у меня достаточно нормальная (во всяком случае во всех статьях которые я находил по этой теме все понимал). Как я понял тут в основном все завязано на численных методах вычислений интегралов и производных, линале, иногда встречаются описания с помощью кватернионов. Объясню в чем проблема. Все что я находил это статьи о том как завести все это дело и кусок теории (в котором как всегда не все есть понятно). Но очень хотелось бы статью (книжку?) где хорошо объяснен акселерометр\гироскоп\магнитрометр именно с точки зрения матчасти. Может быть я плохо гуглил но этого не нашел.

    Есть начальное положение с заданными углами, нужно определять отклонение от заданного положения по всем углам, высоту и углы отклонения от севера. Посмотрел Multiwii, не дешевая штука для решения этой проблемы я бы сказал. Потом как я понял там она для стабилизации полета *коптеров в основном, избыточный функционал не хотел бы платить за это. А есть ли платы где только гиро\аксел\магнитрометр, которая сама калибрует их и уже можно получать "готовые" данные? Правда там наверно уже не попишешь сам библиотечки.

    Печаль, я правильно Вас понял, что нормальные значения рыска этой связкой не получить? Чем можно тогда?
     
  7. Onkel

    Onkel Гуру

    нет, не получить. Для того, чтобы уйти от дрейфа по углу рыскания, нужна привязка, ее дает компас, в mpu6050 компаса нет, он может быть подключен по i2c, но не включается в расчеты бортового вычислителя, а просто передается в центральный процессор, вместе с данными по углам и ускорениям.Да и вообще магнитное поле Земли - более капризная для измерения штука, нежели g
    mpu6050 - тангаж и крен откалиброванные и без дрейфа, и рыскание откалиброванное, но с дрейфом, и . линейные данные откватернироненные, но ясен пень с дрейфом.
    качайте книги по асу или су летающих (ми) аппаратов, там все есть.
     
  8. olegtur77

    olegtur77 Нерд

    Мультивий дорогая штука? мру6050+ардуно про мини - это дорого? за там есть все библиотеки и разные связки датчиков...ну если уж совсем просто - это двух осевой стабилизатор на двух сервах такой или такой
     
  9. 4iFF

    4iFF Нуб

    Ну в принципи мне и двух углов хватит, но все таки нет ли датчиков которые измеряют (возможно только) рысканье без дрейфа и со самокалибровкой, но без такого количества наворотов как в полетных контроллерах?
    спасибо за наводку

    Дело в том что как раз таки мру6050+ардуно+плюшки для калибровки *коптеров (может не совсем точно выразился), учитывая что у меня есть ардуино и третий пункт мне не нужнен гораздо дешевле купить просто мру6050.
     
  10. Onkel

    Onkel Гуру

    датчиков без дрейфа нет. Тангаж и крен постоянно референсируются по g, поэтому они выдаются без (почти) дрейфа, а вот рыскание можно референс только по компасу, а компас сами знаете как работает.
     
  11. Izigro

    Izigro Нуб

    Если тема актуальна - напишите i.vit.nov@yandex.ru
    Алгоритм для этой задачи имею почти на этих же датчиках (моя плата GY-87), только высота с другого.
     
  12. Izigro

    Izigro Нуб

    Рыск при помощи НМС получается очень хороший. Плюс-минус полградуса вас устроит?