Magisk färg kopiera kameleont lampa (6 / 7 steg)

Steg 6: Anden i lampan



Okej, det finns inga magiska genie, men är det slutligen dags att komma till kodning Arduino, leker med din nya sensor och njuta av alla fördelar som kommer med på att ha en lampa så diskret att den försöker smälta in i sin omgivning...
UM, om du kan tänka på en förmån, låt mig veta, jag har problem med att en.

Jag har inkluderat koden som en textfil, måste du öppna den i en textredigerare och sedan kopiera och klistra in den i Arduino-miljö. Eller, om du föredrar, bara öppna programvaran Arduino och följa med skriva det när vi går.

För emulering lampan jag använder min anpassade Moodlamp bibliotek, kan du få biblioteksfiler och dokumentation på min andra RGB Instructable, RGB Moodlamp med anpassade bibliotek. Annars kan du bara kopiera färg sensorn hantering av koden och utgång till din RGB lampa på din föredragna sätt.

Så låt oss titta på koden.
Börja med den första bilden, eller följa med textfilen.

Vi börjar med en include-deklaration följt av ett par förklaringar.
Include-uttrycket är för Moodlamp-biblioteket. Deklarationen under är bara att säga att vår instans av Moodlamp kommer att kallas lampa.
Sedan satt vi upp ett par platshållare.
Först är en matris att vi kommer att använda ta stiften som lysdioder är anslutna till. Kom ihåg att vi kopplade vår sensor lampor till de samma pin-koder.
De andra bör vara tillräckligt tydligt av anteckningarna i bilden, om inte, aldrig är rädd, de är bara några platshållare för värden som vi kommer att använda senare.

För den genomsnittliga behandlingen är inte speciella, det fick egen bild eftersom det nästan förbises.

När alla våra uttalanden har gjorts, måste vi nu att skriva setup-funktionen. Vi börjar genom att tilldela sensor utgångsstift. Vi behöver inte deklarera den analoga ingången på sensorn och lampor stiften är tas om hand av Moodlamp biblioteket.
Då vi börja seriell kommunikation så att vi kan få några felsökningsinformation tillbaka från vår lampa.

Efter det kan vi fortsätta våra loop funktion. Slingan är kod som Arduino kommer att köra igen och igen. Som ni ser kräver vi några funktioner.
Först kallar vi checkBalance för att se om balansen har in och ställa in den om det behövs. (När det visar)
Så vi kolla färgen under sensorn. När vi har en färg, vi skriver ut det på skärmen och ange färg på lampan. Sista anropet till getReading gör ingenting användbart alls, lämnat det där av en slump. Nåja, jag kunde hävda att jag bara var att hålla lampan från att vara för tomgång.

Så låt oss titta på de olika funktionerna.

CheckBalance är söt rak-vidarebefordra, kontrollerar den om en balans finns och om inte, då det skiljer det genom att funktionen setBalance.

Låt oss titta på funktionen setBalance, det är den längsta.

Först puls vi ljus röd två gånger och sedan vit med Moodlamp biblioteket. Detta är att varna operatören att vita scan håller på att ske. Lämnar lampan vit (alla tre färg på) lämnar så mycket störande ljus som möjligt för vår baseline-skanningar som håller dem lika balanserad.

Vad följande avsnitt inte är ljus röd, sedan grön, grön sedan lysdioder medan du tar en sensor avläsning vid varje steg. Detta ger oss vissa uppgifter om hur mycket av varje färg reflekterades tillbaka till sensorn. Dessa värden bör vara hög eftersom det är vitt, som bör återspegla en lott för varje färg.

Om innebörden inte är sluta sig till, måste du placera ett urval av vita (ett kort eller ett papper) under sensorn samtidigt här sökningen sker. Hela varar ungefär tre sekunder. Genomsökningen mindre än 1.

När du är klar med scanning vit kommer vi scanna svart. Det finns några varningslampor igen, en fördröjning och sedan Skanna. Här kommer du ett svart eller grå prov under lampan. Vi kommer att prata lite mer på vad ditt prov bör senare.

När balanserande skanningar är slutförda, lampan slocknar och vi ange ett booleskt värde om balanserande värden har fastställts till true.

När saldona har ställts in, vårt program kommer nu att börja kontrollera färgen under sensorn, chansen att i den fysiska världen du fortfarande inte har tagit bort den från din svarta prov, men Skitsamma, vi talade om koden.

Om du följde vad som hände med balanserande scan, är vi ganska mycket gör samma sak. Den stora skillnaden är att vi använder några matte för att balansera våra läser nu. I grunden ändrar vi vår behandling baserat på de högsta och lägsta möjliga läsningar, och gör det ett värde vi kan använda, nämligen mellan 0-255(roughly). Vilket ger oss en ganska rättvis representation av färg.

Efter att sätta vi helt enkelt färg. Vi behöver bara snurra siffrorna lite, eftersom ofta matematik ovan returnerar större eller mindre än våra acceptabla värden. Sedan vi variablerna röd grön och blå och använda Moodlamp biblioteket för att underlätta visar färgen.

Jag glömde nästan nämna den getReading funktionen som blir bara genomsnitt läsning för gånger antal avläsningar. Inte strickly nödvändigt, som en läsning verkar tillräckligt, men jag visste inte att på tiden.

Två utskriftsfunktionerna är för felsökning ändamål, och helt enkelt skriva ut våra läsningar till den seriella porten. Ja vet jag jag kalla en i slingan, men du inte behöver. Jag gillar bara rullning nummer ibland. Plus att jag utskrift av det till bearbetning under testning, för att se exakt vad färg sensorn är att se. Jag ska försöka hitta tid att dokumentera och ladda upp den skissen i en nära framtid, men för nu är du på egen hand. (Inte hårt om du är bekant med bearbetning och seriell kommunikation)

När du har skrivit din kod, ladda upp den till lampan och börja spela. Genom att spela menar jag testa... men på ett roligt sätt.

Se Steg
Relaterade Ämnen

USB kameleont lampa (färg replikera)

En annan awesome sätt att använda din egen färgsensor är en "färg avkänning och replikera lampa" eller helt enkelt en kameleont lampa. Chameleon lampan är ett super-super-Easy-till-bygga projekt som kan användas som en nattlampa eller bara som e...

Använder en RGB LED att upptäcka färger

jag kommer att visa dig hur du använder en RGB LED och CD-skivor fotocell som en färg sensor för en mikro-controller. Jag kommer att illustrera metoden för att hämta en färg genom att använda Arduino, och jag kommer att visa dig en hur du kan kontrol...

Fullt fungerande LEGO trafik signallampa

som många av er vet, de flesta av mina LEGO skapelser är en blandning av min barndom passioner, särskilt transformatorer, Nintendo, och uh, trafik ljus? Ja gott folk, det är en Baron von Brunk känt, men när jag var en pissa pojke, jag hade en udda be...

Din egen färgsensor med hjälp av lysdioder

Visste du att du kan göra en "billig" men effektiv färgsensor med några grundläggande komponenter?Denna superenkla instructable kommer guide du gör din egen färg med hjälp av sensor en massa lysdioder och en LDR.Jag har lyckats göra ett väl ordn...

Hur man gör farbror gro magiska lampa

jag blev inspirerad av TV Visa '' Adams familj '' där Uncle Fester lysa en lampa med sin kropp, så jag väljer att göra magiska lampa som lyser när du vill.Du behöver grundläggande kunskaper i lödning några material som lysdioder, motstånd, reed switc...

Aladdins magiska lampa

Titta på videon genom att klicka på bilden (måste vara på en dator) eller klicka på youtube-länken här om du är på telefonen: https://youtu.be/cK7h7kpavm4...

En gratis utbud livsmiljö för Mellers och andra stora kameleonter

detta instructible kommer att visa dig hur vi konstruerade och tillverkade en frigående livsmiljö för vår sällskapsdjur Mellers kameleonter. Mellers kameleonter är en bestämt stor art, växer nästan två fot i längd. För att ge dem det utrymme de behöv...

Stående lampa gjord av akryl

KungörelseOm du stöter på några problem eller fastnar på någon punkt inom instructable (särskilt i den bild bearbetning avsnitt eller om några delar) bara gärna skicka mig ett Instructable-meddelande eller ett e-postmeddelande och jag ska göra mitt b...

Eclipse Lamp

Eclipse lampan är en enkel, trä cirkel som hänger på en vägg och tonas till en mjuk glöd när du slår.Ljuset lyser genom ett tunt lager av träfanér på framsidan av skivan och halvcirkelformade hål i ryggen skapar en halo-liknande glöd på väggen bakom...

Hur: storasyster, Bioshock 2 hjälm/lampa

vill ha en awesomesauce videospel karaktär baserad hjälm och skrivbord lampa!?!?Detta instructable kommer att visa dig hur jag gjorde min version av en storasyster hjälm från populära TV-spelet Bioshock 2.Jag gör inte anspråk på att ha gjort en exakt...

Antik lampa orgel - MIDI/OSC kontrollerade

skapa din egen antik lampa orgel för att lägga till nostalgisk atmosfär midi instrument!12 glödlampor motsvarar de 12 tonerna i en oktav (minus oktav tonen). Rektangulära rutan utspelar sig om du vill placera ljuskällorna vertikalt för display, medan...

Hur man skapar en Laser skär lampa

Laserskärning, enkelt uttryckt, använder en hög beam (eller en laser) vid olika hastigheter och makt för att skära/etch ett visst material. Laserklingor liknar hur en skrivare fungerar. Det är med hjälp av en laserstråle speglar en bild på något, för...

Aurora skugga lampa: D

Det hela började en fin morgon, i material och bearbetning Lab 203, när vår instruktör bad oss att göra en lampa. Något som ger ut ljus och skapar magi sade han. Rädda materialet runt omkring dig att göra detta, tillade han vidare.Vi beslutade att an...

DIY-Laser skär lampa

Välkommen! Idag, kommer jag att visa dig ho för att göra en Laser skär lampa med en laserskärare och några material.Vad vi behöver:Bearbetning (version 2.2.1)Data överför länk: https://processing.org/download/?processingInkscapeData överför länk: htt...

Designa en Laser skär lampa

http://manyphotons.com/wp-content/uploads/Branch-1-r-710x1024.jpgSteg 1: Installera bearbetning, Inkscape och kvarts programvara krävs för att skapa din design på den laserskärare.Steg 2: Öppna filen installerade (bearbetning)Steg 3: Öppna (bibliotek...

Alladin's LED lampa.

Detta är en Alladin lampa som användes i 40-talet och 50-talet.Det kördes på fotogen och hade en silk mantel som gav ett starkt vitt ljus.Jag fann det om i rummet skräp och det hade inte använts på länge.Det hade en vackra utseende så tänkte jag ge d...

Vackra aceton lampa från återanvända material.

Måste jag erkänna att det, jag har en svaghet för lampor, i princip känner jag dras till allt som sänder ut ljus, jag har gjort oljelampor, gaslampor, jag har använt lysdioder, neon-lampor... Jag har testat många former för att skapa ljus, men mycket...

Canvas lampa (skuggeffekt)

Detta är en unik lampa. I grund och botten kan papperet Visa många toner av svart eftersom det har många lager, ju tjockare lager, ju mörkare tonen. För att skapa denna effekt, måste papperstypen vara extremt tunna, jag försöker först med kopieringsp...

Virkade spetsar murare burk lampa

Jag har mycket svårt att kasta bort glasburkar. Ingen Glasåtervinning finns här, så jag försöker använda min burkar med lock om och om igen. (Några gånger mängden glas över whelms, så jag måste slänga dem). På Pintrest såg jag en burk som hade täckts...