Автопилот Arduplane - открытое ПО

suris2009

ВОПРОС по неожиданному поведению телеметрии. Имеется автопилот Holybro Pixhawk 4, minimOSD, прошивка Arduplane 4.0.9. Dragon Link управление он же модем по 433мГц, видео 1,2. Во время полёта, на расстоянии примерно 30км и высоте 1000м. показания расстояния до дома и высота на уровне дома на экране монитора видео 1,2 обнулились и стали показывать как будто бы арминг прошёл здесь и сейчас. То есть при возвращении к дому показания наоборот нарастали с нуля, а не уменьшались, а высота на 1000м стала 0 и соответственно при снижении стала уходить в минус. В то же время высота GPS, скорость воздушная и скорость GPS, пройденный путь, все показания батареи, направление на дом и показания ветра- работали правильно. Кроме того, показания телеметрии с Dragon Link на ноутбук весь полёт шли верно. И растояние домой и высота на уровне дома- всё время показывало правильно, даже когда на видеотелеметрии они обнулились. Что это было? Какие мысли?

Роман1971

MINIM OSD по моему только отображает телеметрию. У меня была проблема, когда некоторые данные отображались 0. Температура например. Причем проблема носила мигающий характер, и даже когда на экране был 0, то иногда раз там в 2-3 сек проскакивало верное значение. Но то цифры, а Вашем случае вычисляемые значения. Странно…

suris2009
Роман1971:

Странно…

Странно то что телеметрия через Dragon Link показывала верно, а через видео- нет…

Роман1971

Если бы OSD выполняла расчеты, то было бы ясно. Но она по -моему только отображает данные…

suris2009
Роман1971:

Но она по -моему только отображает данные…

Она накладывает данные mavlink на видео. И это ясно. Вопрос не про ОСД.

Shuricus

В Мавлинке нет данных под названием “расстояния до дома”. )
Надеюсь остальное понятно. Так что вопрос про ОСД.

Роман1971

Тогда просто перегруз OSD произошел. То ли по питанию, то ли еще почему то.

suris2009
Shuricus:

В Мавлинке нет данных под названием “расстояния до дома”. )
Надеюсь остальное понятно. Так что вопрос про ОСД.

Спасибо! Уже легче и менее тревожно. А как ОСД вычисляет расстояние до точки взлёта?

Shuricus

Судя по тому что вы наблюдали, оно запоминает координаты дома в момент Арма, потом вычисляет видя текущую позицию. Скорее всего мавлинк не передает координаты дома по умолчанию.

suris2009
Shuricus:

Судя по тому что вы наблюдали, оно запоминает координаты дома в момент Арма, потом вычисляет видя текущую позицию. Скорее всего мавлинк не передает координаты дома по умолчанию.

Странная ситуация была, если бы не телеметрия по управлению- очканул бы конкретно. Мысль мелькнула, что АП перегрузился… 😃

Hyperion
Роман1971:

Если бы OSD выполняла расчеты, то было бы ясно. Но она по -моему только отображает данные…

расстояние до дома вычисляет именно OSD
void GPS_distance_cm_bearing(int32_t* lat1, int32_t* lon1, int32_t* lat2, int32_t* lon2, uint32_t* dist, int32_t* bearing) {
float rads = (abs((float) * lat1) / 10000000.0) * 0.0174532925;
float dLat = *lat2 - *lat1; // difference of latitude in 1/10 000 000 degrees
float dLon = (float)(*lon2 - *lon1) * cos(rads);
*dist = sqrt(sq(dLat) + sq(dLon)) * 1.113195;
*bearing = 9000.0f + atan2(-dLat, dLon) * 5729.57795f; //Convert the output redians to 100xdeg
if (*bearing < 0) *bearing += 36000;
}
вот кусок кода
Нет в мавлинке пункта “расстояние до дома”

Роман1971

Если бы автопилот перегрузился, то координаты вычисляли на земле уже.

suris2009

В продолжении темы по телеметрии. Пересмотрев техническую запись полёта увидел, что данные обнулились ровно на 30 минуте полёта, секунда в секунду. Буквально на секунду вылетел отчёт по полёту, и всё началось с начала. Может это какие то настройки ОСД ? Но раньше такого не было. Посмотрел полёт за день до этого- всё нормально. После этого- всё нормально.

И ещё одно сейчас увидел. Обнулилось время полёта и пошло с 0:00, как буд-то бы полёт только начался.

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

Кстати по поводу итоговой таблицы полёта- не могу понять логику её появления. Иногда появляется после полёта , иногда нет. От чего зависит её появление? Может поняв это, получится понять происходящее.

Роман1971

Такое ощущение , что с OSD не все в порядке. Я бы поменял на другую и тогда бы глянул что и как. Можно micro OSD поставить, она по стабильнее будет. Таблица итоговая появляется когда DISARM происходит. Но ее не будет , если полета не было как такового. Т е просто заармили и потом disarm. Видимо есть проверка на какие-то условия. Т е если путь не нулевой например. На самом деле есть там еще один глюк, если приглядитесь. Если после полета самолет на земле и не двигается и он все еще в арминге , то общий пройденный путь бежит вперед. Медленно, но бежит. И как я понял прошивка от Night Ghost стоит?

suris2009
Роман1971:

И как я понял прошивка от Night Ghost стоит?

Да, прошивка от этого товарища.
И стрелка направления домой, кстати, тоже сбилась.
Почему не обратил внимания сразу- просто с переляку летел домой по приборам MissionPlanner.

Вот ссылка на видео:

Сбой в работе OSD примерно на 13:50 по видео и 30 минуте по полёту.

Роман1971

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

suris2009

Компас у меня выведен. А вообще я заблудиться не сильно боюсь, так как вижу своё местоположение на двух независимых картах и заранее на них рисую кратчайший путь. И даже если одну карту, допустим та которая по видеотракту вырубит, долечу по второй- по радио 433. То есть у меня параллельно работает MissionPlanner и SAS Планета.

Hyperion
suris2009:

Да, прошивка от этого товарища.

советую купить mwosd

gpp

У кого работает калибровка компаса с помощью комбинации стиков?

suris2009
Hyperion:

советую купить mwosd

У Вас есть видео как работает прошивка?