Daftar Isi:

Unit Kontrol Quadcopter ArDrone 2.0 pada Modul MPU6050 dan ESP8266: 7 Langkah
Unit Kontrol Quadcopter ArDrone 2.0 pada Modul MPU6050 dan ESP8266: 7 Langkah

Video: Unit Kontrol Quadcopter ArDrone 2.0 pada Modul MPU6050 dan ESP8266: 7 Langkah

Video: Unit Kontrol Quadcopter ArDrone 2.0 pada Modul MPU6050 dan ESP8266: 7 Langkah
Video: Part 2. Datasheet, bit register dan data sensor suhu dari MPU6050 #tutorialMpu6050 2024, November
Anonim
Image
Image
Menghubungkan ESP8266 ke Titik Akses Ar Drone 2.0
Menghubungkan ESP8266 ke Titik Akses Ar Drone 2.0

Ukuran, harga, dan ketersediaan Wi-Fi memungkinkan Anda membuat unit kontrol anggaran untuk quadrocopter ArDrone 2.0 pada modul ESP8266 (harga di AliExpress, Gearbest). Untuk kontrol, kami akan menggunakan Modul Gy-521 pada chip MPU6050 (giroskop, akselerometer).

Burung Beo AR. Drone adalah quadrocopter yang dikendalikan radio, yaitu helikopter dengan empat rotor utama yang ditempatkan pada balok diagonal jarak jauh. AR. Drone sendiri berjalan pada sistem operasi Linux, dan hampir semua smartphone atau tablet layar sentuh Android atau iOS dapat bertindak sebagai remote control untuk quadcopter. Jarak kontrol stabil melalui Wi-Fi adalah dari 25 hingga 100 meter dan tergantung pada ruangan dan kondisi cuaca, jika penerbangan dilakukan di jalan.

Langkah 1: Menghubungkan ESP8266 ke Titik Akses Ar Drone 2.0

Saat diaktifkan, AR. Drone membuat titik akses SSIS "ardrone_XX_XX". Menghubungkan tanpa kata sandi.

Mari kita coba sambungkan ke access point Ar. Dron menggunakan perintah AT Hubungkan kartu ESP8266 ke com port komputer melalui catu daya adaptor USB UART 3.3 V.

Buka Arduino IDE, monitor port serial, dan kirim perintah AT ke ESP Board (quadcopter harus diaktifkan)

Langkah 2: Komunikasi Dengan AR. Drone Dilakukan Menggunakan Perintah AT

Perintah dikirim ke AR. Drone sebagai paket UDP atau TCP;

Satu paket UDP harus berisi setidaknya satu perintah lengkap atau lebih; Jika paket berisi lebih dari satu perintah, karakter 0x0A digunakan untuk memisahkan perintah.

String dikodekan sebagai karakter ASCII 8-bit;

Panjang perintah maksimum adalah 1024 karakter;

Ada penundaan 30 MS antara perintah.

Perintah terdiri dari

AT * [nama perintah] = [nomor urut perintah sebagai string] [, argumen 1, argumen 2 …]

Daftar perintah AT utama untuk mengendalikan AR. Dengung:

AT * REF-digunakan untuk lepas landas, mendarat, mengatur ulang, dan berhenti darurat;

AT*PCMD-perintah ini digunakan untuk mengontrol AR. Gerakan drone;

AT*FTRIM - pada bidang horizontal;

AT*CONFIG-mengonfigurasi AR. Parameter drone;

AT*LED mengatur animasi LED pada AR. Dengung;

AT*ANIM menginstal animasi penerbangan di AR. Dengung.

Masuk * COMWDG-perintah reset pengawas-kami mengirimkannya terus-menerus ke quadcopter.

Port berikut digunakan untuk komunikasi:

Port 5556-UDP-mengirim perintah ke AR. Dengung;

Port 5554-UDP-menerima paket data dari AR. Dengung;

Port 5555-Balas paket video streaming dari AR. Dengung;

Paket port 5559-TCP untuk data penting yang tidak dapat hilang, biasanya untuk konfigurasi.

Klien terputus dari port UDP setelah penundaan 2 detik setelah mengirim perintah terakhir!!! - oleh karena itu, Anda harus terus-menerus mengirim perintah, jika perlu-AT*COMWDG.

Pertimbangkan untuk mendapatkan data navigasi dari ARDrone (Port 5554-UDP). Paket data navigasi dalam mode demo panjangnya 500 byte. Jika terjadi kesalahan, drone dapat mengirim paket 32 dan 24 byte. Jika paket panjangnya 24 byte, ini berarti port 5554 dalam mode BOOTSTRAP dan Anda perlu menyambungkan kembali ke port untuk mengalihkannya ke mode Demo ARDrone dapat mengirimkan data navigasi ke klien dalam dua bentuk:

disingkat (atau demo), berukuran 500 byte. menyelesaikan.

Untuk mendapatkan data demo, pertama-tama kirim empat byte 0x01, 0x00, 0x00, 0x00 ke port 5554, lalu kirim perintah ke port 5556

AT*CONFIG="+(seq++)+", \"general:navdata_demo\", / " TRUE\" di mana seq adalah nomor urut dari perintah.

Struktur paket data navigasi. Ada 4 nilai bernama di awal paket:

Header paket 32-bit: bendera status helikopter 32 bit;

nomor urut dari perintah terakhir yang dikirim ke helikopter oleh klien 32 bit;

bendera visi 32 bit. Berikutnya-opsi navdata Header: 20-23.

Opsi navdata memiliki bidang berikut:

BATERAI = 24; pengisian baterai sebagai persentase;

PITCH = 28; sudut kemiringan sepanjang sumbu longitudinal;

Gulungan = 32; sudut kemiringan relatif terhadap sumbu melintang;

YA = 36; sudut rotasi relatif terhadap sumbu vertikal;

KETINGGIAN = 40; tinggi;

VX = 44; kecepatan sumbu x;

VY = 48; kecepatan sumbu y;

VZ = 52; kecepatan pada sumbu z.

Langkah 3: Menghubungkan Layar Nokia 5110 ke Papan ESP8266

Menghubungkan Layar Nokia 5110 ke Papan ESP8266
Menghubungkan Layar Nokia 5110 ke Papan ESP8266

Hubungkan layar Nokia 5110 ke modul ESP8266 dan keluarkan beberapa data navigasi ke sana dan ke monitor port serial

Langkah 4: Mendapatkan Data Navigasi dan Menampilkannya di Tampilan Nokia5110

Mendapatkan Data Navigasi dan Menampilkannya di Layar Nokia5110
Mendapatkan Data Navigasi dan Menampilkannya di Layar Nokia5110

Download (sketsa ardrone_esp8266_01.ino), dan amati output data navigasi ke port serial dan tampilan layar.

Langkah 5: Mengirim Perintah Lepas landas dan Mendarat

Sekarang kita akan menambah proyek kita lepas landas dan mendarat quadcopter dengan perintah dari remote control. Untuk lepas landas, Anda perlu mengirim perintah

AT*REF=[Nomor urut], 290718208

Untuk pendaratan

AT*REF=[Nomor urut], 290717696

Sebelum lepas landas, Anda harus mengirim perintah untuk kalibrasi horizontal, jika tidak, Ar Drone tidak akan dapat stabil selama penerbangan.

AT * F TRIM=[Nomor urut]

Upload sketch ardrone_esp8266_02.ino() ke ESP8266 Board, nyalakan quadcopter Ar Drone 2.0 dan periksa pengoperasian tombol. Saat Anda mengklik lepas landas, saat berikutnya Anda mengklik – mendarat, dll.

Langkah 6: Menghubungkan MPU6050 untuk Mengontrol Ardrone 2.0

Menghubungkan MPU6050 untuk Mengontrol Ardrone 2.0
Menghubungkan MPU6050 untuk Mengontrol Ardrone 2.0
Menghubungkan MPU6050 untuk Mengontrol Ardrone 2.0
Menghubungkan MPU6050 untuk Mengontrol Ardrone 2.0

Sensor untuk menentukan posisi di ruang angkasa digunakan untuk mengendalikan quadrocopters. Chip MPU6050 berisi akselerometer dan giroskop, serta sensor suhu. MPU6050 adalah elemen utama dari modul Gy-531 (Gbr. 15.44). Selain chip ini, Papan modul berisi pengikatan MPU6050 yang diperlukan, termasuk resistor pull-up dari antarmuka I2C, serta penstabil tegangan 3,3 volt dengan penurunan tegangan kecil (ketika diberi daya pada 3,3 volt, output dari stabilizer akan menjadi 3 persis volt) dengan kapasitor filter.

Menghubungkan ke mikrokontroler menggunakan I2C Protocol.

Langkah 7: Mengontrol Quadcopter Menggunakan MPU6050

Mengontrol Quadcopter Menggunakan MPU6050
Mengontrol Quadcopter Menggunakan MPU6050

Menggunakan akselerometer dan giroskop memungkinkan Anda menentukan deviasi pada sumbu x dan y, dan deviasi "berubah" menjadi perintah untuk menggerakkan quadcopter di sepanjang sumbu yang sesuai. Terjemahan dari pembacaan yang diterima dari sensor ke sudut defleksi.

Perintah untuk mengirim ke Ar Drone untuk kontrol penerbangan

AT*REF=[Nomor urut], [Flag bit-field], [Roll], [Pitch], [Gaz], [Yaw]

Nilai Roll dan Pitch pada rentang -1 sampai 1 diambil dari tabel const int float , indeks sesuai dengan sudut deviasi yang dihitung dari data sensor mu6050.

Unggah sketsa ardrone_esp8266_03.ino ke ESP8266 Board, nyalakan quadrocopter ar Drone 2.0 dan periksa pengoperasian remote.

Direkomendasikan: