ArduCopter Mega: порт на обычную Arduino (тестим)

rstzero
Sir_Alex:

В общем, проблема действительно оказалась в загрузчике! Некоторые платы поставляются со старым Ардуиновским загрузчиком, в котором есть бага. …

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

SovGVD
Sir_Alex:

RC10, RC11 соответственно.

да, вроде работает =)
Подлетнул на гексе в комнате (размер гексы увеличился, а в комнате стало побольше мебели, летать не возможно уже):

  • в планере все отлично калибруется: аксель, компас (в прошлый разы всегда врал чуток, сейчас четко показывает) и даже FS тестируется отлично
  • на дефолтных пидах гекса (20-22L, 11", рама ATG 700-AL) не дергалась и показалось что вернулась старая резвость и четкость удержания горизонта, но надо на улице смотреть
  • прошивку собирал и заливал в Ubuntu на crius aiop v1 без перешития бутлодера (кстати можно сделать сервис сбора прошивки и какой нибудь GUI для avdude написать, будет дружелюбнее)

Если погода не подведет, пойду в поле вечерком.

@SirAlex, можешь эту строчку пояснить: Warning #4: loiter turns does not maintain altitude. This bug will be fixed in AC-3.0.2. - никак не осознаю чего с высотой в лоитере.

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

SovGVD
UserM:

Дык, вроде как есть.

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

UserM

Вас не верно понял, я о GUI программаторе, а Вы о GUI конфигуратре )).

SovGVD
Sir_Alex:

В конфиге планера можно принудительно отключить OpenGL и оставить только GDI+.

не помогло, видимо дело в архитектуре (малоли там чего x86 зависимое), придется старенький нетбук доставать, для настройки в поле должно хватить =)

ReM

Сегодня заметил одну проблему. Установил 15 в Circle radius, и 8 в Circle rate. Включил Circle, а он развернулся и медленно полетел неизвестно куда. Думал что в Китай. 😃 Но оказалось, что ближе… 😃
Когда проверил, что записанно в Circle radius, оказалось что 1081. Попробовал ещё раз записать 15. Но когда проверил - опять там бред какой то. Тоже самое и с Circle rate. С третьего раза записалось нормально. Попробовал в полёте - всё нормально.
Я уже вчера заметил что некоторые значения записываются правильно не с первого раза. Не знаю, это проблема Arducopter или Megapirate?

SergDoc
Sir_Alex:

Еще есть вариант, перезалить бутлодырь средствами avrdude, но это надо манипулировать фьюзами, что бы разрешить запись в область памяти бутлодыря - в общем, путь небезопасный.

Алексей, фьюзы трогать незачем, лодырь шьётся в начало флеши, не больше не меньше, любым программатором и любой программулиной через spi - стираем флеш и перезаливаем лодырь, его область ничем не защищена, просто прошивка льётся уже начиная со следующего сектора или страници - уже запамятовал как в авр флеш разбирать 😃

Alexey_1811
SergDoc:

Алексей, фьюзы трогать незачем, лодырь шьётся в начало флеши,

Все же наверное в конец флеша.

Sir_Alex
SergDoc:

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

Я говорил про то, как залить не используя программатор. Просто через USB. Я правда не пробовал, за что купил за то и продал )) Вот тут описан метод и собственно расписан баг с бутлодырем:
www.ualberta.ca/~jhoover/…/HJH-Notes.txt

ReM:

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

Наврядли мерапирата, весь код не связанный с датчиками, остался 100% неизменным от Ардукоптера.

SergDoc

что значи - не используя программатор, там аглицким по белому написано stk500, а это явно по spi 😃

Alexey_1811:

Все же наверное в конец флеша.

неа

select boot size BOOTSZ1 = 0
    select boot size BOOTSZ0 = 0
        4096 words, 8192 bytes
        application 0x0000 to 0x6fff, boot 0x7000 to 0x7fff
    select reset vector BOOTRST = 1
        jump to boot loader

постраничная адресация…

Sir_Alex
SergDoc:

что значи - не используя программатор, там аглицким по белому написано stk500, а это явно по spi

Arduino когда заливает по USB, то же делает это через avrdude и указывает STK500v2

SergDoc

ну тогда понятно зачем танцы, перезалить самой себе флеш да ещё загрузочную…

2fast2real

Парни скажите какая-нибудь прошивка может управляться в режиме althold как наза? Что бы нормально реагировала на стик газа.

Mark_Kharkov
2fast2real:

Парни скажите какая-нибудь прошивка может управляться в режиме althold как наза? Что бы нормально реагировала на стик газа.

А что Вы подразумеваете под “нормальным реагированием на стик газа”? Нежелание коптера спускаться вниз? 😃)))

SovGVD
2fast2real:

Что бы нормально реагировала на стик газа.

смотря что подразумевается под нормально… например если в пирате стик газа вверх вниз от центра водить, то будет плано подниматься/опускаться (правда хз работает это в althold или нет, но в loiter точно работает, заодно и коптер по gps держил)
Выбрался я наконец то в чисто поле =) Хотел PIDы покрутить, но решил сперва полетать как есть, потом захотелось loiter/rtl потестить, а потом аккумы сели (zippy 5ah кажется на выброс, 3.5…3.7Ah заливается только и летает соотвественно минут 5 всего и разброс по банкам 3.4/3.7/3.6).
стаб - обычный стаб
loiter - 1 раз непонятно глюканул (из примерно 10), врубил этот режим и коптер понесся на запад, переключился в стаб, вернул на место, включил снова и дальше не глючило, высотой рулится, хз про что вообще было предупреждение, про багу в 3.0.1
rtl - ±1 метр ошибка при возврате, но то же 1 раз (из 5) глюканул и не туда полетел
принципиальных отличий в полете не замечено, но всетаки показалось что стаб стал жесче, как было года 2 назад, еще со старой платкой allinone + mega1280

kren-DEL
SovGVD:

стаб стал жесче

подтверждаю, пробовал RateD прибавлять - не очень помогает. Только-что упал оттого, что не сработал FS, хотя в планере вроде всё установлено и настроено 😦

2013-08-28 19-08 2.rar

2fast2real

Что бы реагировала нормально на газ в альтхолде, а то достлало уже его ловить не хочет нормально висеть и все. Над землей с пары метров так вообще постоянно снижается до 10 см и потом висит, мож че там еще надо поткрутить на блэк вортексе? Althold P и все тротл PID крутил, добился только плавности и пулей в небо не стреляет после включения альта, или может быть на блэк вортексе баро отстойный? И еще с какой высоты начинает работать сонар? В исходнике r300 стояло max range 400, это сколько значит?

SovGVD
2fast2real:

мож че там еще надо поткрутить на блэк вортексе?

надо… поменять его на crius aiop с ms5611 барометром, который в назе стоит и не забыть паралончиком всё это добро прикрыть, чтобы ветер от винтов не задувал

2fast2real

А да и последний вопрос, у всех периодически горизонт уплывает?

Дак я же могу его припоять к вортексу и все, тогда норм будет?

Все прикрыто )))

kren-DEL
kren-DEL:

Только-что упал

youtu.be/EYuNr1O4MSo

только что проверил ещё раз, без ГПС ФС срабатывает - коптер делает land & disarm

limon_spb

Всем привет. Две недели бьюсь с GPS - уже отчаялся совсем… Помогите, пожалуйста!
AIO V2. GPS штука - UBLOX.
Прошивка - MegaPirateNG 2.8 R3 (ArduCopter 2.8.1a)
Гексик X.
В планере координаты показывает. Запускаю только после того, как загорится стабильно зеленый диод (спутники пойманы).
Сама антенка более-менее вынесена подальше от всего (см фото)
50/50 удержание позиции (loiter) работает хорошо
Вот пример на видео

Но иногда коптер просто уфигачивает в неизвестном направлении с бешеной скоростью. Это может случиться, как после длительного висения на месте, так и сразу при включении loiter.
Компас калиброванный-перекалиброванный 100 раз. В планере показываемое им направление совпадает реальным. Declination стоит 10.2. С авто определением тоже пробовал - ничего не меняет.

С логами я что-то не разберусь… Нашел файл лога, где я калибрую коптер. Траектория показана с точностью буквально до полуметра, как я обхожу машину, встаю на проселочную дорогу, кручусь. Сразу после этого я летал минут 8 периодически пробуя loiter… Этого файла tlog что-то нет…

Хэлп ми плиз, я в отчаянии :blink:

Antarius

Вчера подключил датчик тока и делитель напряжения в порты А2 и А1 соответственно.
В мишнпланере включил наличие датчика тока и напряжения, тип платы Ardupilot 2.5, датчик - Other.
В телеметрии FrSky в турниге нашел два параметра Amp и FasV, значения в которых меняются при изменениях напряжения на контактах A2 и A1.
Однако.
Допустим я подал напряжение 5В на оба порта, в настройках стоит делитель напряжения 1:1 для датчика напряжения и ампер на вольт 1 А/В для датчика тока.
В мишн планере на полетной вкладке правильно начинает показываться 5А и 5В, но на дисплее турниги 0,5А и 30В.
Это как?
Ну да, я могу конечно подбрать коэффициенты в мишнпланере, чтобы на турниге тоже стало правильно, но это как-то не правильно.
Куда копать?

И вообще не нашел, где включается в турниге и в мишнпланере отображение mAh расхода батарейки.

limon_spb:

Но иногда коптер просто уфигачивает в неизвестном направлении с бешеной скоростью

Проверьте протокол, в котором модуль GPS отдает координаты в мегапират, и протокол который стоит в настройках мегапирата.
Не верьте, что “типа мегапират сам настраивает параметры ublox”.
Пока я не отключил с помощью МюЦентра лишние протоколы (бинарный и ублокс) в модуле и не поставил просто nmea в мегапирате (при этом выставил 5Гц и 115200 бод на модуле) у меня тоже коптер летал куда ему хотелось и висел когда ему хотелось. С тех пор GPS работает как часы, если не сбит компас и арминг происходит при достаточном качестве координат.

blind_oracle
Antarius:

Пока я не отключил с помощью МюЦентра лишние протоколы (бинарный и ублокс) в модуле и не поставил просто nmea в мегапирате

Гм гм странный совет. У всех большинства протокол uBLOX работает как надо, у меня в том числе. И он является рекомендуемым для использования с GPS от ублоха.
У меня на LEA-6H стоит 10Гц, битрейт 38400, протокол ублох, всё висит как надо.
Так что это видать зависит от модуля самого или от еще какой погоды на марсе.

Antarius

Не знаю почему так, но как было, так и написал. С тех пор висит как прибитый в штиль, и плавает +/- метров 5 при ветре.
Для себя сделал вывод, что для нормальной работы GPS главное не GPS. А компас, даже если просто забыть ввести склонение, начинает унитазить и колбаситься.
Или проводок новый около компаса проложить и не откалибровать - тоже самое.