Lompat ke isi utama

Pelajaran 3: Berkendara ke Nomor '31'

Dalam Pelajaran ini, Robot VR akan melaju ke angka '31' dan kemudian kembali ke angka '1' pada Peta Kotak Angka Playground!

Tampilan atas-bawah dari taman bermain Peta Kotak Angka, dengan angka 31 disorot oleh kotak merah. Robot VR dimulai pada angka 1, dan kotak angka 31 berada tiga spasi di atasnya.

Perhatikan bahwa Robot VR akan bergerak sepanjang sumbu Y untuk bergerak ke angka '31' pada Peta Kotak Angka Playground.

Tampilan atas-bawah dari taman bermain Peta Kotak Angka, dengan ruang angka 31 disorot oleh kotak hitam. Garis menunjukkan pengukuran melintasi sumbu Y, dengan ruang pertama berada pada jarak -900 milimeter pada sumbu Y, dan ruang berikutnya berada pada jarak -700 dan terus dihitung sebanyak 200 setiap kalinya. Ruang angka 31 berada pada lokasi Y -300 milimeter.

Robot VR akan melaju ke lokasi angka '31' pada Peta Kotak Angka Playground. Akan tetapi, sebelum Robot VR dapat menavigasi ke nomor tersebut, Robot VR harus diberi tahu di mana lokasi nomor tersebut. Koordinat angka '31' adalah (-900, -300).

Tampilan atas-bawah dari taman bermain Peta Kotak Angka, dengan dua indikator sumbu yang menandai lokasi ruang angka 31. Robot VR dimulai pada -900 X dan -900 Y, sedangkan ruang angka 31 berada pada -900 X dan -300 Y.
  • Seret blok [Drive] yang tidak menunggu ke ruang kerja.

    Proyek blok VEXcode VR baru yang dimulai dengan blok When Started diikuti oleh blok Drive Forward.
  • Lampirkan blok [Tunggu hingga] di bawah blok [Berkendara].

    Kelanjutan proyek blok VEXcode VR, sekarang dengan blok Wait Until yang ditambahkan setelah blok Drive Forward. Seluruh proyek sekarang terbaca Saat Dimulai, Maju Terus, dan Tunggu Hingga. Blok Tunggu Hingga memiliki parameter boolean kosong.
  • Seret blok reporter Boolean <Greater than> ke blok [Tunggu sampai].

    Kelanjutan proyek blok VEXcode VR, sekarang dengan blok Greater Than yang disisipkan ke dalam blok Wait Until. Seluruh proyek sekarang bertuliskan Saat Dimulai, Maju Terus diikuti oleh blok Tunggu Hingga dengan blok Lebih Besar Dari di dalamnya yang bertuliskan 'kosong Lebih Besar Dari 50'.
  • Perhatikan bahwa blok <Greater than> digunakan sebagai pengganti blok <Less than> karena Robot VR bergerak dari bawah Taman Bermain. Robot VR dimulai pada nilai Y -900 milimeter (mm). Saat Robot VR melaju ke depan, nilai Y meningkat.

    Tampilan atas-bawah yang sama dari taman bermain Peta Kotak Angka dengan dua indikator sumbu yang menandai lokasi ruang angka 31 dari sebelumnya. Robot VR dimulai pada -900 X dan -900 Y, sedangkan ruang angka 31 berada pada -900 X dan -300 Y.
  • Seret blok (Posisi Robot) ke blok <Greater than>.

    Kelanjutan proyek blok VR VEXcode, sekarang dengan blok Posisi Robot yang dimasukkan ke dalam blok Lebih Besar Dari. Seluruh proyek sekarang terbaca Saat Memulai, Maju Terus dan Tunggu Hingga Posisi X Robot dalam milimeter Lebih Besar Dari 50.
  • Atur parameter blok (Posisi Robot) ke “Y” dan parameter blok <Greater than> ke -300.

    Kelanjutan proyek blok VR VEXcode, sekarang dengan sumbu blok Posisi Robot diubah dari X ke Y dan parameter kedua blok Lebih Besar Dari diubah dari 50 ke -300. Seluruh proyek sekarang terbaca Saat Memulai, Maju dan Tunggu Hingga Posisi Y Robot dalam milimeter Lebih Besar Dari -300.
  • Seret blok [Berhenti mengemudi] dan tambahkan ke proyek.

    Kelanjutan proyek blok VR VEXcode, sekarang dengan blok Stop Driving yang ditambahkan di bawah blok Wait Until. Seluruh proyek sekarang terbaca Saat Memulai, Maju dan Tunggu Hingga Posisi Y Robot dalam milimeter Lebih Besar Dari -300. Terakhir, Berhenti Mengemudi.
  • Luncurkan Number Grid Map Playground jika belum terbuka dan jalankan proyeknya.
  • Saksikan Robot VR melaju ke angka '31' pada Peta Kotak Angka Playground.

    Tampilan atas-bawah dari taman bermain Peta Kotak Angka dengan robot VR yang beristirahat di ruang angka 31.
  • Dalam proyek ini, Robot VR melaju ke angka '31' pada Peta Kotak Angka Playground. Karena nilai Y meningkat saat Robot VR melaju ke angka '31,' proyek menggunakan blok <Greater than>.
  • Robot VR akan berhenti jika nilai Y-nya lebih besar daripada nilai Y koordinat tempat angka yang ditunjukkan berada. Karena nilai Y dari angka '31' adalah -300, Robot VR akan berhenti melaju setelah nilai Y lebih besar dari -300.
Diagram yang memvisualisasikan aliran logika dalam proyek VEXcode VR Blocks. Proyek diawali dengan blok Saat Dimulai, kemudian mulai melaju ke depan, dan menahan perintah tersebut hingga Posisi Y sensor Robot dalam milimeter lebih besar dari -300, setelah itu blok Berhenti Mengemudi mengakhiri perintah Berkendara Maju.

Menggunakan Blok Switch 

Dalam Pelajaran ini, Anda mempelajari cara menggunakan blok VEXcode [Tunggu hingga] dengan kondisi Boolean untuk memerintahkan robot menunggu hingga robot mencapai posisi lebih besar dari -300 pada sumbu Y sebelum beralih ke perilaku berikutnya.

Gambar di bawah menunjukkan blok VEXcode di samping blok Switch yang berisi perintah Python untuk perilaku yang sama. 

Perbandingan blok VEXcode VR Wait Until dan blok switch yang sesuai. Blok VR bertuliskan 'Tunggu Hingga Posisi Y Robot dalam milimeter lebih besar dari -300'. Kode Python blok switch berbunyi 'while not location.position(Y, MM) > -300: wait(5, MSEC)'. Perintah wait dituliskan di bawah while not.Di dalam blok Switch,sementara bukan location.position(Y, MM) > -300:adalah perintah Python pertama yang memeriksa apakah posisi robot sepanjang sumbu X lebih besar dari -300.

Perintah indentasi kedua,wait (5, MSEC),menghentikan sementara eksekusi loop kondisional selama 5 milidetik.

Dalam VEXcode VR, perintah wait selalu ditambahkan dengan loop kondisional. Tujuan dari perintah wait adalah untuk memastikan bahwa VEXcode VR dapat menjalankan proyek sebagaimana mestinya, mengingat sifat platform VEXcode VR yang berbasis web. Perintah wait tidak boleh dihapus saat menggunakan loop bersyarat, atau proyek Anda mungkin tidak berjalan sebagaimana mestinya. 

Dalam contoh ini, proyek memeriksa apakah posisi robot lebih besar dari nilai Y -300 setiap 5 MSEC. Baris kode ini menjorok di bawah baris kode pertama karena perintah ini adalah perilaku yang akan berulang hingga kondisi (nilai koordinat Y lebih besar dari -300) terpenuhi. 

Pilih tombol Berikutnya untuk melanjutkan sisa Pelajaran ini.