Проект Мегапират на самик!

Syberian

2.0.3596
====

  • добавлен режим AltHold на квадриках
    Важно!
    Режим в процессе тестирования. Функциональность в данный момент: тупо удерживать высоту, на которой был включен. Положение газа значения не имеет. На 085 барометре мой мелкий квадрик (х550) висит в пределах 2 метров, что соответствует ожиданиям, хотя, наверно, можно выжать и поточнее.

Большая просьба владельцам квадриков: потестировать разные наборы параметров в целях улучшения и проч. В наземке при соединении вылезет окошко (см. вложение). Там три параметра сверху вниз: D,P,I. Туда нужно вбить начальные параметры: 0.5, 0.02, 0.001 и нажать write. Для чтения из контроллера нажимать read.
Не пытайтесь включать холд без установки параметров! дрова будут неизбежно.

В дальнейшем настройки станут постоянными, однако, хотелось бы выявить закономерности и зависимости от типа рамы и проч. Поэтому и прошу потестировать и поковырять параметры. Предложенные “дефолты” использовать для представления о порядке чисел.

Вот примерная метода настройки PID-регулятора по высоте"с нуля", предложенная Mihai Dragu для multiwii, лучше и я бы не смог описать :

1-Установить в 0 параметры P и I. Изменяя D (параметр D отражает влияние проинтегрированного акселерометра на газ), найти такое значение, чтобы при включении режима коптер более-менее останавливался из вертикального движения. Если коптер быстро подгазовывает и прыгает вверх-вниз, D нужно уменьшать.

2- Понизить D на 20-40%, т.к. при установке P и I в ненулевое положение приведет к перерегулированию по D.

3-Начинайте увеличивать P (I остается нулевым), пока не возникнут увеличивающиеся осцилляции по высоте, после чего уменьшите его наполовину. Теперь коптер будет медленно “плавать” вокруг целевой высоты, т.к. одним параметром P точную высоту не удержать.

4- Увеличивайте I, пока коптер не будет плавно висеть на заданной высоте в пределах 1-0.5м. В случае барометра ms5611 - 20см. Все.

Спасибо mahowik за несколько замечательных идей по реализации 😃

===
Если у кого-то есть возможность записать логи, буду признателен.

P.S. Для самолетчиков окно debug не нужно и не влияет ни на что, так что задвиньте в уголок, чтобы не мешалось - отрубить его невозможно.

ssh1

Начал восстановление самоля, пока есть первая порция вопросов и предложений.
1.Как без GPS проверить автопилот, а именно как он газует? Подозреваю что никак, но все же.
2.Олег, есть просьба, сделать регулируемым время ухода в FS и возврата обратно.
Причина - у всех разная аппа. У некоторых при пропусках пакетов применик сразу ставит FS или выключает PPM.
У других - настраивается кол-во подряд пропущеных пакетов до включения FS. Например на LRS Expert производитель рекомендует выставить кол-во пакетов соответствующее 2-3 секундам + к этому времени прибавляется время задержки MPX - итого 5 и более секунд. Обратно при появлении сигнала, походу тоже есть задержка. Получается слишком большая пауза, смысла в которой абсолютно нет. С экспертом хочу вообще занулить задержки mpx.

Syberian
ssh1:

занулить задержки mpx.

Принято. Я тебя понял. По идее, искусственный ФС равноценен, как если бы на приемнике сработал ФС и включил режим return, т.е. проср*но уже достаточное кол-во пакетов, чтобы понять, что связи нет. А задержка сейчас там стоит такая же, как и на пропадание сигнала в обычном ППМ. В отдельном пункте настройки смысла не вижу.

ssh1:

Как без GPS проверить автопилот, а именно как он газует?

симулятор заюзай… иначе он даже не включится без жпс.

ssh1
Syberian:

Принято. Я тебя понял. По идее, искусственный ФС равноценен, как если бы на приемнике сработал ФС и включил режим return, т.е. проср*но уже достаточное кол-во пакетов, чтобы понять, что связи нет. А задержка сейчас там стоит такая же, как и на пропадание сигнала в обычном ППМ. В отдельном пункте настройки смысла не вижу.

