MultiWii
как это сделать
тут это уже раза 4 или 5 было, ищим код:
gyroADC[ROLL] = - ( ((rawADC_WMP[5]>>2)<<8) + rawADC_WMP[2] );
gyroADC[PITCH] = - ( ((rawADC_WMP[4]>>2)<<8) + rawADC_WMP[1] );
gyroADC[YAW] = - ( ((rawADC_WMP[3]>>2)<<8) + rawADC_WMP[0] );
делим значение на 2 4 6 и т.д. (в aeroquad прошивке вообще на 16 делят о_0)
gyroADC[ROLL] = - ( ((rawADC_WMP[5]>>2)<<8) + rawADC_WMP[2] )/2;
gyroADC[PITCH] = - ( ((rawADC_WMP[4]>>2)<<8) + rawADC_WMP[1] )/2;
gyroADC[YAW] = - ( ((rawADC_WMP[3]>>2)<<8) + rawADC_WMP[0] )/2;
от этого значения с гиры станут меньше и как бы пропадет чувствительность, НО имхо это неправильно - так как по сути делим скорость наклона… имхо правильнее было бы убирать последнюю циферку из значения и ставить вместо неё 0 или 5, тогда скорость остается та же, а мелкие значения ошибок убираются
Когда то собитал трикоптер по схеме с этого сайта: …blogspot.com/…/shrediquette-dlx.html
Хочется сделать квадрик и использовать ардуино, гироскопы и акселерометр, но вот самому никак не разобраться. Пробовал с того же сайта делать квадрик так не заводятся моторы. Платы рабочие, трикоптер летал. Может что посоветуете. Заранее благодарен.
от этого значения с гиры станут меньше и как бы пропадет чувствительность
поделил на 4 , брыкатся в ГУИ стал меньше, тока вот и летает как лист бумаги, пракчитески без гир
во во =) я же говорю данные неверные становятся, зато без шума… кстаии в гуи график GYRO как себе ведет (без загрубления датчика) при включенных моторах с пропами? в идеале должна так и оставаться ровная линия
в идеале должна так и оставаться ровная линия
неее, пляшет еще как. делиш чувствительность, пляшет меньше но и летит хуже.
в итоге разделил на 4 а ПИД поставил 10 , в итоге получил то же что и без деления но при ПИД 3,6
пляшет еще как
всегда пляшет? или при запуске моторов? если 1, то хреновая гира, если 2, то хреновая балансировка
если 2, то хреновая балансировка
второй вариант, но пляшет и без пропов, правда меньше.
КУК у меня летает вообще без балансировки, а тут секс целый с балансировкой, этот ВИИ собирает весь шум.
заказал плату с ибатора, которая с гирой 3200 аскелем, компасом и баро (надеюсь там такого секса не будет)
у меня вообще без изменения настроек по разному летает: в пятницу вечером было похоже на управляемый полет, в субботу утром нечто непонятное, но иногда можно было взлететь, вечером что с гирами, что с гирой + аксель - нереально было даже от земли оторвать, сразу кувыркался, в воскресение чуток подняться смог (I=0), но всеравно расколбас, как не меняй P… в общем жесть какая то =) смотришь видео на youtube, подрубают wmp (без акселя) и летает идеально (не верю я что там человек так ловко стики дергает, что борется с расколбасом и уплыванием) - завидую
видать надо быть программером как Siberian чтоб это чудо юдо полетело
не факт, скорее всего надо делать адекватную раму (прочная и легкая с гашением вибрации), балансировать моторы с пропами, ставить нормальные (не из дешевых клонов) датчики на виброизоляцию и понять как настроить PID для своего пепелаца =)
ну незнаю, есть у меня трикоптер на поляцкой раме с капитаном куком, плата с датчиками к раме прикручена БОЛТАМИ на мертво, гирики стоят 65% чувствительности, ни моторы 1050 кв, турниги ни винты GSW не балансировал
виимоушен у меня в квартире летает конечно, но хуже чем кук в таком исполнении, раз в пять.
трикоптер с куком и камерой на борту летает так
попробуй с таким кодом:
gyroADC[ROLL] = - int(( ((rawADC_WMP[5]>>2)<<8) + rawADC_WMP[2] )/123)*123;
gyroADC[PITCH] = - int(( ((rawADC_WMP[4]>>2)<<8) + rawADC_WMP[1] )/123)*123;
gyroADC[YAW] = - int(( ((rawADC_WMP[3]>>2)<<8) + rawADC_WMP[0] )/123)*123;
123 замени на 2 3 4 5 6 и т.д., пока то что надо не будет - тут будет загрубляться, но при этом скорость наклона будет оставаться адекватной
особо перебарщивать тоже не стоит… хз как код воспримет резкое изменение шага
UPD: еще нехорошее ощущение (поглядел дальше код), что это всё нужно сделать на самом деле тут:
gyroADC[ROLL] = (rawADC_WMP[3]&0x01) ? gyroADC[ROLL]/5 : gyroADC[ROLL] ; //the ratio 1/5 is not exactly the IDG600 or ISZ650 specification
gyroADC[PITCH] = (rawADC_WMP[4]&0x02)>>1 ? gyroADC[PITCH]/5 : gyroADC[PITCH] ; //we detect here the slow of fast mode WMP gyros values (see wiibrew for more details)
gyroADC[YAW] = (rawADC_WMP[3]&0x02)>>1 ? gyroADC[YAW]/5 : gyroADC[YAW] ;
Добавить ниже:
gyroADC[ROLL] = int(gyroADC[ROLL]/123)*123;
gyroADC[PITCH] = int(gyroADC[PITCH]/123)*123;
gyroADC[YAW] = int(gyroADC[YAW]/123)*123;
реально не тестил, так что на свой страх и риск =)
не могу поднять выше метра трикоптер, при полном газе он смог поднятся всего лиш на метр.
двигатели DT750 не выдают всю свою силу, при прямом подключении двигателя к приемнику же выдают
#define MAXTHROTTLE 1850 если увеличить это число будет ли больше тяги ?
двигатели DT750 не выдают всю свою силу, при прямом подключении двигателя к приемнику же выдают
Регуляторы не Плющи случаем? У меня тоде самое, пока не разбирался в чем дело. С HK SS все было четка, полный диапазон, а сейчас больше 10А на мотор не могу подать.
эта хрень полетела! 😃
тоже ДТ750 и плюши 18 и тоже недодает тяги.
эта хрень полетела!
видео давай
двигатели DT750
тоже ДТ750
Если не трудно сделайте фото крепления моторов к раме.
так никто и неответил, есть прошивки свежее 1,7 или кто какие пользует?
1.7 последняя стабильная сейчас, есть dev, но опасно юзать =)
попробовал с пропами (минимальные обороты) и своим кодом загрубления гиры (внутри updateIMU) - не ахти реакция в GUI, зато шума меньше:
какая у тя вии? что за датчики?
синяя платка, 2 гирика IDG 650 и 600 (мог напутать, сейчас посмотреть сложновато)
надо попробовать полетать, так это всё не более чем красивый график