Merhabalar, bu yazımızda ışık izleyen robot nedir, hangi malzemeler kullanılmalı, nasıl çalışır ve nasıl montajı yapılır konularında bilgi edineceğiz. Rodeo (Arduino) ile Işık İzleyen Robot’umuzu dMoto ile kontrolünü sağlayacağız. Öncelikle, dMoto hakkında bilgi edinmek istiyorsanız, linke tıklayarak inceleyebilirsiniz. Rodeo (Arduino) hem elektronik bilgisi hem de yazılım bilgisi öğretilmek üzere tasarlanmış modüler bir robot kitidir. Bu kit içerisindeki ürünleri satın almak isterseniz tıklayabilirsiniz. Piyasada satılan birçok pahalı ve karmaşık Stem/Eğitim robotlarının yerini alacağı ön görülmektedir. Bu setin montajını yaparken hem motor becelerileriniz artacak hemde problem çözme kabiliyetiniz gelişecektir. Rodeo’nun programını dMoto kütüphanesinden faydalanarak çok basit ve pratik bir şekilde yazabilirsiniz. Rodeo (Arduino)’yu Robolink Marketten temin edebilirsiniz. Şimdi robotumuzu tanımaya geçebiliriz.

Işık İzleyen Robot Nedir?

Işığa duyarlı dirençler diğer adıyla foto dirençler yardımı ile robotun gideceği yönü ayarlamasını sağlar. Bu robot için kullanılan, ışığa duyarlı direnç dış ortamdan etkilenerek direnç değeri değiştiği için sensör görevi görmektedir. Işık izleyen robot üzerinde iki adet ışığa duyarlı sensör bulunmaktadır.

Resimde de görüldüğü gibi ışık yokken ışığa duyarlı direnç voltaj geçişini sağlamamaktadır. Işık varken ışığa duyarlı direnç voltaj geçişini sağlayıp işlevini yerine getirmektedir. Böylece anahtar görevini görmüş olmaktadır. Aşırı ısı altında bozulabilmektedir.

Robotumuzun Malzeme Listesi:

Rodeo Kodlama Robotu – Lite
Arduino Nano

dMoto Bağlantılarını Yapalım:

⦁ Arduino nanomuzu 1 ile gösterilen yere yerleştirelim.
⦁ 2 ve 4 ile gösterilen yerlere motorlarımızın montajını yapalım.
⦁ 7 ile gösterilen yerdeki pinlerine bağlantılarını yapalım.
⦁ 12 ile gösterilen yere güç bağlantılarımızı yapalım. Artı(+) ve eksi(-) durumunu dikkat edelim.

Işık İzleyen Robotun Çalışma Prensibi:

Yukarıdaki resimde robotumuz düz hareket etmektedir.  Işığa duyarlı dirençler (sağ ve sol) tarafından dMoto kartına gelen değerler, aynı geldiği için robotumuz yön değiştirmemektedir.

Yukarıdaki resimde robotumuz sağ tarafa yönelmektedir. Bunun nedeni ise, sağ taraftaki LDR, sol taraftaki LDR den daha fazla ışık almaktadır. Böylece, kodumuza bağlı olarak robot sağ motor geri, sol motor ileri gidecek şekilde hareketini sağlamaktadır.

Yukarıdaki resimde robotumuz sol tarafa yönelmektedir. Bunun nedeni ise, yukarıdaki hareketin tam tersi olmasıdır. Sol taraftaki LDR, sağ taraftaki LDR den daha fazla ışık almaktadır. Böylece, robotun sol motoru geri, sağ motoru ileri gidecek şekilde hareketini sağlamaktadır.
Yukarıdaki resimlerde de görüldüğü gibi LDR ışık aldığında Rodeo (Arduino) Robotumuz ışık alan direnç tarafına dönmektedir.

Arduino Kodumuz:

Daha önce arduino ile program geliştirmediyseniz; Arduino kurulumu, CH340 Driver kurulumu ve ilk uygulama yazılarımızı inceleyip daha sonra kodunuza devam edebilirsiniz.

Yapacağınız ışık izleyen robotun kodunda dMoto için hazırlanmış özel kütüphaneyi kullanacağız. dMoto.lib kütüphanemizi indirelim ve Arduino klasörünü içerisinde bulunan libraries bölümüne atalım. Yazmış olduğumuz bu kodları dMoto robot kontrol kartı dışında da kullanabilirsiniz. dMoto kartı üzerinde sağda ve solda LDR için yer alan pinlerine, ışığa duyarlı direncimizin (LDR) bağlanmış olduğuna emin olalım.


#include <dmoto.h>
dmoto Light;
float ldrRemove =0;
void setup() {
Serial.begin(9600);
Light.pinSet();
Light.Stop();
}
void loop() {
ldrRemove = abs(Light.LdrRightValue() – Light.LdrLeftValue());
Serial.print(Light.LdrRightValue());
Serial.print(" ");
Serial.print(Light.LdrLeftValue());
Serial.print(" ");
Serial.println(ldrRemove);
delay(30);
if (Light.LdrRightValue() > Light.LdrLeftValue() && ldrRemove > 80)
{
Light.Left(150,70);
}
if (Light.LdrRightValue() < Light.LdrLeftValue() && ldrRemove > 80)
{
Light.Right(70,150);
}
if (ldrRemove < 80)
{
Light.Forward(150);
}
}

7 YORUMLAR

  1. merhaba ,ışık izleyen robotun malzeme listesini tam olarak yazmanız mümkün müdür acaba? ve kod çalışıyor mu doğru şekilde ? teşekkürler

    • Merhaba,
      Bu uygulama rodeo kodlama robotu için özel olarak yapılmıştır. Kodlar dmoto kartı için yazılmıştır. Küçük modifiyelerle kendi uygulamanızı rahatlıkla yapabilirsiniz. Uygulamayı yapmış olduğumuz ortamda sorunsuz şekilde çalışmaktadır.
      Malzeme listesi:
      ⦁ Rodeo Kodlama Robotu – Lite
      ⦁ Arduino Nano

  2. kodlamanin ana fikri nedir?
    yani arduino karti olmadan sadece fiziki olarak LDR ilede bu isik izleyen robot yapilabilir.
    karta kod olarak ne yaziyoruz? robotun neyapmasini istiyoruz karttaki yazilimda.
    bunu acikliyabilirseniz cok iyi olur,
    Saygilarimla

    • Merhaba,
      Bu uygulamadaki kodlamanın ana fikri dmoto kartı üzerinde bulunan LDR’lerden veri alarak bu verileri aksiyona dönüştürerek robotun ışık kaynağını takip etmesini sağlamaktır. Bu uygulama Arduino kartı olmadan gerçekleştirilebilirdi. Fakat ışığı gördükten 20 sn sonra hareket et, 30 saniye sonra dur, 40 sn sonra sola dön gibi işlemler yapılamazdı veya ışığı takip ederken önüne çıkan engelleri kontrol et ve bu durumlara göre aksiyon al gibi işlemler analog devre ile gerçekleştirilemezdi. Bu uygulama sadede ışık izleyen robotun kodlamasını öğretmekle birlikte geliştiriciye temel düzeyde yol göstermektedir.
      Saygılarımla,
      İyi çalışmalar dilerim.

  3. iyi günler seti aldım ve arduino bana bu hatayı veriyor nasıl düzeltebilirim;
    Arduino:1.8.13 (Windows 10), Kart:”Arduino Nano, ATmega328P”

    Blink:1:10: fatal error: dmoto.h: No such file or directory

    #include

    ^~~~~~~~~

    compilation terminated.

    exit status 1

    dmoto.h: No such file or directory

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz