Scratch Nedir?

Scratch, ABD’de bulunan MIT’nin geliştirdiği, 8-16 yaş arası çocukların kullanımına göre tasarlanmış oldukça basit bir arayüze sahip programlama ortamıdır. Geleneksel programlama dillerinin aksine kullanıcı, istediği fonksiyonları fare ile tıklayıp sürükleyerek animasyonlar, oyunlar, ve hikayeler yaratabilirsiniz.

Scratch, renkli bir arayüze sahiptir. Bu sayede çocukları birşeyler yaratmaya teşvik eder. Programlama dillerinin aksine, hazır fonksiyonlar kategorilere ayrılarak kolay bir biçimde kullanıma sunulmuştur. Bu sayede programlamaya yeni başlayan kişi, algoritma yapısını if,else,while,for gibi görece karmaşık ve noktalama işaretleri gibi özen isteyen yapıları kullanmadan kavrayabiliyor.

mBlock Nedir?

mBlock, Makeblock firmasının üretmiş olduğu robot kitlerini programlamak için tasarlamış olduğu, Scratch tabanlı bir geliştirme programıdır. Bu yazıda mBot’umuzu, mBlock kullanarak programlamayı öğreneceğiz. Buradan sisteminize uygun sürümünü indirebilrisiniz.

mBlock programı.

mBlock ile mBot Kodlamaya İlk Adım

mBlock’u sistemimize kurduktan sonra artık mBot’umuzu eşleştirebiliriz. mBot’un bağlantısını daha önceki yazımızdan faydalanarak gerçekleştirebilirsiniz.

mBlock arayüzünü tanımak için öncelikle basit bir program oluşturalım. Aşağıdaki program ekranın sol kısmında bulunan panda karakterini yeşil bayrağa tıklandığında 10 adım sağa götürecek:

Yeşil bayrağa tıkladığımızda panda 10 adım ilerleyecek.
  • mBot Blokları

mBot ile ilgili kullanacağımız bloklar “Robots” sekmesi altında yer alıyor. Buradan mBot’u hareket ettirecek ve üzerindeki sensörleri kullanmamızı sağlayacak bloklara erişebiliriz. Eğer mBot’umuz bu esnada mBlock programımıza bağlı ise kırmızı renkli daire yeşile dönüşecektir:

mBot ile alakalı bloklar “Robotlar” sekmesi altında yer alıyor.

Bu sekmede mBot üzerinde dahili bulunan ultrasonik mesafe, ışık sensörü, çizgi sensörü gibi sensörleri kullanmamızı sağlayan bloklar bulunmakta. Ayrıca mBot üzerindeki mCore anakartına ekleyebileceğimiz 3-eksenli jiroskop, sıcaklık sensörü, alev sensörü gibi ek modüller için bloklar da hazır olarak yer almakta:

mBot ile alakalı sensör bloklarını buradan seçebiliriz.
  • mBot ile Ultrasonik Mesafe Sensörü Okuma Uygulaması:

İlk uygulamamızı şu şekilde yapalım: mBot üzerindeki sonar sensöründeki değeri ekrandaki pandamız söylesin:

Ultrasonik sensör bloğunda sensörümüzün mBot üzerinde takılı olduğu port numarasını seçmeyi unutmayalım.
  • mBot’u Klavyeden Kumanda Etme:

Gelin şimdi mBot’umuzu hareket ettirelim. Çok basit bir şekilde klavyedeki yön tuşlarını kullanarak kumanda edecek programımız şu şekilde olacak:

Bu programımızda klavyedeki ok tuşları mBot’umuza yön verecek; boşluk tuşu ise korna çalmasını sağlayacak. Ama bence bu programı biraz daha ileri seviyeye taşıyabiliriz. Bir önceki örneğimizde oluşturuğumuz sonar sensörü de dahil ederek mBot’un 15cm’den kısa mesafelerde durmasını sağlayalım:

  • mBot Işık Sensörü ile Gece Lambası Uygulaması:

mBot’umuzda bulunan sensörlerden bir diğeri ise ışık sensörüdür. Aynı zamanda mBot’umuz üzerinde 2 adet RGB LED’de bulunmaktadır. Şimdi de bu sensörleri ve LED’leri kullanarak karanlıkta yanacak bir gece lambası yapalım. Aynı zamanda pandamız da ışık değerini bize söylesin:

  • mBot ile Masadan Düşmeyen Robot Yapımı:

Şimdi de mBot üzerindeki çizgi izleme sensörünü kullanalım. Çizgi izleme sensörleri kızılötesi LED ve algılayıcı çiftinden oluşurlar. Gönderilen ışık, açık renkli yüzeylerden yansıyacağı için sensör tarafından algılanır. Siyah yüzeylerde ise bu ışık emildiğinden yansıma olmaz. Böylelikle robotumuz pist çizgisini veya zeminin yansıtıcı olup olmadığını anlayabilir. Biz bu özelliği mBot’umuzun masa üzerinde çalıştığı durumlarda kenardan düşmesini engellemek için kullanacağız.

Masanın kenarına kadar gelen robot, çizgi sensörü herhangi bir ışık algılamadığı zaman hareket etmeyi durduracak ve buzzer aracılığıyla uyarı verecek. Programımız şu şekilde:

3 Yorumlar

  1. İyi günler.Bu kodları arduino uno için direk kullanamıyorum.Yeşil bayrağa tıklayınca kodunu çalıştıramadım.

    • İyi günler, buradaki kodları Arduino UNO ile doğrudan kullanamazsınız. Sadece mBot üzerinde bulunan mCore kartı için geçerlidir.

CEVAP VER