MultiWii

Flutter
mahowik:

тут важна калибровка компаса, а маг. склонение пофиг

Александр, Вам виднее. Честно говоря, в алгоритм глубоко не лазил. Значит, остается какая-то мощная и примерно постоянная наводка.
Но склонение в любом случае вводить нуно.😉
Правда, если летаешь в разных полушариях, это не совсем удобно.😃

mahowik
Flutter:

Но склонение в любом случае вводить нуно.

для GPS да… для headfree и удержания носа по маг. нет, т.к. рам берется относительный градус, потому важна лишь калибровка МАГа по осям…

ctakah

Насчет склонения-по Москве есть цифра и куда ее вводить:?)

Flutter
ctakah:

Насчет склонения-по Москве

Смотрите сайт magnetic-declination.com
В config.h пишете вместо #define MAG_DECLINIATION 0.0f ------ #define MAG_DECLINIATION 9.4167f (это моя цифра, по Москве меньше).
А источник - EOSBandi документация по r33.pdf, откуда скачивал, не могу найти.

HATUUL

Страно DECLINIATION в москве по нулям.

dROb

Товарищи, подскажите, кто плотно общался с i2c gps :
Есть самодельный конвертер UART-i2c, на базе стандартной схемы EOSBandi,
GPS модуль - MTK3339, пока без бинарного протокола (нету у меня пока такой прошивки для 3339. Кстати может у кого есть?), то есть данные выдает в NMEA

Судя по подслушанному в UART - конвертер, как и было запланировано, подключается к модулю на скорости 9600, переводит его в 115200, пересоединяется на этой скорости, и переводит модуль в 10Гц. Всё это работает. После этого, конвертер начинает мигать 1сек LED горит -1сек-нет, то есть “не принимаются данные NMEA”. Целостность ножки UART RX, TX проверил - всё в порядке.

Подумал тут - быть может я первый кто пытаюсь добиться работы конвертера по NMEA, и там где-то ошибка в коде? (в основном все пользуются uBlox и MTK binary протоколами)

gorbln
HATUUL:

Страно DECLINIATION в москве по нулям.

Это сайт что-то глючит. В мск получаться должно типа 9.9. В Ярославле - точно 11.7

hobbo

Дошли наконец-то руки проверить квадра. Стоит прошивка 2.1. Акро или Стаб режим, не важно. Взлетает и вроде ведет себя адекватно, но время от времени случается такое:

уже даже устал бороться с заваливанием. может быть стоит регули заменить? сейчас стоят рцтаймер30а

ctakah

Скорее всего не хваатет холостых оборотов. У меня так было,летает ,летает и тут бах-завал на сторону,падение.Прошивка 1.9 была)).Даже при арминге эта сторона ,в которую заваливался коптер медленнее всех крутилась,добавил холостых и коптер перестал заваливаться. Регули лучше прошитые брать,с рстаймера 20 А хорошие,30 А пока не пробовал.

И еще-на сайте на любой точке показывает нули.

ctakah

Разобрался-в Москве склонение равно 10градусов16".

hobbo
ctakah:

Скорее всего не хваатет холостых оборотов

У меня вообще-то еще при арминге моторы остановлены (define STOP или что-то в этом роде), это не может как-то влиять?

ctakah:

И еще-на сайте на любой точке показывает нули

А вот эту фразу, простите, не понял :/

serenya
dROb:

Подумал тут - быть может я первый кто пытаюсь добиться работы конвертера по NMEA, и там где-то ошибка в коде? (в основном все пользуются uBlox и MTK binary протоколами)

У меня работает по NMEA, 115200 10Гц. Вы пробовали просто к компу модуль подключать без платы конвертера? Есть ли 3D FIX? Пока не будет уверенного 3D FIX на компе, например в программе MiniGPS_Tool, нет смысла ковыряться с конвертером.

dROb
serenya:

У меня работает по NMEA, 115200 10Гц. Вы пробовали просто к компу модуль подключать без платы конвертера? Есть ли 3D FIX? Пока не будет уверенного 3D FIX на компе, например в программе MiniGPS_Tool, нет смысла ковыряться с конвертером.

