
Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11
Har du någonsin velat ha ett automatiserat sätt att upptäcka färgen på ett objekt? Genom att lysa med en viss färg på objektet och titta på hur mycket ljus som reflekteras tillbaka kan du se vilken färg objektet har. Till exempel, om du lyser ett rött ljus på ett rött föremål, reflekteras det ljuset tillbaka. Om du lyser ett blått ljus på ett rött föremål, kommer objektet att absorbera en del av det ljuset och mindre av det kommer att reflekteras tillbaka.
Steg 1: Delar som behövs
Jag använde en PIC 16F887 mikrokontroller, men nästan alla med pulsbreddsmodulering fungerar. 1 RGB LED1 Microcontroller1 Standard röd LED1 1k ohm motstånd 1 Fotoresistor (ändrar motstånd beroende på mängden ljus som sken på den) Vissa ledningar Jag behöver bara mikrokontrollern och RGB LED för att ha ett brett utbud av färgdetektorer, men om du bara vill ha en krets som upptäcker en färg, du behöver inte en mikrokontroller - du behöver bara en ljus lysdiod för den färg du vill upptäcka. Den vanliga röda lysdioden är "indikator -LED" - den tänds när rätt färg upptäcks.
Steg 2: Bygg kretsen
Schemat är ganska enkelt och i allmän form visas nedan. RGB -lysdioden drivs externt av en PWM -signal. Jag sätter elektrisk tejp runt fotoresistorn så att omgivande ljus inte kommer in - bara ljuset direkt ovanför det detekteras.
Steg 3: Koden
Denna kod skrevs för en Microchip PIC 16F887, men förhoppningsvis kan du få den allmänna idén. Jag använde den inbyggda potentiometern på min utvecklingskort för att variera färgspektrumet på RGB-lysdioden (och det går inte igenom hela spektrumet eftersom jag inte har 3 PWM-moduler, men det är tillräckligt bra) Kommentarer ingår. #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 värde = 128; int p1 = 0; int p2 = 0; void my_setup_ccp1 (int8 värde) {output_low (PIN_C2); CCP1CON = värde; PWM1CON = 0;} void my_setup_cc2 {output_low (PIN_C1); CCP2CON = värde;} // ==================================== () {// A4 = strömkälla för 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_TIM_2;) my_setup_ccp2 (CCP_PWM); setup_timer_2 (T2_DIV_BY_1, 128, 1); // setup_compare (2, COMPARE_PWM | COMPARE_TIMER2); medan (1) {// Förhindra PIC från att somna.//SET PWM DUTY CYCLE output_high (PIN_5;) // Pin A3 är fotodiodanslutningen om (input (PIN_A3) == 1) output_high (PIN_A4); annars output_low (PIN_A4); // Läs värde av potentiometer för att ändra färg på LED -värde = read_adc (); switch (värde) {case 0: p1 = värde; output_low (PIN_C0); p2 = värde; ha sönder; fall 50: p1 = värde; output_high (PIN_C0); p2 = värde; ha sönder; fall 100: p1 = värde; output_high (PIN_C0); p2 = värde; ha sönder; fall 150: output_high (PIN_C0); pl = 50; p2 = värde; ha sönder; fall 200: output_low (PIN_C0); pl = 0; p2 = värde; ha sönder; fall 250: p1 = 0; p2 = värde; output_low (PIN_C0); ha sönder; } p1 = värde; p2 = 128 - pl; set_pwm1_duty (p1); set_pwm2_duty (p2);}}
Steg 4: Ansökningar
En enkel färgdetektor som denna kan användas i robotik eller för coola projekt som att skilja legos efter färg, sortera M & M eller som ett hjälpmedel för färgblindhet. Förhoppningsvis var detta instruerbart till hjälp för att förbättra ett projekt du hade i åtanke!:) Lysdioder är bra för så många saker….
Rekommenderad:
Färgdetektering Färgmaskin: 4 steg

Färgdetekteringsfärgsmaskin: Färgidentifieringsfärgmaskin kopierar färger runt dig och låter dig rita med dem. Om du har färgen av primärfärger kan du använda RGB -färgsensorn för att känna av vilken färg du vill ha och blanda ut den. Men kom ihåg, använd objektet med ljus färg
Enkel färgdetektering med OpenCV: 6 steg

Enkel färgdetektering med OpenCV: Hej! Idag ska jag visa en enkel metod för att upptäcka en färg från en livevideo med OpenCV och python. I grund och botten testar jag bara den färg som krävs i bakgrundsramen eller inte och med OpenCV -moduler kommer jag att maskera den regionen och
Färgdetektering i Python med OpenCV: 8 steg

Färgdetektering i Python med OpenCV: Hej! Denna instruerbara används för att vägleda med hur man extraherar en specifik färg från en bild i python med hjälp av openCV -bibliotek. Om du är ny på den här tekniken, oroa dig inte, i slutet av den här guiden kommer du att kunna programmera din egen färg
ESP8266 RGB LED STRIP WIFI -kontroll - NODEMCU Som IR -fjärrkontroll för Led Strip kontrollerad över Wifi - RGB LED STRIP Smartphone -kontroll: 4 steg

ESP8266 RGB LED STRIP WIFI -kontroll | NODEMCU Som IR -fjärrkontroll för Led Strip kontrollerad över Wifi | RGB LED STRIP Smartphone Control: Hej killar i den här självstudien kommer vi att lära oss hur man använder nodemcu eller esp8266 som en IR -fjärrkontroll för att styra en RGB LED -remsa och Nodemcu kommer att styras av smartphone via wifi. Så i princip kan du styra RGB LED STRIP med din smartphone
Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter - Rc helikopter - RC -plan med Arduino: 5 steg (med bi

Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter | Rc helikopter | Rc -plan med Arduino: Att driva en Rc -bil | Quadcopter | Drone | RC -plan | RC -båt, vi behöver alltid en mottagare och sändare, antag att för RC QUADCOPTER behöver vi en 6 -kanals sändare och mottagare och den typen av TX och RX är för dyr, så vi kommer att göra en på vår