Langsung ke konten utama

Menggunakan Sensor Penglihatan - Python

Ikon Kotak Peralatan Guru Kotak Peralatan Guru - Tujuan Bagian Ini

Penggunaan sensor penglihatan secara efektif membutuhkan kemampuan siswa untuk mengkonfigurasi dan menyesuaikannya sesuai dengan lingkungan tempatnya berada. Pada kegiatan berikut, siswa akan mempelajari cara melakukan keduanya.

Untuk informasi lebih lanjut tentang pemrograman Sensor Penglihatan dengan VEXcode V5, kunjungi informasi bantuan di VEXcodeatau lihat Bagian dari Pustaka VEX

Berikut ini adalah garis besar kegiatan yang akan dilakukan siswa Anda dalam aktivitas ini:

  • Buka proyek contoh Mendeteksi Objek (Visi).

  • Konfigurasikan Sensor Penglihatan.

  • Jalankan proyek contoh Mendeteksi Objek (Visi).

  • Diskusikan dan Renungkan.

  • Lakukan penyetelan pada sensor penglihatan.

Ikon Tips Guru Tips untuk Guru

Jika ini adalah kali pertama siswa menggunakan VEXcode V5, mereka dapat mengakses banyak artikel bermanfaat di VEX Library. 

Ikon Tips Guru Tips untuk Guru - Menggunakan Fitur Pelengkapan Otomatis

Fitur pelengkapan otomatis (autocomplete) di VEXcode V5 memprediksi sisa perintah yang Anda ketik. Saat siswa mengerjakan tugas di VEXcode V5, dorong mereka untuk menggunakan fitur Autocomplete untuk membantu memahami sintaks Python. Anda mungkin akan melihat fungsi pelengkapan otomatis saat mulai mengetik perintah. Gunakan tombol “Atas” dan “Bawah” untuk memilih nama yang Anda inginkan, lalu tekan “Tab” atau (Enter/Return) pada keyboard Anda untuk menyimpan pilihan. Untuk informasi lebih lanjut tentang penggunaan Autocomplete artikel.VEXcode V5 dengan bagian Drivetrain dari perintah yang diketik di sebelah kiri, dan di sebelah kanan, daftar opsi pelengkapan otomatis yang dapat digulir untuk perintah tersebut ditampilkan.

Siapkan perangkat keras yang dibutuhkan, buku catatan teknik Anda, dan buka VEXcode V5.

Bahan-bahan yang Dibutuhkan:
Kuantitas Bahan-bahan yang Dibutuhkan
1

Perangkat Awal Kelas VEX V5

1

VEXcode V5 (versi terbaru, Windows, macOS)

1

Buku Catatan Teknik

1

Mengkonfigurasi Sensor Penglihatan (Pustaka VEX)

1

Menyetel Sensor Penglihatan (Pustaka VEX)

1

Proyek contoh Deteksi Objek (Visi)

Aktivitas ini akan memberi Anda alat untuk menggunakan Sensor Penglihatan.

Anda dapat menggunakan informasiHelpdi dalam VEXcode V5 untuk mempelajari tentang perintah-perintahnya.

VEXcode V5 ditampilkan dengan Toolbox terbuka di paling kiri, dan Bantuan untuk perintah Drive terbuka di paling kanan. Bantuan tersebut menampilkan definisi perintah dan informasi tentang cara penggunaannya.

Langkah 1: Buka Proyek Contoh

VEXcode V5 berisi banyak proyek contoh yang berbeda. Anda akan menggunakan salah satunya dalam eksplorasi ini.

Buka proyek contoh Mendeteksi Objek (Visi) dengan menyelesaikan langkah-langkah berikut:

  • Buka menu File.
  • Pilih Buka Contoh.

Toolbar VEXcode V5 dengan menu File terbuka dan Open Examples disorot dalam kotak merah. Open Examples adalah item menu keempat di bawah New Blocks Project, New Text Project, dan Open.

  • Gunakan bilah filter di bagian atas aplikasi dan pilih "Sensing."

Contoh jendela pemilihan proyek di VEXcode V5 menunjukkan filter Sensing terpilih di bagian atas, ditandai dengan kotak merah. Berikut beberapa contoh ikon proyek.

Pilih dan buka proyek contoh Mendeteksi Objek (Visi).

Contoh ikon proyek bertuliskan "Detecting Objects Vision" di bagian bawah dan menampilkan ikon robot dengan sensor di sebelah kiri serta sketsa yang menunjukkan deteksi di sebelah kanan.

Simpan proyek Anda sebagai Mendeteksi Objek.

  • Periksa untuk memastikan nama proyek Detecting Objects sekarang ada di jendela di tengah bilah alat.

Ikon Tips Guru Tips untuk Guru

  • Pastikan siswa telah memilih Buka Contoh dari menu File.

  • Pastikan siswa telah memilih proyek Contoh Mendeteksi Objek (Penglihatan). Anda dapat menunjukkan kepada siswa bahwa ada beberapa pilihan yang dapat dipilih pada halaman Contoh Terbuka.

  • Anda dapat meminta siswa untuk menambahkan inisial mereka atau nama kelompok mereka ke nama proyek. Ini akan membantu membedakan program-program tersebut jika Anda meminta siswa untuk mengirimkannya.

  • Karena VEXcode V5 memiliki fitur simpan otomatis, tidak perlu menyimpan proyek lagi setelah disimpan untuk pertama kalinya.

  • Jika siswa membutuhkan bantuan dalam menabung, arahkan mereka ke salah satu artikel berikut: 

Langkah 2: Mengkonfigurasi dan Menggunakan Sensor Penglihatan

Jendela konfigurasi Sensor Penglihatan menampilkan gambar tangan yang memegang kubus merah di sebelah kiri, dengan lapisan di atas kubus dan tulisan REDBOX dan W142 H142 di atasnya. Di sebelah kanan, terdapat 3 tanda warna yang ditetapkan untuk BlueBox, Redbox, dan Greenbox.

Buka proyek contoh Mendeteksi Objek (Vision) yang sebelumnya telah disimpan.

Bagaimana sensor penglihatan digunakan dalam proyek ini? Prediksikan apa yang akan terjadi ketika proyek dijalankan dan catat prediksi tersebut di buku catatan teknik Anda.

  # Impor pustaka
from vex import *

# Mulai kode proyek

check_red = Event()
check_blue = Event()
check_green = Event()

# Akan memeriksa apakah ada objek biru yang terlihat oleh sensor penglihatan
# dan menampilkan hasilnya pada baris 1 di layar V5 Brain
def has_blue_callback():
    brain.screen.clear_row(1)
    brain.screen.set_cursor(1, 1)
    vexcode_vision_5_objects = vision_5.take_snapshot(vision_5__BLUEBOX)
    if vexcode_vision_5_objects and len(vexcode_vision_5_objects) > 0:
        brain.screen.print("Objek Biru Ditemukan")
    else:
        brain.screen.print("Tidak Ada Objek Biru")

# Akan memeriksa apakah ada objek merah yang terlihat oleh sensor penglihatan
# sensor dan menampilkan hasilnya pada baris 3 di layar V5 Brain
def has_red_callback():
    brain.screen.clear_row(3)
    brain.screen.set_cursor(3, 1)
    vexcode_vision_5_objects = vision_5.take_snapshot(vision_5__REDBOX)
    if vexcode_vision_5_objects and len(vexcode_vision_5_objects) > 0:
        brain.screen.print("Objek Merah Ditemukan")
    else:
        brain.screen.print("Tidak Ada Objek Merah")

