İçindekiler:

MPU6050 ve ESP8266 Modülünde ArDrone 2.0 Quadcopter Kontrol Ünitesi: 7 Adım
MPU6050 ve ESP8266 Modülünde ArDrone 2.0 Quadcopter Kontrol Ünitesi: 7 Adım

Video: MPU6050 ve ESP8266 Modülünde ArDrone 2.0 Quadcopter Kontrol Ünitesi: 7 Adım

Video: MPU6050 ve ESP8266 Modülünde ArDrone 2.0 Quadcopter Kontrol Ünitesi: 7 Adım
Video: Amazing arduino project 2024, Temmuz
Anonim
Image
Image
ESP8266'yı Ar Drone 2.0 Erişim Noktasına Bağlama
ESP8266'yı Ar Drone 2.0 Erişim Noktasına Bağlama

Wi-Fi'nin boyutu, fiyatı ve kullanılabilirliği, ESP8266 modülündeki ArDrone 2.0 quadrocopter için bir bütçe kontrol ünitesi yapmanızı sağlar (fiyatlar AliExpress, Gearbest'te). Kontrol için MPU6050 çipi (jiroskop, ivmeölçer) üzerinde Gy-521 Modülünü kullanacağız.

Papağan AR. Drone, radyo kontrollü bir quadrocopter, yani uzak çapraz kirişler üzerine yerleştirilmiş dört ana rotorlu bir helikopterdir. AR. Drone, Linux işletim sisteminde çalışır ve neredeyse tüm Android veya iOS dokunmatik ekranlı akıllı telefonlar veya tabletler, quadcopter için uzaktan kumanda görevi görebilir. Wi-Fi üzerinden istikrarlı kontrol mesafesi 25 ila 100 metre arasındadır ve uçuşlar sokakta gerçekleşirse oda ve hava koşullarına bağlıdır.

Adım 1: ESP8266'yı Ar Drone 2.0 Erişim Noktasına Bağlama

Etkinleştirildiğinde, AR. Drone bir SSIS erişim noktası "ardrone_XX_XX" oluşturur. Şifresiz bağlanma.

AT komutlarını kullanarak Ar. Dron erişim noktasına bağlanmayı deneyelim ESP8266 kartını UART USB adaptör güç kaynağı 3.3 V üzerinden bilgisayarın com portuna bağlayın.

Arduino IDE'yi, seri port monitörünü açın ve ESP Kartına AT komutları gönderin (dörtlü helikopter etkinleştirilmelidir)

Adım 2: AR ile İletişim. Drone AT Komutları Kullanılarak Gerçekleştirilir

Komutlar AR'ye gönderilir. UDP veya TCP paketleri olarak drone;

Tek bir UDP paketi en az bir tam komut veya daha fazlasını içermelidir; Paket birden fazla komut içeriyorsa, komutları ayırmak için 0x0A karakteri kullanılır.

Dizeler 8 bitlik ASCII karakterleri olarak kodlanmıştır;

Maksimum komut uzunluğu 1024 karakterdir;

Komutlar arasında 30 MS gecikme vardır.

komut oluşur

AT * [komut adı] = [bir dize olarak komut sıra numarası] [, bağımsız değişken 1, bağımsız değişken 2 …]

AR'yi kontrol etmek için ana AT komutlarının listesi. Uçan göz:

AT * REF-kalkış, iniş, sıfırlama ve acil durdurma için kullanılır;

AT*PCMD-bu komut AR'yi kontrol etmek için kullanılır. Drone hareketi;

AT*FTRIM - yatay düzlemde;

AT*CONFIG-AR yapılandırma. Drone parametreleri;

AT*LED, AR üzerindeki LED animasyonlarını ayarlar. Uçan göz;

AR'de AT*ANIM-yükleme uçuş animasyonu. Uçan göz.

AT * COMWDG-watchdog reset komutu-onu sürekli olarak quadcopter'a gönderiyoruz.

İletişim için aşağıdaki bağlantı noktaları kullanılır:

5556-UDP bağlantı noktası komutlarını AR'ye gönderir. Uçan göz;

Port 5554-UDP-AR'den veri paketleri alıyor. Uçan göz;

Port 5555-AR'dan video paketlerini yanıtla. Uçan göz;

Genellikle yapılandırma için, kaybedilemeyen kritik veriler için 5559-TCP bağlantı noktası paketleri.

İstemci, son komutu gönderdikten sonra 2 saniyelik bir gecikmeden sonra UDP bağlantı noktasından bağlantıyı kesiyor!!! - bu nedenle, gerekirse sürekli olarak AT*COMWDG komutları göndermelisiniz.

ARDrone'dan (Port 5554-UDP) navigasyon verilerini almayı düşünün. Demo modunda navigasyon veri paketi 500 bayt uzunluğundadır. Bir şeyler ters giderse, drone 32 ve 24 baytlık bir paket gönderebilir. Paket 24 bayt uzunluğundaysa bu, 5554 numaralı bağlantı noktasının BOOTSTRAP modunda olduğu ve onu Demo moduna geçirmek için bağlantı noktasına yeniden bağlanmanız gerektiği anlamına gelir ARDrone, navigasyon verilerini istemciye iki şekilde iletebilir:

kısaltılmış (veya demo), 500 bayt boyutunda. tamamlayınız.

Demo verilerini almak için önce 5554 numaralı bağlantı noktasına dört bayt 0x01, 0x00, 0x00, 0x00 gönderin ve ardından 5556 numaralı bağlantı noktasına bir komut gönderin

AT*CONFIG="+(seq++)+", \"general:navdata_demo\", / " TRUE\" burada sıra, komutun sıra numarasıdır.

Navigasyon veri paketinin yapısı. Paketin başında adlandırılmış 4 değer vardır:

32 bit paket başlığı: helikopter durum bayrakları 32 bit;

müşteri tarafından helikoptere gönderilen son komutun sıra numarası 32 bit;

görüş bayrağı 32 bit. Sonraki-navdata seçeneği Başlık: 20-23.

navdata seçeneği aşağıdaki alanlara sahiptir:

BATARYA = 24; yüzde olarak pil şarjı;

ARALIK = 28; boyuna eksen boyunca eğim açısı;

RULO = 32; enine eksene göre eğim açısı;

YAW = 36; dikey eksene göre dönüş açısı;

İRTİFA = 40; boy uzunluğu;

VX = 44; x ekseni hızı;

VY = 48; y ekseni hızı;

VZ = 52; z eksenindeki hız.

Adım 3: Nokia 5110 Ekranını ESP8266 Kartına Bağlama

Nokia 5110 Ekranını ESP8266 Kartına Bağlama
Nokia 5110 Ekranını ESP8266 Kartına Bağlama

Nokia 5110 ekranını ESP8266 modülüne bağlayın ve ona ve seri bağlantı noktası monitörüne bazı navigasyon verilerinin çıktısını alın

Adım 4: Navigasyon Verilerini Alma ve Nokia5110 Ekranında Görüntüleme

Navigasyon Verilerini Alma ve Nokia5110 Ekranında Görüntüleme
Navigasyon Verilerini Alma ve Nokia5110 Ekranında Görüntüleme

İndirin (ardrone_esp8266_01. ino'yu çizin) ve navigasyon verilerinin seri bağlantı noktasına ve görüntüleme ekranına çıkışını gözlemleyin.

Adım 5: Kalkış ve İniş Komutlarının Gönderilmesi

Şimdi uzaktan kumandadan gelen komutlarla quadcopter'ın kalkış ve inişini projemize ekleyeceğiz. Kalkış için bir komut göndermeniz gerekir.

AT*REF=[Sıra numarası], 290718208

iniş için

AT*REF=[Sıra numarası], 290717696

Kalkıştan önce yatay kalibrasyon için bir komut göndermelisiniz, aksi takdirde Ar Drone uçuş sırasında dengelenemez.

AT * F TRIM=[Sıra numarası]

ardrone_esp8266_02.ino () taslağını ESP8266 Board'a yükleyin, Ar Drone 2.0 quadcopter'ı açın ve düğme çalışmasını kontrol edin. Tıkladığınızda-kalkış yaptığınızda, bir sonraki tıkladığınızda – iniş vb.

Adım 6: Ardrone 2.0'ı Kontrol Etmek için MPU6050'yi Bağlama

Ardrone 2.0'ı Kontrol Etmek için MPU6050'yi Bağlama
Ardrone 2.0'ı Kontrol Etmek için MPU6050'yi Bağlama
Ardrone 2.0'ı Kontrol Etmek için MPU6050'yi Bağlama
Ardrone 2.0'ı Kontrol Etmek için MPU6050'yi Bağlama

Kuadrokopterleri kontrol etmek için uzaydaki konumu belirleyen sensörler kullanılır. MPU6050 yongası, hem bir ivmeölçer hem de Gemide bir jiroskopun yanı sıra bir sıcaklık sensörü içerir. MPU6050, Gy-531 modülünün ana elemanıdır (Şekil 15.44). Bu çipe ek olarak, modül Kartı, I2C arayüzünün çekme dirençleri ve ayrıca küçük bir voltaj düşüşüne sahip 3.3 voltluk bir voltaj dengeleyici dahil olmak üzere gerekli MPU6050 bağlamasını içerir (3.3 voltta güç verildiğinde, çıkış stabilizatör tam olarak 3 volt olacaktır) filtre kapasitörleri ile.

I2C Protokolünü kullanarak mikrodenetleyiciye bağlanma.

7. Adım: Quadcopter'ı MPU6050 Kullanarak Kontrol Etme

Quadcopter'ı MPU6050 Kullanarak Kontrol Etme
Quadcopter'ı MPU6050 Kullanarak Kontrol Etme

İvmeölçer ve jiroskopun kullanılması, x ve y eksenlerindeki sapmayı belirlemenize ve sapmayı, quadcopter'ı karşılık gelen eksenler boyunca hareket ettirmek için komutlara "dönüştürmenize" olanak tanır. Sensörden alınan okumaların sapma açısına çevrilmesi.

uçuş kontrolü için Ar Drone'a gönderme komutu

AT*REF=[Sıra numarası], [İşaret bit alanı], [Rulo], [Pitch], [Gaz], [Yaw]

-1 ila 1 aralığındaki Yuvarlanma ve Aralık değerleri, sabit kayan nokta tablosundan alınır, indeks, mu6050 sensör verilerinden hesaplanan sapma açısına karşılık gelir.

ardrone_esp8266_03.ino taslağını ESP8266 Board'a yükleyin, ar Drone 2.0 quadrocopter'i açın ve uzaktan kumandanın çalışmasını kontrol edin.

Önerilen: