Проект "Трикоптер" — различия между версиями
Строка 36: | Строка 36: | ||
== Программирование == | == Программирование == | ||
− | Программирование осуществлялось на языке/диалекте Wiring-C++ | + | Программирование осуществлялось на языке/диалекте 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]; | ||
+ | } | ||
+ | |||
+ | |||
+ | Использование оверсэмплинга, тоесть многократного повторного чтения входа, позволяет увеличить разрешение на бит. | ||
+ | |||
+ | ===задание угловой скорости=== | ||
+ | |||
+ | На данном этапе, управление аппаратом организовано посредством задания угловой скорости вокруг каждой оси с пульта управления. Данные о положении джойстиков кодируются и передаются на приемник, находящийся на коптере. Микроконтроллер получает информацию с приемника и приводит ее к формату удобному для вычисления. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
=трикоптер v1.1= | =трикоптер v1.1= |
Версия 00:18, 13 сентября 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]; }
Использование оверсэмплинга, тоесть многократного повторного чтения входа, позволяет увеличить разрешение на бит.
задание угловой скорости
На данном этапе, управление аппаратом организовано посредством задания угловой скорости вокруг каждой оси с пульта управления. Данные о положении джойстиков кодируются и передаются на приемник, находящийся на коптере. Микроконтроллер получает информацию с приемника и приводит ее к формату удобному для вычисления.
трикоптер v1.1
После отладки алгоритма и тестовых полетов, рама коптера пришла в полную негодность, появились трещины и люфты. Для продолжения работы понадобился новый трикоптер. Версия 1.1 почти в два раза больше первой, лучи подросли до 30см, увеличилась и площадка под электронику .Новые шасси должны хорошо аммортизировать жесткие посадки и обеспечивать более стабильный взлет. Электроника осталась прежней.
Рама собрана, начинается разводка проводов.
Почти вся электроника на своих местах
Коптер - первые минуты на ногах.
Результаты
- Данный проект был представлен на международной конференции школьников Сахаровские Чтения 2011, где удостоился специального диплома "за успешное продвижение в работе над перспективной темой".
- 15 Июня 2011г. трикоптер, совершил свой первый полет
Планы
В дальнейшем планируется создать адаптивный (самонастраивающийся) PID-регулятор.