Contoh yang disertakan#

Halaman ini mencantumkan contoh proyek yang disertakan yang menunjukkan cara mengontrol Robot Pemrograman VEX AIM menggunakan Python melalui WebSocket.

Dasar#

Di dalam direktori basic , Anda akan menemukan:

Nama File

Keterangan

ai_vision_for_loops.py

Proyek ini menggunakan perulangan For Python yang tepat untuk mengulang data AI Vision guna menghitung titik tengah antara Tong Oranye dan Tong Biru.

angled_moving.py

Proyek ini menggerakkan robot pada sudut 45 derajat dengan kecepatan 100% untuk menelusuri bentuk berlian.

colorful_square.py

Proyek ini membuat robot bergerak mengikuti jalur persegi, dengan mengubah warna LED di setiap titiknya.

conditional_kicker.py

Proyek ini akan memutar robot AIM hingga 180 derajat ke kanan. Jika robot memegang tong berwarna oranye, ia akan menendangnya; jika tidak, robot tidak akan melakukan apa pun.

creating_timeouts.py

Proyek ini akan berputar di tempat sambil mencari tong berwarna oranye. Jika tidak ditemukan dalam waktu 10 detik, akan terdengar suara ‘gagal’ dan pencarian akan berhenti.

emoji_reaction.py

Proyek ini menampilkan emoji bahagia ketika sudut robot stabil dan emoji terkejut ketika miring.

emoji_touch.py

Proyek ini mengubah emoji di layar berdasarkan berapa kali layar ditekan, menampilkan ekspresi yang berbeda untuk setiap penekanan.

get_blue_barrel.py

Proyek ini akan mencari tong biru, pindah ke sana, dan merayakan setelah mendapatkan tong biru tersebut.

led_color_cycle.py

Proyek ini berganti-ganti melalui setiap warna LED, dengan jeda satu detik di antara setiap warna.

level_detector.py

Dalam proyek ini, layar akan menampilkan latar belakang hijau dengan tulisan “FLAT” ketika robot tidak miring. Jika robot miring, layar akan berubah menjadi merah dan menampilkan tulisan “TILTED”.

move_and_stop.py

Proyek ini menggerakkan robot maju sejauh 300 mm dan membunyikan suara “selesai” setelah menyelesaikan pergerakannya.

move_to_apriltag.py

Proyek ini memutar robot hingga mendeteksi AprilTag ID 1, lalu bergerak ke arahnya.

multi_step_pickup.py

Proyek ini berbelok ke kanan hingga menemukan tong berwarna oranye, kemudian bergerak mundur, dan menempatkannya.

musical_thread.py

Proyek ini akan memainkan sebuah lagu (menggunakan notasi) dalam satu thread sambil mengemudi di thread lain secara bersamaan.

object_detection_alert.py

Proyek ini akan menggerakkan robot AIM maju hingga menemukan muatan. Saat terdeteksi, robot akan mengeluarkan bunyi bip dan menghentikan semua pergerakan robot.

obstacle_avoidance.py

Proyek ini akan menggerakkan robot AIM ke depan hingga menemukan muatan. Setelah terdeteksi, robot akan berbelok ke kanan sebesar 45 derajat.

screen_drawing.py

Proyek ini menggambar garis, persegi, dan lingkaran di layarnya, menampilkan nama setiap bentuk saat sedang digambar.

sensor_monitor.py

Proyek ini akan mencetak nilai pengatur waktu, arah, dan orientasi yaw ke layar robot.

tap_to_start.py

Proyek ini menunggu sentuhan layar sentuh sebelum bergerak maju sejauh 200 mm dan menampilkan emoji di ujungnya.

timing_events.py

Proyek ini mulai bergerak maju tetapi berhenti secara otomatis setelah lima detik berlalu, kemudian menampilkan “Waktu habis!” di layar.

Canggih#

Di dalam direktori advanced , Anda akan menemukan:

Nama File

Keterangan

aim_example_base.py

Menyediakan kelas dasar AimExample , yang mengurai argumen, mencoba menemukan IP dari Robot AIM, dan menginisialisasi instance aim.Robot.

fpv.py

Proyek ini memungkinkan pengguna untuk mengontrol robot sambil melakukan streaming gambar dari kamera. LED berwarna hijau saat robot bergerak, dan merah saat robot berhenti.

multiple_robots.py

Proyek ini membuat dua robot bergerak mengikuti jalur persegi, dengan mengubah warna LED di setiap titiknya.

play_sounds.py

Robot tersebut akan memutar file suara lokal, lalu memainkan beberapa nada dari Simfoni No. 5 karya Beethoven.

save_jpg.py

Simpan gambar dalam format JPEG ke sistem file yang ditentukan oleh nama file, defaultnya adalah aim_img.jpg

stream_video.py

Aliran gambar JPEG, menggunakan OpenCV untuk ditampilkan di layar.