Skip to main content

Koşullu Programlama - Blok Tabanlı

Öğretmen Araç Kutusu simgesi Öğretmen Araç Kutusu - Bu Etkinliğin Amacı

Koşullu programlama, bir proje içerisinde [If then]veya[If then else] bloğu kullanılarak gerçekleştirilebilir. Bu etkinlik öğrencilere, ekrana basılmadığı sürece robotun ileri gitmesini sağlamak için [Eğer o zaman] bloğunun nasıl kullanılacağını öğretecektir. Etkinliğin son kısmı, [Eğer öyleyse] bloğu yerine [Eğer öyleyse değilse] bloğunu kullanarak projeyi geliştirmelerini istiyor.

Yan yana iki VEXcode V5 bloğu - solda If then bloğu ve sağda If then else bloğu.

[If then]ve[If then else] blokları veya bu etkinlikte kullanılan diğerleri hakkında daha fazla bilgi için VEXcode V5 içindeki yardım bilgilerini ziyaret edin. Bu yerleşik yardım aracı hakkında daha fazla bilgi için buraya tıklayın.

Aşağıda öğrencilerinizin bu etkinlikte yapacaklarının bir özeti yer almaktadır:

  • If Then Else Blockseğitim videosunu izleyin ve ardından Clawbot (Aktarma Organları 2 Motorlu, Jiroskop Yok) şablonunu kullanarak gösterilenDurdurma Düğmesi Oluşturmaprojesini oluşturun ve projenin ne yaptığını tahmin edin.
  • Durdurma Düğmesi Oluşturmaörnek projesini, "else" davranışını ileri sürüş olarak ayarlayan [Eğer öyleyse, başka türlü] bloğunu kullanarak geliştirin.
  • Öğrenmenizi Genişletin:Robotun sürüşünü durdurmak için beynin ekranına basılacak bir düğme eklemek.
Gerekli Malzemeler:
Adet Gerekli Malzemeler
1

VEX V5 Sınıf Başlangıç Seti (güncel yazılımla)

1

VEXcode V5 (en son sürüm, Windows, macOS, Chromebook)

1

Mühendislik Defteri

1

Clawbot (Drivetrain 2 - motor, No Gyro) Şablonu

Öğretmen Araç Kutusu simgesi Öğretmen Araç Kutusu

Bu bölüm için öğretim stratejilerine ilişkin öneriler için Yapılacaklar veya Yapılmayacaklar Tempo Rehberi'nin Sunum sütununu inceleyin! (Google Doküman / .docx / .pdf)

Pençebot karar vermeye hazır!

Bu etkinlik, robotunuzu koşullu davranışlarla programlamanız için gereken araçları sağlayacaktır.
[Eğer öyleyse]ve[Eğer öyleyse değilse] blokları, etkinliğin ana odağıdır ancak Operatörler ve Algılama blokları da kullanılır.

Dört VEXcode Bloğu gösterilmiştir. Sol üstten saat yönünde: Ekrana basılan altıgen blok; operatör bloğu değil; C bloğu ise; ve C bloğu ise.

Bloklar hakkında bilgi edinmek için VEXcode V5 'in içindeki Yardım bilgilerini kullanabilirsiniz. Yardım özelliğini kullanma konusunda rehberlik için Yardım Kullanma eğitimine bakın.

VEXcode V5 Araç Çubuğu, Dosya menüsünün sağında kırmızı bir okla gösterilen Öğreticiler simgesiyle birlikte.

 

Öğretmen İpuçları simgesi Öğretmen İpuçları

Eğer öğrenci VEXcode V5'i ilk kez kullanıyorsa, araç çubuğundaki Eğitimleri inceleyerek diğer temel becerileri de öğrenebilir.

VEXcode V5 Araç Çubuğu, kırmızı kutuyla vurgulanan Eğitimlerle. Araç Çubuğu soldan sağa doğru V5 logosunu, bir küre simgesini, Dosya ve Eğitimler'i gösterir. Eğitimlerin sağında ek simgeler ve işlevler yer alır.

Adım 1: Koşullu ifadelerin anlaşılmasıyla başlayalım 

Koşullarla programlamaya başlamadan önce, önce aşağıdaki If - Then - Else eğitim videosunu izleyin. VEXcode V5 'te Eğitim videosu olarak da bulunabilir.

 

Adım 2: Koşullu ifadelerle programlamaya başlayalım 

Clawbot (Drivetrain 2 - motor, No Gyro) şablon örnek projesini açın.

Şablon proje simgesi, üstte gri bir robot diyagramı ile altta Clawbot'u (Drivetrain 2 - motor, No Gyro) okur.

Projeyi aşağıda oluşturun.

VEXcode V5 projesi, başlatıldığında bir blok ve ardından bir sürekli döngü ile başlar. Döngünün içinde, bir sürücü ileri bloğu ve ardından bir eğer öyleyse bloğu vardır. If then block reads If screen pressed then stop driving, wait until not screen pressed. If then block reads If screen pressed then stop driving,

Mühendislik defterinizde aşağıdakileri yapın:

  1. Projenin Clawbot'un ne yaptığını açıklayın. Bir durdurma düğmesi oluşturduğu gerçeğinden daha fazlasını açıklamanız gerekecektir. Hangi blokların Clawbot'a ne yaptırdığını açıklayın.
  2. Projenin ne yaptığını yakalayan tek cümlelik bir özet yazın.

VEXcode V5 'teki proje adı iletişim kutusunda bir Durdurma Düğmesi Oluşturma okunur. Soldaki yuva 1 seçilir ve sağdaki Araç Çubuğunda Kaydedildi yazar.

  • Projenin Clawbot'un ne yaptığına dair tahmininizin doğru olup olmadığını görmek için test edin.
  • Projeyiolarak kaydedip indirin ve Clawbot'taki 1. YuvayaDurdurma Butonu Oluşturun ve ardından çalıştırın.
  • Bir projeyi indirme konusunda yardıma ihtiyacınız varsa, VEXcode V5'tekiBir Projeyi İndirme ve Çalıştırmanasıl yapılacağını açıklayan eğitime bakın.
  • Projeyle ilgili açıklamalarınızı kontrol edin ve gerektiğinde düzeltmek için notlar ekleyin.

Öğretmen Araç Kutusu simgesi Öğretmen Araç Kutusu - Cevap

Durdurma düğmesi projesinin oluşturulması, yığındaki her bloğun işlevselliğine ilişkin etiketlerle gösterilir. Forever bloğu "Forever sürer ve kontrol eder" olarak etiketlenmiştir. If then bloğunun If dalı "Koşulun Doğru olup olmadığını kontrol eder - ekran basılır." olarak etiketlenmiştir. Sürüşü durdur bloğu "Bu bloğu çalıştırır" olarak etiketlenir. Eğer True ise - o zaman sürüşü durdur çünkü true. Ekrana basılıncaya kadar bekleme, işlem hızını kontrol eden etiketli kontrollerdir.

  • Bu projede robot sürekli ileriye doğru hareket ediyor ancak ekrana basıldığında duruyor. Bunu, sürekli olarak sürmek ve kontrol etmek için [Sonsuza Kadar] bloğunu kullanarak yapar. Ekrana basılıyorsa (TRUE), Clawbot sürüşü durdurur.

    Öğrencilerin [Wait until] bloğunun neden kullanıldığını anlamaları beklenmez. [Bekle] bloğunun robotun program akışının hızı nedeniyle gerekli olduğunu açıklayın. Eğer orada olmasaydı, Clawbot'un motorları, projede dolaşırken kullanıcı ekrana tekrar tekrar basıyormuş gibi davranırdı. Bunun yerine, [Bekle] bloğu program akışını durdurur ve kullanıcı ekrana basmayı bırakana kadar projenin [Sonsuza Kadar] döngüsünü tekrar başlatmasını sağlamaz.
  • Sahte kod satırı şu kadar basit olabilir: Ekran basılıncaya kadar ileri doğru sürün.

Öğrencilerin mühendislik not defterleri bireysel olarak (Google Doc / .docx / .pdf) veya ekip halinde (Google Doc / .docx / .pdf) tutulabilir ve puanlanabilir. Önceki bağlantılar her yaklaşım için farklı bir değerlendirme ölçütü sunmaktadır. Eğitim planlamasına bir değerlendirme ölçütü eklendiğinde, etkinlik başlamadan önce değerlendirme ölçütünün öğrencilere açıklanması veya en azından bir kopyasının öğrencilere verilmesi iyi bir uygulamadır.

Adım 3: Bloğa kadar bekleme süresini anlama

Beyin ekranına basılırsa, projenin akışının o kadar hızlı hareket ettiğine dikkat edin, proje bir sonraki bloğa, yani [Sürüşü durdur] bloğuna geçecektir.

Bu nedenle, projenin, robotun Beyin ekranı serbest bırakılana kadar durmasını söyleyen bir [Bekle] bloğuna ihtiyacı vardır. Aksi takdirde [Sonsuza Kadar] bloğu projenin [Sürüş] bloğuyla yeniden başlamasına neden olur.

İç içe bir koşulla bloğa kadar bekleyin. Ekrana basılan blok, not operatöründe iç içe yerleştirilmiştir, bu nedenle tüm blok, ekrana basılmayana kadar bekle değerini okur.

[Bekle] bloğu projenin akış hızı nedeniyle gereklidir. Orada olmasaydı, robotun yanıt verecek zamanı olmadan önce proje bir sonraki bloğa geçecekti

 

4. Adım: Projeyi değiştirin

Bir sonraki adımımız [If then] bloğunu [If then else] bloğuna dönüştürmek.

Yan yana VEXcode blokları - solda Dur düğmesi oluşturma projesi yer almaktadır. Sağda Araç Kutusundan bir If then else bloğu vardır.

  • Durdurma Düğmesi Oluşturmayeni proje olarak,StopOrDrivekaydederek başlayın.
  • Bir projeyi kaydetme konusunda yardıma ihtiyacınız varsa VEXcode V5 'teki Projenizi Adlandırma ve Kaydetme eğitimine bakın.
  • Daha sonra aşağıda gösterilenStopOrDriveprojesini oluşturun.

VEXcode V5 projesi, bir sürekli blok takılıyken başlatıldığında bir blokla başlar. Sonsuz bloğun içinde bir if else bloğu vardır. Ekrana basılırsa if dalı okur, ardından sürüşü durdurur, ekrana basılmayana kadar bekler. Else dalı bir ileri sürücü bloğu içerir.

Öğretmen İpuçları simgesi Öğretmen İpuçları

Talimatlar, öğrencileri projeleri kaydetmek ve indirmek için ihtiyaç duyduklarında VEXcode V5 içindeki eğitim videolarına yönlendirir. Daha fazla yardım için, ek yardım makaleleri içinVEX Robotics Bilgi Bankasıbakın.

Öğretmen Araç Kutusu simgesi Öğretmen Araç Kutusu - Cevap

Robotun davranışı açısındanDurdurma Butonu OluşturmaveStopOrDriveprojeleri arasındadeğilfark olmamalıdır.

İki proje de Clawbot'un aynı şekilde davranmasını sağlıyor. Tek farkStopOrDriveprojesinde [If then else] bloğunun kullanılmasıdır.

[If then else] bloğunu kullanmak, yaklaşan aktivitelerde ekrana ek düğmeler eklemenize olanak tanır.

Öğrenmenizi Genişletin simgesi Öğrenmenizi Genişletin

Bu STEM Laboratuvarı ilerledikçe, öğrenciler Clawbot'un ekranının bir kullanıcı arayüzü olarak işlev görmesini sağlayan projeler geliştirecekler. Buna hazırlık olarak, öğrencilere ekranda düğme gibi işlev gören renkli bir dikdörtgenin nasıl çizileceğini bulmaları için meydan okuyun. Zira şu an ekranın herhangi bir yerine basmak şart olduğundan, butonun tüm ekranı kaplaması gerekiyor. Öğrenciler, başlatıldığında düğmeyi çizmek için projenin bir olay yayınlamasını sağlamalıdır.
Öğrencilerin, Olaylar ve Görünümler blokları hakkında bilgi edinmek için VEXcode V5'teki Yardım özelliğini kullanmalarını sağlayın. Öğrencilere öncelikle [Dikdörtgen çiz] bloğunun bilgisinde beynin ekranının nasıl bir koordinat sistemine göre düzenlendiğini öğrenmelerini söyleyin. Bu bloğun içindeki parametreleri ayarlayabilmek için bunu anlamaları gerekecektir. Kullanılan koordinatlar sütun veya satır sayısına değil piksel sayısına karşılık gelir. Ekranın düzeni şu şekildedir:

V5 Brain ekranının piksel ızgarasında sol tarafta 12 adet numaralandırılmış satır bulunmaktadır. En üstteki satır 1. Satır, alttaki satır ise 12. Satır olarak etiketlenmiştir. Üstte 48 adet numaralı sütun bulunmaktadır; en solda 1. Sütun, en sağda ise 48. Sütun etiketlenmiştir. Toplam piksel ölçüleri 480 piksel genişliğinde ve 240 piksel yüksekliğindedir.

Öğrenciler bu değişiklikleri mühendislik defterlerine kaydederken planlamalı, test etmeli ve projeyi geliştirmelidir. Bireysel mühendislik not defteri değerlendirme ölçütleri için bu bağlantılardan birine tıklayın (Google Doc / .docx / .pdf) veya takım not defterleri için aşağıdaki bağlantılardan birine tıklayın (Google Doc / .docx / .pdf).

İşte bir örnek çözüm:

Beyin ekranına çizilecek VEXcode V5 projesi. İki blok yığını vardır. Soldaki yığın, When started bloğuyla başlar ve ardından bir Broadcast Draw Button bloğu gelir. Sonraki blok ise robotu ekrana basılana kadar ileri doğru hareket ettirecek bir if then else bloğunun bulunduğu Forever bloğudur. Sağ tarafta When I receive Draw button şapka bloğuyla başlayan ve Brain'de set fill color to red yazan ve Brain'de 0, 0, 480, 240 dikdörtgenlerini çizen iki bağlı bloğun bulunduğu bir yığın bulunmaktadır.

Gördüğünüz gibi, buton (0, 0) başlangıç noktasından başlayarak tüm ekranı kaplayacak ve 480 yatay (x ekseni) piksel ile 240 dikey (y ekseni) pikselin tamamını dolduracak şekilde çizilmiştir.