Проект "Трикоптер" — различия между версиями
Строка 5: | Строка 5: | ||
* [[Верховых Михаил]] | * [[Верховых Михаил]] | ||
* [[Кузькин Виталий]] | * [[Кузькин Виталий]] | ||
+ | * [[Пшенов Антон]] | ||
= Трикоптер v1.0= | = Трикоптер v1.0= | ||
Строка 84: | Строка 85: | ||
После отладки алгоритма и тестовых полетов, рама коптера пришла в полную негодность, появились трещины и люфты. Для продолжения работы понадобился новый трикоптер. Версия 1.1 почти в два раза больше первой, лучи подросли до 30см, увеличилась и площадка под электронику .Новые шасси должны хорошо аммортизировать жесткие посадки и обеспечивать более стабильный взлет. Электроника осталась прежней. | После отладки алгоритма и тестовых полетов, рама коптера пришла в полную негодность, появились трещины и люфты. Для продолжения работы понадобился новый трикоптер. Версия 1.1 почти в два раза больше первой, лучи подросли до 30см, увеличилась и площадка под электронику .Новые шасси должны хорошо аммортизировать жесткие посадки и обеспечивать более стабильный взлет. Электроника осталась прежней. | ||
− | Рама собрана, начинается разводка проводов | + | <gallery widths=330px heights=300px perrow = 2> |
− | + | Файл:wiring.JPG|Рама собрана, начинается разводка проводов | |
− | + | Файл:wiring1.JPG|Почти вся электроника на своих местах | |
− | + | Файл:copter.JPG|Коптер - первые минуты на ногах | |
− | Почти вся электроника на своих местах | + | Файл:DSC05675.JPG|Облетал v1.1 - [http://www.youtube.com/watch?v=bNR5G9Fad5g видео] |
− | + | </gallery> | |
− | |||
− | |||
− | Коптер - первые минуты на ногах | ||
− | |||
− | |||
− | |||
− | Облетал v1.1 - [http://www.youtube.com/watch?v=bNR5G9Fad5g видео] | ||
− | |||
− | |||
=создание адаптивного регулятора= | =создание адаптивного регулятора= | ||
Строка 113: | Строка 105: | ||
==алгоритм оптимизации== | ==алгоритм оптимизации== | ||
− | Алгоритм swarm был написан Антоном Пшеновым. | + | Алгоритм swarm был написан [[Пшенов Антон|Антоном Пшеновым]]. |
= Результаты = | = Результаты = | ||
Строка 119: | Строка 111: | ||
# 15 Июня 2011г. трикоптер, совершил свой [http://www.youtube.com/watch?v=5WGxiVSGcUY&feature=player_embedded первый полет] | # 15 Июня 2011г. трикоптер, совершил свой [http://www.youtube.com/watch?v=5WGxiVSGcUY&feature=player_embedded первый полет] | ||
# Первые фотографии с борта | # Первые фотографии с борта | ||
− | + | <gallery widths=220px heights=200px perrow = 3> | |
− | + | Файл:Height.jpg | |
− | + | Файл:Tree.jpg | |
− | + | Файл:House2.jpg | |
− | + | </gallery> | |
− | |||
== Планы == | == Планы == |
Версия 16:26, 25 декабря 2011
Проект, осуществляемый Клубом технического творчества при поддержке кафедры "Теоретическая Механика".
Содержание
Участники
Трикоптер v1.0
Оборудование
- Платформа сборки: Arduino
- Гироскопы: Melexis MLX90609 типа MEMS, 300 deg/sec
- Радиолинк: Spektrum DSM2 FHSS-технология. Аппаратура все время меняет частоту передачи, обеспечивая надежную связь в радиусе до 1км.
- Серво поворотного механизма: Hitec HS-81MG , с металлическим редуктором.
- Аккумулятор: Li-Po 2.2Ah 25C 11.1V
- Двигатели: 200Вт 1000kv бесколлекторные
Рама
Структурная схема
Программирование
Программирование осуществлялось на языке/диалекте Wiring-C++ в среде Arduino. Первым делом надо было просто заставить коптер полететь, поэтому алгоритмы обработки датчиков и управления предельно простые.
вычисление угловой скорости
В этом проекте использованы три гироскопа MLX90609 , они имеют аналоговые выходы для данных о угловой скорости и встроенный температурный датчик для устранения дрифта. Микроконтроллер получает от гироскопа значения в диапазоне 0-1024, затем с учетом чувствительности 300 градусов в секунду производит расчет угловой скорости. Кроме того вычитается байес - значение которое показывает сенсор при отсутствии вращения. Таким образом окончательная формула выглядит так:
for( int i=0; i<3; i++) { float tmp=0; for(int j=0;j<10;j++) { tmp+=analogRead(pin[i]);// oversampling } tmp/=10.0; omega[i]=(tmp-bias[i])*gain[i]; }
Использование оверсэмплинга, тоесть многократного повторного чтения входа, позволяет увеличить разрешение на бит.
задание угловой скорости
На данном этапе, управление аппаратом организовано посредством задания угловой скорости вокруг каждой оси с пульта управления. Данные о положении джойстиков кодируются и передаются на приемник, находящийся на коптере. Микроконтроллер получает информацию с приемника и приводит ее к формату удобному для вычисления.
ПИД-регулятор
В каноническом виде уравнение ПИД-регулятора выглядит так:
Программная реализация. Входом регулятора служит разность желаемой и текущей угловых скоростей.
error = RCToDeg(RC[i+1]) - omega[i]; Ipart+= error*Dt; Ipart= constrain(Ipart,-20,20); Dpart = (omega - oldomega)/float(Dt); oldomega =omega; axisPID = Pgain*error + Dgain*Dpart + Igain*Ipart;
трикоптер v1.1
После отладки алгоритма и тестовых полетов, рама коптера пришла в полную негодность, появились трещины и люфты. Для продолжения работы понадобился новый трикоптер. Версия 1.1 почти в два раза больше первой, лучи подросли до 30см, увеличилась и площадка под электронику .Новые шасси должны хорошо аммортизировать жесткие посадки и обеспечивать более стабильный взлет. Электроника осталась прежней.
Облетал v1.1 - видео
создание адаптивного регулятора
моделирование
Важной задачей для разработки эффективной системы управления является создание модели коптера. На ней можно провести все испытания, не подвергая при этом опасности реальный аппарат. Модель была запрограммирована в среде SIMULINK, управлять ей можно, как и настоящим коптером - при помощи пульта. первые виртуальные полеты
Программа пока работает не очень точно, это связано с тем что не вводились параметры реального аппарата.
регулятор
здесь будет про фази-пид
алгоритм оптимизации
Алгоритм swarm был написан Антоном Пшеновым.
Результаты
- Данный проект был представлен на международной конференции школьников Сахаровские Чтения 2011, где удостоился специального диплома "за успешное продвижение в работе над перспективной темой".
- 15 Июня 2011г. трикоптер, совершил свой первый полет
- Первые фотографии с борта
Планы
В дальнейшем планируется создать адаптивный (самонастраивающийся) PID-регулятор.
Публикации по теме проекта
- Веренинов И.А., Кузькин В.А. Разработка математической модели и прототипа трикоптера // Сборник трудов конференции "Неделя науки СПбГПУ", 2011 [направлено в печать] (prerint_v.01, prerint_v.02)