ArduPilot 2.8 beta 1 Тестирование, обсуджение

Rom111

Из учебника мы о посадке самолёта знаем следующее:

Посадка является завершающим этапом полёта и представляет собой замедленное движение самолета с высоты 25 м до полной остановки после пробега по земле. Посадка самолета, как правило, состоит из следующих этапов :

  • планирования (снижения);
  • выравнивания;
  • выдерживания;
  • приземления (парашютирования);
  • пробега.

Тут наверное попроще, модель снижается с определённым тангажом до касания земли? А что дальше? Момент касания как-нибудь определяется автопилотом? И ещё интересно двигатель в какой момент отключается?

alexeykozin

я слыхал от авторитетных летчиков другую версию, “посадка это прерванный уход на второй круг” 😃)
но применительно к существующим версиям модельных автопилотов это не так

исходя из моего понимания кода и тестов в симуляторе:
логика перекочевавшая из 2.7 в 2.8 beta 1 заключалась в том что выйти на последнюю маршрутную точку по высоте и курсу
при расстоянии до последней маршрутной точки заданной в константе SLOW_RADIUS устанавливается уровень газа из константы THROTTLE_SLOW
при достижении расстояния THROTTLE_CUT_RADIUS вырубается газ
при достижении расстояния “радиус вейпоинта” (задается в configtoolglobal и сохраняется в eeprom) устанавливается кабрирование LAND_PITCH ( по умолчанию 15 градусов) что сначала приводит к подскоку при высокой скорости
далее выдерживается этот тангаж что обеспечивает гашение скорости. если последняя точка слишком высоко то сначала вертикальная скорость минимальна, но потом растет, в момент планирования идет стабилизация по крену, при потере скорости иногда несколько колбасит

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

в разрабатываемой версии 2.8 в бэта 6 сделал запоминание курса для посадки на стадии взлета по курсу home-> 1 точка и убрал подскок при посадке тем что задаю посадочный тангаж не единовременно постепенно а в зависимости от вертикальной скорости по жпс

впоследствии думаю задействовать сонар и интенсивно гасить вертикальную скорость лишь на последних паре метров

Rom111
alexeykozin:

устанавливается кабрирование LAND_PITCH ( по умолчанию 15 градусов) что сначала приводит к подскоку при высокой скорости

Ага, понял теперь, что за маневр перед снижением на рисунке из поста #13.
Я вот ещё, что подумал, а можно ввести в код автопилота команду на автоматическое отключение двигателя при условии снижения ну скажем менее 20м? На тот случай, если модель вдруг упадет в кусты, что бы движком не молотила. Точнее это условие должно, наверное, выполняться при удалении от точки старта более 200м и высота ниже 20м.

alexeykozin

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

Rom111

ясно, т.е. самолет взлетал справа налево, а я думал наоборот 😃

11 days later
alexeykozin

летные испытания 2.8 показали что стабилизация работает превосходно,
но полноценно облетать авторежим не удалось, забыл откалибровать газ,
заданное по умолчанию значение 600 в канале газа оказалось крайне мало для используемой нами модели
в процессе испытаний не могли понять почему такой малый газ в авторежимах
при наземном анализе оказалось что заданное по умолчанию значение THROTTLE_MAX 600 дает лишь половину от максимального ручного газа
и возможно стало причиной проблемы.

для пробного полета рекомендую установить следующие параметры:
#define THROTTLE_CRUISE 700 // 1000 = trottle max Default throttle value - Used for central value.
#define THROTTLE_MAX 1000 // 1000 = 100 percent of trottle stick Throttle (lower this if your plane is overpowered)

проверить можно отклонением сервы подключенной в канал газа
она должна отклоняться в режиме takeoff на такой же угол как и в ручном при одинаковом положении стика газа

3 months later
kedrikov

Тестил сегодня REMZIB+ARDUPILOT+IMU по земле.Вобщем первые грабли которые немогу победить.
Проблема с выводом данных на ремзиб.Стоим на месте,включаем питание,спутники найдены судя по свечению голубого светодиода на иму.Жмякаем ресет на ремзиб сохраняя точку старта и начилось …😦 высота и дистанция живут своей жизнью,количество захваченых спутников не отображается.Скорость вроде как верно смотрел на спидометр.Dj время движения дистанция не меняется…

Связка ремзим и жпс модуль с обычной прошивкой работаю приемлемо вот только дистанция и высота постоянно плывут ± 20-50м вобщем фигня какаято…

www.youtube.com/watch?v=eljM8Su-tg8&feature=youtu.…

kedrikov

Все разобрался с проблемной.Пришел к выводу ,что все глюки были из-за комнатных тестов ,также выяснилось ,что прошивки для всех модулей нужно лить из одно пака hobby.msdatabase.ru/project-updates/…/remzibiosd спасибо Алексею.
Сделал небольшой тест на точность отображения скорости,дистанции и высоты,вот что получилось

www.youtube.com/watch?v=Z-IyPi1ib0M

Чтобы символы не моргали их нужно помещать не в зонах горизонта

kedrikov

Перешел к этапу установки ардупилота на ская и наткнулся на очередную проблему.В хвосте стоят HXT900 аналог они ведут себя во всех режимах пилота отлично.В элеронах стоит цифра www.hobbyking.com/hobbycity/…/uh_viewItem.asp?idpr… мягкие отличные сервы но в режиме Manual они почемуто дергаются с очень приличной амплитудой.Подключал на элерон 900-ку такой ерунды нет.Ну очень уж нехочется обратно менять на аналог темболее что в будущем планируется установка таких же цифровых серв в хвост.Как решить эту проблему?

Ardupilot от Алексея hobby.msdatabase.ru/project-updates/…/remzibiosd remzibi_softpack_1_73 с поддержкой ремзиб

www.youtube.com/watch?v=9JZkglDtjHA&feature=youtu.…