Проект Мегапират на самик!

alex-ber
LeonVS:

Да по барабану, лепи какой есть, по идее даже с герцовым отлично летает, я прилепил от какого то ОСД не помню уже названия.

Фот ссылка на фотку - s019.radikal.ru/i609/1206/5f/ecfa99b4e34f.jpg
вот фотка в тексте

LeonVS

В общем как то так 😃 RX у GPS можно не припаивать, и того получаем 3 проводка, я вывел через разъем сервы, очень удобно получилось 😃

alex-ber
LeonVS:

В общем как то так 😃 RX у GPS можно не припаивать, и того получаем 3 проводка, я вывел через разъем сервы, очень удобно получилось 😃

Спасибо!!!
буду пробовать уже завтра… а на ублокс питалово отрезать или нет? Вроде не много кушает…
и еще вопрос попутно - в коде (твоем…) что потом править? Я так понимаю что протокол ГПС автоматом определяться будет…
ты в коде больше копался - Вортекс в модуль при инициализации что-то посылает? в смысле Вортекс команду на скорость и частоту обновления не дает?
Дело в том, что есть у меня хороший модуль на базе МТК, но у него не шьется еером - если пнуть командой то выдает данные на любой скорости и с любой частотой, но если потом отключить питалово и сново подключить все сбрасывается на дефолт… А дефолт не очень…

LeonVS

У меня ТХ с ГПС вообще обрезан 😃
Самуль не коптер, и 1Гц в общем то достаточно 😃 А ионистор на вывод бекапа прилепить не пробовал?

alex-ber
LeonVS:

У меня ТХ с ГПС вообще обрезан 😃
Самуль не коптер, и 1Гц в общем то достаточно 😃 А ионистор на вывод бекапа прилепить не пробовал?

Ионистор стоит…
Настройки сбрасываются когда перерыв между включениями большой… сам понимаешь - настраивать ГПС перед выездом на поле - ну совсем не в кайф…
ладно буду думать… сейчас просто пдключу и проверю - может проблеммы и нет…
Завтра спишемся - буду мучать вопросами…

Syberian

а я сегодня отлетался 😃

HDRка падла перестала писать из-за помехи, плата датчиков была приклеена на тяжелую стандартную серву для гашения вибрации (конечно же с мотором) и поэтому горизонт сходил с ума, но конечная цель достигнута.
Выявлена пара глюков в поведении и проверена работа RTH. Завтра пойду летать миссии.

LeonVS

Поздравляю с успешным облетом 😃
Походу вибрации не дают спокойно жить и кватернионам на СТМ… 😃

Syberian

да там бесполезно бороться… голая плата датчиков весит пару грамм, а проп воет жутко, вибрации в звуковом диапазоне, реально горизонт на месте плавать начинает. Утяжелил - все пропало.

LeonVS

Я в аурдине плату датчиков прямо к основной плате на термоклей прифигачил, вроде все тип топ, не считая уплыва в виражах…
Пытаюсь разобраться с твоим МАРГ, он библиотеку IMU вообще не юзает походу… Все идет напрямую с датчиков? Так как компас глючит пытаюсь вклячить курс с ГПС, чтот не въезжаю как сие реализовать… Пробовал зделать как в ДЦМ библиотеке:

yaw = -atan2(2*q1*q2+2*q0*q3,2*q0*q0+2*q1*q1-1);
cos_psi_err = cos(ToRad(g_gps->ground_course/100.0) - yaw);
sin_psi_err = sin(ToRad(g_gps->ground_course/100.0) - yaw);
rot_mat.a.x = cos_psi_err;
rot_mat.a.y = -sin_psi_err;
rot_mat.b.x = sin_psi_err;
rot_mat.b.y = cos_psi_err;
rot_mat.a.z = 0;
rot_mat.b.z = 0;
rot_mat.c.x = 0;
rot_mat.c.y = 0;
rot_mat.c.z = 1.0;
dcm_matrix = rot_mat * dcm_matrix; /// Не въеду на что мне умножить матрицу rot_mat в МАРГе???
Если есть мысли, наведи на путь истинный 😃?

Syberian

уууу матан!!! я пас 😃 у мене тройка в дипломе по вышке 😉
навскидку: матрица - это 3 трехмерных вектора, а кват - 1 четырехмерный. Втупую не перемножишь. Тем более, там какой-то алгоритм gradient decent применен, формулы на пол-страницы.
Попробуй лучше перевести курс в XYZ якобы от магнетометра, опираясь на текущие roll pitch, и потом его же и подай штатно в марг.
Примерно так: если roll-pitch равны 0, mX и mY - это синус и косинус жпс-курса. Если roll,допустим, 90 грд, вместо mX будет mZ.
Короче, куча синусов и косинусов.
А вообще, я бы зобил. Нормально компас работает, если калибровать нормально.

LeonVS
Syberian:

А вообще, я бы зобил. Нормально компас работает, если калибровать нормально.

Там даже проблема немного в другом… Допустим при боковом ветре самулю чтоб лететь на точку надо брать опережение и лететь под углом, если курс берем просто с ГПС никаких проблем самуль смотрит допустим на 30 градусов в сторону ветра, а летит четко по линии, если же АП ориентируется по компасу он будет плавать туды сюды пытаясь повернуть нос на точку его будет сносить и тд тп… В общем обработка курса с компасом гораздо запарней 😃

Syberian

Имея 4 параметра: жпс курс, жпс скорость, компас и аирспид ты вполне можешь вычислить куда тебя несет, с какой скоростью, каким боком и куда при этом нужно парировать, чтобы не сорваться и еще и по прямой линии к цели валить.

LeonVS

Вот как раз с ЖПС курсом и засадко выходит в МАРГе:) Хочу еще раз с твоим МАРГом поиграться, кручения в руке по сравнению с ДЦМ дают гораздо лучшие результаты по уплыву… Можно конечно извратиться подрубив еще и ДЦМ, что то таскать от туда что то от туда… и в общем то мега даже сие тянет, но как то через ж получается 😃

alex-ber

Вообщем сегодня перепаял ГПС (СПАСИБО Леониду…).
проверил пока на земле (у нас верер и дождь…) - походил с самиком вокруг домов. По логу точность позиции составила 2 метра… ГПС модуль работает на частоте 5 Гц (хотя может и 10…) и скорость передачи 9600 по умолчанию (с толчка может и 57600 давать…).
Вопрос: забить и так попробовать или мудрить с модулем?
если в коде (Ежеужа) при старте в модуль кинуть МТК - строчку, модуль переключится в нужный режим… тока как это сделать я не знаю… В смысле строчку я найду (гдето записана) но как сделать чтоб Вортекс посылку отправил…

LeonVS

Полетай так не парься, сперва в ручном режиме, садишься смотришь логи, самуль должен летать носом вперед, а не как у тебя он летал раньше, если все тип топ, пробуй РТЛ 😃
А по поводу дать пинка МТК… дык ублокс то же с пинка только запускался, надо поискать и заменить тот самый волшебный пендель на нужный для МТК 😃
Олег, а как ты меряешь перегрузку? Просто accel.z / 9.8 ? Или прогоняешь опять же через матрицу учитывающую наклоны и тд тп?

Syberian

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

Ustas69
alex-ber:

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

Я тут вчера тоже парился с GPS. Есть программа miniGPS_1.4 от MTK позволяет выставить нужный бодрейт и частоту обновления и много других параметров, запоминает. Вроде работает.
code.google.com/p/ardupirates/downloads/detail?nam… в этом архиве есть

LeonVS
Syberian:

длина вектора: корень из суммы квадратов.

Олег, а можно поподробней для особо одаренных 😉? Корень из суммы квадратов всех осей акселя?

Усе получилось, спасиб 😃 Бум наблюдать что там на борту творится, а то не въеду в тему, на пене летает все тип топ, на графите горизонт уезжает в неизвестном направлении… даже если летать плавно и печально, не пойму пока в чем дело…

LeonVS

Правда при таком раскладе не известно по какому вектору перегрузка, ну да ладно, посмотрим вообще есть ли они, а дальше бум посмотреть оси по отдельности 😃
Слух еще вопросец по МАРГ, ты вроде этим заморачивался в свое время… Как компас оставить только для оси Z, а с тангажа и крена его внияние снять?

Syberian

Сегодня отлетал по точкам. В спешке забыл пульт от HDR-ки, поэтому кина не будет. Кому нужно, тот соберет и сам убедится, а общее представление можно получить из первого видео 😉
Полетная программа была такая:

  1. взлет
  2. лететь 500м на север относительно базы на высоте 100м
  3. лететь 500м на юг относительно базы на высоте 100м
  4. повторить с п.2 еще 2 раза
  5. === конец=== (вернуться домой)

Был легкий ветерок с востока порядка 2 м/с. Все действия, кроме посадки, в авторежиме. Крейсерская скорость выбрана экономичная: 50 кмч.
Взлет халявный. Щелкнул тумблером, поставил пульт на крышу тачки, самоль плавно навалил газа, отпустил и все, попер. Длина “впп” была выбрана 300м, поэтому самоль повалил по прямой на это расстояние, набрал “взлетные” 30м высоты и перешел к основной миссии.
Дальше не было ничего особенного: тупил в очки и периодически слышал “Waypoint reached!” и звук пролетающего над головой пепелаца 😃 Когда жужжание приблизилось и стало угрожающе снижаться (вернулся), снял с крыши пульт, вырубил миссию и плааавненько сел к ногам. В стаб-моде садиться - это сказка.

Выводы:

  1. авторежимы работают, в доработке не нуждается
  2. на ветер пох, летел бочком, но в точки попадал без сноса.
  3. FrSky гамно, на 500м уже пищать начал
  4. пульт от HDR надо привязывать цепочкой

Уточненные параметры для скайволкера:
гиро 0.4
RC 0.5
рол 0.8
пич 0.8
яв 0.8

  • и реверсы у меня по всем каналам отмечены.
    Вот типа и все 😃

Хочу попробовать кросс-кантри, провесить маршрут над дорогой, и следом на тачке ехать.

LeonVS:

Корень из суммы квадратов всех осей акселя?

именно. Насколько я помню, в иксе норма 1G = 2048. В арду-хрени там вообще в попугаях. Перемудрили.

LeonVS
Syberian:

пульт от HDR надо привязывать цепочкой

😉)) Знакомо, я выставлял кнопками на самой писалке запись по таймеру когда пульт забыл 😃
Блин не ужели сложно было вывести кнопку врубающую запись…

Интересное наблюдение, если в МАРГ включить компас, уплывать при вращении в руке он начинает гораздо сильней 😃