1. Уважаемый Гость! При написании вопросов в раздел форума [ArduCopter] Вопросы, проблемы и решения обязательно придерживаться шаблона сообщения, оговоренного в правилах раздела! Если сообщение не будет оформлено должным образом, то и ответ на вопрос будет с наименьшим приоритетом. Старайтесь дать максимально полную информацию по вашей проблеме, чтобы можно было более детально рассматривать вопрос!
    Скрыть объявление
  2. Уважаемый Гость! Хотите получать кэшбэк с покупок в online-магазинах? Сервис "Zozi.ru" дает такую возможность!
    Скрыть объявление
  3. Друзья! Для нашего ресурса необходим дополнительный объем пространства в облаке Dropbox. Подробнее.
    Скрыть объявление

Создание собственной прошивки: Ардукоптер на контроллере АПМ

Тема в разделе "Информация и полезные материалы по контроллеру", создана пользователем Alexey Kozin, 17 ноя 2015.

Реклама. Купить это место.
  1. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    Поскольку 3Drobotics отказались от поддержки новых версий ардукоптера для контроллера АПМ - можно сказать что теперь на этом шикарном "железе", используя хорошие части оригинального кода и убирая откровенно лишний функционал можно подчистить, подправить и получить стабильную и функциональную прошивку. Зная особенности и сложные в настройке функциональные модули - исправить и переписать. В результате будет прошивка может быть и не столь напичканая возможностями как Pixhawk но стабильная и надежная.

    Собственно первый шаг я уже сделал, вырезав из прошивки бинарные протоколы навигационных модулей и оставив универсальный NMEA освободил 20кб флеша (и есть еще ряд идей как отжать местечко. если оно понадобится). Это не означает что не будут поддерживаться модули юблокс или сирф. Все навигационные модули умеют работать в протоколе NMEA, нужно их будет только переключить.

    Прежде всего объектом всех бед в версии 3.2 был признан INAV - инерциалка. ардукоптер весьма капризен к настройке компаса, если аппарат собран слегка криворуко и компас показывает с ошибкой градусов в 15 то вместо того чтобы идти к цели по дуге соответствующей этому углу ошибки коптер делает в небе скоростные петли известные как toilet bowl тоесть туалетные воронки. Совместно с моими коллегами по резульатам наблюдений за поведением коптеров сделали предположение, что причиной непредвиденного поведения в удержании позиции может быть инерциалка, поэтому первое то было сделано - возможность ее выключения. Но как показала практика при отключении инерциалки из за разброса точек получаемых от жпс в режиме удержания позиции наблюдаются рывки.

    С тем чтобы небыло "дерготни" от разброса точек получаемых от жпс - было задумано сделать фильтр. В настоящее время фильтр сделан.. На его реализацию были затрачены годы наблюдений, один год теоретических изысканий, обсуждения с коллегами, полгода моделирования поведения различных алгоритмов, три месяца реализации и допиливания под арду.


    Навигационный фильтр.
    Фильтр называется KPEMF , расшифровывается как Parallel Estimations Median Filter
    состоит фильтр из системы прогнозирования массива вариантов местоположения текущей точки - (составляющих массив данных широты и долготы) и обычного но великолепного медианного фильтра.

    медианный фильтр готовится из алгоритма сортировки
    пример сортировки пузырьковым методом
    http://www.tigoe.com/pcomp/code/arduinowiring/42/
    void bubbleSort() {
    int out, in, swapper;
    for(out=0 ; out < numReadings; out++) { // outer loop
    for(in=out; in<(numReadings-1); in++) { // inner loop
    if( analogValues[in] > analogValues[in+1] ) { // out of order?
    // swap them:
    swapper = analogValues[in];
    analogValues [in] = analogValues[in+1];
    analogValues[in+1] = swapper;
    }​
    } }
    }
    и процедуры извлечения значения элемента оказавшегося в середине.
    в случае нечетного числа элементов
    median = analogValues[numReadings / 2];
    или среднего арифметического серединных элементов если размер массива -четный.

    но для работы этого фильтра нужен массив "параллельных" данных. Данные должны не запаздывать. В противном случае - фильтр будет запаздывающим.

    Итак для приготовления параллельных данных нужен массив навигационных приемников. Штук 10 -15... мда.. это громоздко и дороговато...
    пойдем другим путем... Создадим ряд данных прогноза позиции на основе предыдущих данных.
    к примеру при наличии истории координат за последние несколько секунд и исходя из предположения что коптер в ходе движения имеет непрерывную кривую ускорений
    при этом исходя из точки достоверного прогноза, позиции полученной исходя из округления двух последних сэмплов рассчитываем скорость характерную для этих данных и переносим проекцию перемещения относительно средней точки от среднего двух сэмплов (среднее создает задержку и требует коррекцию на S= Vt) с учетом полученной скорости
    подобным образом вычисляются прогнозы исходя из 3,4,5,6 сэмплов
    таким образом мы получаем массив "параллельных" данных из 6 прогнозов и 1 актуального значения GPS.
    К этим данным применяется медианный фильтр,
    после чего полученная медиана признается "достоверными данными" достоверные данные помещаются в массив и используются для нового цикла построения прогнозов
    собственно реализованный на ардуино алгоритм, при подаче на вход данных навигационного приемника работает примерно так:


    [​IMG]

    тоесть розовый тренд показывает "угловатые" сырые данные. желтым показан результат работы фильтра. Диаграмма указывает на то что фильтр обеспечивает сглаживание. причем при этом не происходит задержки.

    скриншот работы двух АПМ от одного приемника с фильтром и без
    noinav_gpsfilter907.jpg
    (чуть позже уберу под спойлер)

    Специфичные настройки фильтра kpmf.
    в полном списке параметров
    inav_tc_xy = 0 - отключение инерциалки по широте и долготе. не пытайтесь делать тоже самое на других прошивках, значение ноль применимо только к этой версии прошивки.
    GPS_navfilterPE =9 число паралельных пронозов - размер массива. допустимый зиапазон значений 3-19 значение по умолчанию 9. чем больше число прогнозов тем сильнее фильтрация, но больше латентность к ускорениям системы.
    GPS_navfilterSPD=5 число прогнозов при вычислении скорости. скорость используется для приращения расстояния при коррекции прогноза на время задержки. Диапазон 3-9 чем выше значение тем лучше фильтрация но хуже прогноз при ускорениях
    Отключение KPEMF
    отключение может понадобиться для сравнительного анализа, для просмотра сырых данных, поступающих с навигационного приемника.
    для отключения фильтра: GPS_navfilterPE =0

    Что мы имеем сейчас:
    собрана прошивка под апм2, выполнены первые облеты в ходе которых были выявлены приоритетные задачи и интересные комбинации параметров настройки.

    концепция высвобождения места во флеш памяти
    1. делим прошивку на две субверсии, функционал:
    тестовая
    • терминал
    • логирование всего
    • автотюн

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


    Новые фичи.
    После получения стабильной версии дополним функционал наиболее интересными и не затратными с точки зрения расхода флешь памяти новинками от свежих версий ардукоптера 3.3 и выше
    пока на заметке:a) PID scaling for battery voltage (disabled by default, see MOT_THST_BAT_ parameters)

    ps. все описанное выше не значит что я забрасываю проект f4by.
    все лучшее будет перенесено в наш 32 битный контроллер.
    На Pixhawk переносить не будем.
    по вопросу получения актуальной версии прошивки для участия в тестировании и обсуждении пишите на kozin@mail.ru

    Актуальная версия прошивки: 015а

    Актуальный, обновляемый в шапке файл параметров для тестирования:

    https://www.dropbox.com/s/ii5b6rmep8i3j6e/tstparam.rar?dl=0
    архив содержит файл параметров который можно загрузить через мишен планнер вкладка full parameters tree -> compare
    и файл с описанием для чего требуется тот или иной параметр изменить
    LOITER_LAT_D,0.001 -резкость разгона и торможения при борьбе с погодными условиями и воронкой за точность удержания позиции
    LOITER_LON_D,0.001 -тоже самое для долготы должен быть идентичным по умолчанию у ардукоптера значение 0

    WPNAV_ACCEL, 150 -допустимые ускорения 150 означает полтора метра в секунду за секунду. по умолчанию 100 что значит 1 метр в секунду за секунду


    LOITER_LAT_IMAX,40 -максимальный размер накапливаемой ошибки от внешних факторов, при ошибке компаса большие значения способствует возникновению воронки
    LOITER_LON_IMAX,40 -аналогичное по долготе по умолчанию 1000

    LOITER_LAT_P,1 -пропорциональный коэфициент между требуемым перемещением для удержания позиции и углом наклона рамы для этого перемещения
    LOITER_LON_P,1 -аналогичное по долготе по умолчанию 1. При вялости в лоитере возможно потребуется увеличить.

    INAV_GPS_XY_SPD, 5 -интесивность восстановления инерциальной скорости данными от жпс приемника, большие значения приводят к большему доверию жпс
    INAV_GPS_XY_POS, 8 -интенсивность восстановления инерциальной позиции данными от жпс приемника, большие значения приводят к большему доверию жпс

    INAV_GPS_DELAY, 3 - компенсация времени задержки выдачи координат жпс приемником в десятых долях секунды диапазон 1-5

    INS_MPU6K_FILTER, 10 -встроенная фильтрация вибраций силами процессора ориентации, значение по умолчанию 0,
    внимание! при значении 10 требуется перенастройка пидов стабилизации летательного аппарата. Если у вас нет возможности перенастроить пиды стабилизации оставьте этот параметр соотвествующим вашим пидам
     
    Последнее редактирование: 27 апр 2016
    Hanter, Xichnik55, raefa и ещё 1-му нравится это.
  2. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    Ух ты!!!!!!!
    Вот что крест животворящий делает! Вот что видео полетов дает! КРУТО!!!!!
    Теперь вопрос, если я в поле столкнулся с подобным, мне магнитуду крутить в плюс или в минус?
    (общие меры по исправлению компаса не отменяются)
     
  3. raefa

    raefa Главнокомандующий Команда форума

    Регистрация:
    3 янв 2015
    Сообщения:
    4.324
    Город:
    Zhigulevsk
    Имя:
    Александр
    Эх видимо так и придется поставить 3.2.1, посмотреть, как плохо она работает штоль штатно?
    А потом тогда, Лёш, твою прошивку потестить?
    А просто так ничего не скажу - надо прочувствовать наверно своим полетом в сравнении.
    Тимур! ;):rolleyes: Нафиг коптер, металлоискатель надо! Ты догадывался об аномалиях, а они у вас видимо везде!
     
    5yoda5 нравится это.
  4. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    Да, конечно тем более это уже не первая непредсказуемая альфа, после полетов Тимура уже появилась некоторая уверенность
    Саш , если соберешься скинь мне свой файл параметров на проверку, чтобы не ошибиться
    зы. желательно пока летать не с юблоксом а медиатеком. у медиатека минимальная задержка данных и поэтому поведение может в корне отличаться.
    Настройку юблокса при инициализации я тоже сделаю, но чуть позже
    --- Сообщения объединены, 12 дек 2015 ---
    бортовое видео, особенно с осд классная штука для анализа.
    к примеру смотришь логи - всю дорогу хеадинг 240 ну может плюсминус градус
    смотришь запись полета по осд 240 а фактически налево пойдешь - в одну сторону ухеодит направо - в другую
    --- Сообщения объединены, 12 дек 2015 ---
    цитаты из интернета
    Железо, кобальт и никель обладают ферромагнетизмом, т. е. особенно высокой магнитной восприимчивостью

    про Реж
    В 1930-х годах здесь открыли крупное месторождение никелевых руд. На смену самоцветным копям пришли никелевые карьеры. Добытый никель отправляли на металлургический завод в Реж. Первая выплавка никеля в Реже состоялась 13 ноября 1936 года. Черные никелевые отвалы сейчас прекрасно видны на окраине Режа. Но и при добыче никеля время от времени находили дорогие минералы редкой красоты. При достаточном везении можно найти их здесь и сейчас. Надо полагать, что самоцветов здесь еще немало. Разработку Липовского месторождения силикатно-никелевых руд прекратили в 1991 году. Источник: http://www.catalogmineralov.ru/deposit/lipovka/

    имхо "знай и люби свой край родной" приобретает и практический смысл
     
    Последнее редактирование: 12 дек 2015
    5yoda5 и raefa нравится это.
  5. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    Чисто технически под домом культуры где-то находится "бомбарь". Но в том месте где летаю, там его нет. Значит что-то другое фонит. Эхехех....
    Насчет кладов не знаю конечно (даешь прошивку-кладоискатель для коптеров), но техногенность наводок очень даже возможна. Между домом культуры и местом полетов стоит маленькая трансформаторная подстанция, и как к ней под землей идет кабель - одной архитектуре известно (у них есть секретная часть с 500 картами, я у них бывал как-то, там нарисованы все кабели и все трубы). Что касается баржи.... У нас река давно уже не судоходная (поначалу какие-то пароходики плавали, в хрониках есть упоминание, но более 70 лет уже ничего крупнее моторных лодок - не ползает). Пока зима - я могу подобрать себе местечко и на пруду (зимой лёд стоит с ноября до апреля). Только неудобно, что машина будет далековато.
    На дне есть конечно утонувший металл (трактор какой-нибудь, машина или мотоцикл), но я думаю такого влияния быть не должно. А тут же.... Я уже готов был выкинуть этот компас. Вроде неплохой, масляный (или имитация масляного), даже какие-то приблуды есть для хождения по азимуту (рисочки всякие, линза, щель для прицеливания), но тут врал безбожно. Как раз по часовой стрелке градусов на 30 показывал. Но я-то знаю, где у нас север!
    Можно снять и бортовое видео. Мне его даже проще снимать, чем держа камеру и работая пультом одновременно. Только возможно придется побороться с заглючившим ЕЕПРОМом. Или полностью переделать коптер, поставить туда белую коробочку? ;)
    Ага. А я думал, что никель - невосприимчив к магниту.... Мда.
    Карьеры находятся в другом месте, в городе ничего не добывают (конечно это не исключает возможность залегания слабого рудного тела)
    :) край мне немного не родной :) Я родился в Узбекистане (Андижан), какое-то время жил в Копейске (Челябинкая обл), а потом отцу ДАЛИ квартиру тут. С тех пор и осели в Реже (с 1984 года). Я успел поучиться в 4 школах. Вот такая биография :)
     
    raefa нравится это.
  6. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    у соседа по даче есть площадка при взлете с которой симпл поворачивается на 90 градусов. прикалываемся что там наверное зарыт клад, но копать лень
     
  7. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    Сидел, ковырялся с коптером. Перетащил приемник РУ ниже, остальное пока решил не трогать. Посмотрел на фотки - скрин с видео и скрин МП с того полета, почесал репу - пришел к мнению, что мне компас надо довернуть против часовой стрелки. Решил повернуть и зафиксировать пластиковую крышку от проворота скотчем (тестовый коптер - фига ли, можно и на соплях). Потом надо перекалиброваться будет в поле и снова попробовать полетать.
    Раз зашел разговор про запись с ОСД, подниму вопрос здесь.
    У меня продолжается секас с параметрами SR0. Видя, что координаты коптера определены (в МП координаты написаны и на карте позиционируется), а на ОСД нету (нулики), и что параметры SR0_EXTRA1 и SR0_EXTRA2 с выставленных мною на 2 переключаются на 6 ( хотя за GPS координаты отвечает другой параметр SR1_EXT_STAT, 2 ( 2hz for waypoints, GPS raw, fence data, current waypoint, etc)) - появилась мысль.
    Алексей, я помню, что при старте прошивки вроде бы программируется модуль GPS на быстрое обновление. Не связано ли это случайно с параметрами SR0 ? И вопрос номер два. Может у меня на ОСД нету координат из-за того, что частота обновления GPS не совпадает с частотой обновления параметра? (я ставлю частоту обновления параметра 2 герца).
    Ага, и вопрос номер три! Я говорил про ошибку "Alt disparity". Что я увидел на ОСД - при включении высота по барометру (HA) сначала на нуле, а потом начинает дрейфовать до -30 метров (минус 30 метров). Может АрдуКоптеровцы всё-таки что-то испортили инерциалкой в версии 3.2 ?
     
  8. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    если не не врет пространственное воображение, если повренешь против часовой стрелки то будет показывать 340 градусов еще дальше влево.
    имхо надо повернуть по часовой на 20 градусов (и то только для условий конкретного полета с конкретным курсом)
    при этом если повернешь на 20 градусов по часовой и поставишь коптер ка на видео покжет в мишен планере честные реальные 320 градусов....

    хотя может и врет мне мое воображение

    если смотрим на скрин видео то при зафиксированном компасе проворачиваем нос коптера до тех пор пока он не станет смотреть при этом положении компаса на вышку, зеленая линия, выходит верно, компас поворачиваем влево


    --- Сообщения объединены, 12 дек 2015 ---
    это несвязанные вещи
    --- Сообщения объединены, 12 дек 2015 ---
    это дома сквозняки , вентиляция, хлопанье дверьми, форточками
    вобщем давление прыгает. на улице тоже бывает когда непогода
     
    Последнее редактирование: 12 дек 2015
    5yoda5 нравится это.
  9. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    На тридцать метров высоты? Причем ладно бы один раз (случайно), а тут постоянно. Включаю, проходит высота начинает падать, проходит минуты три и уже минус 30 метров... Посмотрю ещё как на улице будет.
    Если звёзды встанут как надо - завтра съезжу в поле (в другое место), откалибруюсь заново и попробую при взлете поставить носом на какой-нибудь ориентир. Или по компасу на север (нет, там на север неудобно, лучше поставлю как можно точнее на юг).
    Буду копать дальше...
     
  10. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    у меня и осд нормально работает , не могу достичь чтобы не показывало горизонт. и высота никуда не плывет...
    приносили один апм на тест -
    кладешь кверхногами - высота меняется. оказалось неверно аксель калиброван
    перекалибровал как положено аккуратно и на плоскости и все стало нормуль
    --- Сообщения объединены, 12 дек 2015 ---
    osd.jpg
    прямо сейчас взял новую осдшку купленную за 100р на хобикинге
    залил шрифты, прошивку, свой конфиг подключил к апм с обсуждаемой тут прошивой - все работает

    собрал 13 прошивку , но она интересна только мне,
    задал 15 градусов угол минимального восхождения для жпс - посылается управляющая команда для жпс. Но прошивки для жпс с поддержкой этого функционала еще пока нет ниукого кроме как у меня... поэтому не публикую.
    к тому же ну эти суеверия...

    в 014 отключу терминал и включу позишен холд мод.
    --- Сообщения объединены, 12 дек 2015 ---
    sr0 отвечают за интенсивность выдачи данных в сериал 0 - т.е. через юсби.
    sr1 за сериал1 т.е за порт телеметрии.
    кстати при питании от юсб осд работать не будет
     
    Последнее редактирование: 12 дек 2015
  11. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    Разобрался. Во всем был виноват МП!
    Подробности позже, тороплюсь.
     
    Alexey Kozin нравится это.
  12. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    и даже с компасом?
     
  13. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    Нет, не с компасом.
    Излагаю подробнее. Вчера ковырялся с коптером, исправлял накопившиеся косяки. Сначала разбирался с ОСД. Долго не мог понять, почему у меня два параметра соскакивают на шестёрки, и никак не исправляются. Я их меняю, тыкаю Врайт, вроде всё нормально, а потом (допустим при следующем коннекте) они опять на 6. Я уже начал грешить на мутантский полетный контроллер, что он не запоминает параметры еепром. Я пробовал, накатывал старую версию прошивки, заходит в терминал, запускал очистку еепром (потом уже дошло, что в текущей версии вроде включен терминал :) ) - ничего. Я потом даже взял АРМ в белой коробочке, проделал с ним тоже самое - результат однофигственный. Значит контроллер не при чем.
    И вот как раз на всякие такие непонятные случаи, у меня есть в другой папке старая версия МП. Запустил её, залил текущую прошивку, залил параметры, ииии о чудо! ОСД заработала! Стали отображаться все параметры (у меня координаты не показывались). В общем, свежая версия МП некорректно работает с некоторыми параметрами на квладке фулл параметр лист.

    Теперь по компасу. вчера я внимательно посмотрел на коптер и на приложенное фото (скрины со стрелочками). Пришел вот к какому мнению - похоже у меня слегка криво установлен полетный контроллер. Судя по всему, у меня не совпадает перед рамы с передом полетного контроллера, разница градусов 5, не больше. А компас тоже слегка повернут. У меня на корпусе есть отметка в каком положении компас стоит прямо относительно полетного контроллера (делалась на глаз, без каких либо приборов).
    Так вот, во всех моих тестовых полетах - компас был слегка повернут относительно нормали на ~5-10 градусов по часовой стрелке (смотрим сверху на коптер). Но именно в этом положении он был откалиброван (и компас и аксель), и так я летал всё время. А коптер всегда крутился по часовой стрелке (унитаз в лоитере).
    Вчера, учитывая все картинки, я повернул коптер против часовой стрелки относительно "нормали" на те же ~5 градусов (то есть в сумме 10-15 градусов против часовой стрелки). Забегая вперед, скажу что коптер крутился против часовой стрелки (калибровал в этом положении компаса)
    Как назло - я сегодня забыл DVR !!!! (чтоб меня...) Взял телефон, включил на запись видео, и положил в ФПВ-шлем. Одновременно пытался записать и сам полет "со стороны" на ту же SJ. Но самый первый полет, который записал на SJ - получился без ОСД (потому что крутился переключения экранов была в другом положении, а я после взлета не проверил). Всё против меня.
    Но потом я всё - таки снял коптер на обе камеры (ОСД и взгляд со стороны).
    Перед всеми полетами откалибровал аксель, откалибровал компас и сделал компассмот.
    Потом выключил все камеры и пытался летать, подбирая магнитуду с крутилки. Изменения поставил 10 градусов (от 0 до 1.0). Потестил на разных положениях крутилки, и мне показалось следующее (спорно, нужно проверять, но мне так показалось) - этот параметр на лету не применяется. Если посадить, дизарм/арм, тогда применяется. Далее. Подбором магнитуды изменяется "дурость в унитазе" - то есть насколько резко он летает и какие большие круги совершает. Но раскрутку в другую сторону я получить не смог. (зато сегодня унитаз был против часовой стрелки, в отличие от других полетов)

    Сегодняшние мои выводы (не аксиомы и не доказанные факты, пока только предположения):
    0. Имеющийся у меня туристический компас ВЫКИНУТЬ!!!!! Сегодня он не то чтобы показывал четко неправильно, он просто показывал что хотел. На любую сторону света. Причем он не как размагниченный, он магнитился к сторонам света.....или к рандомной точке.
    1. версия МП должна быть одинакова и она должна корректно работать со всеми параметрами.
    2. Поставлю компас на "нормаль" - круги должны либо прекратиться, либо быть незначительными. Сопутствующий вопрос - делать ли перекалибровку (у меня сегодня офсеты были другие), думаю нужно перекалибровать компас после прокрутки.
    3. Магнитуда влияет на поведение в унитазе, но не влияет на направление раскрутки.

    Сейчас я убегаю на тренировку, вечером могу выложить видео и логи. Вопрос, что выкладывать.
    У меня есть:
    1. Полет, снятый только на SJ сразу после настройки и калибровки компаса. С логом (выбрать из кучи надо, но это возможно).
    2. Полет снятый на SJ, на телефон (ОСД) и с логом.
    3. Куча маленьких полетов с подбором магнитуды.
    Что выкладывать?
     
    raefa и Alexey Kozin нравится это.
  14. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    как это? может случайные факторы?
    вот это очень интересно, по идее и деклинейшен должен таже влиять как и поворот компаса,
    но физический поворот требует перекалибровки. может деклинейшен мало менялся?
    проверял куда смотрит курс коптера при прицеливании?

    вобщем нужно все для того чтобы можно было проверять
     
  15. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    Случайные факторы в виде ветра конечно нельзя исключать, но раскрутка всегда была в одну сторону. Когда дул ветер (как правило порывом), коптер относило от точки центра лоитера, он начинал унитазить с амплитудой равной выносу ветром от центра.
    Возможно и мало.
    Как я думаю:
    у официалов написано, если поставить от нуля до 3.0 - тогда магнитуда будет меняться от -30 до +30 градусов. Но это магнитуда. Как её увязать с разворотом компаса - я не знаю.
    У меня было настроено от 0 до 1.0, то есть изменение от -10 до +10 градусов магнитуды (возможно маленький диапазон). Когда я крутил в минус - реакция была более выраженной, чем когда я крутил в плюс.
    Но по субъективному мнению (возможно под влиянием предвзятости) - самое спокойное поведение было с крутилкой около нуля (то есть с "моей" магнитудой.

    Большие измененния магнитуды изменяют характер полета (как мне показалось), но не являются аналогом прокрутки компаса.

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

    Представим, что я взлетел, покрутил магнитуду. Когда она применяется? Перед полетом? Во время полета? (мне показалось - перед полетом и фиксируется на весь полет) Что при этом запишелся в логе - стартовое значение? Тогда не имеет смысл смотреть на траекторию полета.
    Если приладить радиомодем и писать Тлог полета - что он даст?
    Нужно придумать методику дальнейшего тестирования, чтобы не получилось как у меня сегодня (скажу честно - бестолково).

    Пока я вижу однозначно, что мне нужно:
    1. Поставить компас на "нормаль".
    2. Откалиброваться, сделать компассмот.
    3. Выставить высчитанную магнитуду, оценить раскрутку (в какую сторону будет унитаз в лоитере)
    4. Поставить магнитуду на крутилку, с диапазоном, как советовали официалы (от 0 до 3.0).
    5. ...........?
    ................
    ?. профит :)
     
  16. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    скажу честно незнаю, надо смотреть но можно ковырнуть и скорее всего можно сделать чтобы она менялась динамически, но надо переписывать прошиву.

    целый день изучал логи, сделал конвертер логов на аксессе который сливает разные данные в одну таблицу
    пытался понять как можно вычислить ошибку компаса, на каих скоростях, какие параметры анализировать чтобы сопоставить с жпс курсом,
    но пока буксую на одном месте не хватает параметров nav_bearing target_bearing
    параметры не логируются, но передаются по телеметрии, если бы был тлог - возможно помогло бы открыть многое
    но если с модемами напряг - я могу в следующей версии прошивке сделать дополнительные данные в флэш логе.
    если пока сложности с регулировкой крутилкой деклинейшена - предлагаю поместить жпс на пластинку которую возможно будет оперативно подвернуть
    какой характер носила раскрутка в лоитере? расходящаяся или сходящаяся?
    в следующей версии включить position hold? это типа лоитера. пока стик не трогаешь - лоитер, когда тронул - альтхолд. т.е. без ограничения скорости

    вижу цель по логам выявить параметр который позволит однозначно делать вывод что компас врет и куда врет, автоматически программно корректировть "положение компаса" в пределах небольшого значения.
    профит - не нужно будет заниматься с точной подгонкой компаса впредь

    но одна очень большая вещь уже сделана - воронка развернута а это оставляет надежду что программный поворот компаса возможно поможет решить проблему
    вторая - что поврот на 15 градусов дает обратный эффект, тоесть мы имеем рамки
     
    Последнее редактирование: 13 дек 2015
  17. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    Нет, не напряг. Один вечер поколдую над коптером (нужно немного попаять, нормально закрепить), и поставлю на Фрэнка модемы. Возможно немного глюков по ходу победить придется, но пока не вижу ничего непреодолимого. Сегодня вечером постараюсь летнуть (если снега не будет) заново, но уже с записью ОСД. Сразу после работы поставлю компас в позицию "нормаль", и поеду на новое полетное место - буду летать в тех же краях, но на замерзшей речке, немного северо-восточнее от старого места. На месте откалибруюсь заново, попробую навестись на сотовую вышку и летнуть по возможности не трогая руддер (надо мертвую зону что ли на стике настроить, а то в перчатках немного грубовато управляется). Сегодня магнитуду крутить не буду, пусть будет статичная. По результатам выложу видео с ОСД, видео со стороны, лог полета.
    Если вечером (читай-ночью) прикручу модемы успешно, тогда в дальнейшем появятся полноценные Тлоги.
    Сложностей с регулировкой деклинейшена тоже вроде не вижу, кроме того что я выбрал не тот диапазон. Но сегодня вечером полетаю пока без регулировки магнитуды (шажок назад).
    Дай бог памяти..... (для этого конечно нужно выкладывать всё). При повороте крутилки на максимум против часовой стрелки (вроде в минус, если у меня канал не инвертирован - надо проверить кстати) - коптер был более "дикий", воронка была более широкой и явно расходящейся. При повороте на максимум в плюс - воронка была тоже расходящейся, но не настолько выраженной, коптер был не таким "диким".
    Кстати, пришла в голову мысль, каналы-то ведь логгируются, нам нужно всего лишь посмотреть канал номер 6.
    Вроде посхолд - это тот же стабилайз (такой же дикий по газу и по направлениям), но с "замиранием" в точке если не трогаешь стик? Я могу попробовать его оттестировать (но надо быть более готовым).
    Это я понимаю, у меня под вопросом был не сам профит, а только под каким номером. Причем профитом в данном случае является не конечная цель, а снятие достаточных для анализа данных. И мне пока не ясно как дальше тестировать, чтобы было достаточно данных для анализа.
    Сама конечная цель мне ясна (бОльшая вольность при обращении с компасом).
    Про модемы понял, если всё будет хорошо, завтрашние полеты будут с Тлогом.
     
    Alexey Kozin нравится это.
  18. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    позишен холд прошивки 3.2 (в сборке 12 выключен) это помесь альтхолда и лоитера
    пока нетрогаешь стики -лоитер, как только тронул-альтхолд, безо всяких лимитов ускоренй
     
  19. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    А по высоте - тот же альтхолд? Я думал, этот режим ближе к стабу. Можно его и включить, вдруг его поведение от "классического" лоитера отличается. Потестим. Опаснее чуть-чуть, но я справлюсь.

    Только сначала надо с компасом доразобраться.

    ....
    Глянул официалов:
    Действительно, как альтхолд и лоитер.
     
  20. Alexey Kozin

    Alexey Kozin APM Guru Команда форума

    Регистрация:
    26 янв 2015
    Сообщения:
    927
    Город:
    Москва
    Имя:
    Алексей Козин
    поговорив про ошибку курса из телеметрии поймал себя на мысли что есть еще вариант ее поймать на чуйке самой инерциалки...
    польза от "поговорить"
    --- Сообщения объединены, 14 дек 2015 ---
    да, по высоте держит, многие этт режим путают со старым "позишен" который из себя представлял виртуальный лифт , удержание по позиции при высоте вручную
     
  21. 5yoda5

    5yoda5 Master Команда форума

    Регистрация:
    29 янв 2015
    Сообщения:
    7.137
    Город:
    Реж
    Имя:
    Тимур
    Иногда полезно кому-то что-то объяснять. (в данном случае - мне) Пока человеку объясняешь - у самого в голове многое проясняется. Вот и сейчас, я ничего не понял о чем речь, но пока общались на тему компаса - пришла мысль. Этим и полезно общение, не всё логи и видосики выкладывать, надо немного и за жизнь поговорить и планы обсудить - "куда дальше двигаемся". ;)
     
    Alexey Kozin нравится это.
Реклама. Купить это место.