MultiWii

fat_hamster
yfafyz:

Провода из под мозга вынес под раму, расстояние 2см, пока не проверял - завтра.

Все печально (
Додумался наконец посмотреть, что компас показывает, когда моторы включаются… Блин, поворачивает градусов на 30
Ну правда попробовал плату поднять на сантиметра 4 - лишь слегка подергивается при включении… Надо провода еще опустить - а потом проверить под нагрузкой

mahowik
fat_hamster:

Все печально (
Додумался наконец посмотреть, что компас показывает, когда моторы включаются… Блин, поворачивает градусов на 30
Ну правда попробовал плату поднять на сантиметра 4 - лишь слегка подергивается при включении… Надо провода еще опустить - а потом проверить под нагрузкой

да можно и не колдовать… сейчас компас выносной стоит меньше 3$ с доставкой… а год-полтора назад за 20$ брал… китаЙсЫ наше все! 😃

п.с. заказал еще один в копилку… у нас хлеб-буханка почти в два раза дороже стоит 😃

serenya

Кстати на счет компаса, кроме перерезания перемычек и закомментирования одной строки в коде надо еще что-то делать? У меня такое чувство что работают оба компаса т.к. при отключении внешнего курс все равно меняется, или может это на гирике реализовано?

GrafSher
serenya:

Кстати на счет компаса, кроме перерезания перемычек и закомментирования одной строки в коде надо еще что-то делать?

О какой строке в коде идет речь? Вроде ничего не надо в коде трогать.

serenya:

У меня такое чувство что работают оба компаса т.к. при отключении внешнего курс все равно меняется, или может это на гирике реализовано?

Оба датчика не могут вместе работать. Будут идти ошибки шины i2c. У них с завода один и тот же аппаратный адрес (0x1E).

serenya
GrafSher:

О какой строке в коде идет речь? Вроде ничего не надо в коде трогать.

Об этой

#define MPU6050_I2C_AUX_MASTER // MAG connected to the AUX I2C bus of MPU6050

Здесь sulaex описал порядок действий. Это нужно для того чтобы подключить внешний компас на основную шину I2C и отключить от шины MPU6050.

GrafSher
serenya:

Здесь sulaex описал порядок действий. Это нужно для того чтобы подключить внешний компас на основную шину I2C и отключить от шины MPU6050.

Ага. Вспомнил. Читал. 8) Сложно запомнить 227 страниц.
Я чисто логически думал как СирАлекс. А оказалось что компас подключен через левую пятку. 8)))

А проверить какой компас работает проще простого. Подключи GUI и покрути платку внешнего компаса. И сразу все станет понятно.

yfafyz

Подключил, проверил, компас сума не сходит, есть незначительные отклонения, 5-10 градусов.
НО сдается мне что часть этих отклонений или может полностью все, погрешность того, что коптер держал в руке.

mahowik
serenya:

Кстати на счет компаса, кроме перерезания перемычек и закомментирования одной строки в коде надо еще что-то делать?

на сколько помню не надо…

serenya:

У меня такое чувство что работают оба компаса т.к. при отключении внешнего курс все равно меняется, или может это на гирике реализовано?

правильно выше написали, если бы оба были на i2c шине, то ошибки поперли бы…
а при отключении внешнего, чтение компаса типа идет (если осталось в конфиге), но т.к. компас всего лишь поправка для гиры, то азимут будет вращать… и ясное дело что вращать не правильно, стремясь скорее всего в ноль…

п.с. я когда пробовал МАРГ алгоритм, НО без компаса на борту… гира достаточно точно показывает, но стоит платку покрутить и потом уже даже в покое начинается дрейф 2-3 град/сек…

serenya:

Здесь sulaex описал порядок действий. Это нужно для того чтобы подключить внешний компас на основную шину I2C и отключить от шины MPU6050.

GrafSher:

А оказалось что компас подключен через левую пятку. 8)))

да нее, все там хорошо, если разобраться… на сколько помню в АИОП, компас сидит в параллели на двух шинах, т.е. I2C-MPU6050 и основной/внешней, а переключаться можно программно и вий как раз поддерживает два типа подключения, т.к. всем известная политика вия - это саппорт/поддержка ху%вой тучи бордов и полетных контроллеров, в которых соот-но используется различный тип подключения компаса, т.е. в некоторых только на общей шине космпас висит, а в некоторых только к MPU6050…

Для выноса компаса в АИОП, нужно соот-но физически отключить “местный” компас только от внешней I2C + программно переключиться с I2C-MPU6050 на внешнюю I2C, ибо на нее как раз и вешается выносной компас…

GrafSher
mahowik:

да нее, все там хорошо, если разобраться… на сколько помню в АИОП, компас сидит в параллели на двух шинах, т.е. I2C-MPU6050 и основной/внешней, а переключаться можно программно и вий как раз поддерживает два типа подключения,

Эх… схему бы хоть глазком глянуть…

Мне кажется что компас во второй версии платы немного по другому подключен. На плате 2 группы перемычек по 3 штуки. С завода перемычки замкнуты таким образом, что компас подключен к шине MPU6050. А если разрезать и запаять средний контакт с другим контактом то компас будет подключен к общей шине. (Для проверки можно перепаять перемычки и закоментировать строчку в конфиге. Компас должен работать.)
А вот если обрезать перемычки и ничего не запаивать, то можно подключать внешний компас.

Вот так мне это видится:

GrafSher:

Вот так мне это видится:

Но поручиться что оно все именно так я, конечно, не могу.
И проверить, увы, сейчас тоже. От платы сейчас далеко.
Может кто проверить, что бы окончательно расставить точки на “i”.
А потом в FAQ добавим.

mahowik
GrafSher:

Мне кажется что компас во второй версии платы немного по другому подключен.

по поводу второй версии вы скорее всего правы, а в первой точно помню что только программно переключал чтения компаса с шины MPU6050 на общую шину. В обоих случаях работало. Значит по идее компас там сидит на двух шинах сразу…

GrafSher:

А потом в FAQ добавим.

В Димин (omegapraim)? или еще FAQ-и появились? 😃

сегодня в дневнике уже писал у себя… на вскидку 😃
multiwii.p.ht
rcopen.com/blogs/117417/17077
airm.ru/articles/2
rcopen.com/blogs/83206/15000
rcopen.com/blogs/83206/14324
www.multiwii.com/wiki/index.php?title=Special:AllP…

  • дофига общих рекомендаций/cоветов по настройке (касательно вия, а не маховии только) у меня в темах дневника и комментах к ним 😃
Art_Nesterov

Если в коде менять чтение компаса, то в ГУИ компас продолжает показывать. А если перерезать перемычки, то в Гуи компас (стрелка) застывает.
Если поменять в коде чтение компаса, разрезать перемычки и добавить внешний компас на I2C, то будет работать внешний компас.
В этом можно убедиться, приближая магнит к внешнему компасу.

serenya
GrafSher:

Вот так мне это видится: Нажмите на изображение для увеличения Название: mpu6050.png Просмотров: 12 Размер: 26.7 Кб ID: 830762

Прозвонил сейчас плату, почти так и есть, родеой компас через перемычку и через LLC подключается к процессору, а разъем I2C идет напрямую на процессор. И между процессором и MPU все тот-же LLC.

GrafSher
serenya:

Прозвонил сейчас плату, почти так и есть, родной компас через перемычку и через LLC подключается к процессору, а разъем I2C идет напрямую на процессор. И между процессором и MPU все тот-же LLC.

Т.е. получается вот так?:

Тогда непонятно, к чему подключена третья контактная площадка в SJ2 и SJ3.
К ним определенно подходят дорожки.

serenya
GrafSher:

Т.е. получается вот так?:

Как-то так получается

GrafSher
serenya:

Как-то так получается

хм… слева это mpu6050?
к нижнему LLC подключен внутренний компас? (кстати… что такое LLC? Я за последние годы немного подотстал в современной терминологии)

Тогда все равно не получается… Вот Артем выше пишет: “Если в коде менять чтение компаса, то в ГУИ компас продолжает показывать”. Он не пишет о перепайке перемычек в другое положение. Т.е. компас каким-то образом подключен уже к общей шине.

mataor

чтобы 100% отключить внутренний компас достаточно лишь разорвать SCL шину, SDA может оставаться подключенной.

serenya
GrafSher:

к нижнему LLC подключен внутренний компас?

Прошу прощения, 3 раза проверял и не увидел, нижний “LLC” это компас. LLC = конвертер уровней. Слева MPU6050.

GrafSher:

Вот Артем выше пишет: “Если в коде менять чтение компаса, то в ГУИ компас продолжает показывать”

Александр mahowik писал по этому поводу

mahowik:

но т.к. компас всего лишь поправка для гиры, то азимут будет вращать… и ясное дело что вращать не правильно, стремясь скорее всего в ноль…

GrafSher
serenya:

Прошу прощения, 3 раза проверял и не увидел, нижний “LLC” это компас. LLC = конвертер уровней. Слева MPU6050.

Ну тогда как раз мой вариант и получается. Просто я рисовал по картинке Александра, а там LLC нет.

Для 100% уверенности надо провести 3 эксперимента:

  1. Не трогать перемычки. Строку в конфиге закомментировать. => Компас должен перестать работать. Проверять магнитиком, не трогая плату.
  2. Перепаять перемычки в противоположное положение. Строку в конфиге закомментировать. => компас опять должен заработать. Проверять магнитиком, не трогая плату.
  3. Все перемычки снять. Строку закомментировать. Подключить внешний компас. => компас должен работать. Проверять магнитиком, не трогая плату.
serenya
GrafSher:

Для 100% уверенности надо провести 3 эксперимента:

  1. Как ни странно внутренний компас продолжает работать. Ошибок I2C нет.
  2. Работает внутрений компас. Ошибок I2C нет.
  3. Работает внешний компас. Ошибок I2C нет.
GrafSher

…ну тогда я вообще ничего не понимаю…

andrei2882

Добрый вечер, прошу помощи. Мучаю проблему I2C gps конвертер на базе ардуино прошивка залита спутники и местоположение видит прошивка multiwii официальная ( MultiWii_dev_2013_07_15_r1539 ) , проблема ошибки на шине I2C раскоментировано #define I2C_GPS

1filth1
serenya:

Забыл уточнить, изменения надо вносить в секции “all the Mega types”

Спасибо огромное!! все работает =)

serenya
andrei2882:

Добрый вечер, прошу помощи.

Подтягивающие резисторы есть? Правильно подключены sda и scl, и куда подключены? Что за мозги?

andrei2882

мозги MultiWii SE V2.0 Flight подтяжка я так понял в коде #define INTERNAL_I2C_PULLUPS в оригинале платы тоже не рассмотрел goodluckbuy.com/i2c-gps-nav-module-navigation-boar… конвертер на базе ардуино удержание и возврат работают нужно крутить пиды, подключены sda и scl. ошибки стоят на 54 не скачут без #define I2C_GPS все работает без ошибок, есть подозрение проверить ошибки набегают пока идет инициализация конвертера

omegapraim

А попробуйте конвертер от 3.3 вольта запитать.