INHOUDSOPGAWE:
Video: Kleuropsporing met behulp van RGB LED: 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:28
Het u al ooit 'n outomatiese manier gehad om die kleur van 'n voorwerp op te spoor? Deur die lig van 'n sekere kleur op die voorwerp te laat skyn en te kyk hoeveel lig daardeur weerkaats word, kan u sien watter kleur die voorwerp is. As u byvoorbeeld 'n rooi lig op 'n rooi voorwerp skyn, word die lig weerkaats. As u 'n blou lig op 'n rooi voorwerp skyn, absorbeer die voorwerp 'n deel van die lig en minder daarvan word weerkaats.
Stap 1: Onderdele benodig
Ek het 'n PIC 16F887-mikrokontroleerder gebruik, maar byna almal met 'n polswydte-modulasie-vermoë sal werk. 1 RGB LED1 Mikrokontroller 1 Standaard rooi LED 1 1 k ohm weerstand 1 Fotoresistor (verander weerstand afhangende van die hoeveelheid lig wat daarop skyn) Sommige drade Ek benodig slegs die mikrokontroleerder en RGB LED om 'n wye reeks kleurdetektore te hê, maar as u net 'n stroombaan wil hê ontdek een kleur, u het nie 'n mikrobeheerder nodig nie - u benodig slegs 'n helder LED van die kleur wat u wil opspoor. Die standaard rooi LED is die "aanwyser -LED" - dit brand wanneer die regte kleur opgespoor word.
Stap 2: Bou die stroombaan
Die skema is redelik eenvoudig en word in die algemene vorm hieronder getoon. Die RGB -LED word ekstern aangedryf deur 'n PWM -sein. Ek sit elektriese band om die fotoresistor sodat omringende lig nie binnedring nie - slegs die lig direk daarbo sal opgespoor word.
Stap 3: Die kode
Hierdie kode is geskryf vir 'n Microchip PIC 16F887, maar hopelik kan u die algemene idee kry. Ek het die ingeboude potensiometer op my ontwikkelbord gebruik om die kleurspektrum van die RGB LED te verander (en dit gaan nie deur die hele spektrum nie, want ek het nie 3 PWM-modules nie, maar dit is goed genoeg) Opmerkings ingesluit. #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 waarde = 128; int p1 = 0; int p2 = 0; void my_setup_ccp1 (int8 waarde) {output_low (PIN_C2); CCP1CON = waarde; PWM1CON = 0;} ongeldig my_setup_cc2 {output_low (PIN_C1); CCP2CON = waarde;} // ============================================ leeg hoof () {// A4 = kragbron vir 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); terwyl (1) {// Voorkom dat PIC gaan slaap.//SET PWM DUTY CYCLE output_high (PIN_); // Pin A3 is die fotodiodeverbinding as (input (PIN_A3) == 1) output_high (PIN_A4); anders output_low (PIN_A4); // Lees die waarde van die potensiometer om die kleur van die LED -waarde te verander = read_adc (); skakelaar (waarde) {geval 0: p1 = waarde; output_low (PIN_C0); p2 = waarde; breek; saak 50: p1 = waarde; output_high (PIN_C0); p2 = waarde; breek; geval 100: p1 = waarde; output_high (PIN_C0); p2 = waarde; breek; saak 150: output_high (PIN_C0); p1 = 50; p2 = waarde; breek; saak 200: output_low (PIN_C0); p1 = 0; p2 = waarde; breek; saak 250: p1 = 0; p2 = waarde; output_low (PIN_C0); breek; } p1 = waarde; p2 = 128 - p1; stel_pwm1_plig (p1); stel_pwm2_plig (p2);}}
Stap 4: Aansoeke
'N Eenvoudige kleurdetektor soos hierdie kan in robotika gebruik word, of vir cool projekte, soos die skeiding van lego's volgens kleur, sortering van M & M's, of as hulpmiddel vir kleurblindheid. Hopelik was hierdie instruksies nuttig om 'n projek wat u in gedagte gehad het, te verbeter!:) LED's is goed vir soveel dinge …
Aanbeveel:
Eenvoudige kleuropsporing met behulp van OpenCV: 6 stappe
Eenvoudige kleuropsporing met behulp van OpenCV: Hallo! Vandag gaan ek 'n eenvoudige metode wys om 'n kleur uit 'n lewendige video op te spoor met behulp van OpenCV en python.In beginsel sal ek net toets of die vereiste kleur in die agtergrondraam voorkom of nie, en met behulp van OpenCV -modules, sal ek die gebied masker en
Kleuropsporing in Python met behulp van OpenCV: 8 stappe
Kleuropsporing in Python met behulp van OpenCV: Hallo! Hierdie instruksies word gebruik om te leer hoe u 'n spesifieke kleur uit 'n beeld in python kan onttrek met behulp van openCV -biblioteek. As u nie hierdie tegniek is nie, moenie bekommerd wees nie; aan die einde van hierdie gids kan u u eie kleur programmeer
Objekopsporing op grond van kleuropsporing: 10 stappe
Kleuropsporing gebaseerde objekopsporing: storie Ek het hierdie projek gedoen om beeldverwerking te leer met behulp van Framboos PI en oop CV. Om hierdie projek interessanter te maak, het ek twee SG90 Servomotors gebruik en 'n kamera daarop gemonteer. Een motor wat gebruik word om horisontaal te beweeg, en 'n tweede motor om vertikaal te beweeg
Beheer oor die hele wêreld met behulp van internet met behulp van Arduino: 4 stappe
Beheer oor die hele wêreld met behulp van internet met behulp van Arduino: Hallo, ek is Rithik. Ons gaan 'n internetbeheerde LED maak met u telefoon. Ons gaan sagteware soos Arduino IDE en Blynk gebruik. Dit is eenvoudig, en as u daarin geslaag het, kan u soveel elektroniese komponente beheer as wat u wil
Monitor versnelling met behulp van Raspberry Pi en AIS328DQTR met behulp van Python: 6 stappe
Monitering van versnelling met behulp van Raspberry Pi en AIS328DQTR Gebruik van Python: Versnelling is eindig, volgens ek volgens sommige wette van die fisika.- Terry Riley 'n Jagluiperd gebruik ongelooflike versnelling en vinnige spoedveranderinge wanneer hy jaag. Die vinnigste wesens aan wal gebruik af en toe sy hoogste tempo om prooi te vang. Die