İçindekiler:
- 1. Adım: Teori
- Adım 2: Gerekli Kitaplıkları Hazırlama
- Adım 3: Basit İstek Kodu Yazma
- 4. Adım: Yükleme
- Adım 5: Okuma ve Python
- Adım 6: Sonlandırma
Video: Noob'lar için ESP8266 ve Python İletişimi: 6 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Bu kılavuz, ESP8266'dan herhangi bir veri almanızı ve AT komutları olmadan python üzerinden kontrol etmenizi sağlar.
Yeni başlayanlar için, ESP8266'yı kullanmayla ilgili kılavuzların çoğu zordur, çünkü "AT COMMANDS"ı çipe aktarmanızı isterler, yani:
- gereksiz
- ESP hafızasını boşa harcamak
- Size sınırlı kontrol sağlar
- Zor ve Zorlu
- Ve tüm ESP8266 modülleri için uygun değildir
Bu yüzden sadece 3 basit fonksiyonla kontrol edilen çok basit bir mDNS iletişim sistemi oluşturdum. Ayrıca size tam kontrol sağlar.
1. Adım: Teori
esp'imiz wifi'mize bağlanıyor ve bir localhost sunucusu oluşturuyor ve bir istek beklemeye başlıyor. Python'umuz o yerel ana bilgisayara her istek gönderdiğinde, esp istenen kodu çalıştırır ve ardından sonucu bir http isteği olarak döndürür. Sonunda python, verileri http isteği olarak döndüren okur ve bu değişkenleri ondan alır. Bununla esp, dizeleri, verileri ve dizileri döndürebilir. Python kodu, veri türlerini anlayacaktır.
Adım 2: Gerekli Kitaplıkları Hazırlama
Öncelikle arduino ide'ye ESP8266 kart kitaplığını indirmiş olmanız gerekmektedir. Nasıl yapılacağını bilmiyorsanız, işte kılavuz.
Daha sonra buradan mikro kitaplığımı indirmeniz gerekiyor.
İndirdikten sonra kütüphane klasöründe "ESP_MICRO.h" adında bir dosya var, mevcut arduino projenizin kodlama klasörünüze kopyalayın. Evet, arduino kütüphanelerine kopyalamayın, bu bir mikro kütüphanedir, bu yüzden mevcut arduino projenizin klasörüne kopyalayacaksınız.
Yani artık gereksinimlerimiz karşılandı. Kodlamaya başlayabiliriz.
Adım 3: Basit İstek Kodu Yazma
Project.ino'nuzu açtığınızda, arduino ide üzerinde iki sekme göreceksiniz. Biri projeniz, diğeri ise mikro kütüphanemiz "ESP_MICRO.h".
Artık ana kodunuzdaki ESP_MICRO.h'de bu 5 işlevine sahipsiniz, (işlevler ESP_MICRO.h'nin ilk satırlarında açıklanmıştır)
İşte basit bir değişken artan kod.
Arduino kodu:
/* ESP2PY İÇİN F5 TESTİ
* Junicchi tarafından yazıldı * https://github.com/KebabLord/esp_to_python * Bir python isteği her geldiğinde basitçe artar ve bir değişken döndürür */ #include "ESP_MICRO.h" //Mikro kitaplığı dahil et int testvariable = 0; geçersiz kurulum(){ Serial.begin(9600); // Detayları görmek için seri port başlatılıyor start("KULLANICI ADI", "ŞİFRE"); // EnAIt, verilen detaylarla wifi'nize bağlanacak } void loop(){ waitUntilNewReq(); //python'dan yeni bir istek gelene kadar bekler /* yeni bir istek geldiğinde indeksi arttırır*/ testvariable += 1; returnThisInt(testdeğişkeni); //Verileri python'a döndürür }
4. Adım: Yükleme
Nodemcu ESP8266'ları programlamak sadece usb'yi takmak ve çizimi arduino'dan yüklemektir.
Ancak ESP8266-1'i programlamak daha zordur, onları programlamanın iki yöntemi vardır.
ESP'yi arduino üzerinden programlama
Jumper konusunda sıkıntınız varsa bu devre ile arduino üzerinden programlayabilirsiniz. Ama uzun vadede, bu acı. Bu yüzden başka bir yöntem öneriyorum.
ESP programcısı ile programlama
Çok daha kolay ve hızlı. Sadece 1 dolar, bir tane satın alın ve bir programlayıcı usb kullanın.
ESP'nin IP adresini öğrenme
Kod yüklenirken seri bağlantı noktasını açın, yükleme tamamlandığında ayrıntıların yazdırıldığını göreceksiniz. esp'nin IP'sini öğrenin ve bunu not edin. Unutmayın, ESP'nin yerel IP'si; oturumdan oturuma değil, wifi ile wifi olarak değişir, bu nedenle daha sonra kapatıp açtığınızda değişmez.
Adım 5: Okuma ve Python
esp_to_python/library'de bir "EXAMPLE_PYTHON_READER.py" var
edit edin, seri port üzerinde yazan esp modülünün IP adresi ile 5. satırı değiştirin ve python scriptini çalıştırın. Bu projede istek göndermek ve okumak için python kullandım. Ancak ESP'nin ipini bir tarayıcıya yapıştırırken ham verileri bir tarayıcı ile de görüntüleyebilirsiniz. Ya da okumak için bir uygulama yapabilir, hatta başka bir dil bile kullanabilirsiniz. Modülün python üzerinden kontrol edilmesi ayrıca örnekler klasöründeki " ledControl " projesinde anlatılmaktadır.
Adım 6: Sonlandırma
Tüm işlevler ve kodlar ESP_MICRO.h dosyasında ve README.md dosyasında açıklanmıştır.
Bu proje size yardımcı olduysa, orijinal projeye github'da yıldız verebilirsiniz.
Önerilen:
STM32F4 Discovery Board ve Python USART İletişimi (STM32CubeMx): 5 Adım
STM32F4 Discovery Board ve Python USART İletişimi (STM32CubeMx): Merhaba! Bu derste STM32F4 ARM MCU ve Python arasında USART iletişimi kurmaya çalışacağız (herhangi bir başka dil ile değiştirilebilir). O halde başlayalım
ESP8266 Doğrudan Veri İletişimi: 3 Adım
ESP8266 Doğrudan Veri İletişimi: Giriş Arduinos ve nRF24l01 modülleri ile bazı projeler yaparken, bunun yerine bir ESP8266 modülü kullanarak biraz çaba harcayabilir miyim diye merak ediyordum. ESP8266 modülünün avantajı, yerleşik bir mikro denetleyici içermesidir, bu nedenle
İHA'lar için Çevresel Sensör Sistemi Eklentisi: 18 Adım
UAV'ler için Çevresel Sensör Sistemi Eklentisi: Bu Talimatın amacı, Integrated Solutions Technology'nin çevresel sensör sisteminin bir DJI Phantom 4 drone ile birlikte nasıl oluşturulacağını, ekleneceğini ve çalıştırılacağını açıklamaktır. Bu sensör paketleri, geçiş yapmak için dronu kullanır
Erişim Noktası - İki ESP8266 MCU Arasında İstasyon İletişimi: 3 Adım
Erişim Noktası - İki ESP8266 MCU Arasında İstasyon İletişimi: Merhaba Yapıcılar!Önceki talimatımda bir ev WiFi yönlendiricisi aracılığıyla iki ESP8266 MCU arasında bir WiFi iletişimi yaptım. Yorumlardan gördüğüm gibi, bir router menzilinden uzakta ESP8266 MCU'ları kullanmak isteyen Maker'lar var. Yani burada bir bar
Ucuz iPhone'lar, iPod'lar, Her Şey Nasıl Yapılır: 4 Adım
Ucuz IPhone'lar, IPod'lar, Her Şey Nasıl Yapılır: Tamam, gerçekten pahalı bir iPhone satın almadan önce DUR ya da her neyse, çünkü biraz tasarruf edebilirsiniz. İşte Nasıl