Autorul poate fi contactat la adresa: Login pentru adresa
Proiectul consta in construirea unui dispozitiv pe care utilizatorul il poate folosi pentru a scana o culoare. Instant, aceasta va fi afisata pe o matrice de LED-uri RGB, pentru a o vizualiza mai bine. Aceasta culoare poate fi modificata cu ajutorul unor potentiometre, dupa preferinte. Ulterior, culoarea este afisata in format RGB pe un display grafic.
Inspiratia pentru acest dispozitiv a fost ideea de a avea un color picker portabil in viata de zi cu zi.
Dispozitivul se adreseaza indeosebi utilizatorior specializati din domeniul design-ului grafic. Un astfel de produs le-ar permite sa obtina culorile dorite din mediul inconjurator, sa le modifice, apoi sa le utilizeze in creatiile lor.
Schema bloc:
Lista de piese:
Pentru software am folosit 2 biblioteci gasite: cea din laboratorul 4 pentru LCD-ul 16×2 unde a trebuit sa modific define-urile pentru pinii de la LCD si o biblioteca pentru TCS3200 (interfacing-tcs3200-colour-sensor-with-avr-atmega32). Senzorul de culoare folosit de mine este TCS230, de aceea am luat aceasta biblioteca si am modificat-o pentru a functiona folosind modelul meu de senzor. Pentru inceput m-am documentat cu privire la modul in care functioneaza senzorul de culoare. Dupa ce m-am uitat pe datasheet-ul senzorului, am descoperit cum pot fi interpretate valorile masurate (color-detector-using-microcontroller.html). Functia TCSMeasure() calculeaza frecventa de pe output pe jumatate de perioada de ceas, se masoara frecventa fiecarei culori R, G si B. Functia este echivalentul functiei pulseIn() din Arduino, acesta asteapta frontal crescator ca sa inceapa masuratoarea. Verific pe baza acestui tabel ce culoare este dupa care setez pinii pentru LED-ul RGB corespunztor . Initial foloseam o matrice de led-uri RGB, dar s-a ars… Pe LCD afisez valoarea RGB si numele culorii scanate.
Soft-ul a fost destul de greu de implementat deoarece nu am avut exemple din anii trecuti pentru inspiratie, iar pe net toate foloseau acest senzor de culoare cu o placuta Arduino.
Proiectul este functional, detecteaza o gama restransa de culori (Rosu/Alb/Verde/Galben/Rosu/Albastru/Mov si nuante ale acestora) pe care le afiseaza pe LCD si pe LED-ul RGB.
A fost distractiv si sunt foarte fericit ca merge, nu ma asteptam la asta. Nu am mai folosit potentiometrele deoarece nu functioneaza cu valoarea intoarsa de senzorul de culoare. Am invatat cum sa interactionez cu elementele hardware. Soft-ul mi-a dat ceva bataie de cap, dar a iesit (asta conteaza).
Arhiva cod si Makefile - colorpickercode.zip