ArduCopter Mega: порт на обычную Arduino (тестим)
Блин, кто-то удалил ссылку на прошивку B8 в wiki.
А сорри, нашел 😃
ardupirates.googlecode.com/svn/…/Syberian/
Олег, если я напишу в megapirate.pde
if (motor_armed) sq_led_heartbeat();
БАНО корректно включится и главное выключится, когда motor_armed=false
или все таки надо копать led.pde?
Добрый день всем!
С возвращением, уважаемый Сибериан.
Теперь отчитываюсь, как и обещал. Совершенно непродуктивно работать с коптером после рабочего дня. Все на перекосяк и перестает работать то, что работало раньше. Вот у меня сначала планнер (все подряд) отказался переключаться в Флай мод. Почему то не реагировал на переключение КЛИ. Хотя в КЛИ моде все настраивалось. Приготовил пропы 11х4.5 для эксперимента. Но… Настройка регулей из планера закончилась полным отключением 2 моторов. Верхний задний и верхний правый перестали включаться. Пришлось калибровать их всех раздельно. Сейчас паяю колодку для подключения всех моторов к 3 каналу передатчика. Так надежнее будет. И вопрос персонально Олегу ака Сибериан. Система контроля батарей просто передрана из первоисточника, без попытки изменить код под Ардуино плату? Я почитал описание работы этой системы на Арду Коптеровском сайте. Там пишут, что использование датчика увеличивает точность измерений тока и напряжения батареи, а также позволяет контролировать остаток в батарее во время полета. Все хорошо и даже прекрасно, именно такой датчик у меня стоит и подключен, как в рекомендации Ардупилота, но… Не переключается. Не тестится. Из всех функций доступна только первая (3 селл), как я понял, это контроль батареи по ячейкам, но так как нет разъема для соответствующего подключения, то и показания от фонаря.
Скажу, что в моей поршивке переход сонар-баро так и не решен, так что лучше не использовать пока, а то рванет вверх.
А вешать его надо так, чтобы смотрел вертикально в землю, и в створе 45 градусов не было деталей квадрика.
То есть удержание высоты (ALT_HOLD) и удержание позиции и высоты (LOITER) работают исключительно на высотах более 5 метров? Ведь ниже 5 метров, как я понял, за высоту именно сонар отвечал…
Ведь ниже 5 метров, как я понял, за высоту именно сонар отвечал…
Нет, сонар лишь дополнение к барометру, работающее до 3-5 метров. Барометр работает везде, не очень точно но везде.
если я напишу в megapirate.pde
Нет, просто перестанет моргать…
Чтобы не горели без моторов вообще, вставь в LED.pde после строки
// update LEDs
такую бодягу
if(!motor_armed) sq_led_state=0;
Система контроля батарей просто передрана из первоисточника, без попытки изменить код под Ардуино плату?
Точно! Ничего не менял и не лазил там. Все впереди.
Кто хочет чтобы коптер возвращался домой, вот тут нас как бы предупреждают что по дефолту ALT_HOLD_RTL равен 800 (метров по вертикали от точки взлета?) и надо поставить 10! Олег, так какую цифру надо там ставить всетаки?
p.s. у меня новая напасть бляха муха, сидуина начала загружаться через 10 секунд после включения… естественно когда уже регули думают что сигнала нет и давай пиликать… ни у кого такого не было? началось все после одновременного подключения напряжения по usb и с силовой батареи…
10 и ставить
есть несколько вопросов,
использую ardupilot+IMU
нет ни gps, ни сонара,
пытался запускать он пару-тройку секунд висит гад, потом заваливается, пытаюсь его на руках выправлять … но в общем ничего не выходит,
заметил в конфигураторе он немного вокруг горизонтальной оси по авиагоризонту разворачивается.
Можт у меня какой бракованный ардупилот?
Во, блин!
Все озабочены ЖПС и сонаром… А тут сплошные непонятки. Почему моторы запускаются несинхронно? Где глобальные переменные, в скетче или библиотеках объявлены? Почему планнер плевать хотел на выбор параметров в окошках, свои ставит и все! Хоть и не во всех… Похоже летать относительно спокойно можно только разобравшись со скетчем. А документация неполная и противоречивая. Хоть свой скетч пиши, выдергивая по частям из магапирата… Вот кто нить может объяснить, почему в библиотеке надо править параметры, а? Этож библиотека! Методы публичные объявлены и достаточно…
В void loop целых 3 вложенных цикла… Из каких соображений?
Алекс! Вы задаете слишком много вопросов 😃 Летайте! Просто летайте! 😃 А теперь серьезно. У меня моторы тоже не сразу стартовали, когда перевел свой коптер на новую раму. Оказалось, не промыл силовые контакты после пайки от канифоли (это флюс такой 😃 ). После промывки все заработало.
Блин, веселый я сегодня что-то
Скажу, что в моей поршивке переход сонар-баро так и не решен, так что лучше не использовать пока, а то рванет вверх.
А вешать его надо так, чтобы смотрел вертикально в землю, и в створе 45 градусов не было деталей квадрика.
А планируется в ближайшее время какое-то движение в эту сторону? Чтобы не высотах до 5 метров сонар работал, а пилот не боялся потом подняться выше 5 метров…
Тут про ALT_HOLD говорили, что газ трогать нельзя. И еще говорили, что стик должен быть в центре, на 50% газа. То есть надо ПЕРЕД активацией ALT_HOLD’а обязательно поставить газ на 50%??? Иначе не активируется, не смотря на тумблер??? И что происходит ПОСЛЕ того, как в режиме удержания высоты тронул газ? Коптер переключается в предыдущий режим, из которого был вызван ALT_HOLD? Или тупо переходит на пару метров выше(ниже) смотря куда тронул стик газа и опять удерживает высоту?
А по yaw, roll и pitch коптер при этом управляется? Типа забрался на 20 метров, включил ALT_HOLD и дальше рулишь не заботясь о высоте…
Вернее, как я понял, там плюс-минус пара метров на барометре и плюс-минус менее метра на сонаре будет меняться высота, но в целом так?
Те же вопросы про LOITER: что будет, если тронуть стик газа, управляется ли хоть как-то, или просто на полном автомате висит в заданной точке и ИГНОРИРУЕТ движения стиков на аппаратуре? Сегодня дождь, да и без дождя я бы побоялся какие-то режимы активировать, без понимания как и что при этом доступно и, наоборот, запрещено.
есть предложение добавить Y4 вариант рамы (как трикоптер, только вместо поворотного механизма 2 винта, как в Y6), но пока не очень уверен с кодом =)
пока есть 2 варианта на суд общественности, один основан на том что в multiwii:
roll_out = g.rc_1.pwm_out;
pitch_out = g.rc_2.pwm_out;
motor_out[CH_3] = g.rc_3.radio_out + roll_out + pitch_out; // left_FRONT
motor_out[CH_1] = g.rc_3.radio_out - roll_out + pitch_out; // right_FRONT
motor_out[CH_2] = g.rc_3.radio_out - pitch_out; // 1_BACK
motor_out[CH_4] = g.rc_3.radio_out - pitch_out; // 2_BACK
// Yaw input
motor_out[CH_2] += g.rc_4.pwm_out; // CCW
motor_out[CH_4] -= g.rc_4.pwm_out; // CW
другой - домозговывание варианта Y6 из MP:
roll_out = g.rc_1.pwm_out;
pitch_out = g.rc_2.pwm_out;
motor_out[CH_3] = g.rc_3.radio_out + roll_out* .866 + pitch_out/2; // left_FRONT
motor_out[CH_1] = g.rc_3.radio_out - roll_out* .866 + pitch_out/2; // right_FRONT
motor_out[CH_2] = (g.rc_3.radio_out * Y6_scaling) - pitch_out; // 1_BACK
motor_out[CH_4] = g.rc_3.radio_out - pitch_out; // 2_BACK
// Yaw input
motor_out[CH_2] += g.rc_4.pwm_out; // CCW
motor_out[CH_4] -= g.rc_4.pwm_out; // CW
вращение в обоих случаях только задом
Олег, а ты полетел в стаб моде то?
И еще говорили, что стик должен быть в центре, на 50% газа.
имхо оставить его в том положении, в котором фиксируется ALT_HOLD, а кручение туда/сюда стика должно поднимать и опускать коптер
управляется ли хоть как-то
у меня управлялся, хотя может быть и показалось, долго висеть не удалось - коптер несмотря на стик газа снижается
Или тупо переходит на пару метров выше(ниже) смотря куда тронул стик газа и опять удерживает высоту?
Так снимите винты и проверьте. Если при включеном алт_холде от газа обороты моторов меняются, то может подниматся выше-ниже. Если нет… Сам бы проверил, но стяжек уже не осталось, а сегодня хочу еще полетать
Так снимите винты и проверьте. Если при включеном алт_холде от газа обороты моторов меняются, то может подниматся выше-ниже.
О! А это идея! Проверю, сенкс…
Олег, а ты полетел в стаб моде то?
Это вопрос ко мне или к Syberian???
😉)
Если ко мне - то “полетел”, это громкое слово, мне еще учиться и учиться. Но в воздух поднял и благополучно приземлился на улице раз 5-6 на высоту метров до 5 примерно. И с учетом того, что за эти 5-6 раз только один проп сломал - могу гордо заявить, мол да, полетел 😉) Хотя это и смешно пока выглядит и сам лично я это полетом назвать не могу. В симе как-то гораздо-гораздо лучше выходит, а тут сразу адреналина поймал, все навыки порастерял и засуетился. Но коптер в стабе практически на все 4 ноги приземлялся (кроме того случая, когда “минус один проп”) и я этим очень доволен. Понимаю, что это не моя заслуга как пилота, а скорее заслуга разработчиков софта для мозгов. Ну и моя тоже - собирал-то аппарат я сам…
Вот хочу пока в симе побольше времени еще провести, но тем временем хотя бы попробовать такие режимы как easy (или simple) и удержание высоты и позиции по барометру и гпс. Чтобы удостовериться, что это тоже работает. А потом - практика-практика и еще раз практика. Удлинил тут внешнюю часть лучей, чтобы пропы не так часто ломать. Завтра может фото или видео закину. Получилось симпатично и в комнате сегодня малость пораскачивался и потыкался в мебель и стены без повреждений (но вот повисеть в центре комнаты не удалось - постоянно приходилось работать стиками)
а тут сразу адреналина поймал
я когда первый раз вылез с коптером - стартанул его и засмотрелся как он полетел, забыв что еще и рулить надо
повисеть в центре комнате не удалось
и не удасца особо, если комната не размером со спортзал
Олег Syberian! А когда мы будем так летать? www.rcgroups.com/forums/showpost.php?p=18934468&po…
я когда первый раз вылез с коптером - стартанул его и засмотрелся как он полетел, забыв что еще и рулить надо
Ну, я сначала тоже “засмотрелся”. А когда его ветром стало относить в сторону автомобильной дороги - вот тут уже забеспокоился и попытался вернуть домой блудного сына. И тут-то адреналинчик и хлынул: у меня вертолетного опыта нет (как и коптерного), если не считать несколько мучений с вертом в разных симуляторах и нескольких часов вполне удачных (как мне казалось!) полетов на “гайке” в симе Phoenix.
То есть на вопрос “летает ли твой коптер?” я могу смело говорить “да”. А вот на вопрос “летаешь ли ты на своем коптере?” - пока еще ответ однозначно “нет” 😭(
Сообщение от SavosRU
повисеть в центре комнате не удалось
и не удасца особо, если комната не размером со спортзал
Другие же как-то умудряются висеть даже в маленьких комнатах? У меня большая (ну не спортзал, конечно)…
Зато удалось (опять же на мой взгляд) вполне себе вертикально взлетать - поначало тянуло в ту или иную сторону - пришлось триммировать roll и pitch немножко. Это все триммируют? Или надо играться настройками в конфигураторе-планнере??? Центровку проверял по диагоналям - придерживая легонько пальцами за края лучей. Вроде бы по обеим диагоналям ровненько так. Зато если попробовать за края центральной пластины на предмет “передняя-задняя” или “правая-левая” - то выходит чуток передняя (но можно аккумулятор сдвинуть назад и выровнять). Правда, я думал что такая уж точная центровка для коптера не важна - он же перекосы должен все-равно устранять? Или я не прав и надо как и в самолетах добиваться ТОЧНОЙ центровки, совпадающей в данном случае с геометрическим центром (точкой пересечения лучей)???
Ну и еще разворот вокруг оси то происходит при взлете (как описывал Олег Syberian), то НЕ происходит и закономерности пока не уловил. Ну да бог с ним - привыкну, наверное…
Вот дождь помешал реальный тесты на улице провести. Чтож, будем ждать летной погоды. Хотя сегодня за окном тоже мрак, да еще и похолодало до 10 градусов 😭(
Олег Syberian! А когда мы будем так летать?
А давайте мегапират портируем на какую нибудь ARM платформу! 😃 Вот это будет хит…
А чего портировать, когда есть autoquad…