Langsung ke konten utama

Pelajaran 3: Menambahkan Perintah Penggerak untuk Memecahkan Labirin Dinding

Memecahkan Masalah Labirin Dinding

Sekarang setelah Robot VR telah bergerak ke huruf 'A' dan juga ke angka '2' pada Maze Wall Playground, bagaimana Anda akan membuat proyek di mana Robot VR bergerak ke lokasi lain, seperti ke huruf 'B'? Sejauh ini, kami telah menggunakan data dari Sensor Bumper untuk berkendara ke dinding, lalu berbelok untuk bergerak ke dinding berikutnya. Untuk menuju ke huruf 'B', kita perlu menggerakkan Robot VR ke titik di tengah permukaan labirin, sehingga robot tersebut dapat menempuh jalur berbeda menuju tujuan kita.

Jika kode hanya berisi perintah drivedan turn_for, Robot VR bisa "terjebak" di bagian nomor '2' dari Labirin Dinding, karena akan terus berbelok ke kiri atau ke kanan tanpa pernah mundur.Tampilan dari atas taman bermain Wall Maze dengan robot VR yang diposisikan di atas penanda 2. Posisinya miring ke atas dan ke kiri, kira-kira menghadap ke penanda B.

Sebagai gantinya, kita dapat memperkirakan jarak dari dinding terakhir yang disentuh oleh 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 menyelesaikan 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():
    	while not left_bumper.pressed():
    		drivetrain.drive(FORWARD)
    		wait(5, MSEC)
    		
    	drivetrain.turn_for(LEFT, 90, DEGREES)
    
    	while not left_bumper.pressed():
    		drivetrain.drive(FORWARD)
    		wait(5, MSEC)
    		
    	drivetrain.turn_for(RIGHT, 90, DEGREES)
    
    	while not left_bumper.pressed():
    		drivetrain.drive(FORWARD)
    		wait(5, MSEC)
    		
    	drivetrain.turn_for(LEFT, 90, DEGREES)
    	
    	while not left_bumper.pressed():
    		drivetrain.drive(FORWARD)
    		wait(5, MSEC)
    		
    	drivetrain.stop()
  • Proyek di atas mulai mengarahkan Robot VR ke huruf 'B,' namun, agar Robot VR dapat melakukannya, ia perlu mundur terlebih dahulu lalu berbelok ke kiri.Tampilan dari atas taman bermain Wall Maze dengan robot VR yang diposisikan di atas penanda 2. Robot VR menempel dan menghadap dinding kiri, dengan panah hijau menunjuk ke kanan, lalu ke bawah, menunjukkan jalur yang harus dilalui.
  • Edit kode tersebut dengan menghapus perintah stop dan menggantinya dengan perintahdrive_fordan turn_for
    • Kita dapat memperkirakan bahwa Robot VR perlu bergerak mundur sejauh kurang lebih 300 milimeter (mm). Pertama, atur parameter perintah drive_for menjadi “reverse” untuk 300 milimeter (mm).
    • Kemudian, atur parameter perintah turn_for untuk berbelok ke kiri 90 derajat. Proyek Anda sekarang akan terlihat seperti ini:

      def main():
      	while not left_bumper.pressed():
      		drivetrain.drive(FORWARD)
      		wait(5, MSEC)
      		
      	drivetrain.turn_for(LEFT, 90, DEGREES)
      
      	while not left_bumper.pressed():
      		drivetrain.drive(FORWARD)
      		wait(5, MSEC)
      		
      	drivetrain.turn_for(RIGHT, 90, DEGREES)
      
      	while not left_bumper.pressed():
      		drivetrain.drive(FORWARD)
      		wait(5, MSEC)
      		
      	drivetrain.turn_for(LEFT, 90, DEGREES)
      	
      	while not left_bumper.pressed():
      		drivetrain.drive(FORWARD)
      		wait(5, MSEC)
      		
      	drivetrain.drive_for(REVERSE, 300, MM)
      	drivetrain.turn_for(LEFT, 90, DEGREES)
  • Luncurkan Wall Maze Playground jika belum terbuka dan jalankan proyeknya.
  • Menambahkan perintah-perintah ini akan mengarahkan Robot VR ke arah yang benar untuk menggerakkan huruf 'B'.Di sebelah kiri, proyek kode Python yang ditampilkan sebelumnya, diakhiri dengan drivetrain.turn_for(LEFT, 90, DEGREES). Di sebelah kanan, tampilan dari atas taman bermain Wall Maze menunjukkan Robot VR telah bergerak sesuai dengan kode baru, diposisikan di aula antara penanda A dan 2 dan sekarang menghadap dinding bawah taman bermain.

     

  • Pilih tombol “Reset” untuk mereset Playground dan memindahkan Robot VR kembali ke posisi awal.
  • Sekarang setelah Robot VR diarahkan ke arah yang benar, tambahkan perintah berikut di bawah perintah terakhir turn_for , untuk menggerakkan Robot VR ke huruf 'B' pada Wall Maze Playground. Pastikan perintah-perintah tersebut diberi indentasi yang benar dalam proyek Anda.

    	while left_bumper tidak ditekan:
    		drivetrain.drive(MAJU)
    		wait(5, MSEC)
    		
    	drivetrain.turn_for(KANAN, 90, DERAJAT)
    
    	while left_bumper tidak ditekan:
    		drivetrain.drive(MAJU)
    		wait(5, MSEC)
    		
    	drivetrain.turn_for(KANAN, 90, DERAJAT)
    
    	while left_bumper tidak ditekan:
    		drivetrain.drive(MAJU)
    		wait(5, MSEC)
    		
    	drivetrain.stop()
  • Luncurkan Wall Maze Playground jika belum terbuka dan jalankan proyeknya.
  • Robot VR sekarang akan bergerak menuju huruf 'B' pada Labirin Dinding Taman Bermain.

    Tampilan dari atas taman bermain Wall Maze dengan Robot VR yang diposisikan di atas huruf B, di tengah dinding kiri taman bermain. Benda itu menempel di dinding, menghadap ke bagian atas taman bermain.

Tantangan Mini

Dalam tantangan ini, Robot VR harus menavigasi ke angka '3' di Labirin Dinding Taman Bermain menggunakan beberapa putaransementara, perintah Penggerak, dan Sensor Bumper.

Tampilan dari atas taman bermain Wall Maze dengan robot VR yang diposisikan di atas angka 3. Angka 3 terletak di kuadran kiri atas labirin, di atas B dan di sebelah kanan, di dalam sudut yang dibentuk oleh 3 dinding di sekitarnya. Robot VR tersebut ditekan ke dinding di bawah penanda angka 3, menghadap ke bagian bawah taman bermain.

Ikuti langkah-langkah ini untuk menyelesaikan tantangan mini:

  • Tonton video solusi di bawah ini dan tinjau bagaimana Robot VR harus bergerak untuk menyelesaikan tantangan mini. Dalam klip video di bawah ini, Robot VR memulai dari lokasi awal dan mengikuti pola yang sama yaitu mengemudi ke arah dinding hingga bumper ditekan lalu berbelok. Robot tersebut awalnya menempuh jalur yang sama seperti saat menuju huruf B. Di titik belok menjauh dari dinding, robot berbelok ke kanan untuk melanjutkan ke nomor 3. Dari titik itu, robot bergerak maju dan berbelok ke kiri dua kali untuk melewati dinding berikutnya, melewati huruf B. Terakhir, robot bergerak maju dan berbelok ke kanan dua kali untuk melewati dinding terakhir dan mencapai angka 3.

  • Buat proyek dengan menambahkan atau menghapus perintah yang diperlukan ke proyek Unit4Lesson3 untuk menggerakkan Robot VR ke angka '3' pada Wall Maze Playground.
  • Jalankan proyek untuk menguji apakah proyek tersebut berfungsi.
  • Jika proyek tidak berhasil, edit dan coba lagi. Lanjutkan proses ini hingga tantangan selesai.
  • Setelah Robot VR berhasil mencapai angka '3' pada Labirin Dinding Taman Bermain, simpan proyek tersebut.

Selamat! Anda telah berhasil menyelesaikan Tantangan Labirin Dinding!

Pertanyaan

Silakan pilih tautan di bawah ini untuk mengakses kuis pelajaran.

Google Doc / .docx / .pdf