tv kumandasi robot

Herhangi kumanda ile uzaktan kontrollü Robot

Bu projemizde evimizde bulunan herhangi bir kumanda ile basit bir şekilde nasıl robot yapabiliriz yada evimizde bulunan herhangi bir cihaz nasıl kontrol edilebilir, bunu öğreneceğiz.

uzaktankumanda sensoruWebsitemizde daha önce paylaştığımız bu yazımızdan yardım alabilirsiniz. Projelerimizin uzaktan kontrol edilmesi herzaman hayatı kolaylıştırmakta bu uzaktan kontroller Radyo frekans , IR, Bluetooth  üzerinden olabilir. Bu projemizde elimizde bulunan herhangi bir uzaktan kumandayı kullanacağız. kullandığımızı bu uzaktan kumandanın kullanmak istediğiniz herhangi 5 tuşunu belirleyip bunların kodlarının bulunması gerekmektedir. Tabi bazı kumandalar için her bir tuşun birden çok değeri olabilir.

Yapmak istediğimiz projemizde öncelikle aşağıdaki gibi arduinomuza bağlamamız gerekmektedir.

uzaktankumanda sensoru baglanti

Bağlantıyı yaptıktan sonra kumandanın tuşlarının kodlarını bulabilmek için alttaki programdan yararlanabilirsiniz. Bu tuşların değerlerini bir yere not etmenizi öneririm.

#include <IRremote.h>
  
int RECV_PIN = 11;  //foto transistör bağlantısı
IRrecv irrecv(RECV_PIN);
decode_results kod;
  
void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // alma için hazırlandı
    
}
  
void loop()
{
  if (irrecv.decode(&kod))
    {
     Serial.println(kod.value, HEX); // Kodun hexa-Desimal Değere çevirerek göster
     irrecv.resume();} // Yeni kod alımına hazır
  
}

Belirlenen kodlardan sonra artık yapmamız gereken robot projemizi gerçekleştirmektir bağlantı ve devre şeması aşağıda gördüğünüz gibidir.

Motorun ileri geri yapabilmesi için L293 H-bridge kullanılmıştır.

KumandaliRobotDevresi

tv kumandasi robot

 

 

kodları programımıza yerleştirerek robotumuzu hareket ettirebiliriz.


#include <IRremote.h>
 
int RECV_PIN = 11;
 
int statusled = 13;
 
IRrecv irrecv(RECV_PIN);
 
decode_results results;
 
void setup()
 
{
 
irrecv.enableIRIn();
 
pinMode(statusled,OUTPUT);
 
pinMode(7,OUTPUT);
 
pinMode(6,OUTPUT);
 
pinMode(5,OUTPUT);
 
pinMode(4,OUTPUT);
 
digitalWrite(statusled,LOW);
 
}
 
void loop() {
 
if (irrecv.decode(&results)) {
 
digitalWrite(statusled,HIGH);
 
irrecv.resume();
 
if (results.value == 0xFF50AF){
 
digitalWrite(7,HIGH);
 
digitalWrite(6,LOW);
 
digitalWrite(5,HIGH);
 
digitalWrite(4,LOW);
 
}else if(results.value == 0xFF30CF){
digitalWrite(7,HIGH);
 
digitalWrite(6,LOW);
 
digitalWrite(5,LOW);
 
digitalWrite(4,LOW);
 
}
 
else if(results.value == 0xFFB04F){
digitalWrite(7,LOW);
 
digitalWrite(6,LOW);
 
digitalWrite(5,HIGH);
 
digitalWrite(4,LOW);
 
} else if(results.value == 0xFFD02F){
 
digitalWrite(7,LOW);
 
digitalWrite(6,HIGH);
 
digitalWrite(5,LOW);
 
digitalWrite(4,HIGH);
 
}else if(results.value == 0xFF9867){
 
digitalWrite(7,LOW);
 
digitalWrite(6,LOW);
 
digitalWrite(5,LOW);
 
digitalWrite(4,LOW);
 
}
 
}
 
}

Boş zamanlarda arduino ile uğraşan kendi halinde bir Öğretmen.

Bir Cevap Yazın

Time limit is exhausted. Please reload CAPTCHA.