Lompat ke isi utama

Pemrograman Maju dan Mundur - C++

Ikon Kotak Alat Guru Kotak Alat Guru - Garis Besar Aktivitas

Eksplorasi ini akan memperkenalkan siswa pada perilaku pemrograman dasar maju, mundur, dan menunggu. Keterampilan dasar ini akan membantu mereka untuk berhasil dalam kegiatan berikutnya dan dalam Strike Challenge di akhir Lab STEM ini, saat mereka akan berkompetisi dalam bowling menggunakan Speedbot.

Menggunakan proyek templat V5 Speedbot (Drivetrain 2-motor, Tanpa Gyro) memungkinkan siswa memprogram Speedbot untuk bergerak maju hanya dengan menggunakan satu instruksi.

Speedbot siap bergerak!

Eksplorasi ini akan memberi Anda alat untuk dapat memprogram Speedbot Anda untuk gerakan sederhana. Di akhir kegiatan ini, Anda akan terlibat dalam Tantangan Latihan Bola Basket menggunakan perilaku maju, mundur, dan menunggu.

Ikon Kotak Alat Guru Kotak Peralatan Guru

Berikut ini ikhtisar Antarmuka Pengguna VEXcode V5. Siswa akan diperkenalkan dengan tab/tombol ini selama aktivitas di Lab STEM Momentum Alley ini. Tautan juga disediakan di seluruh Lab STEM untuk memberikan informasi lebih lanjut tentang tab/tombol ini.

Gambar Ruang Kerja VEXcode V5 dengan Catatan Bantuan terbuka untuk perintah drivetrain drive

  • Instruksi VEXcode V5 yang akan digunakan dalam eksplorasi ini:
    • Drivetrain.driveFor(1, inci);
    • tunggu(1, detik);
  • Untuk mengetahui informasi lebih lanjut tentang instruksi, pilih Bantuan lalu pilih ikon tanda tanya di samping perintah untuk melihat informasi lebih lanjut.

    Gambar Ruang Kerja VEXcode V5 dengan catatan bantuan terbuka untuk perintah Drivetrain Drive For

     

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

Ikon Tips Guru Tips Guru

Jika ini adalah pertama kalinya siswa menggunakan VEXcode V5, mereka dapat merujuk Tutorial kapan saja selama eksplorasi ini.

Toolbar VEXcode V5 dengan Tutorial disorot dalam kotak merah. Toolbar memperlihatkan, dari kiri ke kanan, logo V5, ikon bola dunia, File, dan Tutorial. Di sebelah kanan Tutorial terdapat ikon dan fungsi tambahan.

Bahan yang dibutuhkan:
Kuantitas Bahan-bahan yang Dibutuhkan
1

Robot Speedbot

1

Baterai Robot Terisi

1

Kode VEX V5

1

Kabel USB (jika menggunakan komputer)

1

Buku Catatan Teknik

Ikon Tips Guru Tips Guru

Modelkan setiap langkah pemecahan masalah untuk siswa.

Langkah 1: Persiapan Eksplorasi

Sebelum Anda memulai kegiatan, apakah Anda sudah menyiapkan masing-masing barang ini? Periksa masing-masing hal berikut ini:

Langkah 2: Mulai Proyek Baru

Selesaikan langkah-langkah berikut untuk memulai proyek:

  • Buka menu File dan pilih Buka Contoh.

    Bilah Alat VEXcode V5 dengan menu File terbuka dan Buka Contoh disorot dalam kotak merah. Buka Contoh adalah item menu keempat di bawah Proyek Blok Baru, Proyek Teks Baru, dan Buka.

     

  • Pilih dan buka proyek templat Speedbot (Drivetrain 2-motor, Tanpa Gyro). Proyek templat berisi konfigurasi motor. Jika templat tidak digunakan, robot Anda tidak akan menjalankan proyek dengan benar.

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

     

  • Karena Anda akan menggerakkan Speedbot maju dan mundur, Anda akan memberi nama proyek AndaDrive. Pilih Nama Proyek, Ketik 'Drive'lalu pilih 'Simpan.'

 