К компу конечно подключал - но никакого фикса не дожидался, только проверил чтобы данные шли. Вообще то я ожидал что конвертер начнёт ловить NMEA сообщения и по крайней мере, об этом мне просигнализирует: “blinks once per second if GPS is sending data but no position lock yet”
А пока он мне сигнализирует “or goes on for a second, off for a second, (long pulse) if not getting any NEMA sentences for over 5 seconds” - то есть, насколько я понимаю, он вообще не принимает никакие сообщения NMEA

UPDATE:
Сергей, вы оказались правы:)
В коде i2c-gps явная бага - сообщение “goes on for a second, off for a second, (long pulse) if not getting any NEMA sentences for over 5 seconds”, вопреки тому, что написано в мануале, выводится всегда когда нету 3d-fix, ИЛИ спутников меньше пяти

Вот эти куски:

if (i2c_dataset.status.gps3dfix == 1 && i2c_dataset.status.numsats >= 5) {

         lastframe_time = millis();
...........
...........
if(lastframe_time+5000 < now) {
      // no gps communication
...........

Короче, сработало золотое уже для меня правило Multiwii - Доверяй, Но Проверяй!! (“Если какая-то часть, вдруг, описана в руководстве - не поленись, залезь в код, и проверь, так ли это”)

hobbo

По совету ctakah прибавил minthrottle до 1300. Прошил, сходил подлетнул. Правда полетать толком не удалось - единственный акк на 3А оказался почти разряжен. Повисел минутку-другую. Но даже намека на сваливание не было. Аппарат как-то жестче чтоли стал… Я тут подумал, а ведь наверное есть прямая связь между этим “минимальным газом” и весом аппарата? У меня он не легкий - железобетонная рама для учебных полетов, камера. Но для подтверждения догадок нужно потестить конечно еще. Акк уже забивается… сегодня еще раз схожу 😃

ctakah

Там другая зависимость-мин троттл-это минимальные обороты вращения моторов для коптера,желательно их делать максимально возможными(если запас мощности у движков небольшой ),чтоб полка работы мозгов коптера была в середине с возможностью увеличивать и уменьшать обороты мотора при компенсации горизонта ,а при компенсации не случалось полной остановки моторов,и потом невозможности их быстро раскрутить в случае раскачки и наклоне коптера уже на сторону остановившегося (или близко к этому) мотора и как следствие перевороту )

hobbo

А почему тогда нигде не пишут про такой важный параметр? Ну, то есть, почему нигде эта проблема особо не обсуждается. ПИДы - да, настраивает похоже каждый (кстати я
этого почти не делал ни на КК ни на вие, значения стоковые - из версий прошивок).
…или я просто очень плохо искал? 😃

Raptor_SK
hobbo:

…или я просто очень плохо искал?

Именно так. Просто в стоковых прошивках уже стоит усредненный уровень minthrottle, коего обычно хватает… Все (или почти все) об этом знают и как то не особо акцентируют на этом внимание…
А упоминание об этом на форуме (кажется даже не в этой теме), мне лично, попалось всего пару раз, (именно в связи с проблемой остановки движков в полете)… Хотя стараюсь следить за темой регулярно…

Flutter

Напишу попроще, как я это понимаю. При отработке команд одни движки увеличивают обороты, другие уменьшают. Чтобы не произошло остановки мотора в полете при уменьшении оборотов, и нужен этот параметр.
А почему не пишут, - хз, но где-то эта информация проскакивала.
Опа, опоздал:)

vavilon09

arduino mega 2560 + FFIMUv2
регуляторы Hobbyking SS Series 25-30A с прошивкой tp_8khz.hex
моторы NTM серии 28-30A 750kv / 140 Вт

с MultiWii 2,1 работал отлично. Решил попробовать мегапирата, при переходе обратно на MultiWii выдал такую проблему:
начинаю прибавлять газ, а он то никак не взлетает, а потом резко вверх уходит.
крайне не стабилен.
в чем может быть проблема?