Activity
Я тут новенький, можете дать локацию? Летать пока особо не на чем, только коптер )
Прошлые выхи был в Летово, очень понравилось (за что всем огромная благодарность!), но мне от Люберец далековато. Хотя буду наведываться по возможности.
Проблема похоже ИТшная, покажи скин диспетчера устройств. В COM-портах должен быть Silicon Labs CP210x USB to UART Bridge
ю
Други, бесцельно болтаюсь по МСК. Подскажите, где есть интересные выставки или прочие сборища по на нашей теме?
Один выкладывает фотки платы, но не приводит ни ее производителя, ни ссылку где купить.
На фото достаточно инфы. Покупать не планирую. Кому интересно - спросят.
Второй говорит, все хорошо, но дорого и неактуально, и есть дешевле с теми же характеристиками. Но также ничерта не приводит.
А что хотели узнать? Макс частота, МИПСы и пр. характеристики есть в документации на STM32F4xx. А за рекламу не аффилиированных ресурсов здесь бьють.
Зы. Плата из сообщения выше стоит 600 руб, это дешевле, 20 уе.
Добавьте датчики и сравните. + масса и рукоделие.
Создание собственной системы стабилизации - это имхо в первую очередь программный код.
Совершенно верно.
Для тех, кто хочет попробовать свой программный код (и не хочет проектировать-изготавливать печатные платы, подбирать и паять компоненты), может быть интересная такая платка. Подключив внешние датчики (IMU) - можно сконфигурировать и залить для начала Pixhawk, ну а дальше что-нибудь своё.
Плата неплохая, но сейчас не актуальна, ибо за 20-30уё доступны очень неплохие и самодостаточные с теми же вычислительными мощностями.
А в те далекие времена 😒, когда начиналась эта ветка, вопрос о доступности достойной платформы (вычислитель+датчики) был архиважен.
А зачем с воды взлетали? По уровню?)
понятия не имею, в начале ролика показалось, что парашутёра будут над озером поднимать
Настоящие дядьки должны играть в настоящие игрушки)
Молодцы, подстраховались с высотой башни, иначе ппц при аварии на взлете.
По-моему крутое применение алгоритмов и всей математики помимо коптеров
Первое не понятно зачем, а второе вроде как даже в настройках арду коптера было.
На ракету был план сделать автовозврат, чтоб прилетала в место старта, но что-то все некогда.
Хотя, помню, давно еще пробовал интегрировать линейные ускорения, это ж сразу интеграл “в небо” улетает, их как то надо корректировать тем же ЖПС чтоль (?)
В каждой итерации надо корректировать, кроме того, сам понимаешь, что важно верное направление на север, оно тоже должно корректироваться по акселю.
я конкретно - крен и тангаж имел ввиду
Я тоже это имел ввиду
при превышении некоторого порога лин.ускорений (а у Ильи динамичекое регулирование по факту).
да
тут, как бы, ГНСС не помощник(?)
Как не помощник ? По нему видны итоги перемещения которые можно сравнить с интгралом акселя и выполнить корректировку.
Как реализована компенсация линейных ускорений ? (в общих словах, сама идея, так сказать) или просто коэффициент влияния акселя сильно мал ?
Олег, вообще не правильная формулировка для полной ИНС. Полная ИНС должна учитывать линейные ускорения и экстраполировать свое положение, после чего сравнивать с корректирующей ГНСС и по результатам сравнения вносить коррекцию в ориентацию и местоположение. То есть лин. ускорения это вполне полезное явление.
Но суть вроде понятна, что с помощью UKF можно получить абсолютную, привязанную к глобальным осям ориентацию, для использования коррекции подвесов.
Да, отличный результат!
Кстати классный приемник. У меня летает на 3д пенолете на котором я нормальное висение сделать не могу. А с этим приемником запросто.
Но это не главное, S6R ОЧЕНЬ помогает полетам в ветер.
Тоже купил такой приемыш, но пока не облетал. Интересно использование режима выхода в горизонт, пробовали?
Было бы здорово ещё видео посмотреть))
Запилил новые 2 режима для фана.
Отлично! Центр круга, относительно которого берется направление, фиксируется при включении режима?
Илья, я тебе пару вопросов в скайп написал.
Не соглашусь, ничего не пропустят, дифф часть через ФНЧ проходит, поэтому там не будет скачка, а вполне растянутый горбик, нормально регули отыграют. Это не только демпфер, но и ускоритель для быстрого отработки задания. К тому же в зависимости от того, как резко должен коптер реагировать на изменение задания отвечает этот самый коэффициент, который у меня равен 0,8. Сделать меньше - будет резче, сделать больше - коптер будет вести себя как вы хотите.
Делать-не делать, тут дело вкуса 😃 По мне (ещё раз повторюсь) смысл этого ДИФФ-звена - компенсация (демпфер) колебаний в следящей системе, вызванный фазовым сдвигом из-за задержки в цепи среда-обработка-реакция (угловая скорость-датчик-контроллер-ВМГ-угловая скорость). Быстродействия хватает и без него.
если угловая скорость смещена, то есть ненулевая, при нулевой фактической скорости, то коптер никогда в горизонт не встанет, поэтому он предложил добавить еще интегральное звено в угловой контур.
Для того чтоб два интегральных звена работали последовательно надо иметь отрицательную обратную связь от средней точки (между ними), т.е. по угловой скорости. Но это и так делается, только в интеграторе (прогнозе) ФК.
у меня на ПИД поступает скорость с ДУСа+биас (который калман считает, то есть все время обновляется), поэтому скорость поступает без смещения.
Зачем ещё одно звено?
Но все равно фиг с ним с этим интегралом, главное подавать несмещенные угловые скорости, тогда все нормально будет, а у меня так и есть.
чтобы на резкое изменение задания коптер тоже резко реагировал, поэтому 20 процентов сигнала задания я подмешиваю в дифференциальную составляющую.
На мой взгляд это пустой расход энергии, если регули позволят, а если не позволят, то они это вообще пропустят. ДИФФ-звено это демпфер от раскачки и больше ничего.
Илья, у тебя отсутвует интегральная часть на Angle. Если действует постоянная ошиба на rate, коптер никогда не займет заданного положения по углу.
Алексей, есть у него интеграл, просто он через два коэффициента TLT_ANG_P*RTE_ANG_I.
Но действительно можно добавить еще интегральное звено по углу.
Ничего не надо, будет медленная раскачка, двойной интеграл вносит большую задержку - очень тяжело настраивать. А в данном случае и не нужно.
Код плохо смотриться, исправь с [CODE]
Мне твой вариант больше нравится, но я бы сделал не много по другому.
Дифф составляющую я бы вообще отдельной параллельной веткой сделал от скорости и отвязал от задатчиков по скорости и тем более углу. Тогда вот эта ветка с весом 0.8 уберется. Задача дифф ветки "успокоить переходные процессы регулирования угла.
Кто может просветить по поводу ПИДов.
Не совсем понял, у тебя на схемах где вход от ДУС?
Так это уже целый комплекс - полетник+прошивка.
дык я именно об этом, все готовое, чтоб моделист без опыта мог прикрутить и не изучая ТАУ полететь используя весь базовый функционал. И еще минимум предполетной подготовки, автодиагностика и автокалибровка. Если по каким то причинам не готов - просигналил лампочками и в лог на флешку
Под это толковую прошивку аля наза с джентльменским набором настроек - так я вижу себе оптимальный полетник для “собери сам” на сегодня.
А для совсем “конченных” пользователей за их деньги джедаи уже всё изобрели.
Плюс простота назы в полетниках в том числе стала залогом ее упеха, а гора настроек явно не способствует широкой популярности. Да и время сейчас такое стало - для большинства новичков зачастую проще купить что-то летающее из коробки - выбор сейчас огромен на любой кошелек.
Вот, нужно сделать функционал назы за малые деньги, + управление подвесом. Чтоб исчерпывающая инструкция для выполнения первого полета с базовым функционалом (удержание, возврат домой) занимала менее половины листа А4.
На мой взгляд со стороны более менее продвинутого пользователя все мега удобно.
Для любителя рукоделия ))) Для пользователя нужно просто выбрать тип носителя и 3-4 цифири настроек, не более!
Папарации кстати яркий тому пример, что без толкового мультиплатформенного гуя проект так и не стал оссобо популярным к сожалению…
У опенпилотов гуй прекрасен, у арду весьма гемороен. кого из них больше? 😉
Для чего реально нужен ГУЙ, так это для полета по точкам, и/или настройки автопосадки для самоля.
я нигде в уравнениях не указываю, что на что влияет.
В матрице прогноза и матрице отношений состояние-измерение.
Я в свое время тоже бежал за мечтой и даже заработал чутка (на пропеллеры с моторами ), но если подумать сколько я всего упустил за это время (2-3 года карьеры, адаптация в новой стране, отдых с семьей и т.д.), то оно того и не стоило наверное…
Стоило, Александр, ибо наше хобби неотъемлемая часть нас. Если б мы были другими - нас бы здесь не было )
Могу отдать все исходники Александру Русакову и Сергею Липницкому для продвижения проекта и портирования для F4BY. Особых планов и надежд не строю. Что посоветуете в такой ситуации??
ДУмаю, что надо выкладывать в открытый доступ для всех, тем более что основа - открытый код. Пусть используют в своих проектах. Хотя с целью продвижения F4BY было бы сделать порт.
Если же хотите, что бы на вашей прошивке летали, то тут уже нужен ГУЙ. Наиболее простой путь, реализовать поддержку mavlink протокола и заюзать существующий ГУЙ…
ГУЙ для базового функционала не нужен, нужна простота, доступность, надежность и минимальный базовый функционал.
Открывать проект нужно чем раньше, тем лучше - появятся интересующиеся, тестирующие, делящиеся идеями
Пока энтузиазм есть )))
На мой взгляд, система должна быть проста для пользователя как наза, мультивий со всеми его производными, или вообще как кк2- ну это уже перебор…
Тут дело даже не в фичах , которыми можно со временем обрасти, важна базовая функциональность дружелюбная к пользователю: прикрутил-бросил-полетело )))
Есть у меня одна идея, которая может избавить от внешнего гуя да и много от чего, но пока только размышления и прикидки как это всё уместить в мелком полетнике ,
- в фы4бы это влезет…
F4BY нужна своя прошива, ибо кому нужен арду купят пикс.
то есть взлететь, зависнуть и поднести магнит к компасу? потом дальше висеть, минут 5 нормально?
Да, пойдет. Но ещё интересней взлететь с “кривым” компасом (15-20 гр) и переключиться в удержание.
у меня матлаб2015 не подойдет?
Думаю да, на до только проверить подключение компилятора к матлабу (команда mex -setup)
Вообщем принимаю критику
Илья, хотелось бы посмотреть длительное висение и если возможно с внесенными в компас смещениями.
Хорошая мысль, давайте скооперируемся
Установи Хпплейн 10 и скачай МатЛаб2011 или младше.
Но бывает ловля глитча и все в хлам, в идеале все случаи надо исследовать и по идее лишние взаимосвязи снижают устойчивость.
Есть возможность всё попробовать безопасно: Xplane + Симулинк, могу выложить примитивы. Или даже “проигрывать” алго в железе, а Хплан будет гнать данные.
И это был решающий момент, сразу убил несколько зайцев.
Если добавить ещё один датчик ГНСС и так же прописать его в матмодель, то при достаточном разносе можно вообще от компаса отказаться. Да, когда то на форуме обсуждали использование разнесенных акселей в качестве единственного источника инфы для стаба.))
Также при зависании в одной точке спусти несколько минут коптер начинал гулять, так как ориентация не корректировалась без движения. Теперь коптер четко крутится вокруг своей оси и висит в точке, просто фантастика.
Илья, хотел попросить объяснение как это работает, но вроде сам догадался 😃
Но есть скользкий момент - по идее я добавил еще одну зависимость между перемнными, тем самым снизив устойчивость, если раньше некоторые переменные могли позволить себе быть некорректными и при этом коптер вел себя нормально, то сейчас косяк с одной переменной убьет всю систему.
Если зависимость жесткая, а она такая, то на устойчивость это не повлияет.
чтобы матмодель не вырождалась, нужно поверх наложить маску с контролем граничных условий типа: нельзя чтобы фильтр не доверял одновременно всем абсолютным датчикам, если такое произошло меняем коэффициенты доверия к простому алго ДУС-аксель.
Друзья, поздравляю всех с Наступающим! Всего самого наилучшего! Интересных проектов!
На нижнем видео прикольная моделька, вполне достойная показа. А вот полноразмерные макеты - дизайнерская шиза.
Помогите определится с выбором приемника для квадрокоптера 500. X8R или L9R ?
Однозначно X8R, L9R одностороний без телеметрии, и его дальнобойность коптеру не к чему.
Поспорить-то с чем?
Внимательно перечитайте мою фразу. С тем, что вы в Гондурасе не были.
Так тут вообще двойной смысл был. Если Вы не поняли, то и не надо. Не принципиально.
Я понял то, что вы считаете что ЭТА страна достойна названия “Гондурас” по совокупному набору целевых свойств. В свою очередь я предположил, возможно спорно, что вы не бывали странах более достойных этого названия, но при этом голову свою на кон не ставил. Как то так.
Невозможно всё зарегламентировать и поставить на учёт, лучше планомерно строить (воспитывать) нормальное общество.
Что вам мешает заняться воспитанием общества, хотя бы по поводу порядка в подъезде, например, а не “натягивать сову на глобус” художественными преувеличениями про Гондурас?
Тем не менее, не ТУ страну назвали Гондурасом…
Могу поспорить: вы в Гондурасе ещё не бывали.
Пропогадна того, что…
Как сказал современный классик: " Миром правит не Тайная Ложа, а явная лажа." (с) Пелевин
Но это совсем не означает, что Тайная ложа с этим не борется (от себя).
Ну ныне опять актуальная тема! Други, подскажите, как называются лыжи для самолей и аэросаней в иносранных магазинах?
Интересно, что они там закупают? Скайвокеры и большие крылья?
Походу это вообще не летает, ибо:
- Взрыв наземный, не как у ЗУР.
- Поразить мелкий БЛА из ПЗРК нельзя, потому как ГСН цель не захватит, и радиовзрыватель не сработает.
- Судя по взрывной волне там ВВ несколько десятков кг. Какой скай это поднимет?
Если беспилотник и был, то наземный - багги или танчик.
Пакеманы это пакистаны чтоли?)
pokemon go, пакистаны устаревший юнит в большой RPG
И всетаки мне кажется они так с высокоточным оружием борятся, а не с коптерами игрушками.
С пакемонами они борятся, и с другим сетевыми способами негласной слежки, мониторинга и управления.
когда понадобилось еще записывать буферы для логов, то пришлось разделять весь процесс на 2 части, плодить флаги, проверки
Ну да, маневрирование задачами весьма удобно, но, повторюсь, время не экономит.
Ну допустим есть вектор состояния {q0, q1, q2, q3, Vx, Vy, Vz}, где q0, q1, q2, q3 - кватернион ориентации, Vx, Vy, Vz - это проекции вектора скорости в глобальной СК. Допустим у нас есть датчик скорости, но он измеряет скорость в локальной СК vx, vy, vz. Вот с помощью каких матриц F(которая еще A) и B(при управлении) нам из кватерниона и вектора скорости локальной СК получить вектор скорости в глобальной СК? Нет таких матриц в данном контексте задачи, значит это уже нелинейная зависимость.
Насколько я понял, речь шла о преобразовании скорости в одной СК в скорость в другой СК? А то написано из глобальной в глобальную?
Если преобразование из одной в другую, то это линейное преобразование - умножение поворачивающего кватерниона на кватернион от вектора и на обратный вращающий кватернион (V’ = qvq–1). Все это линейные матричные преобразования.
Код приложил.
оказалось всё прозаично просто, баро тупил и не отпускал scl ( у слейва есть такая привилегия) и все - все хитромудрые алгоритмы коту под хвост!
СКЛ слейв удерживает если хочет захватить управление шиной. Серёг, зачем барику бунтовать на шине?
Давайте, думаю не помешает, мне там только порты переобозначить по идее.
Завтра выложу.
Но теперь коптером займусь только в следующем году.
Что так?
У меня тоже раньше вся обработка в прерываниях была, но дальше определенного предела так двигаться не получается, слишком нерационально процессорное время тратится.
То что масштабируется плохо это да, а насчет времени вряд ли.
Линеаризуются все уравнения связанные с переходом из локальной СК в глобальную (они ж нелинейные или я ошибаюсь?), а также все операции связанные с кватернионами.
Кватернионы - линейная алгебра, всё должно быть линейно, кроме преобразования угловой скорости в ориентацию (там тригонометрия), но за период отчета в переделе макс угловой скорости ДУС синус линеен.
А можно поподробнее? просто выход курсового ПИДа ограничен?
Да, и он весит в 2 раза меньше.
Хард - STM32f407VGT6 - оценочная плата Discovery, вообще в планах сделать порт по F4BY, не зря ж его покупал, но времени не хватает.
Могу вывалить свои исходники низов Ф4БЫ, можешь оттуда надергать или взять как есть.
Система работает примерно так: есть некая задача запроса данных, либо по внешнему прерыванию, либо по таймеру - происходит запрос данных с датчиков. Спустя какое то время происходит прерывание соответсвующего интерфейса (SPI, I2C), в котором выдается семафор. Соответсвующая задача обработки ловит этот семафор и обрабывает данные, выдает семафор для логов или другой обработки.
У меня все обработки в прерываниях.
и UKF (один общий для ориентации и положения)
Сам написал? Что там лианеризируется?
НО если происходит насыщение по ЯВУ, то происходит конкуренция угловых пидов и пида высоты, из-за чего коптер теряет устойчивость.
У меня микшер взвешивающий, т.е. курсовой шим в максимуме вывалит в канал моторв в 2 раза меньше.
Кстати говоря в простом случае если вы просто хотите найти угловую ориентацию из акселя и гиры, вам нужно составить нелинейные уравнения f(x) и h(x) и тут простым линейным калманом не справится, только EKF либо UKF.
Не совсем понятно, где нелинейные уравнения. Все действия происходят в рамках линейной алгебры.
это новые данные…
Чтоб подробно поразбираться надо бы взять какую-то опорную статью, иначе запутаемся в терминах и буквах матриц. Серег, есть годная статья на русском ?
H - это оценка, чего мы ожидаем увидеть от датчика
Вот, это матрица связи состояния и датчика. Илья, дай ссылку на опорный материал. Только так можно предметно разговаривать.
там плюс к мат модели ещё матрица управления которую обычно игнорируют…
Нее… там другая… Н вроде