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

ВлАс
Андрей#:

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

Несколько страниц назад Алексей писАл, что массовые провода должны выходить из одной точки. Даже схему приводил

schs
brusse:

APM при запуске сам как-то меняет настройки GPS модуля под себя?

Меняет. Можно подцепиться терминалом параллельно(только TX от GPS) и посмотреть.

prg

Если кого заинтересует, написал прошивку к atmega32u (ppm encoder) с поддержкой S.BUS. Речь о платах APM 2.5 - APM 2.6. Отлетал пол сезона - проблем не обнаружено. Пробовал с имеющимися у меня приемниками - frsky x8r, l9r.
Инструкция по применению 😒

  1. Как прошивать atmega32u где-то есть в документации по ardupilot.
  2. S.BUS сигнал подключается к входу N1. Остальные входы не используются.
  3. Генерируется CPPM сигнал для 12 каналов. APM2 с обычной прошивкой
    видит только 8.
  4. Лампочки: красная (около USB-порта) мигает при ошибке декодирования или пропуске пакетов S.BUS (в стандартной прошивке эта лампочка не используется). TX - при включенном генераторе сигнала RX при успешном декодировании пакетов (ну это так и было раньше).
  5. Если подключить по USB к компу, начинают появляться ошибки - пропуск пакетов - это нормально. В Linux, если APM подключен, но USB-устройство не используется - вообще нет обработки RC-сигнала.

sbus-ppm.zip

Andrey3167
prg:

Если кого заинтересует, написал прошивку к atmega32u (ppm encoder) с поддержкой S.BUS.

ЗдОрово! А как теперь с АПМ-а получить эти 12 каналов?

prg
Andrey3167:

ЗдОрово! А как теперь с АПМ-а получить эти 12 каналов?

Перекомпилячивать прошивку. Для ArduPlane достаточно только константу изменить - число каналов (RCInput.h AVR_RC_INPUT_NUM_CHANNELS). Там 10 и 11 уже как бы есть, и при указанном исправлении для них появляются входные данные. Для Коптера не знаю. Я когда раньше искал, натыкался на исправление именно для Коптера.

Andrey3167
prg:

Перекомпилячивать прошивку.

О-о-о, для меня это темный лес. Может кто-то из уважаемых форумчан возьмется за это дело, или это сильно сложно и нет смысла? Хотя есть маленькие приемники с Sbus и если АПМ его понимает, то неплохо бы все 12 каналов из него выдрать

andrew_psch

Я вижу тут разговор про компасы пошел… Коллеги, подскажите - до этого летал со встроенным компасом на APM плате без проблем, тут купил новую плату и GPS с внешним компасом… лучше бы обычный GPS взял…

Если не подключаю GPS с компасом, плата работает отлично, угол поворота показывает, по YAW не плавает, все норм… как только подключаю GPS с внешним компасом - показывает непонятно что и угол плывет. В настройках Mission Planner вручную указывал “использовать компас на плате”, но не помогает!! похоже все равно берет значения с внешнего компаса, но если только отключить провода GPS с внешним компасом, то направление/угол показывает отлично… как это вылечить?

на фото мой GPS блок с компасом, кстати, никто не подскажет направление на нем? там ни стрелок, ни указателей, ничего нет…

X3_Shim
andrew_psch:

похоже все равно берет значения с внешнего компаса

А вы там перемычку режете/запаиваете ?

andrew_psch:

указывал “использовать компас на плате”

Это влияет только на то, как ориентирован компас на модели. Если внешний поставить в такое же положение как и встроенный, то он отлично будет работать с “использовать компас на плате” .

ВлАс

И по новой калибровку проходить надо.

prg
ВлАс:

И по новой калибровку проходить надо.

Насколько я понимаю, не надо - компас автоматически калибруется. Настройка COMPASS_LEARN, вроде, за это отвечает.

Andrey3167:

Может кто-то из уважаемых форумчан возьмется за это дело, или это сильно сложно и нет смысла? Хотя есть маленькие приемники с Sbus и если АПМ его понимает, то неплохо бы все 12 каналов из него выдрать

Если интересует ArduPlane, могу выложить свою прошивку - там 10 рабочих каналов. S.BUS выдает 16 каналов, но я бы не жадничал, пытаясь использовать их все - может на что-нибудь другое ресурсов микроконтроллера не хватить.

andrew_psch
X3_Shim:

А вы там перемычку режете/запаиваете ?

а что за перемычку надо резать/паять? я где-то встречал информацию об этом, но не могу найти сейчас… раньше просто такой задачи вообще не стояло 😦

UPD: по-моему нашел здесь - copter.ardupilot.com/wiki/externalmag/ а как определить правильное направление компаса??

кстати, а визуально как-то можно определить, плата 2.5 или 2.6?

X3_Shim
andrew_psch:

по-моему нашел здесь - copter.ardupilot.com/wiki/externalmag/ а как определить правильное направление компаса??

да, правильно нашли.

Вариантов два.

  1. Эксперементально, посмотреть куда компас показывает и подобрать вращение.
  2. посмотреть как расположена надписи на компасе на APM и поставить GPS так, что бы там микросхема компаса была в таком же положении относительно фюзеляжа (обычно микросхема компаса одинаковая).
Alex-13:

Наличием компаса на плате

Ну это если оригинал покупать. А если смотреть на китайцев… то я бы вообще не стал их разделять на 2.5, 2.6, 2.7. Просто, либо есть компас, либо нет. Им ни кто не мешает взять 2.5 и не распаять компас, или взять 2.6 и поставить компас (вдруг на складе завалялся).

Andrey3167
prg:

Если интересует ArduPlane, могу выложить свою прошивку - там 10 рабочих каналов.

Выкладывайте, бум пробовать

X3_Shim:

то я бы вообще не стал их разделять на 2.5, 2.6, 2.7.

и 2.8

X3_Shim
Andrey3167:

и 2.8

Ээээ… 2.8 еще не видел 😃

brusse

Возможно ли увеличить ход рулевых поверхностей в manual через APM, т.е. не механически и не в аппе?

brusse
brusse:

Возможно ли увеличить ход рулевых поверхностей в manual через APM, т.е. не механически и не в аппе?

Дополню свой вопрос. При подключении серв через APM (модель - ЛК) элевоны отклоняются всего на 50%, а сервы напрямую от приемника отклоняются на все 100%. Калибровку аппаратуры делал, диапазон pwm 1100-1900 мс. Хотелось бы чтобы элевоны отклонялись в режиме manual так же, как и от приемника напрямую, иначе боюсь не хватит этих отклонений для взлета модели. Какой параметр отвечает за ход рулевых поверхностей?

prg
brusse:

Дополню свой вопрос. При подключении серв через APM (модель - ЛК) элевоны отклоняются всего на 50%, а сервы напрямую от приемника отклоняются на все 100%. Калибровку аппаратуры делал, диапазон pwm 1100-1900 мс. Хотелось бы чтобы элевоны отклонялись в режиме manual так же, как и от приемника напрямую, иначе боюсь не хватит этих отклонений для взлета модели. Какой параметр отвечает за ход рулевых поверхностей?

Этот параметр не отвечает за ход рулевых поверхностей, но, видимо, искомое - MIXING_GAIN.

Andrey3167:

Выкладывайте, бум пробовать

ArduPlane 3.1.1 с увеличенным числом каналов и возможностью установки центрального положения серв флаперонов.
github.com/diydrones/ardupilot/pull/1425

ArduPlane-3.1.1+11ch+flapcenter2.zip