Hepimiz öğrenci de olsak, işi gücü olan birisi de olsak hepimizin temel ihtiyacı yemek yemektir. Kimimiz kendi yemeğimizi kendimizin hazırlaması gerekirken kimimizin ise ailesi her zaman hazır yemekler ile bizi mutlu ederler ama yeri gelir bizim de hazırlamamız gerekir. Kendi hayatımda yaşadığım en büyük problemlerden bir tanesi de hazırladığım yemeğin başında beklemek zorunda oluşum. Acaba yandı mı, nasıl görünüyor, başına gitmem gerekir mi ? Sonrasında bir bakmışım yemeğim yanmış. Bugün bu soruna mühendisçe bir çözüm üretmek için ESP32-CAM modülüne nasıl yazılım yükleyebileceğimizi ve nasıl canlı yayın alabileceğimizi inceleyeceğiz.
Yapmamız gereken ilk şey USB-TTL dönüştürücü ile ESP32-CAM modülünün bağlantılarını yapmaktır. Yukarıdan aşağıya doğru sırasıyla bağlamamız gereken pinler; ( Fotoğraf 1.0 )
Fotoğraf 1.0
USB-TTL→ ESP-CAM
GND → GND
Boş
VCC → 5V
TX → UOR
RX → UOT
Bir diğer dikkat etmemiz gereken konu ise USB-TTL dönüştürücünün üzerindeki 5V pinini fotoğraftaki gibi bağlamamız gerekir. 3.3V pinine bağlı olup ttl dönüştürücüyü ESP32-CAM modülünün 5V pinine bağlayamazsınız.
Gerekli bağlantıları yaptıktan sonra USB-TTL dönüştürücümüzü bilgisayarımıza bağlamadan önce ESP32’ye ait gerekli kütüphaneleri indirmemiz gerekir. ESP32’ye Program Nasıl Yazılır? adlı blog yazımı okuyabilirsiniz. ESP32-CAM modülü ESP32’ye kamera eklenmiş hali gibi düşünebileceğimizden aynı kütüphaneyle çalışmaktadırlar.
Tüm gerekli kütüphaneleri indirdikten sonra ESP32-CAM modülümüzü bilgisayara doğru port ve doğru kartı seçmemiz gerekir. Doğru portu bazen Arduino IDE ile göremeye biliriz. Bu tarz durumlarda Aygıt yöneticisini açıp Ports kısmından doğru bağlantıyı görebiliriz. Eğer sizde her şeye rağmen cihazınızı göremiyorsanız kullandığınız USB-TTL dönüştürücünün Driver’larını indirmeniz gerekebilir. ( Fotoğraf 1.1 )
Fotoğraf 1.1
Eğer ESP32-CAM modülünün Driver’larının nasıl kurulacağını bilmiyorsanız aşağıdaki bloğumu inceleyebilirsiniz.
Sonrasında IDE programından cihazımızı seçmemiz gerekir. ( Fotoğraf 1.2 )
Fotoğraf 1.2
Tüm bu işlemleri doğru yaptıktan sonra Kartımızın bağlandığını görebiliriz; ( Fotoğraf 1.3 )
Fotoğraf 1.3
Gerekli Kodlar
Kodumuzun ilk kısmında ihtiyacımız olan kütüphaneler bulunmakta. Sadece ESP32’nin ilk başta kütüphanesini yüklemeniz gerekli. “Fazla kütüphane var bunları da indirmem gerekmez mi?” diye düşünebilirsiniz ancak zaten yüklü olacaktır.
Sonrasında ise ESP-CAM modülünün kamerası için gerekli pinleri tanımlamamız gerekir. Kullandığımız kameraya göre pinler değişiklik gösterebilir. Ben ilk denediğimde kameram çalışmamıştı. Sonra ESP32 kütüphanesinin içerisinde gelen CameraWebServer örnek kodundaki genel kamera pinlerini de denedim ancak çalışmamıştı. Eğer siz de aynı sorunla karşılaşırsanız aşağıdaki koddaki CAMERA_MODEL_WROVER_KIT’e ait kamera pin bağlantılarını kodunuza yapıştırabilir, kodunuzdaki hazır kamera pinleriyle yer değiştirebilirsiniz.
Aşağıda ise kodumuzun tamamı mevcut. Kodun geri kalanında kamera, WebServer, Wi-Fi kurulum kodları ( Setup kısmında ) ve kameradan gelen canlı yayını WebServer’a veri ileten kodlar mevcut. Kodumuzun tamamını kopyalayıp gerekli kütüphaneleri indirdiğinizden emin olduktan sonra kodu yüklerken nelere dikkat etmemiz gerektiğini inceleyelim.
ESP32-CAM modülüne yazılım atarken IO0 pini GND’ye bağlanmalıdır. Bu sayede modül nasıl ESP32’ye yazılım yüklerken butona basıyorsak bu modülde de IO0 pini grounda bağlanmalıdır. Siz jumperlarla da bağlantıyı yapabilirsiniz.
UYARI
Eğer ESP32-CAM modülünüze program attığınız sırada IO0 ve GND pinlerini jumper ile birbirine bağlıyorsanız şu hatayı alma ihtimaliniz vardır:
A fatal error occurred: Invalid head of packet (0x65): Possible serial noise or corruption.
Bu hatanın anlamı jumper kablonuz çok uzun olduğundan çevre gürültülerini kapabiliyor. Bu hatanın kısa çözümü benim gibi kısa bağlantı şekilleri kullanabilirsiniz. Bu hatanın sebebi bazı ESP32 kartlarında bu hattın gürültü kapmaması için kapasitör konulur. Ancak bazı kartlarda konulmamış bir şekilde geliyor.
Sonrasında kodumuzu yüklemeye başlayabiliriz. Bir diğer dikkat etmemiz gereken kısım ise yükle butonuna tıkladığımızda önce kodumuz derlenecektir. Derlenme işleminin hemen sonrasında “ Connectting. . . ” yazısını göreceksiniz. Bu yazıyı gördüğünüz anda ESP32-CAM modülünün altındaki reset butonuna bir kere basıp çekmeniz gerekmektedir.,
Sonrasında ise kodumuz yüklenmeye başlayacaktır. Kodumuzun yüklenmesi tamamlandıktan sonra ise karşımıza şöyle bir ekranın çıkması gerekir.
Ve kodumuzu başarıyla yüklemeye başardık. Serial monitörü açmadan önce IO0 ve GND pinlerini birbirine bağlamamızı sağlayan, sadece kod atarken kullandığımız pimi veya jumper kablosunu çıkartmayı unutmamamız gerekir.
Daha sonra ESP32-CAM modülü USB ile bilgisayarımıza bağlıyken Serial Monitor’ü açtığımız zaman karşımıza şöyle bir ekran çıkması gerekir;
UYARI
Burada bilmemiz gereken diğer bir şey ise bu yayına sadece ama sadece ESP32-CAM ile aynı Wi-Fi ağına bağlıysanız ulaşabileceğinizdir. Eğer bilgisayarınız örnek vermek gerekirse Mahmut_5GHz ağına bağlıysa ve ESP32-CAM modülünüz sadece 2.4GHz ağlara bağlanabildiği için Mahmut_2.4GHz ağına bağlıysa aynı yayına katılamazsınız. Bilgisayarınızın da Mahmut_2.4GHz ağına bağlı olması gerekir.
Göründüğü gibi ESP32-CAM modülümüzle doğru bağlantı kurmayı başardık. Şimdi bize verilen http://192.168.1.53 linkini arama motorumuza yazarak kameramıza ulaşabiliriz.
Ve evet! Başardık. İstersek kamera modülünü gerekli güç kaynağıyla beraber yemeğimizi görebileceği bir yere koyarsak canlı yayında yemeklerimizin pişmesini yatağımızda yatarken izleyenbiliriz. Gördüğünüz gibi kamera hareketlerini takip edebiliyoruz. Tabii az önce de bahsettiğimiz gibi bu yayını sadece LAN’dan yani aynı Wi-Fi ağına bağlıysak görebilmekteyiz. Yani yemeklerinizi takip etmek istiyorsanız Wi-Fi’nizin kapsama alanı içerisinde olduğunuzdan emin olun. Peki ya yatağımızda uzanırken Wi-Fi miz çekmiyorsa o zaman ne yapacağız ? Tabi ki buna da mühendisçe bir çözüm üretip bir sonraki ESP32 ile LAN’dan WAN’a blog yazımı okuyabilirsiniz. Bu sayede ESP’nize internetin olduğu herhangi bir yerden istediğiniz an aynı yerel ağa bağlı olmak zorunda kalmadan ulaşabilirsiniz.