Memprogram Dua Tombol
Kotak Peralatan Guru
-
Tujuan dari Aktivitas ini
Pada halaman sebelumnya, siswa tersebut memprogram lengan robot untuk berputar menggunakan tombol Brain Up. Halaman ini akan melanjutkan proyek sebelumnya dengan memprogram lengan robot untuk berhenti berputar menggunakan tombol Brain Down.

Aktivitas ini akan memperkenalkan siswa pada pemrograman dengan blok [If then else] serta penggunaan blok sensor dan operator agar robot dapat memeriksa apakah tombol Brain Up atau Brain Down ditekan. Jika tombol Brain Up ditekan, lengan Clawbot akan terangkat. Jika tombol Brain Down ditekan, lengan Clawbot akan turun. Ini merupakan kelanjutan dari aktivitas sebelumnya dan juga akan menjadi dasar untuk Tantangan Antarmuka Pengguna di bagian Rethink.
Untuk Tantangan Antarmuka Pengguna, siswa perlu memprogram Clawbot mereka untuk mengangkat lengan, menurunkan lengan, membuka cakar, dan menutup cakar semuanya menggunakan tombol pada IQ Robot Brain.
Untuk informasi lebih lanjut tentang [Jika maka], [Jika maka jika tidak], <Tombol Brain ditekan>, atau [Putar] blok, kunjungi informasi bantuan di dalam VEXcode IQ. Untuk informasi lebih lanjut tentang alat bantu bawaan ini, klik di sini.
Berikut ini adalah garis besar apa yang akan dilakukan siswa Anda dalam aktivitas ini:
- Gunakan ArmUp2 yang sudah ada untuk membangun proyek ArmUpDown yang disediakan dan prediksi apa yang akan dilakukan proyek tersebut.
- Lihat diagram alur untuk membantu menjelaskan alur blok dalam proyek.
- Perbaiki penjelasan mereka tentang apa yang dilakukan proyek ArmUpDown .
- Tonton video tutorial If Then Else Blocks .
- Edit proyek mereka dengan menggunakan [Jika maka else] blok.
- Berhenti dan Berdiskusi: Siswa akan merefleksikan prediksi mereka tentang apa yang akan dilakukan Clawbot dalam proyek ini dibandingkan dengan pengamatan aktual mereka.
- Programkan cakar menggunakan kerangka proyek yang sama seperti saat memprogram lengan.
| Kuantitas | Bahan-bahan yang Dibutuhkan |
|---|---|
| 1 |
VEX IQ Super Kit |
| 1 |
VEXcode IQ |
| 1 |
Buku Catatan Teknik |
| 1 |
Templat Clawbot (Sistem Penggerak) |
Lengan Clawbot siap bergerak naik dan turun!
Aktivitas ini akan memberi Anda alat untuk memprogram robot Anda dengan perilaku bersyarat.
Blok [Jika maka tidak] adalah fokus utama dalam aktivitas ini, tetapi blok Penginderaan, Kontrol, dan Operator lainnya juga digunakan.

Anda dapat menggunakan informasi Bantuan di dalam VEXcode IQ untuk mempelajari tentang blok-blok tersebut. Untuk panduan penggunaan fitur Bantuan , lihat tutorial Menggunakan Bantuan.

Langkah 1: Pemrograman untuk menggerakkan lengan ke bawah.
Pada halaman sebelumnya, Anda telah memprogram lengan Clawbot untuk berputar ke atas saat tombol Brain Up ditekan. Tapi, bagaimana dengan menurunkan lengan juga? Mari kita tinjau kembali proyek ArmUp2 sebelumnya terlebih dahulu.

Apakah mungkin menggunakan blok [Jika maka] yang sama untuk memutar lengan ke atas juga untuk memutar lengan ke bawah? Mari kita coba! Buat proyek di bawah ini dengan mengedit proyek ArmUp2 Anda yang sudah ada.

-
Simpan proyek dengan nama ArmUpDown. Jika siswa membutuhkan bantuan untuk menyimpan proyek, lihat tutorial Penamaan dan Penyimpanan.

- Periksa untuk memastikan nama proyek ArmUpDown sekarang berada di jendela di tengah bilah alat.
- Prediksikan apa yang akan dilakukan Clawbot dalam proyek ini di buku catatan teknik Anda. Jelaskan perilaku pengguna dan perilaku Clawbot.
- Uji untuk melihat apakah prediksi Anda tentang apa yang akan dilakukan Clawbot dalam proyek ini sudah benar.
- Unduh proyek ke Slot 3 pada Clawbot, lalu jalankan.
- Untuk bantuan mengunduh dan menjalankan proyek, lihat tutorial di VEXcode IQ yang menjelaskan cara Mengunduh dan Menjalankan Proyek.

- Periksa penjelasan Anda tentang proyek tersebut dan tambahkan catatan untuk memperbaikinya jika diperlukan.
Tips untuk Guru
Jika ini adalah kali pertama siswa menggunakan VEXcode IQ, mereka juga dapat melihat Tutorial di bilah alat untuk mempelajari keterampilan dasar lainnya.

Kotak Peralatan Guru
Proyek yang dibuat siswa di atas akan berhasil. Saat tombol Brain Up ditekan, lengan akan berputar ke atas, dan saat tombol Brain Down ditekan, lengan akan berputar ke bawah. Meskipun proyek ini berfungsi sebagaimana adanya, penulisan kodenya belum optimal. Ada kemungkinan kedua kondisi tersebut benar secara bersamaan. Selain itu, perhatikan bahwa karena kondisi tombol Brain Up ditekan terlebih dahulu, jika tombol Brain Up ditahan dan kemudian tombol Brain Down juga ditekan, lengan akan terus berputar ke atas. Tindakan itu tidak akan berhenti sampai tombol Brain Up dilepaskan. Oleh karena itu, proyek ini akan ditulis ulang pada langkah selanjutnya untuk menyertakan blok [If then else] guna menghindari potensi masalah ini.
Kotak Peralatan Guru
-
Berhenti dan Berdiskusi
Setelah para siswa menguji proyek tersebut, tanyakan kepada mereka bagaimana prediksi mereka dibandingkan dengan pengamatan mereka. Fasilitasi diskusi dengan mengajukan pertanyaan-pertanyaan berikut:
-
Apakah prediksi Anda sama dengan pengamatan Anda?
-
Apa yang tampaknya terjadi dalam proyek ini?
-
Apakah kondisi penekanan tombol Naik dan Turun hanya diperiksa sekali?
-
Apakah menurut Anda proyek ini dapat diorganisasi ulang agar berjalan lebih efisien?
Langkah 2: alur proyek.
Pada langkah sebelumnya, proyek tersebut telah menaikkan dan menurunkan lengan. Namun, karena kondisi tombol Brain Up ditekan terlebih dahulu, jika tombol Brain Up ditahan dan kemudian tombol Brain Down juga ditekan, lengan akan terus berputar ke atas karena tindakan tersebut tidak akan berhenti sampai tombol Brain Up dilepaskan. Perhatikan diagram alur berikut yang menjelaskan alur proyek.

Dengan demikian, proyek ini dapat mengganti blok [Jika maka] dengan blok [Jika maka else] sehingga hanya satu instance yang dapat bernilai benar pada satu waktu.
Lihat video tutorial berikut tentang blok [If then else] :
Mulailah dengan menonton video tutorial If-Then-Else di VEXcode IQ.

Menggunakan blok [Jika maka else] juga akan menghilangkan kebutuhan akan blok [Tunggu sampai] karena lengan akan terus berputar ke atas sampai tombol Brain Up dilepaskan. Hal ini terjadi karena bagian "else" dari [Jika maka else] tidak pernah tercapai sampai kondisi tombol Brain Up bernilai salah (dilepas).
Blok [Selamanya] memungkinkan kondisi pertama untuk terus diperiksa.

Mari kita eksplorasi perubahan proyek dengan menambahkan blok [If then else] . Motor lengan akan terus berputar hingga tombol Brain Up tidak lagi ditekan (dilepas). Karena blok [Selamanya] , kondisi ini akan terus diperiksa hingga bernilai salah.
Setelah kondisi tombol Brain Up bernilai salah, proyek akan melanjutkan ke blok berikutnya, yaitu memeriksa kondisi jika tombol Brain Down ditekan. Jika kondisi tombol Brain Down ditekan terpenuhi, maka lengan akan berputar ke atas. Sekali lagi, karena blok [Selamanya] , kondisi ini akan terus diperiksa hingga bernilai salah.
Setelah kondisi tombol Brain Up bernilai salah, proyek akan berlanjut ke blok berikutnya, yaitu blok [Hentikan motor] . Dengan demikian, Motor Lengan hanya akan berhenti ketika kedua kondisi tersebut salah (tidak ada tombol yang ditekan).

Mendorong Diskusi
T: Bagaimana alur proyek jika kondisi tombol Brain Up ditekan adalah SALAH (dilepas)?
J: Jika kondisinya salah, alur proyek akan terus memeriksa kondisi tombol Brain Down ditekan.
T: Apa tujuan dari blok [Jika maka else] pada proyek di atas?
J: Penggunaan blok [Jika maka else] hanya memungkinkan satu kondisi bernilai benar pada satu waktu. Oleh karena itu, tombol Brain Up dan tombol Brain Down tidak mungkin bernilai benar secara bersamaan menggunakan blok [If then else] , karena kondisi kedua yaitu tombol Brain Down ditekan bahkan tidak akan menjadi pilihan kecuali kondisi pertama yaitu tombol Brain Up ditekan bernilai salah. Tujuan lainnya adalah untuk meningkatkan efisiensi pemrograman.
T: Bagaimana alur proyek jika kedua kondisi tombol Naik dan Turun ditekan salah?
J: Jika kedua kondisi salah, alur proyek akan berlanjut ke blok [Hentikan motor] sebelum kembali ke bagian atas tumpukan dan berulang selamanya.
Langkah 3: Pemrograman dengan blok [Jika maka else] .
Mari kita gunakan blok [Jika maka else] :
-
Tambahkan blok [If then else] ke proyek ArmUpDown Anda sehingga proyek Anda terlihat seperti berikut:

-
Simpan proyek tersebut dengan nama ArmUpDown2. Jika siswa membutuhkan bantuan untuk menyimpan proyek, lihat tutorial Penamaan dan Penyimpanan.

- Unduh proyek ke Slot 4 pada Clawbot, lalu jalankan.
- Untuk bantuan mengunduh dan menjalankan proyek, lihat tutorial di VEXcode IQ yang menjelaskan Mengunduh dan Menjalankan Proyek.

- Uji coba untuk melihat apakah lengan akan berputar ke atas saat tombol Brain Up ditekan dan berputar ke bawah saat tombol Brain Down ditekan.
- Pastikan bahwa saat tombol Brain Up dan Down tidak ditekan (dilepas), Motor Lengan berhenti.
- Tuliskan pengamatan Anda tentang bagaimana Clawbot berperilaku sebelum dan sesudah menambahkan blok if then else ke proyek Anda di buku catatan teknik Anda.
Kotak Peralatan Guru
-
Berhenti dan Berdiskusi
Setelah siswa menguji proyek sebelum dan sesudah menambahkan blok [If then else] , diskusikan dengan siswa bagaimana hal ini memungkinkan lengan untuk terus berputar hingga tombol Brain Up dilepaskan. Mintalah siswa untuk membagikan pengamatan mereka dari buku catatan teknik mereka. Fasilitasi diskusi dengan mengajukan pertanyaan-pertanyaan berikut:
-
Apakah Anda melihat perilaku Clawbot berbeda antara menggunakan blok [If then else] dibandingkan hanya menggunakan blok [If then] ?
-
Menurut Anda, mengapa efisiensi program itu penting?
-
Apakah kondisi tombol Brain Up hanya diperiksa sekali dalam proyek?
Buku catatan teknik mahasiswa dapat dipelihara dan dinilai secara individual (Google / .docx / .pdf) atau secara tim (Google / .docx / .pdf). Tautan-tautan sebelumnya memberikan rubrik yang berbeda untuk setiap pendekatan. Setiap kali rubrik disertakan dalam perencanaan pendidikan, praktik yang baik adalah menjelaskan rubrik tersebut atau setidaknya memberikan salinannya kepada siswa sebelum kegiatan dimulai.
Kotak Peralatan Guru
Siswa mungkin tidak melihat banyak perbedaan dalam cara kerja Clawbot mereka antara menggunakan blok [If then else] dibandingkan dengan blok [If then] . Jika siswa tidak dapat melihat perbedaan yang signifikan secara fisik, fasilitasi diskusi tentang efisiensi pemrograman dan bagaimana penyederhanaan proyek dapat mengurangi penggunaan blok kode. Menggunakan lebih sedikit blok dalam sebuah proyek dapat mengurangi jumlah potensi kesalahan.
Langkah 4: Memprogram Cakar.
Pada langkah sebelumnya, proyek dioptimalkan agar berjalan lebih efisien dengan menggunakan blok [If then else] . Pada contoh sebelumnya, lengan dimanipulasi menggunakan tombol Brain Up dan Down.
Dengan menggunakan kerangka proyek yang sama persis, Claw juga dapat dimanipulasi.
-
Tinjau proyek ArmUpDown2 dan ubah blok [Spin] menjadi ClawMotor alih-alih ArmMotor dengan menggunakan menu tarik-turun.
Pastikan tombol Brain Up memutar Claw "buka" dan tombol Brain Down memutar Claw "tutup" dengan menggunakan menu tarik-turun.
-
Simpan proyek dengan nama ClawUpDown. Jika siswa membutuhkan bantuan untuk menyimpan proyek, lihat tutorial Penamaan dan Penyimpanan.

- Unduh proyek ke Slot 1 pada Clawbot, lalu jalankan.
- Untuk bantuan mengunduh dan menjalankan proyek, lihat tutorial di VEXcode IQ yang menjelaskan Mengunduh dan Menjalankan Proyek.

- Uji coba untuk melihat apakah Cakar akan berputar terbuka saat tombol Otak Atas ditekan dan berputar tertutup saat tombol Otak Bawah ditekan.
- Pastikan bahwa saat tombol Brain Up dan Down tidak ditekan (dilepas), Motor Cakar berhenti.
- Tuliskan pengamatan Anda tentang bagaimana Clawbot berperilaku sebelum dan sesudah menambahkan blok if then else ke proyek Anda di buku catatan teknik Anda.
Kotak Peralatan Guru
setelah siswa memiliki keterampilan untuk memanipulasi lengan dan cakar menggunakan tombol, mintalah siswa untuk bertukar pikiran tentang bagaimana mereka dapat melakukan keempat tindakan tersebut dalam proyek yang sama (lengan ke atas, lengan ke bawah, cakar terbuka, dan cakar tertutup). Siswa akan menggunakan [if then else]
di bagian berpikir ulang untuk memungkinkan robot mereka melakukan keempat tindakan tersebut.
Perluas Pembelajaran Anda
-
Set Blok Penghenti Motor
Jika siswa memprogram robot mereka untuk menaikkan dan menurunkan lengan, berat Cakar dapat menyebabkan lengan melayang ke
. Dalam hal ini, [Atur penghentian motor] dapat digunakan agar lengan tidak jatuh karena gravitasi dan berat cakar. Blok ini dapat digunakan di awal proyek dan akan diterapkan pada semua blok motor selanjutnya selama sisa proyek.

Blok penghenti motor yang terpasang memiliki tiga pengaturan:
- Rem menyebabkan Motor berhenti seketika.
- Coast memungkinkan Motor berputar secara bertahap hingga berhenti.
- Tahan menyebabkan Motor berhenti seketika dan kembali ke posisi berhenti jika digerakkan.