Pelajaran 3: Menambahkan Perintah Drivetrain untuk Memecahkan Labirin Dinding
Memecahkan Masalah Labirin Dinding
Sekarang setelah Robot VR melaju ke huruf 'A' dan juga ke angka '2' di Dinding Labirin Taman Bermain, bagaimana Anda akan membuat proyek tempat Robot VR melaju ke lokasi lain, seperti ke huruf 'B?' Sejauh ini, kami telah menggunakan data dari Bumper Sensor untuk melaju ke dinding, lalu berbelok untuk pindah ke dinding berikutnya. Untuk menavigasi ke huruf 'B', kita perlu mampu menggerakkan Robot VR ke suatu titik di tengah permukaan labirin, sehingga ia dapat menempuh jalur berbeda menuju tujuan kita.
Jika kode hanya berisi perintah drivedan turn_for, Robot VR bisa “terjebak” di bagian angka '2' di Wall Maze, karena akan terus berbelok ke kiri atau kanan tanpa pernah mundur.
Sebaliknya, kita dapat memperkirakan jarak dari dinding terakhir yang disentuh Robot VR ke tempat ia perlu berbelok. Kita kemudian dapat menggunakan perintah Drivetrain, sepertidrive_fordanturn_for, dengan loopwhiledan data Bumper Sensor dalam proyek kita untuk memecahkan labirin!
-
Mulailah dengan memodifikasi proyek Anda sebelumnya, buat proyek baru, atau pilih “Salin” dan tempel kode ini ke VEXcode VR agar sesuai dengan proyek dasar ini.
def main(): sementara tidak ada bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.berbelok_ke_KIRI(90, DERAJAT) sementara tidak ada bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.berbelok_ke_KANAN, 90, DERAJAT) sementara tidak ada bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.berbelok_ke_KIRI(90, DERAJAT) sementara tidak ada bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.berhenti() - Proyek di atas mulai menggerakkan Robot VR ke huruf 'B', namun, agar Robot VR dapat melakukannya, ia harus mundur terlebih dahulu dan kemudian berbelok ke kiri.

- Edit kode dengan menghapus perintah stop dan menggantinya dengan perintahdrive_fordan turn_for
- Kita dapat memperkirakan bahwa Robot VR perlu bergerak mundur sekitar 300 milimeter (mm). Pertama, atur parameter perintah drive_for ke “reverse” selama 300 milimeter (mm).
-
Kemudian, atur parameter perintah turn_for untuk berbelok ke kiri 90 derajat. Proyek Anda sekarang akan terlihat seperti ini:
def main(): sementara tidak ada bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.belok_ke(KIRI, 90, DERAJAT) sementara tidak ada bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.belok_ke(KANAN, 90, DERAJAT) sementara tidak ada bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.belok_ke(KIRI, 90, DERAJAT) sementara tidak ada bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.berkendara_ke(MUNDUR, 300, MM) drivetrain.turn_for(KIRI, 90, DERAJAT)
- Luncurkan Wall Maze Playground jika belum terbuka dan jalankan proyek.
-
Menambahkan perintah ini akan mengarahkan Robot VR ke arah yang benar untuk menggerakkan huruf 'B.'

- Pilih tombol “Reset” untuk mengatur ulang Playground dan mengembalikan Robot VR ke posisi awal.
-
Sekarang setelah Robot VR berorientasi pada arah yang benar, tambahkan perintah berikut di bawah perintah terakhir turn_for , untuk mengarahkan Robot VR ke huruf 'B' di Wall Maze Playground. Pastikan perintah-perintah tersebut diindentasi dengan benar dalam proyek Anda.
sementara tidak bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.berbelok_ke(KANAN, 90, DERAJAT) sementara tidak bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.berbelok_ke(KANAN, 90, DERAJAT) sementara tidak bemper kiri.ditekan(): drivetrain.berkendara(MAJU) tunggu(5, MSEC) drivetrain.berhenti() - Luncurkan Wall Maze Playground jika belum terbuka dan jalankan proyeknya.
-
Robot VR sekarang akan melaju ke huruf 'B' di Wall Maze Playground.

Tantangan Mini
Dalam tantangan ini, Robot VR harus menavigasi ke angka '3' di Wall Maze Playground menggunakan beberapa putaransementara, perintah Drivetrain, dan Sensor Bumper.

Ikuti langkah-langkah berikut untuk menyelesaikan tantangan mini:
-
Tonton video solusi di bawah ini dan tinjau bagaimana Robot VR harus mengemudi untuk menyelesaikan tantangan mini. Dalam klip video di bawah, Robot VR mulai dari lokasi awal dan mengikuti pola yang sama dengan melaju ke dinding hingga bumper ditekan lalu berputar. Robot tersebut melaju pada jalur yang sama untuk memulai, seperti yang dilakukannya untuk melaju ke huruf B. Pada titik balik menjauhi dinding, robot berbelok ke kanan untuk melanjutkan ke angka 3. Dari titik itu, robot melaju maju dan berbelok ke kiri dua kali untuk melewati rangkaian dinding berikutnya, melewati huruf B. Akhirnya, robot melaju maju dan berbelok ke kanan dua kali untuk melewati dinding terakhir guna mencapai angka 3.
- Buat proyek dengan menambahkan atau menghapus perintah yang diperlukan ke proyek Unit4Lesson3 untuk mengarahkan Robot VR ke angka '3' di Wall Maze Playground.
- Mulai proyek untuk menguji apakah berhasil.
- Jika proyek tidak berhasil, edit dan coba lagi. Lanjutkan proses ini hingga tantangan selesai.
- Setelah Robot VR berhasil melaju ke angka '3' di Wall Maze Playground, simpan proyek.
Selamat! Anda telah berhasil menyelesaikan Tantangan Labirin Dinding!