Smalltim OSD and autopilot (часть 1)

sptry
Dronavt:

Владимир, а если не секрет, насколько актуален такой режим?

У меня те же сомнения.
99% случаев, когда может понадобиться включение АП, это потеря радио или видео связи с моделью. Через несколько секунд модель уже начинает приближаться к базе и связь восстанавливается. И опять можно с земли выбирать оптимальные режимы полёта вручную.

Danzi

Слежу за процессом создания АП очень давно и являюсь потенциальным покупателем 😃 Ждем когда все будет готово и можно будет купить. У нас вчера возникла нештатная ситуация в воздухе - оторвался один проводок от мотора и мотор естественно перестал крутится. Самолет - подобие Икара 2м. Может я не внимательно читал, но не понял, как в такой ситуации поведет себя АП? Допустим улетели далеко и пропала связь по управлению, при включении АП он разворачивает самолет и тут такая ситуация - не включается мотор. Если АП будет подавать все время сигнал на включение - то может и регуль сгореть и мотор (одной фазы ведь нету). Плюс к этому повышенный расход батареи (актуально если все питается от одной батареи большой емкости). АП поймет что скорость не набирается и что нужно тянуть с минимальной потерей высоты, что бы как можно ближе дотянуть к месту взлета? Ведь при большой высоте и не большом встречном ветре можно и на базу долететь…

sptry

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

daring
Dronavt:

Владимир, а если не секрет, насколько актуален такой режим? Планеры, особенно слабомоторные и безмоторные, в основном летают ввысь а не вдаль?

Есть желание летать именно вдаль. Эдакий FPV cross-country. Описанный режим - страховка от потери связи на малой высоте и большом удалении. Если подобное случилось далеко под ветром, то на горизонтальный возврат в зону приема вполне может не хватить батареи.
А в качестве идеи совсем на будущее - сверхдальние (по RC меркам) полеты с сопровождением планера на автомобиле. В этом случае на восстановление связи может уйти очень много времени, так как планер будет возвращаться в точку старта, а не в то место где сейчас передатчик.
Возможно я действительно перестраховываюсь в ожидании автопилота и все прекрасно решается штатными средствами. Сейчас у меня вообще EagleTree OSD безо всякого автопилота.

baychi
Danzi:

возникла нештатная ситуация в воздухе - оторвался один проводок от мотора и мотор естественно перестал крутится. Самолет - подобие Икара 2м. Может я не внимательно читал, но не понял, как в такой ситуации поведет себя АП?

В вашем случае АП развернул бы модель на базу и действовал бы согласно настроек. При достаточной высоте (выше целевой) и контроле скорости,планировал бы, а по достижении целевой высоты и снижении скорости, попытался бы включить двигатель. Даже если бы перегрузки или провала питания не произошло, рано или поздно удержание высоты кончилось бы сваливанием модели на крыло и в штопор. В зависимости от свойств модели, из штопора АП скорее всего вывел бы модель с потерей метров 50, и снова развернул на базу. Далее еще один срыв и штопор. И так далее, до встречи с планетой, если ранше Вы не перехватите управление.

Определять неисправности Вашего электрооборудования, тушить пожар на борту, и переключаться на альтернативные способы управления, при потре крыла или хвоста, АП пока не умеет и врядли когда сможет. 😃 В лучшем случае, он научится диагностировать собственные неисправности и сообщать об этом пилоту.

Серый_Волк
baychi:

Определять неисправности Вашего электрооборудования, тушить пожар на борту, и переключаться на альтернативные способы управления, при потре крыла или хвоста, АП пока не умеет и врядли когда сможет. 😃 В лучшем случае, он научится диагностировать собственные неисправности и сообщать об этом пилоту.

Желательно эти сообщения записать нежным женским голосом.😁

baychi
daring:

Есть желание летать именно вдаль. Эдакий FPV cross-country. Описанный режим - страховка от потери связи на малой высоте и большом удалении. Если подобное случилось далеко под ветром, то на горизонтальный возврат в зону приема вполне может не хватить батареи.

Дальние полеты прежде всего тщательно планируются и продумываются. Так, что-бы всегда хватало батареи (с запасом в 25-30%) и высоты для связи. АП в дальних полетах используется как средство подстраховки. Для всего остального необходим разум пилота, опыт и грамотный расчет. 😃

daring:

о на горизонтальный возврат в зону приема вполне может не хватить батареи.

Почему Вы считаете, что если на горизонтальный полет энергии недостаточно, полет с набором высоты и планированием будет достаточно? Даже для планера это неочевидно. АП ведь не умеет искать термики. Пока. 😃

Danzi

Определять неисправности Вашего электрооборудования, тушить пожар на борту

Это понятно 😃 Мне было не понятно, как он будет действовать, если не может набрать целевой скорости и высоты. Типа “ага, высоту не набираем, скорость не увеличиваем, хотя все для этого было сделано… значит что то не так и переключаемся в плавное планирование без срыва в штопор и по возможности в сторону базы”. Где то так 😃

leliksan

К присоединюсь к вопросу заданному Danzi, а как поведёт себя АП когда не будет тяги(или недостаточно), так и будет в штопор валится, вместо того что бы лететь к базе со снижением вплоть до встречи с планетой?

Dronavt
leliksan:

К присоединюсь к вопросу заданному Danzi, а как поведёт себя АП когда не будет тяги(или недостаточно), так и будет в штопор валится, вместо того что бы лететь к базе со снижением вплоть до встречи с планетой?

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

Brandvik

В идеале, АП должен регулировать скорость движком и тангажом. И минимальная скорость во всех режимах должна иметь высший приоритет. Тогда и модель не будет свалитьвася в штопор при полете на АП. Какие бы он не выдавал команды. Тогда при выходе из строя тяговой установки, или если вдруг батарейка просядет. При попытке набора высоты Скорость начнет падать и АП должен одать команду на уменьшение тангажа, вот так самик и будет лететь делая небольшие горочки. Главное что бы минимальная скорость была чуть выше скорости сваливания, а целевая минимум равнялась скорости устойчивого планирования. Ну а детект выхода из строя двигательной установки\батареи. Продолжение потери высоты после ХХ сек попытки набора\удержания. Газ в 0 и вперед. Кстити, даже если газ не сбрасывать, то рег. тоже не дурак и прекратит попытки запуска движка… При этом как уже писал Тим детект идет по падению потребляемого тока.
Кстати, для уменьшения раскачки по тангажу можно ввсести разную скорость реакции на какбрировани\пикирование Стоит замедлить реакцию на кабрирование. Т.е. АП медленно тянет на себя и быстро отдает от себя на всех положительных углах. Причем это не относится к реакции рулей, это относится к скорости изменения углов. Как мне кажется это позволит более стабильно контролировать скорость модели особенно в режимах планирования. Я думаю что большая часть из этого уже реализована…, но может я на что полезное натолкнул.

smalltim

Управление тангажом для поддержки мин. скорости задумано, но задумано как аварийный режим при севшей батарее. То есть, если с мотором на базу никак, то попробуем держать скорость снижаясь в сторону базы. Сейчас не сделано. Но Изики не валятся, а летят без мотора в сторону базы.

Сейчас, если батарея села, то АП будет по курсу рулить в сторону базы, а по тангажу пытаться занять целевую высоту. Газ будет выставлять в зависимости от настроек и/или ткущей скорости. Планируется при севшей батарее оставить всё как есть, но газ в 0 и не пытаться занимать целевую высоту, а держать 0 (или заданный в КП угол, для уверенного снижения на достаточной скорости) по тангажу. Самик сам будет нормально планировать на базу.

Так же, при потере сигналов от ГПС планируется держать 0 газа, и заданные в КП для аварийного режима углы крена и тангажа. Цель - плавная спираль на землю. При возврате сигналов от ГПС - возвращаемся в неаварийный режим.
Такого никогда еще не было, но может случиться всякое. Также к неверным сигналам ГПС будет относиться смещение больше чем на 100м за 1 сек.
Еще планируется вставить автоматически включающийся и выключающийся режим “на земле”. Это когда высота меньше 20м и при этом скорость по баро и по ГПС меньше 20 кмч. В этом режиме запрещается включеие мотора. Должно сберегать нервы когда самик еще на земле, и когда он уже на земле, штатно или нештатно.

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

Dareck
smalltim:

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

Вот это точно нужное

leliksan

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

Эх туда бы прицепить мобилку, чтоб СМСку с координатами присылала (несбыточная мечта).

Danzi
Danzi:

“ага, высоту не набираем, скорость не увеличиваем, хотя все для этого было сделано… значит что то не так и переключаемся в плавное планирование”

А вот этот алгоритм сложно сделать? Батарея то еще полная… У нас это уже третий случай вырубания мотора по разным причинам… то проводок оторвался, то подшипник заклинил, то винт так сложился, что при даче газа не мог разложиться и вырвал вибрацией мотораму… может это просто нам так не везет? Были у кого нибудь такие случаи в полете?

Dronavt
Danzi:

Были у кого нибудь такие случаи в полете?

Честно говоря, не сталкивался с похожими проблемами. Хоть и довольно халатно отношусь к предполетной подготовке…
На самом деле я хочу предложить несколько иной подход к алгоритмам работы АП. Пойти по приципу ПВО (Погоди Выполнять, Отменят!). Дело в том, что Тимофей и так заложил столько прибамбасов в свой АП, что многим девайсам и не снилось. И некоторые фишки, казавшиеся некоторое время назад жизненно необходимыми и неоспоримыми, через некоторое время преобразились до неузнаваемости, а, возможно, и стали избыточными. Некоторые же не используются по полной программе.
По сему видится логичным создание некоего “банка пожеланий”, куда будут собираться практически аргументированные пожелания по работе АП.
Этот метод позволит избавиться от перестраховки и надуманных проблем, а так же позволит выявить реальные недочеты применительно к конкретным ситуациям.
По крайней мере, теоретически уже рассмотрено множество внештатных ситуаций, но не стОит забывать, что АП не ПАНАЦЕЯ и всегда останутся случаи, когда он тоже будет бессилен спасти модель или вернуть ее на базу. В этом случае он прикладывает все силы к тому, чтобы минимизировать потери. В моем случае (и это проверено практически) АП посадил Изика в километре от базы, вне зоны РУ и Видео. Но причину невозврата спровоцировал я сам, настолько зажав рули, что Изик не мог спуститься и болтался на высоте 700 метров, пока не села батарейка. После чего начал снижаться по спирали, со сносом по довольно сильному ветру.
PS Со свой стороны, “на благо науки” (с), готов внедрить в разрыв одного из проводов движка размыкалку и проверить на практике поведение АП в случае аварии двигателя. Что и проверим в ближайшее время.

baychi
Dronavt:

готов внедрить в разрыв одного из проводов движка размыкалку и проверить на практике поведение АП в случае аварии двигателя. Что и проверим в ближайшее время.

Зачем? И так понятно, что АП будет пытаться удерживать целевую высоту, задирая РВ вверх. А дальше - одно из двух, либо модель будет парашутировать, либо валится в штопор. Вероятнрость длительного парашутирования зависит от столь многих факторов (ход руля, кривизна модели, ветер) и т.п., что воспроизвести это два раза одинаково, все равно не получится. 😃

Кстати насчет кривизны. Сегодня боролся с РВ, пытаясь заставить Изик стабильно идти вниз, при этом немного перекосил хвост (несколько градусов). После старта, включил стабилизацию и легко оттримирровал перекос РН. Cлетал на 1750 м (до начала потери связи), развернулся на базу, иду строго по прямой, и примерно в километре решил включить АП. Первое что сделал АП - резко развернул модель на 90 градусов, а потом медленно вывел 0.
В очередной раз убедился, что чем “прямее” модель, тем легче АП. 😃

sptry

Пример работы АП с севшей батареей. Целевая высота - 100м

PS. Но этот полёт не показателен, АП был не отстроен и даже с целым акком не очень то хотел набирать целевую высоту. Так что Александр видимо прав, насчёт возможного сваливания.

Brandvik

Александр прав на все 100% Сейчас алгоритм набора высоты- Газ ХХ тангаж ХХ и вперед.
Блин, выходит что сейчас в корне не правильный алгоритм управления тангажом, скоростью и оборотами. 😦

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

Тим. АП для управления по тангажу должен в первую очередь ориентироваться на минимальную скорость. (естественно все рассматривается для полетов с бароскоростью)

