Съдържание:

Блок за управление на квадрокоптер ArDrone 2.0 на модул MPU6050 и ESP8266: 7 стъпки
Блок за управление на квадрокоптер ArDrone 2.0 на модул MPU6050 и ESP8266: 7 стъпки

Видео: Блок за управление на квадрокоптер ArDrone 2.0 на модул MPU6050 и ESP8266: 7 стъпки

Видео: Блок за управление на квадрокоптер ArDrone 2.0 на модул MPU6050 и ESP8266: 7 стъпки
Видео: Тестирование самодельного квадрокоптера на ESP32 2024, Ноември
Anonim
Image
Image
Свързване на ESP8266 към точката за достъп Ar Drone 2.0
Свързване на ESP8266 към точката за достъп Ar Drone 2.0

Размерът, цената и наличността на Wi-Fi ви позволяват да направите бюджетен контролен блок за квадрокоптера ArDrone 2.0 на модула ESP8266 (цени на AliExpress, Gearbest). За управление ще използваме модула Gy-521 на чипа MPU6050 (жироскоп, акселерометър).

Папагалът AR. Дронът е радиоуправляем квадрокоптер, тоест хеликоптер с четири основни ротора, поставени върху отдалечени диагонални лъчи. AR. Самият Drone работи на операционната система Linux и почти всеки смартфон или таблет със сензорен екран с Android или iOS може да действа като дистанционно управление за квадрокоптера. Разстоянието на стабилен контрол над Wi-Fi е от 25 до 100 метра и зависи от стаята и метеорологичните условия, ако полетите се извършват на улицата.

Стъпка 1: Свързване на ESP8266 към точката за достъп Ar Drone 2.0

Когато е активирано, AR. Drone създава SSIS точка за достъп "ardrone_XX_XX". Свързване без парола.

Нека се опитаме да се свържем с точката за достъп Ar. Dron с помощта на AT команди Свържете картата ESP8266 към com порта на компютъра чрез захранване с USB адаптер UART 3.3 V.

Отворете Arduino IDE, монитора на серийния порт и изпратете AT команди до ESP Board (квадрокоптерът трябва да е активиран)

Стъпка 2: Комуникация с AR. Дронът се изпълнява с помощта на AT команди

Командите се изпращат до AR. Drone като UDP или TCP пакети;

Един UDP пакет трябва да съдържа поне една пълна команда или повече; Ако пакетът съдържа повече от една команда, знакът 0x0A се използва за разделяне на командите.

Низовете са кодирани като 8-битови ASCII знаци;

Максималната дължина на командата е 1024 знака;

Между командите има закъснение от 30 MS.

Командата се състои от

AT * [име на команда] = [последователен номер на команда като низ] [, аргумент 1, аргумент 2 …]

Списък на основните AT команди за управление на AR. Дрон:

AT * REF-използва се за излитане, кацане, нулиране и аварийно спиране;

AT*PCMD-тази команда се използва за контрол на AR. Дрон движение;

AT*FTRIM - в хоризонталната равнина;

AT*CONFIG-конфигуриращ AR. Параметри на дрон;

AT*LED-задава LED анимации на AR. Дрон;

AT*ANIM инсталираща анимация на полета на AR. Дрон.

В * COMWDG-команда за нулиране на наблюдател-ние го изпращаме постоянно до квадрокоптера.

Следните портове се използват за комуникация:

Порт 5556-UDP-изпращане на команди до AR. Дрон;

Порт 5554-UDP-получаване на пакети данни от AR. Дрон;

Порт 5555-отговор на поточни видео пакети от AR. Дрон;

Порт 5559-TCP пакети за критични данни, които не могат да бъдат загубени, обикновено за конфигурация.

Клиентът се изключва от UDP порта след закъснение от 2 секунди след изпращане на последната команда !!! - следователно трябва постоянно да изпращате команди, ако е необходимо-AT*COMWDG.

Помислете за получаване на навигационни данни от ARDrone (порт 5554-UDP). Пакетът за навигационни данни в демонстрационен режим е дълъг 500 байта. Ако нещо се обърка, дронът може да изпрати 32-и 24-байтов пакет. Ако пакетът е с дължина 24 байта, това означава, че порт 5554 е в режим BOOTSTRAP и трябва да се свържете отново с порта, за да го превключите в демо режим ARDrone може да предава навигационни данни на клиента в две форми:

съкратено (или демонстрационно), с размер 500 байта. завършен.

За да получите демонстрационни данни, първо изпратете четири байта 0x01, 0x00, 0x00, 0x00 към порт 5554 и след това изпратете команда до порт 5556

AT*CONFIG = "+(seq ++)+", / "общо: navdata_demo \", / "TRUE \", където seq е поредният номер на командата.

Структура на пакета от данни за навигация. В началото на пакета има 4 именовани стойности:

32-битова заглавка на пакет: флагове за състояние на хеликоптер 32 бита;

поредният номер на последната команда, изпратена до хеликоптера от клиента 32 бита;

визия флаг 32 бита. Следваща заглавка на опцията navdata: 20-23.

Опцията navdata има следните полета:

АКУМУЛАТОР = 24; заряд на батерията като процент;

ПИТЧ = 28; ъгъл на наклон по надлъжната ос;

ROLL = 32; ъгъл на наклон спрямо напречната ос;

YAW = 36; ъгъл на въртене спрямо вертикалната ос;

ВИСИНА = 40; височина;

VX = 44; скорост на оста x;

VY = 48; скорост на оста y;

VZ = 52; скорост по оста z.

Стъпка 3: Свързване на дисплея Nokia 5110 към платката ESP8266

Свързване на дисплея Nokia 5110 към платката ESP8266
Свързване на дисплея Nokia 5110 към платката ESP8266

Свържете дисплея на Nokia 5110 към модула ESP8266 и изведете някои навигационни данни към него и към монитора на серийния порт

Стъпка 4: Получаване на навигационни данни и показването им на дисплея на Nokia5110

Получаване и показване на данни за навигация на дисплея на Nokia5110
Получаване и показване на данни за навигация на дисплея на Nokia5110

Изтеглете (скица ardrone_esp8266_01. Ino) и наблюдавайте изхода на навигационни данни към серийния порт и екрана на дисплея.

Стъпка 5: Изпращане на команди за излитане и кацане

Сега ще добавим към нашия проект излитането и кацането на квадрокоптера с команди от дистанционното управление. За да излетите, трябва да изпратите команда

AT*REF = [Пореден номер], 290718208

За кацане

AT*REF = [Пореден номер], 290717696

Преди излитане трябва да изпратите команда за хоризонтално калибриране, в противен случай Ar Drone няма да може да се стабилизира по време на полет.

AT * F TRIM = [Пореден номер]

Качете скицата ardrone_esp8266_02.ino () на платката ESP8266, включете квадрокоптера Ar Drone 2.0 и проверете работата на бутона. Когато щракнете-излитане, следващия път, когато щракнете-кацане и т.н.

Стъпка 6: Свързване на MPU6050 за управление на Ardrone 2.0

Свързване на MPU6050 за управление на Ardrone 2.0
Свързване на MPU6050 за управление на Ardrone 2.0
Свързване на MPU6050 за управление на Ardrone 2.0
Свързване на MPU6050 за управление на Ardrone 2.0

Сензори за определяне на позицията в космоса се използват за управление на квадрокоптери. Чипът MPU6050 съдържа както акселерометър, така и жироскоп на борда, както и температурен сензор. MPU6050 е основният елемент на модула Gy-531 (фиг. 15.44). В допълнение към този чип, модулната платка съдържа необходимото свързване MPU6050, включително издърпващи се резистори на интерфейса I2C, както и 3,3-волтов стабилизатор на напрежение с малък спад на напрежението (при захранване на 3,3 волта, изходът на стабилизатор ще бъде 3 точно волта) с филтърни кондензатори.

Свързване към микроконтролера чрез I2C протокол.

Стъпка 7: Управление на квадрокоптера с помощта на MPU6050

Управление на квадрокоптера с помощта на MPU6050
Управление на квадрокоптера с помощта на MPU6050

Използването на акселерометъра и жироскопа ви позволява да определите отклонението по осите x и y, а отклонението „превърнете“в команди за преместване на квадрокоптера по съответните оси. Превод на показанията, получени от сензора, до ъгъла на отклонение.

командата за изпращане до Ar Drone за контрол на полета

AT*REF = [Пореден номер], [Флаг битово поле], [Ролка], [Височина], [Gaz], [Яу]

Стойностите на Roll и Pitch в диапазона от -1 до 1 са взети от таблицата const int float , индексът съответства на ъгъла на отклонение, изчислен от данните на сензора mu6050.

Качете скицата ardrone_esp8266_03.ino на платката ESP8266, включете квадрокоптера ar Drone 2.0 и проверете работата на дистанционното.

Препоръчано: