Crius Hobby MultiWii

mahowik

Если на а2 в гуи прыгает на1…2 то это значит что до фильтрации на 3…6
Попробуй подлетнуть с фиксом и без если есть возможность…

З.ы. вспомнил… ты когда на вий вернулся и подрубал 345, я рекомндовал выбрать дискретизацию на 6 (или 3 гц) и ты отписался что хуже стало и что вообще не полетел вроде. А это значит что внутреннего фнч в 345 нет! Потому подымаем дискрет и фильтруем ардуиной…

SovGVD

на одном коптере 1.9_а2, на другом 2.0_а0 - обе прошивки без изменений (т.е. как слил у тебя, такую и залил)… в общем мне на adxl345 больше нравиться как летает =) а там уж хз чего и как

хотя вот с bma180

www.youtube.com/watch?v=5nqaqIGYTGs

вообще ровненько

mahowik

Так можешь патч выше опробовать? И подлетнуть сперва без него, потом с ним…
Т.е. тамтолько частоту выставить на 200 для акселя и acc_1g уменьшить

SovGVD
mahowik:

Так можешь патч выше опробовать? И подлетнуть сперва без него, потом с ним…

завтра днем попробую, сейчас ребенок спит =) боюсь жена убьет, если захочу полетать

mahowik

Про bma180 так и есть т.к. там внутрнний фнч пашет ну и боШ есть боШ ))

SovGVD
mahowik:

Про bma180 так и есть т.к. там внутрнний фнч пашет ну и боШ есть боШ ))

я лучше завтра БТ подключу и запишу графики в полете, а то на земле смотреть особого смысла нет
но bma180 только на другом коптере могу - так как перебирать и перезаливать всё очень геморно

mahowik
SovGVD:

я лучше завтра БТ подключу и запишу графики в полете

ну да, так даже лучше…

VitaliyRU
mahowik:

Так можешь патч выше опробовать? И подлетнуть сперва без него, потом с ним… Т.е. тамтолько частоту выставить на 200 для акселя и acc_1g уменьшить

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

mahowik

вы кстати вроде писали/улучшали свою прошивку/IMU? есть успехи в сравнении с вием?

VitaliyRU
mahowik:

вы кстати вроде писали/улучшали свою прошивку/IMU? есть успехи в сравнении с вием?

давай на ты, мы ж ровесники 😃
Брошено все на пол дороги 😦 ремонт сейчас дома, не до этого.
Мысли есть, но делать уже буду на stm32 и mpu6050. Я все пытаюсь бороться с дрейфом гирика, как мне кажется это основная проблема не очень уверенного висения. По ФПВ на комнаном мелколете это очень чувствуется, на свежеоткалиброванном гирике лететь раза в 3 проще. Хочу попробовать дифференцировать показания акселя, для корректировки дрейфа гирика.
Даже если получится хуже не жалко, интересно попробовать.
пока заказал вот это
www.ebay.com/itm/320845417504
и это
www.ebay.com/itm/190634428431
если я правильно все вкурил там даже дебаг есть, что сильно упрощает процесс естесвенно
ну и дачик
www.ebay.com/itm/270974251850

Diman-Gad
SovGVD:

зы: за баномесяц разочаровался в y6, не интересуюсь квадриком и в диком восторге от трикоптера

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

SovGVD
Diman-Gad:

а можно поподробнее, почему разочаровался в у6?

для сравнение, есть трешка, летает 10-12 минут с 2.2 аккумом, думаю с gopro будет летать не сильно меньше, при этом запас по тяге сейчас около 60% (взлет на 40%)
и есть y6, летает те же 10 минут, но с 8Ah аккумом и таскать должен ту же камеру (но правда на подвсе, который 200 грамм добавляет веса), взлет на 60%, уверенный подъем под 80%
т.е. в итоге толку от Y6 нет никакого, если не считать тяжелый подвес, который под gopro вообще парой серв можно заменить… вся надежда на то что реально хорошо будет летать в ветреных местах (как заявляют на буржуйских форумах), если нет, то 100% разочарование в плане эффективность
НО показалось Y6 стабильнее три- и квадро-коптера, к тому же складывается не плохо, теперь вот думаю как бы переделать в обычную гексу, если не будет летать там, где мне надо

SovGVD
SovGVD:

завтра БТ подключу и запишу графики в полете

