Bu projede haberleşme olarak uzaktan kumandalı arabanın
, arabadan alıcı kumandasından verici
kısmını söktüm. Robotta arduino
kullanmadım ,arduinoyu kullandığım yer kumanda kısmı.
Öncelikle arabadan söktüğüm alıcı kısmını sökerken dikkatli
olmamız gerekiyor çünkü alıcı kısmında iki tane motor sürmek için kablolar ve
Vcc ,GND kablolar ı vardır. Öncelikle
alıcı kısmının arabanın ileri geri gitmesini sağlayan dc motora olan kablosunu
bulup not edin . Daha sonra sağa sola dönmesi sağlayan dc motorun kablolarını
not edin . Son olarak da devrenin Vcc si ve gnd sini not alın .
Kullandığımız
tank da 2 adet dc motor vardır. Bu alıcı kısmının kablolarını tankın dc
motoruna takıyoruz. (Ufak bir hatırlatma yapalım uzaktan kumandalı arabanız kaç
volt ile çalışıyorsa devreyede o voltu veriniz. Daha sonra pilinizi bağlayıp Vcc ve GND de bağlantılarınızı yapınız.
Kumandanın içindeki
verici çıkardıktan sonra ileri geri sağ sol
yerlerini topraklayacak şekilde kablo çekip arduinonun dijital pinlerine
bağlayınız .Bundan sonrası o dijital pine çıkış verdiğimizde alıcı kısmı dc
motoru çalıştırır.
PROGRAMIN KODLARI :
char deger;
// robotun arkasından bakarak
int sol_ileri=2;
int sag_geri=3;
int sol_geri=4;
int sag_ileri=5; // deger tanımlama
void setup()
{
// çıkış pinleri
pinMode(sol_ileri, OUTPUT); // sol ileri
pinMode(sag_geri, OUTPUT); // sağ geri
pinMode(sol_geri, OUTPUT); // sol geri
pinMode(sag_ileri, OUTPUT); // sağ ileri
Serial.begin(9600); // seri iletişim
digitalWrite(sol_ileri, HIGH);
digitalWrite(sag_geri, HIGH);
digitalWrite(sol_geri, HIGH);
digitalWrite(sag_ileri, HIGH);
}
void loop() {
// seri sinyali oku
deger = Serial.read();
if(deger!=-1)
{
switch(deger)
{
// eğer sinyal w ise ileri sür
case 'w':
case 'W':
digitalWrite(sol_ileri, LOW);
digitalWrite(sag_geri, HIGH);
digitalWrite(sol_geri, HIGH);
digitalWrite(sag_ileri, LOW);
Serial.println("ileri git");
Serial.println(" ");
Serial.println("ileri gitmek icin 'w' harfine basiniz ");
Serial.println("geri gitmek icin 's' harfine basiniz ");
Serial.println("sola donmek icin 'a' harfine basiniz ");
Serial.println("saga donmek icin 'd' harfine basiniz ");
Serial.println("durmak icin 'x' harfine basiniz ");
break;
// eğer sinyal s ise geri sür
case 's':
case 'S':
digitalWrite(sol_ileri, HIGH);
digitalWrite(sag_geri, LOW);
digitalWrite(sol_geri, LOW);
digitalWrite(sag_ileri, HIGH);
Serial.println("geri git");
Serial.println(" ");
Serial.println("ileri gitmek icin 'w' harfine basiniz ");
Serial.println("geri gitmek icin 's' harfine basiniz ");
Serial.println("sola donmek icin 'a' harfine basiniz ");
Serial.println("saga donmek icin 'd' harfine basiniz ");
Serial.println("durmak icin 'x' harfine basiniz ");
break;
// eğer sinyal a ise sola don
case 'a':
case 'A':
digitalWrite(sol_ileri, HIGH);
digitalWrite(sag_geri, HIGH);
digitalWrite(sol_geri, LOW);
digitalWrite(sag_ileri, LOW);
Serial.println("sola don");
Serial.println(" ");
Serial.println("ileri gitmek icin 'w' harfine basiniz ");
Serial.println("geri gitmek icin 's' harfine basiniz ");
Serial.println("sola donmek icin 'a' harfine basiniz ");
Serial.println("durmak icin 'x' harfine basiniz ");
break;
// sağa dön
case 'd':
case 'D':
digitalWrite(sol_ileri, LOW);
digitalWrite(sag_geri, LOW);
digitalWrite(sol_geri, HIGH);
digitalWrite(sag_ileri, HIGH);
Serial.println("saga don");
Serial.println(" ");
Serial.println("ileri gitmek icin 'w' harfine basiniz ");
Serial.println("geri gitmek icin 's' harfine basiniz ");
Serial.println("sola donmek icin 'a' harfine basiniz ");
Serial.println("saga donmek icin 'd' harfine basiniz ");
Serial.println("durmak icin 'x' harfine basiniz ");
break;
// eğer sinyal x ise dur
case 'x':
case 'X':
digitalWrite(sol_ileri, HIGH);
digitalWrite(sag_geri, HIGH);
digitalWrite(sol_geri, HIGH);
digitalWrite(sag_ileri, HIGH);
Serial.println("dur");
Serial.println(" ");
Serial.println("ileri gitmek icin 'w' harfine basiniz ");
Serial.println("geri gitmek icin 's' harfine basiniz ");
Serial.println("sola donmek icin 'a' harfine basiniz ");
Serial.println("saga donmek icin 'd' harfine basiniz ");
Serial.println("sola hafif donus ileri icin 'q' harfine basiniz ");
Serial.println("saga hafif donus ileri 'e' harfine basiniz ");
Serial.println("saga hafif donus geri '6' harfine basiniz ");
Serial.println("sola hafif donus geri '4' harfine basiniz ");
Serial.println("durmak icin 'x' harfine basiniz ");
}
}
}
Hiç yorum yok:
Yorum Gönder