ArduCopter Mega: порт на обычную Arduino (тестим)

Alex_dndz

[QUOTE=Sir Alex;4512355]Можете поменять местами порты в файле libraries\AP_HAL_MPNG\HAL_MPNG_Class.cpp

AVRUARTDriverInstance(avrUart2Driver, 3);
AVRUARTDriverInstance(avrUart3Driver, 2);

в libraries\AP_HAL_MPNG\HAL_MPNG_Class.cpp есть только
AVRUARTDriverInstance(avrUart0Driver, 0);
AVRUARTDriverInstance(avrUart1Driver, 1);
AVRUARTDriverInstance(avrUart3Driver, 3);

я немного ошибся
нужно с serial2 переназначить на serial1.
Что на что заменить?

5yoda5
limon_spb:

Добрый день!
Компас не влияет ни на что, вроде, если летать в стаб режиме.
По поводу пидов - лучше их сначала уменьшить. Если будут слишком маленькие он просто не будет держать горизонт. Зато если будут слишком большие - будет моментальный флип и краш. Первый раз, когда я пробовал свежесобранный коптер, тоже были дефолтные пиды, и из-за этого он не успел оторваться от земли, как тут же оказался в стенке.

Вот это он и пытается у меня исполнить. Хорошо, что газ потихоньку добавляю, так бы уже кувыркнулся. Ещё не успел отбалансировать винты, как уже два покоцал немного.

5yoda5:

Тут мне в личке натолкнули на мысль. У меня похоже неправильно указан тип платы в прошивке (соответственно не тот комплект датчиков). Для моей платы banned link - что мне ставить в прошивке - “PIRATES_FFIMU”?
Просто я процедуру калибровки компаса делал (программа сказала гуд, выдала мне циферку типа магнитуды что ли), но на первом экране (сейчас только вспомнил) - картинка не реагировала на перемещения квадрика по столу…

У неё датчики такие: ITG3205 гироскоп, BMA180 акселерометр, BMP085 барометр, HMC5883L компас. Есть мнение, что данная платка по датчикам похожа на BlackVortex - ставить её в настройках?

blind_oracle
limon_spb:

На сколько я знаю, это делают гироскопы. А компас нужен только тогда, когда полет идет с использованием GPS, чтобы знать ориентацию в пространстве и понимать какими винтами крутить чтобы лететь, куда надо.

Да, согласен, просто я замечал что в полёте, когда даешь газу (в стабе), аппарат немного проворачивало вбок (прошивка была - мегапират 2.8R3, компасмота там не было еще), сбрасываешь - возвращается на место.
Я пришел к выводу что наводки при большом газе влияют на компас, следовательно, решил что он таки используется 😃 Значит, причина в другом была.

Sir_Alex
5yoda5:

У неё датчики такие: ITG3205 гироскоп, BMA180 акселерометр, BMP085 барометр, HMC5883L компас. Есть мнение, что данная платка по датчикам похожа на BlackVortex - ставить её в настройках?

У BlackVortex специфичный адрес акселерометра, вы рискуете потерять коптер, даже не поняв в чем дело, т.к. визуально заметить сложно, отсутствие акселя.

limon_spb
5yoda5:

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

Режте пиды нещадно. Буквально в 10 раз. Да, сам выравниваться он скорее всего перестанет, но на 20 см вы поднять уже сможете, а дальше потихоньку увеличивайте пиды 😃 А я с ними так воевал: снял пропы, включал 40-50% газ и наклонял коптер. И слушал, как ведут себя движки. Добивался, чтобы звук примерно соответствовал моим представлениям о реакции моторов на наклон. Дальше надевал пропы. Девушку научил армить и поддавать чуть газу. Сам брал коптер в руки над головой, она давала газу а я наклонял его в разные стороны и прикидывал сопротивление, подправлял пиды. Только держать надо оочень крепко. При неверных пидах хватит 1 мгновения чтобы навести кровавую прическу на голове тфу тфу тфу. Если что - я не виноват 😇

blind_oracle
limon_spb:

Режте пиды нещадно. Буквально в 10 раз

Я вот как-то вывел на крутилку на аппе Rate Roll P в диапазоне 0.10 - 0.25 вроде, всё настроил и забыл про него, но не вырубил.
А потом как-то аппу калибровал и потенциометр остался на максимуме.

При взлёте параметр стал 0.25 и коптер таак понесло… он делал мертвые петли, перевороты, на газ реагировал примерно так - в районе нуля - падаем, чуть выше нуля - летим в небо кувыркаясь 😃
В общем я его как-то с грехом пополам скачками к земле прибил, но луч всё равно карбониевый сломал даже об травку футбольного поля, он решил в последний момент сделать прыжок-переворот около земли 😃

limon_spb
blind_oracle:

При взлёте параметр стал 0.25 и коптер таак понесло…

Жесть, как вы его еще посадить умудрились 😃 Шутки с большими пидами да, не шутки 😃

blind_oracle
limon_spb:

Жесть, как вы его еще посадить умудрились 😃 Шутки с большими пидами да, не шутки 😃

Самое обидное, что я впал в тупняк, и о причинах такого поведения коптера догадался уже после финала этой оперы, поглядев на аппу 😃
Если бы сориентировался, то скрутил бы обратно и нормально сел.

RTemka

Вот после этого я стал коптеры с большим запасом тяги просто привязывать к гантелям.
А то как то малыша собрал. Вроде мелкий не опасный.
А он как крутанет петлю в комнате с места 😃

SovGVD

ПИДы ПИДы, я сегодня поставил 12" пропы на квадрик, ПИДы задрал (rate/stab) до упора - всеравно чуток не хватает стабильности, хотя при 11" пропах дрыгаться начинал бы уже… но я из поломал =)

blind_oracle
SovGVD:

я сегодня поставил 12" пропы на квадрик, ПИДы задрал (rate/stab) до упора - всеравно чуток не хватает стабильности

Дык при увеличении диаметра пропов пиды надо снижать жеж вроде.
У меня на 10х5 пропах и 910кв rate roll p где-то 0.14-0.15 вроде, а с 12х4.5 пропами - 0.12 или около того.

SovGVD

Не в курсе что надо делать с ПИДами и когда, основное правило, работающее еще со временем пиления датчиков из WMP, задираем P пока коптер не начнет дрыгаться, потом уменьшаем на 10-20%. Собственно с момента когда регули стали прошитыми, у меня не получается больше доводить коптеры до дрыгания, что на пирате, что на ардукоптере, что на вие. (моторы 800-900kv пропы 10-12", 3S, взлет на 40-60% газа)

2fast2real

Ребята скажите куда датчик тока при крутить на криусе 2 и на вортексе, датчики с рстаймера 90А

А да вортекс прошивка R300 криус 3.01

limon_spb
SovGVD:

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

Это очень странно… У меня моторы такие же, как у тебя, Глеб, но я в легкую довожу пидами до дрыгания и далее до внезапных флипов…
ВОТ пиды для гексы, на которых у меня еще немного дрыгалось все.

SovGVD
limon_spb:

ВОТ пиды для гексы

я сегодня StabP до 5, а Rate (который в Basic Pids) ползунком до упора и всеравно висит без намека на дрыгания… Как вариант из-за подвеса с основным аккумом и камерой, которые сильно внизу получаются.
зы: если что, я сейчас на APM мучаю квадрик, регули SimonK 20A с rctimer, но с гексой на пирате и HK BlueSeries (перешитыми на SimonK) та же история, квадрик на MultiWii делал - P до 9 или больше поднимал, так и не задергался =)
Странно всё это.

Олег24

Я пиды крутил наверное час в поле . Четыре ака по кругу ходили через зарядник - итог висит идеально, в управлении не вялый, домой прилетает , по заданию ходит отлично. Если кому надо пиды от квадрика ,рама F450 , моторы 2313 800Kv пропы APC 10х4.5. Регули Turnigy AE20 перешитые 450last1.zip
PS Проверьте реверсы после заливки ну и все остальные настройки по полетным режимам …

5yoda5
Cache-dx:

Аналогичная плата летаю все ок. в настройках нужно
#define FFIMUv2 и вот тут более подробно www.rcgroups.com/forums/showthread.php?t=1752719

Спасибо большое, направили на путь истинный. Мне эта тема попадалась, когда в голове была ещё полная каша. Вчера ночью я вдумчиво сделал как там (только типа платы FFIMUv2 не было, выбрал FFIMU)- платка теперь в МишнПланере реагирует адекватно. Компас стороны света показывает правильно (корректировка по YAW 270, ага), аксель горизонт крутит тоже правильно (на глаз - вроде врет на несколько градусов).
Сегодня утром пытался подлетнуть на улице. Если все тримы в нуле - квадр при взлете пытается упасть на левый передний луч. И вроде ещё крутит против часовой по ЙАВ. Такое ощущение, что квадр пытается выровнять горизонт в соответствии с тем, как в гуи показывались нулевые горизонты (на глаз, как раз передний левый угол “завален”).
Я неправильно откалибровал акселерометр? Есть где-нибудь описание методики калибровки всего квадра в целом? Та же процедура калибровки акселя - она у меня делалась не так, как в найденном мной видео.
У меня на экране при калибровке акселерометра “Нажмите эту кнопку, когда закончите.” и внизу “получена команда…” и ничего не получено. Я ставлю на одну грань, жму кнопку, ставлю на другую грань, жму кнопку (а вроде ничего не происходит). Перебираю все четыре грани - и ничего. Такое ощущение, что акселерометр вообще не калибруется. Вроде в поле стиками как-то можно откалибровать акселерометр?
Или ПИДы вообще на ноль поставить и попытаться взлететь “без мозгов”, только на управлении стиками?
Простите за нубские вопросы - может мне их надо не здесь задавать (пишу сюда, потому что прошивка мегапират) - пните новичка тогда в правильную тему.

5yoda5

Спасибо за молчание, если кто-то удержался от ответа. (нет, правда - совершенно без ёрничества, спасибо)
Модератор, удалите пожалуйста это и предыдущее сообщение. Не могу уже даже отредактировать - много времени прошло.

Я нашел сам решение проблемы, в этой же ветке, страниц где-то 30 назад. Сейчас внимательно изучаю. Желаю большого терпения вам, старожилы. На таких как я - его много надо… 😕 😃

limon_spb
5yoda5:

Такое ощущение, что акселерометр вообще не калибруется. Вроде в поле стиками как-то можно откалибровать акселерометр

Плата у меня другая, но может поможет: аксель некоторые калибруют через терминал:
сначала выставить коптер по уровню строго горизонтально, далее в планере терминал, подключить и ввести команду: setup <нажать Enter> level <нажать Enter>.

А про поставить на 1 бок, потом на другой, я впервые слышу, хотя сам новичок, конечно.

rual
limon_spb:

А про поставить на 1 бок, потом на другой, я впервые слышу, хотя сам новичок, конечно.

Ну а как без этого? Установкой в горизонт можно откалибровать только грубо нули X и Y, чувствительность осей уже не получишь. При постановках на бока получается калибровка каждой оси по 2м точкам +g и -g.

В принципе для удержания горизонта достаточно простой горизонтальной калибровки, можно даже и без неё, горизонт будет немного завален, максимум до 2-3 градусов. А вот если нужна инерциалка то тут нужно калибровать аккуратненько каждую ось.