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

kren-DEL
kren-DEL:

Хм… странно, я обновился на 2,9r2

вру, стоит щас 2.8_R3 с патчем

Serj=
Sir_Alex:

У меня есть такой датчик, но руки пока не дошли его прикрутить… мот в ближайшие дни проверю.

Алексей, не получилось AttoPilot проверить?
Ток он вроде правильно показывает, а вот с напряжением косяк какой то.

Sir_Alex
Serj=:

Алексей, не получилось AttoPilot проверить?

Я после переезда никак не могу его найти. Сорри.

Serj=
Sir_Alex:

Я после переезда никак не могу его найти. Сорри.

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

SovGVD

Попробовал залить новую (из svn вчера скачал) прошивку, как то горизонт себя странно ведет

www.youtube.com/watch?v=R3CaXzBkepI

  • поменялся режим калибровки в планере последнем - теперь не просто уровень надо выставлять, но и крутить/вертеть коптер, ставя его то на бок, то кверху ногами
    вечером попробую подлетнуть в комнате, может не сильно страшно что горизонт так плавает (или я не верно откалибровал аксель/компас?)
Lazyan
SovGVD:

Попробовал залить новую (из svn вчера скачал) прошивку, как то горизонт себя странно ведет

  • поменялся режим калибровки в планере последнем - теперь не просто уровень надо выставлять, но и крутить/вертеть коптер, ставя его то на бок, то кверху ногами
    вечером попробую подлетнуть в комнате, может не сильно страшно что горизонт так плавает (или я не верно откалибровал аксель/компас?)

Поведение горизонта тоже мне показалось странным. Но летало вроде бы неплохо. А вот с удержанием высоты совсем ерунда, как и с показаниями высоты в движении. Кто-то еще замечал глюки с высотой?
Хочу отключить INERTIAL_NAV_Z и попробовать удержание высоты, подозреваю, что проблема с использованием акселя.

Sir_Alex
SovGVD:

может не сильно страшно что горизонт так плавает

По идее это не страшно. Это алгоритм отрабатывает изменения координат GPS. Если не будет 3D Fix’a то горизонт будет стоять на месте, т.к. GPS не будет участвовать в коррекции.
Если страшно, можно отключить AHRS_GPS_GAIN = 0. В оригинальном Ардукоптере такое же поведение.

Я если честно не проверял как оно ведет себя в полете, по факту я последние пол года вообще ни разу не взлетал. 😦

SovGVD

Т.е. в ардукоптере GPS учавствует даже в обычном стабе? Мне в квартире тестить - fix то есть, то отваливается
кстаии с высотой у меня непонятки в новой версии даже без полетов - коптер крутил/вертел и высота ±10 метров прыгала

Sir_Alex
Lazyan:

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

Инерциалка действительно странно ведет себя. Но мне кажется что инерциалка, что GPS_GAIN - должны работать в полете, а на земле они себя будут странно вести.

SovGVD:

кстаии с высотой у меня непонятки в новой версии даже без полетов - коптер крутил/вертел и высота ±10 метров прыгала

Да, это инерциалка по оси Z отрабатывает. Ты наклони коптер например на 45гр и посмотри как поедет высота, поставь в горизонт и высота вернется. Я если честно не совсем вкурил что это, но видимо так надо.

SovGVD

Подлетнул дома с последней прошивкой из SVN - при P=0.15 висит не дергаясь, хотя раньше до 0.12 занижал и почему то стартует не на 50% газа, а где то на 70% теперь, но не страшно, главное что летает

UPD: rateP=0.2, stabP=5 - всеравно не дрыгается, ощущение что значения не влияют или надо более агрессивно прибавлять

Sir_Alex

Я тут чуток накосячил с 2.9 - Я библиотеку AP_Motors тупо перезаписал, забыв что я там вносил изменения. В итоге не работают конфиги отличные от квада.

Кстати, еще не могу понять. При старте прошивки происходит загрузка переменных из EEPROM. Так вот, у меня уходит 7500us на это, а в APM всего 1700us. Это конечно не проблема, но я не могу понять с какого … Возможно какие то прерывания мешают или еще что нить.
Еще поигрался с таймингами основного цикла. У Арду выходит в районе 10100us и пару процентов циклов выходит за пределы 10500. В пирате у меня получается 10600 в среднем и 10% выходит за пределы 11000us. Вот пока не знаю, надо ли копать глубже или забить.

SovGVD:

почему то стартует не на 50% газа, а где то на 70% теперь, но не страшно

Кстати, у меня симоковские регули стартуют на 70% газа. Но если провести калибровку от приемника, то стартуют практически от нуля! Я даже осцилографом пытался определить, почему калибровка через пирата не работает как надо, но осцилл показывает нормальный уровень сигнала - хрень какая то.

kren-DEL

Доброго дня! Подскажите, при срабатывании ФС коптер резко рвёт вверх(набирает положенную высоту), притом с жуткими осцилляциями, так вот как эти колебания побороть? что править в пидах?

Кстати, если просто дать полный ГАЗ, то нормально уходит вверх без колебаний

Triumpher
Sir_Alex:

Кстати, у меня симоковские регули стартуют на 70% газа. Но если провести калибровку от приемника, то стартуют практически от нуля! Я даже осцилографом пытался определить, почему калибровка через пирата не работает как надо, но осцилл показывает нормальный уровень сигнала - хрень какая то.

У меня такое было на симонках. Нужно очень быстро стик газа вниз опускать. Еще лучше га тумблер завести, типа HOLD, чтоб резко газ в ноль ставил. А то как чуть чуть вниз убирать начнешь, они сразу свой минимум запоминают.

