ArduCopter Mega: порт на обычную Arduino (тестим)
на прошивке ArduCopter 2.3 расколбас на земле перед взлётом, потом вроде взлетает, у кого нибуть так же?
Как бы убрать это дело?
А мне 2.3 понравилась. Расколбас на взлете я почти не ощутил, лишь в полете коптер стал несколько более дерганым. Правда, я сразу I поставил 0,1. В обновленном планере 1.1.32 появилась D составляющая.
Наконец-то увидел alt_hold в действии 😃 Ничего описанного Александром aka mahowik не заметил, но и более метра не поднимал. Квартира, все-таки 😃
Чтобы при включенном ALT_HOLD при нулевом газе на пульте коптер останавливал движки, нужно AUTO_THROTTLE_HOLD в 0?
Принимайте в свою компанию!
Собрал месяц назад свой первый мультикоптер. Начал с multiwii на arduino mini все заработало сходу. Только компас врет отчаянно. Но очень хочу перейти на мегапирата. Когда приехала плата arduino mega и gps, multiwii тоже сходу заработал.
Пока жду очередных пропеллеров и сонар, отлаживаю то что есть. Опять не работает компас.
Для ясности пишу, что делал. Мозг arduino mega 1280, датчики эти - gapey.narod2.ru
Исходники отсюда code.google.com/p/megapirateng/downloads/list 2.0.49_Beta4.
В libraries/AP_ADC/AP_ADC_ADS7844.cpp выбрал FFIMU.
Планер отсюда code.google.com/p/ardupilot-mega/downloads/list версия 1.1.33
В настройках поставил галку - включить компас, склонение установить не удается, цифра не сохраняется. В терминале выполнял setup compass offsets, при запуске test comass x,y,z изменяются реалистично, однако heading явно отклоняется по гироскопу, потом медленно плывет к 180. Подозрение на неправильно выставленные оси у компаса. Куда копать?
Кстати направление осей акселя и гироскопа отличаются от multiwii. Где они задаются?
оси компаса на плате не соответствуют осям гиры и акселя … за основу моей платы бралась плата FFIMU.1.22L (самая популярная на тот момент) у которой такоеже расположение компаса … такое-же неправильное расположение компаса на шилде у аэроквада …
если В libraries/AP_ADC/AP_ADC_ADS7844.cpp выбрать FFIMU оси компаса должны быть скорректированы программно …
нужно смотреть , может в вашей версии уже выкосили коррекцию осей под FFIMU , поскольку эти платы сняты с производства …
склонение установить не удается, цифра не сохраняется
В цифре, вместо запятой, нужно ставить точку
вместо запятой, нужно ставить точку
или наоборот, в зависимости от региональных настроек вроде
Команда
compass offsets
сейчас не функционирует. Мне бы тоже весьма хотелось узнать, каким образом установить оффсеты компаса. Где-то мелькало, что оффсеты якобы сами собой настраиваются после нескольких полетов, значит, надо после арминга двигов покрутить руками коптер, чтобы оффсеты установились?
Пираты, а подскажите плз, где написано, как правильно развести питание всего этого чуда, в частности, можно ли питать от стабилизатора меги или БЕК ставить, или от регулей?
Лично я, как придет бек, буду питать от него, а пока что из 3х разъемов выдернул средний контакт, в 4-м оставил.
от регулей имхо тут все питают, кто-то любит сразу от аккума в соответствующий разъем, но потом у одни выгорает стаб, у других просто греется как ютюг, а если коротнет - то прощай ардуинка со всеми датчиками =)
Напрямую нельзя подавать на Ардуину, там входное напряжение ~7В, если подать больше, стабилизатор будет сильно греться и в итоге сгорит. Я питаю от одного из ESC. Видео-канал (Камера, OSD, Передатчик) питается от своей батареи.
Напрямую нельзя подавать на Ардуину, там входное напряжение ~7В, если подать больше, стабилизатор будет сильно греться и в итоге сгорит. Я питаю от одного из ESC. Видео-канал (Камера, OSD, Передатчик) питается от своей батареи.
Если речь про ArduiniMega то там же питание от 7 до 12(рекомендованное) и 6-20 (мин. макс.), если верить этому: arduino.cc/en/Main/ArduinoBoardMega
А ESC вроде 5В выдает, или что-то путаю?
ESC выдает 5, выше имелось в виду, что от аккумулятора на ардуину нельзя напряжение подавать. От ESC питание подают на +5В платы, а не на вход стабилизатора. От 3S стабилизатор весьма сильно греется, аж запах идет.
ESC выдает 5, выше имелось в виду, что от аккумулятора на ардуину нельзя напряжение подавать. От ESC питание подают на +5В платы, а не на вход стабилизатора. От 3S стабилизатор весьма сильно греется, аж запах идет.
Ага, тогда понятно! Спасибо!
вопрос возник в догонку, так как напругу выдаем без стабилизатора, напрямую, скачков напряжения в esc не наблюдается, в теории спалить чип Ардуины есть вероятность?
так как напругу выдаем без стабилизатора
Что значит без стабилизатора? BEC и есть стабилизатор 😉 Просто совмещен с ESC
Все, вопросов больше не имею! 😃
Тут непонятки случились у меня. В Mission planer 1.1.11 CLI режиме все нормально, настройки читаются, тесты вроде проходят. Перевожу в полетный режим и мавлинк не коннектится. Пробовал на двух ардуинках. Заливал прошивку по новой (MegaPirateNG 2.0.49 Beta4). После шаманских танцев все же может увидить, но вытащишь USB, снова вставишь и все…
Есть мысли откуда копать?
Есть мысли откуда копать?
Посмотрите через простой терминал а не планер, например через Putty или Serial Monitor в Arduino IDE.
Посмотрите через простой терминал а не планер, например через Putty или Serial Monitor в Arduino IDE.
если не секрет, то что я должен увидеть?
serial monitor написал Redy to Fly…
и как назло соединился с планером.
сейчас воткнул во вторую ардуину и все, в Serial Monitor остановился на GPS enabled
оси компаса на плате не соответствуют осям гиры и акселя … за основу моей платы бралась плата FFIMU.1.22L (самая популярная на тот момент) у которой такоеже расположение компаса … такое-же неправильное расположение компаса на шилде у аэроквада …
если В libraries/AP_ADC/AP_ADC_ADS7844.cpp выбрать FFIMU оси компаса должны быть скорректированы программно …
нужно смотреть , может в вашей версии уже выкосили коррекцию осей под FFIMU , поскольку эти платы сняты с производства …
А в каком месте ковырять?
сейчас воткнул во вторую ардуину и все, в Serial Monitor остановился на GPS enabled
Смотрите что у вас с датчиками. Не проходит инициализация. Либо они у вас неправильно подключены либо не те датчики выбраны.
Тут непонятки случились у меня. В Mission planer 1.1.11 CLI режиме все нормально, настройки читаются, тесты вроде проходят. Перевожу в полетный режим и мавлинк не коннектится. Пробовал на двух ардуинках. Заливал прошивку по новой (MegaPirateNG 2.0.49 Beta4). После шаманских танцев все же может увидить, но вытащишь USB, снова вставишь и все…
Есть мысли откуда копать?
Датчики все стоят, работают?
Несколькими постами выше я описывал подобную проблему, но у меня не было датчиков. Плата висла при инициализации барометра. Все решилось перекомпилированием прошивки с установкой HIL_MODE_ATTITUDE.
Так что копать в первую очередь советую в сторону железа.
Продолжение вопросов по компасу. После установки склонения (спасибо за запятую), компас стал работать идеально. До изменения осей в исходниках дело не дошло. Однако я на одном железе пытаюсь работать с multiwii и мегапиратом. После прошивки в multiwii и назад в пират, все опять сломалось. (В multiwii компас адекватно не работает). Под подозрения попали параметры в eeprom. Очистил его и настроил с нуля опять. Компас заработал, но не так хорошо как раньше - при наклоне heading слегка отклоняется (может это нормально?). Теперь сохраняю и сравниваю параметры. Может кто поделится файликом с параметрами при работающем компасе?
Возник тут один вопрос, в прошивке ArduPirate есть такой параметр как HIL, я о нем писал выше. Может кто подскажет, как расшифровывается HIL, и что значат параметры HIL_MODE_DISABLED, HIL_MODE_ATTITUDE, HIL_MODE_SENSORS ?
Если ставлю HIL_MODE_ATTITUDE, то ArduPanner позволяет подключаться без датчиков, но при этом в консоль 50 раз в секунду пишет вот такую вот хрень:
"
Port open
Init MegaPirateNG V2.0.49 Beta
Free RAM: 17894213
FW Version 111
----------------------------------------
GPS
----------------------------------------
disabled
Ready to FLY
U3()
U%LLLLLLLL-?
U%LLLLLLLL??
U%LLLLLLLL?`
U%LLLLLLLLl
U%LLLLLLLLF?
U%LLLLLLLL?
U%LLLLLLLL??
U %LLLLLLLL?
U
%LLLLLLLLu
"
Все это происходит в методе: loop()->fifty_hz_loop()->gcs_send_message(MSG_RADIO_OUT)->gcs0.send_message(id)->mavlink_send_message(chan,id, packet_drops)->mavlink_try_send_message(chan, id, packet_drops)->send_radio_out(chan)-> mavlink_msg_servo_output_raw_send( chan, motor_out[0], motor_out[1],
motor_out[2], motor_out[3], motor_out[4], motor_out[5], motor_out[6], motor_out[7]);
Может кто залезал в такие дебри и подскажет?
Может кто подскажет, как расшифровывается HIL
code.google.com/p/arducopter/wiki/QuadHil
Hardware In Loop