Innholdsfortegnelse:

Arduino RGB fargevelger - Velg farger fra virkelige objekter: 7 trinn (med bilder)
Arduino RGB fargevelger - Velg farger fra virkelige objekter: 7 trinn (med bilder)

Video: Arduino RGB fargevelger - Velg farger fra virkelige objekter: 7 trinn (med bilder)

Video: Arduino RGB fargevelger - Velg farger fra virkelige objekter: 7 trinn (med bilder)
Video: Веб-программирование – информатика для руководителей бизнеса 2016 2024, Juli
Anonim
Image
Image
Koble til RGB Color Picker Test Circuit
Koble til RGB Color Picker Test Circuit

Tinkercad -prosjekter »

Velg enkelt farger fra fysiske objekter med denne Arduino -baserte RGB -fargevelgeren, slik at du kan gjenskape fargene du ser i virkelige objekter på din PC eller mobiltelefon. Bare trykk på en knapp for å skanne fargen på objektet ved hjelp av en billig TCS34725 fargesensormodul, og du får RGB -fargeverdiene samt en indikasjon på den målte fargen på en RGB LED.

Hvis du liker denne instruksen, kan du stemme på den i Make It Glow -konkurransen.

Jeg har designet et enkelt 3D -trykt kabinett for elektronikken for å gjøre enheten bærbar, bare koble den til en USB -port, lader eller strømbank for å slå den på. Du kan også endre designet for å få plass til et batteri for å gjøre det enda mer bærbart.

Jeg prøver vanligvis å bruke en Arduino Uno da dette er et av de mest brukte Arduino -kortene, men for å gjøre denne enheten bærbar har den blitt designet rundt et Arduino Pro Micro -kort. Det kan imidlertid enkelt tilpasses å kjøre på de fleste andre Arduino -kompatible brett med nok IO, for eksempel Uno, Leonardo eller Mega.

Denne guiden forutsetter at du har jobbet med en Arduino mikrokontroller før du kjenner det grunnleggende for programmering av Arduino og tilkobling av et LCD-panel til den. Hvis du ikke gjør det, følg de koblede veiledningene for mer informasjon og grundige forklaringer.

Rekvisita

  • Arduino Pro Micro (eller annet) - Kjøp her
  • TCS34725 RGB -sensor - Kjøp her
  • 16 x 2 LCD -panel - Kjøp her
  • Trykknapp - Kjøp her
  • 2 x 10K motstander - Kjøp her
  • 3 x 220Ω motstander - Kjøp her
  • 470Ω motstand - Kjøp her
  • RGB LED - Kjøp her
  • 7 Pin Pin Header Strip (Cut to Length) - Kjøp her
  • 10K potensiometer - Kjøp her
  • Brødbrett og gensere for testing - Kjøp her
  • 3D -skriver og hvit/svart filament (valgfritt for boliger) - Denne brukes

I tillegg til disse trenger du grunnleggende verktøy for å arbeide med elektronikk, inkludert et loddejern hvis du permanent bygger kretsen din for bruk i et skap.

Trinn 1: Koble til RGB Color Picker Test Circuit

Koble til RGB Color Picker Test Circuit
Koble til RGB Color Picker Test Circuit
Koble til RGB Color Picker Test Circuit
Koble til RGB Color Picker Test Circuit

Det er alltid en god idé å sette sammen komponentene dine på et brødbrett først for å teste dem og sørge for at kretsen og programvaren fungerer som den skal før du foretar loddede tilkoblinger.

Komponentene er koblet til brødbrettet som vist i kretsdiagrammet.

Det er ingenting spesielt annerledes eller rart med noen av disse forbindelsene mellom komponentene og Arduino, de er typiske grunnleggende kretskonfigurasjoner for tilkobling av LCD, trykknapp og lysdioder til Arduino.

10K -motstandene brukes til trykknapptilkoblingen og 220Ω -motstandene til fargesensor -LED og de røde og blå bena til RGB -LED. Motstanden på 470Ω brukes til det grønne benet på LED -en for å redusere lysstyrken litt for å skape mer realistiske farger.

RGB -fargesensoren er koblet til Arduino ved hjelp av det enkle I2C -grensesnittet. Sørg for at du bruker de riktige pinnene for dette grensesnittet hvis du bruker et annet kort. Det styres ved hjelp av Adafruit -biblioteket som er omtalt i kodeseksjonen.

Hvis du bruker et annet Arduino -kort, må du kontrollere at du har samme funksjonalitet på hver pinne som på Pro Micro. For eksempel trenger du PWM -aktiverte pinner for kontroll av RGB -LED for å simulere den valgte RGB -fargen.

Trinn 2: Programmering av Arduino RGB -fargevelger

Programmering av din Arduino RGB -fargevelger
Programmering av din Arduino RGB -fargevelger
Programmering av din Arduino RGB -fargevelger
Programmering av din Arduino RGB -fargevelger
Programmering av din Arduino RGB -fargevelger
Programmering av din Arduino RGB -fargevelger
Programmering av din Arduino RGB -fargevelger
Programmering av din Arduino RGB -fargevelger

Nå som du har montert komponentene dine på brødbrettet og gjort de nødvendige sammenkoblingene, kan du laste koden på Arduino ved hjelp av PC -en og kontrollere at komponentene fungerer som de skal.

Kontroller alle tilkoblingene igjen før du kobler USB -kabelen til Arduino for å kontrollere at de er riktige. USB -kabelen driver kortet og tilkoblede komponenter som kan skade dem hvis de ikke er riktig tilkoblet.

Dette bestemte kortet, Arduino Pro Micro fungerer som en Leonardo når den er koblet til PCen, så sørg for å velge riktig brettype i Arduino IDE, ellers får du feil når du prøver å laste opp koden.

Her er en lenke til RGB -fargevelgerkoden: Last ned RGB -fargevelgerkoden

Koden inneholder kommentarer for å forklare hva hver seksjon gjør. Fargeidentifikasjonen og LED -delen er basert på Adafruit colorview -eksempelkoden. Hvis du vil prøve å skrive din egen kode, er dette et nyttig eksempel å jobbe igjennom og begynne med.

Du må ha Adafruit -bibliotekene installert. Dette gjøres enkelt ved å klikke på Verktøy -> Administrer biblioteker i IDE -en din og deretter skrive inn "Adafruit TCS" i søkefeltet og installere det funnet biblioteket.

Noen ting du bør se etter i koden:

LCD -tildelte pinner er i en merkelig rekkefølge (15, 14, 16, 4, 5, 8, 7). Jeg prøver vanligvis å holde pinnene sekvensielle, men i dette eksemplet er de litt blandet på grunn av to ting, en fordi jeg trengte å jobbe rundt PWM -pinnene for LED -en og den andre fordi pinnene på Pro Micro ikke er alle i rekkefølge.

Fargesensorens LED og trykknapp er koblet til Pro Micros analoge innganger, og brukes som digital IO, ettersom det ikke var nok digitale IO -pinner tilgjengelig. De er fremdeles definert i koden som standard digitale IO -pinner.

Det er en kort rutine for å visne lysdioden mellom rødt, grønt og blått ved oppstart. Dette er bare en visuell effekt som tar omtrent 1,5 sekunder å løpe gjennom og kan fjernes hvis du vil at fargevelgeren din skal starte raskere.

Programmet vil ikke gå forbi oppsettet hvis det ikke oppretter en forbindelse med fargesensoren, det vil vises som "Sensorfeil" på LCD -skjermen hvis det ikke kan opprette en tilkobling. Hvis lysdioden tennes, som indikerer strøm til sensoren, må du kontrollere SDA- og SCL -tilkoblingene og at du bruker riktige Arduino -pinner.

Gamatabellen konverterer ganske enkelt de målte RGB -verdiene fra sensoren til verdier som vil resultere i en mer realistisk LED -representasjon av den faktiske fargen, dette er bare for å forbedre LED -visualiseringseffekten og har ingen effekt på de målte RGB -verdiene som vises.

Koden venter deretter på at trykknappinngangen tar avlesning fra sensoren og viser verdiene på LCD-skjermen og gjennom LED-en. De tre forsinkelsene i sløyfen hvis uttalelsen bare er for å unngå å ta gjentatte avlesninger før knappen slippes igjen, ettersom den faktiske lesingen og syklustiden vil være omtrent 100 ms. Du kan også leke med disse verdiene hvis du vil velge plukkeren din raskere eller langsommere.

Trinn 3: Installere komponentene i kabinettet

Installere komponentene i kabinettet
Installere komponentene i kabinettet
Installere komponentene i kabinettet
Installere komponentene i kabinettet
Installere komponentene i kabinettet
Installere komponentene i kabinettet

For å lage en nyttig og bærbar enhet bestemte jeg meg for å lodde komponentene sammen og montere dem i et enkelt 3D -trykt kabinett.

En krets av denne kompleksiteten bør sannsynligvis utformes på en PCB, men de fleste har ikke tilgang til PCB -produksjonstjenester, så jeg har holdt på med å lodde komponentene sammen med seksjoner av båndkabel.

Trinn 4: 3D -utskrift av vedlegget

3D -utskrift av vedlegget
3D -utskrift av vedlegget
3D -utskrift av vedlegget
3D -utskrift av vedlegget
3D -utskrift av vedlegget
3D -utskrift av vedlegget
3D -utskrift av vedlegget
3D -utskrift av vedlegget

Jeg designet et grunnleggende rektangulært hus for fargevelgeren, 3D -utskriftsfiler kan lastes ned her. Du kan også bli kreativ og endre designet for å passe til komponentene dine og hvordan du kommer til å bruke fargevelgeren din.

Fargesensoren er på baksiden slik at du kan holde enheten over et objekt og velge fargen med avlesningen vist på forsiden.

Jeg skrev ut huset med hvitt PLA og 20% utfylling, jeg ville unngå å bruke en farget filament på bakpanelet, ettersom du ikke ønsker å introdusere reflektert farget lys på overflaten som plukkes.

Husets dimensjoner er omtrent 110 mm (4,3”) x 46 mm (1,8”) x 20 mm (0,78”) med begge halvdelene montert. Hver halvdel er 10 mm (0,39”) høy.

Trinn 5: Lodd kretsen

Lodde kretsen
Lodde kretsen
Lodde kretsen
Lodde kretsen
Lodde kretsen
Lodde kretsen

Når du har trykt huset i 3D, har du en ide om hvor alle komponentene er montert og hvor lenge du skal gjøre de loddede båndkabeltilkoblingene.

Start med å lodde hver komponent til din Arduino mens du fjerner den fra brødbrettet og prøv å fjerne komponenter for å utgjøre en full krets om gangen.

For eksempel, start med LED-kretsen og lodd motstandene til LED-en, og koble dem deretter til Arduino før du fjerner trykknappkomponentene. På denne måten kan du holde styr på komponentene og sørge for at du kobler dem individuelt til de riktige Arduino -inngangene og -utgangene.

Vær forsiktig med LCD -panelet og fargesensoren for å sikre at du gjør tilkoblingene til de riktige Arduino IO -portene.

Fargesensortilkoblingene kan loddes på den 7 -pinners kvinnelige topplisten (kutt en 8 -pinners topplist til 7 pinner) slik at den kan plugges inn gjennom den bakre delen av huset. Dette gjør det bare mulig å skille de to halvdelene riktig hvis du trenger å åpne den. Du kan også lodde direkte til fargesensoren med en del av båndkabelen, bare pass på at båndkabelen går gjennom sporet i huset før du lodder tilkoblingene.

Det er en rekke tilkoblinger som skal gjøres til GND og 5V, og det gjør lodding enklere å koble dem til større sentrale punkter i stedet for å prøve å lodde dem alle på de to Arduino -pinnene. Jeg koblet dem alle til de to utvendige benene på LCD -potensiometeret, ettersom dette er omtrent i midten av huset og har det største overflatearealet for å gjøre tilkoblingene.

Når du har gjort alle tilkoblingene og du er fornøyd med båndkabellengdene. Prøv å slå på kretsen igjen for å kontrollere at alt fungerer som det skal før du monterer komponentene i huset. Sørg for at ingen av komponentene eller eksponerte terminaler berører hverandre, noe som kan føre til kortslutning. Du må kanskje legge til litt isolasjonstape eller papir mellom komponentene for å unngå kortslutning.

Hvis kretsen din fungerer som den skal, kan du montere komponentene i det 3D -trykte huset.

Trinn 6: Monter komponenter i kabinettet

Monter komponenter i kabinettet
Monter komponenter i kabinettet
Monter komponenter i kabinettet
Monter komponenter i kabinettet
Monter komponenter i kabinettet
Monter komponenter i kabinettet

Det siste trinnet er å montere komponentene i huset. Jeg brukte en smeltelimspistol for å montere komponentene, du kan også bruke epoksy eller liten mengde superlim.

Fargesensoren kan limes inn i hulrommet på baksiden av huset med pinnehodestripen som stikker inn til innsiden av huset. Den kvinnelige topplisten vil deretter bli brukt for sensoren å plugge inn i kretsen.

Monter trykknappen, LCD og LED gjennom hullene i frontpanelet og lim dem på plass på innsiden av huset.

Arduinoen din skal passe godt inn i sporet i basen og trenger ikke lim for å holde den på plass, men hvis den gjør det, må du passe på at du ikke legger lim på komponentene på baksiden av brettet. Legg heller lim langs kantene på brettet.

Micro USB -porten skal være lett tilgjengelig gjennom siden av huset.

Lim de to halvdelene sammen med pinnene på de to hjørnene som en guide. Disse skal presse tett sammen og hjelpe til med å holde de to halvdelene sammen. Sørg for at ingen av de eksponerte terminalene eller ledningene på motstandene, LED eller potensiometer berører noe annet i kretsen din som nevnt tidligere. Du kan bruke isolasjonstape eller papir til å skille komponenter - jeg har brukt litt gul tape på baksiden av LCD -skjermen.

Trinn 7: Bruke RGB -fargevelgeren

Bruke RGB -fargevelgeren din
Bruke RGB -fargevelgeren din
Bruke RGB -fargevelgeren din
Bruke RGB -fargevelgeren din
Bruke RGB -fargevelgeren din
Bruke RGB -fargevelgeren din
Bruke RGB -fargevelgeren din
Bruke RGB -fargevelgeren din

For å bruke fargevelgeren, kobler du en mikro -USB -kabel til porten på siden av fargevelgeren for å slå den på.

Oppstartssekvensen skal kjøre, og deretter kan du velge en farge, angitt med fargevelger klar.

Plasser sensoren over fargen du vil velge, og trykk deretter på knappen for å velge fargen. LED -lyset på sensoren skal tennes et øyeblikk, hvoretter du får en RGB -avlesning på LCD -skjermen, og LED -en endres for å gjenspeile fargen som er valgt.

RGB LED er ment å gi deg en indikasjon på fargen som er identifisert. Dette er bare en rask måte for deg å kontrollere at sensoren har fått den riktige fargen og ikke alltid er en nøyaktig fremstilling av fargen på grunn av begrensninger med LED -en. For eksempel kan de ikke vise svarte eller gråtoner ettersom det faktiske LED -materialet er hvitt og bare kan produsere lys for å gjengi farger. Av samme grunn vises heller ikke mørkere farger godt på LED -en.

Hvis du likte denne instruksen, kan du stemme på den i Make It Glow -konkurransen.

Ta en titt på bloggen min for flere Arduino -opplæringsprogrammer, prosjekter og ideer.

Gjør det til Glow Contest
Gjør det til Glow Contest
Gjør det til Glow Contest
Gjør det til Glow Contest

Andreplass i Make it Glow -konkurransen

Anbefalt: