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

alexeykozin
Alex135:

это не только софта касается, описаны некоторые подводные камни. Было время у меня выдавало ошибку, нашел описание как победить победил. Теперь так пробую не выходит.

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

посмотрите еще этот параметр

ardupilot.org/plane/docs/parameters.html#log-backe…

по идее по дефолту должен быть 1 File

Роман1971

Чем глубже в лес , тем упитаннее партизаны. Загрузил прошивку для коптера и все пашет. Опа! А в самолетной - хрен! Причем BITMASK для коптера стоит по умолчанию 830 а для самолета 65535. А что касается параметра LOG_BACKEND_TYPE: - 1 стоит.

Вообщем понятно в чем дело. Осталось прошивку выбрать. Вроде предыдущая ничего была…

Роман1971

Столкнулся еще с одним глюком. По Mavlink Message на Minim OSD лезет надпись DISARAMED постоянно. Хотя естественно все за армено и летит нормально. Причем только на OSD лезет. По телеметрии - нет. Где в логах глянуть что хоть вызывает это фигню?

Glinco

А другие осд есть попробовать подключить?

Если в пакете правильное состояние идет, то это глюки ОСД.

alexeykozin
Роман1971:

Где в логах глянуть что хоть вызывает это фигню?

начать надо с вопроса что за прошивка и версия для миним осд используется

Роман1971:

По Mavlink Message на Minim OSD лезет надпись DISARAMED постоянно

в мавлинке армед/дизармед это не тектовая строка а бит в сообщении
…blogspot.com/…/checking-mavhttpswwwbloggercomblog…

Роман1971

Стояла стандартная для MINIMOSD , но перепрошил от NIGHT-Ghost на последнию для Mavlink. У меня еще там проблемы с отображением высоты были, переодически высота отображалась нереальная - 100 с лишним метров. Но это видимо известная ошибка. Сейчас гляну как новая работать будет.

alexeykozin

с высотой стандартная трабла
но трабла в голове наших “пилотов”
высота бывает
“над уровнем моря”

“относительная барометрическая” (у нас относительно точки взлета, при арминге записывается давление в точке взлета, в авиации относительно кромки впп по средствам радиосвязи пилот получает давление в метеосводке)
“высота относительно рельефа” (у нас используют лидар, в авиации используется радиовысотомер)

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

Роман1971

Я знаю про все это там и настроено. Проблема в том, что все отображается ПРАВИЛЬНО и проблем нет, но в какой-то момент начинает отображаться полная ерунда. Это происходит не часто , но происходит. В настройках самой OSD стоит Home Altitude, в APM указан бародатчик, но высота которая проскакивает иногда похоже это высота над уровнем моря, что с GPS берется. И еще один прикол. У меня две OSD, так одна прошилась под NIGHT-Ghost вообще нопроблем, а вторая наотрез отказалась. Хотя стандартной прошивкой все там отлично идет.

Роман1971

Короче решил проблему, но частично. И так все по -порядку. Прошил OSD новой прошивкой MINIM OSD Extra. Проблема на этой OSD ушла, но в момент включения показывает все равно высоту над уровнем моря. После арминга - все отлично. Контроллер PIXHAWK. Вторая OSD (стоит на коптере с APM 2.8) прошивку Extа принимать наотрез отказалась. Поэтому стоит стандартная 20 версии кажется, но самая последняя с сайта. Там в принципе все пашет, но … При включении показывает обычно небольшую высоту, ну например метра 2-4. В момент арминга высота скидывается на 0 и дальше в полете все адекватно. Но высота на OSD отображается метра на 4 больше, чем на экране планшета с телеметрией. При этом на экране планшета высота более точная, практически с реальной расходится может на 1 метр, что нормально думаю. Контроллер APM 2.8 стоит, MINIM OSD ver1.1. Конечно может оно и не критично, но не могу понять почему так отличаются данные по высоте на OSD и по телеметрии?

alexeykozin
Роман1971:

Прошил OSD новой прошивкой MINIM OSD Extra. Проблема на этой OSD ушла, но в момент включения показывает все равно высоту над уровнем моря. После арминга - все отлично. Контроллер PIXHAWK

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

Роман1971

Так я и написал что в данном случае проблем то нет. А вот почему с APM такая разница между показаниями OSD и данными с телеметрии - не ясно.

egunak95

А кто использовал цифровой датчик скорости на чипе 4525DO его можно подключить к АПМ 2.6? В листе параметров есть варианты для аналога и цифры, однако не написано к каким ПК подходит. В библиотеке кода цифровой датчик написан для Атмеги а как на практике работает?

alexeykozin
egunak95:

А кто использовал цифровой датчик скорости на чипе 4525DO его можно подключить к АПМ 2.6? В листе параметров есть варианты для аналога и цифры, однако не написано к каким ПК подходит. В библиотеке кода цифровой датчик написан для Атмеги а как на практике работает?

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

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

Роман1971:

Так я и написал что в данном случае проблем то нет. А вот почему с APM такая разница между показаниями OSD и данными с телеметрии - не ясно.

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

alexeykozin

по поводу дигитал аирспида в апм2 вроде как не вырезали 3.4,

поддержка до этого была
тут разделяют драйвера аирспида:

github.com/…/291369db7fa8938249fd343fa9768e4c601a6…

this gives us separate backends for PX4, analog and I2C. This allows the MS airspeed sensor to work on Linux, and it should work on APM2 as well.

в прошивке ардуплейн 3.4
отдельный файл для поддержки цифродатчика в апм
github.com/ArduPilot/ardupilot/…/AP_Airspeed.h#L19…

Glinco

“его выход пропорционален питанию”.
Если напряжение стабильно, но ниже нормы, то скорость подтянется к гпс-ной автокалибровкой.
А на сколько должно колебаться напряжение, чтобы воздушная скорость плясала ±5 км/ч?

alexeykozin

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

если прикинуть грубо (я не вспомню сейчас точно типовой диапазон) то влияние питание на результат можно оценить так пусть при диапазоне выхода с датчика напряжение меняется от 1 до 4 вольт при изменении дифф давления свойственного скоростям от 0 до 60мс , при этом на каждый вольт будет 15мс, при этом если с учетом падения на встроенном диоде, возможных мощных потребителях в виде телеметрии и осд напряжение при использовании стокового бп может меняться в пределах 0,5волт при этом эти перепады будут вносить погрешность в измерение порядка 7,5 мс в сек.
помимо фактора электропитания есть еще общие связанные с несовершенством конструкции трубки и сенсора, поэтому те проблемы что можно минимизировать с минимальными усилиями- лучше заранее устранить

Glinco

Я имел ввиду наличие постоянной константной просадки, например до 4.9 в., тогда автокалибровка его учтет.
Пауэр модуль не надо юзать как источник питания, и тогда не будет просадок. Бороться с ним - только время терять.

Tarrok

Всем доброго, подскажите новичку один момент. Настраиваю апм мини 3.1. Откалибровал аксель, жпс еще не ставил. В стабе элероны отрабатывают, но отрабатывают в инверте. Пробовал комбинацию реверсов на аппе и в МП, не то. Не сервы же переставлять в самом деле…

Роман1971

Правильность установки как раз смотрится по режиvу FBWA как пример. Т е там, где автопилот должен отрабатывать отклонения. Аппаратура устанавливается уже после того, как настроили автоматический режим. . Что-то не то делаете.

Tarrok

Я до этого неправильно аксель откалибровал, т.е. перепутал во время калибровки когда самоль надо ставить носом вверх и когда вниз. Потом перекалибровал. Ничего… Ну а с другой стороны, если допустить что сервы действительно в стоке стоят таким образом, что отрабатывают криво, как тогда быть? Программный реверс канала не должен исправить это?

Glinco

Если с аппы все работает как надо, то и в авторежимах будет как надо. Не усложняйте.