Sir_Alex
Triumpher:

У меня такое было на симонках. Нужно очень быстро стик газа вниз опускать. Еще лучше га тумблер завести, типа HOLD, чтоб резко газ в ноль ставил. А то как чуть чуть вниз убирать начнешь, они сразу свой минимум запоминают.

Да, я на это обратил внимание когда тестил, но когда подключил напрямую к приемнику регуль без проблем отрегулировался на минимум!

kren-DEL:

Кстати, если просто дать полный ГАЗ, то нормально уходит вверх без колебаний

Сложно сказать, возможно надо править пиды отвечающие за навигацию.

Lazyan

Выпущена финальная прошивка 2.9. В соседней ветке есть более подробное описание этого события. Там же есть объяснения странного поведения высоты и как с этим бороться.
А вообще, ждем с нетерпением нового порта данной прошивки и спасибо за проделанную работу.

Sir_Alex

Что то я совсем упарился искать, почему разное время занимает загрузка настроек из EEPROM. Попробовал отключить прерывания, время стало 1200us против 7500. Самое смешное что я залил оригинальную прошивку в CRIUS и она то же грузит 7500us, а на родной плате 1800us. Пока напрашивается два вывода:

  1. АРМ имеет доработанный бутлоадер, который производит дополнительную инициализацию регистров. Тем самым он отключает какие то неиспользуемые прерывания.
  2. у АРМ заземлены неиспользуемые пины, в результате по ним не срабатывают прерывания.

Почему я прицепился ко времени загрузки? Потому что я боюсь, что это “что то” мешает и основному циклу. 😦

UPD: Провел еще один тест: Залил MPNG в АРМ и получил то же 1800us.

Lazyan:

Выпущена финальная прошивка 2.9. В соседней ветке есть более подробное описание этого события. Там же есть объяснения странного поведения высоты и как с этим бороться.

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

Sir_Alex:

UPD: Провел еще один тест: Залил MPNG в АРМ и получил то же 1800us.

Проблема найдена. Надо было очистить EEPROM (CLI > setup > erase) от предыдущих версий. После очистки время загрузки параметров сравнялось с оригинальной платой.

EduardNN
Sir_Alex:

Я тут чуток накосячил с 2.9 - Я библиотеку AP_Motors тупо перезаписал, забыв что я там вносил изменения. В итоге не работают конфиги отличные от квада.

Это исправлено ? Не стартует режим проверки правильности подключения моторов (CLI -->setup–>motors)…
hexa x .
Все моторы молчат…

Sir_Alex

в SVN залита MPNG 2.9 R3 (желающие могу начать тестировать)

Вроде все поправил. По поводу старых датчиков BMA180 и ITG3200 - пока не получилось их проверить, т.к. BlackVortex не захотела принимать прошивку, видимо опять какие то грабли с Bootloader’ом, А все остальные платы у меня на MPU6050.

В новой прошивке будет работать Relay для камеры. Т.е. можно спусковой механизм повесить, который срабатывает от логической 1 (+5В). Подключать к пину D46 (на плате Crius он помечен как TRIGGER). В Mission Planner, в настройках подвеса, надо указать Relay для Shutter’a. И дополнительно включить режим “Camera Relay” на CH7 (Меняется там где окно настроек PID’ов).
В теории для спуска можно применить серву, в этом случае надо выбирать RC7,RC8… но я не проверял как оно будет работать и откуда брать сигнал для сервы.

Теперь по поводу калибровки ESC от Simonk (и возможно других). Фишка в том, что если сигнал на него подавать с частотой 125Гц, то калибруется без проблем, а вот если прошивка (MPNG) настроена на 490Гц (по умолчанию) - то надо очень быстро опускать Throttle при калибровке. Если не получается откалибровать на 490Гц, то поменяйте временно параметр RC_SPEED на 125 и проведите калибровку, затем параметр можно вернуть на место(490).

P.S. Работу сонара я не проверял.
P.P.S. Еще отключил по умолчанию AHRS_GPS_GAIN - Что бы не плясал горизонт

EduardNN

Тест пошел после калибровки аппы, но , не работают моторы на каналах D7 и D8 - молчат. При запуске теста моторов (CLI -->setup–>motors) моторы , кроме D7 - FRC и D8 - BLW, стартуют в непонятной последовательности. Подключал согласно readmi.txt, коптер HexaX , контроллер Mega MWC 2560 , в конфиге раму указал , svn обновил/проверил сегодня…
До этого вроде летал на 2.7_R*

Sir_Alex
EduardNN:

Тест пошел после калибровки аппы, но , не работают моторы на каналах D7 и D8 - молчат. При запуске теста моторов (CLI -->setup–>motors) моторы , кроме D7 - FRC и D8 - BLW, стартуют в непонятной последовательности. Подключал согласно readmi.txt, коптер HexaX , контроллер Mega MWC 2560 , в конфиге раму указал , svn обновил/проверил сегодня… До этого вроде летал на 2.7_R*

Если вы пробовали последнюю версию R3 (посмотрите в Readme.txt) очень похоже что вы не обновили libraries и в частности папку AP_Motors

EduardNN
Sir_Alex:

не обновили libraries и в частности папку AP_Motors

Я целиком всю папку libraries копирую, предварительно удалив предыдущую. Залил MegaPirateNG V2.8 R3, работают все моторы, но управление ими пришлось подключать методом тыка в режиме теста … или я чего то не до понял, но подключив по readmi.txt - последовательность была не та.