Изготовление системы стабилизации самолёта

Scott_Tiger

На C и C++. Программисту нужно уметь гуглом пользоваться 😃

huligan-26

Давай все запчасти схемы этапы сборки суда будем тоже учится ))

John_Locke
huligan-26:

Давай все запчасти схемы этапы сборки суда будем тоже учится ))

Ну, сама ардуина и гироскоп:
www.ebay.com/itm/221481619677
www.ebay.com/itm/370999242686
Программатор у меня уже есть usbasp. Тип такого:
www.ebay.com/itm/191155030695
Для того, чтобы во время работы ардуины , можно было передавать данные на компьютер (показания датчиков, например), буду покупать usb uart переходник. Если у вас есть com порт на компе, то можно передавать через него. Выглядит вот так:

К сожалению, у меня ком порта нету. Поэтому буду заказывать этот переходник. Он вставляется в usb, и после установки драйверов компьютер видит его, как ком порт. Пока не знаю, какой взять. Полноценный со всеми выходами ком порта, или самый дешёвый, имеющий на выходе питание (vcc), землю(gnd), TxD (вывод данных),RxD (ввод даных).
Языки C и C++ более или менее знаю. С этим попроще. Хотя, учитывая, что используется облегчённая версия, заточенная под ардуину, думаю особых проблем не будет. Нужно только почитать про функции , используемые для микроконтроллеров. Пока писать особо нечего - жду из китая всё это добро. Думаю, к сентябрю всё придёт. В планах не только сделать систему стабилизации, но и просто с ардуиной поработать. Если есть вопросы, то постараюсь ответить)
Когда будет на руках всё, что надо, буду здесь писать, что и как) Конечно не без помощи пользователя Андрей Евдокимов

huligan-26

Я буду с удовольствием читать так как сейчас собираю ЯК-3 неплохо было бы такую же систему поставить ! Классно она выравнивает самолет и плавность управление с ней да ?

Вообще шикарно копейки стоят запчасти и доставка бесплатная ! если ты будешь все описывать как сделать я тоже сделаю ))

Scott_Tiger

Кстати, по Pro Mini есть два интересных нюанса:

  1. У китайцев есть по меньшей мере три разные версии этой платы (Arduino Pro Mini 5В 16МГц) - первая является точной копией Pro Mini, как та представлена на официальном сайте проекта, на второй входы A6 и A7 перенесены на свободную короткую сторону (примерно там, где у официальной платы кнопка Reset, кнопка при этом сдвинута чуть ближе к контроллеру), на третьей версии на эту короткую сторону, кроме A6 и A7 также продублированы Vcc и земля. Я несколько раз покупал в одном месте (у алисы, не реклама), три раза приходили разные по исполнению платы. Возможно, есть и другие версии.

  2. Защиты от переполюсовки на этих платах нет, рекомендую брать сразу десятками. Таможня ко мне вопросов не имела.

John_Locke
Scott_Tiger:

У китайцев есть по меньшей мере три разные версии этой платы

Судя по фото, я заказал третью версию) В принципе, можно взять пару штук про запас. Да и от переполюсовки можно поставить полевой транзистор. Вообще, надо на vcc и gnd впаять не ноги, а разъём с ключом, дабы избежать таких неприятностей.
Думаю ещё, может прикупить ардуино уно, хотя не уверен, надо ли переплачивать за почти тоже самое. Ну памяти побольше, да и программатор не нужен. Ну а во всём остальном - тот же агрегат, на мой взгляд. Что скажете? Может я ошибаюсь?

huligan-26:

Классно она выравнивает самолет и плавность управление с ней да ?

Ну, я хочу примерно этого и добиться)

Scott_Tiger
John_Locke:

Думаю ещё, может прикупить ардуино уно, хотя не уверен, надо ли переплачивать за почти тоже самое. Ну памяти побольше, да и программатор не нужен. Ну а во всём остальном - тот же агрегат, на мой взгляд. Что скажете? Может я ошибаюсь?

Памяти там ровно столько же, ибо стоит такой же МК Atmega328. Если хочется плату, в которую сразу можно воткнуть USB, можно порекомендовать Nano, из Nano самая удачная модель выпускается под брендом Freeduino, впрочем, это не критично. “Большие” платы, типа Uno, ориентированы на установку сверху т.н. шилдов - готовых плат самого разнообразного содержания, что, на мой взгляд, интересно чуть менее, чем нисколько. Также только в “большом” форм-факторе есть Mega с контроллером 2560, в котором и памяти больше, и входов-выходов больше. Задача стабилизации полёта самолёта вполне решаема на 328, см. тот же MultiWii, а опрос большого количества аналоговых портов только отнимает процессорное время, которого в 2560 ничуть не больше, чем в 328.

John_Locke
huligan-26:

Это будет вот такая вещь то есть у нее будут такие же функции ?

Ну, примерно да) Наберите в ютубе multiwii airplane , там есть интересные видео.
Меня вот что интересует: на видео, настройка контроллера производится через спец. программу на компьютере. Через переходник usb uart можно будет подружить компьютер с данной программой?

huligan-26
John_Locke:

Ну, примерно да) Наберите в ютубе multiwii airplane , там есть интересные видео.
Меня вот что интересует: на видео, настройка контроллера производится через спец. программу на компьютере. Через переходник usb uart можно будет подружить компьютер с данной программой?

Я честное слова не понимаю о чем ты пишешь но хочу научится поэтому буду следить за твоими делишками ! вот такую вещь как не видео я хочу хорошо она помогает новичкам а я и есть тот самый новичок )))

John_Locke
huligan-26:

а я и есть тот самый новичок

В авиации я и сам пока дальше самолёта-тренера и простого вертолёта не ушёл)
То, что я пишу , касаемо выходов, не обязательно знать. Я попытаюсь сделать, и в случае успеха, опишу всё максимально просто, в формате - что купить, и куда припаять

huligan-26
John_Locke:

В авиации я и сам пока дальше самолёта-тренера и простого вертолёта не ушёл)
То, что я пишу , касаемо выходов, не обязательно знать. Я попытаюсь сделать, и в случае успеха, опишу всё максимально просто, в формате - что купить, и куда припаять

Это как раз то что мне надо что купить куда припаять как прошить ! Ты наверное сделаешь самую большую услугу всем новичкам ))) я тоже начал этим заниматься когда племяннику подарили 3 каналку вертолет потом цестна по видио на ютюбе теперь вот ЯК-3 строим

Scott_Tiger
John_Locke:

Через переходник usb uart можно будет подружить компьютер с данной программой?

Да.

gorbln

Недавно собрал стаб на мультивие себе на цессну из потолочки. Пока не летал, только настроил.
Будете собирать контроллер самостоятельно - обращайте внимание на расположение датчика (MPU6050) и его ориентацию в пространстве. От этого будут зависеть настройки в файле config.h (или в def.h, если захотите “запомнить” свою плату).

Мой контроллер, установлен в цесну. Сделан на Arduino pro mini и модуле MPU6050. Гейские радужные провода уже заменены на нормальные МГТФ.

Ну и это… “буду собирать - спрошу” - тупая тактика. Почитайте минимум факов по мультивию.
Первая ссыль - блог Патрика - чела, который плотно занимается именно вием для самолёта.
Вторая ссыль - официальный фак мультивия (довольно-таки устаревший - но там есть ответы на 90% вопросов - надо только искать)
Третья ссыль - русский (в отличие от остальных ссылок) ресурс с довольно подробным описанием как, чего и куда. Наполняет ресурс Дмитрий omegapraim с этого форума. Как минимум - надо прочитать его. Забить на разделы про ГПС и прошивку регуляторов - на самоле оно не особо актуально.

К слову - словил тут фейл. AUX2 на ноге D8 - у меня не заработал. Ещё проверю, почему так получилось - но вот так. В интернетах рекомендуют переносить его на D12 - но на самолёте там висит серва.

Scott_Tiger
gorbln:

AUX2 на ноге D8 - у меня не заработал.

Там, по идее, одно-единственное место, где это играет, в def.h:

#if !defined(RCAUXPIN8)
#if !defined(MONGOOSE1_0)

#endif
#else
#define BUZZERPIN_PINMODE ;
#define BUZZERPIN_ON ;
#define BUZZERPIN_OFF ;
#define RCAUXPIN
#endif

и в RX.cpp

/************* atmega328P’s Specific Aux2 Pin Setup *********************/
#if defined(PROMINI)
#if defined(RCAUXPIN)
PCICR |= (1 << 0) ; // PCINT activated also for PINS [D8-D13] on port B
#if defined(RCAUXPIN8)
PCMSK0 = (1 << 0);
#endif
#if defined(RCAUXPIN12)
PCMSK0 = (1 << 4);
#endif
#endif
#endif

Как бы нет причин не работать.

gorbln

Как бы да, но как бы нет =))) Не работает, скотино =)

fat_hamster

AUX2 на ноге D8

дефайном включается

тут есть тема “мультивии на самолете” у нас на форуме если что… не фак, не разжевано, но что-то да есть

    /*********************************    Aux 2 Pin     ***********************************/
      /* possibility to use PIN8 or PIN12 as the AUX2 RC input (only one, not both)
         it deactivates in this case the POWER PIN (pin 12) or the BUZZER PIN (pin 8) */
      //#define RCAUXPIN8
      //#define RCAUXPIN12
gorbln
fat_hamster:

дефайном включается

Ну ёшкин пень… Я вием занимаюсь со времён, когда гироскопы из WiiMotion выпиливали. Естественно, я в курсе про этот дефайн =)))) Не работает, зараза.

fat_hamster

Ну мало ли… Я вот тоже про него знал, а потом когда не работал вход - подумал, что порт сжег

Scott_Tiger

Егор, попробуйте подебажить потихоньку. Я бы начал в такой последовательности:

1а. При наличии осциллографа посмотрите, приходит ли на 8-й пин нужный сигнал (лучше смотреть на ноге самой атмеги).
1б. При отстутствии осциллографа, проверьте простым скетчем. Должен ловить смену состояния пина в одну из сторон 50 раз в секунду или около того, и/или считать длину импульса в микросекундах. Впрочем, такую проверку и при наличии осциллографа провести стоит.
2. Если с железом все ОК, то, вероятно, что-то сломалось в коде. Закомментируйте вызовы serialCom() и подебажьте через стандартный Serial.print() по всем кускам кода, где идёт обработка логики входа с приёмника.
3. Если не получается, попробуйте залить оригинальный мультивий с правками только config.h. Мало ли что случайно поломали.

Это же компьютеры, они всегда работают только так, как им велено. Чудес не бывает…

gorbln

Ну, для начала - я сам тупой. Тестил изменения на плате, у которой к “AUX2” подключена какая-то левая нога, типа А5. =)
Ну а с контроллером в самолёте - очистил EEPROM, скачал чистый вий 2.3, добавил туда свою плату и раскомментил RCAUXPIN8 - залил - всё пошло как по маслу. Видимо изначально взял корявый скетч (у меня на коптерах прошивка маховика, а 2.3 нашёл в архиве - видимо, я с ней до этого что-то делал)

Потестил полёт - очень понравилось в режиме акро, очень НЕ понравилось в режиме LEVEL. В левеле - самолёт просто клевал носом и нёсся к земле. Такое ощущение, что контроллер не старается выравнивать самолёт, а просто выставляет по элеронам и РВ какие-то усреднённые значения, необходимые, по его мнению, чтобы выровнять самолёт. И пофиг, что он падает =)))

Зато в акро - прекрасно. Самолёт летает как в симуляторе - плавно, ровно. На ветер пофигу (до определённого предела, конечно).