INHOUDSOPGAWE:

Arduino RGB -kleurkieser - kies kleure uit werklike voorwerpe: 7 stappe (met foto's)
Arduino RGB -kleurkieser - kies kleure uit werklike voorwerpe: 7 stappe (met foto's)

Video: Arduino RGB -kleurkieser - kies kleure uit werklike voorwerpe: 7 stappe (met foto's)

Video: Arduino RGB -kleurkieser - kies kleure uit werklike voorwerpe: 7 stappe (met foto's)
Video: Web Programming - Computer Science for Business Leaders 2016 2024, November
Anonim
Image
Image
Verbind die RGB -kleurkiesertoetsbaan
Verbind die RGB -kleurkiesertoetsbaan

Tinkercad -projekte »

Kies maklik kleure van fisiese voorwerpe met hierdie Arduino -gebaseerde RGB -kleurkieser, sodat u die kleure wat u in werklike voorwerpe op u rekenaar of selfoon sien, kan herskep. Druk net op 'n knoppie om die kleur van die voorwerp te skandeer met 'n goedkoop TCS34725 kleursensormodule, en u kry die RGB -kleurwaardes sowel as 'n aanduiding van die gemete kleur op 'n RGB LED.

As u hierdie Instructable geniet, stem dan daarvoor in die Make It Glow Contest.

Ek het 'n eenvoudige 3D -gedrukte omhulsel vir die elektronika ontwerp om die toestel draagbaar te maak; steek dit eenvoudig in 'n USB -poort, laaier of kragbank om dit aan te skakel. U kan ook die ontwerp aanpas om 'n battery te akkommodeer om dit nog meer draagbaar te maak.

Ek probeer gewoonlik 'n Arduino Uno gebruik, aangesien dit een van die mees gebruikte Arduino -borde is, maar om hierdie toestel draagbaar te maak, is dit ontwerp rondom 'n Arduino Pro Micro -bord. Dit kan egter maklik aangepas word om op die meeste ander Arduino -versoenbare borde te werk met genoeg IO, soos die Uno, Leonardo of Mega.

Hierdie gids veronderstel dat u met 'n Arduino-mikrobeheerder gewerk het voordat u die basiese beginsels van die programmering van die Arduino en die aansluiting van 'n LCD-paneel ken. As u dit nie doen nie, volg die gekoppelde gidse vir meer inligting en diepgaande verduidelikings.

Voorrade

  • Arduino Pro Micro (of ander) - Koop hier
  • TCS34725 RGB -sensor - Koop hier
  • 16 x 2 LCD -paneel - Koop hier
  • Drukknop - Koop hier
  • 2 x 10K weerstande - Koop hier
  • 3 x 220Ω weerstande - Koop hier
  • Weerstand 470Ω - Koop hier
  • RGB LED - Koop hier
  • 7 -pins vroulike kopstrook (in lengte gesny) - Koop hier
  • 10K potensiometer - Koop hier
  • Broodbord en springers om te toets - koop hier
  • 3D -drukker en wit/swart filament (opsioneel vir behuising) - hierdie een word gebruik

Benewens hierdie, benodig u basiese gereedskap om met elektronika te werk, insluitend 'n soldeerbout as u u stroombaan permanent bou vir gebruik in 'n omhulsel.

Stap 1: Verbind die RGB -kleurkiesertoetsbaan

Verbind die RGB -kleurkiesertoetsbaan
Verbind die RGB -kleurkiesertoetsbaan
Verbind die RGB -kleurkiesertoetsbaan
Verbind die RGB -kleurkiesertoetsbaan

Dit is altyd 'n goeie idee om u komponente eers op 'n broodbord te monteer om dit te toets en seker te maak dat u stroombaan en sagteware korrek werk voordat u gesoldeerde verbindings maak.

Die komponente word op die broodbord gekoppel, soos in die stroombaan -diagram getoon.

Daar is niks besonders of vreemds met enige van hierdie verbindings tussen die komponente en die Arduino nie; dit is tipiese basiese stroombaankonfigurasies vir die koppeling van 'n LCD, drukknop en LED's aan die Arduino.

Die 10K -weerstande word gebruik vir die drukknoppie -aansluiting en die 220Ω -weerstande vir die kleursensor -LED en die rooi en blou bene van die RGB -LED. Die weerstand van 470Ω word gebruik vir die groen been van die LED om die helderheid 'n bietjie te verminder om meer realistiese kleure te skep.

Die RGB -kleursensor is met die eenvoudige I2C -koppelvlak aan die Arduino gekoppel. Maak seker dat u die regte penne vir hierdie koppelvlak gebruik as u 'n ander bord gebruik. Dit word beheer met behulp van die Adafruit -biblioteek wat in die kode -afdeling bespreek word.

As u 'n ander Arduino -bord gebruik, moet u op elke pen dieselfde funksie hê as op die Pro Micro. U benodig byvoorbeeld PWM -penne vir die beheer van die RGB -LED om die gekose RGB -kleur te simuleer.

Stap 2: Programmering van u Arduino RGB -kleurkieser

Programmering van u Arduino RGB -kleurkieser
Programmering van u Arduino RGB -kleurkieser
Programmering van u Arduino RGB -kleurkieser
Programmering van u Arduino RGB -kleurkieser
Programmering van u Arduino RGB -kleurkieser
Programmering van u Arduino RGB -kleurkieser
Programmering van u Arduino RGB -kleurkieser
Programmering van u Arduino RGB -kleurkieser

Noudat u u komponente op die broodbord aangebring en die nodige verbindings gemaak het, kan u die kode op u Arduino met u rekenaar laai en kyk of die komponente korrek werk.

Kontroleer al u verbindings weer voordat u die USB -kabel in u Arduino aansluit om seker te maak dat dit korrek is. Die USB -kabel dryf die kaart en gekoppelde komponente aan, wat dit kan beskadig as dit nie korrek gekoppel is nie.

Hierdie spesifieke bord, die Arduino Pro Micro, dien as 'n Leonardo wanneer dit aan u rekenaar gekoppel is, dus maak seker dat u die regte bordtipe in die Arduino IDE kies, anders kry u foute as u die kode probeer oplaai.

Hier is 'n skakel na die RGB -kleurkieserkode: Laai die RGB -kleurkieserkode af

Die kode bevat opmerkings om te verduidelik wat elke afdeling doen. Die kleuridentifikasie en LED -gedeelte is gebaseer op die Adafruit -kleurbeskouing -voorbeeldkode. As u u eie kode wil probeer opstel, is dit 'n nuttige voorbeeld om mee deur te werk.

Die Adafruit -biblioteke moet geïnstalleer word. Dit word maklik gedoen deur op Tools -> Manage Libraries in u IDE te klik en dan "Adafruit TCS" in die soekbalk in te tik en die biblioteek wat gevind is, te installeer.

Enkele dinge waarna u in die kode moet let:

Die LCD -penne is in 'n vreemde volgorde (15, 14, 16, 4, 5, 8, 7). Ek probeer gewoonlik om die penne opeenvolgend te hou, maar in hierdie voorbeeld is dit 'n bietjie deurmekaar as gevolg van twee dinge, een omdat ek om die PWM -penne vir die LED moes werk en die tweede omdat die penne op die Pro Micro nie alles is nie in opeenvolgende volgorde.

Die kleursensor -LED en drukknop is gekoppel aan die analoog -ingange van die Pro Micro en word gebruik as digitale IO, aangesien daar nie genoeg digitale IO -penne beskikbaar was nie. Hulle word steeds in die kode gedefinieer as standaard digitale IO -penne.

Daar is 'n kort roetine om die LED tussen rooi, groen en blou te vervaag tydens die aanvang. Dit is slegs 'n visuele effek wat ongeveer 1,5 sekondes neem om deur te loop en verwyder kan word as u wil hê dat u kleurkieser vinniger begin.

Die program sal nie verby die opstelling vorder as dit nie 'n verbinding met die kleursensor tot stand bring nie; dit sal as 'sensorfout' op u LCD verskyn as dit geen verbinding kan bewerkstellig nie. As die LED brand, wat aandui dat die sensor aan is, kyk dan na u SDA- en SCL -verbindings en of u die regte Arduino -penne gebruik.

Die gammatabel omskakel eenvoudig die gemete RGB -waardes van die sensor in waardes wat 'n meer realistiese LED -voorstelling van die werklike kleur tot gevolg sal hê; dit is net om die LED -visualiseringseffek te verbeter en het geen uitwerking op die gemete RGB -waardes wat vertoon word nie.

Die kode wag dan op die ingang van die drukknop om die sensor van die leser te meet en die waardes op die LCD en deur die LED te wys. Die drie vertragings in die lus, as 'n verklaring eenvoudig is om te verhoed dat herhaalde metings geneem word voordat die knoppie weer losgelaat word, aangesien die werklike lees- en siklustyd ongeveer 100 ms sou wees; u kan ook met hierdie waardes speel as u wil kies vinniger of stadiger.

Stap 3: Installeer die komponente in die omhulsel

Die installering van die komponente in die omhulsel
Die installering van die komponente in die omhulsel
Die installering van die komponente in die omhulsel
Die installering van die komponente in die omhulsel
Die installering van die komponente in die omhulsel
Die installering van die komponente in die omhulsel

Om 'n nuttige en draagbare toestel te maak, het ek besluit om die komponente saam te soldeer en in 'n eenvoudige 3D -gedrukte omhulsel te monteer.

'N Kring van hierdie kompleksiteit moet waarskynlik op 'n PCB ontwerp word, maar die meeste mense het nie toegang tot PCB -vervaardigingsdienste nie, so ek het vasgehou om die komponente saam met dele van die lintkabel te soldeer.

Stap 4: Druk die omhulsel in 3D af

3D -druk die omhulsel
3D -druk die omhulsel
3D -druk die omhulsel
3D -druk die omhulsel
3D -druk die omhulsel
3D -druk die omhulsel
3D -druk die omhulsel
3D -druk die omhulsel

Ek het 'n basiese reghoekige behuising ontwerp vir die kleurplukker, die 3D -druk lêers kan hier afgelaai word. U kan ook kreatief raak en die ontwerp aanpas by u komponente en hoe u u kleurkieser gaan gebruik.

Die kleursensor is aan die agterkant, sodat u die toestel oor 'n voorwerp kan hou en die kleur kan kies met die uitlees aan die voorkant.

Ek het die behuizing gedruk met wit PLA en 20% vulsel, ek sal nie 'n gekleurde filament vir die agterpaneel gebruik nie, aangesien u nie gereflekteerde gekleurde lig op die oppervlak wil plaas nie.

Die behuisingsafmetings is ongeveer 110 mm (4,3”) x 46 mm (1,8”) x 20 mm (0,78”) met albei helftes saamgestel. Elke helfte is 10 mm (0,39”) hoog.

Stap 5: Soldeer die stroombaan

Soldeer die stroombaan
Soldeer die stroombaan
Soldeer die stroombaan
Soldeer die stroombaan
Soldeer die stroombaan
Soldeer die stroombaan

Sodra u die behuizing in 3D gedruk het, het u 'n idee van waar al die komponente gemonteer is en hoe lank u die soldeerkabelverbindings moet maak.

Begin deur elke komponent aan u Arduino te soldeer terwyl u dit van die broodbord verwyder en probeer om komponente te verwyder om 'n volledige stroombaan op 'n slag te vorm.

Begin byvoorbeeld met die LED-kring en soldeer die weerstande aan die LED en koppel dit dan aan die Arduino voordat u die drukknopkomponente verwyder. Op hierdie manier kan u die komponente dophou en seker maak dat u dit individueel met die regte Arduino -insette en -uitsette verbind.

Wees versigtig met die LCD -paneel en die kleursensor om seker te maak dat u die korrekte Arduino IO -poorte verbind.

Die kleursensorverbindings kan aan die 7 -pen vroulike kopstrook gesoldeer word (sny 'n 8 -pen kopstrook tot 7 penne) sodat dit deur die agterkant van die behuising ingeprop kan word. Dit stel die twee helftes in staat om behoorlik geskei te word as u dit moet oopmaak. U kan ook direk aan die kleursensor soldeer met 'n stuk lintkabel, maar maak seker dat die lintkabel deur die gleuf in die omhulsel loop voordat u die verbindings soldeer.

Daar is 'n aantal verbindings wat met GND en 5V gemaak moet word, en dit maak u soldeer makliker om dit aan groter sentrale punte te koppel eerder as om dit op die twee Arduino -penne te probeer soldeer. Ek het hulle almal op die twee buitebene van die LCD -potensiometer gekoppel, aangesien dit ongeveer in die middel van die behuising is en die grootste oppervlakte het om die verbindings te maak.

As u al u verbindings gemaak het en u tevrede is met die lengte van die lintkabels. Probeer om u stroombaan weer aan te skakel om te verifieer dat alles reg werk voordat die komponente in die behuising aangebring word. Maak seker dat nie een van die komponente of blootgestelde terminale aan mekaar raak nie, wat tot kortsluiting kan lei. Miskien moet u 'n bietjie isolasieband of papier tussen die komponente byvoeg om kortsluitings te vermy.

As u stroombaan korrek werk, kan u u komponente in die 3D -gedrukte behuizing monteer.

Stap 6: Monteer komponente in die omhulsel

Monteer die komponente in die omhulsel
Monteer die komponente in die omhulsel
Monteer die komponente in die omhulsel
Monteer die komponente in die omhulsel
Monteer die komponente in die omhulsel
Monteer die komponente in die omhulsel

Die laaste stap is om u komponente in u behuising te monteer. Ek het 'n smeltlijmpistool gebruik om die komponente te monteer; u kan ook epoxy of 'n klein hoeveelheid supergom gebruik.

Die kleursensor kan in die holte aan die agterkant van die behuizing vasgeplak word, met die penkopstrook aan die binnekant van die behuizing vassteek. Die vroulike kopstrook word dan gebruik om die sensor in die stroombaan aan te sluit.

Monteer die drukknop, LCD en LED deur die gate in die voorpaneel en plak dit aan die binnekant van die behuizing vas.

Jou Arduino moet styf in die gleuf in die basis pas en hoef nie gom te hê om dit vas te hou nie, maar as dit wel gebeur, moet jy nie gom op die komponente aan die agterkant van die bord plaas nie. Plaas eerder gom langs die rande van die bord.

Die mikro -USB -poort moet maklik toeganklik wees aan die kant van die behuizing.

Plak die twee helftes aan mekaar vas met die penne op die twee hoeke as riglyn. Dit moet styf saamdruk en help om die twee helftes bymekaar te hou. Maak seker dat nie een van u blootgestelde terminale of leidings op u weerstande, LED of potensiometer enigiets anders in u stroombaan raak nie, soos voorheen genoem. van die LCD.

Stap 7: Gebruik u RGB -kleurkieser

Gebruik u RGB -kleurkieser
Gebruik u RGB -kleurkieser
Gebruik u RGB -kleurkieser
Gebruik u RGB -kleurkieser
Gebruik u RGB -kleurkieser
Gebruik u RGB -kleurkieser
Gebruik u RGB -kleurkieser
Gebruik u RGB -kleurkieser

Om u kleurkieser te gebruik, steek 'n mikro -USB -kabel in die poort aan die kant van u kleurkieser om dit aan te skakel.

Die opstartvolgorde moet loop en dan kan u 'n kleur kies, aangedui deur Color Picker Ready.

Plaas die sensor oor die kleur wat u wil kies en druk dan op die knoppie om die kleur te kies. Die LED -lig op die sensor moet kortliks brand, waarna u 'n RGB -uitlees op die LCD kry en die LED sal verander om die gekose kleur te weerspieël.

Die RGB LED is bedoel om u 'n aanduiding te gee van die kleur wat geïdentifiseer is. Dit is slegs 'n vinnige manier om na te gaan of die sensor die korrekte kleur opgeneem het en nie altyd 'n akkurate voorstelling van die kleur is nie, weens beperkings met die LED. Hulle kan byvoorbeeld nie swart of grys toon nie, aangesien die werklike LED -materiaal wit is en slegs lig kan produseer om kleure weer te gee. Om dieselfde rede verskyn donkerder kleure ook nie goed op die LED nie.

As u hierdie Instructable geniet het, stem dan daarvoor in die Make It Glow Contest.

Kyk na my blog vir meer Arduino -tutoriale, -projekte en -idees.

Maak dit Glow Contest
Maak dit Glow Contest
Maak dit Glow Contest
Maak dit Glow Contest

Naaswenner in die Make it Glow -wedstryd

Aanbeveel: