Langsung ke konten utama

Pemrograman Penggerak Maju dan Mundur - C++

Ikon Kotak Peralatan Guru Panduan Aktivitas Kotak Peralatan Guru -

Eksplorasi ini akan memperkenalkan siswa pada perilaku pemrograman dasar seperti maju, mundur, dan menunggu. Keterampilan dasar ini akan membantu mereka untuk berhasil dalam Tantangan Automed di akhir Lab STEM ini, ketika mereka akan menavigasi lantai rumah sakit dengan menggunakan Speedbot.

Dengan menggunakan proyek templat V5 Speedbot (Drivetrain 2-motor, Tanpa Gyro), siswa dapat 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 aktivitas ini, Anda akan terlibat dalam Tantangan Latihan Bola Basket menggunakan perilaku maju, mundur, dan menunggu.

Ikon Kotak Peralatan Guru Kotak Peralatan Guru

Berikut adalah gambaran umum antarmuka pengguna VEXcode V5. Para siswa akan diperkenalkan dengan tab/tombol ini selama kegiatan di Laboratorium STEM Medbot ini. Tautan juga disediakan di seluruh Lab STEM untuk memberikan informasi lebih lanjut tentang tab/tombol ini.

Tangkapan layar yang menunjukkan antarmuka VEXcode V5. Toolbar terletak di bagian atas layar, dengan menu seret dan lepas di bawahnya di sebelah kiri dan jendela pemrograman C++ di bawahnya di sebelah kanan. Di bawah jendela pemrograman terdapat jendela 'Kesalahan'.

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

    Menu Bantuan VEXcode untuk perintah Drive For. Ikon Bantuan di pojok kanan atas disorot, menunjukkan apa yang harus dipilih untuk membuka Menu Bantuan.

     

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

Ikon Tips Guru Tips untuk Guru

Jika ini adalah kali pertama siswa menggunakan VEXcode V5, mereka dapat merujuk ke Tutorial kapan saja selama eksplorasi ini. Tutorial-tutorial tersebut terletak di bilah alat.

Toolbar VEXcode V5 dengan tombol Tutorial yang ditandai dengan kotak merah, di sebelah kanan menu File.

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

Robot Speedbot

1

Baterai Robot Terisi Penuh

1

VEXcode V5

1

Kabel USB (jika menggunakan komputer)

1

Buku Catatan Teknik

Ikon Tips Guru Tips untuk Guru

Peragakan setiap langkah pemecahan masalah kepada para siswa.

Langkah 1: Persiapan untuk Eksplorasi

Sebelum memulai aktivitas, apakah Anda sudah menyiapkan semua barang-barang ini? Periksa setiap hal berikut:

Langkah 2: Memulai Proyek Baru

Ikuti langkah-langkah berikut untuk memulai proyek:

  • Buka menu File dan pilih Buka Contoh.

    Toolbar VEXcode V5 dengan menu File terbuka dan Open Examples disorot dalam kotak merah. Open Examples adalah item menu keempat di bawah New Blocks Project, New Text Project, dan Open.

     

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

    Menu 'Proyek Contoh' terbuka, dengan kategori 'Templat' terpilih. Proyek Speedbot (Drivetrain 2-motor, Tanpa Gyro) ditandai dengan kotak merah, menunjukkan proyek mana yang harus dipilih dan dibuka.

     

  • Karena Anda akan mengerjakan pergerakan Speedbot maju dan mundur, Anda akan menamai proyek AndaDrive.  Klik pada Nama Proyek, ketik Drive , lalu pilih Simpan.

 

Menu tarik-turun untuk mengganti nama dibuka dari tombol Nama Proyek pada toolbar VEXcode V5. Proyek tersebut akan diganti namanya menjadi 'Drive'.

 

 

Ikon Tips Guru Tips untuk Guru

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

    Toolbar VEXcode V5 dengan tombol Nama Proyek yang disorot dengan kotak merah. Nama proyek ditetapkan menjadi 'Drive Forward'.

  • Anda dapat meminta siswa untuk menambahkan inisial mereka atau nama kelompok mereka ke nama proyek. Ini akan membantu membedakan proyek-proyek tersebut jika Anda meminta siswa untuk mengirimkannya.
  • Karena ini adalah aktivitas pemrograman pertama yang mungkin dicoba siswa Anda, Anda harus mencontohkan langkah-langkahnya, lalu meminta siswa untuk melakukan 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 yang dapat mereka pilih di halaman Contoh. Saat mereka membangun dan menggunakan robot lain, mereka akan memiliki kesempatan untuk menggunakan berbagai templat.
  • Periksa untuk memastikan nama proyekDrivesekarang berada di jendela di tengah bilah alat.

    Toolbar VEXcode V5 menampilkan nama proyek 'Drive'.

