Inhoudsopgave:

Interactief, open source sfeerlicht - Ajarnpa
Interactief, open source sfeerlicht - Ajarnpa

Video: Interactief, open source sfeerlicht - Ajarnpa

Video: Interactief, open source sfeerlicht - Ajarnpa
Video: Dangers of Open Source Large Language Models 2024, Juli-
Anonim
Interactief, open source sfeerlicht
Interactief, open source sfeerlicht

Deze instructable laat zien hoe je een interactief, multifunctioneel sfeerlicht kunt maken. De kern van dit project is de BlinkM I2C RGB LED. Toen ik op een dag op internet aan het surfen was, trok de BlinkM mijn aandacht, en ik dacht dat dat veel te cool was om te laten liggen. Dus een paar maanden later besloot ik er een soort sfeerlicht van te maken. En hier is het!

Stap 1: Wat heb je nodig

Dit project kan behoorlijk goedkoop zijn als je de juiste dingen gebruikt. Ik zal alternatieve onderdelen noteren die kunnen worden gebruikt om het minder duur te maken om te maken. Ik heb alleen wat componenten gebruikt die iets duurder zijn, omdat het het bouwproces een beetje gemakkelijker maakt.

De lichtbron:

BlinkM RGB I2C-gestuurde LED

De controller:

Arduino-microcontroller - ik gebruikte een 'Arduino Nano' omdat ik iets nodig had dat heel klein was, vanwege de hoeveelheid beschikbare ruimte in het 'aanraaklicht' dat werd gebruikt om alles te huisvesten

Huisvesting:

Ik heb veel verschillende behuizingen overwogen voor deze sfeerverlichting, en uiteindelijk kwam ik uit op iets dat we allemaal kennen: die goedkope-o, witte, 'touch dome lights'. Ik vond een two-pack in home depot voor slechts ongeveer $ 4. De hoeveelheid ruimte in deze lampen is meer dan genoeg om alle componenten in te passen, als je het goed doet.

Voeding/connectoren:

In het begin dacht ik dat het cool zou zijn om dit op batterijstroom te laten werken (omdat de behuizing al een batterijcompartiment heeft), maar het is niet zo praktisch als je het voor lange tijd gaat gebruiken. In plaats daarvan gebruikte ik een 5,5 mm DC-voedingsaansluiting van Radioshack met een 12V 150Ma-transformator die ik had liggen. De regelaar aan boord van de arduino brengt de 12 volt naar beneden en 150 Ma was voldoende stroom om alles van stroom te voorzien. Voor draad gebruikte ik gewoon wat ik in de buurt had. Zorg er echter voor dat u massieve kerndraad gebruikt.

componenten:

De componenten worden gebruikt om de drie sensoren voor het sfeerlicht te maken: de geluidssensor, de 'tik'-sensor en de lichtsensor. Voor de geluidssensor heb je nodig: - LM741 Op-Amp - Electret Microhone (3-draads) - 2.2k weerstand - 100k weerstand - 200k weerstand - 0.47uf elektrolytische condensator - 0.047uf keramische condensator - 2x 10k weerstanden - DiodeVoor de 'tik'-sensor, je hebt alleen nodig: - Piezo-element (je kunt dit redden van bepaald elektronisch speelgoed, telefoons en vele andere elektronische apparaten die piepen, of je kunt het krijgen van mouser, radioshack, enz.). - 1M weerstand …En voor de lichtsensor heb je nodig: - CdS-cel (LDR), bij voorkeur een zeer grote (meer resolutie). - 10K weerstand - 3-pins header & gekrompen connectordraden (optioneel)

Ander

Ik gebruikte een breadboard omdat ik niet echt veel wilde solderen. Ik heb ook veel gekrompen connectordraden gebruikt om alle verbindingen veiliger te maken, maar die zijn optioneel. Als alternatief kunt u een homebrew-ontwikkelbord gebruiken om de ATmega168 micro te ondersteunen, en een DIP-achtige ATmega168 (de lange met de grotere leads). Ik weet niet zeker hoe goed dat zou passen, maar het is zeker het proberen waard. Als je het geld niet hebt voor een breadboard, kun je een gewone ATmega168 op een PCB solderen en de regelaar, programmeerverbindingen, enz. toevoegen.

Stap 2: Bereid de 'touch Light' voor

Bereid de 'touch Light' voor
Bereid de 'touch Light' voor
Bereid de 'touch Light' voor
Bereid de 'touch Light' voor
Bereid de 'touch Light' voor
Bereid de 'touch Light' voor
Bereid de 'touch Light' voor
Bereid de 'touch Light' voor

Ten eerste moeten we het goedkope 'touch light' dat we in huisdepot hebben gekregen, lichtvriendelijk maken. Draai eerst de lamp om en verwijder het batterijdeksel en de schroeven. In het batterijcompartiment zie je de gloeilamparmatuur. Haal het eruit en gooi het en de gloeilamp weg. Open vervolgens de behuizing. Nu moeten we omgaan met de macht. Verwijder het stuk metaal in het midden van het batterijcompartiment en de draad waarmee het is verbonden met een van de batterijcontacten. Soldeer de draden op de batterijcontacten zoals afgebeeld. Misschien wilt u ze ook labelen als u geen draad met een andere kleur heeft. We gaan deze sfeerlamp ook bedienbaar maken via een wandcontactdoostransformator. Boor een gat met een boor die ongeveer even groot is als de diameter van de gelijkstroomaansluiting. Schroef hem vervolgens vast tot hij gelijk ligt met de behuizing. De laatste wijziging die we hier moeten maken, is om de piëzo-tapsensor toe te voegen. Voor een betere gevoeligheid kunt u hem het beste op de kunststof 'rand' monteren. Ik heb het later in deze instructable ergens anders gemonteerd, maar dat is alleen omdat ik de behuizing tijdens het testen zo vaak heb moeten openen en sluiten dat de draden begonnen te breken. Lijm het gewoon heet op het plastic, maar zorg ervoor dat het de mechanische beweging op de beweegbare koepel niet belemmert! (d.w.z. laat het niet te veel uitsteken).

Stap 3: Stroomkringbeveiliging toevoegen

Stroomkringbeveiliging toevoegen
Stroomkringbeveiliging toevoegen

Dit onderdeel is een eenvoudige add-on die diodes gebruikt om te voorkomen dat de muurtransformator/batterijen aanbranden als u de batterijen hebt geïnstalleerd terwijl u de gelijkstroomaansluiting gebruikt. U kunt alle blokkeerdiodes gebruiken zolang de maximale nominale spanning ervoor hoger is dan de nominale waarde van de wandtransformator. Het onderdeel met het label 'VIN' in de niet-gereguleerde stekkerdoos op het breadboard (die naar VIN op de Arduino gaat). Het onderdeel met het label 'DCPower' is de DC-voedingsaansluiting. Om de een of andere reden was het programma dat ik gebruikte om dit schema te maken erg kieskeurig wat betreft labels, dus laat ik het zo noemen. OPMERKING: Als u deze schakeling niet maakt, kunt u de batterijen NIET in het batterijcompartiment bewaren terwijl u de sfeerverlichting op de wandtransformator hebt aangesloten, anders zal deze beschadigd raken.

Stap 4: Voeg de Breadboard, Arduino en BlinkM. toe

Voeg de Breadboard, Arduino en BlinkM. toe
Voeg de Breadboard, Arduino en BlinkM. toe

Voordat we het breadboard toevoegen, moeten we de batterijcontacten isoleren van de metalen achterkant van het breadboard (dat wil zeggen, als je de metalen plaat aan de jouwe hebt geplakt. Als dat niet het geval is, sla deze stap dan over). Plak wat plakband over alle metalen contacten om ervoor te zorgen dat ze geïsoleerd zijn. We willen geen blootliggende draad. Lijm nu het breadboard bovenop het batterijcompartiment vast (ik gebruikte hete lijm). Gelukkig voor ons past het perfect. Steek nu de positieve (+) en negatieve (-) draden van stap 2 in een van de positieve en negatieve stekkerdozen van het breadboard. Nu kunnen we de arduino en de blinkm met elkaar verbinden. Dit zijn de pinverbindingen:

  • A5 - Klok (aangeduid met 'c' op de BlinkM)
  • A4 - Gegevens (aangeduid met 'd' op de BlinkM)

En als je dat hebt gedaan, sluit je de ONGEREGLEMENTEERDE VCC (+) aan op de 'VIN'-pin op de arduino en de GEREGLEMENTEERDE VCC op de (+) pin op de BlinkM. Sluit vervolgens GND op de arduino en BlinkM aan op de GND op de stekkerdoos en overbrug beide GND-stekkerdozen. LET OP dat u deze verbindingen niet verwisselt, anders zou u de BlinkM kunnen braden.

Stap 5: De sensoren - geluid, tik en licht

De sensoren - geluid, tik en licht
De sensoren - geluid, tik en licht
De sensoren - geluid, tik en licht
De sensoren - geluid, tik en licht
De sensoren - geluid, tik en licht
De sensoren - geluid, tik en licht

De volgende in de rij zijn de sensoren. De lichtsensor is het eenvoudigst te construeren. De draad die naar rechts gaat, maakt verbinding met de Arduino. Meer informatie over OP WELKE pinnen de sensoren aansluiten, vindt u in de volgende stap. De geluidssensor is iets moeilijker, maar niet belachelijk complex. LET OP: ik heb hier geen spanningsdelerschakeling getoond. De 2,5V in het schema moet worden geleverd via een zogenaamde 'spanningsdeler'. Het is een heel, heel eenvoudig circuit dat bestaat uit meerdere vaste weerstanden, of een pot (potentiometer). Gebruik een 50K pot voor dit circuit. Google 'spanningsdeler' en kijk naar de wikipedia-vermelding voor hulp bij het bouwen ervan. EDIT 27-09-08: Ik heb dit geluidscircuit gedumpt en in plaats daarvan een gebruikt die was geborgen uit een door geluid geactiveerde oplichtende hanger. Het circuit werkt hier niet zo goed; Ik weet niet zeker waarom, maar het ontwerp is gebrekkig; er klopt iets niet. Ik merkte dat het circuit van de hanger een SMD LM386 op-amp gebruikt. Ik heb net gesoldeerd voordat de weerstanden naar de LED's, VCC en GND gaan. Daarna hoefde ik alleen nog maar de waarden in de software een beetje te manipuleren, en presto! beter werkend geluidsgevoelig sfeerlicht. Op dit moment is de video van het licht dat pulseert op muziek toen het originele circuit werd gebruikt. Misschien zal ik er nog een uploaden met het verbeterde ontwerp (het lijkt meer alsof het reageert op de muziek vanwege het nieuwe circuit). Ik wist niet zeker hoe ik het piëzo-element moest solderen, dus ik vermoedde en soldeerde het zoals afgebeeld. Het werkt wel. De polariteit van de piëzo maakt niet uit. De weerstand bevindt zich op het breadboard (niet afgebeeld). Een andere BELANGRIJKE OPMERKING: de waarden voor deze circuits ZULLEN verschillen van die van u, dus u MOET wat aanpassingen aan de code doen. Als je vragen hebt over deze waarden, laat het me dan gerust weten.

Stap 6: Vind ruimte voor de sensoren en sluit alles aan

Vind ruimte voor de sensoren en sluit alles aan
Vind ruimte voor de sensoren en sluit alles aan
Vind ruimte voor de sensoren en sluit alles aan
Vind ruimte voor de sensoren en sluit alles aan

Dit deel moet niet te moeilijk zijn. De 'touch light'-behuizing heeft voldoende ruimte om alles te passen wat nodig is om te passen. Ik plaatste de sensoren waar ze zouden passen. Alle aansluitingen zijn:

  • Pin A6: Geluidssensor - OPMERKING: voor niet-arduino nano-gebruikers hebben andere arduino's geen 7e analoge pin. Dit zul je in de code moeten wijzigen.
  • Pin A3: Piëzo-sensor (tapsensor)
  • Pin A0: Lichtsensor

Zorg ervoor dat u niet per ongeluk de (+) draden van de sensoren op de niet-gereguleerde stekkerdoos aansluit, anders ZAL u ze frituren.

Stap 7: Test het

Test het
Test het
Test het
Test het

Zorg ervoor dat de stroomaansluitingen goed zijn; sluit hem aan met behulp van de stroomadapter en probeer het met batterijen. Een veelvoorkomend probleem is slechte verbindingen met positief en aarde. OPMERKING: ik weet dat de foto de lichtsensor niet laat zien; Ik nam het gewoon voordat ik dat deel toevoegde.

Stap 8: Programmeer het, sluit het en gebruik het

Programmeer het, sluit het en gebruik het
Programmeer het, sluit het en gebruik het
Programmeer het, sluit het en gebruik het
Programmeer het, sluit het en gebruik het
Programmeer het, sluit het en gebruik het
Programmeer het, sluit het en gebruik het

De code die ik heb gebruikt, maakt gebruik van een bibliotheek die is gemaakt door Tod E. Kurt (www.todbot.com/blog) en de makers van BlinkM (ThingM). Ik zal proberen om aantekeningen in de code toe te voegen wanneer ik kan om het begrijpelijker te maken; Ik heb het momenteel nogal druk. U moet de codebibliotheek (het bestand met het label "BlinkM_funcs.h") geopend hebben in de Arduino-software bij het uploaden van de code, anders werkt het niet. Als je de code wilt bekijken maar niet over de arduino-software beschikt, kun je deze openen met een tekstverwerkingsprogramma (ook wel wordpad voor Windows-gebruikers genoemd). Ideeën voor nieuwe functies zijn welkom. Post ze gerust; Ik wil dit open source maken. Het doel van de manier waarop ik de code heb gestructureerd, is dat nieuwe functies eenvoudig kunnen worden toegevoegd. Sommige functies zijn door de fabrikant (ThingM) in de BlinkM geprogrammeerd, maar twee daarvan heb ik gemaakt; 'Sound Light' en 'Mimic Light'. Op dit moment heeft het het volgende:

  • Mood Light - Vervaagt langzaam naar willekeurige kleuren
  • Kaars - Flikkert als een kaars met sinaasappels en geel
  • Water Reflections - 'Shimmers' met blauwe, turquoise en cyaan kleuren
  • Seizoenskleuren - Verandert seizoenskleuren (ik denk dat ze blauw, groen, paars en oranje zijn)
  • Onweer - Knippert af en toe ter simulatie van bliksem
  • Stoplicht - Verandert van rood naar geel naar groen en weer terug
  • Mimic Light - Neemt een reeks van maximaal 50 aan/uit-cycli van licht op (u kunt een zaklamp gebruiken), 'onthoudt' de aan/uit-tijden en speelt ze vervolgens af in een oneindige lus.
  • Geluidslicht - Pulseert op het geluid van muziek

Tik zachtjes op de doorschijnende koepel om op elk moment van functie te veranderen. Er is één uitzondering op deze regel: wanneer u de functie 'nabootsen van licht' bereikt, knippert deze groen. Als je op de dome tikt terwijl deze knippert, gaat deze naar de laatste functie ('geluidslicht'). Als je even wacht, gaat hij naar de functie 'mimic light'. Wanneer je bij de 'geluidslicht'-functie komt, kun je niet van functie veranderen en naar de eerste gaan, vanwege de manier waarop deze de geluidssensor leest. Nu komt het moeilijke deel. Om de sfeerlichtbehuizing te sluiten, moet u enkele voorzichtige stappen nemen. Eerst moet u de steunveren uitlijnen met de kleine lipjes op de plastic koepel. Aangezien de gelijkstroomaansluiting zich op de rand bevindt en de draden naar het breadboard gaan, moet u EERST de plastic koepel over die draden schuiven en vervolgens de schroefkolommen van de buitenste rand uitlijnen met de inkepingen op de plastic koepel. Zorg ervoor dat alle lipjes op één lijn liggen met de plaatsing van de steunveren, die ook overeenkomen met de schroefkolommen op de rand, en de schroefgaten op de grondplaat. Zodra u zeker weet dat alles op één lijn ligt, klikt u de buitenste rand op de grondplaat. Zorg er vervolgens voor dat er geen draden vastzitten in de veren, of zich op een plaats bevinden waar ze in de toekomst mogelijk zouden kunnen zijn. Dit zou de beweging van de plastic koepel belemmeren. Plaats ten slotte de schroeven terug en geniet! Laatste opmerkingen: BELANGRIJK: gebruik GEEN batterijen en sluit de wandadapter niet tegelijkertijd aan. Ik weet niet zeker wat er zal gebeuren, maar ik weet zeker dat het alles zal vernietigen dat op de stroom is aangesloten!!

Stap 9: EXTRA'S

Hier zijn enkele video's: Dit is een van de 6 voorgeprogrammeerde functies die in de BlinkM zijn ingebouwd: …Dit is de aangepaste geluid/muziek-responsieve code die ik heb toegevoegd (kun je raden welk nummer het is…?: …En tot slot, maar zeker niet tenminste, is de coolste (denk ik) en moeilijkste functie om van ze allemaal te maken; de functie 'nabootsen van licht':

Aanbevolen: