Lompat ke isi utama
Portal Guru

Perulangan Pemrograman - Python

Ikon Kotak Alat Guru Kotak Alat Guru - Garis Besar Aktivitas

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

  • Belajar memprogram menggunakan perulangan berulang dan selamanya memungkinkan siswa menghemat waktu saat membangun proyek yang menggunakan tindakan berulang yang sama. Untuk informasi lebih lanjut tentang instruksi yang digunakan dalam proyek teks, kunjungi informasi bantuan.

Clawbot V5 siap bergerak!

Eksplorasi ini akan memberi Anda alat untuk dapat mulai membuat beberapa proyek menarik yang menggunakan loop.

  • Instruksi Python VEXcode V5 yang akan digunakan dalam eksplorasi ini:
    • drivetrain.drive_for(MAJU, 300, MM)
    • drivetrain.turn_for(KANAN, 90, DERAJAT)
    • claw_motor.spin_for(REVERSE, 70, DERAJAT)
    • arm_motor.spin_for(MAJU, 360, DERAJAT)
    • bumper_b.menekan()
    • sementara Benar: 
    • untuk repeat_count dalam rentang(4): 
    • tunggu(5, DETIK)

Anda dapat menggunakan informasi Bantuan di dalam VEXcode V5 untuk mempelajari tentang perintahPythonindividual. 

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

Ikon Tips Guru Tips Guru

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

Gambar bagian VEXcode V5 dari Perpustakaan VEX

Ikon Tips Guru Tips Guru - Menggunakan Pelengkapan Otomatis

Pelengkapan otomatis adalah fitur dalam VEXcode V5 yang memprediksi sisa perintah yang sedang Anda ketik. Saat siswa mengerjakan VEXcode V5, dorong mereka untuk menggunakan fitur Pelengkapan Otomatis untuk membantu sintaksis Python. Anda mungkin memperhatikan fungsi pelengkapan otomatis saat Anda mulai mengetik instruksi. Gunakan tombol “Atas” dan “Bawah” untuk memilih nama yang Anda inginkan, lalu tekan “Tab” atau (Enter/Return) pada keyboard Anda untuk membuat pilihan. Untuk informasi lebih lanjut tentang penggunaan Pelengkapan Otomatis

Gambar fitur pelengkapan otomatis dalam proyek Python

Pastikan Anda telah mengunduh dan menyiapkan perangkat keras yang diperlukan, buku catatan teknik, dan VEXcode V5.

Bahan yang dibutuhkan:
Kuantitas Bahan-bahan yang Dibutuhkan
1

Kit Pemula Kelas VEX V5 (dengan firmware terbaru)

1

VEXcode V5 (versi terbaru, Windows, macOS)

1

Buku Catatan Teknik

1

Contoh proyek Template Clawbot (Drivetrain 2-motor, Tanpa Gyro)

Langkah 1: Mari mulai pemrograman dengan loop

  • Sebelum Anda memulai proyek Anda, pilih proyek templat yang benar. Proyek contoh Clawbot Template (Drivetrain 2-motor, Tanpa 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 yang menunjukkan opsi Buka Contoh

     

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

    Gambar yang menunjukkan contoh proyek dengan kotak merah di sekitar Template Proyek Speedbot (Drivetrain 2-motor, Tanpa Gyro)

     

  • Beri nama proyek RepeatingActions.

    Gambar yang menunjukkan Nama proyek Tindakan Berulang di VEXcode V5

  • Ketik kode berikut:

    # Pustaka mengimpor
    dari vex import *
    
    # Kode awal proyek
    # Berkendara maju sejauh 300mm berbelok 90 derajat selama 4 iterasi
    
    untuk repeat_count dalam rentang(4):
        drivetrain.drive_for(MAJU, 300, MM)
        drivetrain.turn_for(KANAN, 90, DERAJAT)
        tunggu(5, DETIK)

Periksa proyek tersebut dan kemudian 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 diulangnya? Apa yang dilakukan Clawbot?

  2. Tuliskan prediksi Anda, tetapi jangan membagi proyek pendek tersebut menjadi lebih dari dua bagian.
  • Simpan, unduh, dan jalankanproyek Tindakan Berulang.

    Tangkapan layar yang menunjukkan judul proyek Tindakan Berulang di VEXcode V5

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

Langkah 2: Jalankan proyek dan amati robotnya

Perbandingan dua potongan kode Python untuk robot VEX. Potongan kode teratas menggunakan masukan sensor untuk menentukan kapan harus berbelok, dengan loop sementara yang memeriksa apakah sakelar bemper ditekan; jika ditekan, robot berbelok ke kanan 90 derajat, jika tidak, robot akan melaju ke depan. Potongan kode di bagian bawah menggunakan jarak tetap untuk menentukan kapan harus berbelok, dengan loop for yang menggerakkan robot maju 300 mm, berbelok ke kanan 90 derajat, dan menunggu selama 5 detik, mengulangi urutan ini sebanyak empat kali.

Lihat lagi proyek Tindakan Berulang (proyek kedua). Proyek ini akan mengulang perilaku maju dan kemudian belok sebanyak empat kali. Struktur perulangan "berulang" (menggunakan perulanganuntuk) digunakan ketika Anda ingin menggunakan serangkaian perilaku sejumlah waktu tertentu.

Jika struktur pengulangan diganti dengan struktur perulangan sementara , robot akan mengulangi perilaku maju dan kemudian berbelok "selama" kondisinya benar. Anda juga dapat menetapkan kondisi ke "benar" agar putaransementara terus berlanjut selamanya.

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

Untuk terus memeriksa masukan sensor, pernyataan if else digunakan bersama dengan loop while. Pada proyek di sebelah kiri, robot akan berbelok ke kanan saat sensor "bumper_b" ditekan, jika tidak, robot akan terus melaju ke depan jika sensor "bumper_b" tidak ditekan. Untuk terus menerus mengecek nilai sensor bumper_b, pernyataan if ada dalam loop while

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

Ikon Perluas Pembelajaran Anda Perluas Pembelajaran Anda

Untuk mengeksplorasi lebih jauh cara menggunakan loop dengan kondisional, mintalah siswa membuat proyek Floor Sweeper di VEXcode V5.

  • Mulailah dengan meminta siswamemasang dan menyambungkan sakelar bumper.
  • Minta siswa untuk membuka proyek contohClawbot Template (Drivetrain 2-motor, Tanpa Gyro).

     

  • Mintalah siswa mengonfigurasi Sakelar Bumper 3-Kabel di VEXcode V5, pilih Perangkat 3-kabel yang Anda gunakan untuk BUMPER, dan pilih port ke B.Gambar konfigurasi perangkat di VEXcode V5 dengan opsi Bumper disorotGambar konfigurasi perangkat untuk sakelar bumper dengan port B disorot
     
  • Mintalah siswa memberi nama proyek tersebut sebagai Penyapu Lantai.

  • Minta siswa untuk membuat proyek berikut.

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

Jika siswa memerlukan bantuan dengan instruksi apa pun, rujuk mereka ke informasiBantuan

Minta siswa untukmengunduh dan menjalankan proyekuntuk mengamati bagaimana robot bergerak. Kemudian, mulailah diskusi kelas dan minta siswa menjelaskan mengapa struktur forever digunakan, bukan struktur pengulangan.

Siswa harus memperhatikan bahwa struktur forever digunakan karena proyek ini terus-menerus memeriksa apakah sakelar bumper ditekan.

Langkah 3: Tantangan Lingkaran Kuadrat!

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

  • Biarkan Clawbot Anda melaju dalam bentuk persegi.
  • Sebelum setiap putaran, cakar harus dibuka dan ditutup, dan lengan harus dinaikkan dan diturunkan.
  • Clawbot tidak dapat melaju sepanjang sisi alun-alun lebih dari satu kali.
  • Anda dapat menggunakan proyek RepeatingActions dari atas sebagai titik awal tetapi simpan sebagaiSquaredLoopssebelum membuat perubahan apa pun.

Gambar yang menunjukkan nama proyek Squared Loops di bilah alat di VEXcode V5

Dalam buku catatan teknik Anda, rencanakan hal berikut ini:

  • 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 Alat Guru Kotak Alat Guru - Solusi

Berikut ini adalah solusi potensial untuk Tantangan Squared Loops:

# Pustaka mengimpor
dari vex import *

# Mulai kode proyek
untuk repeat_count dalam rentang(4):
    drivetrain.drive_for(MAJU, 300, MM)
    claw_motor.spin_for(BALIK, 70, DERAJAT)
    arm_motor.spin_for(MAJU, 360, DERAJAT)
    claw_motor.spin_for(MAJU, 70, DERAJAT)
    arm_motor.spin_for(BALIK, 360, DERAJAT)
    drivetrain.turn_for(KANAN, 90, DERAJAT)
    wait(5, MSEC)

Anda dapat menyediakan siswa dengan rubrik pemrogramanuntuk menilai proyek mereka.
Buku catatan teknik siswa dapat dikelola dan dinilaisecara individuatau sebagaitim.