Beyin Ekranına İkinci Bir Buton Ekleme - Blok Tabanlı
Öğretmen Araç Kutusu
-
Bu Etkinliğin Amacı
Öğrenciler artık beynin ekranını tek büyük bir düğme gibi ele alma konusunda deneyim kazandıklarından, ekranı iki düğmeye dönüştürebilirler. Bu etkinlik, öğrencilere koşullu ifadeleri daha iyi yönetmek için iç içe geçmiş [Eğer o zaman değilse] bloklarını kullanmayı ve bunu yapmanın altında yatan mantığı tanıtacaktır. Öğrencilere öncelikle robotun ekrana basıldığında sola veya sağa dönmesini sağlayacak projenin yapımı konusunda rehberlik edilir. Ancak daha sonra robotun sola dönmesini sağlayan düğmelerin sağa dönmesini, sola dönmesini sağlayan düğmelerin robotu sola döndürmesini sağlayacak şekilde değiştirilmesi isteniyor.
[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 neler yapacaklarının bir özeti yer almaktadır:
-
StopOrDriveprojesinin ve beynin ekran düzeninin piksel cinsinden incelenmesi.
-
Programlama mantığının rehberliğinde yeni birLeftOrRightprojesi inşa etmek.
-
Ekrandaki butonların ters yönde çalışması için projeyi revize ediyorum.
-
Öğrenmenizi Genişletin: Ekranı iki düğmeye bölün ve basıldığında robotu sola veya sağa döndürün.
| 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 |
Önceki Oynat sayfasından StopOrDrive projesi |
Öğ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)
Beyninizin ekranında birden fazla düğme bulunabilir.
Bu etkinlik, robotun beynin ekranının hangi tarafına basıldığına bağlı olarak ileri gitmesini ve sola veya sağa dönmesini programlamanızı sağlayacaktır.
Bu etkinlik sırasında ihtiyaç duyacağınız üç ek blok türü şunlardı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 öğreticisine bakın.
1. Adım: StopOrDrive projesini gözden geçirerek başlayalım.
StopOrDrive projesinde Clawbot'un ekrana basıldığında durması, basılmadığı takdirde ileri gitmesi sağlanıyordu.
Tüm ekran büyük bir butondan oluşuyordu ancak bir sonraki projede ekranın yarısının bir buton, diğer yarısının da diğer buton olmasını istiyoruz.
Ekranı iki düğmeye bölmek için ekranın düzeni hakkında daha fazla bilgi sahibi olmamız gerekir.
- Sütunların sayısının soldan sağa doğru arttığına dikkat edin. Sütun sayısı 48 ve ekran 480 piksel genişliğindedir.
- Mühendislik defterinize ekrandaki x değerinin soldan sağa ölçülen piksel sayısına eşit olduğunu yazın.
- Ekranın merkezinin x değeri nedir? Bu etkinlik için yalnızca x eksenine odaklanabilirsiniz, çünkü yalnızca bir sol ve sağ düğmeye ihtiyacınız vardır.
Öğretmen Araç Kutusu
-
Cevap
Ekranın ortasındaki x değeri, ekran genişliğinin piksel cinsinden yarısına eşittir. Yani merkez noktasının x değeri 240'tır. Öğrenciler ekranın sola mı yoksa sağa mı basılacağı koşulunu programlamak için bu sayıya ihtiyaç duyacaklar. Bu yüzden hepsinin doğru değere sahip olduğundan emin olun.
İleriye baktığımızda, Rethink bölümündeki Kullanıcı Arayüzü Mücadelesi, öğrencilerin öğrendiklerini ekranda dört düğme oluşturmak için uygulamalarını gerektirecek. Bunun için hem x hem de y değerlerine ihtiyaçları olacak.
Öğretmen İpuçları
Talimatlar, öğrencileri ihtiyaç duyduklarında VEXcode V5 içindeki Eğitimlere yönlendirir. Daha fazla yardım için, ek yardım makaleleri içinVEX Kütüphanesibakın.
Adım 2: İki düğme için programlama
- StopOrDriveLeftOrRightprojesi olarak kaydedin.
- Projeleri açma, adlandırma veya kaydetme konusunda yardıma ihtiyacınız olursa VEXcode V5 'teki Eğitimleri izleyin.
- Projeyi aşağıda oluşturun. Ekrana basıldığında, basıldığı tarafa bağlı olarak Clawbot sola veya sağa dönecektir.

Öğretmen Araç Kutusu
-
Neden İç İçe Eğer Öyleyse Değilse Blokları?
Projenin iskeleti (sadece kontrol blokları) iç içe geçmiş blokları içerir: ve [Sonsuza Kadar] döngüsünün içindeki [Eğer öyleyse değilse] bloğunun içindeki [Eğer öyleyse değilse] bloğu. Bu, gerektiğinden daha karmaşık görünebilir çünkü bunun yerine sıralı [Eğer o zaman] bloklarını kullanabilirsiniz. Ancak ardışık [Eğer o zaman] bloklarını kullanmak iyi bir programlama uygulaması değildir.

Soldaki reddedilen proje, LeftOrRight projemizin sıralı koşullu versiyonudur. Ekrana basılırsa ve x değeri 240'tan küçükse Clawbot sola döner. Ekrana basılırsa ve x değeri 240'tan büyükse Clawbot sağa döner. Bu projenin sorunu, her iki koşulun da doğru olma riski taşımasıdır. [If then] bloklarını ardışık olarak kullandığınızda, birden fazla doğru koşullu ifade olabileceğinden proje içerisinde hatalar yaratma riskiyle karşı karşıya kalırsınız. Hatalar öngörülemezliğe yol açar.
Ortada LeftOrRight projesinin iskeleti yer alır ve sağda proje bazı koşullu ifadeler ve Drivetrain blokları eklenmiş olarak gösterilir. Projenin bu versiyonundaki mantık biraz farklı. Ekrana basıldığında x değeri ya 240'dan küçük (sola dön) ya da 240'dan küçük değil (sağa dön). Orada başka bir koşullu ifadeye ihtiyacımız yok. Ekrana basıldığında ya 240'ın altındadır ya da değildir. İlgilenmemiz gereken sadece iki buton var. Dikkat edin, sağdaki proje henüz tamamlanmadı.
Öğrencilerin projeye yönelik bu iki yaklaşım arasındaki farkları anlamaları gerekiyor. Altta yatan mantıktaki farklılıkları anlamak, programcıların gelişmesine büyük fayda sağlayacaktır.
- Bu projenin ne işe yaradığını inceleyelim.
Ekrana basılıp basılmadığını sürekli kontrol ediyor. Ekrana basılmamışsa ileri doğru hareket eder, basılmışsa ekranın nereye basıldığını kontrol eder.
Eğer basış sol taraftaysa (240'dan az) sola döner. Yoksa sağa döner. X değerinin 240 'tan büyük olması için başka bir koşula ihtiyacımız yok çünkü 240' tan küçük değilse (sola dönün), daha büyük olmalıdır (sağa dönün). Endişelenmemiz gereken sadece iki buton var.
Her turdan sonraKontrol blokları, projenin devam etmeden önce ekrana basılmayı bırakana kadar beklemesini sağlar.
- Artık proje bittiğine göre, nasıl çalıştığını test etmek için indirin ve çalıştırın.
- Yardım için VEXcode V5 'teki Proje İndirme ve Çalıştırma eğitim videosunu izleyin.
- Düğmelerin Clawbot'un hareketlerini nasıl kontrol ettiği hakkında mühendislik defterinize notlar alın.
Öğretmen İpuçları
Test sırasında öğrenciler, Clawbot'un arkasından kullanıldığında Kullanıcı Arayüzünün ters yönde çalıştığını fark etmelidirler. Kullanıcının bakış açısından, Clawbot kullanıcının bastığı taraftan uzaklaşır. Bu, en iyi Kullanıcı Deneyimi değildir.
Clawbot ilerlerken ekranın düğmelerine arkadan bastığınızda, sola dönmek için ekranın sağ tarafına ve sağa dönmek için ekranın sol tarafına bastınız. Bu iyi bir Kullanıcı Deneyimi değil. Kullanıcı Deneyimi, bir kullanıcının bir bilgisayar sistemini kontrol etmek için bir Kullanıcı Arayüzü ile ne kadar iyi etkileşime girebileceğidir. Bu laboratuvarın Uygula bölümünde Kullanıcı Arayüzleri hakkında daha fazla bilgi bulunmaktadır.
Bu durumda, Kullanıcı Deneyimini iyileştirmek için Kullanıcı Arayüzünü iyileştirmemiz gerekir.
- LeftOrRight projesini gözden geçirin ve revize edin, böylece kullanıcı Clawbot'un arkasından düğmelere bastığında, kullanıcı ekranın sol tarafına bastığında robot sağa döner. Yoksa, Pençe Robotu sola döner.
- Bu projeyi mühendislik defterinizde planlayın, test edin ve yineleyin, böylece proje Clawbot'un ekranın kullanıcının Clawbot'un arkasından bastığı tarafına doğru dönmesini sağlar.
Öğretmen Araç Kutusu
Öğ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 aşağıdaki 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). Öğrenciler çalışmaya başlamadan önce puanlamayı onlara açıklamayı unutmayın.
Öğretmen Araç Kutusu
-
Çözümleri
Yukarıda ortaya konulan problemi çözmenin iki olası yolu vardır. Birinci yol, talimatta yazılı olandır: LeftOrRight projesini gözden geçir ve kullanıcı Clawbot'un arkasından düğmelere bastığında, kullanıcının ekranın sol tarafına bastığında robotun sağa dönmesini sağlayacak şekilde revize et. Aksi takdirde Pençebot sola döner.

Diğer çözüm ise Operatör bloğunu değiştirerek x değeri 240'tan büyük olduğunda Clawbot'un sola dönmesini sağlamaktır.

Tartışmayı Motive Edin
x değeri 240'tan küçük olduğunda koşullu ifadeyi programladığınızda (ekranın sol tarafı) koordinat düzleminden koordinatları kullanmanız gerekiyordu. Beyninizin ekranının görsel butonlar çizmesini sağlamak için koordinatları da kullanmanız gerekir.
V5 Robot Beyni ekranının koordinatlarının gösterildiği 2. Adıma geri dönün.

S:Ekranın sağ kenarındaki x değeri nedir?
C:x değeri sol kenarda 0'dan sağ kenarda 480'e kadar artar.
S:Dolayısıyla x değerinin aralığı 480'dir (0 ila 480). Y değerinin aralığı nedir?
C:Y değerinin aralığı 240'tır (0 ila 240).
S:Bu koordinat düzleminin orijini (0, 0) nerededir?
C:Orijin sol üst taraftadır.
S:Y değeri 0'a eşit olduğunda ekranın en üstündesiniz. Bu neden alışılmadık?
A:Genellikle y değeri yukarı doğru hareket ettikçe artar, ancak V5 ekranında y değeri aşağı doğru hareket ettikçe artar. Ama bunu, ekranın sol üst köşesindeki orijinden (0, 0) uzaklaştıkça y değerinin artması olarak düşünebilirsiniz.
Öğrenmenizi Genişletin
Yeniden Düşünme bölümünün Kullanıcı Arayüzü Mücadelesi'nde öğrencilerden, Pençe Robotu'nun pençesini ve kolunu kontrol etmek için ekranda dört düğme oluşturan bir proje geliştirmeleri istenecek. Bu meydan okuma için, onlardan ekranda gösterilen dört butona da sahip olmaları isteniyor. Bu Öğrenmenizi Genişletin, önceki sayfadaki gibi, öğrencilerin bu zorluğa hazırlanmasına yardımcı olacaktır çünkü zorluğun programlanabilecek dört düğmesi varken, bunda sadece iki düğme var.
Öğrencilerin, proje çalıştığında ekranda iki görünür düğme çizecek şekilde programa bir olay eklemelerini sağlayın. Öğrencilere, Etkinlikler ve Görünümler blokları, özellikle de [Dikdörtgen çiz] bloğunun bilgileri hakkında bilgi edinmek için VEXcode V5'teki Yardım özelliğini kullanmalarını önerin. Öğrencilere, [Dikdörtgen çiz] bloğunda kullanıldığında, beynin ekranının piksel sayısına göre bir koordinat sistemine nasıl düzenlendiğini incelemeleri talimatını verin. Bu blok içerisinde parametreleri ayarlayabilmek için bunu anlamaları gerekecek. Ayrıca etkinliklerin nasıl yayınlanacağını da anlamaları gerekecek. Bu durumda olay, düğme çizmektir.
Öğrenciler, projedeki bu değişiklikleri mühendislik defterlerine kaydederken planlamalı, test etmeli ve iyileştirmelidir. Bireysel mühendislik not defteri değerlendirme ölçütleri için aşağıdaki 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:

Profesyonel olarak gerçekçi bir deneyim için, öğrencilerin sınıf arkadaşlarından iki renk seçimleri hakkında geri bildirim istemelerini sağlayın.
Seçilen renkler arayüzü kullanmak istemenize neden oluyor mu veya kullanıcılar olarak hangi renkleri tercih ederlerdi?
Harika bir Kullanıcı Arayüzü geliştirmenin bir kısmı, Kullanıcı Deneyimi hakkında, hatta estetik tercihler hakkında veri toplamaktır.