Indholdsfortegnelse:

ArDrone 2.0 Quadcopter Control Unit på MPU6050 og ESP8266 -modul: 7 trin
ArDrone 2.0 Quadcopter Control Unit på MPU6050 og ESP8266 -modul: 7 trin

Video: ArDrone 2.0 Quadcopter Control Unit på MPU6050 og ESP8266 -modul: 7 trin

Video: ArDrone 2.0 Quadcopter Control Unit på MPU6050 og ESP8266 -modul: 7 trin
Video: Parrot AR Drone Full Review 2024, Juli
Anonim
Image
Image
Tilslutning af ESP8266 til Ar Drone 2.0 Access Point
Tilslutning af ESP8266 til Ar Drone 2.0 Access Point

Størrelse, pris og tilgængelighed af Wi-Fi giver dig mulighed for at lave en budgetkontrolenhed til ArDrone 2.0 quadrocopter på ESP8266-modulet (priser på AliExpress, Gearbest). Til kontrol vil vi bruge Gy-521-modulet på MPU6050-chippen (gyroskop, accelerometer).

Parrot AR. Drone er en radiostyret quadrocopter, det vil sige en helikopter med fire hovedrotorer placeret på fjerntliggende diagonale bjælker. AR. Drone selv kører på Linux-operativsystemet, og næsten enhver Android eller iOS touch-screen smartphone eller tablet kan fungere som en fjernbetjening til quadcopter. Afstanden til stabil kontrol over Wi-Fi er fra 25 til 100 meter og afhænger af rummet og vejrforholdene, hvis flyvninger finder sted på gaden.

Trin 1: Tilslutning af ESP8266 til Ar Drone 2.0 Access Point

Når den er aktiveret, AR. Drone opretter et SSIS -adgangspunkt "ardrone_XX_XX". Opretter forbindelse uden adgangskode.

Lad os prøve at oprette forbindelse til Ar. Dron -adgangspunktet ved hjælp af AT -kommandoer Tilslut ESP8266 -kortet til computerens com -port via UART USB -adapterens strømforsyning 3,3 V.

Åbn Arduino IDE, den serielle portmonitor, og send AT -kommandoer til ESP -kortet (quadcopter skal være aktiveret)

Trin 2: Kommunikation med AR. Drone udføres ved hjælp af AT -kommandoer

Kommandoer sendes til AR. Drone som UDP- eller TCP -pakker;

En enkelt UDP -pakke skal indeholde mindst en komplet kommando eller mere; Hvis pakken indeholder mere end én kommando, bruges tegnet 0x0A til at adskille kommandoerne.

Strenge er kodet som 8-bit ASCII-tegn;

Den maksimale kommandolængde er 1024 tegn;

Der er en 30 MS forsinkelse mellem kommandoer.

Kommandoen består af

AT * [kommandonavn] = [kommandosekvensnummer som en streng] [, argument 1, argument 2 …]

Liste over de vigtigste AT -kommandoer til styring af AR. Drone:

AT * REF-bruges til start, landing, nulstilling og nødstop;

AT*PCMD-denne kommando bruges til at styre AR. Drone bevægelse;

AT*FTRIM - på det vandrette plan;

AT*CONFIG-konfigurerende AR. Drone parametre;

AT*LED indstiller LED-animationer på AR. Drone;

AT*ANIM-installation af flyve-animation på AR. Drone.

AT * COMWDG-watchdog reset-kommando-vi sender den konstant til quadcopter.

Følgende porte bruges til kommunikation:

Port 5556-UDP-kommandoer til AR. Drone;

Port 5554-UDP-modtagende datapakker fra AR. Drone;

Port 5555-Svar stream videopakker fra AR. Drone;

Port 5559-TCP-pakker til kritiske data, der ikke kan gå tabt, normalt til konfiguration.

Klienten afbryder forbindelsen til UDP -porten efter en forsinkelse på 2 sekunder efter afsendelse af den sidste kommando !!! - derfor skal du konstant sende kommandoer, hvis det er nødvendigt-AT*COMWDG.

Overvej at få navigationsdata fra ARDrone (Port 5554-UDP). Navigationsdatapakken i demo -tilstand er 500 bytes lang. Hvis noget går galt, kan dronen sende en pakke på 32 og 24 byte. Hvis pakken er 24 bytes lang, betyder det, at port 5554 er i BOOTSTRAP -tilstand, og du skal genoprette forbindelse til porten for at skifte den til demotilstand ARDrone kan overføre navigationsdata til klienten i to former:

forkortet (eller demo), 500 bytes i størrelse. komplet.

