MultiWii
защита от влаги!
У нас рекламируют вот такую шнягу: “Nano Protech ELECTRONIC” , но сам не пробовал.
У нас рекламируют вот такую шнягу: “Nano Protech ELECTRONIC” , но сам не пробовал.
Мне искренне непонятно как такая система, как обычный, коллекторный электродвигатель может работать в обычной воде, даже покрытая чудо-составом 😃
Предполагаю, что в рекламе применяется какая-то другая жидкость. В крайнем случае - дистиллированная вода.
Да дистилировка по любому, если она все так защищает то кз по любому бы в розетке случилось бы или просто не было бы контакта с дрелью и дрель бы не крутилась… в общем ерунда все это.
про PLASTIC я уже писал несколько раз в разных темах - про регули и про хубсан… отличная защита от воды при купании в лужах
Да дистилировка по любому, если она все так защищает то кз по любому бы в розетке случилось бы или просто не было бы контакта с дрелью и дрель бы не крутилась… в общем ерунда все это.
Обычная вода, просто ни кто не показал что будет бЕз этой обработки. Я так понимаю разницы ни какой. воза не настолько хороший проводник чтобы произошло КЗ. или перестали работать электроприборы типа дрели… Ни каких чудес, я вам скажу. Кстати, ни кто не задумывался откуда в воде появилось облако белесой мути? так это всем известные газы водород+кислород, выделяющиеся при расщеплении воды под действием электричества. Опыт нужно сказать ни разу не безопасен. потому и в диэлектрических перчатках проводится, кто не заметил. А коллектроные моторы в воде работают вполне не плохо, в том числе с большим превышением напряжения, благодатя хорошему теплоотводу. Главное их просушивать после использования, иначе ржавеют и досвиданья…
Для желающих, на Ютрубе очень много роликов с погружением коллекторников…
Извиняюсь, что не совсем по теме вопрос, но был ли у кого-нибудь успешный опыт применения multiwii как fbl системы на вертолете? В разделе вертолетной электроники сходу найти не удалось.
и не найдете, код есть, но никто не тестил, я уже давно хочу но все никак руки не доходят.
повторю вопрос. как инвертировать YAW в прошивке… при внешнем воздействии контроллер выдаёт сигналл который по вектору совпадает с воздействием и докручивает коптер в ту же сторону. в прошивке нащёл инверт только по PITCH…
повторю вопрос. как инвертировать YAW в прошивке… при внешнем воздействии контроллер выдаёт сигналл который по вектору совпадает с воздействием и докручивает коптер в ту же сторону. в прошивке нащёл инверт только по PITCH…
Кирилл, на Ваш вопрос ответить не могу, но хотел заметить, что если моторы подключены верно, направление их вращения совпадает с нарисованным на картинке в мультиковском GUI, то с высокой вероятностью Вам не понадобится инвертировать YAW.
puh21 вы бы хотя бы схему написали чтоль (три, квадро, гексо), даже если писали уточните, искать ваш вопрос никто не будет, если не ответили дублировать не надо. Вам не серву надо инвертировать, а ось датчика гироскопа по YAW это все делается в прошивке config.h. Все написано уже 1000 раз.
/* individual sensor orientation */
//#define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL] = Y; accADC[PITCH] = -X; 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;}
как инвертировать YAW в прошивке…
вообще этого делать не надо, скорее всего винты не так установлены или еще какая пакость, но в config.h есть вот такая штука
//#define YAW_DIRECTION -1 // if you want to reverse the yaw correction direction
использовал её давно для гексы, в какой то из прошивок коптер крутило по кругу при взлете
Как показали лётные испытания, летать мы пока не можем 😁
Сабж, на полном газу квадр качает из стороны в сторону, но взлетать он упорно не желает, при том винты вращаются с разными скоростями, таскать по полу в право в лево вперёд назад - могу без каких-либо проблем, но взлетать не желает. В руках вертел, сопротивление отклонениям есть, но лететь мы не хотим. Куда копать ?
PID стандратные , если дело в них, то какие реомендованные ?
// #define ESC_CALIB_CANNOT_FLY // uncomment to activate
С этой строчкой тоже игрался.
p.s. та же база на ХК контроллере летатала на ура…
Проверьте макс.газ на моторы какие значения посылаются, чудес не бывает, если даже не переворачивается, возможно мощности не хватает. Перекалибруйте регуляторы, чтобы максимум газа соответствовал максимуму в multiwii.
На стандартных пидах multiwii летит без проблем, дело точно не в них.
Проверьте макс.газ на моторы какие значения посылаются, чудес не бывает, если даже не переворачивается, возможно мощности не хватает. Перекалибруйте регуляторы, чтобы максимум газа соответствовал максимуму в multiwii.
На стандартных пидах multiwii летит без проблем, дело точно не в них.
откалибровал датчики в конфигураторе а не в ГУИ, стало вроде бы получше, сейчас инвертирую YAW, а то его закручивает и попробую снова
меня вот больше разный шим больше волнует который посылается на ESC
p.s. Мне инверсия не помогла, закручивать стало нааамного сильнее 😃 , мне надо просто пиды подкрутить, чем займусь сейчас, но после калибровки мы полетели, волчком правда 😃
Тем кому надо инверсию сделать по одной из осей.
запускаем компилятор, октрываем скетч с мультивиеем.
Лезем в def.h
затем в дефайнах ищем вашу плату:
#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
#if defined(CRIUS_AIO_PRO_V1)
#define MPU6050
#define HMC5883
#define MS561101BA
#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;}
#define MPU6050_I2C_AUX_MASTER // MAG connected to the AUX I2C bus of MPU6050
#undef INTERNAL_I2C_PULLUPS
#define I2C_SPEED 400000L //400kHz fast mode
//servo pins on AIO board is at pins 44,45,46, then release pins 33,34,35 for other usage
//eg. pin 33 on AIO can be used for LEDFLASHER output
#define SERVO_1_PINMODE pinMode(44,OUTPUT); // TILT_PITCH
#define SERVO_1_PIN_HIGH PORTL |= 1<<5;
#define SERVO_1_PIN_LOW PORTL &= ~(1<<5);
#define SERVO_2_PINMODE pinMode(45,OUTPUT); // TILT_ROLL
#define SERVO_2_PIN_HIGH PORTL |= 1<<4;
#define SERVO_2_PIN_LOW PORTL &= ~(1<<4);
#define SERVO_3_PINMODE pinMode(46,OUTPUT); // CAM TRIG
#define SERVO_3_PIN_HIGH PORTL |= 1<<3;
#define SERVO_3_PIN_LOW PORTL &= ~(1<<3);
#define SERVO_4_PINMODE pinMode(11,OUTPUT); // SERVO4 , use hardware PWM
#define SERVO_5_PINMODE pinMode(12,OUTPUT); // SERVO5 , use hardware PWM
#endif
#if defined(LADYBIRD)
#define MPU6050
#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;}
в моём случае это #if defined(CRIUS_AIO_PRO_V1)
находим блок кода внутри это дефа:
#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;}
и собственно по отклонениям делаем инврсию ставив перед X (или Y, Z) минус, или убирая его.
Для того чтобы сделать инверсию компенсационной силы по оси YAW (рысканье), сделать надо следующим образом:
#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;}
Инверсию знака делать надо по всем датчикам, по скольку компенсация происходит по данным со всёх трёх датчиков.
После компилировани и загрузки кода, необходимо откалибровать датчики в MultiWIIConf. в ГУИ не советую, лично у меня джигурда после ГУИ одна.
этот шум вибрация моторов…
Я тут где-то прочитал что мультвии не любит чтобы его тримировали, это правда? Или всё-таки дисбаланс можно скомпенсировать пультом ?
дисбаланс можно скомпенсировать пультом
Э, дисбаланс чего? Если акселерометр нормально откалиброван, то он в горизонте всегда и будет… Хоть внешний груз вешай, я уже не раз подобное видео показывал
с чего же тогда квадр в бок перетягивает
Оттриммируйте акселерометр, все в порядке будет.
Может кому пригодиться
- MultiWii 2.2 Stick Configuration (v0-577215664) mode 2: скачать.