Langsung ke konten utama
Portal Guru

Pemrograman Perulangan - Python

Ikon Kotak Peralatan Guru Panduan Aktivitas Kotak Peralatan Guru -

  • Eksplorasi ini akan memperkenalkan siswa pada pemrograman perilaku berulang dengan menggunakan perulangan repeat atau forever.

  • Mempelajari pemrograman menggunakan perulangan repeat dan forever memungkinkan siswa menghemat waktu saat membangun proyek yang menggunakan tindakan berulang yang sama. Untuk informasi lebih lanjut mengenai petunjuk yang digunakan dalam proyek teks, kunjungihelpinformation.

Clawbot V5 siap bergerak!

Eksplorasi ini akan memberi Anda alat untuk dapat mulai membuat beberapa proyek keren yang menggunakan perulangan.

  • Instruksi Python VEXcode V5 yang akan digunakan dalam eksplorasi ini:
    • drivetrain.drive_for(FORWARD, 300, MM)
    • drivetrain.turn_for(RIGHT, 90, DEGREES)
    • motor_cakar.putar_untuk(BALIK, 70, DERAJAT)
    • lengan_motor.putar_maju(360, derajat)
    • bumper_b.menekan()
    • selama Benar: 
    • untuk jumlah pengulangan dalam rentang (4): 
    • tunggu(5, DETIK)

Anda dapat menggunakan informasi Bantuan di dalam VEXcode V5 untuk mempelajari tentang masing-perintah Python. 

Gambar yang menunjukkan Ruang Kerja VEXcode V5 dengan catatan bantuan untuk perintah Drive terbuka.

Ikon Tips Guru Tips untuk Guru

Jika ini adalah kali pertama siswa menggunakan VEXcode V5, mereka dapat membaca berbagai artikel di Perpustakaan VEX

Gambar bagian VEXcode V5 dari VEX Library

Ikon Tips Guru Tips untuk Guru - Menggunakan Fitur Pelengkapan Otomatis

Fitur pelengkapan otomatis (autocomplete) di VEXcode V5 memprediksi sisa perintah yang Anda ketik. Saat siswa mengerjakan tugas di VEXcode V5, dorong mereka untuk menggunakan fitur Autocomplete untuk membantu memahami sintaks Python. Anda mungkin akan melihat fungsi pelengkapan otomatis saat mulai mengetik instruksi. Gunakan tombol “Atas” dan “Bawah” untuk memilih nama yang Anda inginkan, lalu tekan “Tab” atau (Enter/Return) pada keyboard Anda untuk menyimpan pilihan. Untuk informasi lebih lanjut tentang penggunaan Autocomplete, lihat artikel Python .

Gambar fitur pelengkapan otomatis dalam sebuah proyek Python.

Pastikan Anda memiliki perangkat keras yang dibutuhkan, buku catatan teknik Anda, dan VEXcode V5 yang sudah diunduh dan siap digunakan.

Bahan-bahan yang Dibutuhkan:
Kuantitas Bahan-bahan yang Dibutuhkan
1

VEX V5 Classroom Starter Kit (dengan firmware terbaru)

1

VEXcode V5 (versi terbaru, Windows, macOS)

1

Buku Catatan Teknik

1

Contoh proyek Clawbot Template (Penggerak 2 motor, Tanpa Gyro)

Langkah 1: Mari kita mulai pemrograman dengan perulangan

  • Sebelum memulai proyek Anda, pilih templat proyek yang tepat. Contoh proyek Clawbot Template (Drivetrain 2-motor, No Gyro) berisi konfigurasi motor Clawbot. Jika templat tidak digunakan, robot Anda tidak akan menjalankan proyek dengan benar.
  • PilihFiledanBuka Contoh.

    Gambar yang menunjukkan menu File terbuka di VEXcode V5, menampilkan opsi Buka Contoh.

     

  • Gulir melalui berbagai proyekContoh. Proyek-proyek ini menunjukkan berbagai aksi yang dapat dilakukan oleh Clawbot Anda. Pilih dan buka proyek contohClawbot Template (Drivetrain 2-motor, No Gyro).

    Gambar yang menunjukkan contoh proyek dengan kotak merah di sekitar Proyek Templat Speedbot (Penggerak 2 motor, Tanpa Gyro)

     

  • Beri nama proyek tersebut RepeatingActions.

    Gambar yang menunjukkan Nama proyek Tindakan Berulang di VEXcode V5

  • Ketik kode berikut:

    # Impor pustaka
    dari vex import *
    
    # Mulai kode proyek
    # Maju 300mm, berbelok 90 derajat selama 4 iterasi
    
    untuk repeat_count dalam rentang(4):
        drivetrain.drive_for(FORWARD, 300, MM)
        drivetrain.turn_for(RIGHT, 90, DEGREES)
        wait(5, SECONDS)

Periksa proyek tersebut, lalu lakukan hal berikut di buku catatan teknik Anda.

  1. Prediksikan apa yang akan dilakukan Clawbot dalam proyek tersebut. Jelaskan lebih dari sekadar fakta bahwa proyek tersebut berulang.

    Apa yang sedang diulang-ulang? Apa yang sedang dilakukan Clawbot?

  2. Tuliskan prediksi Anda, tetapi jangan membagi proyek singkat tersebut menjadi lebih dari dua bagian.

Ikon Kotak Peralatan Guru Jawaban untuk Kotak Peralatan Guru -

  1. Proyek ini akan membuat robot: bergerak maju sejauh 300 milimeter, berbelok ke kanan 90 derajat, lalu menunggu selama 5 detik sebanyak 4 kali untuk menyelesaikan satu persegi. Alih-alih menggunakan 3 instruksi yang sama sebanyak 4 kali, instruksi pengulangan mengurangi jumlah pengulangan tersebut menjadi hanya 1 kali. Instruksi pengulangan mengulangi tindakan mengemudi maju dan kemudian berbelok.

  2. Prediksinya mungkin sesederhana "Clawbot bergerak dalam bentuk persegi." Ini akan menjadi cara ringkas untuk menangkap gerakan berulang Clawbot tanpa konteks apa pun.

Buku catatan teknik mahasiswa dapat dipelihara dan dinilaisecara individuatau sebagaitim. 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.

  • Simpan, unduh, dan jalankanproyek Tindakan Berulang.

    Tangkapan layar yang menunjukkan judul proyek Tindakan Berulang di VEXcode V5

  • Periksa penjelasan Anda tentang proyek tersebut di buku catatan teknik Anda dan tambahkan catatan untuk memperbaikinya jika diperlukan.

Langkah 2: Jalankan proyek dan amati robotnya.

Perbandingan dua cuplikan kode Python untuk robot VEX. Cuplikan kode di atas menggunakan input sensor untuk menentukan kapan harus berbelok, dengan perulangan while yang memeriksa apakah sakelar bemper ditekan; jika ditekan, robot berbelok ke kanan 90 derajat, jika tidak, robot bergerak maju. Cuplikan kode di bagian bawah menggunakan jarak tetap untuk menentukan kapan harus berbelok, dengan perulangan for yang menggerakkan robot maju sejauh 300 mm, berbelok ke kanan 90 derajat, dan menunggu selama 5 detik, mengulangi urutan ini empat kali.

Perhatikan kembali proyek Tindakan Berulang (proyek kedua). Proyek ini akan mengulangi perilaku maju lalu berbelok sebanyak empat kali. Struktur perulangan "repeat" (menggunakan perulanganuntuk) digunakan ketika Anda ingin menggunakan serangkaian perilaku sejumlah kali tertentu.

Jika struktur repeat diganti dengan struktur akan mengulangi perilaku maju dan kemudian berbelok "selama" kondisi tersebut benar. Anda juga dapat mengatur kondisi menjadi "true" agar loopwhile terus berlanjut selamanya.

Pada proyek pertama, input sensor digunakan untuk menentukan kapan harus mulai berbelok. Proyek di sebelah kanan menggunakan jarak Drivetrain tetap untuk menentukan kapan harus mulai berbelok.

Untuk terus memeriksa input sensor, pernyataan if else digunakan bersama dengan loop while. Pada proyek di sebelah kiri, robot akan berbelok ke kanan ketika sensor "bumper_b" ditekan, jika tidak, robot akan terus bergerak maju tanpa henti jika sensor "bumper_b" tidak ditekan. Untuk terus menerus memeriksa nilai sensor bumper_b, pernyataan jika berada di dalam loop while

Proyek pertama adalah contoh praktis penggunaan struktur yang berulang selamanya – menggunakan loopwhiledan pernyataanifsecara bersamaan. Bayangkan sebuah mesin penyapu jalan tanpa pengemudi yang terus melaju ke depan hingga menabrak tembok atau benda, lalu berbelok sebelum melanjutkan perjalanan.