Ikon Kotak Peralatan Guru Kotak Peralatan Guru - Proyek Penyimpanan

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

  • Beritahu para 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 menggerakkan Speedbot ke depan.

  • Ingatkan siswa untuk menyimpan proyek mereka saat mengerjakannya. BagianC++dari VEX Library menjelaskan praktik penyimpanan di VEXcode V5.

Ikon Kotak Peralatan Guru Kotak Peralatan Guru - Berhenti dan Berdiskusi

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 berkelompok. Mintalah siswa untuk merenung secara individu sebelum berbagi dalam kelompok mereka atau di depan seluruh kelas.

Langkah 3: Maju Terus

Anda sekarang siap untuk mulai memprogram robot agar bergerak maju!

  • Sebelum kita mulai memprogram, kita perlu memahami apa itu instruksi. Instruksi terdiri dari tiga bagian. Untuk informasi lebih lanjut mengenai apa itu instruksi, lihat artikel, "Aturan dan Pedoman Sintaks - VEXcode V5"

    Sebuah drive C++ untuk perintah dengan komponen-komponen perintah yang diberi label. Drivetrain diberi label sebagai perangkat; drive for diberi label sebagai perintah; dan forward, 100, dan mm diberi label sebagai parameter.

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

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

Ikon Tips Guru Tips untuk Guru

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 mengenai fitur ini, lihat artikelC++.

Seorang pengguna sedang mengetik perintah C++, dan setelah mulai mengetik Drivetrain.d, program membuka menu tarik-turun yang menyarankan opsi pelengkapan otomatis.

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

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

     

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

    Toolbar VEXcode V5 dengan kotak merah di sekitar ikon Otak berwarna hijau, di sebelah kanan tombol Controller.

     

  • PilihUnduhuntuk mengunduh proyek ke Brain.

    Toolbar VEXcode V5 dengan kotak merah di sekitar ikon unduh, di antara tombol Brain dan Run.

Ikon Kotak Peralatan Guru Kotak Peralatan Guru

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

Ikon Kotak Peralatan Guru Kotak Peralatan Guru - Berhenti dan Berdiskusi

Mintalah 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 membagikan prediksi mereka.

  • Periksa untuk memastikan proyek Anda telah diunduh (C++) dengan melihat layar Otak Robot. Nama proyek Drive harus dicantumkan di Slot 1.

    Layar utama V5 Brain menampilkan program Drive di slot 1 di pojok kiri bawah, tepat di bawah ikon Drive.

Ikon Kotak Peralatan Guru Kotak Peralatan Guru Model - Pertama

  • Berikan contoh bagaimana menjalankan proyek di depan kelas sebelum meminta semua siswa mencobanya sekaligus. Kumpulkan para siswa di satu area dan sisakan ruang yang cukup agar Speedbot dapat bergerak jika diletakkan di lantai.

  • Beritahu para siswa bahwa sekarang giliran mereka untuk menjalankan proyek mereka. Pastikan mereka memiliki jalur yang jelas dan tidak ada Speedbot yang saling bertabrakan.

  • Jalankan (C++) proyek pada robot dengan memastikan proyek terpilih lalu tekan tombolRunpada Otak Robot. Selamat atas pembuatan proyek pertama Anda!

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

Langkah 4: Mundur

Setelah Anda memprogram robot Anda untuk bergerak maju, mari kita program robot tersebut untuk bergerak mundur.

  • Ubah parameter pada instruksi penggerak menjadi mundur, sehingga proyek Anda akan terlihat seperti ini:

    int main() {
      // Menginisialisasi Konfigurasi Robot. JANGAN DILEPAS!
      vexcodeInit();
        // Mulai kode proyek
    
        Drivetrain.driveFor(reverse, 100, mm);
    
    }
  • Pilih Nama Proyek untuk mengubahnya dari Drive menjadi Reverse.

    Kotak dialog nama proyek di VEXcode V5 bertuliskan Reverse dan menunjukkan bahwa Slot 1 terpilih.

     

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

    Pemilihan slot di VEXcode V5 dibuka dengan slot 2 terpilih dan disorot dengan kotak merah.

     

  • Unduh (C++) proyek.

    Tombol Unduh di Toolbar VEXcode V5 disorot dengan kotak merah di sebelah kiri ikon otak hijau dan di sebelah kanan tombol Jalankan dan Berhenti.

  • Periksa untuk memastikan proyek Anda telah diunduh (C++) dengan melihat layar Otak Robot. Nama proyek Reverse harus dicantumkan di Slot 2.

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

  • Jalankan (C++) proyek pada robot dengan memastikan proyek terpilih lalu tekan tombolRunpada Otak Robot.

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

Ikon Kotak Peralatan Guru Kotak Peralatan Guru - Menyelesaikan Langkah 4

  • Untuk mengubah perintahdriveFordarimajumenjadimundur, cukup ubah parameter pertama menjadi -100. Ini akan menyebabkan motor-motor pada sistem penggerak bergerak ke arah yang berlawanan.

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

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

  • Ingatkan siswa untuk menyimpan proyek mereka saat mengerjakannya. BagianC++dari VEX Library menjelaskan praktik penyimpanan di VEXcode V5.

Langkah 5: Tunggu lalu Mundur

Setelah kita memprogram robot untuk bergerak maju dan kemudian mundur, kita sekarang dapat menambahkan instruksi tunggu agar robot menunggu dalam jangka waktu tertentu sebelum bergerak mundur.

  • Tambahkan instruksi Wait sebelum perintah Drive for. Pastikan perintah Wait diberi indentasi agar sesuai dengan perintah Drive for , dan semua perintah berada di dalam tanda 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.

    Kotak dialog nama proyek di VEXcode V5 menampilkan "Wait Reverse" dan menunjukkan bahwa slot 2 dipilih.

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

    Pemilihan slot pada Toolbar VEXcode V5 menunjukkan slot 3 terpilih dan disorot dengan kotak merah.

  • Unduh (C++) proyek.

    Tombol unduh di Toolbar VEXcode V5 disorot dalam kotak merah di sebelah kanan ikon otak hijau dan di sebelah kiri tombol Jalankan dan Berhenti.

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

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

  • Jalankan (C++) proyek pada robot dengan memastikan proyek terpilih lalu tekan tombolRun.

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

Ikon Kotak Peralatan Guru Kotak Peralatan Guru - Menyelesaikan Langkah 5

  • Menggunakan perintah tunggu tidak akan mengakhiri proyek, melainkan hanya menghentikan sementara pergerakan robot.

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

  • Ingatkan siswa untuk menyimpan proyek mereka saat mengerjakannya. BagianC++dari VEX Library menjelaskan praktik penyimpanan di VEXcode V5.

Langkah 6: Selesaikan Tantangan Latihan Bola Basket!

Tata letak untuk latihan bola basket menunjukkan empat garis yang berjarak satu sama lain dengan garis awal di sebelah kiri, dan garis-garis pada jarak 10cm, 20cm, dan 40cm. Sebuah robot V5 siap untuk memulai dengan roda depannya berada 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 tersebut kemudian akan mengulangi tindakan tersebut dengan bergerak maju sejauh 20 cm ke garis kedua, menunggu 1 detik, lalu bergerak mundur ke garis awal. Robot akan bergerak 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 jalur dan perilaku robot di buku catatan teknik Anda.

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

Ikon Kotak Peralatan Guru Solusi Kotak Peralatan Guru -

Lihat contoh solusi di bawah ini:

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

    // Maju 10cm
    Drivetrain.driveFor(forward, 100, mm);
    // Tunggu 1 detik
    wait(1, seconds);
    // Mundur ke garis start
    Drivetrain.driveFor(reverse, 100, mm);

    // Maju 20cm
    Drivetrain.driveFor(forward, 200, mm);
    // Tunggu 1 detik
    wait(1, seconds);
    // Mundur ke garis start
    Drivetrain.driveFor(reverse, 200, mm);

    // Maju 40cm
    Drivetrain.driveFor(forward, 400, mm);
    // Tunggu 1 detik
    wait(1, seconds);
    // Mundur ke garis start
    Drivetrain.driveFor(reverse, 400, mm);

}

Ikon Kotak Peralatan Guru Kotak Peralatan Guru - Berhenti dan Berdiskusi

Mintalah siswa untuk berbagi solusi mereka secara berpasangan sebelum mendiskusikannya sebagai kelas secara keseluruhan. Fasilitasi diskusi dengan mengajukan pertanyaan:

  • Apakah Anda menghadapi kesulitan saat memprogram tantangan ini?

  • Apakah robot Anda berperilaku sesuai dengan yang Anda harapkan berdasarkan proyek Anda? Mengapa ya atau mengapa tidak?

  • Jika Anda bisa mengulang tantangan ini, adakah hal yang akan Anda lakukan secara berbeda?