Temizlikçi PinooBot

Projenin Amacı: Pinoo kontrol kartını kullanarak pinoobot ve mesafe sensörü ile temizlikçi robot oluşturmak.

Süre: 2 ders

Yaş Grubu: 7 yaş ve üzeri

Pinoo Seti: PinooBot set ve tam set.

Kazanımları:

  • Pinoo kontrol kartını kodlamayı öğrenir
  • Mesafe sensörünü kodlamayı öğrenir.
  • Pinoobot robot ile tanışır.
  • Algoritma kurma becerisi gelişir.
  • Kodlama becerisi gelişir.

 

Kullanılması Gereken Malzemeler: Mblock 3 programı, PinooBot Robot / Pinoo kontrol kartı, mesafe sensörü, bağlantı kablosu. 

kodlama seti

Tasarım için Gereken Malzemeler: Bulaşık süngeri, şönil,çöp poşeti,mıknatıs,silikon tabancası,makas.

 

    

maker projeleri

Proje Yapılışı:

                       

maker

  

    

stem

Süngerden orta büyüklükte bir dikdörtgen parça kesiyoruz ve pinoobot un ön kısmına şönil ile bağlıyoruz.

  

kodlama

Süngerin alt bölümüne üç adet mıknatıs yapıştırıyoruz. 

 

stem

Robotu rolüne uygun olarak dilediğiniz gibi süsleyebilirsiniz.     

                        

maker

Çöp poşetlerini küçük dikdörtgen parçalar kesiyoruz ve içlerine mıknatıs koyarak bağlıyoruz. Biz dört adet yaptık siz dilerseniz sayıyı arttırabilirsiniz.

çocuklar için kodlama

 Robotumuzu çalıştıracağımız alana oluşturduğumuz çöpleri saçıyoruz.

 

 

robot

Bağlantılarımızı yapalım. Mesafe sensörünü 6 numaralı mor/yeşil girişe bağlantı kablosu  ile bağlıyoruz.(Motor bağlantılarınız yapılmamış ile Pinoo kontrol kartı üzerindeki motor bağlantıları için özel olan beyaz renkli girişlere bağlantımızı yapalım.)

  

mblock 3

Bağlantılarımızı tamamladık şimdi kodlama kısmına geçelim. Bunun için mblock-3 uygulamasını kullanacağız.

  

 

mblock

    Pinoo kontrol kartımızı bağlantı kablosu yardımıyla bilgisayara bağlayalım ve Mblock3 uygulamasına giriş yapalım. Daha sonra Pinoo Kontrol Kartımızı bilgisayar ile tanıştıralım. Bunun için öncelikle Bağlan sekmesinden seri port seçeneğine tıklıyoruz. Daha sonra COM6’yı seçiyoruz.(Bilgisayara ve porta göre rakam farklılık gösterebilir.) 

    mblock

    Seri port bağlantısını yaptıktan sonra kartlar sekmesinden kullanacağımız kartı seçelim. Biz Arduino’nun Nano modeli ile çalışıyoruz.

    mblock

     

    Pinoo uzantısını bilgisayarımıza ekleyebilmek için uzantılar sekmesinden uzantıları yönet seçeneğine tıklıyoruz. Açılan pencerede arama motoruna “Pinoo” yazıyoruz ve çıkan sonuca indir dememiz yeterli. Bilgisayarımıza yüklendi.

     

    mblock

    Tekrar uzantılar sekmesine gelip Pinoo seçeneğine tıklıyoruz. Pinoo uzantısı ile kodlarımızı yazacağız. 

     mblock

    Kodlama kısmında; uygulamanın başlaması için Olaylar menüsünden Yeşil Bayrağa tıklanınca kodunu alıyoruz.

     

    kodlama

    Mesafe sensörünün okuduğu değeri öğrenebilmek için kukladan yardım alacağız. Bunun için görünüm sekmesinden merhaba de komutunu alıyoruz. Merhaba ifadesinin yerine robotlar sekmesinde mesafe sensörü ile ilgili kod bloğunu alıyoruz. Pin girişini bağlantı yaptığımız Pinoo6 olarak değiştiriyoruz.

    Okuma işlemini bir kez değil sürekli olarak yapmasını istediğimiz için kontrol sekmesinden sürekli tekrarla bloğunun içerine tüm kodlarımızı alıyoruz. 

    mblock

    Yeşil bayrağa tıklayalım ve sensöre elimizi yaklaştırıp uzaklaştırarak değerlerin değişimini gözlemleyelim. Robota elimizi yaklaştırdığımızda sensörün okuduğu değeri not alalım. Biz burada 10 civarı bir değer okuduğunu referans alacağız.

     

    kodlama

    Eğer mesafe sensörünün okuduğu değer 10'dan küçük ise yani robot bir engele yaklaştı ise 2 sn boyunca sağa dönsün daha sonra ise ileri yöne hareket etsin  eğer robotun önünde herhangi bir engel yok ise yani sensörün okuduğu değer 10'dan büyük ise de robot ileri, geri, sağ ve sol hareket işlemleri yapsın. Şimdi bu yazdığımızı kod haline getirelim.

    Burada kontrol sekmesindeki eğer bloğundan ve işlemler sekmesinden küçük ve büyük karşılaştırma operatörlerinden faydalanacağız.

     

    çocuklar için kodlama

    Sağlanacak şarta göre PinooBot un hareket edeceği kodları tamamlayalım.

    Sensörün 10'dan büyük değer okuma durumu için Robotlar sekmesinden PinooBot Yön:İleri Hız:0 kod bloğunu alıyoruz. Yönlerini sırası ile ileri sağ geri sol olarak, Hızı ise hepsinde 255 olarak güncelliyoruz.

     Bu işlemin sürekli olarak kontrol edilmesini istediğimiz için tüm bloklarını sürekli tekrarla bloğunun içerisine yerleştiriyoruz.

     

    mblock

    Yapılan her bir hareketi belirli bir süre yapmasını istiyoruz. Bunun için her bir hareketin altına kontrol sekmesinden 1 saniye bekle kod bloğunu alıyoruz ve 1 rakamını 2 olarak güncelliyoruz.

     

    kodlama

    Sensörün 10'dan küçük değer okuma durumu için Robotlar sekmesinden PinooBot Yön:İleri Hız:0 kod bloğunu alıyoruz. Yönlerini sırası ile sağ geri olarak, Hızı ise hepsinde 255 olarak güncelliyoruz. Sağa dönme işlemini 2 sn yapması için kontrol sekmesinden 1 saniye bekle komutunu alıp 1 rakamını 2 olarak güncelliyoruz. 

    mblock

    Kodlarımızı tamamladıktan sonra robotu platforma yerleştiriyoruz ve yeşil bayrağa tıklayarak projemizin çalışmasını kontrol ediyoruz. Robotu belirlediğimiz alana yerleştiriyoruz ileri, geri, sağ ve sol hareketler yapacak bu hareketleri yaparken de mıknatıslar yardımıyla zemindeki çöp poşetlerini toplayacak. Robot bir engele yaklaştı ise de sağa dönecek ve ileri doğru hareket etmesi gerekmektedir.

    Projemizin çalışmasında herhangi bir sorun yoksa projemizi bilgisayardan bağımsız olarak bir güç kaynağı ile de çalıştırmak için yazmış olduğumuz kodları kartımızın içine yüklememiz gerekiyor.

    Bunun için başlangıçta kullandığımız yeşil bayrağa tıkla kodunu ve kuklaya sensör değerini söylettiğimiz kodu  çöpe atarak Robotlar menüsünden Pinoo Programı kodunu alıyoruz.

     

    mblock kodlama

    Koda sağ tıklayarak arduino’ya yükle seçeneğine tıklıyoruz.( Kart olarak arduino ile çalışıyoruz.)

     

    mblock

    Kodların karta yüklenmesini bekliyoruz. Yükleme tamamlandıktan sonra pencereyi kapatıyoruz .

     

     

    robot

    Herhangi bir problem yoksa güç kablomuzu bilgisayardan çıkartıyoruz. Pinoo Kontrol kartımıza 9v pil ve pil şapkası yardımıyla güç veriyoruz. Pil girişinin hemen yanında bulunan açma kapama tuşunu da on konumuna getiriyoruz.

     

    ARDUINO IDE KODLARI:

    // motor pinlerini atadık
    int motora1 = 5;
    int motora2 = 6;
    int motorb1 = 10;
    int motorb2 = 11;
    // mesafe sensoru pinlerini atadık
    int echoPin = 12;
    int trigPin = 13;
    long mesafe, sure; // mesafe ölçümü için iki değişken atadık
    
    void setup() {
      // motor pinleri çıkış pinidir
      pinMode(motora1, OUTPUT);
      pinMode(motora2, OUTPUT);
      pinMode(motorb1, OUTPUT);
      pinMode(motorb2, OUTPUT);
    
      pinMode(echoPin, INPUT); // echo giriş pinidir
      pinMode(trigPin, OUTPUT); // trig çıkış pinidir
    
    }
    
    void loop() {
      // mesafe sensoru aktif edildi
      digitalWrite(trigPin, LOW);
      delayMicroseconds(5);
      digitalWrite(trigPin, HIGH);
      delayMicroseconds(10);
      digitalWrite(trigPin, LOW);
      sure = pulseIn(echoPin, HIGH);
    
      mesafe = sure / 29.1 / 2; // mesafeyi ölçtü
    
      if (mesafe > 10) { // mesafe 10dan büyükse
        ileri(); // ileri gider
        delay(2000);
        sag(); // saga gider
        delay(2000);
        sol(); // sola gideer
        delay(2000);
        geri(); // geri gider
        delay(2000);
      } else if (mesafe < 10) { // mesafe 10dan küçükse
        sag(); // saga gider
        delay(2000);
        ileri(); // ileri gider
      }
    
    }
    
    void ileri() {
    
    }
    
    void geri() {
    
    }
    
    void sag() {
    
    }
    
    void sol() {
    
    }
    
    

     

    Pinoo setleri ile çocuklar, evlerinde rahatlıkla bulabilecekleri malzemeler ile yüzlerce proje yapabilirler.