İki Düğmeyi Programlama
Öğretmen Araç Kutusu
- Bu Etkinliğin Amacı
Önceki sayfada, öğrenci Brain Up düğmesini kullanarak kolu dönecek şekilde programlıyordu. Bu sayfa, Beyin Aşağı düğmesini kullanarak kolu aşağı dönecek şekilde programlamak için önceki projenin üzerine inşa edilecektir.

Bu etkinlik, öğrencilere [If then else] bloklarıyla programlamanın yanı sıra robotun Beyin Yukarı veya Aşağı düğmelerine basılıp basılmadığını kontrol etmesini sağlamak için algılama ve operatör bloklarını kullanmalarını sağlayacaktır. Brain Up butonuna basılırsa Clawbot'un kolu kalkacaktır. Brain Down butonuna basılırsa Clawbot'un kolu aşağı inecektir. Bu, önceki faaliyetten yola çıkar ve ayrıca Yeniden Düşünme bölümündeki Kullanıcı Arayüzü Mücadelesi için zemin hazırlar. Kullanıcı Arayüzü Mücadelesi
için, öğrencilerin IQ Robot Beynindeki düğmeleri kullanarak Clawbot'larını kolu kaldıracak, kolu indirecek, pençeyi açacak ve pençeyi kapatacak şekilde programlamaları gerekecektir. [If then], [If then else], <Braindüğmesine basılması veya [Spin] blokları hakkında>daha fazla bilgi
için VEXcode IQ 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 ne yapacaklarının bir taslağı verilmiştir:
- Sağlanan ArmUpDown projesini oluşturmak ve projenin ne yapacağını tahmin etmek için mevcut ArmUp2 'yi kullanın.
- Projedeki blokların akışını açıklamaya yardımcı olması için bir akış şeması görüntüleyin.
- ArmUpDown projesinin ne yaptığıyla ilgili açıklamalarını iyileştirin.
- If Then Else Blocks eğitim videosunu izleyin.
- [If then else] bloklarını kullanarak projelerini düzenleyin.
- Dur ve Tartış: Öğrenciler, Clawbot'un gerçek gözlemlerine kıyasla projenin ne yapacağına dair tahminleri üzerinde düşüneceklerdir.
- Kolu programlarken aynı proje taslağını kullanarak pençeyi programlayın.
| Adet | Gerekli Malzemeler |
|---|---|
| 1 |
VEX IQ Süper Kit |
| 1 |
VEXcode IQ |
| 1 |
Mühendislik Defteri |
| 1 |
Clawbot (Aktarma Organları) Şablonu |
Öğretmen Araç Kutusu
Bu bölüm için öğretim stratejileri ile ilgili öneriler için, Yapılacaklar veya Yapılmayacaklar Kılavuzunun (Google /.docx /.pdf) Teslimat sütununu inceleyin.
Pençe Robotu kolu yukarı ve aşağı hareket etmeye hazır!
Bu etkinlik size robotunuzu koşullu davranışlarla programlamanız için araçlar verecektir. [
If then else] bloğu aktivite içindeki ana odak noktasıdır, ancak diğer Algılama, Kontrol ve Operatör blokları da kullanılır.

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

Adım 1: Kolu aşağı hareket ettirmek için programlama.
Önceki sayfada, Clawbot'un kolunu Brain Up düğmesine basıldığında dönmesi için programladınız. Ama kolunu da indirmeye ne dersin? Önce önceki ArmUp2 projesini tekrar gözden geçirelim.

Kolu aşağı döndürmek için kolu yukarı döndürmek için aynı [If then] bloğunu kullanmak mümkün olur mu? Hadi deneyelim! Mevcut ArmUp2 projenizi düzenleyerek aşağıdaki projeyi oluşturun.

-
Projeyi ArmUpDown olarak kaydedin. Öğrencilerin projeyi kaydetme konusunda yardıma ihtiyacı varsa, Adlandırma ve Kaydetme öğreticisine başvurun.

- ArmUpDown proje adının artık araç çubuğunun ortasındaki pencerede olduğundan emin olmak için kontrol edin.
- Projenin Clawbot'un mühendislik defterinizde ne yapacağını tahmin edin. Hem kullanıcının hem de Clawbot'un davranışlarını açıklayın.
- Projenin Clawbot'un ne yaptığına dair tahmininizin doğru olup olmadığını görmek için test edin.
- Projeyle ilgili açıklamalarınızı kontrol edin ve gerektiğinde düzeltmek için notlar ekleyin.
Öğretmen İpuçları
Öğrencinin VEXcode IQ'yu ilk kez kullanması durumunda, diğer temel becerileri öğrenmek için araç çubuğundaki Öğreticileri de görebilirler.

Öğretmen Araç Kutusu
Öğrencilerin yukarıda inşa ettikleri proje işe yarayacaktır. Beyin Yukarı düğmesine basıldığında kol yukarı, Beyin Aşağı düğmesine basıldığında kol aşağı dönecektir. Proje olduğu gibi çalışsa da, en iyi şekilde yazılmamıştır. Her iki koşulun da aynı anda doğru olabileceği bir örnek olabilir. Ayrıca, Beyin Yukarı düğmesine basmaya başlama koşulu önce olduğundan, Beyin Yukarı düğmesine basılı tutulursa ve ardından Beyin Aşağı düğmesine de basılırsa, kolun dönmeye devam edeceğine dikkat edin. Bu eylem, Brain Up düğmesi serbest bırakılana kadar durmayacaktır. Bu nedenle, bu olası sorunlardan kaçınmak için proje bir sonraki adımda [If then else] bloğunu içerecek şekilde yeniden yazılacaktır.
Öğretmen Araç Kutusu
-
Dur ve Tartış
Artık öğrenciler projeyi test ettiklerine göre, tahminlerinin gözlemlerine kıyasla nasıl olduğunu sorun. Aşağıdaki soruları sorarak tartışmayı kolaylaştırın:
-
Tahmininiz gözleminizle aynı mıydı?
-
Projede neler oluyor gibi görünüyor?
-
Yukarı ve Aşağı düğmelerine basılan koşullar sadece bir kez mi kontrol ediliyor?
-
Sizce proje daha verimli çalışacak şekilde yeniden düzenlenebilir mi?
Adım 2: Proje akışını anlama.
Önceki adımda, proje kolu kaldırdı ve indirdi. Ancak önce Brain Up butonunun start durumuna basıldığı için Brain Up butonuna basılı tutulup daha sonra Brain Down butonuna da basılırsa Brain Up butonu serbest bırakılana kadar o hareket durmayacağı için kol yukarı doğru dönmeye devam edecektir. Proje akışını açıklayan aşağıdaki akış şemasını görüntüleyin.

Bu nedenle, proje [If then] bloklarını [If then else] bloklarıyla değiştirebilir, böylece herhangi bir zamanda yalnızca bir örnek doğru olabilir.
[If then else] blokları hakkında aşağıdaki öğretici videoyu izleyin:
VEXcode IQ'daki If - Then - Else Eğitim videosunu izleyerek başlayın.

[If then else] bloklarını kullanmak, [Wait until] bloklarına olan ihtiyacı da ortadan kaldıracaktır çünkü kol, Brain Up düğmesi serbest bırakılana kadar dönmeye devam edecektir. Bunun nedeni, Brain Up düğmesi koşulu yanlış olana (serbest bırakılana) kadar [ If then else ]' ın "else" kısmına asla ulaşılmamasıdır. [Forever]
(Sonsuza Kadar) bloğu, ilk koşulun sürekli olarak kontrol edilmesini sağlar.

[If then else] blokları ekleyerek projeyi değiştirmeyi keşfedelim. Kol Motoru artık Beyin Yukarı düğmesine basılmayana (serbest bırakılana) kadar dönmeye devam edecektir. [Forever] bloğu nedeniyle, bu koşul yanlış olana kadar kontrol edilmeye devam edecektir. Beyin Yukarı düğmesinin durumu yanlış
olduğunda, proje Beyin Aşağı düğmesine basılırsa durumu kontrol etmek için bir sonraki bloğa devam edecektir. Beyin Aşağı düğmesine basılma durumu doğruysa, kol yukarı dönecektir. Yine, [Forever] bloğu nedeniyle, bu koşul yanlış olana kadar kontrol edilmeye devam edecektir. Brain Up düğmesinin durumu yanlış
olduğunda, proje [Motoru durdur] bloğu olan bir sonraki bloğa devam edecektir. Bu nedenle, Kol Motoru yalnızca her iki koşul da yanlış olduğunda (her iki düğmeye de basılmadığında) duracaktır.

Tartışmayı Motive Et
S : Brain Up düğmesine basılma koşulu YANLIŞSA (serbest bırakılırsa) proje akışının ilerlemesi nedir?
A: Koşul yanlışsa, proje akışı Beyin Aşağı düğmesine basılan durumu kontrol etmeye devam edecektir.
S: Yukarıdaki projedeki [Eğer öyleyse] bloklarının amacı nedir?
C: [If then else] bloklarını kullanmak, bir seferde yalnızca bir örneğin doğru olmasına izin verir. Bu nedenle, Brain Up düğmesi ve Brain Down düğmeleri, [If then else] bloklarını kullanarak aynı anda doğru olamaz, çünkü Brain Down düğmesinin ikinci koşuluna basılması, Brain Up düğmesinin ilk koşulu yanlış olmadıkça bir seçenek bile olmayacaktır. Diğer amaç ise programlama verimliliğini artırmaktır.
S : Yukarı ve Aşağı düğmelerinin her iki koşulu da yanlışsa proje akışının ilerlemesi nedir?
A: Her iki koşul da yanlışsa, proje akışı yığının tepesine dönmeden önce [Motoru durdur] bloğuna devam edecektir.
Adım 3: [If then else] blokları ile programlama.
[If then else] taşlarını kullanalım:
-
[If then else] bloklarını ArmUpDown projenize ekleyin, böylece projeniz aşağıdaki gibi görünür:

-
Projeyi ArmUpDown2 olarak kaydedin. Öğrencilerin projeyi kaydetme konusunda yardıma ihtiyacı varsa, Adlandırma ve Kaydetme öğreticisine başvurun.

- Projeyi Clawbot'taki 4. Yuvaya indirin ve ardından çalıştırın.
- Bir projeyi indirme ve çalıştırma konusunda yardım için VEXcode IQ'da bir projenin nasıl indirileceğini ve çalıştırılacağını açıklayan eğiticiye bakın.

- Beyin Yukarı düğmesine basıldığında kolun şimdi dönüp dönmeyeceğini ve Beyin Aşağı düğmesine basıldığında aşağı dönüp dönmeyeceğini test edin.
- Beyin Yukarı ve Aşağı düğmelerine basılmadığında (serbest bırakıldığında) Kol Motorunun durduğunu doğrulayın.
- Eğer öyleyse bloklarını projenize eklemeden önce ve sonra Clawbot'un nasıl davrandığına dair gözlemlerinizi mühendislik defterinize yazın.
Öğretmen Araç Kutusu
-
Dur ve Tartış
Öğrenciler projeyi [If then else] bloğunu eklemeden önce ve sonra test ettikten sonra, bunun Brain Up düğmesi serbest bırakılana kadar kolun dönmeye devam etmesine nasıl izin verdiğini öğrencilerle tartışın. Öğrencilerden gözlemlerini mühendislik defterlerinden paylaşmalarını isteyin. Aşağıdaki soruları sorarak bir tartışmayı kolaylaştırın:
-
Clawbot'un [If then else] bloklarını kullanmak ile sadece [If then] bloklarını kullanmak arasında farklı davrandığını görüyor musunuz?
-
Program verimliliğinin neden önemli olduğunu düşünüyorsunuz?
-
Brain Up buton koşulu projede sadece bir kez mi kontrol ediliyor?
Öğrencilerin mühendislik defterleri bireysel olarak (Google /.docx /.pdf) veya ekip olarak (Google /.docx /.pdf) tutulabilir ve puanlanabilir. Önceki bağlantılar, her yaklaşım için farklı bir performans değerlendirme ölçeği sağlar. Bir DPA eğitim planlamasına dahil edildiğinde, DPA'yı açıklamak veya en azından etkinlik başlamadan önce öğrencilere kopyalarını vermek iyi bir uygulamadır.
Öğretmen Araç Kutusu
Öğrenciler, Clawbot'larının [If then else] bloklarını kullanmak ile [If then] bloklarını kullanmak arasında nasıl davrandıkları konusunda çok fazla fark görmeyebilirler. Öğrenciler fiziksel olarak çok fazla fark göremiyorlarsa, programlama verimliliği ve bir projenin basitleştirilmesinin daha az blok kullanımına nasıl yol açabileceği hakkında bir tartışma başlatın. Bir projede daha az blok kullanmak, olası hataların miktarını azaltabilir.
Adım 4: Pençeyi Programlama.
Önceki adımda, [If then else] blokları kullanılarak proje daha verimli çalışacak şekilde optimize edildi. Önceki örnekte, kol Beyin Yukarı ve Aşağı düğmeleri kullanılarak manipüle edildi. Tam olarak aynı proje taslağını
kullanarak, Pençe de manipüle edilebilir.
-
ArmUpDown2 projesini gözden geçirin ve açılır menüyü kullanarak [Spin] bloklarını ArmMotor yerine ClawMotor olarak değiştirin. Beyin Yukarı düğmesinin Pençe'yi "açık" olarak döndürdüğünden ve Beyin Aşağı düğmesinin açılır menüleri kullanarak Pençe'yi "kapalı" olarak döndürdüğünden
emin olun.
-
Projeyi ClawUpDown olarak kaydedin. Öğrencilerin projeyi kaydetme konusunda yardıma ihtiyacı varsa, Adlandırma ve Kaydetme öğreticisine başvurun.

- Projeyi Clawbot'taki Yuva 1 'e indirin ve ardından çalıştırın.
- Bir projeyi indirme ve çalıştırma konusunda yardım için VEXcode IQ'da bir projenin nasıl indirileceğini ve çalıştırılacağını açıklayan eğiticiye bakın.

- Beyin Yukarı düğmesine basıldığında Pençenin şimdi dönüp dönmeyeceğini ve Beyin Aşağı düğmesine basıldığında dönerek kapanıp kapanmayacağını görmek için test edin.
- Beyin Yukarı ve Aşağı düğmelerine basılmadığında (serbest bırakıldığında) Pençe Motorunun durduğunu doğrulayın.
- Eğer öyleyse bloklarını projenize eklemeden önce ve sonra Clawbot'un nasıl davrandığına dair gözlemlerinizi mühendislik defterinize yazın.
Öğretmen Araç Kutusu
Artık öğrenciler düğmeleri kullanarak kolu ve pençeyi manipüle etme becerilerine sahip olduklarına göre, öğrencilerden aynı projedeki dört eylemi (kol yukarı, kol aşağı, pençe açık ve pençe kapalı) nasıl gerçekleştirebilecekleri konusunda beyin fırtınası yapmalarını isteyin.
Öğrenciler, robotlarının dört eylemi de gerçekleştirmesine izin vermek için yeniden düşünme bölümünde başka bir [eğer öyleyse] bloğu kullanacaklardır.
Öğrenmenizi Uzatın
- Motor Durdurma Bloğunu
Ayarlayın
Öğrenciler robotlarını kolu kaldırıp indirecek şekilde programlarsa, Pençe'nin ağırlığı kolun aşağı kaymasına neden olabilir. Bu
durumda, [Set motor durdurma] bloğu, kolun yerçekimi ve pençenin ağırlığı nedeniyle düşmemesi için kullanılabilir. Bu blok projenin başlangıcında kullanılabilir ve projenin geri kalanı için gelecekteki tüm motor bloklarına uygulanacaktır.

Ayarlanan motor durdurma bloğunun üç ayarı vardır:
- Fren, Motorun derhal durmasına neden olur.
- Coast, Motorun kademeli olarak durmasına izin verir.
- Bekletme, Motorun derhal durmasına neden olur ve hareket ettirilirse durma konumuna geri döndürür.
