MultiWii

Dimm168pin
gensek:

Компас откалибровал, кручу квадрик в руках - в GUI стрелка ведет себя как надо, но если стартануть движки то на неподвижном коптере в GUI стрелка прилично дергается ( градусов по 30 в каждую сторону), естественно в полете квадрик дергается по курсу как паралитик.
Под платой с датчиками и компасом находятся регуляторы и силовые провода, это может быть причиной?

встречал множество решений где gps и компас выносят на вертикальных стойках “подальше” от силовой электроники и железяк на расстояние около 20-30см, сам подумываю так сделать когда приедет “простая” версия кролика, сделать отдельную плату для компаса с максимально удаленными элементами “обвеса” отнести ее на всем пластиковом подальше. т.е получится только 4 провода к плате.

gensek

20-30см это круто, тем более у меня все на одной плате MultiWii CRIUS SE.

Dimm168pin
gensek:

20-30см это круто, тем более у меня все на одной плате MultiWii CRIUS SE.

допустим плату можно не расковыривать, просто посадить второй компас по другому адресу на внешней плате, а тот что на crius-е уже работать не будет.

gensek

На будущее, есть наработки по расположению регуляторов и силовых цепей на коптере с платой (компас на борту)
расположенной на своем классическом месте, так чтоб без наводок?

Dimm168pin
gensek:

На будущее, есть наработки по расположению регуляторов и силовых цепей на коптере с платой (компас на борту)
расположенной на своем классическом месте, так чтоб без наводок?

по моему самый яркий пример это классическая немецкая вертушка, где регули и питание распаяны вокруг платы , как-то так www.rcexplorer.se/projects/…/page63-octo25.jpg , если еще сами регули растянуть по лучам, а вот питалово так как на картинке.

=alex#

В кодах прошивки ардуины устанавливается скорость порта 115200, такая же скорость в исходных текстах Multiwiiconf.java. Но моя ардуина не хочет работать с компьютером на этой скорости, а только на 9600 (проверял на тестовых примерах), значит получается, что скорость надо уменьшить. PDE файл я могу поправить и загрузить так, как надо, а как быть с Multiwiiconf? Каким образом мне получить Multiwiiconf.exe файл с требуемыми параметрами?

SovGVD
=alex#:

Каким образом мне получить Multiwiiconf.exe файл с требуемыми параметрами?

скачать processing, добавит туда библиотеку четотамP5 и пересобрать - сначала геморно кажется, а потом норм =) как орешки

upd: пересобрал под 9600 скорость nekaka.com/d/SffSSxAsxW - но не гарантирую что будет всё ок работать (и оно без opengl, поэтому там не будет крутящегося коптера)

ну и раз пошла такая пьянка =)
nekaka.com/d/2Vg65j5EKh - под 57600 скорость для APC220 модема, но у меня так и не заработало - тестил через консоль, засылаю M - ничего не приходит, засылаю O - приходят данные для OSD, подозреваю что у 220 переполнение буфера или бинарник не нравится

=alex#

а если я подключил к ардуине только WMP (приемник не подключен), увижу ли я в multiwiiconf работу гироскопов?

запустил MultiWiiConf_1_9.exe (9600), выбрал нужный com, нажал кнопку start - побежала горизонтальная полоса, т.е. данные, как будто идут, только почему 0? wmp неправильный? или что то надо еще включить там?

SovGVD
=alex#:

увижу ли я в multiwiiconf работу гироскопов?

да, если все верно выбрано в прошивке

=alex#:

нажал кнопку start - побежала горизонтальная полоса

туда сюда платку надо покрутить, если есть реакция на графике, то всё ок, если нет - то ковырять прошивку/подключени/датчик и т.д.

upd: еще можно в консоле/терминале arduino пихнуть букуву M или O - если чето будет начинающееся и заканчивающееся на M или O - значит прошивка работает
аналогично можно в GUI нажать start, потом read, если данные есть (не нули в полях), то аналогично - прошивка работает

=alex#
SovGVD:

еще можно в консоле/терминале arduino пихнуть букуву M или O - если чето будет начинающееся и заканчивающееся на M или O - значит прошивка работает
аналогично можно в GUI нажать start, потом read, если данные есть (не нули в полях), то аналогично - прошивка работает

все это работает (спасибо за MultiWiiConf), вот только данные от датчиков, те, что на графике нулевые идут. А как мне определить, какой тип датчиков выбирать? У меня подключена платка из WMP четырьмя проводками. В текстах прошивки ардуины MultiWii_1_9_a1 много разных типов гироскопов, что выбрать? и остальные датчики, которых у меня нет - дефайны закоментировать?

Dimm168pin
=alex#:

все это работает (спасибо за MultiWiiConf), вот только данные от датчиков, те, что на графике нулевые идут. А как мне определить, какой тип датчиков выбирать? У меня подключена платка из WMP четырьмя проводками. В текстах прошивки ардуины MultiWii_1_9_a1 много разных типов гироскопов, что выбрать? и остальные датчики, которых у меня нет - дефайны закоментировать?

itg3200\3205

toleg
Dimm168pin:

itg3200\3205

Неправда ваша

Если подключен только WMP ничего выбирать не нужно он выбран по умолчанию

SovGVD
Dimm168pin:

itg3200\3205

это если пиленый wmp с itg3205 - что в разы лучше чем просто wmp

Dimm168pin
toleg:

Неправда ваша

Если подключен только WMP ничего выбирать не нужно он выбран по умолчанию

тогда произошло чюдо, я летал на непиленом wmp с выбраным itg3200.
правда дорожки были перерезаны до чипа wmpшного.

SovGVD
Dimm168pin:

я летал на непиленом wmp с выбраным itg3200.

это как раз таки и есть пиленый

Dimm168pin:

дорожки были перерезаны до чипа wmp

проводки то идут не к wmp, а к itg3205

alexeykozin

у меня есть платка ardupilot imu v2 flat

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

SovGVD
Covax:

Глеб, а можешь убрать из прошивки мультивия микс моторов на Гексу, чтобы один мотор на ней действительно сделать поворачивающимся, дай мастеркласс в топике мультивия, а?

чисто теоретически в Output.pde
для варианта квартирка с 2мя поворачивающимися моторами

#elif defined(BI)
  #define NUMBER_MOTOR 4 // добавим моторчиков
  #ifdef BI // делаем из BI квадрик с вращающимися моторами
    motor[0] = PIDMIX(-1,+1, 0); //REAR_R - убираем yaw отсюда
    motor[1] = PIDMIX(-1,-1,+1); //FRONT_R
    motor[2] = PIDMIX(+1,+1,0); //REAR_L - тоже yaw убираем
    motor[3] = PIDMIX(+1,-1,-1); //FRONT_L
    servo[0]  = constrain(1500 + YAW_DIRECTION * (axisPID[YAW]), 1020, 2000); //LEFT
    servo[1]  = constrain(1500 + YAW_DIRECTION * ( - axisPID[YAW]), 1020, 2000); //RIGHT - вот хз тут минус или не тут, смотря как сервы стоят
  #endif

аналогично для любой другой рамы

  1. копируем миксы для рамы и на моторах с вращением убираем yaw (нолик в PID (x,x,0)), возможно на всех это надо делать, как у трикоптера… да даже скорее всего надо убирать, так как вращаемся уже совсем по другому
  2. сервы берем от бикоптера
  3. в дефайнах количества моторов ставим сколько у нас моторов (4 на кдварик, 6 на гексу и т.д.)
  4. #if NUMBER_MOTOR > 3 - вот это тоже убрать надо попробовать =)

ЗЫ по мотивам вот этой рамы

www.youtube.com/watch?v=AWNvvCwMbrk

=alex#

спасибо за советы, удалось оживить, но похоже не судьба. Картинки вроде красивые в wiiConf получаются, а на реальном трикоптере совсем плохо. С одной стороны сильно хвостовой сервой колбасит, а двигателями (крен/тангаж) как-то невнятно. При этом реакция ручек (крен/тангаж) какой-то совсем медленный, чуть ли не с секундной задержкой, так и должно быть? (версия 1.9). И еще почему-то в любой момент wmp плата может перестать выдавать сигналы, т.е. гироскопы отключаются совсем - почему? плохая плата? В общем по сравнению с КК 5.5 как то совсем плохо.

Dimm168pin
SovGVD:

это как раз таки и есть пиленый

проводки то идут не к wmp, а к itg3205

ну тогда правда ваша,) был не прав

SovGVD

в продолжении темы поворота сервами

www.youtube.com/watch?v=EM4bpi4SBkI

судя по описанию yaw составляющая из миксов всех моторов и уходит только на сервы, вроде летает =) сложно сказать лучше или хуже

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

igor_v_t
alexeykozin:

у меня есть платка ardupilot imu v2 flat

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

Пробовал , но только без второй платки и на следующей версии imu v3 rcopen.com/forum/f123/topic263186
Можно и МультиВии в платку залить, но посмотреть подключение датчиков и выходы на моторы откорректировать и радио переподключить-то есть новая программа, а вторую 328 вроде бы смыСла нет ставить.