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

alexeykozin

ну замыкать резисторы ардуиной- неспортивно, у нее есть аналоговый выход с одним “но” он шим 500кгц с широтноимпульсной модуляцией. из этого шима нужно сделать непульсирующий аналоговый выход с четкими напряжениями. либо расчитать LC цепочку либо rc пока взял за основу трехступенчатый RC фильтр с ардуино-форума, но если непрокатит можно будет попробовать вариант с обратной связью - так как это делается в импульсных регуляторах напряжения с шим выхода LC - измеряется аналоговым входом и по мере необходимости корректируется
схемка пока такая получается.
код такой - ардушка сканирует входы кроме активного и если находит зажатый на ноль то переключает этот канал в режим выхода, установливает его в ноль зажигая тем самым светодиод а остальные переключает на входы и начинает вновь сканировать. таким образом экономия входов. в зависимости от выбранного режима записывается на выход одно из аналоговых значений

7 days later
Timmy
RedSun:

regulatedов только у меня три штуки кривых 😦 И если на борту я просто перекинул контакты кабеля, то на земле пришлось паять.

что именно в них кривого, как можно поправить

alexeykozin

пару ложек дегтя про АПМ2

Посвятил некоторое время изучению схемы, платы и тестам “Ардупилот мега 2”, вот некоторые особенности:
1 несмотря на то есть перемычка питания цифровой части от регулятора хода устанавливать ее я бы не советовал, в отличие от АПМ1 у АПМ2 по входу питания НЕТ стабилизатора, нет даже защитного стабилитрона, стоит лишь только диод от переполюсовки.
максимум питания цифровых микросхем в.т.ч процессора 5,5 вольт. Некоторые регуляторы выдают до 6 вольт, при заклинивании мощной сервы в питание может быть кратковременно выплеснуто до 10 вольт. То есть если АПМ1 следовало питать внешним источником 5,5-8 вольт,
соответственно АПМ2 для стабильности нужно питать от внешнего высокоточного регулятора 5V

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

3 некачественный разъем флешки. после того как первый раз флешка была изъята из разъема - теперь постоянный ее неконтакт. не рекомендую ее вынимать.

alexeykozin

дабы тема не терялась.
некоторое время назад удалось реализовать под “маленький ардупилот” Imu_v2_flat на гироскопах со шкалой до 500 град/сек LPR550 / LY550 (штатные LPR530 / LY530 на 300, на пилотажных моделях и в порывистый ветер сбиваются), боялся что начнет дрейфовать, особенно по Z - оси
к счастью все зашибись, подправил прошиву иму чтоб можно было выбирать шкалу гироскопов - буквально несколько мест в коде пришлось подправить усиление и контроль перегрузки.
дрифта нет, точность не пострадала а диапазон почти в двое больше.

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

тут лежит дистрибутив старого тестового приложения с желтым самолетиком и прошива под 2 иму с возможностью выбора 500-ых гироскопов: files.msdatabase.ru/home

большая просьба - если у кого есть рабочий скетч иму на плате 3 версии (на MPU6000) поделитесь пожалуйста

7 days later
vasilisk

Сегодня облетал крыло 1.6м с ардупилотом мега. Выполнил полет по сложному маршруту, со сменой высот и маневрами. В целом доволен, отлетал замечательно. Крыло очень летучее, при снижении к очередной точке ардупилот ведет модель змейкой. Иногда делает неожиданные эволюции, однако неизменно попадает в следующую путевую точку.
Если интересно видео - могу выложить.
Коллеги, подскажите пожалуйста, как выполняется автоматический взлет? С посадкой вроде все понятно…

vasilisk

Обновил сегодня прошивку Ardupilot Mega с 2.32 до 2.33, начал работать компас, про который я уже думал, что он неисправен. Уже выпаивать хотел, а оно вот как оказалось 😃
Может кому поможет.

Фото крыла

bukabay
vasilisk:

Коллеги, подскажите пожалуйста, как выполняется автоматический взлет? С посадкой вроде все понятно…

Да тоже ниче сложного.
Я из APM Planner-а пробовал. Если есть датчик скорости, то задаешь первым параметром минимальный тангаж, а вторым высоту, до которой подниматься, если нет датчика скорости, то максимальный тангаж и высоту.
Переводишь модель в режим Auto и кидаешь.
Вроде ничего не упустил

alexeykozin
vasilisk:

Обновил сегодня прошивку Ardupilot Mega с 2.32 до 2.33, начал работать компас, про который я уже думал, что он неисправен. Уже выпаивать хотел, а оно вот как оказалось 😃
Может кому поможет.

Фото крыла

я им писал в багрепорт что есть проблема с компасом а они типа - надо чистить епром, хотя ниукаого на апм1 нормально не работал компас
а в 2.33 заодно стали нормально детектиться NMEA GPS модули

egunak95

[QUOTE=alexeykozin;3295927]я им писал в багрепорт что есть проблема с компасом а они типа - надо чистить епром, хотя ниукаого на апм1 нормально не работал компас
а в 2.33 заодно стали нормально детектиться NMEA GPS модули[/QU
Какой программой надо чистить епром? Может нужно переустановить коды или как? Я установил версию 2.30 на апм1 конечно “думает” долго при поиске спутников и компас дрейфует но другого от этого железа я не ожидал, а потому считаю что загрубили кодами работу датчиков и они перестали “плыть”.

alexeykozin

ером чистится из консоли кажись setup -> reset -> Y

egunak95
alexeykozin:

ером чистится из консоли кажись setup -> reset -> Y

В мануале написано:

Allowed setup commands are:

  • “reset”: Resets APM to default settings
  • “radio”: Sets up RC settings (see below)
  • “modes”: Sets up flight control modes for each RC toggle switch position (see below)
  • “compass”: Enables compass. Commands are “compass on” or “compass off”
  • “declination”: Sets local magnetic declination for compass. You can find your local declination at this web page. Although it is given in minutes and seconds, enter it as a decimal. So 14° 10’ E would be entered as 14.10.
  • “battery”: Enables battery monitoring. Enter options 0-4 (repeat to enter additional options):

0 = Batt monitoring disabled
1 = Monitoring 3 cell battery
2 = Monitoring 4 cell battery
3 = Monitoring batt volts
4 = Monitoring both volts and current

  • “show”: Shows all current settings in EEPROM
  • “erase”: Erases EEPROM

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

alexeykozin

мне почемуто писали что reset нужен после смены версии прошивки

egunak95
alexeykozin:

мне почемуто писали что reset нужен после смены версии прошивки

Не ясно когда ресет делать, если прошивку сменить то установятся дефолты, а ресет я понимаю нужен когда юзеры своих установок в программу сделают, что она перестаёт корректно работать. Может перед установкой новой прошивки епром затереть чтобы хвостов от старой проги не осталось? Вы чем устанавливаете коды? Я понял что надёжнее Ардуиной релакспатчем, АПМ План не пишет про ошибки компиляции, а потому не хочется устанавливать новые версии вслепую. Однако Ардуино релакс патч не грузит 2.32 и 2.33 версии.

aviaks

Erase - это просто очистка EEPROM.
Reset - установка заводских параметров.

egunak95

Прошу помочь решить неясность с изображением от MinimOSD - что есть показание Trottle? Я только собрал АРМ1, вопросы решаются чтением мануала. Однако зачем этот троттл нужен? Скорость это главное, она на экране есть, а ручку газа я сам чую на сколько утопил в пол. Конечно показание вольтов хорошо, однако лучше вывести на экран амперчасы, но ArduCAM Config может только убрать или показать опции. В Планировщике показывает и батарейку и амперчасы, но я планирую пользоваться очками. Что делать? А я уж собрал датчик тока на 100 А с датчиком Холла, решил проблему, что его выход 2,5 В выдаёт показание тока при нуле тротла (пришлось в config в параметр CURR AMPS OFFSET указать эти 2,5 В чтоб получился ноль). ArduStation тоже вольты показывает, может можно как-то мавлинк “уговорить” показывать что мне нужно?

Прошу помочь решить неясность с изображением от MinimOSD - что есть показание Trottle? Я только собрал АРМ1, вопросы решаются чтением мануала. Однако зачем этот троттл нужен? Скорость это главное, она на экране есть, а ручку газа я сам чую на сколько утопил в пол. Конечно показание вольтов хорошо, однако лучше вывести на экран амперчасы, но ArduCAM Config может только убрать или показать опции. В Планировщике показывает и батарейку и амперчасы, но я планирую пользоваться очками. Что делать? А я уж собрал датчик тока на 100 А с датчиком Холла, решил проблему, что его выход 2,5 В выдаёт показание тока при нуле тротла (пришлось в config в параметр CURR AMPS OFFSET указать эти 2,5 В чтоб получился ноль). ArduStation тоже вольты показывает, может можно как-то мавлинк “уговорить” показывать что мне нужно?

Если кому пригодится вкладываю фотки АПМ1 и наземной станции “обутые” в корпуса. В этот конструктор прелагали не фанерные коробки, а то столько времени на лобзик ушло. Корпуса куплены в Чип И Дипе, допилены и досверлены под все удобства. Столько трудов потрачено, а эффект наверно как от ИЛ-2 получится - опять лицом в экран?

egunak95
alexeykozin:

я им писал в багрепорт что есть проблема с компасом а они типа - надо чистить епром, хотя ниукаого на апм1 нормально не работал компас
а в 2.33 заодно стали нормально детектиться NMEA GPS модули

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

9 days later
vasilisk

Здравствуйте, коллеги!
Отлетал вчера два полностью автоматических полета, взлет - маршрут - посадка. Ветер был сильный (10-14 м/с), на ручном управлении летать не решился 😃
Крыло отлично себя показало, Ардупилот тоже выше всяких похвал. Условия посадки в автоматическом режиме были достаточно сложными, из-за того, что скорость ветра превышала посадочную скорость крыла. Из-за сноса практически до посадки автопилот отрабатывал газом, чтобы зайти на указанную точку.
Освоил автоматический взлет, очень удобно одному крыло запускать. Режим “авто” включил, пульт поставил на землю, крыло подбросил, и оно взлетает под нужным углом до нужной высоты, за креном само следит очень аккуратно. Теперь осталось придумать, как автоматизировать взлет, чтобы вручную полетать. В смысле, как выполнить автоматический взлет без дальнейшего выполнения программы.
Есть какие-нибудь идеи? Пока видится вариант такой: ставлю автовзлет до высоты, скажем, 100м с тангажом 25, включаю авто, запускаю, и в процессе взлета, когда высота уже безопасная для перехвата управления, включаю ручной режим. Вопрос: с какого места продолжится автоматический полет после повторного включения автопилота?

blade
vasilisk:

с какого места продолжится автоматический полет

Надо думать, не “с какого”, а “в какое?”
То есть, автопилоту по барабану, “откуда” он летит: включившись- он будет направляться в первую по программе контрольную точку?
Не должно же быть, чтобы он садился и начинал всю программу с взлёта? 😃
Хотя точный ответ- знает главный по Арду, A.Kozin.
А он- ушел в леса 😦

kedrikov
blade:

А он- ушел в леса

В отпуске человек скоро появится без паники 😃