Gambar yang menunjukkan nama proyek diubah menjadi drive

 

 

 

Ikon Tips Guru Tips Guru

  • Nama Proyek dapat memiliki spasi di antara atau setelah kata-kata.

    Toolbar V5 VEXcode dengan tombol Nama Proyek disorot dengan kotak merah. Nama proyek ditetapkan ke 'Bergerak Maju'.

  • Anda dapat meminta siswa untuk menambahkan inisial mereka atau nama kelompok mereka ke nama proyek. Ini akan membantu membedakan proyek jika Anda meminta siswa untuk menyerahkannya.
  • Karena ini merupakan aktivitas pemrograman pertama yang mungkin dicoba oleh siswa Anda, Anda harus memodelkan langkah-langkahnya, lalu meminta siswa untuk menyelesaikan tindakan yang sama. Guru kemudian harus memantau siswa untuk memastikan bahwa mereka mengikuti langkah-langkah dengan benar.
  • Pastikan siswa telah memilih Buka Contoh dari menu File.
  • Pastikan siswa telah memilih proyek templat Speedbot (Drivetrain 2-motor, Tanpa Gyro).
  • Anda dapat menunjukkan kepada siswa bahwa ada beberapa pilihan untuk dipilih pada halaman Contoh. Saat mereka membangun dan menggunakan robot lain, mereka akan memiliki kesempatan untuk menggunakan templat yang berbeda.
  • Periksa untuk memastikan nama proyekDrivesekarang ada di jendela di tengah bilah alat.

    Nama proyek diubah menjadi drive di Toolbar.

     

Ikon Kotak Alat Guru Kotak Alat Guru - Menyimpan Proyek

  • Tunjukkan bahwa ketika mereka pertama kali membuka VEXcode V5, jendelanya diberi label Proyek VEXcode. Proyek VEXcode adalah nama proyek default saat VEXcode V5 pertama kali dibuka. Setelah proyek diubah namanya menjadi Drive dan disimpan, tampilan diperbarui untuk menampilkan nama proyek baru. Dengan menggunakan jendela ini di bilah alat, mudah untuk memeriksa apakah siswa menggunakan proyek yang benar.

  • Beritahukan siswa bahwa mereka sekarang siap untuk memulai proyek pertama mereka. Jelaskan kepada siswa bahwa hanya dengan mengikuti beberapa langkah sederhana, mereka akan dapat membuat dan menjalankan proyek yang akan memajukan Speedbot.

  • Ingatkan siswa untuk menyimpan proyek mereka saat mereka mengerjakannya. Bagian C++ dari Pustaka VEX menjelaskan praktik penyimpanan dalam VEXcode V5.

Ikon Kotak Alat Guru Kotak Alat Guru - Berhenti dan Diskusikan

Ini adalah saat yang tepat untuk berhenti sejenak dan meminta siswa meninjau kembali langkah-langkah yang baru saja diselesaikan dalam memulai proyek baru di VEXcode V5 secara individu atau kelompok. Mintalah siswa untuk melakukan refleksi secara individu sebelum membagikannya dalam kelompok atau ke seluruh kelas.

Langkah 3: Maju Terus

Anda sekarang siap untuk mulai memprogram robot untuk melaju maju!

  • Sebelum kita memulai pemrograman, kita perlu memahami apa itu instruksi. Ada tiga bagian dalam sebuah instruksi. Untuk informasi lebih lanjut tentang apa itu instruksi, lihat artikel ini.

    Perintah C++ dipecah menjadi komponen-komponennya. Drivetrain diberi label sebagai perangkat; Drive for diberi label sebagai perintah; dan forward, 100, dan mm diberi label kolektif sebagai parameter.

  • Tambahkan instruksi ke proyek, sehingga proyek Anda terlihat seperti ini:

    int main() {
      // Menginisialisasi Konfigurasi Robot. JANGAN DIHAPUS!
      vexcodeInit();
      
      // Mulai kode proyek
      Drivetrain.driveFor(maju, 100, mm);

Ikon Tips Guru Tips Guru

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 fitur ini lihat artikel C++.

VEXcode V5 dengan bagian Drivetrain dari perintah yang diketik di sebelah kiri, dan di sebelah kanan, daftar opsi pelengkapan otomatis yang dapat digulir untuk perintah tersebut ditampilkan.

  • Pilih ikon Slot untuk memilih salah satu dari delapan slot yang tersedia di Robot Brain dan pilih slot 1.

    Toolbar VEXcode V5 dengan menu Slot terbuka di sebelah kiri nama proyek. Menu tarik-turun mencantumkan semua slot yang tersedia, dari 1 hingga 8. Slot pertama disorot dengan kotak merah.

     

  • Hubungkan V5 Robot Brain ke komputer menggunakan kabel micro USB dan nyalakan V5 Robot Brain. Ikon Otak pada bilah alatberubah menjadi hijausetelah koneksi berhasil dibuat.

    Bilah alat di VEXcode V5 dengan kotak merah di sekitar ikon Otak hijau, terletak di antara ikon Pengontrol dan Unduh.

     

  • PilihUnduhuntuk mengunduh proyek ke Brain.

    Bilah alat dalam VEXcode EXP dengan kotak merah di sekitar ikon unduh, terletak di antara ikon Otak keserakahan dan tombol Jalankan dan Berhenti.

Ikon Kotak Alat Guru Kotak Peralatan Guru

  • Ingatkan siswa untuk melepaskan kabel USB dari Robot Brain. Menghubungkan robot ke komputer saat menjalankan proyek dapat menyebabkan robot menarik kabel koneksi.

Ikon Kotak Alat Guru Kotak Alat Guru - Berhenti dan Diskusikan

Minta siswa untuk memprediksi apa yang menurut mereka akan terjadi ketika proyek ini diunduh dan dijalankan di Speedbot. Mintalah siswa untuk mencatat prediksi mereka di buku catatan teknik mereka. Jika waktu memungkinkan, mintalah setiap kelompok untuk berbagi prediksi mereka

  • Periksa untuk memastikan proyek Anda memilikiunduhan dengan melihat layar Robot Brain. Nama proyek Drive harus dicantumkan di Slot 1.

    Layar Beranda V5 Brain menampilkan program Drive di slot 1 di sudut kiri bawah tepat di bawah ikon Drive.

Ikon Kotak Alat Guru Kotak Alat Guru - Model Pertama

  • Model menjalankan proyek di depan kelas sebelum meminta semua siswa mencobanya sekaligus. Kumpulkan siswa di satu area dan sisakan cukup ruang bagi Speedbot untuk bergerak jika diletakkan di lantai.

  • Beritahukan siswa bahwa sekarang giliran mereka untuk menjalankan proyek mereka. Pastikan mereka memiliki jalur yang jelas dan tidak ada Speedbot yang bertabrakan satu sama lain.

  • Jalankan (C++) proyek pada robot dengan memastikan proyek dipilih lalu tekan tombolJalankanpada Robot Brain. Selamat atas terciptanya proyek pertama Anda!

    Layar V5 Brain dengan program Drive terbuka dan kotak merah di sekitar tombol Run di sisi paling kiri. Di sebelah kanan Run terdapat tombol untuk Timed Run, Match, dan Wiring.

Langkah 4: Berkendara Mundur

Sekarang Anda telah memprogram robot Anda untuk melaju maju, mari kita memprogramnya untuk melaju mundur.

  • Ubah parameter pada instruksi drive menjadi reverse, sehingga proyek Anda tampak seperti ini:

    int main() {
      // Menginisialisasi Konfigurasi Robot. JANGAN DIHAPUS!
      vexcodeInit();
      
      // Mulai kode proyek
      Drivetrain.driveFor(maju, 100, mm);
    
    }
  • Pilih Nama Proyek untuk mengubahnya dariDrivekeReverse.

    Nama proyek di Toolbar terbaca Terbalik dan slot 1 dipilih.

  • Pilih ikon Slot untuk memilih slot baru. Pilih slot 2.

    Pemilihan slot dalam VEXcode V5 dibuka dengan slot 2 dipilih dan disorot dengan kotak merah.

  • Unduh (dalamC++) proyeknya.

    Bilah Alat VEXcode V5 dengan tombol Unduh disorot oleh kotak merah di sisi kanan. Tombol Unduh terletak di sebelah kanan ikon Otak berwarna hijau dan di sebelah kiri tombol Jalankan dan Berhenti.

  • Periksa untuk memastikan proyek Anda telah diunduh (dalamC++) dengan melihat layar Robot Brain. Nama proyekReverseharus dicantumkan di Slot 2.

    Layar Beranda V5 Brain menampilkan proyek Reverse di Slot 2, ikon kedua dari kiri di baris bawah, di samping proyek Drive di Slot 1.

  • Jalankan (dalamC++) proyek pada robot dengan memastikan proyek dipilih lalu tekan tombolJalankanpada Robot Brain.

    Layar Otak V5 dengan proyek Reverse terbuka dan tombol Run disorot dalam kotak merah di paling kiri. Di sebelah kanan Run terdapat tombol untuk Timed Run, Match, dan Wiring.

Ikon Kotak Alat Guru Kotak Alat Guru - Menyelesaikan Langkah 4

  • Untuk mengubah perintahdriveFordariforwardmenjadireverse, cukup ubah parameter pertama ke -100. Ini akan membuat motor pada drivetrain bergerak ke arah yang berlawanan.

  • Jumlah mm dapat diubah, tetapi untuk contoh ini kita akan membiarkannya pada 100 mm seperti yang ditetapkan pada langkah sebelumnya.

  • Ingatkan mereka untuk melepaskan kabel USB dari Robot Brain sebelum menjalankan proyek.

  • Ingatkan siswa untuk menyimpan proyek mereka saat mereka mengerjakannya. Pustaka VEX memiliki bagian untuk C++ yang menjelaskan praktik penyimpanan dalam VEXcode V5.

Langkah 5: Tunggu lalu Berkendara dengan Gigi Mundur

Sekarang setelah kita memprogram robot untuk melaju maju dan kemudian mundur, kita sekarang dapat menambahkan instruksi tunggu sehingga robot menunggu sejumlah waktu tertentu sebelum melaju mundur.

  • Tambahkan instruksi Wait sebelum perintah Drive for . Pastikan Wait diberi indentasi agar sesuai dengan perintah Drive for , dan semua perintah berada dalam kurung kurawal. Ini memberi tahu robot untuk menunggu tiga detik sebelum bergerak mundur.

        tunggu(3, detik);
    
        Drivetrain.driveFor(maju, 100, mm);
  • Pilih Nama Proyek untuk mengubahnya dari Reverse menjadi WaitReverse.

    Nama proyek diubah menjadi Wait Reverse di Toolbar, dan slot 2 dipilih.

  • Pilih ikon Slot untuk memilih slot baru. Pilih slot 3.

    Pemilihan slot di VEXcode V5 dengan kotak merah di sekitar Slot 3 dari 8.

  • Unduh (dalamC++) proyeknya.

    Tombol unduh di Toolbar VEXcode V5 disorot dengan kotak merah di sekitarnya, di antara ikon Brain hijau dan tombol Run dan Stop.

  • Periksa untuk memastikan proyek Anda telah diunduh (dalamC++) dengan melihat layar Robot Brain. Nama proyek WaitReverse harus dicantumkan di Slot 3.

    Layar Beranda V5 Brain menampilkan proyek Wait Reverse di slot 3, ikon ketiga di baris bawah.

  • Jalankan (dalamC++) proyek pada robot dengan memastikan proyek dipilih lalu tekan tombolJalankan.

    Layar V5 Brain dengan proyek Wait Reverse terbuka dan tombol Run disorot dalam kotak merah di paling kiri. Di sebelah kanan Run terdapat tombol untuk Timed Run, Match, dan Wiring.

Ikon Kotak Alat Guru Kotak Alat Guru - Menyelesaikan Langkah 5

  • Menggunakan perintah wait tidak akan mengakhiri proyek, ia hanya menghentikan sementara pergerakan robot.

  • Jika siswa menggunakan komputer, ingatkan mereka untuk melepaskan kabel USB dari Robot Brain sebelum menjalankan proyek.

  • Ingatkan siswa untuk menyimpan proyek mereka saat mereka mengerjakannya. Pustaka VEX memiliki bagian untuk C++ yang menjelaskan praktik penyimpanan dalam VEXcode V5.

Langkah 6: Selesaikan Tantangan Latihan Basket!

Pengaturan untuk Latihan Bola Basket memperlihatkan empat garis yang diberi jarak dengan garis start di sebelah kiri, dan garis berjarak 10 cm, 20 cm, dan 40 cm. Robot V5 siap memulai dengan roda depannya di garis start.

Tata letak Tantangan Latihan Bola Basket

Dalam Tantangan Latihan Bola Basket, robot harus mampu menavigasi serangkaian garis pada jarak yang berbeda. Robot akan bergerak maju ke garis pertama yang berjarak 10 cm dari posisi awal, menunggu 1 detik, lalu bergerak mundur kembali ke garis yang sama. Robot kemudian akan mengulangi tindakan tersebut dengan melaju maju 20 cm ke garis kedua, menunggu 1 detik, lalu melaju mundur ke garis awal semula. Robot akan melaju maju ke garis ketiga dengan jarak 40 cm, menunggu 1 detik, dan kemudian akhirnya kembali ke garis awal untuk menyelesaikan tantangan.

Sebelum memprogram robot, rencanakan lintasan dan perilaku robot di buku catatan teknik Anda.

Setelah menyelesaikan Tantangan Bola Basket, Anda akan dapat menggabungkan gerakan maju dan mundur dengan perilaku robot tambahan untuk menyelesaikan tantangan yang lebih sulit lagi.
Ingatlah saat memprogram bahwa 1 cm = 10 mm.

Ikon Kotak Alat Guru Kotak Alat Guru - Berhenti dan Diskusikan

Minta siswa untuk berbagi solusi mereka secara berpasangan sebelum membahasnya di kelas secara keseluruhan. Fasilitasi diskusi dengan bertanya:

  • Apakah Anda menghadapi kesulitan saat memprogram tantangan ini?

  • Apakah robot Anda berperilaku seperti yang Anda harapkan berdasarkan proyek Anda? Mengapa atau mengapa tidak?

  • Jika Anda dapat mengulangi tantangan tersebut, apakah ada hal yang akan Anda lakukan secara berbeda?

Ikon Kotak Alat Guru Kotak Alat Guru - Solusi

int main() {
  // Menginisialisasi Konfigurasi Robot. JANGAN DIHAPUS!
  vexcodeInit();
  // Mulai kode proyek

  // Maju 10cm
  Drivetrain.driveFor(maju, 100, mm);
  // Tunggu 1 detik
  wait(1, detik);
  // Maju kembali ke garis start
  Drivetrain.driveFor(mundur, 100, mm);

  // Maju 20cm
  Drivetrain.driveFor(maju, 200, mm);
  // Tunggu 1 detik
  wait(1, detik);
  // Maju kembali ke garis start
  Drivetrain.driveFor(mundur, 200, mm);

  // Maju 40cm
  Drivetrain.driveFor(maju, 400, mm);
  // Tunggu 1 detik
  wait(1, detik);
  // Maju kembali ke garis start
  Drivetrain.driveFor(mundur, 400, mm);

}