# Akan memeriksa apakah ada objek hijau yang terlihat oleh vision
# sensor dan menampilkan hasilnya pada baris 5 di layar V5 Brain
def has_green_callback():
    brain.screen.clear_row(5)
    brain.screen.set_cursor(5, 1)
    vexcode_vision_5_objects = vision_5.take_snapshot(vision_5__GREENBOX)
    if vexcode_vision_5_objects and len(vexcode_vision_5_objects) > 0:
        brain.screen.print("Objek Hijau Ditemukan")
    else:
        brain.screen.print("Tidak Ada Objek Hijau")

# daftarkan event handler
check_blue(has_blue_callback)
check_red(has_red_callback)
check_green(has_green_callback)

# penundaan kecil untuk memastikan bahwa event handler siap digunakan
wait(15, MSEC)

# atur font cetak untuk semua cetakan selanjutnya ke layar V5
brain.screen.set_font(FontType.MONO40)

# terus berjalan untuk memeriksa data sensor baru
while True:
    check_blue.broadcast_and_wait()
    check_red.broadcast_and_wait()
    check_green.broadcast_and_wait()
    wait(0.1, SECONDS)
  • Unduh dan jalankan proyek tersebut. Letakkan objek dengan warna berbeda di depan Sensor Penglihatan dan amati perilaku robot. Catatlah dalam buku catatan teknik Anda bagaimana prediksi Anda berbeda atau benar dibandingkan dengan apa yang sebenarnya Anda amati dari proyek tersebut.

Ikon Tips Guru Tips untuk Guru

Ketiga benda berwarna tersebut tidak harus berbentuk kubus, bisa berupa benda berukuran relatif kecil berwarna hijau, merah, dan biru.

Ikon Motivasi Diskusi Diskusi yang Mendorong - Jawaban

Fasilitasi diskusi kelas agar siswa dapat berbagi prediksi mereka tentang apa yang akan dilakukan proyek ini di buku catatan teknik mereka, dan juga merefleksikan cara mengkonfigurasi Sensor Penglihatan.
diskusi dengan mengajukan pertanyaan pertanyaan berikut:

  1. Apa langkah-langkah untuk mengkonfigurasi Sensor Penglihatan?

  2. Apa fungsi dari strukturif else?

  3. Apa yang akan terjadi pada cara Sensor Penglihatan mendeteksi objek jika kita berpindah ruangan?

Jawabannya akan beragam:

  1. Para siswa perlu memperhatikan bahwa nama objek tersebut harus ditentukan sendiri. Objek harus ditempatkan di dalam bingkai Sensor Penglihatan dan dihentikan dengan menggunakan tombol "Bekukan". Warna kemudian akan dipilih dan dikonfigurasi menggunakan tombol "Atur". Para siswa harus menguraikan langkah-langkah yang tercantum dalam.

  2. Strukturif elsemenjalankan instruksi di dalam bagian pertama atau kedua dariif elseberdasarkan nilai Boolean yang dilaporkan. Informasi lebih lanjut tentang cara menggunakan petunjuk ini dapat ditemukan di bagian Bantuan.

  3. Jika Sensor Penglihatan diminta untuk mendeteksi objek di lingkungan yang berbeda, pencahayaan dapat berubah dan warna objek dapat terlihat berbeda. Hal ini dapat mempersulit Sensor Penglihatan untuk mendeteksi objek.

Langkah 3: Menyetel Sensor Penglihatan

Seringkali suatu objek dikonfigurasi agar dikenali oleh Sensor Penglihatan di satu lingkungan tertentu, misalnya, di ruang kelas. Ketika Sensor Penglihatan kemudian dibawa ke lingkungan yang berbeda, seperti lingkungan kompetisi, objek tersebut mungkin tidak dikenali oleh Sensor Penglihatan. Hal ini seringkali disebabkan oleh perubahan pencahayaan setelah Sensor Penglihatan telah dikonfigurasi. Untuk mengatasi masalah ini, Anda mungkin perlu menyetel Sensor Penglihatan Anda.

Jendela konfigurasi Sensor Penglihatan dengan tangan memegang kubus merah dengan lapisan di atas kubus dan teks bertuliskan redbox dan x84 y 28 lalu w 158 h 166. Di sebelah kanan, tanda warna Bluebox, Redbox, dan Greenbox diatur dengan penggeser yang disorot dalam kotak merah dengan penunjuk yang disetel ke 4,4.

Buka proyek contoh Mendeteksi Objek (Visi) yang sebelumnya telah disimpan.

Bagaimana penyetelan Sensor Penglihatan akan memengaruhi seberapa baik sensor tersebut dapat mendeteksi objek? Bawa Clawbot ke bagian ruangan yang berbeda dengan pencahayaan yang lebih terang atau lebih redup.

V5 Clawbot di lapangan dengan lengan terentang dan cakar terbuka mengelilingi kotak ungu.

  • Unduh dan jalankan proyek tersebut. Letakkan objek dengan warna berbeda di depan Sensor Penglihatan dan amati perilaku robot. Catat dalam buku catatan teknik Anda seberapa baik Sensor Penglihatan mendeteksi objek. Apakah sensor penglihatan perlu disetel ulang setelah dipindahkan ke lokasi lain?
  • Sesuaikan Sensor Penglihatan sesuai kebutuhan. Uji sensor penglihatan setelah disetel untuk menentukan apakah sensor tersebut dapat mendeteksi objek dengan lebih baik dan lakukan penyesuaian seperlunya.

Ikon Motivasi Diskusi Memotivasi Diskusi - Refleksi atas Aktivitas

T: Apakah Sensor Penglihatan mendeteksi objek seperti yang Anda harapkan?
J: Jawaban akan bervariasi; namun, tujuan pertanyaan ini adalah untuk mendorong pemikiran kognitif. Siswa perlu memperhatikan bahwa kemampuan Sensor Penglihatan untuk mendeteksi objek dapat berubah tergantung pada lingkungan dan cahaya.

T: Mengapa penting untuk dapat menyetel Sensor Penglihatan sesuai kebutuhan?
J: Meskipun jawabannya mungkin bervariasi, jawaban umum adalah bahwa jika robot menggunakan Sensor Penglihatan dan dibawa ke kompetisi atau bahkan digunakan dalam permainan atau tantangan, seberapa baik kinerja robot akan bergantung pada akurasi Sensor Penglihatan tersebut. Menyetelnya sangat penting untuk akurasi.

Perluas Pembelajaran Anda Perluas Pembelajaran Anda - Beberapa Objek

Mintalah siswa untuk menjalankan proyek Mendeteksi Objek (Penglihatan) dan menempatkan lebih dari satu objek yang telah dikonfigurasi di depan Sensor Penglihatan. Apa yang terjadi? Minta mereka untuk mendokumentasikan temuan mereka di buku catatan teknik mereka.
, minta siswa untuk menempatkan satu objek yang telah dikonfigurasi dan satu objek yang tidak diketahui atau belum dikonfigurasi di depan Sensor Penglihatan. Apa yang terjadi? Minta mereka untuk mendokumentasikan temuan mereka di buku catatan teknik mereka.

Tanyakan kepada siswa sebelum mengujinya, apa yang akan terjadi jika mereka menempatkan tiga objek yang telah dikonfigurasi di depan Sensor Penglihatan? Mintalah siswa untuk menuliskan prediksi mereka sebelum mengujinya. Mintalah mereka untuk mencatat pengamatan mereka setelah mengujinya.

Antarmuka Vision Sensor Utility menunjukkan dua tangan memegang Greenbox dan Redbox di jendela sebelah kiri. Setiap kubus berwarna memiliki lapisan data di atasnya. Di sebelah kanan, tanda tangan untuk Bluebox, Redbox, Greenbox, dan Yellowbox sudah tertera.

Fasilitasi diskusi tentang apa yang diprediksi dan diamati oleh siswa.

Fasilitasi diskusi dengan mengajukan pertanyaan:

  • Apa perbedaan antara satu, dua, dan tiga objek?
  • Apakah Anda akan menyesuaikan proyek ini dengan cara apa pun agar dapat mengenali banyak objek?