MultiWii
И еще хочу увидеть коптер с навигацией и без компаса, ну просто интересно посмотреть куда и как он полетит.
В точку, указанную пользователем.
Поразительно, но зная координаты компас не нужен!
Как говорит уважаемый Артём Нестеров - читайте мануалы в гугле!
Ну ок, коптер стоит на точке (0,0), лететь надо в (3,4) - как он узнает куда повернуть нос? Полететь в любую строну на 5км/ч и получить направление, а потом постоянно его корректировать.
Другой пример - коптер висит на точке, его начинает сдувать ветром на скорости 1 км/ч, а то и вращать ветром, внезапно для коррекции надо повернутся например на сервер… где сервер?
Ваш уровень профессионализма
Смешно! Чем обидеть? Вы ленитесь читать даже то что написано на первых страницах профильных сайтов. Задаете вопросы, которые описаны 100 раз. И само по себе построение вопросов говорит о полнейшем не понимании сути. И самое прискорбное, вы пытаетесь отстаивать свою, мягко говоря, “грамотную” точку зрения.
Ну ок, коптер стоит на точке (0,0), лететь надо в (3,4) - как он узнает куда повернуть нос?
Тут да, Вы правы. К точке он полетит не носом. Коптеру-то, собственно, пофиг, каким местом лететь. Это нам нужен “нос” для управления им.
Полететь в любую строну на 5км/ч и получить направление, а потом постоянно его корректировать.
Это нам, людям, нужно сначала получить направление. А коптер-же “видит” точку. Вот представьте, стоите Вы в поле и видите дерево, к которому Вам нужно “подлететь”. Вам нужен компас, чтобы направиться к дереву, нужно знать направление стороны света к нему?
коптер висит на точке, его начинает сдувать ветром на скорости 1 км/ч
Ии? Соответственно, меняется координата. Коптер старается вернуться к координате удержания (читай выше - к дереву). И зачем ему компас для этого? Скажу более. Если его удует хоть на километр, но нос при этом не повернётся - компас тут ничем не поможет. Только GPS.
а то и вращать ветром
А это другой разговор… Да, вращаться он может начать, но точки висения при этом не изменит.
Смешно! Чем обидеть? Вы ленитесь читать даже то что написано на первых страницах профильных сайтов. Задаете вопросы, которые описаны 100 раз. И само по себе построение вопросов говорит о полнейшем не понимании сути. И самое прискорбное, вы пытаетесь отстаивать свою, мягко говоря, “грамотную” точку зрения.
А давайте договоримся, что Вы в следующий раз просто будете игнорировать мои “не правильные и 100 раз обсуждённые” вопросы. Ок?
Коптеру-то, собственно, пофиг, каким местом лететь.
Нос может быть виртуальным, не суть, коптеру в любом случае надо понять какие моторы и как крутить, чтобы лететь в нужную сторону, иначе он должен со скоростью 3…5км/ч постоянно метаться, как слепой котенок, пытаясь определить направление. Зная 2 точки, вы не знаете как коптер повернут в начальной точке, т.е. не знаете как совпадает “север” коптера с реальным севером.
стоите Вы в поле и видите дерево
Это и есть направление, которое без компаса (или движения хорошего) узнать не получится (ну если совсем придираться, можно по гироскопу узнать, но в любом случае надо как то задать “сервер”, т.е. ноль, от которого считать направление).
Да, вращаться он может начать, но точки висения при этом не изменит.
точка то там же останется, коптер не узнает какими моторами прорулить надо, чтобы вернутся на неё
В общем если бы всё было так здорово как описываете, наверное бы никто и не ставил компас, и не калибровал бы его, и не думал о наводках и прочих “унитазных” прелестях.
Нос может быть виртуальным, не суть, коптеру в любом случае надо понять какие моторы и как крутить, чтобы лететь в нужную сторону, иначе он должен со скоростью 3…5км/ч постоянно метаться, как слепой котенок, пытаясь определить направление. Зная 2 точки, вы не знаете как коптер повернут в начальной точке, т.е. не знаете как совпадает “север” коптера с реальным севером.
Вот оно. Теперь ясно мне все, действительно я не когда не задумывался что квадрику нужно знать какие моторы начать крутить что-бы двигаться к нужному месту, фактически он изначально не понимает что предположим точка которая (в Юг направлении) - что-бы к ней полететь ему нужно ослабить газ на правой стороне и увеличить на левой к примеру(нос квадрика на Восток), вообщем он не знает какими моторами он повернут к цели…
А узнавая по компасу свое положение и вычисляя направление координат, ему становиться ясно куда лететь… Теперь я до конца понял откуда появляется эффект унитаза!
А давайте договоримся, что Вы в следующий раз просто будете игнорировать мои “не правильные и 100 раз обсуждённые” вопросы. Ок?
Простите, я не хочу с вами договариваться… если вы или кто-то другой пишите пост претендующий на БРЕД, я в ответ напишу СВОЕ мнение, то что сам думаю, а не “по договоренности с вами” промолчу.
Это технический форум, а не мнения о вкусах - нравится/не нравится. Тема про коптеры опирается на точные науки. И если Вы чего то не знаете, что вполне нормально, то так же нормально отправить вас или любого другого учить “мат часть”. Ну не писать же вам прямо на форуме лекции по вашим вопросам.
А узнавая по компасу свое положение и вычисляя направление координат, ему становиться ясно куда лететь…
Да, все правильно. В принципе возможен вариант без компаса… но для этого должно быть минимум два ЖПС приемника разнесенных в пространстве, на расстоянии в разы большем чем погрешность самого приемника.
Теперь я до конца понял откуда появляется эффект унитаза!
о!! в споре рождается истина!!!
о!! в споре рождается истина!!!
Ну да, я просто сначала не до конца понял суть компаса, а когда сказали про моторы сразу понял что действительно компас нужен в квадрике. Это я знаю где у него перед и с какой стороны от него Юг, Север и т д, а он сам не в курсе где и каким к чему он боком…
Тем временем не переделав раму, решил попробовать(убедится действительно-ли это играет такую роль по поводу наводок) распустить провода, пропустил с другой стороны аккума на 3 см ниже, запустил и аллилуйя, действительно ровно висит не унитазит и вообще все супер стало =)
коптеру в любом случае надо понять какие моторы и как крутить, чтобы лететь в нужную сторону
Да, согласен. Признаю - был не прав.
Вчера сам уже до этого домыслил.
Значит компас нужен коптеру, по сути, для самоориентации, а не для выбора направления.
Всё-же, что-то меня в этой теории смущает, но в целом - верно.
Простите, я не хочу с вами договариваться… если вы или кто-то другой пишите пост претендующий на БРЕД, я в ответ напишу СВОЕ мнение, то что сам думаю, а не “по договоренности с вами” промолчу.
Ну значит игнорировать буду я со своей стороны, делов-то… Благо толку от Вас всё равно никакого, так что я ничего не потеряю.
Вы можете сделать простой эксперимент. Отлетите метров ну на 100 и включите файлсейф .Сделайте это с компасом и без.
Коптер вернётся в точку старта по любому.
Вы можете сделать простой эксперимент. Отлетите метров ну на 100 и включите файлсейф .Сделайте это с компасом и без.
Коптер вернётся в точку старта по любому.
В МВ, в ЖПС режимах, компас активируется автоматически, не зависимо от вашего желания. В случае возврата домой это влияет только на то, как он будет возвращаться, носом или задом к точке дома. По этому для правильного экперимента, компас нужно отключить в прошивке.
Ну значит игнорировать буду я со своей стороны, делов-то… Благо толку от Вас всё равно никакого, так что я ничего не потеряю.
детский сад… какой-то…
Кстати, чтобы коптер при возврате домой, сначала поднялся на заданную высоту а потом только начал направляться к дому, что отвечает?
сначала поднялся на заданную высоту
Наверное барометр
немного не поняли, дефайн отвечающий за то чтобы сначала коптер поднялся на выставленную высоту, а потом только летел домой, а не сразу в полете набирал высоту
дефайн отвечающий за то чтобы сначала коптер поднялся на выставленную высоту, а потом только летел домой, а не сразу в полете набирал высоту
А прошивка какая?
маховий
Нос может быть виртуальным, не суть, коптеру в любом случае надо понять какие моторы и как крутить, чтобы лететь в нужную сторону
Вы открыли мне глаза. Не дочитав до вашего поста я, впринципе имел такое же мнение как и Saradon.
Получается, что режим MAG в MultiWii это всего лишь режим удержания направления и режим доворота носа на точку следования (для RTH и MISSION), а не режим вкл/выкл компаса.
Перерыл 100 страниц темы, но так и не понял как подключать подсветку, может кто объяснить возможно-ли это вообще? ПК MW SE 2.5.
Перерыл 100 страниц темы, но так и не понял как подключать подсветку, может кто объяснить возможно-ли это вообще? ПК MW SE 2.5.
Про какую подсветку идёт речь? Про БАНО светодиоды?
Вот как это делал я:
-
Купил сверхярких светодиодов. Разместил на концах лучей и подключил через транзистор-ключ к соответствующему пину на плате. По умолчанию это пин D12.
-
Перешёл в раздел LED FLASHER в config.h файле проекта MultiWii. Там сделал следующее:
#define LED_FLASHER
#define LED_FLASHER_DDR DDRB
#define LED_FLASHER_PORT PORTB
#define LED_FLASHER_BIT PORTB4
//#define LED_FLASHER_INVERT
#define LED_FLASHER_SEQUENCE 0b00000000
//#define LED_FLASHER_SEQUENCE_ARMED 0b00000101
#define LED_FLASHER_SEQUENCE_MAX 0b11111111
#define LED_FLASHER_SEQUENCE_LOW 0b00000101
LED_FLASHER - для включения данного кода
LED_FLASHER_SEQUENCE_ARMED - это последовательность мигания для режима ARMED.
LED_FLASHER_SEQUENCE_MAX - последовательность мигания, когда активирован режим LEDMAX.
LED_FLASHER_SEQUENCE_LOW - последовательность мигания, когда активирован режим LEDLOW.
LED_FLASHER_SEQUENCE - последовательность мигания, когда ни один из вышеперечисленных режимов не активирован.
Режимы LEDMAX и LEDLOW появятся в гуи при сборке MultiWii с раскоментированным LED_FLASHER’ом.
Последовательность мигания - это байт, каждый бит которого представляет временной отрезок в 0.125 сек. То есть при последовательности 0b00000101 светодиоды будут делать “двойное проблёскивание”. При 0b11111111 будут постоянно гореть. При 0b11110000 будут зажигаться, гореть полсекунды, гаснуть, ждать полсекунды, зажигаться и т. д.
Если нужно поменять пин, на который вы хотите повестить светодиоды, то нужно отредактировать дефайны: LED_FLASHER_DDR, LED_FLASHER_PORT и LED_FLASHER_BIT.
Для этого, выбираем желаемый пин, например А2.
Если у вас плата на проце Atmega 328, то смотрим сюда: www.arduino.cc/en/Hacking/PinMapping
Если у вас плата на Atmega 2560, то сюда: www.arduino.cc/en/Hacking/PinMapping2560
Ищем там, в нашем случае, analog input 2 и смотрим какое название у этого пина.
Для Atmega328 это будет PC2. Следовательно регистр DDR для этого пина будет DDRC, регистр PORT будет PORTC, и бит этого пина PORTC2.
Делаем в конфиге:
#define LED_FLASHER_DDR DDRC
#define LED_FLASHER_PORT PORTC
#define LED_FLASHER_BIT PORTC2
Всё, идём мигать на улицу 😃
P.S.: Помимо заданных последовательностей эти светодиоды будут ещё мигать в качестве обратной связи на разные события (калибровка завершена и т. п.), как и баззер.
Вот как это делал я:
Круто! Надо будет повторить!