ESP8266-01’e GİRİŞ


ESP8266-01 modülü bir çok kişi tarafından incelendi, projeler yapıldı. Özellikle Arduino için kütüphaneler yapılmış durumda. Fakat bu kütüphanelerin hiçbirine ihtiyacınız olmayabilir. Sadece gördüğünüz komutları simüle etmeniz yeterlidir.
ESP modül ilk aldığınızda 115200 baud hızında çalışmaktadır. Arduino için kütüphane kullandığınızda hızını 9600 baud’a ayarlamak zorunda kalıyorsunuz. Çünkü Arduino Mega hariç öncekilerde tek donanımsal seri port vardır. Bu port arduinonun kendi haberleşmesinde kullanılıyor. Kütüphaneden dolayı yazılımsal seri kullanıldığından, yazılımsal seri çalışmada 115200 baud hızı kullanılamaz.
Bu yazımda ESP8266-01 modülünü, satın aldığınızda geldiği şekliyle nasıl kullanacağınızı anlatacağım.( Bu kısım incelediğim örneklerden edinilen fikirlere göre yazıldı)

ESP8266-01 modüller 2 çeşit olarak piyasada bulunmaktadır. Modüllerin PCB rengi Flash hafıza miktarını göstermektedir. Mavi olan 512K hafızaya sahiptir. Siyah pcb 1M hafızaya sahiptir. Şayet içindeki programı güncellemek isterseniz pcb nin hafıza miktarını bazı programlar mbit olarak gösterirler. Bunu da hesaplamak için 1 byte 8 bit olduğundan
512K=> 512000 x 8= 4mbit olarak seçilecektir. 1M olan ESP için ise 8Mbit olarak seçilmelidir.
(Bundan dolayı güncelleme programında hangi tip soruyorsa ona göre yazmanız gerekecektir. Byte yada bit olarak)

ESP Modülüm çalışıyormu. ( Sağlam mı?)
Öncelikle ESP modülünüzün çalıştığını teyit etmeniz gerekecektir. Bunun için elinizde usb seri çevirici olması gerekir. Bunu satın aldığınız standart çeviriciler ile kullanabilirsiniz. Ayrıca Arduino yu seri çevirici olarak kullanarak da  ESP modülünüzü arduino üzerinden bilgisayara bağlayıp kontrol edebilirsiniz.  USB-SERİ çevirici kullanacaksanız çeviricinizin üzerinde 3.3V sisteme uyarlayan jumper olmasına dikkat edin.

Önemli : ESP modülleri 3.3V ile çalışır.  İnternette bir çok çizilmiş olan devrede sadece 3.3V bağlamak yeterli diye görünüyor. Bence bu inanış yanlış , kısa süreli kullanımlarda problem olmaması sizi yanıltmasın. 3.3V çalışan sistemlerde portlarına da 3.3V tan fazla gerilim verilmemeli. Özellikle ESP modülün RX girişine 3.3V sinyal verilmeli.

Bunun çeşitli metotları vardır.
1-) Dirençlerle gerilim bölücü yapmak,
2-) Transistörlerle Gerilim seviyesini ayarlamak,
3-) Bu iş için üretilmiş entegrelerle gerilim seviyesini ayarlamak. 74hc4050 entegresi ile yapılan level shifter
4-) Bunun için hazırlanmış modüller satın almak.   3.3V Seviye çevirici modül  3.3V Seviye çevirici modül sparksfun  

usb-seri çeviriciBuradaki gibi usb çevirici kullanıyorsanız üzerinde bulunan jumper ayarını yaptığınızda VCC çıkışı 3.3V olacak ve  ESP ye güç verebileceksiniz. (FT232RL usb çevirici) .
Bunun yanısıra ESP modülünü kullanmak için VCC, GND ve Rx,Tx uçlarını bağlamak yetmiyor. CH-PD ucunu da ve Reset Ucunu da VCC ye bağlamanız gerekiyor. Böyle bir bağlantı için kendinize bir pcb yapıp direkt olarak ESP modülünü  yaptığınız  pcb ye bağlamak en uygun çalışma koşullarını sağlayacaktır. Tabii ki bunu yaparken ileride GPIO uçlarını da kullanmak için yada başka sebeplerle farklı bağlantılarda yapmak zorunda kalabileceksiniz. Bunların tümünü içeren bir şema aşağıda verildi.

Fritzing şemasını buradan indirebilirsiniz. 

Bu bağlantı şeması biraz karmaşık gibi görünebilir. Devreyi açıklayalım. Devre 3.3V regülatöre sahip olacak. (Buradaki 3.3V regülatör entegresinin en sağ bacağından çıkış alınmıştır. Fakat piyasadaki bazı regülatörlerin bacak bağlantısı farklıdır. Bazılarının orta ucu çıkış olabiliyor. Elinizdeki regülatör entegresinin bacak bağlantılarına dikkat edin. Şema ile uyumsuz olabilir.) Buradaki bilgilere bakabilirsiniz. 
Bunun nedeni ise Arduino kartlarında ve USB çeviricilerde 3.3V entegre üzerinden geliyor. Bu da ne kadar akım çekerseniz o kadar entegrenin ısınacağı anlamına gelecektir. Hatta kısa devre yaptığınızda CH-340 gibi usb seri çeviriciler yanabilirler. Bunu önlemek için 5V çıkışı alıp, ki bu çıkış direkt USB hattından yada adaptörden  geliyor. Bu şekilde arduino kısa devre olduğunda kendini kapatabilir devrenizi koruyabilir. Ayrıca bu şemada RESET butonu ve GPIO-0 a bağlı switch görüyorsunuz. Reset butonu ara sıra lazım olduğunda kullanabileceğiniz buton dur. GPIO-0 ‘a bağlı switch ise ESP modülün Flashına program atılırken kullanılacaktır. Normalde açık olduğundan GPIO-0 pin kullanımında bir problem teşkil etmeyecektir.
R1 ve R2 dirençleri ESP nin RX girişine gelecek olan sinyal gerilim seviyesini ayarlayacaktır.Sinyalin 3V3 seviyesine düşmesini sağlayacaktır.
R5 ve R6 dirençleri 2 adet arduinoya bağlı olan ledlerin çalışması içindir. Denemelerde kullanabileceksiniz. ESP modülü için hazırladığınız pcb de bulunmasına gerek yoktur.
4 adet 10K direnç. Bunlar Reset,CH_PD, GPIO0, GPIO2 için Pull up dirençleridir ve 3V3 gerilime bağlanacaklardır.
esp pcb İsterseniz bu pcb yi yapmak için çaba sarf etmeyip hazır olarak da alabilirsiniz. Fakat hazır olan size bu özellikleri vermeyecektir.Resimdeki gibi.

Çünkü hazır olanda reset butonu yada programlama için jumper ayarı olmayabilir.

 

TEST  AŞAMASI :
Bu aşamada bir kontrol programına ihtiyacınız olacak. Bu programı Fırat beyin sitesi üzerinden temin edebiliyorsunuz. Orada programın nasıl çalıştığını anlatan video da var. bunu da izlemenizi tavsiye ederim.
Şayet elinizde ARDUINO varsa USB SERİ çevirici yoksa öncelikle arduinoyu seri çevirici olarak kullanmak için bu sayfayı ziyaret edebilirsiniz.SERİ MONİTOR kısmını kullanarak haberleşebilirsiniz. Arduinoyu USB-SERİ çevirici olarak kullanmak

Programın anlatımına başlamadan önce bazı bilgileri bilmeniz gerekir.
Programa başladığınızda baud ayarınız 115200 baud olarak ayarlanır. Daha sonra bağlantı sağladığınızda AT komutu vererek bağlantınızı test edersiniz. AT+RST her zaman kullanılmaz yanlış parametreden dolayı anlamsız çalışıyorsa bu komutu yollarsınız.
AT+GMR komutunu kullanıp modülün versiyon bilgisini görün ve gördüğünüz ekranda SAVE butonuna basarak bu görüntünün kopyasını alıp saklayın. Bir süre sonra modülünüzde problem olduğunda, doğru programı bulabilmeniz için elinizdeki model ve versiyon isimlerine ihtiyaç olacaktır.
İlk önce parametrelerin kutularını açıp anlamaya çalışmanızda fayda var bunun için sunucu olarak çalıştır isimli yazımda  AT komut seti pdf dosyası var onu kullanarak komutları irdeleyebilirsiniz.
Programın 2. sayfasına geçerken AP modunu aktifleştirmiş olmanız ve CIPMUX =1 olarak ayarlamış olmanız gerekir. Bunu yaptıysanız 2. sayfaya geçip server ve client kısımlarını inceleyebilirsiniz.
Bu kısmı kullanırken android kullanıcıysanız, google playden bu programı indirebilirsiniz. WiFi TCP/UDP Controller
Programı kurup kullanımını öğrendiğinize göre artık Sunucu ve İstemci olarak nasıl kullanıldığına geçebiliriz.

ESP8266-01 Sunucu sayfasına geçin. 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir