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 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:
-
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:
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 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:
-
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:
İ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.
masada rasgele dolanan kodu nasıl yazabiliriz acaba ?
eminim yoktur
var.araştırırsanız bulacağınıza eminim. “mbot otonom giden araç” diye aratın.
İ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ı?
karanlıkta duran ışık yandığında giden mblock kodu var mı?
Hareket koşulunu ışık sensörünün değerine bağlı olarak oluşturursanız istediğinizi elde edebilirsiniz.
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,
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.
İyi günler, bağlantınızı nasıl yaptınız acaba?
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..
Malesef bahsettiğiniz sensörleri mCore platformu ve mBlock yazılımı ile kullanma şansım olmadı. Yardımcı olabilecekse MQ-4 Gaz Sensörü ve Arduino İle Doğalgaz Kaçak Alarmı Yapalım yazımı okuyabilirsiniz.
merhabalar ;
rfıd ile led yakma kod bloguna örnek verirmisiniz ?
MERHABA, bu seneki make x yarışması hakkında bilginiz var mı?
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.
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?
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
mBlock ile Arduino projesi yapılabilir. Yani mBlock ile sadece mBot değil, Arduino gibi projeler yapılabilir.
merhabalar,mblock programını indirdim ancak program dili ingilizce türkçe yaması falan mı var yoksa ben mi hata yapıyorum
Merhaba mbot kullanıyorum ve sürekli radar uyarısı veriyor uygulamalar işe yaramıyor düzeltemiyoruz hareket etmiyor bu durumda ne yapmalıyız