Innehållsförteckning:

Arduino RGB Color Picker - Välj färger från verkliga objekt: 7 steg (med bilder)
Arduino RGB Color Picker - Välj färger från verkliga objekt: 7 steg (med bilder)

Video: Arduino RGB Color Picker - Välj färger från verkliga objekt: 7 steg (med bilder)

Video: Arduino RGB Color Picker - Välj färger från verkliga objekt: 7 steg (med bilder)
Video: 1. Q Light Controller + Komma igång med QLC +. Utrustning och funktioner 2024, November
Anonim
Image
Image
Ansluter testkretsen för RGB -färgväljare
Ansluter testkretsen för RGB -färgväljare

Tinkercad -projekt »

Välj enkelt färger från fysiska objekt med denna Arduino -baserade RGB -färgväljare, så att du kan återskapa färgerna du ser i verkliga objekt på din dator eller mobiltelefon. Tryck bara på en knapp för att skanna objektets färg med en billig TCS34725 färgsensormodul så får du RGB -färgvärden samt en indikation på den uppmätta färgen på en RGB LED.

Om du gillar den här instruktören, vänligen rösta på den i Make It Glow Contest.

Jag har designat ett enkelt 3D -tryckt hölje för elektroniken för att göra enheten bärbar, helt enkelt ansluta den till en USB -port, laddare eller powerbank för att starta den. Du kan också ändra designen för att rymma ett batteri för att göra det ännu mer bärbart.

Jag brukar försöka använda en Arduino Uno eftersom detta är en av de mest använda Arduino -korten, men för att göra den här enheten bärbar har den utformats kring ett Arduino Pro Micro -kort. Det kan dock enkelt anpassas för att köra på de flesta andra Arduino -kompatibla kort med tillräckligt med IO, till exempel Uno, Leonardo eller Mega.

Den här guiden förutsätter att du har arbetat med en Arduino-mikrokontroller innan du känner till grunderna för att programmera Arduino och ansluta en LCD-panel till den. Om du inte gör det, följ de länkade guiderna för mer information och fördjupade förklaringar.

Tillbehör

  • Arduino Pro Micro (eller annat) - Köp här
  • TCS34725 RGB -sensor - Köp här
  • 16 x 2 LCD -panel - Köp här
  • Tryckknapp - Köp här
  • 2 x 10K motstånd - Köp här
  • 3 x 220Ω motstånd - Köp här
  • 470Ω motstånd - Köp här
  • RGB LED - Köp här
  • 7 Pin Pin Header Strip (Cut to Length) - Köp här
  • 10K Potentiometer - Köp här
  • Brödbräda och hoppare för testning - Köp här
  • 3D -skrivare och vit/svart filament (valfritt för bostäder) - den här används

Utöver dessa behöver du grundläggande verktyg för att arbeta med elektronik, inklusive ett lödkolv om du permanent bygger din krets för användning i ett hölje.

Steg 1: Anslutning av RGB -färgväljartestkretsen

Anslutning av RGB -färgväljartestkrets
Anslutning av RGB -färgväljartestkrets
Anslutning av RGB -färgväljartestkrets
Anslutning av RGB -färgväljartestkrets

Det är alltid en bra idé att först montera dina komponenter på ett brödbräda för att testa dem och se till att din krets och programvara fungerar korrekt innan du gör några lödda anslutningar.

Komponenterna är anslutna till brödbrädan enligt diagrammet.

Det finns inget särskilt annorlunda eller konstigt med någon av dessa anslutningar mellan komponenterna och Arduino, de är typiska grundkretskonfigurationer för att ansluta en LCD, tryckknapp och lysdioder till Arduino.

10K -motstånden används för tryckknappsanslutningen och 220Ω -motstånden för färgsensorns LED och de röda och blåa benen på RGB -LED. Motståndet 470Ω används för lysdiodens gröna ben för att minska dess ljusstyrka lite för att skapa mer realistiska färger.

RGB -färgsensorn är ansluten till Arduino med det enkla I2C -gränssnittet. Se till att du använder rätt stift för det här gränssnittet om du använder ett annat kort. Det styrs med hjälp av Adafruit -biblioteket som diskuteras i kodavsnittet.

Om du använder ett annat Arduino -kort, se till att du har samma funktionalitet på varje stift som används på Pro Micro. Till exempel behöver du PWM -aktiverade stift för kontroll av RGB -lysdioden för att simulera den valda RGB -färgen.

Steg 2: Programmering av din Arduino RGB -färgväljare

Programmering av din Arduino RGB -färgväljare
Programmering av din Arduino RGB -färgväljare
Programmering av din Arduino RGB -färgväljare
Programmering av din Arduino RGB -färgväljare
Programmering av din Arduino RGB -färgväljare
Programmering av din Arduino RGB -färgväljare
Programmering av din Arduino RGB -färgväljare
Programmering av din Arduino RGB -färgväljare

Nu när du har monterat dina komponenter på brödbrädan och gjort de nödvändiga sammankopplingarna kan du ladda koden till din Arduino med din dator och kontrollera att komponenterna fungerar korrekt.

Kontrollera alla dina anslutningar igen innan du ansluter USB -kabeln till din Arduino för att se till att de är korrekta. USB -kabeln driver kortet och anslutna komponenter som kan skada dem om de inte är korrekt anslutna.

Detta specifika kort, Arduino Pro Micro fungerar som en Leonardo när den är ansluten till din dator, så se till att välja rätt korttyp i Arduino IDE annars får du fel när du försöker ladda upp koden.

Här är en länk till RGB -färgväljarkoden: Ladda ner RGB -färgväljarkod

Koden innehåller kommentarer för att förklara vad varje avsnitt gör. Färgidentifieringen och LED -delen är baserad på Adafruit colorview -exempelkoden. Om du vill prova att skriva din egen kod är det här ett användbart exempel att arbeta igenom och börja med.

Du måste ha Adafruit -biblioteken installerade. Detta görs enkelt genom att klicka på Verktyg -> Hantera bibliotek i din IDE och sedan skriva in "Adafruit TCS" i sökfältet och installera det hittade biblioteket.

Några saker att se upp för i koden:

LCD -tilldelade stift är i en konstig ordning (15, 14, 16, 4, 5, 8, 7). Jag brukar försöka hålla stiften sekventiella men i det här exemplet är de lite blandade på grund av två saker, en för att jag behövde arbeta runt PWM -stiften för lysdioden och den andra eftersom stiften på Pro Micro inte är alla i ordningsföljd.

Färgsensorns LED och tryckknapp är anslutna till Pro Micros analoga ingångar och används som digital IO, eftersom det inte fanns tillräckligt med digitala IO -stift. De definieras fortfarande i koden som vanliga digitala IO -stift.

Det finns en kort rutin för att tona LED -lampan mellan rött, grönt och blått vid start. Detta är bara en visuell effekt som tar cirka 1,5 sekunder att gå igenom och kan tas bort om du vill att din färgväljare ska starta snabbare.

Programmet kommer inte att gå förbi installationen om det inte upprättar en anslutning till färgsensorn, det kommer att visas som "Sensor Error" på LCD -skärmen om det inte kan upprätta en anslutning. Om lysdioden tänds, vilket indikerar ström till sensorn, kontrollera sedan dina SDA- och SCL -anslutningar och att du använder rätt Arduino -stift.

Gamatabellen omvandlar helt enkelt de uppmätta RGB -värdena från sensorn till värden som kommer att resultera i en mer realistisk LED -representation av den faktiska färgen, detta är bara för att förbättra LED -visualiseringseffekten och har ingen effekt på de uppmätta RGB -värdena som visas.

Koden väntar sedan på att knappens ingång tar avläsning från sensorn och visar värdena på LCD-skärmen och genom lysdioden. De tre fördröjningarna i slingan om uttalandet helt enkelt är för att undvika att göra upprepade avläsningar innan knappen släpps igen, eftersom den faktiska avläsningen och cykeltiden skulle vara cirka 100 ms. Du kan också leka med dessa värden om du vill göra din plockare snabbare eller långsammare.

Steg 3: Installera komponenterna i höljet

Installera komponenterna i höljet
Installera komponenterna i höljet
Installera komponenterna i höljet
Installera komponenterna i höljet
Installera komponenterna i höljet
Installera komponenterna i höljet

För att göra en användbar och bärbar enhet bestämde jag mig för att lödda komponenterna tillsammans och montera dem i ett enkelt 3D -tryckt hölje.

En krets av denna komplexitet borde förmodligen utformas på ett kretskort men de flesta människor har inte tillgång till kretskortstillverkningstjänster så jag har fastnat för att löda komponenterna tillsammans med sektioner av bandkabel.

Steg 4: 3D -utskrift av höljet

3D -utskrift av höljet
3D -utskrift av höljet
3D -utskrift av höljet
3D -utskrift av höljet
3D -utskrift av höljet
3D -utskrift av höljet
3D -utskrift av höljet
3D -utskrift av höljet

Jag konstruerade ett grundläggande rektangulärt hölje för färgväljaren, 3D -utskriftsfilerna kan laddas ner här. Du kan också bli kreativ och ändra designen för att passa dina komponenter och hur du kommer att använda din färgväljare.

Färgsensorn är på baksidan så att du kan hålla enheten över ett föremål och välja färg med avläsningen som visas på framsidan.

Jag skrev ut huset med vitt PLA och 20% fyllning, jag skulle undvika att använda en färgad glödtråd för bakpanelen eftersom du inte vill införa reflekterat färgat ljus på den yta som plockas.

Husets mått är cirka 110 mm (4,3”) x 46 mm (1,8”) x 20 mm (0,78”) med båda halvorna monterade. Varje halva är 10 mm (0,39”) hög.

Steg 5: Löd kretsen

Löd kretsen
Löd kretsen
Löd kretsen
Löd kretsen
Löd kretsen
Löd kretsen

När du har tryckt höljet i 3D har du en uppfattning om var alla komponenter är monterade och hur länge du ska göra de lödda bandkabelanslutningarna.

Börja med att löda varje komponent till din Arduino när du tar bort den från brödbrädan och försök ta bort komponenter för att skapa en hel krets åt gången.

Till exempel, börja med LED-kretsen och löd motstånden till lysdioden och anslut dem sedan till Arduino innan du tar bort tryckknappskomponenterna. På så sätt kommer du att kunna hålla reda på komponenterna och se till att du ansluter dem individuellt till rätt Arduino -ingångar och utgångar.

Var försiktig med LCD -panelen och färgsensorn för att se till att du gör anslutningarna till rätt Arduino IO -portar.

Färgsensoranslutningarna kan lödas på den 7 -stifts honremsan (klipp en 8 -stifts rubriklist ner till 7 stift) så att den kan anslutas genom husets baksida. Detta gör att de två halvorna kan separeras ordentligt om du behöver öppna den. Du kan också lödas direkt till färgsensorn med en del av bandkabeln, se bara till att bandkabeln går genom spåret i huset innan du lödar anslutningarna.

Det finns ett antal anslutningar som ska göras till GND och 5V och det gör din lödning lättare att ansluta dem till större centrala punkter snarare än att försöka lödda dem alla på de två Arduino -stiften. Jag kopplade dem alla på de två yttre benen på LCD -potentiometern eftersom det är ungefär i mitten av huset och har den största ytarean för att göra anslutningarna.

När du har gjort alla dina anslutningar och du är nöjd med bandkabellängderna. Försök att slå på kretsen igen för att verifiera att allt fungerar korrekt innan komponenterna monteras i huset. Se till att ingen av komponenterna eller de exponerade terminalerna vidrör varandra, vilket kan leda till kortslutning. Du kan behöva lägga till lite isoleringstejp eller papper mellan komponenterna för att undvika kortslutning.

Om din krets fungerar korrekt kan du montera dina komponenter i det 3D -tryckta huset.

Steg 6: Montera komponenter i höljet

Montera komponenter i höljet
Montera komponenter i höljet
Montera komponenter i höljet
Montera komponenter i höljet
Montera komponenter i höljet
Montera komponenter i höljet

Det sista steget är att montera dina komponenter i ditt hölje. Jag använde en smältlimspistol för att montera komponenterna, du kan också använda epoxi eller en liten mängd superlim.

Färgsensorn kan limmas in i hålrummet på baksidan av huset med tapphuvudremsan som sticker ut på insidan av huset. Den kvinnliga huvudremsan används sedan för sensorn att ansluta till kretsen.

Montera tryckknappen, LCD och LED genom hålen på frontpanelen och limma fast dem på insidan av huset.

Din Arduino ska passa tätt in i spåret i basen och behöver inte behöva lim för att hålla den på plats, men om det gör det, se till att du inte lägger lim på komponenterna på baksidan av brädet. Lägg hellre lim längs brädans kanter.

Mikro -USB -porten ska vara lätt åtkomlig genom sidan av höljet.

Limma ihop de två halvorna med hjälp av pinnarna på de två hörnen som en guide. Dessa bör pressa ihop hårt och hjälpa till att hålla ihop de två halvorna. Se till att ingen av dina exponerade terminaler eller ledningar på dina motstånd, LED eller potentiometer berör något annat i din krets som nämnts tidigare, du kan använda lite isoleringstejp eller papper för att separera komponenter - jag har använt lite gult tejp på baksidan på LCD -skärmen.

Steg 7: Använda din RGB -färgväljare

Använda din RGB -färgväljare
Använda din RGB -färgväljare
Använda din RGB -färgväljare
Använda din RGB -färgväljare
Använda din RGB -färgväljare
Använda din RGB -färgväljare
Använda din RGB -färgväljare
Använda din RGB -färgväljare

För att använda färgväljaren, anslut en mikro -USB -kabel till porten på sidan av färgväljaren för att starta den.

Startsekvensen ska köras och sedan kommer du att kunna välja en färg, indikerad med Color Picker Ready.

Placera sensorn över den färg du vill välja och tryck sedan på knappen för att välja färgen. LED -lampan på sensorn ska tändas en stund, varefter du får en RGB -avläsning på LCD -skärmen och lysdioden ändras för att återspegla den färg som har valts.

RGB -lysdioden är avsedd att ge dig en indikation på vilken färg som har identifierats. Detta är bara ett snabbt sätt för dig att kontrollera att sensorn har fått rätt färg och inte alltid är en korrekt bild av färgen på grund av begränsningar med lysdioden. Till exempel kan de inte visa svarta eller gråa eftersom det faktiska LED -materialet är vitt och bara kan producera ljus för att reproducera färger. Av samma anledning syns inte heller mörkare färger bra på lysdioden.

Om du tyckte om denna instruktionsbara, vänligen rösta på den i Make It Glow Contest.

Ta en titt på min blogg för mer Arduino -handledning, projekt och idéer.

Gör det Glow Contest
Gör det Glow Contest
Gör det Glow Contest
Gör det Glow Contest

Tvåa i tävlingen Make it Glow

Rekommenderad: