MultiWii
ну если в поле летать самое оно конечно, главное чтобы деревьев не было, любой фвпшник скажет что 5.8 это для абсолютно голых мест, и не любит резких движений с антенной передатчика (читай модели).
Да, и не забываем о проблемах совместимости видео 1.2 и аппы 2.4, так что думаем об антеннах на передатчике, ферритовых кольцах везде где только можно и о бустере wifi на 1…2W 😃
Заснял свою птичку (пока только в комнате). MultiWii 1.8 + ALLINONE, Level mode + compas. Учитывая вес >800г, сквозняки в комнате гуляют неслабые и постояно приходится подруливать. На воздухе должно быть стабильней.
Я вот такую взял PIXIM SEAWOLF WDR 690 www.securitycamera2000.com/pr...-Lens-OSD.html
О! И я себе такую заказал 😃 + Линзы а-ля Fish Eye. Ну и на хобях передатчик с приемником 5.8G 200mw
1.2G
- опасаюсь из-за аппы 2.4G.
5.8G
- такой использую. 200мВт пробивает 3 двери, стену и кулак на антенне. Для игр с квадриком - отличный выбор. Антенны - обычные штыри. С патчами и трекером антенн Lazy писал, что улетал на 5 км чтоли. Переключатели каналов на RX TX не совпадают, надо экспериментировать. Видео приятное (со скидкой на недорогую cctv камеру).
Летал еще на Вии 1.7 в стаб_мод, изображение не размазывалось.
Столкнулся с произволом и непониманием происходящего!!!
Удалили вот видео как летает квадрик на МУЛЬТИВИЕ (да именно в этой ветке мы находимся!) на гирах 655,650 и акселе bma020, стаб мод, 1.8
Здравствуйте,если кто-то захочет попробовать акселерометр LIS3LV02,есть такая возможность в 1.8 прошивке,то он не работает.
Воот если бы LIS35DE то я бы попробовал
Кто летает на Вие с последними прошивками (1.8patch).
В них вшит фильтр для гиры ITG3200, где то тут Глеб писал что сразу расскомментировал 20Hz. Не знаю как унего полетел Вий, но он не прав. Смотрим внимательно что написано в проше:
//#define ITG3200_LPF_256HZ // This is the default setting, no need to uncomment. По дефолту, даже расскомментировать не надо
//#define ITG3200_LPF_188HZ
//#define ITG3200_LPF_98HZ
//#define ITG3200_LPF_42HZ
//#define ITG3200_LPF_20HZ
//#define ITG3200_LPF_10HZ // Use this only in extreme cases, rather change motors and/or props Это в экстримальных случаях, пора менять моторы или пропы.
Чем ниже значение герцев тем снижается чуйка гиры и коптер хуже летает, если у вас все отлично с моторами и пропами. Я час игрался со всеми значениями и со всей отвагой заявляю это. В итоге отсавил верхнее значени 256Hz
Это в экстримальных случаях, пора менять моторы или пропы.
вот поэтому пирату и глубоко пофиг на вибрацию, а мультивий сходит с ума, если 100500 часов не провести за балансировкой
10hz имеется ввиду в самом экстремальном случае.
Никаких часов, я моторы вообще не балансирую, только пропы, это одна минута на один мотор. Кстати, будет время глянь че там за фильтры в вие и пирате, помоему он вааще разные.
глянь че там за фильтры в вие и пирате, помоему он вааще разные.
Вий
i2c_writeReg(ITG3200_ADDRESS, 0x16, 0x18 + ITG3200_DLPF_CFG)
#if defined(ITG3200_LPF_20HZ)
#define ITG3200_SMPLRT_DIV 0
#define ITG3200_DLPF_CFG 4
#endif
Пират
i2c_rep_start(0xd0+0); // I2C write direction
i2c_write(0x16); // register DLPF_CFG - low pass filter configuration & sample rate
i2c_write(0x18+4); // Internal Sample Rate 1kHz, 1..6: 1=200hz, 2-100,3-50,4-20,5-10,6-5
одно и тоже, при этом проблем отработки данных нет - это же фильтр на помехи, а не на загрубление гиры (тогда бы тупо деление или убирание знаков можно было применить, а не заморачиваться с регистрами)
Ну вот с нижними значениями ниже 40Hz коптер, по крайней мере у меня, начинает вести себя не очень, стабильность пропадает, начинаются качки и маленькие провалы.
стабильность пропадает, начинаются качки и маленькие провалы.
код мультивия изначально писался без учета фильтров, этот фильтр на гире может в одном проекте помогать, а в другом наоборот только мешать, тем более при смене значений надо заново ПИДы крутить, так как параметры датчиков то меняются
Здравствуйте,если кто-то захочет попробовать акселерометр LIS3LV02,есть такая возможность в 1.8 прошивке,то он не работает.
Вообщем,т.к я решил попробовать этот акселерометр,то пришлось подправить код.Теперь работает.
Признаться по полетным ощущениям не почувствовал ни какой разницы между АДХЛ345 и БМА180.
Вопрос к Гуру. В чем собственно превосходства того или иного датчика?
вот поэтому пирату и глубоко пофиг на вибрацию, а мультивий сходит с ума, если 100500 часов не провести за балансировкой
не совсем корректно сравнивать пират и вии лишь по параметрам гиры… в пирате цикл тайм если память не изменяет 50гц (т.е. 256 от гиры ему нафиг не нужны) а в вии более 300гц при “нормальных” (т.е. не вийных) датчиках + В ВИИ И ПИРАТЕ СОВЕРШЕННО РАЗНЫЕ ПИД РЕГУЛЯТОРЫ. Соот-но сравнивать их и говорить что пират стабильнее только из фильтров не верно в принципе…
В вии меньше фишек, но больше быстродейтвие и предполагаю что как раз для акро мода и для крутых акро-пилотов этот проект горраздо круче!
это же фильтр на помехи, а не на загрубление гиры
фильтр это как раз и есть загрубленние чувствительности гиры, но не линейное соот-но, а рубятся только “быстрые” показания ИЗМЕНЕНИЙ угловых скоростей, т.е. “скоростные” маневры. Таким образом при низких значениях фильтра 10-20-40гц на гире быстродейтвие вии обработчика теряет смысл, о чем уже писал пару страниц назад…
код мультивия изначально писался без учета фильтров, этот фильтр на гире может в одном проекте помогать, а в другом наоборот только мешать
тут согласен…
Итог:
- для ВИИ: фильтр губит быстродествие, но при разумных значениях может помочь в борьбе с вибрациями.
- в пирате: низкие значения фильтра “совместимы” с временем цикла обработчика без ущерба для быстродействия системы. Т.е. тут от фильтра больше пользы в плане борьбы с вибрациями.
Ну и если совсем кратко то вии более шустрый, но чувствмтельный к вибрациям, а пират не такой шустрый, но более терпимый к шумам-вибрациям за счет филтров низких частот.
Не знаю, меня мультивий в плане стабильности очень радует. Я поковырял его в части IMU (было интересно попробовать добавить реакции на линейные ускорения и перемещения), и непохо разобрался в его алгоритмах стабилизации. Так вот, они довольно точны и мат. модель IMU хорошо описывет все перемещения, особенно в связке с акселерометром и компасом. Единственное, нужно четко представлять что как подстраивать и триммировать, т.к. сам он это не умеет.
Насчет вибраций - по моему их влияние сильно преувеличено. Гироскоп их практически не видит, т.к. они не угловые, акселерометр видит, но он хорошо сглажен в коде и его вклад только в низкочастотных областях (видеть землю для корректировки дрифта гироскопа).
Замечания по своим ошибкам “обращения” с мультивием:
- при включении он калибрует ноль гироскопа. Т.к. я включаю втыканием питания в батарею, в этот момент возможны толчки. И потом его очень неслабо тянет в крен. Сделал задержку в 3 сек. чтобы успеть убрать руки.
- Акселерометр в левел- моде надо ТРИММИРОВАТЬ ОБЯЗАТЕЛЬНО. иначе никакими ручками на пульте не выставишь стабильность. Это можно сделать один раз, он сохраняет настройку.
- Добавил Expo для Throttle в коде, т.к. мой дешевый пульт не позволял точно удержать высоту, постоянно вверх-вниз колбасило. Теперь высота держится элементарно.
- при включении он калибрует ноль гироскопа. Т.к. я включаю втыканием питания в батарею, в этот момент возможны толчки. И потом его очень неслабо тянет в крен. Сделал задержку в 3 сек. чтобы успеть убрать руки.
- Акселерометр в левел- моде надо ТРИММИРОВАТЬ ОБЯЗАТЕЛЬНО. иначе никакими ручками на пульте не выставишь стабильность. Это можно сделать один раз, он сохраняет настройку.
- Добавил Expo для Throttle в коде, т.к. мой дешевый пульт не позволял точно удержать высоту, постоянно вверх-вниз колбасило. Теперь высота держится элементарно.
Здравствуйте,не могли бы Вы подробней описать, что и куда дописали в коде?
- при включении он калибрует ноль гироскопа. Т.к. я включаю втыканием питания в батарею, в этот момент возможны толчки. И потом его очень неслабо тянет в крен. Сделал задержку в 3 сек. чтобы успеть убрать руки.
- Акселерометр в левел- моде надо ТРИММИРОВАТЬ ОБЯЗАТЕЛЬНО. иначе никакими ручками на пульте не выставишь стабильность. Это можно сделать один раз, он сохраняет настройку.
- Добавил Expo для Throttle в коде, т.к. мой дешевый пульт не позволял точно удержать высоту, постоянно вверх-вниз колбасило. Теперь высота держится элементарно.
не могли бы вы выложить код с пометками где вы и что правили?
упс… одинаково мыслим =)
Задержка калибровки:
MultiWii.pde, setup():
...
initSensors();
//wait 3 seconds before start calibrating
delay(3000);
previousTime = micros();
..
Не очень важная доработка но я думаю что полезно: более точная калибровка нуля гироскопа. Сейчас в коде ноль округляется до целых. Так как данные гироскопа интегррируются, даже небольшая ошибка накапливается. Лучше окрулять до десятых, тем самым слегка повышается точность и уменьшается дрифт.
Sensors.pde, GYRO_Common():
...
if (calibratingG == 1) {
gyroZero[axis]=g[axis]/40;
...
for (axis = 0; axis < 3; axis++) {
gyroADC[axis] = (int32_t)(gyroADC[axis] * 10 - gyroZero[axis])/10;
...
Throttle-expo описан тут: www.multiwii.com/forum/viewtopic.php?f=7&t=623