
Isi kandungan:
2025 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2025-01-23 15:01
Adakah anda pernah mahukan kaedah automatik untuk mengesan warna objek? Dengan menyinari warna tertentu pada objek dan melihat seberapa banyak cahaya dipantulkan ke belakang, anda dapat mengetahui warna apa objek itu. Contohnya, jika anda memancarkan cahaya merah pada objek merah, cahaya itu akan dipantulkan kembali. Sekiranya anda menyinari cahaya biru pada objek merah, objek itu akan menyerap sebahagian cahaya itu dan kurang dari itu akan dipantulkan kembali.
Langkah 1: Bahagian Diperlukan
Saya menggunakan PIC 16F887 Microcontroller, tetapi hampir semua dengan keupayaan modulasi lebar-nadi akan berfungsi. 1 RGB LED1 Mikrokontroler1 LED merah standard1 1k ohm perintang1 Fotoresistor (mengubah rintangan bergantung pada jumlah cahaya yang bersinar di atasnya) Beberapa wayarSaya hanya memerlukan mikrokontroler dan RGB LED untuk mempunyai pelbagai pengesan warna, tetapi jika anda hanya mahukan litar yang mengesan satu warna, anda tidak memerlukan mikrokontroler - anda hanya memerlukan LED warna terang yang anda ingin mengesan. LED merah standard adalah "LED penunjuk" - ia akan menyala apabila warna yang tepat dikesan.
Langkah 2: Bina Litar
Skema agak mudah, dan dalam bentuk umum, ditunjukkan di bawah. LED RGB dikuasakan secara luaran oleh isyarat PWM. Saya meletakkan pita elektrik di sekitar photoresistor supaya cahaya ambien tidak masuk - hanya cahaya tepat di atasnya yang akan dapat dikesan.
Langkah 3: Kodnya
Kod ini ditulis untuk Microchip PIC 16F887, tetapi semoga anda dapat memperoleh idea umum. Saya menggunakan potensiometer terbina dalam papan pengembangan saya untuk mengubah spektrum warna LED RGB (dan tidak melalui keseluruhan spektrum kerana saya tidak mempunyai 3 modul PWM, tetapi cukup baik) Komen disertakan. #include #include #include "delay.c" #include #include #use delay (jam = 4000000) #FUSES INTRC, NOWDT, NOPUT, NOMCLR, NOPROTECT, NOCPD, NOBROWNOUT, NOIESO, NOFCMEN, NOLVP # byte CCP1CON = 0x17 # byte CCP2CON = 0x1D # byte PWM1CON = 0x9Bint nilai = 128; int p1 = 0; int p2 = 0; batal my_setup_ccp1 (nilai int8) {output_low (PIN_C2); CCP1CON = nilai; PWM1CON = 0;} kosongkan_setup_cc2) {output_low (PIN_C1); CCP2CON = nilai;} // =================================== batal utama () {// A4 = sumber kuasa untuk photodiodeoutput_high (PIN_A4); output_high (PIN_B1); setup_adc (ADC_CLOCK_INTERNAL); set_adc_channel (0); setup_adc_ports (sAN0); // Timer / Interrupt setupenable_interrupts (INT_Perhatian_) my_setup_ccp2 (CCP_PWM); setup_timer_2 (T2_DIV_BY_1, 128, 1); // setup_compare (2, COMPARE_PWM | COMPARE_TIMER2); sementara (1) {// Cegah PIC daripada tidur.//SET PWM DUTY CYCLE output_h // Pin A3 adalah sambungan photodiod jika (input (PIN_A3) == 1) output_high (PIN_A4); output_low lain (PIN_A4); // Nilai potensiometer untuk menukar warna nilai LED = read_adc (); suis (nilai) {kes 0: p1 = nilai; output_low (PIN_C0); p2 = nilai; rehat; kes 50: p1 = nilai; output_high (PIN_C0); p2 = nilai; rehat; kes 100: p1 = nilai; output_high (PIN_C0); p2 = nilai; rehat; kes 150: output_high (PIN_C0); p1 = 50; p2 = nilai; rehat; kes 200: output_low (PIN_C0); p1 = 0; p2 = nilai; rehat; kes 250: p1 = 0; p2 = nilai; output_low (PIN_C0); rehat; } p1 = nilai; p2 = 128 - p1; set_pwm1_duty (p1); set_pwm2_duty (p2);}}
Langkah 4: Permohonan
Alat pengesan warna yang sederhana seperti ini dapat digunakan dalam robotik, atau untuk projek keren seperti memisahkan lego dengan warna, menyusun M & Ms, atau sebagai bantuan untuk rabun warna. Semoga pengajaran ini dapat membantu dalam meningkatkan projek yang anda fikirkan!:) LED bagus untuk banyak perkara….
Disyorkan:
Mesin Cat Pengesanan Warna: 4 Langkah

Mesin Cat Pengesanan Warna: Mesin cat pengesan warna menyalin warna di sekeliling anda dan membolehkan anda melukisnya. Sekiranya anda mempunyai cat warna primer, anda boleh menggunakan sensor warna RGB untuk merasakan warna yang anda inginkan dan mencampurkannya. Tetapi ingat, gunakan objek berwarna terang
Pengesanan Warna Ringkas Menggunakan OpenCV: 6 Langkah

Pengesanan Warna Ringkas Menggunakan OpenCV: Hai! Hari ini saya akan menunjukkan kaedah mudah untuk mengesan warna dari video langsung menggunakan OpenCV dan python. Pada dasarnya saya hanya akan menguji warna yang diperlukan ada di bingkai latar belakang atau tidak dan menggunakan modul OpenCV saya akan menutupi kawasan itu dan
Pengesanan Warna di Python Menggunakan OpenCV: 8 Langkah

Pengesanan Warna di Python Menggunakan OpenCV: Helo! Instruksional ini digunakan untuk membimbing bagaimana mengekstrak warna tertentu dari gambar di python menggunakan perpustakaan openCV. Sekiranya anda baru menggunakan teknik ini, jangan risau, pada akhir panduan ini, anda akan dapat memprogramkan warna anda sendiri
Penjejakan Objek Berasaskan Pengesanan Warna: 10 Langkah

Penjejakan Objek Berasaskan Pengesanan Warna: Kisah Saya melakukan projek ini untuk belajar memproses gambar menggunakan Raspberry PI dan membuka CV. Untuk menjadikan projek ini lebih menarik, saya menggunakan dua motor SG90 Servo dan memasang kamera di atasnya. Satu motor digunakan untuk bergerak secara mendatar dan motor kedua digunakan untuk menggerakkan verticall
Warna USB Menukar Warna: 5 Langkah

Cahaya USB Mengubah Warna: Berikut adalah cahaya yang terbuat dari botol plastik, tali pancing, kabel USB lama dan LED RGB perubahan warna yang perlahan. Benang nilon (tali pancing) tidak mempunyai kesan yang sama dengan gentian optik sebenar. Terdapat lebih banyak penurunan isyarat cahaya sepanjang