İçindekiler:

Arduino'dan Laravel'e İletişim: 4 Adım
Arduino'dan Laravel'e İletişim: 4 Adım

Video: Arduino'dan Laravel'e İletişim: 4 Adım

Video: Arduino'dan Laravel'e İletişim: 4 Adım
Video: Arduino to Laravel Communication - Send data from NodeMCU to Laravel 2024, Temmuz
Anonim
Image
Image
Arduino'dan Laravel'e İletişim
Arduino'dan Laravel'e İletişim

Herkese selam, Bu Eğitilebilir Kitapta, bir Arduino'dan bir Laravel uygulamasına nasıl veri gönderebileceğinizi göstereceğim.

Adım 1: Giriş

Tanıtım
Tanıtım
Tanıtım
Tanıtım

Ne zaman veri görüntüleme ve kaydetme gerektiren bir projemiz varsa, genellikle verilerin web üzerinde mevcut olması gerekir. Bu şekilde, bir nesnenin durumunu uzaktan izleyebilir ve hatta dünyanın herhangi bir yerinden cihazlarımızı kontrol edebiliriz.

Bu proje için, üzerinde ESP8266 12e modülü bulunan bir NodeMCU v1.0 kartı kullanacağız. Ayrıca Laravel uygulamamızı barındırabileceğimiz bir bilgisayar kullanmamız gerekecek. Böyle bir ortamı nasıl kurabileceğinizi öğrenmek istiyorsanız, bununla ilgili videoma bakın.

Adım 2: Laravel Uygulamasını Hazırlayın

Laravel Uygulamasını Hazırlayın
Laravel Uygulamasını Hazırlayın
Laravel Uygulamasını Hazırlayın
Laravel Uygulamasını Hazırlayın

İlk adımımız Laravel'i Composer üzerinden kurmak. Belgeler ayrıntılı olarak açıkladığı ve burada bulabileceğiniz için bunu nasıl yapabileceğinizin ayrıntılarına girmeyeceğim.

Bu demoyu basit tutmak için, Laravel içinde Arduino'dan gönderilen bilgileri daha sonra gözden geçirebilmemiz için bir metin dosyasına kaydedeceğiz. Bunun için önce " api.php " dosyasında yeni bir POST rotası oluşturacağız. Geri aramada, daha sonra gönderilen parametreleri alabilmemiz için istek ayrıntılarını enjekte edeceğiz.

Bir dosyaya yazmak için, kullanışlı ekleme yöntemiyle Laravel'in Storage cephesini kullanıyorum. Bu yöntem çağrıldığında bir dosya adı ve dize verisi alır ve burada bu verileri belirtilen dosyaya ekler. Dosya yoksa, ilk aramada oluşturuluyor.

Her satıra yazdığımız veriler, güncel tarih ve saat, ardından sıcaklık ve nem için istek değerlerinden oluşur. Bu tür birden fazla değeriniz varsa, hepsi için aynı alma işlemini tekrarlayabilirsiniz.

Adım 3: Arduino Göndericisini Hazırlayın

Arduino Göndericisini Hazırlayın
Arduino Göndericisini Hazırlayın
Arduino Göndericisini Hazırlayın
Arduino Göndericisini Hazırlayın

Şimdi Arduino koduna ve veri gönderimine bakalım.

NodeMCU kartının WiFi bağlantımıza bağlanabilmesi ve istek gönderebilmesi için önce birkaç kütüphaneyi en üste eklememiz gerekiyor. Ardından, bağlandığımız ağın SSID'sini ve şifresini belirtmemiz gerekiyor. Ethernet kalkanlı bir Uno kullanıyorsanız, işleminiz farklı olacaktır.

Ayrıca yeni oluşturduğumuz Laravel sunucusunun kök URL'sini de buraya kaydediyoruz. Benim durumumda bu, yerel bilgisayarımın IP adresidir, ancak kodun erişilebilir olduğu herhangi bir ana bilgisayar URL'sini ekleyebilirsiniz.

Setup fonksiyonunda ise seri haberleşmeyi başlatıyoruz böylece neler olup bittiğini izleyebiliyoruz. Ek olarak, WiFi'ye düzgün şekilde bağlanabilmesi için NodeMCU kartını kurmamız gerekiyor. Bu yapıldıktan sonra bağlantıyı başlatabilir ve yönlendiriciden bir IP adresi alana kadar bekleyebiliriz.

Bu örnek için, aslında panoya bağlı herhangi bir sensörüm yok. Bunun yerine rastgele işlevini kullanarak rastgele veriler oluşturuyorum ve bunu gönderiyorum.

Bu verinin bir sorgu dizesi şeklinde hazırlanması gerekiyor ve HTTP isteği başladıktan sonra HTTP istemcisi üzerinde POST yöntemini kullanarak göndermemiz gerekiyor. Daha önce eklediğimiz başlık, sunucunun istekte toplaması gereken veriler olduğunu bilmesini sağlamak için var.

Sonuç olarak, önce HTTP durum kodunu ve ardından yanıt yükünü alırız. Her şey yolunda giderse kod olarak 200 almamız gerekiyor ve Laravel uygulamamızdan hiçbir şey döndürmediğimiz için payload boş olacak.

Herhangi bir nedenle durum kodu 200 değilse, yük genellikle ne olduğuna dair hata mesajını içerecektir.

Son olarak aynı işlemi tekrar yapabilmek için örneğimizde 5 saniye gibi belli bir süre bekleyip isteği kapattığımızdan emin olmamız gerekiyor.

Sonuç, her yinelemede metin dosyasına kaydedilen bu değerleri elde etmemizdir, böylece daha sonra bunu görüntülemek veya bir grafik üzerinde eşlemek için kullanabiliriz.

4. Adım: Diğer Adımlar

Sonraki adımlar
Sonraki adımlar

Gördüğünüz gibi, süreç oldukça basittir ve farklı sensörlerden gelen değerleri okumak ve belki bunları bir veritabanına yazmak için kolayca genişletilebilir. Bununla inşa edebileceklerinizin sonucu sadece hayal gücünüzle sınırlıdır. Başlamanıza yardımcı olmak için aşağıda örnekte kullanılan tam kaynak kodun bağlantısı verilmiştir.

github.com/bkolicoski/arduino-laravel-comm…

Umarım bu Eğitilebilir Kitaptan yeni bir şeyler öğrenmeyi başarmışsınızdır ve öğrendiyseniz, lütfen yorumlarda bana bildirin, Eğitilebilir Kitaplar'da beni takip edin ve YouTube kanalıma abone olmayı unutmayın.

Teşekkürler!

Önerilen: