MultiWii

alexmos
mahowik:

только вот судя по коментам в коде у гиры диаппазон +/- 8192

Это максимальные значения при довольно сильных угловых скоростях (кстати занженные в MultiWii, изначально гира выдает почти что полные int16). В нормальной работе гира выдает данные недалеко от нуля. И мы прбавляем каждый раз измеренный средний ноль. И если там сидит ошибка к примеру 0.5, она быстро накапливается при интегрировании. Но это опять же силно зависит от гиры, на моей одна ось попадает в ноль точно, а вот вторая убегает быстро с округленным нулем. После ввода десятых становится стабильной как и первая. Вводить сотые смысла нет, ноль не на столько стабилен и там уже шум больше чем сотые.
Была мысль убрать деление на 4, чтобы ещё повысить точность, но тогда надо пересматривать всю арифметику на предмет переполнений, и мержиться с SVN будет сложно.

mahowik:

этож получится что “плавная” часть газа будет только на снижение, а увеличение газа как раз “резкое” по экспоненте (т.е. на подъем)

Нет, и на подъем и на снижение будут плавные части. Хотя и говорится про одну экспоненту, на самом деле их две (как и на ручки наклонов), соединенных в своей нулевой точке. С такой кривой мы быстро выбираем нерабочие участок до отрыва, затем плавно идет в районе отрыва и далше, и потом быстро растет до максимального газа.

И кстати посморите на второй параметр SHIFT_HOVER. Если у вас отрыв идет на 2/3 газа, то есть возможность сместить его в 1/3 и больший диапазон использовать для полета.

commy_s
juniorluck:

Вот и мне пришли 2 платки ALLINONE, в конверте была вложена распиновка только для одной платы, а вот для этой 5V c GPS небыло… может кто подскажет распиновку или как её подключить?..

Cкан от 3.3V. на 5 вольтовой поменяны местами RX и TX.

juniorluck

Небольшая инфа, списался с производителем этих плат… Он сказал что 3,3V платы можно питать от 5V на плате есть стабилизатор.

Олег, большое спасибо!

juniorluck

Киньте пожалуйста в меня скриптами, чтоб каждый датчик отдельно проверить на плате ALLINONE…

Boev_Dmitry
juniorluck:

чтоб каждый датчик отдельно проверить на плате ALLINONE

можно просто для arduino под каждый датчик скачать библиотеку отдельную. там и тестовые скетчи есть. я так проверял когда плата пришла, но библиотеки на домашнем компе только есть. но гуглом ищется быстро

sulaex
Covax:

какие датчики на ней стоят

слевой стороны стоит микруха гироскопа ITG3200 (или аналогичных), полностью совпадает с даташитом

справа стоит датчик очень похожий на BMA180

даташит на BMA180

ЗЫ кстати, очень интересный вариант платки мультивия квадро с пятью каналами, ничего лишнего, процессор, датчики, питание датчиков на 3.3 вольта, наверное не дорого стоит? где такое можно приобрести?

soliada
Covax:

Друзья, а что это за платка и какие датчики на ней стоят, кто знает?

100% Хэнд-Мэйд.Кто-то просто развел и изготовил себе и вероятно еще и друзьям перепало.

pnm

Подскажите у меня nunchuck включен или нет. Если нет, не подскажите как его включить? Начинаю поднимать коптер, он переворачивается. Калибровки все сделал.

MultiWiiV1_7_nunchuck_mega_16.rar

gena_g

Вот мой новый контроллер MultiWii для самолета (летающего крыла). Датчики стоят ADXL345 и L3G4200D, МК mega168. Не получается прошить bootloader выдает ошибку верификации. Я всегда заливаю программу через LPT програматор, на этой плате нет места для дополнительного разьема програматора.

Covax
pnm:

Подскажите у меня nunchuck включен или нет. Если нет, не подскажите как его включить? Начинаю поднимать коптер, он переворачивается. Калибровки все сделал.

Включен то включен, но на графике не видно ничего. Потряси, если нет графиков относящихся к акселю, значит не работает аксель.

pnm
Covax:

Включен то включен, но на графике не видно ничего. Потряси, если нет графиков относящихся к акселю, значит не работает аксель.

Всплески есть. Забрал сегодня OpenPilot, пока откладываю wii.

soliada

Здравствуйте,вопрос к Гуру кодонаписания. Есть необходимость поменять местами пин D3 c D8 (вывода PD3 и PB0 на 328 Меге).
Мои ковыряния в коде результата не принесли,подозреваю что надо править во многих местах.
Буду признателен за информацию по этому вопросу.

Siorinex

На днях получил запчасти к своему мультикоптеру…
Собственно основное - РУ на 9-8 каналов (ну не хватает мне 5.5 на старой! Ни пуск-стоп приделать, ни что-либо ещё!) и 5 штук мотор-контроллер…
Сейчас думаю над апгрейдом, ради которого и затевалось: увеличить грузоподъёмность числом моторов, благо МультиВий до окто- дошёл…

Собственно варианты:

  1. 4+4, или квадро-8
  2. Гекс
  3. Окто “классический”

Плюсы-минусы:

  1. Почти без переделок, но стрёмно запускать…
    2-3. Раму придётся делать с нуля. Зато винты торчат вверх и садиться может почти на брюхо.

Собственно нужен совет с точки зрения живучести аппаратов разных схем.
В идеале, наверное, схема квадро-8, но хитрая, когда верхние и нижние моторы питаются от разных акков и щелчком пульта можно переключить схему между “4-верх - 4+4 - 4-низ” - тогда, по идее, при отказе части моторов аппарат хоть как-то можно посадить, а не просто уронить…

soliada:

Здравствуйте,вопрос к Гуру кодонаписания. Есть необходимость поменять местами пин D3 c D8 (вывода PD3 и PB0 на 328 Меге).
Мои ковыряния в коде результата не принесли,подозреваю что надо править во многих местах.
Буду признателен за информацию по этому вопросу.

Не уверен, это моторные пины?

Попробуй в def.h
#define MOTOR_ORDER 3,5,6,2,7,8,9,10
Поменять местами 3 и 8
(проша 1.8)
А, да, учти - там эта строчка почти два раза - для Мега и Мини, причём мини идёт раньше и там всего 6 чисел.

Morfan

Друзья, подскажите в чем может быть проблема - с прошивкой 1.7 все более менее работает, как только заливаю 1.8 p2 отключается itg3200 😃.
В гуи молчит, и по ощущениям тоже не работает… платка которую Covax на фото выше постил.

alexmos
Morfan:

как только заливаю 1.8 p2 отключается itg3200

Смотря что за платка. У меня помогла смена адреса 0x80 на 0x82 датчика на I2C шине (в 1.7 также менял ручками)

soliada
Siorinex:

Попробуй в def.h
#define MOTOR_ORDER 3,5,6,2,7,8,9,10
Поменять местами 3 и 8
(проша 1.8)
А, да, учти - там эта строчка почти два раза - для Мега и Мини, причём мини идёт раньше и там всего 6 чисел.

Немного не то имелось ввиду. Хотел поменять местами BUZZERPIN (8, OUTPUT) PORTB с PIN (3,OUTPUT) PORTD.
Вроде все поменял,т.е PORTD и PORTB,последнюю циферку в таких скобках &= ~(1<<3);чтобы соответствовало.Компилируется,зашивается,но не работает.Есть подозрения,что где-то надо еще подправить.

nemo61

Платка allinone пока прижилась на пирате. А руки чешутся… 😃
На маленьком коптере стояла плата с гириками от wii. Поставил аксель adxl335 rcopen.com/forum/f123/topic246336/2
Квадрик стал очень резким. Думаю, что надо загрубить гиры. Найти это в прошивке 1.8 не могу.
А может не в этом причина?

soliada
soliada:

Хотел поменять местами BUZZERPIN (8, OUTPUT) PORTB с PIN (3,OUTPUT) PORTD.

Вообщем ничего так и не получается.Вопрос,где в коде описывается какой пин на какой мотор,кроме строки MOTOR_ORDER?
Предполагаю,что где-то должно назначаться мотор_намбер_аут,ну или типа того.

Morfan
alexmos:

Смотря что за платка. У меня помогла смена адреса 0x80 на 0x82 датчика на I2C шине (в 1.7 также менял ручками)

Алексей спасибо! Вы были правы.

Только
#if !defined(ITG3200_ADDRESS)
// #define ITG3200_ADDRESS 0XD0
#define ITG3200_ADDRESS 0XD2
#endif

Только теперь другая фигня вылезла - похоже датчики в зеркальном режиме как бы работать стали. В 1.7 все нормально было…