Menggunakan Sensor Penglihatan - C++
Kotak Alat Guru
-
Tujuan Kegiatan Ini
Penggunaan Sensor Penglihatan secara efektif mengharuskan siswa mampu mengonfigurasinya dan menyetelnya tergantung pada lingkungan di mana ia berada. Dalam kegiatan berikut, siswa akan mempelajari cara melakukan keduanya.
Untuk informasi lebih lanjut tentang pemrograman Sensor Penglihatan dengan VEXcode V5, kunjungi informasi bantuan untukC++dalamPustaka VEX.
Berikut ini adalah garis besar apa yang akan dilakukan siswa Anda dalam kegiatan ini:
-
Buka proyek contoh Mendeteksi Objek (Visi).
-
Konfigurasikan Sensor Penglihatan.
-
Jalankan proyek contoh Mendeteksi Objek (Visi).
-
Diskusikan dan Renungkan.
-
Sesuaikan Sensor Penglihatan.
Tips Guru
Jika ini adalah pertama kalinya siswa menggunakan VEXcode V5, mereka dapat mengaksesartikel bantuandiVEX Library.
Tips Guru
-
Menggunakan Pelengkapan Otomatis
Pelengkapan otomatis adalah fitur dalam VEXcode V5 yang memprediksi sisa perintah yang sedang Anda ketik. Saat siswa mengerjakan VEXcode V5, dorong mereka untuk menggunakan fitur Pelengkapan Otomatis untuk membantu sintaksis.

Artikel Pelengkapan Otomatis untukC++membahas cara menggunakan fitur Pelengkapan Otomatis.
Dapatkan perangkat keras yang diperlukan, buku catatan teknik Anda, dan buka VEXcode V5.
| Kuantitas | Bahan-bahan yang Dibutuhkan |
|---|---|
| 1 |
Kit Pemula Kelas VEX V5 |
| 1 |
VEXcode V5 (versi terbaru, Windows, MacOS) |
| 1 |
Buku Catatan Teknik |
| 1 |
Mengonfigurasi Sensor Penglihatan (Perpustakaan VEX) |
| 1 |
Menyetel Sensor Penglihatan (Perpustakaan VEX) |
| 1 |
Contoh proyek Deteksi Objek (Visi) |
Kegiatan ini akan memberi Anda alat untuk menggunakan Sensor Penglihatan.
Anda dapat menggunakan informasi Bantuan (C++) di dalam VEXcode V5 untuk mempelajari instruksinya.
Langkah 1: Buka Proyek Contoh
VEXcode V5 berisi banyak contoh proyek 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.

- Gunakan bilah filter di bagian atas aplikasi dan pilih "Penginderaan."

Pilih dan buka proyek contoh Mendeteksi Objek (Visi).
![]()
Simpan proyek Anda sebagai Mendeteksi Objek.
- Periksa untuk memastikan nama proyek Mendeteksi Objek sekarang ada di jendela di tengah bilah alat.

Tips Guru
-
Pastikan siswa telah memilih Buka Contoh dari menu File.
-
Pastikan siswa telah memilih proyek Contoh Mendeteksi Objek (Visi) Anda dapat menunjukkan kepada siswa bahwa ada beberapa pilihan untuk 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 jika Anda meminta siswa untuk menyerahkannya.
-
Karena VEXcode V5 memiliki fitur penyimpanan otomatis, tidak perlu menyimpan proyek lagi setelah disimpan pertama kali.
-
Jika siswa memerlukan bantuan dalam menabung, arahkan mereka ke salah satu artikel berikut:
Langkah 2: Mengonfigurasi dan Menggunakan Sensor Penglihatan
- Mulailah dengan membacaVision Sensor - Robot Config - VEXcode V5.
- Kemudian, bacaPenyesuaian Sensor Visi-Konfigurasi Robot-VEXcode V5
- Selanjutnya, konfigurasikan Sensor Penglihatan untuk tiga objek berwarna: merah, hijau, dan biru.
Buka proyek contoh Mendeteksi Objek (Visi) yang disimpan sebelumnya.
Bagaimana Sensor Penglihatan digunakan dalam proyek ini? Prediksikan apa yang akan terjadi saat proyek dijalankan dan tuliskan prediksi tersebut di buku catatan teknik Anda.
#include "vex.h"
menggunakan namespace vex;
event checkBlue = event();
event checkRed = event();
event checkGreen = event();
// Akan memeriksa apakah ada objek biru dalam tampilan Sensor Vision
dan menampilkan hasilnya pada baris 1 layar V5 Brain.
void has BlueCallback() {
Brain.Screen.clearLine(1);
Brain.Screen.setCursor(1, 1);
Vision5.takeSnapshot(Vision5__BLUEBOX);
if (Vision5.objectCount > 0) {
Brain.Screen.print("Objek Biru Ditemukan");
} else {
Brain.Screen.print("Tidak Ada Objek Biru");
}
}
// Akan memeriksa untuk melihat apakah ada objek merah dalam tampilan Vision
// Sensor dan menampilkan hasilnya pada baris 3 layar V5 Brain.
void has RedCallback() {
Brain.Screen.clearLine(3);
Brain.Screen.setCursor(3, 1);
Vision5.takeSnapshot(Vision5__REDBOX);
if (Vision5.objectCount > 0) {
Brain.Screen.print("Objek Merah Ditemukan");
} else {
Brain.Screen.print("Tidak Ada Objek Merah");
}
}
// Akan memeriksa untuk melihat apakah ada objek hijau dalam tampilan Vision
// Sensor dan menampilkan hasilnya pada baris ke-5 layar V5 Brain.
void has GreenCallback() {
Brain.Screen.clearLine(5);
Brain.Screen.setCursor(5, 1);
Vision5.takeSnapshot(Vision5__GREENBOX);
if (Vision5.objectCount > 0) {
Brain.Screen.print("Objek Hijau Ditemukan");
} else {
Brain.Screen.print("Tidak Ada Objek Hijau");
}
}
// Mulai kode proyek
int main() {
// Menginisialisasi Konfigurasi Robot. JANGAN DIHAPUS!
vexcodeInit();
// Daftarkan event handler
checkBlue (hasBlueCallback);
checkRed (hasRedCallback);
checkGreen (hasGreenCallback);
// Penundaan kecil untuk memastikan event handler siap digunakan
wait(15, msec);
// Atur font cetak untuk semua cetakan mendatang ke layar V5
Brain.Screen.setFont(mono40);
// Jalankan terus-menerus untuk memeriksa data sensor baru
while (true) {
checkBlue.broadcastAndWait();
checkRed.broadcastAndWait();
checkGreen.broadcastAndWait();
wait(0.1, seconds);
}
}- Unduh dan jalankanproyek. Letakkan objek berwarna berbeda di depan Sensor Penglihatan dan amati perilaku robot. Catat dalam buku catatan teknik Anda bagaimana prediksi Anda berbeda atau benar dibandingkan dengan apa yang sebenarnya Anda amati dari proyek.
Tips Guru
Ketiga objek berwarna tersebut tidak harus berbentuk kubus, melainkan dapat berupa objek apa pun yang berukuran relatif kecil, yaitu hijau, merah, dan biru.
Motivasi Diskusi
-
Jawaban
Fasilitasi diskusi kelas agar siswa dapat berbagi prediksi mereka tentang hasil proyek ini di buku catatan teknik mereka, dan juga renungkan cara mengonfigurasi Sensor Visi.
Fasilitasi diskusi dengan mengajukan pertanyaan-pertanyaan berikut:
-
Apa saja langkah untuk mengonfigurasi Sensor Penglihatan?
-
Apa fungsi strukturjika maka yang lain?
-
Apa yang terjadi pada cara Sensor Penglihatan mendeteksi objek jika kita berpindah ruangan?
Jawabannya akan bervariasi:
-
Siswa harus memperhatikan bahwa nama objek harus diputuskan. Objek harus diletakkan dalam bingkai Sensor Penglihatan dan didiamkan menggunakan tombol "Bekukan". Warna kemudian akan dipilih dan dikonfigurasi menggunakan tombol "Set". Siswa harus menguraikan langkah-langkah yang tercantum dalam artikel ini
-
Strukturif then elsemenjalankan instruksi di dalam bagian pertama atau kedua dariif then elseberdasarkan nilai Boolean yang dilaporkan. Informasi lebih lanjut tentang cara menggunakan instruksi ini dapat ditemukan dalam informasi Bantuan.
-
Jika Sensor Penglihatan diminta untuk mendeteksi objek di lingkungan yang berbeda, pencahayaan dapat berubah dan warna objek dapat tampak berbeda. Hal ini dapat menyulitkan Sensor Penglihatan untuk mendeteksi objek.
Langkah 3: Menyetel Sensor Penglihatan
Sering kali suatu objek dikonfigurasikan untuk dikenali oleh Sensor Penglihatan di satu lingkungan, 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 sering kali terjadi karena perubahan pencahayaan setelah Sensor Penglihatan telahdikonfigurasi. Untuk mengatasi masalah ini, Anda mungkin harus menyetel Sensor Penglihatan Anda.
- Mulailah dengan membacaMenyesuaikan Sensor Penglihatan V5 di VEXcode V5.
- Berikutnya, sesuaikan Sensor Penglihatan untuk tiga objek berwarna: merah, hijau, dan biru.
Buka proyek contoh Mendeteksi Objek (Visi) yang disimpan sebelumnya.
Bagaimana pengaturan Sensor Penglihatan akan mempengaruhi kemampuannya mendeteksi objek? Bawa Clawbot ke bagian ruangan lain yang memiliki lebih banyak atau lebih sedikit cahaya.
- Unduh dan jalankanproyek. Letakkan objek berwarna berbeda di depan Sensor Penglihatan dan amati perilaku robot. Dokumentasikan dalam buku catatan teknik Anda seberapa baik Sensor Penglihatan mendeteksi objek. Apakah Sensor Penglihatan perlu disetel setelah berpindah lokasi?
- Sesuaikan Sensor Penglihatan seperlunya. Uji Sensor Penglihatan setelah disetel untuk menentukan apakah ia dapat mendeteksi objek dengan lebih baik dan membuat penyesuaian seperlunya.
Memotivasi Diskusi
-
Merefleksikan Kegiatan
T:Apakah Sensor Penglihatan mendeteksi objek seperti yang Anda harapkan?
J:Jawaban akan bervariasi; namun, tujuan pertanyaan ini adalah untuk meningkatkan pemikiran kognitif. Siswa harus 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 beragam, respons yang umum adalah jika robot menggunakan Sensor Penglihatan dan dibawa ke kompetisi atau bahkan digunakan dalam permainan atau tantangan, seberapa baik kinerja robot akan bergantung pada keakuratan Sensor Penglihatan. Penyetelannya penting untuk akurasi.
Perluas Pembelajaran Anda
-
Beberapa Objek
Minta siswa untuk menjalankan proyek Mendeteksi Objek (Visi) dan menempatkan lebih dari satu objek yang dikonfigurasi di depan Sensor Visi. Apa yang terjadi? Minta mereka untuk mendokumentasikan temuan mereka di buku catatan teknik mereka.
Sekarang, minta siswa untuk meletakkan satu objek yang dikonfigurasi dan satu objek yang tidak diketahui atau tidak 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 dikonfigurasi di depan Sensor Penglihatan? Minta siswa untuk menuliskan prediksi mereka sebelum mengujinya. Minta mereka untuk mencatat pengamatan mereka setelah mengujinya.

Memfasilitasi diskusi tentang apa yang diprediksi dan diamati siswa.
Fasilitasi diskusi dengan bertanya:
- Apa perbedaan antara satu, dua, dan tiga objek?
- Apakah Anda akan menyesuaikan proyek dengan cara apa pun untuk mengenali beberapa objek?
