Definirea culorii

Continuăm să studiem senzorul. Cipul are o carcasă SOIC-8. O ieșire este ieșirea pentru măsurarea frecvenței convertite de la intensitatea culorii. Două ieșiri - putere plus și minus. O altă ieșire servește la activarea senzorului (nivel activ - 0). Ei bine, și cele mai interesante sunt cele patru concluzii care determină modul de funcționare al senzorului - S0 - S3. Concluziile S0, S1 determină scala de frecvență (în funcție de combinația potențialelor ridicate și joase la aceste terminale). Două ieșiri pot oferi patru combinații de moduri:







  • 0 - dezactivarea frecvenței de ieșire
  • 1 - scară 2% din frecvența maximă posibilă de 600 kHz
  • 2 - scară de 20% din frecvența maximă de 600 kHz
  • 3 - scară 100% din frecvența maximă posibilă de 600 kHz

Apoi, cele două terminale S2, S3, definesc modul de măsurare a culorilor, de asemenea două ieșiri dau patru combinații de moduri:

  • 0 - sunt utilizate fotodiode cu filtru roșu
  • 1 - Sunt utilizate fotodiode cu un filtru albastru
  • 2 - se utilizează fotodiode fără filtru
  • 3 - sunt utilizate fotodiode cu un filtru verde

Acum, că știți scopul și funcționalitatea senzorului pini se poate conecta în siguranță la microcontroler și măsura culoarea prin manipularea senzorului. Astfel, senzorul funcționează după cum urmează: - Concluziile S2, S3 defini filtrul utilizat fotodiode, lumina reflectată de suprafața unui anumit obiect de culoare cade pe fotodiode senzorului, atunci intensitatea luminii este transformată într-o frecvență (interval de frecvență este setat bornele S0, S1) și frecvența rezultată este furnizată ieșirea senzorului. Cu toate acestea, nu totul este atât de simplu, dacă măsurați frecvența și luați-o pentru culori, probabil că veți avea probleme. În documentația pentru senzorul are un tabel care definește lățimea de bandă relativă a fotodiode anumite filtre cu lungime de undă (după cum știți, lungimea de undă determină spectrul de culori vizibile). Și în ceea ce privește aceste date, este necesar să se aleagă coeficienții pentru frecvențele celor trei culori filtru la datele măsurate corespund realității. Pentru comoditate, frecvențele măsurate pot fi convertite în format R-G-B (de la 0 la 255 pentru fiecare dintre culori). Pentru această scală luată utilizată (2%, 20% sau 100%) este luată ca maximă, adică, 255 (20% pentru valoarea scară de 255 corespunde la 120 kHz) și într-o proporție găsi valoarea de culoare curent în raport cu frecvența măsurată. Dar de hârtie doar colorată are puțină luminozitate, astfel încât datele pot pur și simplu multiplica toate cele 5 sau altă valoare convenabilă, în caz contrar toate culorile primite va fi aproape de o nuanțe de gri sau întunecate, subliniind lumina zilei nu este de mare ajutor, dar în absența luminii doar de drum. Când măsurați culoarea RGB a LED-ului, nu este necesar să multiplicați LED-ul, deoarece LED-urile oferă o luminozitate bună pentru senzorul nostru de culoare.

Parametrii microcircuitului (senzor):

  • sursa de alimentare de la 2,7 V la 5,5 V
  • Nivel ridicat de intrare de la 2 V la tensiunea de alimentare
  • Nivel scăzut de intrare de la 0 V la 0,8 V
  • utilizați temperatura de la -40 la 70 grade Celsius
  • consumul de curent de la 1,4 la 2 mA
  • temperatura maximă de lipire este de 260 grade Celsius






Pentru a construi designul pe microcontroler, vom folosi modulul senzor finit de pe TCS3200 (TCS230):

Definirea culorii

Modulul cuprinde un cip senzor în sine direct în centrul plăcii, condensatori necesare rezistențe de limitare, iar iluminarea din cele patru LED-uri albe ca și cu rezistențe de limitare a curentului. asamblare chineză susține să se spele întotdeauna departe de flux, înainte de a utiliza în continuare pentru a crea aceasta spalata un aspect mai estetic, fără pete și dungi.

Schema dispozitivului determinantului de culoare este prezentată mai jos:

Definirea culorii

Inima circuitului este microcontrolerul Atmega8. Acest microcontroler poate fi utilizat atât în ​​pachetul DIP-28, cât și în versiunea SMD din pachetul TQFP-32. Rezistor R3 este necesar pentru a împiedica repornirea spontană a microcontrolerului în cazul unei interferențe aleatorii pe pinul PC6. Rezistor R3 trage plus putere la această ieșire, creând în mod credibil potențial pe ea. Pentru indicație, se utilizează un afișaj SC1602 cu cristale lichide (LCD sau LCD). Are 2 linii de șaisprezece caractere în fiecare. Ecranul LCD este conectat la microcontroler pe un sistem cu patru biți. Pentru a regla contrastul simbolurilor pe afișaj, este necesar un rezistor R2. Prin rotirea motorului acestui rezistor obținem cele mai clare indicații pentru noi pe ecran. Lumina de fundal a ecranului LCD este organizată prin ieșirile "A" și "K" de pe panoul afișajului. Lumina de fundal se aprinde prin intermediul unui rezistor care limitează curentul - R1. Cu cât este mai mare valoarea nominală, cu atât dimensiunea afișajului va fi evidențiată. Cu toate acestea, nu trebuie să neglijați acest rezistor pentru a evita deteriorarea luminii de fundal. Butonul S1 resetează microcontrolerul (întregul circuit). Ca generator de ceas, oscilatorul intern al microcontrolerului este utilizat la o frecvență de 8 MHz. Designul acestui dispozitiv a fost dezvoltat doar pentru familiarizare și instruire. Pentru o măsurare mai precisă, se recomandă utilizarea unui oscilator quartz extern (deși în condiții normale la temperatura normală a camerei, diferența de precizie între oscilatorul intern și cuarț poate fi puțin diferită).

Ca senzor de culoare, modulul menționat mai sus este utilizat.

Dispozitivul a fost asamblat pe un prototip PCB pentru microcontrolerul Atmega8:

Definirea culorii

Definirea culorii

Algoritmul microcontrolerului după cum urmează: Pe scurt, aceasta este începutul inițializat toate setările și apoi se execută permisiunea de a întrerupe pentru o întrerupere externă este un număr de impulsuri de frecvență de la senzor când deversorul de lucru cronometrul întrerupe număr de ori (care au trecut 1 secundă), întrerupe la nivel mondial sunt interzise și există numărare frecvență și conversia acesteia la valoarea dorită și valoarea de ieșire a afișajului, apoi aplicați setările pentru diferite filtru senzor de culoare, la sfârșitul acestor întrerupe operațiunile din nou și apare în întreaga lume permise impulsuri conta pe întrerupere externă și așa mai departe în jurul cercului care trece prin toate cele trei fotodiode filtre. Ecranul afișează trei culori: roșu, verde și albastru. Coeficienții de calibrare sunt selectate experimental în mai multe experimente cu lecturi și firmware a microcontrolerului. Codul sursă este atașat mai jos.

Pentru a programa microcontrolerul ATmega8, trebuie să cunoașteți configurația biților de fuziune (screenshot-ul se face în programul AVR Studio):

Definirea culorii

Lista elementelor radio







Articole similare

Trimiteți-le prietenilor: