Magische kleur kopiëren Chameleon Lamp (6 / 7 stap)

Stap 6: De geest in de Lamp


Oke, er is geen magische genie, maar het is eindelijk, tijd om te coderen de Arduino, spelen met uw nieuwe sensor en genieten van alle voordelen die komen samen met het hebben van een lamp zo onopvallend dat het probeert te mengen in de omgeving...
Umm, als u aan een voordeel denken kunt, laat het me weten, ik had moeite met die ene.

Ik heb ook de code als een tekstbestand, u moet openen in een teksteditor en kopieer en plak deze in het milieu van de Arduino. Of, indien gewenst, gewoon open de Arduino software en volg langs als we gaan schrijven.

Voor de emulatie-lamp ben ik met behulp van mijn eigen Moodlamp-bibliotheek, kunt u de bibliotheekbestanden en documentatie op mijn andere RGB Instructable, RGB-Moodlamp met aangepaste bibliotheek. Anders kunt u gewoon kopiëren van de sensor van de kleur code en output naar je RGB lamp in uw voorkeur wijze behandelen.

Dus laten we eens kijken naar de code.
Begin met de eerste afbeelding, of volgen samen met het tekstbestand.

We beginnen met een include-instructie gevolgd door een paar verklaringen.
De include-instructie is voor de Moodlamp-bibliotheek. De verklaring onder is gewoon te zeggen dat onze exemplaar van Moodlamp licht zal worden genoemd.
Dan we een paar van de houders van de plaats zetten.
De eerste is een array dat we gebruiken zullen om aan te pakken van de pinnen dat LEDs op zijn aangesloten. Herinner me dat wij onze sensor lampen aangesloten op die dezelfde pin-nummers.
De anderen moeten worden duidelijk genoeg door de notities in het beeld, zo niet, vrees niet, ze zijn slechts enkele plaats houders voor waarden die we later zullen gebruiken.

De houder van de plaats voor de gemiddelde lezing is niet speciaal, het kreeg zijn eigen beeld, omdat het bijna was vergeten.

Zodra alle onze verklaringen zijn aangebracht, moeten we zal nu het setup-functie schrijven. We beginnen met het toewijzen van onze sensor output pinnen. We hoeven niet te verklaren de analoge ingang van de sensor en de pinnen van de lampen worden opgevangen door de Moodlamp-bibliotheek.
Dan beginnen we seriële communicatie zodat uit onze lamp kunnen we sommige debugging informatie terug krijgen.

Daarna kunnen we doorgaan met onze lus functie. De lus is de code die de Arduino opnieuw en opnieuw wordt uitgevoerd. Zoals u kunt zien zijn we een paar functies aanroepen.
Eerste noemen we checkBalance om te zien als het evenwicht heeft geweest stelt en het indien nodig. (Wanneer het ingeschakeld)
Vervolgens controleren we de kleur onder de sensor. Zodra we een kleur hebben, we het afdrukken op het scherm, en stel vervolgens de kleur van de lamp. De laatste aanroep van getReading doet niets nuttig helemaal, liet het daar per ongeluk. Ach, ik kan beweren dat ik enkel hield de lamp uit te inactiviteit.

Dus laten we eens kijken naar de verschillende functies.

CheckBalance is vrij rechttoe-rechtaan, wordt gecontroleerd om te zien of er een evenwicht bestaat en als dit niet gebeurt, dan het ingesteld door het aanroepen van de functie setBalance.

Laten we eens kijken naar de setBalance-functie, het is de langste.

Eerst pulse we het licht rood tweemaal en vervolgens wit met behulp van de Moodlamp-bibliotheek. Dit is om te waarschuwen de exploitant dat de witte scan is gaan plaatsvinden. Verlaten van de lamp wit (alle drie kleuren op) verlaat zo veel storende licht mogelijk voor onze basislijn scans die ze even evenwichtig houdt.

Wat de volgende sectie doet is licht het rood en groen, groene LEDs dan terwijl het nemen van een sensor lezen bij elke stap. Dit geeft ons enkele gegevens over hoeveel van iedere kleur werd teruggekaatst naar de sensor. Deze lezingen moet hoog zijn, want het is wit, die een afspiegeling alot voor elke kleur.

Als de zin is niet afgeleid, moet u een voorbeeld van wit (een kaart of een papier) onder de sensor plaatsen terwijl deze scan plaatsvindt. Het hele ding duurt ongeveer drie seconden. De scan minder dan één.

Wanneer u klaar bent met het scannen van wit, scant we zwart. Er zijn enkele waarschuwing lichten weer, een vertraging, waarna de scan. Hier zult u een zwarte of grijze steekproef onder de lamp. Zullen we een beetje meer over wat uw monster hoger zou moeten zijn.

Zodra de tegenrekening scans zijn voltooid, wordt de lamp dooft, en we de Booleaanse waarde voor het al dan niet evenwicht waarden zijn vastgesteld op true.

Zodra de saldi hebben vastgesteld, ons programma zal nu beginnen met het controleren van de kleur onder de sensor, kans groot dat in de fysieke wereld u nog niet hebt verwijderd uit uw zwarte monster, maar nooit geest dat wij spraken over de code.

Als u hebt gevolgd wat er gaande was met de tegenrekening scan, zijn wij vrijwel hetzelfde te doen. Het grote verschil is dat we wat wiskunde gebruiken om het evenwicht van onze nu te lezen. In principe zijn we veranderen onze lezing op basis van de maximale en minimale mogelijk lezingen, en daarmee een waarde we kunnen gebruiken, namelijk tussen 0-255(roughly). Dat geeft ons een mooie eerlijke vertegenwoordiging van kleur.

Na dat instellen we gewoon de kleur. We moeten gewoon tweek de nummers een beetje, omdat vaak de bovenstaande wiskunde groter dan of kleiner dan onze acceptabele waarden retourneert. Toen we de rode, groene en blauwe variabelen instellen en gebruiken van de Moodlamp bibliotheek om de kleur weer te geven.

Ik vergat bijna te vermelden van de functie van getReading, die enkel krijgt gemiddeld lezen voor keer aantal lezingen. Geen strickly nodig, als één lezing lijkt voldoende, maar ik wist niet dat op het moment.

De twee afdrukfuncties zijn voor foutopsporing, en gewoon af te drukken onze lezingen op de seriële poort. Ja weet ik ik noem een in de lus, maar u niet moet. Net als ik nummers soms scrollen. Plus ik was outputting te verwerken tijdens het testen, om te zien precies wat de kleur van de sensor zien. Ik zal proberen om de tijd om te documenteren en te uploaden die schets in de nabije toekomst te vinden, maar voor nu je bent op uw eigen. (Niet moeilijk als u bekend met de verwerking en seriële communicatie bent)

Zodra u klaar met het schrijven van uw code bent, uploaden naar de lamp en beginnen te spelen. Door te spelen ik bedoel test... maar op een leuke manier.

Gerelateerde Artikelen

USB-Chameleon Lamp (kleur repliceren)

USB-Chameleon Lamp (kleur repliceren)

Een andere geweldige manier om te gebruiken voor uw eigen kleur Sensor is een "kleur Sensing en repliceren Lamp" of gewoon een kameleon lamp. De kameleon-lamp is een super-easy-aan-bouwstijl-project dat kan worden gebruikt als een nachtlampje of
Kopiëren met drie schappen - goedkoop en gemakkelijk te bouwen

Kopiëren met drie schappen - goedkoop en gemakkelijk te bouwen

ik verzamel veel van documenten als onderdeel van mijn werk; onlangs besloten heb ik dat ik moet laten de bladen van 'boom stuff' terugkeer naar het milieu en opruimen van mijn bureau en leefruimte door het scannen van alles wat die ik kon. Ik had on
Het maken van een nep-ID - kopiëren en wijzigen van uw kaart

Het maken van een nep-ID - kopiëren en wijzigen van uw kaart

In dit Instructable, ik zal u tonen hoe te maken van een duplicaat van in principe elke ID of andere soort kaart. Ik zal ook de methoden voor het wijzigen van deze kaart voor een soort van nieuwheid doel schetsen.U ziet ik zeg de nieuwigheid - dit is
Gemakkelijke manier om te kopiëren van een sleutel.

Gemakkelijke manier om te kopiëren van een sleutel.

Bent u net als ik en hebben een aantal ongebruikte oude sleutels ergens in uw huis deze truc kon in handig komen.Vandaag was ik gaan om te kopiëren van een sleutel met mijn dremel als hulpmiddel dus heb ik 2 sleutels in de bankschroef.Het was een ech
LED dia kopiëren

LED dia kopiëren

Hallo, mensen!Zoals ik ben fotograaf, dus ik verzamel enorme aantal Kodacrome, de beroeps van Fujichrome... Dias. Chemie. Licht en zilver. Analoge fotografie. 36 foto's. Wachten voor de ontwikkeling. Ja.Hey, wanneer was dat?  Stel je voor een dia na
Geavanceerde bestand kopiëren met batchbestanden!

Geavanceerde bestand kopiëren met batchbestanden!

WAARSCHUWING: IK HEB DIT VOOR EDUCATIEVE DOELEINDEN. IK BEN NIET VERANTWOORDELIJK VOOR IETS DAT GEBEURT TERWIJL U DIT GEBRUIKT.Hey iedereen! vandaag zal ik je laten zien hoe maak je een bestand kopiëren van batch-bestand (mijne is op een 32 GB flash
In het geheim gegevens vanuit pendrive kopiëren naar pc.

In het geheim gegevens vanuit pendrive kopiëren naar pc.

Hallo jongens..!Vandaag ga ik u tonen hoe in het geheim de gegevens kopiëren vanuit pendrive naar pc...!Ik heb gepost dit instructable omdat... Ik had een situatie die ik heb de gegevens kopiëren vanuit pendrive naar computer in het geheim,,, ok maar
Gridding... een foto maken van elke afbeelding groter, kleiner, of kopiëren.

Gridding... een foto maken van elke afbeelding groter, kleiner, of kopiëren.

Gridding een afbeelding is al voor honderden jaren. U kunt gridding om een afbeelding groter, kleinere of dezelfde grootte (kopiëren). Gridding is een mathmatical proces maar laat niet dat schrik je... het is gemakkelijk.Ik ga geven u de basis en met
Uw i-Tunes PC-bibliotheek kopiëren naar een nieuwe locatie

Uw i-Tunes PC-bibliotheek kopiëren naar een nieuwe locatie

Laten we zeggen dat je PC is oud... tijd om het te vervangen. U hebt alle uw vinyl gebrand (45's en albums), gekopieerd alle uw CD's, kocht een heleboel downloads van de i-Tunes store in de afgelopen paar jaar, en een manier om al die muziek en video
Stand of boek Scanner boor staan kopiëren

Stand of boek Scanner boor staan kopiëren

ik ben met behulp van boor stand als slim aftasten stand of Kopie staan voor het scannen van boeken met behulp van de 'cam scannersoftware' met behulp van een tablet of smartphone houder bijlage bedacht door mijzelf. Het scannen van boeken! Deze bijl
Voorkomen dat iemand uw gegevens zonder enige software te kopiëren. Uitschakelen schrijf toegang tot uw USB-drives.

Voorkomen dat iemand uw gegevens zonder enige software te kopiëren. Uitschakelen schrijf toegang tot uw USB-drives.

Hallo iedereen,Deze tutorial zal u om te stoppen met iemand van het kopiëren van uw gegevens in hun pen-stations zonder enige software.We hebben allemaal onze privégegevens en we willen niet dat iedereen van onze gegevens kopiëren maar ze zeggen niet
Geheime spion foto kopiëren batch afbeeldingsbestand

Geheime spion foto kopiëren batch afbeeldingsbestand

Dus, eerste dingen eerst, wat is dit instructable maken en waarom.Dit instructable zal u toelaten om een batchbestand maken dat alle afbeeldingen wordt gekopieerd vanaf een PC naar je MemoryStick. zij zal dit doen discreet, die zich voordeed als een
Het kopiëren van DVD's--gratis en legaal!

Het kopiëren van DVD's--gratis en legaal!

Ik veronderstel geen RESPONSIBLITY van uw acties. DIT IS VOOR EDUCATIEVE DOELEINDEN. ATTEMT OP JE VRIJE WIL. NIET DE SCHULD VAN IETS OP ME.Er, met die uit de weg, laat het me uitleggen een beetje over dit. U kunt elke DVD kopiëren, en ik bedoel om he
Kopiëren of scannen van dun papier zonder Bleedthrough van de rug

Kopiëren of scannen van dun papier zonder Bleedthrough van de rug

Het drukken op de achterzijde van dun papier kan bloeden door wanneer u kopiëren of scannen van een afbeelding van de voorzijde, zoals wordt geïllustreerd door de begeleidende foto. De oplossing lijkt contra-intuïtief, maar het werkt.Stap 1: Lichte a