IR ALICI MODÜLÜ
IR alıcı modülü kızılötesi sinyallerle kablosuz haberleşmeyi sağlayan modüldür. Arduino projelerinde sıkça kullanılmaktadır. Uzaktan haberleşme yapabileceğiniz basit kullanımlı işlevsel bir modüldür.
Nerede Kullanılır?
Arduino ile robotik kodlama projelerinde robotik, uzaktan kumanda ile kontrol edilen araç vb. projelerde kullanılabilir.
Çalışma Voltajı
5V DC
Görme Açısı
60º
Çalışma Frekansı
38KHz
Menzil
8 Metre
En
32.28mm
Boy
49.81mm
Vida Delik Çapı
3.2mm
Örnek Proje Devre Şeması
Bu projede IR alıcı kumandasından basılan tuşlar seri porta yazdırılacak ve basılan tuşlara göre trafik ışığı modülündeki LEDler yanacaktır. Bu projede IR alıcı modülü, Trafik ışığı modülü ve Arduino Uno Breadboard kullanılmıştır.
IR Alıcı Modülü
Arduino Uno Breadboard
DATA
D2
-
GND
+
5V
Trafik Işığı Modülü
-
GND
R
D3
Y
D4
G
D5
Örnek Proje Arduino Kodu
/* ALPGEN Robotics */
// IR Alıcı Verici Kullanımı
// 19.05.2021
// Soru ve Yardım İçin:
[email protected]
// www.alpgenrobotics.com //
#include IRremote.h> // IR kumanda kütüphanesi eklendi
int RECV_PIN = 2; // IR Alıcının data pini dijital 2'ye tanımlandı
IRrecv irrecv(RECV_PIN); // Gelen verileri almak için değişken tanımlandı
decode_results results; // gelen veriler decode edilerek results adlı değişkene atandı
#define CH1 0xFFA25D /////////////////////////////////////////////////////////////
#define CH 0xFF629D //
#define CH2 0xFFE21D //
#define PREV 0xFF22DD //
#define NEXT 0xFF02FD //
#define PLAYPAUSE 0xFFC23D //
#define VOL1 0xFFE01F //
#define VOL2 0xFFA857 //
#define EQ 0xFF906F //
#define BUTON0 0xFF6897 // Kumanda üzerindeki tüm butonları adresleri tanımlandı
#define BUTON100 0xFF9867 //
#define BUTON200 0xFFB04F //
#define BUTON1 0xFF30CF //
#define BUTON2 0xFF18E7 //
#define BUTON3 0xFF7A85 //
#define BUTON4 0xFF10EF //
#define BUTON5 0xFF38C7 //
#define BUTON6 0xFF5AA5 //
#define BUTON7 0xFF42BD //
#define BUTON8 0xFF4AB5 //
#define BUTON9 0xFF52AD /////////////////////////////////////////////////////////////
int red = 3; // Trafik Işığı Yeşil Led D5'e tanımlandı
int yellow = 4; // Trafik Işığı Turuncu Led D4'e tanımlandı
int green = 5; // Trafik Işığı Kırmızı Led D3'e tanımlandı
void setup() // Başlangıç Ayarlamaları
{
pinMode(red, OUTPUT); // red çıkış olarak ayarlandı
pinMode(yellow, OUTPUT); // yellow çıkış olarak ayarlandı
pinMode(green, OUTPUT); // green çıkış olarak ayarlandı
Serial.begin(9600); // Seri haberleşme hızı 9600 baudrate ayarlandı
irrecv.enableIRIn(); // IR alıcı aktif edildi
}
void loop() // Sürekli Tekrar Edecek Olan Döngü
{
if (irrecv.decode( & results)) // Eğer alıcı anlamlı veri aldıysa
{
if (results.value == BUTON1) // Gelen veri BUTON1 ise
{
Serial.println("1"); // Seri ekrana "1" yazdırıldı
digitalWrite(red, HIGH); // ve led1 yansın
}
if (results.value == BUTON2) // Gelen veri BUTON2 ise
{
Serial.println("2"); // Seri ekrana "2" yazdırıldı
digitalWrite(yellow, HIGH); // ve led2 yansın
}
if (results.value == BUTON3) // Gelen veri BUTON3 ise
{
Serial.println("3"); // Seri ekrana "3" yazdırıldı
digitalWrite(green, HIGH); // ve led3 yansın
}
if (results.value == BUTON4) // aynı şekilde tüm butonlar ekrana yazdırılır
{
Serial.println("4");
}
if (results.value == BUTON5)
{
Serial.println("5");
}
if (results.value == BUTON6)
{
Serial.println("6");
}
if (results.value == BUTON7)
{
Serial.println("7");
}
if (results.value == BUTON8)
{
Serial.println("8");
}