Taula de continguts:

Unitat de control ArDrone 2.0 Quadcopter en mòduls MPU6050 i ESP8266: 7 passos
Unitat de control ArDrone 2.0 Quadcopter en mòduls MPU6050 i ESP8266: 7 passos

Vídeo: Unitat de control ArDrone 2.0 Quadcopter en mòduls MPU6050 i ESP8266: 7 passos

Vídeo: Unitat de control ArDrone 2.0 Quadcopter en mòduls MPU6050 i ESP8266: 7 passos
Vídeo: Performance Testing IoT Application with ESP8266 Mounted On A Drone 2024, Desembre
Anonim
Image
Image
Connexió de l’ESP8266 al punt d’accés Ar Drone 2.0
Connexió de l’ESP8266 al punt d’accés Ar Drone 2.0

La mida, el preu i la disponibilitat de Wi-Fi us permeten crear una unitat de control pressupostari per al quadrocòpter ArDrone 2.0 al mòdul ESP8266 (preus a AliExpress, Gearbest). Per al control, utilitzarem el mòdul Gy-521 al xip MPU6050 (giroscopi, acceleròmetre).

El lloro AR. El drone és un quadrocòpter radiocontrolat, és a dir, un helicòpter amb quatre rotors principals situats en feixos diagonals remots. La RA. El mateix Drone funciona amb el sistema operatiu Linux i gairebé qualsevol telèfon intel·ligent o tauleta amb pantalla tàctil Android o iOS pot actuar com a control remot del quadcopter. La distància de control estable sobre Wi-Fi és de 25 a 100 metres i depèn de la sala i de les condicions meteorològiques, si es fan vols al carrer.

Pas 1: connectar l'ESP8266 al punt d'accés Ar Drone 2.0

Quan està activat, AR. Drone crea un punt d'accés SSIS "ardrone_XX_XX". Connexió sense contrasenya.

Intentem connectar-nos al punt d'accés Ar. Dron mitjançant ordres AT Connecteu la targeta ESP8266 al port de com de l'ordinador mitjançant la font d'alimentació de l'adaptador USB UART 3,3 V.

Obriu l'IDE Arduino, el monitor de port sèrie i envieu comandes AT a la placa ESP (el quadcòpter ha d'estar habilitat)

Pas 2: Comunicació amb RA. El dron es realitza mitjançant ordres AT

Les ordres s’envien a AR. Drone com a paquets UDP o TCP;

Un sol paquet UDP ha de contenir almenys una comanda completa o més; Si el paquet conté més d'una ordre, el caràcter 0x0A s'utilitza per separar les ordres.

Les cadenes es codifiquen com a caràcters ASCII de 8 bits;

La longitud màxima de l'ordre és de 1024 caràcters;

Hi ha un retard de 30 MS entre les ordres.

L'ordre consisteix en

AT * [nom de l'ordre] = [número de seqüència d'ordres com una cadena] [, argument 1, argument 2 …]

Llista de les principals ordres AT per controlar AR. Dron:

AT * REF: s'utilitza per a l'enlairament, aterratge, restabliment i parada d'emergència;

AT * PCMD: aquesta ordre s'utilitza per controlar AR. Moviment de drons;

AT * FTRIM: al pla horitzontal;

A * CONFIG configurant AR. Paràmetres del dron;

AT * LED: estableix animacions de LED a RA. Dron;

AT * ANIM: instal·la animació de vol a RA. Dron.

AT * COMWDG-watchdog reset command-l'enviem constantment al quadcopter.

Els ports següents s’utilitzen per a la comunicació:

Port 5556-UDP: enviament d’ordres a AR. Dron;

Port 5554-UDP que rep paquets de dades de RA. Dron;

Port 5555-Resposta de paquets de vídeo en continu des de RA. Dron;

Paquets del port 5559-TCP per a dades crítiques que no es poden perdre, normalment per a la configuració.

El client es desconnecta del port UDP després de 2 segons després d’enviar l’última ordre !!! - per tant, heu d'enviar ordres constantment, si cal-AT * COMWDG.

Penseu a obtenir dades de navegació des de ARDrone (port 5554-UDP). El paquet de dades de navegació en mode demostració té una longitud de 500 bytes. Si alguna cosa no funciona, el dron pot enviar un paquet de 32 i 24 bytes. Si el paquet té una longitud de 24 bytes, això vol dir que el port 5554 està en mode BOOTSTRAP i heu de tornar a connectar-vos al port per canviar-lo al mode de demostració. ARDrone pot transmetre dades de navegació al client de dues formes:

abreujat (o demostració), amb una mida de 500 bytes. complet.

Per obtenir dades de demostració, envieu primer quatre bytes 0x01, 0x00, 0x00, 0x00 al port 5554 i després envieu una ordre al port 5556

AT * CONFIG = "+ (seq ++) +", / "general: navdata_demo \", / "TRUE \" on seq és el número seqüencial de l'ordre.

Estructura del paquet de dades de navegació. Hi ha 4 valors anomenats al començament del paquet:

Capçalera de paquet de 32 bits: indicadors d'estat de l'helicòpter de 32 bits;

el número de seqüència de l'última ordre enviada a l'helicòpter pel client de 32 bits;

bandera de visió de 32 bits. A continuació, l'opció Navdata Capçalera: 20-23.

L'opció navdata té els camps següents:

BATERIA = 24; càrrega de la bateria en percentatge;

PITCH = 28; angle d'inclinació al llarg de l'eix longitudinal;

ROLL = 32; angle d’inclinació respecte a l’eix transversal;

YAW = 36; angle de rotació respecte a l'eix vertical;

ALTITUD = 40; alçada;

VX = 44; velocitat de l'eix x;

VY = 48; velocitat de l'eix y;

VZ = 52; velocitat a l'eix z.

Pas 3: Connexió de la pantalla Nokia 5110 a la placa ESP8266

Connexió de la pantalla Nokia 5110 a la placa ESP8266
Connexió de la pantalla Nokia 5110 a la placa ESP8266

Connecteu la pantalla Nokia 5110 al mòdul ESP8266 i envieu-hi algunes dades de navegació i al monitor del port sèrie

Pas 4: Obtenir dades de navegació i mostrar-les a la pantalla Nokia5110

Obtenir dades de navegació i mostrar-les a la pantalla Nokia5110
Obtenir dades de navegació i mostrar-les a la pantalla Nokia5110

Baixeu-lo (sketch ardrone_esp8266_01. Ino) i observeu la sortida de les dades de navegació al port sèrie i a la pantalla.

Pas 5: enviament d’ordres d’enlairament i aterratge

Ara afegirem al nostre projecte l'enlairament i aterratge del quadcopter amb ordres del comandament a distància. Per enlairar-vos, heu d’enviar una ordre

AT * REF = [Número de seqüència], 290718208

Per aterrar

AT * REF = [Número de seqüència], 290717696

Abans de l'enlairament, heu d'enviar una ordre per al calibratge horitzontal, en cas contrari, l'Ar Drone no es podrà estabilitzar durant el vol.

AT * F TRIM = [Número de seqüència]

Pengeu l'esbós ardrone_esp8266_02.ino () a la placa ESP8266, activeu el quadcòpter Ar Drone 2.0 i comproveu el funcionament del botó. Quan feu clic a l'enlairament, la propera vegada que feu clic - aterratge, etc.

Pas 6: Connectar MPU6050 per controlar Ardrone 2.0

Connexió MPU6050 per controlar Ardrone 2.0
Connexió MPU6050 per controlar Ardrone 2.0
Connexió MPU6050 per controlar Ardrone 2.0
Connexió MPU6050 per controlar Ardrone 2.0

Els sensors per determinar la posició a l’espai s’utilitzen per controlar quadrocòpters. El xip MPU6050 conté un acceleròmetre i un giroscopi a bord, així com un sensor de temperatura. el MPU6050 és l'element principal del mòdul Gy-531 (Fig. 15.44). A més d’aquest xip, la placa del mòdul conté la connexió MPU6050 necessària, incloent resistències de tracció de la interfície I2C, així com un estabilitzador de voltatge de 3,3 volts amb una petita caiguda de tensió (quan s’alimenta a 3,3 volts, la sortida del estabilitzador serà de 3 volts exactament) amb condensadors de filtre.

Connexió al microcontrolador mitjançant el protocol I2C.

Pas 7: Control del Quadcopter mitjançant MPU6050

Control del Quadcopter mitjançant MPU6050
Control del Quadcopter mitjançant MPU6050

L’ús de l’acceleròmetre i el giroscopi permet determinar la desviació dels eixos x i y, i la desviació “es converteix” en ordres per moure el quadricòpter al llarg dels eixos corresponents. Traducció de les lectures rebudes del sensor a l’angle de deflexió.

l'ordre per enviar a l'Ar Drone per al control de vol

AT * REF = [Número de seqüència], [Marca el camp de bits], [Roll], [Pitch], [Gaz], [Yaw]

Els valors de Roll i Pitch en l'interval -1 a 1 es prenen de la taula const int float , l'índex correspon a l'angle de desviació calculat a partir de les dades del sensor mu6050.

Pengeu l'esbós ardrone_esp8266_03.ino a la placa ESP8266, activeu el quadrocòpter ar Drone 2.0 i comproveu el funcionament del comandament a distància.

Recomanat: