Кому лимон?

Delimiter

думаю FPV , можно отсечь предварительным конкурсом прохождением черного коридора( где камера будет бесполезна) в виде буквы W… и только затем допускать к гонке 8)

ser88749741

Кто-нибудь будет реально участвовать в этой затее?

AIRDAN
Delimiter:

где камера будет бесполезна

А если я завляю, что у меня контроль идёт чисто по визуальным каналам?

mahowik
Sir_Alex:

Согласен, тут задача в закупке дорогих безделушек типа LIDARов и поиска готовых алгоритмов, типа OpenCV, SLAM -а сама работа будет в том что бы увязать готовые кирпичики. От если бы было условие, что дрон должен сам выполнить миссию, без помощи со стороны (компьютер, IR камеры и.д.р.) - было бы куда сложнее реализовать проект.

Не согласен! тут многие мне кажется забыли, что у нас не гусеничная платформа, а летающиы дрон… 😉 Те кто сделал хотябы один мультиротор и пытался написать/улучшить один из режимов (кажущихся матерым робо-билдерам элементарным, но не имевщим опыта в разработке/постройке мултироторов) типа вертикалное/горизонтальное удержание позиции, меня поймут. И странно Алексей, от тебя такое слышать! 😉 Как по мне задача мега сложная, будь то удаленный мозг у дрона либо стационарный на борту…

Мой прогноз: к финишу придут 1-2 участника с вероятностью 20% максимум, так что речи даже не может быть о скоростных пролетах и выбора победителя по лучшему времени 😃 мое ИМХО конечно, как начинающего мультироторщика-робототехника 😃

ndn
Delimiter:

думаю FPV , можно отсечь предварительным конкурсом прохождением черного коридора( где камера будет бесполезна) в виде буквы W… и только затем допускать к гонке 8)

Парочка ИК светодиодов + камера 0,001 лк и паранойя ФПВ продолжается. 😃

Маныч
ndn:

думаю FPV , можно отсечь предварительным конкурсом прохождением черного коридора( где камера будет бесполезна) в виде буквы W… и только затем допускать к гонке 8)

Как будто дрон не сможет нарисовать букву автоматически, а потом передать управление ФПВшнику.

Sir_Alex
mahowik:

И странно Алексей, от тебя такое слышать! Как по мне задача мега сложная, будь то удаленный мозг у дрона либо стационарный на борту…

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

Но в данном случае, программить сам FC не надо, достаточно взять готовый контроллер, который в состоянии выполнять AltHold или на крайняк просто стабилизацию. Команды ему может отдавать второй контроллер (через PPM_SUM) который и будет заниматься просчетом маршрута и например анализом видео с камеры. А если будет стоять комп на земле, так тут дрон вообще простейший получается - ничего специфичного на нем не надо тягать (разве что LIDAR) - видео камеру + линк на землю.

mahowik
Sir_Alex:

Но в данном случае, программить сам FC не надо, достаточно взять готовый контроллер, который в состоянии выполнять AltHold или на крайняк просто стабилизацию.

от потому я за ардрон, как писал выше… 😃 у них вроде стабилизация вертикальная/горизонтальная на уровне… с ГПС-ом ток не ясно…

FSFox

Я ждал, что тема про этот конкурс появится тут.
Тоже интересно было бы попробовать, но сам я финансово не потяну точно. Вот тут как-раз предложения про разделение на любителей и профи актуально, так как с профи конкурировать не возможно.
И опять же интересно было бы сделать все на наиболее простом железе без больших затрат. Приз то только один и шанс его получить минимальный (для меня точно). Из этого сразу вытекает еще одно предложение организаторам - приз давать за несколько мест (например так 1-500к.р., 2-300к.р.,3-200к.р.).
А еще в правилах есть - организатор не несет ответственности за неправильное использование кнопки останова (т.е. если судья случайно, или как еще, нажал на выключение моторов). Если аппарат дорогой и упадет даже с 1.5м, то велика вероятность повреждения оборудования. А после повреждения врятле можно будет победить, если конечно нет запасного аппарата.

Из вариантов реализации (то что сразу в голову пришло):

  • как написал Sir Alex - сделать отдельный блок, который получает данные с сонаров и выдает управляющие команды в FC (причем самый простой);
  • удержание высоты тоже по сонару;
  • лететь по тому же сонару вдоль стенки на небольшом расстоянии (+ограничители вдоль лучей, т.е. если коптер ткнется в стену проп не пострадает);
  • ну и самое сложное определение места посадки - пока только вариант с андройд телефоном и openCV или что-то вроде RaspberryPi.

mahowik - а я вот думаю, что пройти конкурс может ~60%. Кстати предложение с ар.дроном тоже нормальное, но сонары я бы ему добавил все-равно.

Тут коллега кинул идею организации такого конкурса в РБ, конечно не самим, а например, подкинув идею в тот же ПВТ в Минске. У нас же как раз свой беспилотник сделали, каково будет заткнуть их за пояс 😃 с самодельной автономно летающей моделью, которой не надо целый “грузовик” для управления.

Nesenin

Не пугайте людей раньше времени. Дорогу осилит идущий. Смысл этих соревнований в том чтоб заставить людей начать заниматься этими вещами. А то так и будут 1,2 энтузиаста на всю Россию, способные сделать что-то достойное внимания. Вот вам повод, собрать команду, работать, получать знания, опыт и просвещать остальных.

Вот известный ролик квадрокоптера с изменяемым шагом винта

аппаратно такая схема превосходит и в скорости подъема и спуска (там же вывернуть можно винты в обратную сторону) и маневрировании.
вот двигатели\винты www.modelmotors.cz/index.php?page=61&product=2212&…

Ну и в чем проблема удерживать высоту в коробке без ветра (стенки кругом) с высотой потолка 3 м?

Вот вам
направили в землю и считайте свою высоту над землей с точностью <1см. у них как рас дальность 3-5м.
В прошивке добавите условие на изменение скорости вращения двигателей(и\или наклона винтов) согласно измеренному значению высоты.

Мозг для квадрика можете взять какой-нибудь на AVR по типу MultiWII и прошивку его можно расковырять. Всеж открыто всеж в Arduino пишется. По Uart-USB настроите общение с ПО на вашем бортовом ПК (nvidia tegra какой-нибудь). Будете слать данные с IMU и данные от приемника (команды типо старт\стоп\экстренное отключение). С ПК же команды высокоуровневые. Не хватит мощности встроенного контроллера можете сделать прослойку на другом (arduino nano\pro mini), который будет генерить обычные сигналы как на приемнике РУ из высокоуровневых команд.

И это я описываю максимальный вариант. Есть куча способов выполнить задание меньшими средствами\силами (но и шансы на победу упадут).
По заданию мы можем мозг вынести с борта на наземный компьютер.

Предлагаю бюджетный вариант:

  1. квадрокоптер дешевый, способный таскать нужный груз (см ниже) и нормально висеть на месте (достаточно IMU 6dof или меньше)
  2. arduino nano обвещиваем ультрозвуковыми дальномерами (они дешевые) подключаем к USb хабу который подключается к
    3)роутер TL-MR3020 (оч. маленький ниче не весет) с прошивкой OpenWRT с настроенной трансляцией показаний дальномеров и изображения с
    4)вебкамера дешевая
  3. ваш любимый ПК (он у вас есть ничего не стоит, розетки вам дадут) принимает данные с дальномеров и камеры и отправляет команды на движение обратно по роутеру в Arduino nano (контроллер квадракоптера от нее читает сигналы)

ВСЁ! Это штука будет летать медленно но запросто обойдет все препятствия по правой стороне до места посадки и по левой стороне обратно.
Сложного там будет только программировать нахождение места посадки. Уж за год справитесь.

mahowik
FSFox:

а я вот думаю, что пройти конкурс может ~60%

поживем увидим 😉

FSFox:

Кстати предложение с ар.дроном тоже нормальное, но сонары я бы ему добавил все-равно.

я и об этом писал

Nesenin:

Ну и в чем проблема удерживать высоту в коробке без ветра (стенки кругом) с высотой потолка 3 м?

Вот вам
направили в землю и считайте свою высоту над землей с точностью <1см. у них как рас дальность 3-5м.
В прошивке добавите условие на изменение скорости вращения двигателей(и\или наклона винтов) согласно измеренному значению высоты.

на словах очень все просто… вам хоть знаком термин ПИД регулятор? и в курсе что для поддержания хорошей стабилизации нужен цикл от 200гц и выше? Еще раз - это не машинка на колесиках. Ну да ладно, попробуйте, сами все поймете… Из своей практики, удержание высоты самая сложная атомарная фунция полетных контроллеров…

Nesenin:

Уж за год справитесь.

ну раз уж вы все заархитектили и 100% ясно, просто и дешево, тогда зачем напутствия остальным? 😃 Пишите код, уносите приз! 😃

SergDoc
mahowik:

ну раз уж вы все заархитектили и 100% ясно, просто и дешево, тогда зачем напутствия остальным? Пишите код, уносите приз!

ГЫ-гы интересное кино намечается 😃

Nesenin
mahowik:

на словах очень все просто… вам хоть знаком термин ПИД регулятор? и в курсе что для поддержания хорошей стабилизации нужен цикл от 200гц и выше? Еще раз - это не машинка на колесиках. Ну да ладно, попробуйте, сами все поймете… Из своей практики, удержание высоты самая сложная атомарная фунция полетных контроллеров…

ну раз уж вы все заархитектили и 100% ясно, просто и дешево, тогда зачем напутствия остальным? 😃 Пишите код, уносите приз! 😃

представьте себе только, я могу контролировать высоту с достаточной для выполнения задания точностью, опираясь на свое зрение (не более 60fps) и задержки нервы\мышцы\стики\потенциометры …\изменение подъемной силы. чудеса!

давайте без обид. если вас лично задевает мой “оптимистичный настрой” в сообщениях по поводу решения этого сложного задания, я по секрету, расскажу что знаком на личном опыте с решением в несколько лет кажущихся простыми задачи. Но рас и вы не новичок в деле разработчика, то должны знать, что нужно делать что бы привлечь интерес, деньги, ресурсы и пр. Я вот ищу желающих разделить бюджет с расчетом что деньги 100% вылетят в трубу. И все же я считаю будет не оч. хорошо если все начнут ныть и забьют на этот конкурс.

mahowik
Nesenin:

не более 60fps

удали себе мозжечек и поставь ардуину и 60 будет мало 😃

Nesenin:

давайте без обид. если вас лично задевает мой “оптимистичный настрой” в сообщениях по поводу решения этого сложного задания, я по секрету, расскажу что знаком на личном опыте с решением в несколько лет кажущихся простыми задачи. Но рас и вы не новичок в деле разработчика, то должны знать, что нужно делать что бы привлечь интерес, деньги, ресурсы и пр. Я вот ищу желающих разделить бюджет с расчетом что деньги 100% вылетят в трубу. И все же я считаю будет не оч. хорошо если все начнут ныть и забьют на этот конкурс.

Ну вопервых, я не пытался никого отговаривать, а говорил и говорю про реальные проблемы, с которыми можно столкнуться. И это уж точно не нытье, как ты тут выразился. И да, теоретиков-пустомелоВ в саД! Сколько уж тут было таких, с темами “коптер из китайского телефона и т.д.”, а на деле zero…

И все, флуд закончили, далее говорим по теме!

VitaliyRU
Nesenin:

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

Уж точно не пустое бла-бла-бла. Это тока деуки любят, да и то не все 😃

Nesenin
mahowik:

удали себе мозжечек и поставь ардуину и 60 будет мало 😃

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

Обычный контроллер квадракоптера “кушает” PWM команды, что приемлемо для управления с пульта человеком. Работает на мегагерцах с прерываниями и минимальными задержками измеряемыми мкс.
ПК у нас имеет шины общения (возьмем USВ) с посылкой байт. ОС не real time. Возможны всякие задержки в работе с портом из нашего ПО (измеряется уже в мс).
Возникает вопрос, а хватит ли нам такой скорости взаимодействия (допустим запись конкртных значений PWM)?
Посему хочется сделать некий промежуточный слой, который бы принимал команду вида “движение на 5 метров под таким то углом в плоскости oxy (c фиксацией z)” и выдавал наш любимый PWM.
Есть мысли на этот счет?

Dav

Я вот читаю и жду когда вам надоест обсуждать FPV и начнеться серьезое обсуждение как решить задачу. Как верно подметил кто то - конкурс то затеян для того что бы побольше людей напрягло мозг и начало думать в правильную сторону.

А не только vis.аsta, с которым я кстати знаком 😃, и на 100% уверен что Виктор при желании сделает коптер, который задание выполнит. Весь вопрос в том, а нужно ли это ему и ему подобным? Он и так крут, и это все знают. И при необходимости он заработает за меньшее время больше днег просто продавая свои котеры с его волшебными автопилотами.

Но я также уверен, что любой хороший разработчик с базовыми знаниями схемотехники, наличием свободных вечеров и ночей, а также 2-3 тыс долларов и желанием также стать крутым может сделать дрон, который выполнит наше задание.

Для затравки. Мы начали двигаться тем путем, как написал Nesenin.

3 месяца назад мы НИЧЕГО не знали про дроностроение. Я был самый опытный в команде - собрал и поднял в воздух TREX450. Правда коллектив профессиональных программистов.

Мы купили с местной барахолки 6 роторный микрооптер (единственное что было доступно сразу). Прикрутили к нему ультразвуковой дальномер (как раз тот, что на фотке выше) и ардуину.

В итоге через месяц-полтора получили автоматический взлет-посадку и стабилизацию на высоте полуметра.

Вот запись первого успешного полета -

www.youtube.com/watch?v=ll_P2LHr5BE&feature=player…

Так как полет в помещении, то по горизонтали стабилизировали вручную (я).

Код кстати писал свежеиспеченный выпускник МАИ.

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

Реализация пока не блестящая, не отлажен PID-контроллер и по умному нужно использовать еще и фильтр кальмана, но для конкурсной задачи даже такое уже годиться.

Nesenin:

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

У нас первая реализация было совсем простой - ардуино практически ничего не делал, принимал показания с ультразвукового датчика, отсылал их черех XBee на замлю, принимал с земли уровень газа, и через UART-интерфейс flight controller’а микрокоптера говорил выше-ниже.

Мы обнаружили, что это схема не рабочая из-за больших задержек по контуру управления. Всю обработку данных, которая связана с управлением полетом (а управление высотой к этому естественно относиться 😃 нужно делать на борту.

Код управления был перенесен с “земли” на борт (на ардуину). Тогда все наконец то заработало. С земли только команды “взлететь”, “сесть”, высота, которую удерживать + загружаются на борт настройки pid-контроллера и фильтра.

mahowik
Nesenin:

Есть мысли на этот счет?

для управления вполне достаточно подавать команды через обычный последовательный порт, т.е. не надо генерить PWM в качестве управляющей команды симулируя пулт… ясное дело, что полетный контроллер должен иметь режим управления через UART в этом случае… напрмер в mwii такой режим был:

/******************* RC signal from the serial port via Multiwii Serial Protocol *********/
      //#define RCSERIAL
Dav
mahowik:

для управления вполне достаточно подавать команды через обычный последовательный порт, т.е. не надо генерить PWM в качестве управляющей команды симулируя пулт… ясное дело, что полетный контроллер должен иметь режим управления через UART в этом случае… напрмер в mwii такой режим был:

точно

mahowik
Dav:

Код управления был перенесен с “земли” на борт (на ардуину). Тогда все наконец то заработало. С земли только команды “взлететь”, “сесть”, высота, которую удерживать + загружаются на борт настройки pid-контроллера и фильтра.

все правильно, для режимов стабилизации процессинг данных с сенсоров должен крутится на борту, т.к. существенное увеличение задержки (сдвиг фаз) между снятием raw данных с сенсоров и формированием управляющего воздействия (на моторы) приведет к невозможности стабилизации пид контроллера (осцилляциям и перерегулированию), либо уменьшения его коэф. до уровня при котором стабилизация не возможна вообще…

Dav

Нас за неделю затопили вопросами (тут, на хабре, по почте), в основном дублируются. Наша недоработка, все это при наличии опыта организации таких конкурсов следовало бы продумать заранее и внести в условия конкурса 😭

Берем тайм-аут до понедельника, мы их систематизируем, и ответы опубликуем на сайте на странице ЧАВО. Я свистну, как появиться.

Для подогрева публики - нам прислали уже 11 персональных и 5 командных заявок на участие.