back to top

mBot ile Scratch Programlama ve İlk Uygulamalar

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:

Son Çıkan Yazılar

21 YORUMLAR

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

  1. İyi günler.

    Mesefe sensorunun bazen çalışıp bazen çalışmamasını sağlayabilir miyim?

    Mesela 20 saniye aralıkla çalışıp çalışmaması? ilk 20 sn mesafe sensoru çalışacak ve uzaklık 10 un altına düşerse sağa dönecek. Sonraki 20 sn uzaklık 10 un altına düşşede sağa ya da sola dönmeyecek… Yani bu portu ya da sensoru kapatılı tutmak gibi bir şey var mı?

  2. Merhaba ,
    mail adresinizi iletebilirseniz size mbot üzerinde düzgün çalışmayan “habersal” bloğu hakkında soru sormak istiyorum.
    NOT : hazırladığım kod bloğunu ileteceğim.
    teşekkürler,

  3. iyi günler mbot mcore üzerinde gaz sensörü ve dokunma sensörü çalışmıyor mu acil cevap yazarsanız mutlu olurum.sensör çalışıyor fakat değeri hep 0.

  4. MCORE PORT 1 E (TAKIP DOKUNMA OLDUYSA DEĞERİ 1 VEYA 0 YADA TRUE FALSE)(PORT 3 GAZ SENSÖRÜ DEĞERİ>0) KART ÜZERİNDE LEDLER YANSIN DİYE BASİT KOŞUL YAPTIM DOKUNUNCA SENSÖRÜN ÜZERİNDE IŞIK MAVİ YANIYOR SADECE GAZ SENSÖRÜ DE KEZA ÖYLE HOCAM BASİT BİR KOD ÖRNEĞİ VARMI ACABA ROBOT KODLARINI KULLANARAK SADECE.BU İKİ SENSÖR MCORE İLE UYUMSUZ MU?İLGİNİZ VE YARDIMLARINIZ İÇİN ÇOK TEŞEKKÜRLER..

  5. Merhaba. Uygulamaları yapıyorum ancak çalışmıyor. Örneğin sağ sol oklara tıklayınca motorlar hareket etmiyor. Bunun için Mbot kullanımıyorum.

  6. size bir şey söyleyeceğim ben ileri git dediğimde geri geri git dediğim zaman ileri gidiyor.kumanda ve telefon uygulamalarındada bu oluyor.ne olabilir?

  7. Makeblock setini aldım fakat etap 4 tabletler android sürümü nedeniyle makeblock ve mblock uygulamalarini çalıştırmıyor nasıl bir şey önerirsiniz

CEVAP VER

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