For at få demodata skal du først sende fire bytes 0x01, 0x00, 0x00, 0x00 til port 5554 og derefter sende en kommando til port 5556

AT*CONFIG = "+(seq ++)+", / "general: navdata_demo \", / "TRUE \", hvor seq er kommandoens sekventielle nummer.

Opbygning af navigationsdatapakken. Der er 4 navngivne værdier i begyndelsen af pakken:

32-bit pakkeoverskrift: helikopterstatusflag 32 bits;

sekvensnummeret for den sidste kommando sendt til helikopteren af klienten 32 bit;

vision flag 32 bit. Næste-navdata option Header: 20-23.

Navdata -indstillingen har følgende felter:

BATTERI = 24; batteriopladning i procent;

PITCH = 28; hældningsvinkel langs længdeaksen;

RULLE = 32; hældningsvinkel i forhold til tværaksen;

YAW = 36; rotationsvinkel i forhold til den lodrette akse;

HØJDE = 40; højde;

VX = 44; x-akse hastighed;

VY = 48; y-aksen hastighed;

VZ = 52; hastighed på z -aksen.

Trin 3: Tilslutning af Nokia 5110 -skærmen til ESP8266 -kortet

Tilslutning af Nokia 5110 -skærmen til ESP8266 -kortet
Tilslutning af Nokia 5110 -skærmen til ESP8266 -kortet

Tilslut Nokia 5110 -skærmen til ESP8266 -modulet, og send nogle navigationsdata til den og til den serielle portmonitor

Trin 4: Hent navigationsdata og vis dem på Nokia5110 -skærmen

Få navigationsdata og vis dem på Nokia5110 -skærmen
Få navigationsdata og vis dem på Nokia5110 -skærmen

Download (skitse ardrone_esp8266_01. Ino), og observer output fra navigationsdata til den serielle port og displayskærmen.

Trin 5: Send kommando til start og landing

Nu tilføjer vi til vores projekt start og landing af quadcopter med kommandoer fra fjernbetjeningen. For at starte skal du sende en kommando

AT*REF = [Sekvensnummer], 290718208

Til landing

AT*REF = [Sekvensnummer], 290717696

Inden start skal du sende en kommando til vandret kalibrering, ellers vil Ar Drone ikke kunne stabilisere sig under flyvningen.

AT * F TRIM = [Sekvensnummer]

Upload skitsen ardrone_esp8266_02.ino () til ESP8266 -kortet, tænd for Ar Drone 2.0 quadcopter og kontroller knappens funktion. Når du klikker på start, næste gang du klikker-landing osv.

Trin 6: Tilslutning af MPU6050 til styring af Ardrone 2.0

Tilslutning af MPU6050 til styring af Ardrone 2.0
Tilslutning af MPU6050 til styring af Ardrone 2.0
Tilslutning af MPU6050 til styring af Ardrone 2.0
Tilslutning af MPU6050 til styring af Ardrone 2.0

Sensorer til bestemmelse af positionen i rummet bruges til styring af quadrocopters. MPU6050 -chippen indeholder både et accelerometer og et gyroskop om bord samt en temperatursensor. MPU6050 er hovedelementet i Gy-531-modulet (fig. 15.44). Ud over denne chip indeholder modulkortet den nødvendige MPU6050-binding, herunder pull-up-modstande fra I2C-grænsefladen samt en 3,3-volt spændingsstabilisator med et lille spændingsfald (når den drives ved 3,3 volt, output fra stabilisator vil være 3 nøjagtigt volt) med filterkondensatorer.

Tilslutning til mikrokontrolleren ved hjælp af I2C -protokollen.

Trin 7: Styring af Quadcopter vha. MPU6050

Styring af Quadcopter vha. MPU6050
Styring af Quadcopter vha. MPU6050

Ved hjælp af accelerometeret og gyroskopet kan du bestemme afvigelsen på x- og y -akserne, og afvigelsen "bliver" til kommandoer til at flytte quadcopter langs de tilsvarende akser. Oversættelse af aflæsninger modtaget fra sensoren til afbøjningsvinklen.

kommandoen til at sende til Ar Drone for flyvekontrol

AT*REF = [Sekvensnummer], [Flag bit-felt], [Roll], [Pitch], [Gaz], [Yaw]

Værdierne for Roll and Pitch i området -1 til 1 er taget fra tabellen const int float , indekset svarer til afvigelsesvinklen beregnet ud fra mu6050 sensordata.

Upload skitsen ardrone_esp8266_03.ino den til ESP8266 Board, tænd for ar Drone 2.0 quadrocopter og kontroller fjernbetjeningens funktion.

Anbefalede: