
Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02
Har du noen gang ønsket en automatisk måte å oppdage fargen på et objekt? Ved å skinne lys av en bestemt farge på objektet og se på hvor mye lys som reflekteres tilbake, kan du fortelle hvilken farge objektet har. For eksempel, hvis du skinner et rødt lys på et rødt objekt, vil det lyset bli reflektert tilbake. Hvis du skinner et blått lys på et rødt objekt, vil objektet absorbere noe av det lyset og mindre av det vil bli reflektert tilbake.
Trinn 1: Nødvendige deler
Jeg brukte en PIC 16F887 mikrokontroller, men nesten alle med pulsbreddemoduleringsevne vil fungere. 1 RGB LED1 Mikrokontroller 1 Standard rød LED 1 1 k ohm motstand 1 Fotoresistor (endrer motstand avhengig av mengden lys som lyste på den) Noen ledninger Jeg trenger bare mikrokontrolleren og RGB LED for å ha et bredt spekter av fargedetektorer, men hvis du bare vil ha en krets som oppdager en farge, du trenger ikke en mikrokontroller - du trenger bare en lysende LED av fargen du vil oppdage. Den vanlige røde LED -en er "indikator -LED" - den lyser når riktig farge oppdages.
Trinn 2: Bygg kretsen
Skjematikken er ganske enkel, og er generelt vist nedenfor. RGB -LED -en drives eksternt av et PWM -signal. Jeg legger elektrisk tape rundt fotoresistoren slik at omgivelseslys ikke kommer inn - bare lyset rett over det vil bli oppdaget.
Trinn 3: Koden
Denne koden ble skrevet for en Microchip PIC 16F887, men forhåpentligvis kan du få den generelle ideen. Jeg brukte det innebygde potensiometeret på utviklingsbordet mitt for å variere fargespekteret til RGB LED (og det går ikke gjennom hele spekteret fordi jeg ikke har 3 PWM-moduler, men det er bra nok) Kommentarer inkludert. #include #include #include "delay.c" #include #include #use delay (clock = 4000000) #FUSES INTRC, NOWDT, NOPUT, NOMCLR, NOPROTECT, NOCPD, NOBROWNOUT, NOIESO, NOFCMEN, NOLVP #byte CCP1CON = 0x17 # byte CCP2CON = 0x1D#byte PWM1CON = 0x9Bint verdi = 128; int p1 = 0; int p2 = 0; void my_setup_ccp1 (int8 verdi) {output_low (PIN_C2); CCP1CON = verdi; PWM1CON = 0;} ugyldig my_setup_cc2 {output_low (PIN_C1); CCP2CON = verdi;} // ========================================= ugyldig hovedtype () {// A4 = strømkilde for fotodiodeoutput_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_TIMER_); my_setup_ccp2 (CCP_PWM); setup_timer_2 (T2_DIV_BY_1, 128, 1); // setup_compare (2, COMPARE_PWM | COMPARE_TIMER2); mens (1) {// Forhindre at PIC går i dvale.//SET PWM DUTY CYCLE output_high (PIN_5;) // Pin A3 er fotodiodeforbindelsen hvis (input (PIN_A3) == 1) output_high (PIN_A4); annet output_low (PIN_A4); // Les verdien av potensiometeret for å endre fargen på LED -verdien = read_adc (); switch (verdi) {case 0: p1 = verdi; output_low (PIN_C0); p2 = verdi; gå i stykker; sak 50: p1 = verdi; output_high (PIN_C0); p2 = verdi; gå i stykker; sak 100: p1 = verdi; output_high (PIN_C0); p2 = verdi; gå i stykker; sak 150: output_high (PIN_C0); pl = 50; p2 = verdi; gå i stykker; sak 200: output_low (PIN_C0); p1 = 0; p2 = verdi; gå i stykker; sak 250: p1 = 0; p2 = verdi; output_low (PIN_C0); gå i stykker; } p1 = verdi; p2 = 128 - p1; set_pwm1_duty (p1); set_pwm2_duty (p2);}}
Trinn 4: Søknader
En enkel fargedetektor som denne kan brukes i robotikk, eller for kule prosjekter som å skille legoer etter farge, sortere M & M, eller som et hjelpemiddel for fargeblindhet. Forhåpentligvis var denne instruktøren nyttig for å forbedre et prosjekt du hadde i tankene!:) LED er bra for så mange ting….
Anbefalt:
Fargedeteksjon Malemaskin: 4 trinn

Color Detection Paint Machine: Fargedeteksjonsmaling maskin kopier farger rundt deg og lar deg tegne med dem. Hvis du har malingen av hovedfarger, kan du bruke RGB -fargesensoren til å ane fargen du vil ha og blande den ut. Men husk, bruk objektet med lyse farger
Enkel fargedeteksjon ved bruk av OpenCV: 6 trinn

Enkel fargedeteksjon ved hjelp av OpenCV: Hei! I dag skal jeg vise en enkel metode for å oppdage en farge fra en live video ved hjelp av OpenCV og python. I utgangspunktet vil jeg bare teste den nødvendige fargen som er tilstede i bakgrunnsrammen eller ikke, og ved å bruke OpenCV -moduler vil jeg maskere den regionen og
Fargedeteksjon i Python ved hjelp av OpenCV: 8 trinn

Fargedeteksjon i Python ved hjelp av OpenCV: Hei! Denne instruksen brukes til å veilede hvordan du trekker ut en bestemt farge fra et bilde i python ved hjelp av openCV -bibliotek. Hvis du ikke er helt ny på denne teknikken, så ikke fortvil, på slutten av denne guiden vil du kunne programmere din helt egen farge
Kontroll ledet over hele verden ved bruk av internett ved hjelp av Arduino: 4 trinn

Kontroll ledet over hele verden ved bruk av internett ved hjelp av Arduino: Hei, jeg er Rithik. Vi kommer til å lage en Internett -kontrollert LED ved hjelp av telefonen din. Vi kommer til å bruke programvare som Arduino IDE og Blynk. Det er enkelt, og hvis du lyktes kan du kontrollere så mange elektroniske komponenter du vilTing We Need: Hardware:
Atollic TrueStudio-Switch på LED-en ved å trykke på trykknappen ved bruk av STM32L100: 4 trinn

Atollic TrueStudio-Switch på LED-en ved å trykke på trykknappen ved bruk av STM32L100: I denne opplæringen til STM32 skal jeg fortelle deg hvordan du leser en GPIO-pin av STM32L100, så her skal jeg lage en ombord LED-glød av bare trykke på trykknappen