433 MHz uzaktan kontrol işlemleri için oldukça kullanışlı küçük kullanışlı ve uygun fiyatlı bir devre elemanıdır. 433 MHz Alıcı Verici Kullanımı bu yazımda sizlerle paylaşacağım.
Detaylar yazı devamında..
433 MHz Alıcı Verici Kullanımı
Uzaktan kontrol işlemleri şüphesiz kablosuz hayatın en güzel yanlarından biri bende bunu bir çok kez araba tank vs gibi işlemlerde kullandım daha sonra kombi termostatı yaparken kullandım şimdi sizlerle nasıl çalıştığını işleyeceğim. Yaklaşık olarak 5 tl olan bu alıcı verici devre kartı arduino ile hayal gücünüzün yapabilecekleri kadar sınırlıdır.
Basit bir led yakma devresi yapalım 433 mhz ile. Bize gerekli olanlar;
- 433 mhz alıcı verici
- 2 adet arduino
- led
- direnç 220 ohm
- buton
- 10k direnç
- jumper kablolar
Öncelikle ne yapacağız bir kısaca göz atalım sonrasında kodları inceleyelim.
Kütüphanesi: VirtualWire indirmek için tıklayınız.
Verici Kodları: Kod satırlarında yanlarına notlar yazdım bu şekilde inceleyebilirsiniz.
/* 433 mhz kullanımı */ /* www.orcunakyol.com.tr */ #include <VirtualWire.h> // Bu kartın arduino ile çalışabilmesi için gerekli kütüphane yazı içinde bulabilirsiniz. char*mesaj; // burada bir char tanımlıyoruz göndereceğimiz mesajı bunun içine yazarak göndereceğiz. int buton=2; //butonu bu pine bağlıyoruz. int buton_durumu; // butonun okunma durumu için değişken tanımlıyoruz. void setup() { pinMode(buton,INPUT); vw_set_ptt_inverted(true); vw_set_tx_pin(3); // vericideki data yazan pini bağladığımız pin numarası. vw_setup(4000); } void loop() { buton_durumu=digitalRead(buton); // Butona basılma durumunu okuyoruz. Buton durumuna aktarıyoruz. if(buton_durumu==HIGH){ // butona basıldı. mesaj="2" ; //mesaj değişkenine 1 sayısını aktarıyoruz ne yazarsanız artık. }else{ mesaj="5" ; //butona basılmadı farklı bir değişken yolluyoruz alıcının kabul etmeyeceği. } vw_send((uint8_t *)mesaj, strlen(mesaj)); //hazırladığımız mesaj değişkenindeki içeriği butona basılma durumuna göre alıcıya gönderdik. vw_wait_tx(); delay(100); }
Alıcı Kodları:
/* 433 mhz kullanımı */ /* www.orcunakyol.com.tr */ #include <VirtualWire.h> // Bu kartın arduino ile çalışabilmesi için gerekli kütüphane yazı içinde bulabilirsiniz. char*mesaj; // // burada bir char tanımlıyoruz alacağımız mesajı bunun içine yazarak göreceğiz. int led=2; //yanacak olan ledi 2.pine bağlıyoruz. void setup() { pinMode(led,OUTPUT); vw_set_ptt_inverted(true); vw_set_rx_pin(3); // vericideki data yazan pini bağladığımız pin numarası. vw_setup(4000); vw_rx_start(); } void loop() { uint8_t buf[VW_MAX_MESSAGE_LEN]; // gelen mesajı tanımlıyoruz. uint8_t buflen = VW_MAX_MESSAGE_LEN; if (vw_get_message(buf, &buflen)) // Eğer gelen mesaj var ise içerisine gir. { if(buf[0]=='2'){ //mesaj 2 ise ledi yak digitalWrite(led,HIGH); } if(buf[0]=='5'){ //gelen mesaj 5 ise söndür sönük kalmaya devam et. digitalWrite(led,LOW); } } }
Şimdi bağlantı şemalarına bakalım:
Verici bağlantı yapısı:
vcc -> verici + hattına
vcc -> butonun sol bacağına
pin 3 -> vericinin data pinine
pin 2 -> butonun sağ bacağına
gnd -> butonun sağ bacağını 10K direnç bağlıyoruz
gnd -> vericinin – hattını bağlıyoruz.
Alıcı bağlantı yapısı:
vcc -> alıcının + hattına
gnd -> alıcının – hattına
gnd -> led kısa bacağını 220 ohm direnç ile
pin 2 -> led uzun bacağına
pin 3 -> alıcının data pinine bağlıyoruz.
Aklınıza takılan soruları yorum kısmından sorabilirsiniz.
Beni youtube ve instagram üzerinden takip edebilirsiniz. Teşekkürler
433 MHz Alıcı Verici Kullanımı