Menguji spoonBot#
spoonBot adalah robot penggerak diferensial sederhana dengan sendok yang terhubung ke servo yang memungkinkannya untuk pan dan tilt. Lihat halaman spoonBot-Construction untuk informasi tentang membangun spoonBot. Program contoh yang disertakan dengan distribusi cc3 terbaru berisi kode contoh yang mendemonstrasikan cara memindahkan spoonBot serta menjalankan mode Demo spoonBot. Mode Demo spoonBot mirip dengan mode demo CMUcam2 hanya saja ia menggunakan spoonBot untuk pan dan tilt.
Mengkalibrasi spoonBot#
Sebelum menggunakan spoonBot, Anda perlu mengkalibrasi pengaturan servo Anda. Ini dilakukan dengan mengatur struktur data berikut di bagian atas main:
// SpoonBot Calibration Points
// Assume Left = Servo 0
// Assume Right = Servo 1
// Assume Spoon = Servo 2
my_cal.left_mid = 71;
my_cal.right_mid = 77;
my_cal.spoon_down = 100;
my_cal.spoon_mid = 202;
my_cal.spoon_up = 255;
my_cal.left_dir = 1;
my_cal.right_dir = -1;
my_cal.spoon_dir = 1;
// Set the calibration points
spoonBot_calibrate (my_cal);
Flash firmware emulasi cmucam2 ke kamera
Buka CMUcam3 Frame Grabber atau Program Terminal
Menggunakan Frame Grabber, pergi ke panel "Settings" dan seret bilah servo untuk mengubah nilai
Di terminal, ketik "sv <servo-id> <servo-value>" untuk mengatur servo misalnya:
:sv 0 77 ACK
Temukan posisi tengah Servo 0 dan 1 dengan menyesuaikannya hingga roda berhenti
my_cal.left_mid = <nilai dari servo 0>
my_cal.righ_mid = <nilai dari servo 1>
Sekarang Anda perlu menemukan tanda arah
Melihat spoonBot dari belakang (sendok menghadap Anda) coba turunkan angka servo 0 yang seharusnya adalah roda kiri
jika servo berputar searah jarum jam / mundur (ke arah Anda) maka left_dir harus diatur ke 1
jika servo berputar berlawanan arah jarum jam, left_dir harus diatur ke -1
Ulangi untuk servo 1 (yang seharusnya adalah roda kanan dari sudut pandang spoonBot)
jika servo berputar searah jarum jam / mundur (ke arah Anda) maka right_dir harus diatur ke 1
jika servo berputar berlawanan arah jarum jam, right_dir harus diatur ke -1
Biasanya, satu servo harus diatur ke negatif!
Sekarang temukan posisi sendok Min, Middle, dan Max dengan menyesuaikan Servo 2
Min seharusnya nilai terkecil yang mendorong sendok ke bawah dan karenanya memiringkan spoonBot ke depan
Atur spoon_down sesuai kebutuhan
Max biasanya 255 dan seharusnya memposisikan spoonBot melihat setinggi mungkin
Atur spoon_up sesuai kebutuhan
Middle adalah nilai yang membuat servo rata
Atur spoon_mid sesuai kebutuhan
Jika Min dan Max tampak terbalik, ubah spoon_dir menjadi -1
Setelah kalibrasi selesai, kompilasi ulang proyek dan FLASH CMUcam3. spoonBot pertama-tama akan menjalankan serangkaian gerakan terskrip untuk memastikan servo diatur dengan benar. Kemudian spoonBot akan menunggu penekanan tombol untuk mulai melacak warna. Teks ditampilkan melalui port serial memberi tahu Anda tentang berbagai tahap operasi.
Gerakan yang diskripkan seharusnya sebagai berikut:
Diam di Tempat
Lihat ke Bawah
Lihat ke Atas
Kembali ke Posisi Tengah
Putar Searah Jarum Jam (dilihat dari atas)
Putar Berlawanan Arah Jarum Jam
Led Merah mati saat kamera bersiap
Led Merah menyala ketika siap melacak
Jika ini terlihat benar, maka coba pegang objek berwarna cerah beberapa inci di depan kamera dan kemudian tekan tombol. Saat Anda menarik objek menjauh, spoonBot seharusnya berputar ke arahnya. Gunakan objek berwarna cerah yang seseragam mungkin dalam warna. Objek seperti kain merah cerah akan bekerja dengan baik karena memantulkan sangat sedikit cahaya (selain merah murni). Pastikan ada cukup pencahayaan di ruangan. Coba ambil frame untuk melihat seperti apa kondisinya.
Catatan: Jika Anda ingin menonaktifkan servo tanpa mencabutnya, lepaskan servo-power-jumper.