MultiWii

flank
scgorodok:

Сергей, я русским языком попросил прошивку на эту конкретную плату, у Вас надеюсь именно такая,иначе… спасбо есть люди, которые мне скинулии её, теперь я разобрался.

она для всех плат одна, как уже писали 😃

dROb
flank:

она для всех плат одна, как уже писали 😃

Увы, это не так. Слив прошивку со своей платы - вы не заставите её работать на другой плате (с другими датчиками)

Человек по неопытности просто не смог правильно описать свою проблему, а она, насколько я понимаю, заключалась в неправильной ориентации датчиков. В итоге в теме ещё 10 постов глумления.

Предполагаю, что те, кто пользуются распространёнными платами, даже и не знают, что иногда приходится лезть кроме config.h ещё и в def.h чтобы править, например это:
#define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL] = -X; accADC[PITCH] = -Y; accADC[YAW] = Z;}
#define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] = Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
#define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL] = X; magADC[PITCH] = Y; magADC[YAW] = -Z;}

devv

Так писали же:

DVE:

Кстати если найти на ХК эту плату и перейти во вкладку Files, можно найти кучу файлов для нее.

а там - multiwii config.h and def.h

in config.h:

#define HK_MultiWii_328P   // HobbyKing MultiWii ITG3205 + BMA180 + BMP085 + HMC5883L port 

in def.h:

#if defined(HK_MultiWii_328P )
 #define I2C_SPEED 400000L
 #define ITG3200
 #define HMC5883
 #define BMA180
 #define BMP085
 #define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL]  = -X; accADC[PITCH]  = -Y; accADC[YAW]  =  Z;}
 #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] =  Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
 #define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL]  =  X; magADC[PITCH]  =  Y; magADC[YAW]  = Z;}
 #undef INTERNAL_I2C_PULLUPS
 #endif
scgorodok
dROb:

Увы, это не так. Слив прошивку со своей платы - вы не заставите её работать на другой плате (с другими датчиками)

Человек по неопытности просто не смог правильно описать свою проблему, а она, насколько я понимаю, заключалась в неправильной ориентации датчиков. В итоге в теме ещё 10 постов глумления.

Предполагаю, что те, кто пользуются распространёнными платами, даже и не знают, что иногда приходится лезть кроме config.h ещё и в def.h чтобы править, например это:
#define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL] = -X; accADC[PITCH] = -Y; accADC[YAW] = Z;}
#define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] = Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
#define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL] = X; magADC[PITCH] = Y; magADC[YAW] = -Z;}

именно
она и до прошивеи всё работало, только через жопу

omegapraim

mahowik Респект тебе и уважуха, сейчас подлетнул дома на РЦ1 все отлично работает, коптер стал плюшевым никаких подергиваний на стандартных пидах. Может завтра с утреца схожу подлетну, посмотрим как работает АХ, дома по новому наза алгоритму точку висения поймать не удается.

mahowik

так а что проделал? размерность acc_1g исправил?

точка висения это центр газа +/-50 единиц, если не менял в конфиге…

пиды на альт какие сейчас?

omegapraim

Я сейчас про большой квадрик с AIO писал, с мелким разобрался делитель поставил 1024 теперь когда переворачиваешь 520 показывает а так 512. Да у меня комната мелкая потоки слишком сильные АХ не попробовать особо.

Завтра пока алкашня вся спать будет пойду во дворе попускаю.

mahowik
omegapraim:

когда переворачиваешь 520 показывает

должно быть -520 тогда (знак минус!)

omegapraim

ну да -520)))) это очевидно, но вопрос который тут остается открытым, 1024 эт не большой делитель?

mahowik
omegapraim:

Да у меня комната мелкая потоки слишком сильные АХ не попробовать особо.

ну тут да, баро с ума сходит от завихрений и возд. подушки, но если делать взлет, то там практически аксель один используется, т.е. можно и дома в АХ взлетать… но да, лучше на улице по любому… если дома +/-метр болтает, то на улице +/-20…40см…

omegapraim:

ну да -520)))) это очевидно, но вопрос который тут остается открытым, 1024 эт не большой делитель?

если диапазон +/-512 на 1г, то ок…

omegapraim
mahowik:

ну тут да, баро с ума сходит от завихрений и возд. подушки, но если делать взлет, то там практически аксель один используется, т.е. можно и дома в АХ взлетать… но да, лучше на улице по любому… если дома +/-метр болтает, то на улице +/-20…40см…

даже не +/- метр а 40см где то но его на воздушной подухе бросает, но он сразу начинает стабилизироваться.

диапазон такой 8г +512 переворачиваем -520 я для интереса большой перевернул он вообще -500 показал в общем в пределах нормы.

Как многие пишут MTK не работает, все фигня, у меня с прошитыми настройками все запустилось и ловило дома 3 спутника на кровати в 1,5м от окна.

Вопрос по поводу GPS 5гц намного хуже чем 10гц (нет понятно что в 2а раза) вопрос не о том на что этот параметр влияет. Новый glonas/gps поддерживает только 5гц вот я и думаю на что повлияет.

mahowik
omegapraim:

точку висения поймать не удается

вруби базер, и все будет слышно… детали в дневнике…

omegapraim:

Как многие пишут MTK не работает

не путай народ… писали про конкретный ublox модуль в режиме nmea… т.е. тот модуль скорее всего банально не понимает mtk команд… детали в комментах дневника…
и не многие, а один чел. 😉

omegapraim:

Вопрос по поводу GPS 5гц намного хуже чем 10гц (нет понятно что в 2а раза) вопрос не о том на что этот параметр влияет. Новый glonas/gps поддерживает только 5гц вот я и думаю на что повлияет.

я пробовал на своем модуле и 5 и 10гц… разницы не заметил… НО разработчик ГПС кода не рекомендовал меньше 5гц…

omegapraim

Я про ублокс читал к нему я вообще притензий не имею ибо не имею модуля)))) у лан значит как мне поставщик вышлет прошивку то попробуем новый модуль. А вообще я еще два модуля нашел один отечественный другой ублокс л-7(его посоветовали) правда последнего нет еще и когда будет непонятно, но на его основе хороший бы гпс брелок получился бы. Кстати еще хотел спросить а как сам по себе аксель ADXL 345 как он себя ведет, просто имею в загашнике пару свободных акселей, хочу микро платку замутить для мелкого.

mahowik
omegapraim:

а как сам по себе аксель ADXL 345

я с ним натра%ался, так и не полетел толком… ему от вибраций бошку сносило и никакими фильтрами, как внешними, так внутренними убрать не получилось… хотя Глеб как то писал, что он у него лучше чем bma180 работал…

мой вердикт: в топку его 😃

omegapraim
mahowik:

я с ним натра%ался, так и не полетел толком… ему от вибраций бошку сносило и никакими фильтрами, как внешними, так внутренними убрать не получилось… хотя Глеб как то писал, что он у него лучше чем bma180 работал…

мой вердикт: в топку его 😃

тоды пущай дальше валяется))) хлеба не просит, значит будет связка LIS3dh+itg3200

ColonelTY

Подскажите, а нормально если после дизарма движки стартуют? (может где написано уже)

scgorodok
ColonelTY:

Подскажите, а нормально если после дизарма движки стартуют? (может где написано уже)

а чтоже при арме тогда происходит ?

OK-40
ColonelTY:

Подскажите, а нормально если после дизарма движки стартуют?

Это нормально, главное, чтобы обороты движков были небольшими (холостыми), и коптер оставался на земле, а не улетал в небо 😃 А написано здесь.

mahowik
ColonelTY:

Подскажите, а нормально если после дизарма движки стартуют?

OK-40:

Это нормально, главное, чтобы обороты движков были небольшими (холостыми)

рассравим точки над зЮ 😃
арм - старт движков
дизарм - стоп движков

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

/* motors will not spin when the throttle command is in low position
       this is an alternative method to stop immediately the motors */
    //#define MOTOR_STOP

а если после дизарма стартуют, то это не порядок… и вообще как это? всегда крутятся, как после арма, так и после дизарма?!
в плане калибровок вот совет, если у вас AIO+RC1:

  1. настройте диапазон аппы в 1000…2000
  2. откалибруйте регули на диапазон 1000…1900
    Нужно раскоментить ESC_CALIB_CANNOT_FLY и залить на один раз. Прошивать без АКБ. Потом подключить АКБ, чтобы контроллер выполнил калибровку регулей…
/* to calibrate all ESCs connected to MWii at the same time (useful to avoid unplugging/re-plugging each ESC)
       Warning: this creates a special version of MultiWii Code
       You cannot fly with this special version. It is only to be used for calibrating ESCs
       Read How To at  */
    #define ESC_CALIB_LOW  1000
    #define ESC_CALIB_HIGH 1900
    //#define ESC_CALIB_CANNOT_FLY  // uncomment to activate

3)залейте RC1 без изменений

ColonelTY
mahowik:

рассравим точки над зЮ

Я неправильно выразился - при арм стартуют движки.

mahowik:

в плане калибровок вот совет

Попробую, спасибо.

mahowik
ColonelTY:

при арм стартуют движки

тогда ответ выше про не рекомендованный (мной) дефайн MOTOR_STOP…
еще плюс, того что движки вращаются после арма в том, что вы точно видите что коптер на взводе/курке 😃 и меньше вероятность банально забыть выполнить дизарм и вдруг полететь или получить травму от случайно задетого тротла/газа…
пример: аппа висит на шее… присели и одеждой задели стик газа… опасно…