
Satura rādītājs:
2025 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2025-01-23 15:00
Vai esat kādreiz vēlējies automatizētu veidu, kā noteikt objekta krāsu? Spīdot uz objekta noteiktas krāsas gaismu un aplūkojot, cik daudz gaismas tiek atstarots atpakaļ, jūs varat noteikt, kādā krāsā objekts ir. Piemēram, ja sarkanajam objektam iedegas sarkana gaisma, šī gaisma tiks atstarota atpakaļ. Ja uz sarkana objekta spīdēsit zilu gaismu, objekts absorbēs daļu no šīs gaismas un mazāk tās tiks atstarots atpakaļ.
1. darbība. Nepieciešamās detaļas
Es izmantoju PIC 16F887 mikrokontrolleru, taču gandrīz jebkurš ar impulsa platuma modulācijas iespēju darbosies. 1 RGB LED1 mikrokontrolleris1 standarta sarkans LED1 1k ohm rezistors nosaka vienu krāsu, jums nav nepieciešams mikrokontrolleris - jums ir nepieciešama tikai spilgta gaismas diodes krāsa, kuru vēlaties noteikt. Standarta sarkanā gaismas diode ir "indikatora gaismas diode" - tā iedegas, kad tiek konstatēta pareizā krāsa.
2. solis: izveidojiet ķēdi
Shēma ir diezgan vienkārša, un tā vispārējā formā ir parādīta zemāk. RGB LED ārēji baro PWM signāls. Es ap fotorezistoru ievietoju elektrisko lenti, lai apkārtējā gaisma neiekļūtu - tiks atklāta tikai gaisma tieši virs tās.
3. darbība: kods
Šis kods tika rakstīts mikroshēmai PIC 16F887, bet, cerams, jūs varat iegūt vispārēju priekšstatu. Es izmantoju iebūvēto potenciometru savā izstrādes panelī, lai mainītu RGB LED krāsu spektru (un tas neiet cauri visam spektram, jo man nav 3 PWM moduļu, bet tas ir pietiekami labi). #include #include #include "delay.c" #include #include #use delay (pulkstenis = 4000000) #FUSES INTRC, NOWDT, NOPUT, NOMCLR, NOPROTECT, NOCPD, NOBROWNOUT, NOIESO, NOFCMEN, NOLVP #baits CCP1CON = 0x17 baits CCP2CON = 0x1D#baits PWM1CON = 0x9Bint vērtība = 128; int p1 = 0; int p2 = 0; void my_setup_ccp1 (int8 vērtība) {output_low (PIN_C2); CCP1CON = vērtība; PWM1CON = 0;} void my_setup_cc2) {output_low (PIN_C1); CCP2CON = vērtība;} // ==================================== void main () {// A4 = strāvas avots fotodiodes izvades_augstumam (PIN_A4); output_high (PIN_B1); setup_adc (ADC_CLOCK_INTERNAL); set_adc_channel (0); setup_adc_ports (sAN0); // Taimeris/Pārtraukt iestatīšanu iespējojami_interpusi (INP) my_setup_ccp2 (CCP_PWM); setup_timer_2 (T2_DIV_BY_1, 128, 1); // setup_compare (2, COMPARE_PWM | COMPARE_TIMER2); bet (1) {// Novērst PIC aizmigšanu. // Pin A3 ir fotodiodes savienojums, ja (ievade (PIN_A3) == 1) output_high (PIN_A4); else output_low (PIN_A4); // Lasīt potenciometra vērtību, lai mainītu LED vērtības krāsu = read_adc (); slēdzis (vērtība) {gadījums 0: p1 = vērtība; output_low (PIN_C0); p2 = vērtība; pārtraukums; 50. gadījums: p1 = vērtība; output_high (PIN_C0); p2 = vērtība; pārtraukums; gadījums 100: p1 = vērtība; output_high (PIN_C0); p2 = vērtība; pārtraukums; 150. gadījums: output_high (PIN_C0); p1 = 50; p2 = vērtība; pārtraukums; gadījums 200: output_low (PIN_C0); p1 = 0; p2 = vērtība; pārtraukums; 250. gadījums: p1 = 0; p2 = vērtība; output_low (PIN_C0); pārtraukums; } p1 = vērtība; p2 = 128 - p1; set_pwm1_duty (p1); set_pwm2_duty (p2);}}
4. solis: lietojumprogrammas
Šādu vienkāršu krāsu detektoru var izmantot robotikā vai foršos projektos, piemēram, lego atdalīšanai pēc krāsas, M & M šķirošanai vai palīglīdzeklim krāsu akluma gadījumā. Cerams, ka šī pamācība palīdzēja uzlabot jūsu iecerēto projektu!:) Gaismas diodes ir piemērotas tik daudzām lietām….
Ieteicams:
Vibrāciju noteikšana, izmantojot pjezoelektrisko triecienu pieskāriena sensora moduli: 6 soļi

Vibrāciju noteikšana, izmantojot pjezoelektriskā trieciena pieskāriena sensora moduli: Šajā apmācībā mēs uzzināsim, kā noteikt trieciena vibrācijas, izmantojot vienkāršu pjezoelektrisko sensoru vibrācijas moduli un Visuino. Noskatieties demonstrācijas video
Krāsu noteikšanas krāsu iekārta: 4 soļi

Krāsu noteikšanas krāsu iekārta: Krāsu noteikšanas krāsu iekārta kopē krāsas ap jums un ļauj zīmēt ar tām. Ja jums ir primāro krāsu krāsa, varat izmantot RGB krāsu sensoru, lai saprastu vēlamo krāsu un to sajauktu. Bet atcerieties, izmantojiet spilgtas krāsas objektu
Vienkārša krāsu noteikšana, izmantojot OpenCV: 6 soļi

Vienkārša krāsu noteikšana, izmantojot OpenCV: Sveiki! Šodien es parādīšu vienkāršu metodi krāsu noteikšanai no tiešraides video, izmantojot OpenCV un python. Būtībā es tikai pārbaudīšu, vai vajadzīgā krāsa ir fona rāmī vai nav, un, izmantojot OpenCV moduļus, es maskēšu šo reģionu un
Krāsu noteikšana programmā Python, izmantojot OpenCV: 8 soļi

Krāsu noteikšana Python, izmantojot OpenCV: Sveiki! Šo pamācību izmanto, lai norādītu, kā iegūt noteiktu krāsu no attēla python, izmantojot openCV bibliotēku. Ja neesat iepazinies ar šo tehniku, neuztraucieties, šīs rokasgrāmatas beigās jūs varēsit ieprogrammēt savu krāsu
Pārslēdziet RGB gaismas diodi caur krāsu spektru, izmantojot Raspberry Pi 2 un Scratch: 11 soļi

Pārslēdziet RGB gaismas diodi, izmantojot krāsu spektru, izmantojot Raspberry Pi 2 un Scratch: Atjaunināšanas piezīmes, 2016. gada 25. februāris: Esmu uzlabojis Scratch programmu un pārveidojis savu pamācību. Sveiki, puiši, ar šo projektu es gribēju izmantot Scratch, lai RGB gaismas diodi izlaistu cauri krāsu spektram. Ir daudz projektu, kas to dara ar