NodeMCU ile Röle Kullanımı
Merhaba! IoT başlangıç seti serisinin ikinci bölümünde, nodemcu kullanarak röleleri nasıl kullanabileceğimizi anlatacağım. Röleler, küçük akımlarla çalışabilen ve anahtar görevi gören elektromekanik bileşenlerdir. Bobinlerine uygun gerilim uygulandığında mıknatıs özelliği kazanırlar ve bir veya daha fazla kontağı aynı anda açıp kapatabilirler. Bu sayede elektrik sinyaliyle kumanda edilebilen çoklu bir anahtar işlevi görürler
Rölelerde, normalde açık (NO) ve normalde kapalı (NC) olmak üzere iki farklı kontak çeşidi vardır. Kontak adetleri röle çeşitlerine göre değişse de, NO ve NC kontaklar eş zamanlı olarak durumlarını değiştirirler.
.
Şimdi nodemcu ile röle kullanımını anlatmaya başlayalım. Devremizde bir led NO piniyle bağlıdır. Kodlama yaparak istediğimiz zaman aralığında röle NC durumuna geçirerek ledi söndürebiliriz. Önceki led yakma dersinde yaptığımız gibi, röleyi çıkış olarak belirleyip ledin röle ile anahtarlanmasını sağlayacağız. İşte kodumuz:
NodeMCU Röle ile Led Yakma
Bu örnekte, blynk ile de deneyebilirsiniz. Devrede herhangi bir değişiklik yapmadan, kodları düzenleyerek nodemcu kartını Wi-Fi'ye bağlayabilir ve blynk üzerinden kontrol sağlayabilirsiniz. İşte kod örneği:
#define relay D2
void setup()
{
pinMode(relay, OUTPUT);
}
void loop()
{
digitalWrite(relay,LOW);
delay(1000);
digitalWrite(relay,HIGH);
delay(1000);
}
//Burada, blynk üzerinde bir buton belirleyerek ledin açılıp kapanmasını görebilirsiniz.
//Butona bastığımızda röle tetiklenir ve durumu değiştirerek ledin yanıp sönmesini sağlar.
#define BLYNK_PRINT Serial
//#ifndef UNIT_TEST
#include <Arduino.h>
//#endif
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#define relay D2
int butondurumu=0;
// Blynk uygulamasından aldığınız anahtar(token)'ı buraya giriyoruz.
char auth[] = "**********************";
// Wifi ayarlarınız buraya girilecek.
char ssid[] = "*************"; //internet adınızı yazın
char pass[] = "*************"; //internet şifrenizi yazın
/////////////////Blynk üzerinden ESP'ye komut gönderme/////////////////////////////////////
BLYNK_WRITE(GP4) //uygulamada tanımladığımız değişken ismi olmalı
{
int pinValue = param.asInt(); // digital GP4 değişkeninden aldığımız veriyi bir değişkene atıyoruz.
// Ayrıca veri tipine göre şunlar da kullanılabilir.:
// String i = param.asStr();
// double d = param.asDouble();
if (pinValue==1){
Serial.println(" AÇIK");
digitalWrite(relay,HIGH);
butondurumu=1;
}
else {
Serial.println(" KAPALI");
digitalWrite(relay,LOW);
butondurumu=0;
}
}
void setup()
{
Serial.begin(115200);
pinMode(D2, OUTPUT);//D2 pinini çıkış olarak tanımladık
Blynk.begin(auth, ssid, pass); //blynk'e bağlanıyoruz
// Arzu ederseniz server'ı da detaylı olarak belirtebilirsiniz:
//Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80);
//Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8080);
}
void loop()
{
Blynk.run(); //Burası mümkün olduğunca boş olmalı. Blynk'in çalışma mantığı genel olarak
//bu şekilde. Loop içinde başka işlemler olunca Blynk sunucusu ile olan senkron bozulabiliyor.
}
Umarım bu yazı faydalı olmuştur. Herhangi bir sorunuz varsa, aşağıdaki yorumlarda buluşabiliriz. İyi çalışmalar!
Eğer devremde kullandığım malzemelere göz atmak veya satın almak isterseniz, Hiber bilişimi ziyaret edebilirsiniz.
Berat KURTGÖZ (Yazar)
Tasarım ssnasıl göründüğü ya da nasıl hissettirdiği ile ilgili bir şey değildir. Tasarım nasıl çalıştığı ile ilgilidir
Makaleleri
45
Makale Okunması
14687
Yorumunuz Gönder