Tantangan Mesin Groove - Python
Tantangan Mesin Groove
Dalam tantangan ini, Anda akan dibagi menjadi beberapa tim dan memprogram robot Anda untuk melakukan rutinitas tarian menggunakan pengetahuan Anda tentang loop. Guru Anda akan menetapkan batas waktu untuk mengembangkan/menguji tarian dan batas waktu untuk durasi tarian. Semua orang yang tidak ikut serta dalam tim dansa yang saling berkompetisi akan menilai tarian dan memberikan suara pada tim yang menurut mereka terbaik.
Aturan:
- Setiap Clawbot akan menari satu per satu dalam area 1x1 meter.
- Tarian ini terus berlanjut hingga tombol Stop pada layar Brain ditekan untuk menghentikan proyek agar tidak berjalan.
- Lengan harus diangkat dan diturunkan.
- Cakar harus membuka dan menutup.
- Clawbot harus berbelok ke kiri dan ke kanan.
- Clawbot harus melaju maju dan mundur.
- Proyek harus segera dihentikan jika Clawbot bertabrakan dengan sesuatu atau terjatuh. Itu adalah tarian yang merugikan.
Kotak Peralatan Guru
Penjurian untuk kompetisi ini dapat dilakukan dengan sejumlah cara. Salah satu cara untuk meningkatkan keterlibatan adalah dengan meminta siswa merekam video pertandingan dansa dan meminta siswa dari kelas lain untuk memilih pemenangnya. Jika itu terlalu ambisius, pertimbangkan untuk menunjuk panel juri yang tidak memihak sebelum memulai tantangan ini, atau melibatkan siswa, guru, atau staf lain.
Solusi di bawah ini hanyalah gabungan dari ketiga contoh gerakan tari yang dirangkai menjadi satu.
# Pustaka mengimpor
dari vex import *
# Mulai kode proyek
sementara Benar:
arm_motor.spin_for(MAJU, 300, DERAJAT)
arm_motor.set_stopping(REM)
untuk pengulangan_hitungan dalam rentang(3):
drivetrain.turn_for(KANAN, 90, DERAJAT)
untuk pengulangan_cakar dalam rentang(2):
claw_motor.spin_for(MUNDUR, 90, DERAJAT)
claw_motor.spin_for(MAJU, 90, DERAJAT)
tunggu(5, MSEC)
drivetrain.turn_for(KIRI, 90, DERAJAT)
untuk pengulangan_cakar dalam rentang(2):
claw_motor.spin_for(MUNDUR, 90, DERAJAT)
cakar_motor.putar_untuk(MAJU, 90, DERAJAT)
tunggu(5, MSEC)
tunggu(5, MSEC)
untuk hitungan_ulang dalam rentang(2):
lengan_motor.putar_untuk(MAJU, 300, DERAJAT)
lengan_motor.atur_berhenti(REM)
drivetrain.putar_untuk(KANAN, 90, DERAJAT)
untuk putaran_ulang dalam rentang(9):
drivetrain.putar_untuk(KIRI, 10, DERAJAT)
tunggu(5, MSEC)
lengan_motor.putar_untuk(MUNDUR, 300, DERAJAT)
tunggu(5, MSEC)
lengan_motor.atur_kecepatan(80, PERSEN)
drivetrain.atur_kecepatan_putar(65, PERSEN)
untuk hitungan_ulang dalam rentang(2):
arm_motor.spin_for(MAJU, 300, DERAJAT)
untuk putaran_ulang dalam rentang(3):
drivetrain.turn_for(KIRI, 90, DERAJAT)
drivetrain.turn_for(KANAN, 90, DERAJAT)
tunggu(5, MSEC)
arm_motor.spin_for(MUNDUR, 300, DERAJAT)
tunggu(5, MSEC)