как и обещал, но чуток с правками
итак, 2.0 a0 код:


void ACC_init () {
  delay(10);
  i2c_writeReg(ADXL345_ADDRESS,0x2D,1<<3); //  register: Power CTRL  -- value: Set measure bit 3 on
  i2c_writeReg(ADXL345_ADDRESS,0x31,0x0B); //  register: DATA_FORMAT -- value: Set bits 3(full range) and 1 0 on (+/- 16g-range)
  i2c_writeReg(ADXL345_ADDRESS,0x2C,0x09); // rate=50hz, bw=25hz (see table 7 of the spec)
  acc_1G = 256;
}

www.youtube.com/watch?v=MuD-5WD5U9Q

2.0 a0 предложенные правки кода (летать не пытался, так как горизонт не адекватно себя ведет)

www.youtube.com/watch?v=k1Q5N0rEq6Q

2.0 a0 правки + моя правка для 1G


void ACC_init () {
  delay(10);
  i2c_writeReg(ADXL345_ADDRESS,0x2D,1<<3); //  register: Power CTRL  -- value: Set measure bit 3 on
  i2c_writeReg(ADXL345_ADDRESS,0x31,0x0B); //  register: DATA_FORMAT -- value: Set bits 3(full range) and 1 0 on (+/- 16g-range)
  i2c_writeReg(ADXL345_ADDRESS,0x2C,0x0B); // rate=200hz, bw=100hz (see table 7 of the spec)
  acc_1G = 256;
}

www.youtube.com/watch?v=sZ_Oyjheaaw

особых различий в полете не почувствовал

mahowik

А блин забыл… при 1g = 128 надо данные на 2 делить (каждую ось) и калибровку потом сделать…
Как результат в гуи по всем осям должна быть тишина, когда коптер в покое …

SovGVD
mahowik:

А блин забыл… при 1g = 128 надо данные на 2 делить (каждую ось) и калибровку потом сделать…
Как результат в гуи по всем осям должна быть тишина, когда коптер в покое …

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

mahowik

вот так должно быть + перекалибровку не забыть сделать:


#if defined(ADXL345)
void ACC_init () {
  delay(10);
  i2c_writeReg(ADXL345_ADDRESS,0x2D,1<<3); //  register: Power CTRL  -- value: Set measure bit 3 on

  i2c_writeReg(ADXL345_ADDRESS,0x31,0x0B); //  register: DATA_FORMAT -- value: Set bits 3(full range) and 1 0 on (+/- 16g-range)

  i2c_writeReg(ADXL345_ADDRESS,0x2C,0x0B); // rate=200hz, bw=100hz (see table 7 of the spec)

  acc_1G = 128;
}

void ACC_getADC () {
  TWBR = ((16000000L / 400000L) - 16) / 2; // change the I2C clock rate to 400kHz, ADXL435 is ok with this speed
  i2c_getSixRawADC(ADXL345_ADDRESS,0x32);

  ACC_ORIENTATION( ((rawADC[1]<<8) | rawADC[0])/2 ,
                   ((rawADC[3]<<8) | rawADC[2])/2 ,
                   ((rawADC[5]<<8) | rawADC[4])/2 );
  ACC_Common();
}
#endif
SovGVD
mahowik:

вот так должно быть + перекалибровку не забыть сделать:

www.youtube.com/watch?v=lHDNdbRu_4g

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

upd: вернул как было, летает вот так, мне нравится, на улице конечно получше

www.youtube.com/watch?v=WGeOTUWnN-s

чуто увеличил P, совсем хорошо стало

mahowik
SovGVD:

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

как писал ток что в вии ветке аксель не притупляется, а просто уменьшается дискретность данных с 256 на 128 (64 уже маловато но и с етим работало на бма020), что позволяет уменьшить шум около нуля (и дрейф соот-но), т.е. около горизонта… странно кроче… надо чеб кто нить еще подлетнул… VitaliyRU вроде обещал… сам не могу пока, в ремонте…

SovGVD

я склонясь к мнению что подобный минимальный шум ±2 на 512 вариантов (-256…256, насколько я понимаю) не влияет на полет - у меня вибрация от моторов явно сильнее действует на аксель, чем его собственный шум
кстатии какой сейчас самый круто аксель хоть считается? (как ms**** против bma085)