Вопросы по iNav
Вот лог: lokanaft.ru/blackbox_log_2016-04-14_190341.TXT
Висел просто на месте пытался держать.
Проблема в том, что с этими настройками
set nav_use_midthr_for_althold = ON
set alt_hold_deadband = 50
надо довольно точно попасть в середину газа чтобы поймать “висение”. Как только это удалось (~2:40 по времени ПК) - висит хорошо, дрейф высоты минимальный.
При таком низком газе висения (20%) лучше выставить set nav_mc_hover_thr=1170, включить альтхолд сразу после арминга (до взлета), и взлетать уже с удержанием.
Ну или сделать
set nav_use_midthr_for_althold = OFF
чтобы он нейтральным положением стика газа запоминал “газ в момент включения альтхолда”
Сейчас думаю начать с того, чтобы эмулировать GPS формат и просто передавать коптеру текущее положение (как я понимаю там точность 1/10^7 градуса долготы/широты => 1.1 см), а далее просто использовать RTH.
Да, это самый простой вариант.
RTL как то странно работает
Надо смотреть логи.
на 30 на высоте трёх метров, то взлетает на 10 метров и идёт строго к месту взлёта по линии с такой скоростью, что я даже не решился это досмотреть ни разу) Если подальше и повыше то лучше, но очень сильно дёргает в обратку и мгновенно вращает курс, потом идёт со снижением, но метров до 15 к точке взлёта и снижается также быстро до самого конца, но один раз всё таки притормозил в двух метрах.
Проблема в том, что удержание направления (MAG HOLD) пока сильно зависит от “set rc_rate = 90”. Отсюда и очень агрессивное дерганье по курсу. Я об этом глюке знаю и он обязательно будет поправлен!
Скорость возврата определяется set nav_max_speed = 300 - это 3м/с. Можно зажать до 100 (1 м/с), тогда возврат будет медленный и печальный.
То же самое посадка: set nav_landing_speed = 200 (2 м/с).
Спасибо Константин (jShadow) за прошивку и за советы, удалось сегодня прошить и настроить Taulabs Sparky 1 , из сложностей только один момент был - решил не использовать внутренний компас (гулял ± 5-7 градусов), а прицепить внешний, заодно с GPS такой www.banggood.com/UBLOX-NEO-M8...p-971082.html? но на плате нет разъёма i2c для компаса пришлось запаивать в переходные отверстия (в родной прошивке от Taulabs есть возможность переназначить flexi порт). Дома всё работает отлично-летает лучше чем с прошивкой от taulabs - в поле попробую позже. (Ну и не забывать про ориентацию внешнего компаса)
Пиды настраивали или так полетело? Уже не первый раз слышу, что INAV летает лучше OpenPilot/Taulabs 😃
Ну так, если компас врет, то и расчет точки останова будет не верным по идее + как мне кажется это совсем не тривиальная задача сделать подобный правильный расчет, т.е. зависит от конфигурации дрона, пидов + внешних условий. Можно конечно программно задавать желаемoe ускорение торможения дрона (т.е. target acceleration и полагать что он выполнил этот таск), но это такой же фейк в итоге Не знаю, не смотрел как это сделано у тебя, в апм и пиксе, т.е. всего лишь мысли…
Вот я и в раздумьях, как сделать. Пока меня устраивает как есть, думаю к версии 1.2 буду допиливать.
Мне пришлось на обоих квадриках пиды настраивать. Причем P на обоих двойной, I на обоих в половину меньше, D на одном в два раза больше, на другом почти в три!
Пиды настраивали или так полетело? Уже не первый раз слышу, что INAV летает лучше OpenPilot/Taulabs
Пока не подстраивал - так полетел, на дефолтных (рама ZMR250). Сейчас поеду в поле, испытаю с ветром. Заодно и Poshold и возврат. Ну и самолетик возьму мелкий (mini sky walker) на него тоже поставил openpilot CC3d с прошивкой inav.
Скорость возврата определяется set nav_max_speed = 300 - это 3м/с. Можно зажать до 100 (1 м/с), тогда возврат будет медленный и печальный.
Ну это нормально, только вот он летел непосредственно в точку на земле, а не на высоте 15м.
Пока не подстраивал - так полетел, на дефолтных (рама ZMR250). Сейчас поеду в поле, испытаю с ветром. Заодно и Poshold и возврат. Ну и самолетик возьму мелкий (mini sky walker) на него тоже поставил openpilot CC3d с прошивкой inav.
Отпишитесь по результату, мне очень интересно как Sparky у вас полетит 😃
Ну это нормально, только вот он летел непосредственно в точку на земле, а не на высоте 15м.
Вот я и говорю - нужны логи 😃
Хочу сейчас на крыле с cc3d и gps с компасом попробовать. Для этой сборки нужны какие то особые указания или можно откалибровать аксель и компас и можно в тучу?
Хочу сейчас на крыле с cc3d и gps с компасом попробовать. Для этой сборки нужны какие то особые указания или можно откалибровать аксель и компас и можно в тучу?
Самолетный код сильно не отлажен пока. Особенно ПИДы требуют доводки - умолчания на самолетах работают плохо. Надо быть готовым в любой момент перехватить управление и “спасать” самолет руками.
Да, еще желательно использовать собственную сборку из исходника - я не далее как час назад поправил серьезную ошибку в коде контроллера позиции (используется RTH/PH), после фикса код еще не тестировался.
Мои PID на ZMR 250
set p_pitch = 105
set i_pitch = 20
set d_pitch = 150
set p_roll = 95
set i_roll = 20
set d_roll = 130
set p_yaw = 110
set i_yaw = 50
set d_yaw = 0
set p_level = 160
set i_level = 10
set d_level = 75
Мои PID на ZMR 250
Ничего себе! Многовато и P и D на питче и ролле. Либо это 3S сетап на очень тяжелом квадрике, либо квадрик в полете вибрирует с дикой частотой (впрочем это не мешает INAV летать и даже правильно считать навигацию)
Это 3S и пропеллеры 6х4 И ничего не вибрирует
Это 3S и пропеллеры 6х4
А моторы? Такие дикие коэффициенты у меня только на 450 квадре с моторами 920кв и пропами 10x4.5. Вся мелочь летает с гораздо меньшими коэффициентами.
DYS 1806 2300KV
Единственное при посадке на асфальт прыгаед…
DYS 1806 2300KV
Похоже пропеллеры слишком тяжелые для этих моторов. Я похожее видел с 1806 + 5x4.5 пропами. Инерция большая, крутящий момент мотора маленький, быстро менять скорость вращения не получается, приходится очень сильно менять управление не моторах чтобы хоть моторы успевали реагировать. С более легкими пропеллерами или более мощными моторами (2204 или 2205) он полетит лучше 😁
С 5х4 PID были другие. D был 70 I 30 P 6
В общем пришел я с поля - погода правда подкачала - ветер поднялся до 12м/с. В Angle режиме летает отлично . В NAV althold при полете вперед теряет высоту, при полете назад так же набирает (баро закрыт поролонкой), на месте висит без изменения высоты. А вот режимы Nav poshold и NAVRTH не получилось проверить - с компасом я чтото намудрил. Вроде как установил для модуля BN-880 align_mag = CW0FLIP
(установив дополнительно mag_declination = 1010 (вроде как для моей локации 10.1 градусов)). Но работает некорректно. Коптер унитазит по большому кругу и затем резко начинает улетать. Буду разбиратся.
Сейчас обратил внимание, что ещё странно - при выборе родного компаса - set mag_hardware=0, показывает стороны света верно только при установке align_mag = CW270FLIP, при align_mag = DEFAULT показания сдвигаются на 90 градусов
Поставил карбоновые трех лопастные 5x4 вот результат.
set p_pitch = 65
set i_pitch = 20
set d_pitch = 110
set p_roll = 55
set i_roll = 20
set d_roll = 100
Летает правда вроде лучше. На асфальте больше не прыгает.
да счас посмотрел для внешнего компаса align_mag = CW270FLIP - только тогда правильные показания
А для мини gps ru.aliexpress.com/item/…/32492893509.html какую скорость выбирать? А то чёт полдня с ним бегал и так и не получил координат по смарт порту.
А для мини gps ru.aliexpress.com/item/Free-s...492893509.html какую скорость выбирать? А то чёт полдня с ним бегал и так и не получил координат по смарт порту.
Ох, не самый лучший выбор. Проверить на какой скорости он работает можно в программе u-center.
Просто хотел очень лёгкий для лёгкого крыла.
Если я меняю протокол на nmea, то значок gps пропадает, а с ublox показывается. Если бы скорость не совпадала, тоже же значок не показывался?