Автопилот Arduplane - открытое ПО
или таки придётся дерать дыру в самолёте чтоб добраться до усб?
Зачем дыру. Можно сделать аккуратную дверцу. Если захотите обновить прошивку - только через USB.
Ещё вопрос - как будет себя вести RTL если его активизировать до того как апм определит координаты и вообще будет на земле?.. врубаю его в тесте - мотор заглушен, высота вниз, правый разворот…
Да, такое поведение корректное, газ на земле работает только в ручном режиме и режиме стабилизации. Если включить RTL когда нет захвата GPS - ничего хорошего не выйдет. О режимах написано тут plane.ardupilot.com/wiki/flying/flight-modes/
Первое ощущение, что Airspeed Enable, но не Use на вкладке Hardware Options
Именно и Enable и Use.
Может все же вибрация?
Андрей, у вас какая модель GPS? У меня Mediatek старенький. Смотрите, что ответил разработчик на форуме
www.diydrones.com/xn/…/705844:Comment:1318307
Он делает однозначный вывод, что GPS глючит и с запазданием рапартует в APM, что спутники потеряны. Поскольку APM использует эти данные для корректировки положения, из его объяснения следует, что в результате ложных сведений от GPS, APM думает, нос задран вверх (что подтверждается положением искусственного горизонта, как писал ранее), но на самом деле идёт пикирование. Проблема частая у кого старый MTK GPS со старой прошивкой.
So there are a few things you can do:
- buy a uBlox GPS
- if you don’t want to buy a new GPS then ensure you have upgraded the MTK firmware
- look for sources of RF interference with your GPS. Make sure it has a clear view of the sky, and is well away from RF sources (eg. video transmitters or telemetry enabled receivers)
- Reduce AHRS_RP_P and AHRS_YAW_P to 0.3.
Завтра постараюсь взять у знакомого uBlox и скорректировать параметры как пишет. Ну и общее замечание к требованию установки GPS (подальше от передающих антенн), нужно выполнять.
Не думаю, что это проблема, из-за которой пикирует. У меня ublox. Все равно несется к земле. Правда, не догадался посмотреть что там со спутниками происходит. Теперь нужно ждать нового АП для тестов 😃
Делаю вывод: либо 2.73 содержит ошибку (автопилот сознательно хочет вогнать самолёт в землю), либо LIM_PITCH_MAX,2000 не достаточно, чтобы вытянуть самолёт с пикирования на скорости 75 км/ч.
Поставте 3000, мне это помогло, теперь и при довольно большом ветре не проваливается при повороте по ветру. И еще добавил чуток PTCH2SRV_I до 0.1. Там с этими углами не понятка какая та, надо ставить намного больше реального. Крен у меня стоит 5000, но естественно он такого угла в жизни не видел и в реале в автопилоте не больше 25 градусов накреняется.
поймал глюк в режиме стабилизации на прошивке 2.73. на двух разных самолётах (двух моторный твинс и крыло) их плавно ведёт вниз. причём в RTL всё нормально. не подскажете куда копать?
Андрей, у вас какая модель GPS?
У меня u-blox NEO-6M. Вполне возможно что сейчас я пропустил калибровку компаса, но первый полет для тестирования прошел без замечаний, и в моем логе 12-13 спутников постоянно. Вся эта котовасия с RTL пошла только с прошивкой 2,73
Потестирую подольше, если что попробую вернуться на 2,68
не подскажете куда копать
подозреваю в калибровку радиво… у меня было откалибровано без тримера вниз - в полете после оттримировал чтоб не летел вверх… как результат было в мануале летит как надо включаеш стабилизацию - чем блоьше газ тем сильнее забирается вверх.
ну и результаты, вчера тестировал стабилизацию, сегодня возврат домой забив на настройку пидов между этими пунктами.
Результаты:
режим стабилизации показал что я не умею летать. врубил и самолёт какбудто прибили гвоздями к небу. рулится при этом по одному каналу элеронов, элероны влево, самолёт разворачивается плавно мягко влево.
режим возвар домой показал мне на сколько я не умею летать.
настроил: минимальный газ 0 максимальный 70, крейсерская скорость 10 м\с, крейсерский газ 30%
получил:
– держал высоту
– держал крейсерскую скорость
– кружочки над домом делал змейкой
– газ гулял 0-30% те переодически вырубал мотор чтоб держать крейсерскую скорость
– [главное] тока кушал на всё это в районе полтора ампера всего. те не смотря на змейку летал просто супер эффективно.
вот теперь думаю - первым делом настроить пиды чтоб кружочки как по циркулю были или посмотреть как он коробочку 200х200м сделает)))
Ну и забыл сказать про змейку - чтоб самому не летать змейкой я поставил экспоненты 70%))) апм какбы рулит без них.
ну и результаты, вчера тестировал стабилизацию, сегодня возврат домой
Поздравляю.
А я сегодня реанимировал сгоревшую минимОСД. Перепаял пришедший из Китая MAX7456. А выписанные ранее две осдэшки канули в аналы почты
Перепаял пришедший из Китая MAX7456
хммм… а я максимки выпросил у максим… на холяву и очень быстрой почтой какойто привезли)))
правда я тока 4ре штуки попросил)))) они 4ре и прислали)))
не то чтобы я холявщик… просто не знал где их купить… нигде небыло в наличии… а на сайте максим было написано что можно попросить сампл)))
я себе взамен вышедшей из строя minimosd с rctimer взял в Мск с рук minimosd v0.1
Запитал только от 5v c APM (запаял перемычки)
В прошедшие выходные отлетал. Правда снова настроить переключение экранов не смог:
Крутилка на 6ch выведена, в окне калибровки каналов видно, что сигнал на 6ch меняется. Однако же - переключение экрана не происходит.
попробовал девелоперскую прошивку 2.7.4 на изистаре
был сильный порывистый ветер, сам по себе самоль намного хуже себя ведет чем скай изза дурацких законцовок на крыльях, накрутил запредельно пиды серв элеронов 1,2 и руля высоты 1.0. отлетали “ведро аккамуляторов” превосходно ведет себя. в основном летали по фпв в стабе, но проверили фаилсэйв, ртл, авто
Однако же - переключение экрана не происходит.
Может на экране при этом есть какой-нибудь warning?
Испытал два самолета с прошивкой 2.73 - тихоход из потолочки (№1) и модифицированный Х-8 (№2) - точнее крылья от него с самодельным фюзеляжем. Два новых ардупилота, 2.73 - первая прошивка в их жизни у обоих. Ветер 10 м/с, порывами до 12. №1 полетел сразу и без проблем с настройками по умолчанию - даже автовзлет испытал. Полет по точкам, правда, получился по траектории далекой от “правильно”, но это скорее всего проблема ветра - его скорость была только немного меньше собственной самолета.
№2. На нем нет датчика воздушной скорости - а в наземке отображались ДВЕ! скорости, причем воздушная скорость была вполне адекватной - т.е. летим против ветра - наземная меньше, летим по ветру - воздушная меньше, вижу только одно объяснение - или АП или наземка каким-то образом вычисляют эту самую воздушную скорость, определяя разницу жпс скорости при полете по круговому маршруту.
Стабилизация работала нормально, даже взлетал с ней, возможно, чуть-чуть терял высоту в этом режиме. Включил RTL самолет опять попытался воткнутся в землю - он находился на высоте 96 метров (высота возврата 100), скорость 80, делает разворот в сторону дома, во время разворота начинает пикировать, набирает скорость 141 км/ч (не опечатка), при этом винглеты и концы крыльев флатерят со страшной силой, включаю стабилизацию, тяну ручку - не реагирует, тяну полностью на себя - на высоте 5 метров (все цифры взяты из лога) удается вытянуть самолет.
Выводы - на тихоходе все работает отлично, на скоростном самолете - возможно не хватает расходов, и, однозначно есть недостатки самого самолета, делается следующее:
- отрезаны винглеты, как главный источник флатера, киль на фюзеляже решает проблему путевой устойчивости;
- изготовлены новые элевоны (плотная бальза, однонаправленный уголь, стекло) - пенопласт, даже обтянутый пленкой на крутку вообще не работает;
- тяги от машинок к кабанчикам из 2мм стальной проволоки (по умолчанию 1мм, как раз при даче ручки “на себя” они гнутся очень легко);
- возможно, нужно будет поставить машинки помощнее (сейчас 4.3 кг/см)
Возник вопрос - из ограничений скорости нашел только FBW max & min - но похоже на автоматический режим (как и на режим возврата) они не влияют, есть ли какие-то ограничения для этих режимов?
попробуйте девелоперскую с 2.7.4 с алгоритмом контроля высоты tecs alt_hold_alg =2
мы ее летали выходные, ртл без датчика воздушной скорости без нареканий
Странно что у многих проблема с РТЛ. В воскресенье настраивал второй самолёт, пилотага 2м с 55кубовым бинзинычем, без ПВД. Прошивка 2.73, плата 2.0. Ни какого шаманства, стандартные процедуры настройки.
- Полёт в ручном режиме, тримеровка, настройка расходов, посадка.
- На земле, калибровка радио, калибровка горизонта (акселя).
- Взлёт, проверка горизонта и настройка ПИДов режима стабиле.
- Настройка разворотов без снижения в режиме ФБВ-А (подстройка
- Полёт по точкам (по квадрату), настройка соответствия круизной скорости и круизного газа, настройка микса руля направления в вираже (но это конкретно к этому самолёту, у него задняя центровка и он опускал хвос в повороте).
- Ну и РТЛ.
Всё, в принципе уже самолёт неплохо летит, Остаётся точная подстройка по пидам высоты, максимальные углы крена и тангажа, сменить алгоритм удержания высоты на alt_hold_alg 1, ну и по мелочам.
Пробовал tecs alt_hold_alg =2, не совсем понравился, alt_hold_alg =1 мне подошол больше.
По tecs_ вот здесь plane.ardupilot.com/wiki/arduplane-parameters/#TEC… куча параметров tecs_, но в parameter list, я их не увидел, мож я не там ищу?, или эти параметры в будущих версиях планируют?
Вот лог, в начале полёта были настройки до пункта 4, потом немного подстраивал. Высота на самом деле почти не гуляет, просто в фюзу в мотошпангоуте отверстие под карбюратор, надувает. Да и NAVL1_PERIOD стоит 25 чтобы меньше рулил после виража, т. к. расстоянии между точками небольшое.
Как-то не очень хочется испытывать нерелизную версию, тем более что тихоход то у меня полетел как нужно - значит все же дело не в прошивке, а в настройках.
- Настройка разворотов без снижения в режиме ФБВ-А (подстройка
Похоже это и есть ключевой момент, отличающий нормально летящие самолеты, и те, которые стремятся воткнуться в землю, в списке нашел параметр, похоже отвечающий за потерю высоты в повороте:
Roll compensation (PTCH2SRV_RLL)
This is the gain term that is applied to the pitch rate offset calculated as required to keep the nose level during turns. The default value is 1 which will work for all models. Advanced users can use it to correct for height variation in turns. If height is lost initially in turns this can be increased in small increments of 0.05 to compensate. If height is gained initially in turns then it can be decreased.
Range: 0.7 1.5
Increment: 0.05
в 2.68 он назывался PITCH_COMP, поэтому и не мог его сразу найти, возможно, еще есть смысл добавить I по тангажу - но это все после доводки самолета.
пилотага 2м с 55кубовым бинзинычем
с вибрациями как боретесь?
Извеняюсь 😃, не дописал. Да в прошивке 2.73 это именно PITCH COMP(в parameter list RFF_PTCHCOM) , по умолчанию стоит 0,2. у меня получается 0,24 , а PTCH2SRV_RLL это уже в прошивке 2.74.
И ещё обязательно надо подстроить Ruder Mix, для начала лучше поставить его в 0 а потом смотреть, нужно поднимать хвост в повороте или нет, у меня стоит 0,1. У высокопланов с V крыла, руль направления добавляет крен, это надо помнить.
Виброразвязка сделана на гелевых демпферах от CD ченжера, сейчас всё стоит в самолёте, коробочка закрыта, разбирать не охота. На днях буду колхозить для 3-х метрового мотопланера с ДЛЕ-20, тогда сфоткаю и выложу.
А можно еще вопрос по электрике?
Я питаю мозг (ArduFlyer с RCTimer) от отдельного БЕКА через входы для приемника.
Этот БЕК питается от силовой батареи
К силовой батарее подключены аналоговые датчики тока и напряжения, которые я тыкаю во входы A1 и A2.
Вопрос - нужно ли от этих датчиков заводить землю на A1, A2, или только сигнал? По идее земля и так общая у аналоговых входов и входов приемника и нет смысла ее еще раз закорачивать. Кроме того, земля на входы приемника приходит через BEC, а на A1/A2 через сенсоры и может получиться ненужный ток? Или наоборот надо уравнять все “земли”, соединив их через ArduFlyer?
Потерялся я в этой электрике - нужна помощ 😃
уравнивать ничего не нужно, земля должна быть одна без колец, иначе будут левые токи изза разности потенциалов в разныйх точках земли. по английски это называется ground loop и с ними надо бороться
Привет!
Спешу поделиться радостью: проблема с потерей высоты в RTL и других автоматических режимах полностью решена!
Как и сообщал ранее, корень зла был в GPS приёмнике. Взял у знакомого квадрокоптериста uBlox, прошил под Ardupilot и поставил вместо своего MTK 3329. Всё! Больше ничего не менял и ничего не настраивал!
Идеальный полёт в FBW-A. Стик ролл до упора - плавно поворачивает в крене, высоту при этом держит идеально! Режим возврата на базу - без нареканий. Прилетает и летает на заданной высоте идеальными кругами. Как будто привязан веревочкой!
Спутников 9-10. Не теряет.
Дал порулить в очках другу (он вообще ни разу даже в симе не сидел!) в режиме FBW-A - неописуемый восторг (у меня тоже)!
Skywalker 1.68, APM 2.5 (v2.73), 5000A/h, Video 5.8ГГц, jDrones uBlox NEO6 Multicopter GPS, Airspeed, 3DR Power Module (только как датчик)
Спасибо всем, кто отвечал в теме и в личку!
P.S. Вспомнил! Ещё 2 параметра скорректировал AHRS_RP_P and AHRS_YAW_P to 0.3.
В планах перепрошить свой Mediatek и дать ему последний шанс!
ground loop
Вот я его и опасался. Потому и спросил 😃 Получается, что от датчиков тока и напряжения на APM нужно завести по одному проводку. Ура - меньше проводов - меньше забот.