Для крейсерского режима ставится ХХ оборотов заведомо достаточных для поддержания высоты и пологого набора если надо. и скорость далее контролируется тангажом. Причем контролируется именно минимальная крейсерская скорость. Если она болше, ну и фиг с ней. быстрее вернется.
Если идет команда набора высоты. Обороты YY и медленное увеличение тангажа пока скорость не упадет до минимально разрешенной на наборе и поддержание ее тангажом. Таким образом набор высоты всегда будет происходить под оптимальным углом с оптимальной скоростью(а так же органичение углов на кабрирование можно вообще не ставить, нужно всего лишь задать нижний предел скорости, к примеру у кого дури много, набор высоты может происходить вообще вертикально 😃 ). Соответственно в аварийной ситуации АП начнет тануть на себя, скорость упадет до “минимально разрешенной на наборе” но самик не будет валиться. Он продолжит “набор” высоты, а когда поймет что набора не происходит (высота всеравно падает) прекратит попытку набора и перейдет в режим удержания, увеличив автоматически скорость за счет тангажа до минимальной крейсерской и продолжит полет в сторону базы со снижением.

Вообще можно все оставить как есть, и попробовать только ввести уменьшение тангажа при падении скорости ниже крейсерской и все. это гарантирует защиту от сваливания в любой ситуации. Нужно попробовать потестить все это на реально срывном самолете …

smalltim
Brandvik:

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

Тим. АП для управления по тангажу должен в первую очередь ориентироваться на минимальную скорость. (естественно все рассматривается для полетов с бароскоростью)

Нет, Андрей. Главное - не скорость выставить какую надо, а потом играть тангажом. Главное тангаж, то есть, главное - занять целевую высоту. Высота и курс - директивы номер 1 у автопилота. Поймешь, когда будешь обливаться п о том, наблюдая, как АП тащит модель к пачке многоэтажек, и гадать, “а вот успеет ли моя моделька набрать высоту с той скоростью, что я задал”?

На данный момент газ в режиме поддержания скорости при любом тангаже (разумеется, ограниченном в КП) подстроится таким образом, что будет выдержана целевая скорость. Никаких сваливаний.
Набор высоты производится и будет производиться под заданным углом на заданной скорости.
Знаешь достаточную скорость и максимальный тангаж для набора высоты для своей модели - милости просим, вбей эту скорость и ограничение на максимальный тангаж в КП.
Никакой свободы действий в играх с тангажом. Больше свободы = больше шансов потерять модель, забыв, что нос перегружен, модель после травмы и т.д. Уж ты-то должен это знать. Пусть будет неоптимально, но надежно.

Ну а севшая батарея - это уже аварийный режим. В этом режиме тангаж будет ставиться на Х градусов вниз, сколько поставите в КП, и будет планирование в сторону базы.

Вот, коллеги, интересный вопрос. А как надежно детектировать аварию с двигателем или севшую батарею, не имея данных с телеметрии (ток, напряжение, бароскорость, баровысота?)
Или вариант без телеметрии не рассматриваем? Я - за 😃

Brandvik:

Вообще можно все оставить как есть, и попробовать только ввести уменьшение тангажа при падении скорости ниже крейсерской и все. это гарантирует защиту от сваливания в любой ситуации. Нужно попробовать потестить все это на реально срывном самолете …

Да, это можно сделать. Если человек поставил настройки такими, что, например, стоит удержание газа 20% и тангаж градусов в 45, то он сам себе злобный буратино. Придется подумать за него, уменьшив на лету тангаж или поддав газа если скорость ниже критической. Подумаем.

Brandvik

Ну я не совсем согласен. Высота и курс попрежнему остаются директивой N1 Только я предлагаю сделать набор высоты не с заданным углом, а с минимальной заданной воздушной скоростью при команде на газ 100% или ХХ если кому надо. В таком варианте угол тангажа будет автоматически поддерживаться на наивыгоднейшем уровне. Т.е. максимальная скороподъемность при данной тяге движка. А тяга может быть от 0 до 100% в зависимости от ситуации. Получится что если самик способен набирать высоту вертикально с заданной скоростью, то АП его выведет в вертикаль, а если что то сломалось то самик не сорвется.
Хотя я согласен что такой алгоритм потребует немного больше времени для перехода к набору высоты, чем занять тангаж Х и оборты Y
Но мы то знаем что АП шугается многоэтажек 😉