Perluas Pembelajaran Anda Perluas Pembelajaran Anda

Untuk mengeksplorasi lebih lanjut bagaimana Anda dapat menggunakan perulangan dengan kondisi, mintalah siswa untuk membuat proyek Penyapu Lantai di VEXcode V5.

  • Mulailah dengan meminta siswadan menyambungkan sakelar bumper.
  • Mintalah siswa untuk membuka proyek contohClawbot Template (Drivetrain 2-motor, No Gyro).

     

  • Minta siswa untuk mengkonfigurasi Saklar Bumper 3-Kawat di VEXcode V5, pilih Perangkat 3-kawat yang Anda gunakan ke BUMPER, dan pilih port ke B.Gambar konfigurasi perangkat di VEXcode V5 dengan opsi Bumper disorot.Gambar konfigurasi perangkat untuk sakelar bumper dengan port B disorot.
     
  • Mintalah siswa untuk memberi nama proyek tersebut sebagai "Penyapu Lantai".

  • Mintalah siswa untuk membuat proyek berikut.

    # Impor pustaka
    dari vex import *
    
    import random
    
    # Mulai kode proyek
    while True:
        while (not bumper_b.pressing()):
            drivetrain.drive(FORWARD)
            wait(5, MSEC)
        
        drivetrain.stop()
    
        # Metode random.randomint() mengembalikan bilangan bulat acak antara rentang yang ditentukan
        # Berikan nilai min dan max dari rentang tersebut ke parameter
        drivetrain.turn_for(RIGHT, (90+random.randint(0, 90)),DEGREES)
        wait(5, MSEC)

Jika siswa membutuhkan bantuan dengan instruksi apa pun, arahkan mereka ke informasi

Minta siswa untuk
mengunduh dan menjalankan proyekuntuk mengamati bagaimana robot bergerak. Kemudian, mulailah diskusi kelas dan mintalah siswa untuk menjelaskan mengapa struktur "selamanya" digunakan alih-alih struktur "ulang
. Siswa harus mencatat bahwa struktur
selamanya" digunakan karena proyek ini terus menerus memeriksa apakah sakelar bumper ditekan.

Langkah 3: Tantangan Lingkaran Persegi!

Diagram yang menunjukkan jalur persegi berwarna hijau dengan panah yang menunjukkan arah pergerakan di sekitar persegi tersebut. Panah oranye tambahan di luar persegi menunjuk ke arah yang berbeda, sesuai dengan belokan dan gerakan yang diperlukan untuk mengikuti jalur tersebut.

  • Suruh Clawbot Anda mengemudi di dalam bentuk persegi.
  • Sebelum setiap giliran, cakar harus dibuka dan ditutup, dan lengan harus diangkat dan diturunkan.
  • Clawbot tidak dapat melaju di sepanjang sisi alun-alun lebih dari sekali.
  • Anda dapat menggunakan proyek RepeatingActions dari atas sebagai titik awal, tetapi simpan sebagaiSquaredLoopssebelum melakukan perubahan apa pun.

Gambar yang menunjukkan nama proyek Squared Loops di toolbar pada VEXcode V5.

Dalam buku catatan teknik Anda, rencanakan hal-hal berikut:

  • Rencanakan solusi Anda dan prediksi apa yang akan dilakukan Clawbot sesuai dengan setiap instruksi dalam proyek Anda.
  • Unduh dan jalankanproyek Anda untuk mengujinya sebelum mengirimkannya.
  • Lakukan perubahan pada proyek sesuai kebutuhan dan catat apa saja yang diubah selama pengujian.

Ikon Kotak Peralatan Guru Solusi Kotak Peralatan Guru -

Berikut ini adalah solusi potensial untuk Tantangan Lingkaran Kuadrat:

# Impor pustaka
dari vex import *

# Mulai kode proyek
untuk repeat_count dalam rentang(4):
    drivetrain.drive_for(FORWARD, 300, MM)
    claw_motor.spin_for(REVERSE, 70, DEGREES)
    arm_motor.spin_for(FORWARD, 360, DEGREES)
    claw_motor.spin_for(FORWARD, 70, DEGREES)
    arm_motor.spin_for(REVERSE, 360, DEGREES)
    drivetrain.turn_for(RIGHT, 90, DEGREES)
    wait(5, MSEC)

Anda dapat memberikan rubrik pemrogramankepada siswauntuk menilai proyek mereka.
Buku catatan teknik siswa dapat dipelihara dan dinilaisecara individualatau sebagaitim.