Koşullu Programlama - Blok Tabanlı
Öğ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.

[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.
| 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
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.
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.
Öğ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.

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.
Projeyi aşağıda oluşturun.
Mühendislik defterinizde aşağıdakileri yapın:
- 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.
- Projenin ne yaptığını yakalayan tek cümlelik bir özet yazın.
- 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
-
Cevap

- 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.
[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.
- 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.
- Clawbot'unuzdakiStopOrDriveSlot 2'ye indirin.
- Bir projeyi indirme konusunda yardım için, VEXcode V5'tekiBir Projeyi İndirme ve Çalıştırma'nın nasıl yapılacağını açıklayan öğreticiye bakın
- TestDurdurma Düğmesi Oluşturma(Yuva 1) ve ardından testStopOrDrive(Yuva 2) ve robotun davranışında herhangi bir fark olup olmadığını görmek için bunları karşılaştırın. Mühendislik defterinizdeki farklılıkları not edin.
Öğ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
-
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
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:

Öğ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:

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.