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

SovGVD
Mark_Kharkov:

Поставил пришедшую ко мне плату AIOP v2 (от rctimer)

очистку eeprom делали? (через arduino ide или CLI планера setup->erase)
в платке мог быть multiwii зашит или чего чего и настройки глюканули, у меня как то коптер вообще не хотел летать (не смотря на то что в GUI вроде всё хорошо), пока не почистил всё

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

Sir_Alex
Mark_Kharkov:

Вопрос: что за нафиг? Оно что, для каждой платы совершенно разные ПИДы могут быть? Конструкция аппарата не менялась, только электроника. Версия прошивки - из той же папки…

Как вариант, в контроллер было что то зашито и когда вы залил свою прошивку, параметры остались от старой. Попробуйте сделать setup -> erase через командную строку. Повторите все калибровки. Проверьте что бы правильно были откалиброваны ESC (снимите пропы и плавно поднимайте газ, смотрите что бы стартовали одновременно и скорость увеличивалась гдето до 80% стика газа )

Mark_Kharkov

Setup -> erase сделал уже потом. Я этого не делал (раньше никогда), но в памяти было что такое бывает, вчера еще накопал в этой теме. После этого еще не проверял, мучаюсь с 3dr radio.
Не хочет работать зараза. Как блин заколдовали - bluetooth не заработал (брак), 3dr radio наземный модуль нормально, а удаленный поработал 10 минут и через FTDI переходник вообще ошибку возвращает (и наверное из-за этого если он подключен зависает полетный контроллер, получая такое на вход):
**PANIC**
radio_initialise failed
Как от этого избавиться - не пойму… при чем сначала он заработал, а потом просто сам по себе перестал (он не был в воздухе, не бился, не прошивался, просто сам по себе). Что за фигня - не могу понять.
ESC откалиброваны нормально (летал на них же с AIOP v1, просто поменял контроллеры), прошивка используется на них BlHeli (перепрошитые Turnigy Plush 30A).

ssh1
Mark_Kharkov:

Всегда делал это на аппе. Имею 2ве модели, одну RTF и собственно Y6 гексу, очень удобно, переключился на аппе между моделями и норм. Все равно для y6 есть другие настройки, те же переключения полетных режимов и т.д, чего там нету. КК2.0 тоже есть, но и там не пользовался этой настройкой, и не совсем понимаю, зачем она вообще есть, на аппе - удобней, можно всегда поменять с меню, и аппа всегда в руках.
Зачем это делать в полетном контроллере - мне даже в голову не приходило…

А как быть с YAW? Зажмешь расходы с пульта - перестанет армиться.

Mark_Kharkov
ssh1:

А как быть с YAW? Зажмешь расходы с пульта - перестанет армиться.

Ну я обычно зажимал только правый стик на mode2-аппе (ail/elev). А на Руддере у меня просто экспонента стоит - очень удобно, можно по чуть-чуть поворачивать когда немного стик влево/вправо, а можно очень быстро если в крайнее положение. Сразу так поставил, понравилось, как-то даже такой проблемы и не возникло…

SovGVD

А ни у кого коптер не уплывает (с точки сбивается сильно) в режиме loiter, если быстро по yaw крутить?

Sulzer
SovGVD:

А ни у кого коптер не уплывает (с точки сбивается сильно) в режиме loiter, если быстро по yaw крутить?

Есть такое, если без остановки кручу плавает в пятне диаметром около 1,5 метра , но у меня центровка не идеальная.

mikk
SovGVD:

А ни у кого коптер не уплывает (с точки сбивается сильно) в режиме loiter, если быстро по yaw крутить?

Мне кажется это связано с центром тяжести рамы. При крайних движениях стика yaw противоположные двигатели останавливаются. Например когда у меня центр тяжести был смещен назад, то при повороте коптер резко просаживался назад и в сторону поворота

Compage

а еще вопрос: плата AIO v1.1 регуляторы прошитые hobbyking f-30a
стали слетать прошивки с регулей. почему это может быть?
перепрошивка помогает, но не надолго.

kren-DEL
Compage:

стали слетать прошивки с регулей. почему это может быть?

дребезг контакта на PWM, было такое

Сергей_Вертолетов

Коллеги, заливаю прошивку, Ардуинка пишет мне после нескольких минут раздумья

avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer
avrdude: stk500v2_command(): failed miserably to execute command 0x11
avrdude: stk500v2_disable(): failed to leave programming mode

Может у кого было такое? Плата AIO 1.0 Софт Arduino 1.0.1

DVE
  • проверить номер порта
  • проверить тип платы
  • проверить, не подключен ли к этому порту Bluetooth, osd или еще что-нибудь, если да то отключить
  • попробовать другой usb-шнурок, как-то раз попался глючный, с которым не заливалось
tusik
Сергей_Вертолетов:

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

У меня похожее было. Использовал экстрим бурнер. Им все шилось без проблем

Antarius

Прям не знаю где спросить…
Есть Crius AIO 1 и мегапират 2.8. Также есть телеметрийный приемник FrSky D8R 2.
Сейчас на него заведена телеметрия, которая выводится на экране пульта (турнига разумеется). А можно в приемник передать телеметрию в формате мавлинка, подключить передающий модуль FrSky к ноутбуку (адаптер есть) и посмотреть все параметры в мишнпланере? Ведь по сути - приемник с телеметрией - это радиомодем, что и 3D радио и прочее. Конечно от ноутбука на коптер данные не придут (хотя уверен, это реализовано в протоколе фр ская), но мне нужно только посмотреть высоту там, позицию на карте , горизонт… Это возможно?

Mark_Kharkov
Antarius:

Прям не знаю где спросить…
Есть Crius AIO 1 и мегапират 2.8. Также есть телеметрийный приемник FrSky D8R 2.
Сейчас на него заведена телеметрия, которая выводится на экране пульта (турнига разумеется). А можно в приемник передать телеметрию в формате мавлинка, подключить передающий модуль FrSky к ноутбуку (адаптер есть) и посмотреть все параметры в мишнпланере? Ведь по сути - приемник с телеметрией - это радиомодем, что и 3D радио и прочее. Конечно от ноутбука на коптер данные не придут (хотя уверен, это реализовано в протоколе фр ская), но мне нужно только посмотреть высоту там, позицию на карте , горизонт… Это возможно?

Думаю что мавлинк оно не скушает в принципе. Оно под свое рассчитано. Да и мавлинк - ему посильнее нужна скорость…
P.S. Если пробовали коннектить Mission Planner на 9600 - то поймете.
P.P.S. Протокол обмена самого Mission Planner с платой - двунаправленный изначально, он еще и параметры все читает при подключении как минимум.

Antarius

Понятно.
Еще вопросик, и срочный к тому же.
Собрал новую раму, прошивка 2.8 мегапират, на мозгах Crius AIO 1.
Запускаю - мелко трясется. Настраиваю angular rate 0.05! Вроде не трясется.
Однако, при резком увеличении или снижении газа - начинает резко раскачиваться и переворачивается.
Что делать?

Alexey_1811

Вопрос по ЖПС. Как сделать что бы при старте Мегапират настраивал ЖПС модуль на частоту обновления 5-10 Гц и отключал не нужные фреймы?
Модуль по умолчанию настроен на частоту 1Гц и скорость порта 115200.

Sir_Alex
Alexey_1811:

Как сделать что бы при старте Мегапират

Почему вы считаете что он этого не делает? 😉

P.S. Вам надо смотреть код в папке AP_GPS соответствующего драйвера.

Alexey_1811
Sir_Alex:

Почему вы считаете что он этого не делает?

По тому как обновляются данные в Mission Planner видно что ЖПС выдает данные с частотой 1Гц.

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

const prog_char AP_GPS_NMEA::_MTK_init_string[] PROGMEM =
    "$PMTK314,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0*28\r\n" // GGA & VTG once every fix
    "$PMTK330,0*2E\r\n"                                                                         // datum = WGS84
    "$PMTK313,1*2E\r\n"                                                                 // SBAS on
    "$PMTK301,2*2E\r\n"                                                                 // use SBAS data for DGPS
    "";
Sir_Alex
Alexey_1811:

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

NMEA - общий протокол, разумеется драйвер ничего не знает про модель вашего GPS и не может изменить настройки. Да, вы можете прописать в этом коде, дополнительную инициализацию.
UBLOX - специфичный протокол для ублоксов, он автоматом ставить 5Гц, подходящую скорость и бинарный режим протокола.