MultiWii на самолете

Saradon

В общем, хотел я себе сделать простейший стабилизатор на Pro Mini и MPU-6050.


Качество изготовления оставляет желать лучшего… Не суть.
В общем, даже при выставлении “I” YAWа в 0 самолётик в MultiWiiConf всё равно продолжает вращаться.
Кроме того, после выравнивания платы параметры очень долго возвращаются в нулевые положения…
Компаса, разумеется, нет, так что уползает, судя по всему, гироскоп.

kostya-tin

а вы уверены, что оси правельно выставленны?

Saradon
kostya-tin:

а вы уверены, что оси правельно выставленны?

Да, YAW и есть YAW.
По осям только ROLL отзеркалить надо.
Но это всё не важно. Не работает девайс.
Просто так сам по себе перестаёт работать и всё. Ни данных, ни управления.

UPD. Не важно. Разломал всё нафиг. Похоже, всё таки, глюки у самой Ардуины были.

vjick
Saradon:

Да, YAW и есть YAW.

без компаса прямо ровно лететь не будет.

Saradon
vjick:

без компаса прямо ровно лететь не будет.

Может быть. Но, как оказалось, боковое “сдувание” нивелирует гироскопом.

vjick

гироскоп слегка поправляет, но ошибка накапливается…

Saradon

Да не важно уже.
Пересобрал в “лабораторных” условиях уже на другой Ардуине.
Несколько минут всё работает идеально, а потом начинается…

youtu.be/w3tdaCoV40I

gena_g

По I2c идут ошибки . Или не правильно подключен или провода длинные. Резисторы на SCL SDA на плате mpu6050 стоят.

Saradon

Я вижу, что идут ошибки. Но начинается-то это не сразу, а через 5-10 минут нормальной работы.
И переподключкние помогает далеко не с первого сраза.
Когда всё было спаяно вплотную было тоже самое.

alezalez

Скиньте свою прошивку, может, в ней дело

Saradon
alezalez:

Скиньте свою прошивку

Обычный Мультивий.
Раскомментировал только Airplane и MPU-6050

alezalez

На выходных соберу ардуинку с мп6050 и залью прошивку, посмотрю, что у меня выйдет. Когда-то сделал на них стабилизатор полета, вроде как проблем таких не было, но это было год назад…

max809
alezalez:

Когда-то сделал на них стабилизатор полета, вроде как проблем таких не было, но это было год назад…

Тоже проблем не было, похоже здесь “железная” проблема.

Saradon
max809:

Тоже проблем не было, похоже здесь “железная” проблема.

Скорее всего. Но в каком месте? Гироскоп браковошный?

kostya-tin

Я уже много раз говорил в тамах о MultiWii - нужно смотреть, что бы правельно были выставленны оси в прошивке. Делал подобную плату под квадрик, и так же по горизонту в GUI вроди все нормально было, но при взлете квадрик начинало крутить по YAW. Оказалось, что ось гироскопа не совпадала с осью акселя и нужно было п впрошивке внести эти поправки. А ведь гироскоп и аксель были у меня на одном чипе MPU6050
www.multiwii.com/wiki/?title=Config.h#Magnetic_sen… проверте

Saradon
kostya-tin:

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

Оси - это одно, а тут самих данных нету.
Точнее они теряются на ходу.

alezalez

Как заметил Гена Грабовский, по и2ц куча ошибок. Скорость шины точно выставлена на 100 кГц? (на 400 кГц будет глюкавить). Далее - проверьте питание, запитайте от другого бэка, подвесьте на питалово два кондера: электролит где-то на 1000 мкФ и керамику на 0.1 мкФ (в паралель). У меня есть бэк, который при отключенном от регуля двигателе такое чудит по выходу… Движок подключу - сразу все гуд 😃

Saradon

Скорость шины меняется в прошивке? У меня совершенно всё “из коробки”.
Питание - от USB 3.0, тобишь до 1A.
Если-бы сразу были ошибки и глюки - вопросов нет, но тут-то 5-10 минут всё работает идеально, а потом вдруг вот такое начинается.

alezalez

/********************************** I2C speed for old WMP config (useless config for other sensors) *************/
#define I2C_SPEED 100000L //100kHz normal mode, this value must be used for a genuine WMP
//#define I2C_SPEED 400000L //400kHz fast mode, it works only with some WMP clones

по умолчанию 400 обычно стоит. А платка с акселем не греется? На ней точно 3.3 В, а не 5 В?

1 month later
Saradon
alezalez:

А платка с акселем не греется? На ней точно 3.3 В, а не 5 В?

Снова дошли руки до экспериментов.
Собрал пока на макетке.
Платка с акселем холодная, как сердце бывшей… И на ней точно 5 вольт, как и велят производители, ибо и на акселе, и на барометре стоят DC-DC с маркировкой. 4A2D, кои и кормят девай 3.3 вольтами.
Сейчас схемка довольно адекватно уже с пол-часа работает на макетке, ошибок по I2C нет.
Один только косяк имеется - после значительного изменения положения в пространстве данные очень медленно приходят в нулевое положение…

Saradon

Оставил конструкцию на ночь - с утра всё работает, аксели не уплыли, по I2C ошибок нет. Только барометр куда-то уплыл - да и фиг с ним. И погода поменялась, да и не нужен он больно в самолёте. Тобишь, схема, в целом-то, рабочая.
Но вот есть один косяк. После стабилизации платы параметры в GUI очень долго возвращаются в нули.

www.youtube.com/watch?v=-Gm1ElKIWhI

Так-же есть косяк с руддером - при повороте платы (по Яву, получается), сам самолётик поворачивается в обратную сторону.
Прошил всё тоже самое на AIOP (с теми-же раскомментированными сенсорами) - тот-же (д)эффект.
Прошил натурально для AIOP (раскомментировав именно AIOP) - всё нормально.
И положение мгновенно возвращается на место, и при повороте платы самолётик поворачивается туда-же.
Что-же делать с ориентацией? В прошивке нашёл где сменить оси, но не нашёл, где сменить направление конкретной оси…
И что делать с долгим возвратом параметров?

UPD. С ориентацией оси, похоже, разобрался…