То есть просто уберешь задержку если входим в FS по каналу управления? Единственное что не точно помню, задержка на выход из FS тоже существует? Если да, то и ее занулить бы надо.

alex-ber

Ну наконец-то выбрался сегодня в этом году полетать!!!
летал еще все таки визуально - проверял ВС…
Что могу сказать :

  1. это полное издевательство над организмом… за двадцать минут укалел так, что при сборке домой пальцы уже не гнулись… не - я подожду погоды…
  2. Ап работал нормально, но есть вопросы:
    Олег - получается если скорость самика меньше чем выставлена в настройках (у меня по умолчанию было минимальная 50 км час, реально летел от 30 - 48, только несколько раз против ветра - 51) то в Авторежимах самик давать газу не будет?!!!
    и еще - при возврате теперь самик не держит высоту - в смысле он двиг вырубает и кругами снижается(!!!)
    Я понимаю что нужно было мин скорость пониже выставить (правильно?) - но вдубел так, что не хватило смелости…
    Но всеж полетал!!!
    ПС да и против ветра (если верить показаниям датчика ВС на земле - 11 км час скорость ветра…) немного с раскачкой по курсу идет в авторежиме…
    видео и лог могу выложить - так4 ничего интересного - полет кругами и включение разных режимов (в основном возврат и Альтхолд…).
Syberian
alex-ber:

давать газу не будет?!!!

будет уже, все пофиксено в тот же день!
Убедись, что прошива у тебя не ниже 3543 и наземка не ниже 70.

alex-ber:

при возврате теперь самик не держит высоту - в смысле он двиг вырубает и кругами снижается(!!!)

Давай лог. Видео тоже, естественно.

alex-ber
Syberian:

будет уже, все пофиксено в тот же день!
Убедись, что прошива у тебя не ниже 3543 и наземка не ниже 70.
Давай лог. Видео тоже, естественно.

сейчас залью видео, к нему и лог приложу…
ПС посмотрел - прошивка у меня 3513 (!!!) - поэтому и вопросы возникли… во болван…
видео лить или уже не стоит?

ssh1
Syberian:

при возврате теперь самик не держит высоту - в смысле он двиг вырубает и кругами снижается(!!!)

Олег, не пойму, найденый за последнюю неделю баг с газом влиял ли на конфиги с задисейбленным датчиком воздушной скорости?

ssh1

Вроде начал понимать что послужило причиной отключения двигателя неделю назад. Скорее всего дело в замене РУ.

Ранее было так: лечу в ручном режиме, газ 75%, вырубаю пульт, MPX продолжает выдавать на регуль 75%, так как пропал PPM с приемника и последнее значение 75%. Далее через 2-3 секунды MPX уходит в RETURN, и дает газ 99% или сколько считает нужным. Всегда было все ок.

Теперь поставил РУ с FS и получается так: лечу в ручном режиме, газ 75%, вырубаю пульт, приемник падает в FS, выдает в канал газа 0, в канал управления режимами MPX - FS. Соответственно MPX выдает на регуль тоже 0. Через 2-3 секунды MPX сваливается в return и выдает на регуль 99%. И вот такие скачки скорее всего и не понравились регулю.

Олег, когда уберешь задержку, может получится картина - на долю секунды в 0 и сразу в 99%.
Думаю как бороться - как вариант выставить газ в FS не в 0 а в 50%.

Syberian:

А может, отсечку рег словил? Ладно у меня на трешке регули, если в течение 0.2 сек газ в 0 а потом опять заводить, проц на регуле в ребут уходит, но 3 секунды без газа - это вполне штатная ситуация.

А можно подробней как ведет себя рег при отсечке? Ниразу не видел. Это превышение допустимого тока как я понял? Как его запускают после этого?
Что с регулем после ребута случается в твоем случае?

Syberian
ssh1:

за последнюю неделю баг с газом влиял ли на конфиги с задисейбленным датчиком воздушной скорости?

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

ssh1:

И вот такие скачки скорее всего и не понравились регулю.

ага, понятно, тут, наверно, можно поставить демпфер на канал газа.

ssh1:

как ведет себя рег при отсечке?

если батарея просаживается ниже заданного уровня (обычно 3В на банку, автодетект), регуль, в зависимости от его настроек, или плавно сбавляет газ до 0, или просто резко вырубает. Далее от типа регуля зависит, но обычно можно форсировать продолжение работы, сбросив газ до 0 и плавно вывести на рабочие обороты.
Если газ резко врубается до 99%, это может спровоцировать бросок тока и, соотв, просадку батареи до отсечки регуля.

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

alex-ber:

немного с раскачкой по курсу идет в авторежиме…

дык понятно, если скорости ему не хватает, а движок выключен. На ручке уже давно бы свалился.

ssh1
Syberian:

если батарея просаживается ниже заданного уровня

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

Ты как-то можешь ограничить в прошивке скорость изменения газа, да и нужно ли это или лучше все же мне в FS выставить не 0 а 50%?
Еще идейка появилась связанная со всем этим делом, а что если MPX будет детектировать незавод движка и сигналить, или даже перезапускать пытаться?
То есть если газ более X и ток при этом менее Y - алярма, попробуем перезапустить.
А то я пока вкурил что без газа идет, много времени потерял.
Кстати это можно включить во всех режимах, а не только в авто.

Syberian

2.0.3607
===

  • время реакции на искусственный failsafe (как полетный режим) уменьшено с 3 до 0.3 сек
  • в самолетах введен демпфер ручки газа, дабы не перегружать регуль. Ход газа от 0 до 100% занимает 0.6 секунды.

frwind

Хотел проверить альтхолд на коптере, да не смог даже наземку запустить
вылетает с ошибкой
антивирусы файрволы выключены
перезапускал, по колесам стучал, не помогает
ОС Вин ХР 32х
Инет есть.

ssh1
Syberian:

уменьшено с 3 до 0.3 сек

Получается что газ упадет до половины, а потом пойдет опять вверх. А в 0 совсем нельзя ? Зачем эти 0.3?

dundel1
Syberian:

введен демпфер ручки газа

В авторежимах, или в ручных тоже?
На мой взгляд, в ручных не надо!
Ситуации всякие бывают, иногда этих 0,6 секунды как раз и хватит, чтобы самолёт не успеть выдернуть, и он в землю вошёл. Было неоднократно, когда спасал резкий рывок газом.
А чтобы регуль в отсечку не уходил при резком рывке, он должен некоторый запас по мощности иметь относительно движка.
И ещё винт должен быть подобран, чтобы двиг мог его провернуть при любых условиях.
При этих условиях, независимо от скорости работы газом, всё будет успевать отрабатывать без срывов и отсечек.

Syberian
frwind:

да не смог даже наземку запустить
вылетает с ошибкой

запущена от админа? файлы из архива все заменены? internet explorer из винды не выковыривал? джава runtime 6-7 версии стоит?

ssh1:

Зачем эти 0.3?

защита от дребезга

dundel1:

иногда этих 0,6 секунды как раз и хватит,

Посмотри на график. Это не значит, что 0.6 секунды оно будет тупить, а потом отреагирует на газ. Реагирует сразу.

frwind
Syberian:

Сообщение от frwind
да не смог даже наземку запустить
вылетает с ошибкой
запущена от админа? файлы из архива все заменены? internet explorer из винды не выковыривал? джава runtime 6-7 версии стоит?

Винда свежая, с наземки все в новую папку распаковано, ие не выковыривал, ява 7 стоит последняя, от админа

в микрософт скрипт едиторе кидает на эту строчку, если нажать отладка
markerV.setIcon(goldStar1);

Syberian

а разделитель - запятая в региональных? поставь точку

похоже, это тут ни при чем.

Попробуй заменить markerV.setIcon(goldStar1); на markerV.setIcon(“_vehicle.png”);
Каким-то образом твоя система не понимает векторную графику в браузере.

frwind

Поставил точку и исправил строчку, не помогло.
Олег вылезь пожалуйста, в аську если есть возможность.

frwind

отключил test.html переименовав в _test.html все заработало, нет сценария, но он пока для коптеров не нужен.
Спасибо Олегу за помощь