MultiWii
У меня сейчас датчики расположены на макетке, а она на ардуине обычной, от усб-разъема достаточно далеко. Плату посадил на вибропоглощающий комплект от ХКшного гироскопа за 10 уев, одна из прослоек - алюминиевая пластинка. Он же (алюминий) на компас не влияет, не так ли? А компас себя ведет так же, как Дмитрий описал.
На рцгрупсе я находил пост, где человек описывал, как он выставил оси у платки 9доф со спаркфана. Так там вообще вышла дикая ориентация осей магнетометра, ось Z с какой-то другой поменялась, как будто компас боком стоит )). Выходит, проекции осей компаса и остальных датчиков различаются?
И вроде летает, но улетать далеко или высоко на таком страшно… ни у кого похожего не было?
На прошедших выходных я тоже упал при странных обстоятельствах…
Квад, 2212-930KV, APC 10x4.7, рама DJI450, моЦг Crius SE. Поставил прошивку от маховиха 2.0a0
Снимаю батарею с зарядки, ставлю на аппарат…2 минуты стабильного полета…потом резкое снижение мощности квад летит к планете…я ручку газа почти на полную и тут кувырок направо…и привет планета. Сразу думал кердык батарея…померил в районе 4V на банку. Чо было…так и не понял. Батарея прошла не более 10 циклов. Да и аппарат на 2.0 уже отлетал более 5 полетов, но как писал выше постоянно уводил YAW. Ух уж мне этот релиз 2.0 блин! Короче респект Маховику за 1.9a2 треха и квад вели себя на ней отлично! В пока ф топку 2.0!
Смотрю вот на это. Может ли быть полезным?
Практику врятли. Ну если вы только рефераты не пишите на тему.
Я идиота кусок просто огромный!!1 Эта подложка из гироскопного комплекта оказалась стальной ))) Потыкал в нее отверткой - магнитится. Что сразу проверить мешало?..
Естественно, после ее удаления оси подобрал сходу. Напоминаю, плата такая, ориентация следующая:
#define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL] = X; accADC[PITCH] = -Y; accADC[YAW] = Z;}
#define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] = X; gyroADC[PITCH] = Y; gyroADC[YAW] = Z;}
#define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL] = -X; magADC[PITCH] = -Y; magADC[YAW] = Z;}
#define ADXL345_ADDRESS 0xA6
Это для 1.9. В 2.0 по какой-то причине другой порядок осей акселерометра (в sensors.ino).
В связи с наступившей весной трава уже по пояс и искать квад после падения становится сложно, особенно если далеко улетел. В MWC есть галочка BEEPER, но выделять под нее отдельную позицию крутилки не хочется (особенно с моим 6-ти канальным пультом). Сделал небольшой мод - бипер включается при пропадании сигнала с пульта. Т.е. достаточно просто выключить пульт, чтобы найти коптер.
if ( rcOptions[BOXBEEPERON] ){ // unconditional beeper on via AUXn switch
buzzerFreq = 7;
заменить на
if ( rcOptions[BOXBEEPERON] || failsafeCnt > (5*FAILSAVE_DELAY)){ // unconditional beeper on via AUXn switch + alexmos: beep in filesafe
buzzerFreq = 7;
FAILSAFE должен быть включен в конфиге. По умолчанию бипер на 8-й ноге в MWC, если кто не знает…
смотрите чего чел замутил. скоро будет wii-dron 😃
www.multiwii.com/forum/viewtopic.php?f=8&t=1499
Прошился rcopen.com/blogs/83206/14262
До этого летал на 1.9а
После прошивки не стартуют моторы. Арминг не проходит. Подскажите, где искать решение?
Поиграйся расходами в аппе-поставил 125 процентов и полетел)))
Поиграйся расходами в аппе-поставил 125 процентов и полетел)))
Не помогло.
У меня при 100% в GUI пишет уровень 990. С таким уровнем на прошивке 1.9 всё работает, моторы запускаются.
Чудес не бывает-смотри реверсы,расходы ,армируешь в квадре руддером?Просто в трикоптере роллом по моему…Еще неторопясь проверь все настройки…
Кстати, а с чем связано такое решение - для трикоптера другой вариант арминга и дисарминга двигов?
Подключи (выставь "галочки) “Arm” к одному из Aux.
У меня в 2.0 только через Aux включается.
После прошивки не стартуют моторы.
в 1.9а и 2.0а установлены такие параметры
#define MINCHECK 1150
#define MAXCHECK 1850
я специально сжал диапазон на 50 единиц с обеих сторон, чеб небыло проблем с простыми аппами типа HK-6X, соот-но троттл на арме должен быть <1150, а yaw>1850… проверьте в ГУИ
Кстати, а с чем связано такое решение - для трикоптера другой вариант арминга и дисарминга двигов?
подозреваю что если треху стартовать явом, то серва рванет поворотный механизм на максимум сразу после старта. Потому старт через ролл…
если треху стартовать явом, то серва рванет поворотный механизм на максимум сразу после старта
Или зубья поломает, не успев дойти до “точки старта”
У трикоптеров тож разные допустимые углы отклонения серв бывают
Эт все хорошо но ваш спор товарищи мало чем относится к мультивии и тема про гиропульт уже кстати пробегала, если уж так хочется поспорить поднимите ее и спорьте там.
Если не сложно, подскажите, где или хотя бы ключевые слова. По поиску “гиропульт” выходит только эта тема.
Решил вот сегодня перепрошиться на 2 версию вия (был 1.9). Прошился, теперь начались какие-то проблемы с датчиками. А точнее, поменялись оси… Какие были настройки осей у 1.9 и как их перенести на 2 версию? Наверное нужно что-то изменить в строчках
#define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL] = X; accADC[PITCH] = -Y; accADC[YAW] = Z;}
#define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] = X; gyroADC[PITCH] = Y; gyroADC[YAW] = Z;}
#define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL] = -X; magADC[PITCH] = -Y; magADC[YAW] = Z;}
но я посмотрел, в 1.9 всё было точно так же… Не подскажите что изменить?
Компас я победил. Помогла калибровка, но не с первого раза.
Вопрос следующий. Пытаюсь приделать EOSD с прошивкой Syberian.
По рекомендациям Глеба rcopen.com/forum/f123/topic221574/4809 работает.
Но поскольку у меня Mega и портов не жалко, взял файлик из мегапирала и переделываю его под multiwii.
Вместо Serial.write, использую SerialWrite из multiwii.
Код работает, но интересует оптимизация.
Правильно ли я понимаю, что с serial 0, можно использовать стек и один раз писать с помощью UartSendData, а в остальные порты писать сразу?
Кстати, а с чем связано такое решение - для трикоптера другой вариант арминга и дисарминга двигов?
пропеллер просто уходит в крайнее положение в котором обычно не находится никогда и может выломать весь механизм если он жестко закреплен,или рубануть по( раме\траве\асфальту) .
Я стартую как попало т.к выставил крайние положения в настройках сервы
таким образом
#define TRI_YAW_CONSTRAINT_MIN 1250
#define TRI_YAW_CONSTRAINT_MAX 1750
#define TRI_YAW_MIDDLE 1500
вместо штатных
#define TRI_YAW_CONSTRAINT_MIN 1020
#define TRI_YAW_CONSTRAINT_MAX 2000
#define TRI_YAW_MIDDLE 1500
upd. Вчерашнее , Raw