Inhoudsopgave:

Kleur gesynchroniseerde aanraaklampen - Ajarnpa
Kleur gesynchroniseerde aanraaklampen - Ajarnpa

Video: Kleur gesynchroniseerde aanraaklampen - Ajarnpa

Video: Kleur gesynchroniseerde aanraaklampen - Ajarnpa
Video: Дрон заснял то, чего никто не должен был видеть, такое встречается только раз в жизни! 2024, Juli-
Anonim
Image
Image

Voor dit project gaan we twee lampen maken die door aanraking van kleur kunnen veranderen en die deze kleur via internet met elkaar kunnen synchroniseren. We gebruikten dit als kerstcadeau voor een vriend die naar een andere stad verhuisde. Ze heeft een van de lampen gekregen en de andere blijft bij ons. Zo hebben we allebei een mooie lamp en kunnen we ook kleuren naar elkaar sturen. Dit is een leuke en coole manier om met elkaar te communiceren, zelfs als ze uit elkaar zijn, en een veel lichtere vorm van communicatie dan via tekst, spraak of afbeeldingen.

Dit project is geïnspireerd op het Syncenlight-project van het Duitse radioprogramma Netzbasteln, hoewel we de software een beetje hebben aangepast en geavanceerdere lampen hebben gebouwd voor ons project. In de video zie je hoe het werkt. Voor demonstratiedoeleinden staan de twee lampen direct naast elkaar – maar het zou zelfs werken als ze aan weerszijden van de planeet zouden staan (zolang er wifi is).

Stap 1: benodigde vaardigheden, gereedschappen en onderdelen

Het basisidee en hoe het werkt
Het basisidee en hoe het werkt

Omdat we de elektronica van de lamp moeten solderen, zijn de enige speciale vaardigheden die nodig zijn voor dit project soldeervaardigheden en een basiskennis van elektronica. Als u enkele basiszaken over softwareontwikkeling begrijpt, zou dat een pluspunt zijn, omdat u de software aan uw behoeften kunt aanpassen. Maar als je het gewoon wilt gebruiken zoals wij het hebben gedaan, kun je de software gewoon downloaden en uploaden naar je eigen lamp.

De onderdelen die nodig zijn voor de lamp zijn te zien op de afbeelding hierboven. Als je het precies wilt bouwen zoals wij deden, dan is dit wat je nodig hebt:

  • een weerstand van 100 kΩ
  • een Wemos D1 mini (of een ander op ESP8266 gebaseerd bord)
  • sommige WS2812B LED's (enkele of een strip daarvan)
  • sommige kabels
  • een USB-kabel (dezelfde soort die voor de meeste smartphones wordt gebruikt, moet een datakabel zijn)
  • een metalen bloempot
  • een glazen vaas
  • een blikje ice flower spray (of iets dergelijks)
  • twee houten stokken
  • een klein stukje karton (ter grootte van de Wemos D1 mini)

De laatste vijf items op deze lijst zijn degene die we hebben gebruikt voor een van onze specifieke lampontwerpen. Dit is het lampontwerp dat we in deze Instructable als voorbeeld zullen gebruiken. Je kunt je eigen lamp precies zoals deze bouwen, maar je kunt natuurlijk ook creatief zijn op dit onderdeel en je eigen lamp ontwerpen zoals jij dat wilt. Zoals je op de foto's kunt zien, ziet de tweede die we bouwen er anders uit dan de eerste en we hebben al ideeën voor nieuwe lampontwerpen. Dit is dus het deel waar er bijna eindeloze mogelijkheden zijn.

Natuurlijk hebben we niet alleen de onderdelen nodig maar ook het gereedschap om alles in elkaar te zetten. Hiervoor hebben we de volgende spullen nodig:

  • een soldeerbout (plus soldeer)
  • wat schuurpapier
  • een paar scharen
  • een hotmelt pistool
  • een houtzaag

Nu we alles hebben wat we nodig hebben, zullen we het basisidee van de lamp uitleggen, hoe het allemaal werkt en natuurlijk hoe de lamp te bouwen.

Stap 2: Het basisidee en hoe het werkt

Het basisidee is te zien in het bedradingsschema. De kern van het project is het Wemos D1-minibord met een ESP8266-microcontroller. Het voordeel van de ESP8266 is dat hij goedkoop is en direct wifi aan boord heeft, en dat is precies wat we nodig hebben. We hebben het Wemos D1 mini board gebruikt omdat je met dit board geen extra tools nodig hebt om de software op de microcontroller te uploaden (afgezien van een standaard USB datakabel). Maar elk op ESP8266 gebaseerd bord zou voor dit project moeten werken.

Om de lamp te bedienen willen we een capacitieve aanraaksensor gebruiken (dus hetzelfde basisprincipe dat in de meeste smartphoneschermen wordt gebruikt). Zo'n aanraaksensor kan worden geconstrueerd door een weerstand van 100 kΩ te verbinden met twee pinnen van de ESP8266 (in ons geval pinnen D2 en D5) en vervolgens een extra draad aan te sluiten op pin D5 en die draad vervolgens op een metalen plaat te solderen. Waar je deze draad soldeert, hangt af van het lampontwerp dat je kiest. In het bedradingsschema hebben we gewoon een generieke metalen plaat gebruikt, maar voor ons specifieke lampontwerp hebben we deze kabel aan het metalen potgedeelte van de lamp gesoldeerd. Mocht je benieuwd zijn hoe dit precies werkt dan staat op de website een goede uitleg voor de Arduino bibliotheek die we hebben gebruikt voor het programmeren van de capacitieve aanraaksensor.

Nu we iets hebben dat we kunnen aanraken om de lamp te bedienen, is het volgende dat we nodig hebben een lichtbron. Hiervoor gebruikten we WS2812B LED's. Die worden veel gebruikt in verschillende projecten en hun belangrijkste voordeel is dat je de kleur van talloze LED's kunt regelen met slechts één dataverbinding tussen de eerste LED en de microcontroller (in ons geval aangesloten op D8 van de ESP8266). In ons project gebruiken we vier WS2812B LED's. In het bedradingsschema worden er twee getoond, maar het toevoegen van extra LED's werkt precies hetzelfde als het toevoegen van de tweede: de DOUT-pin van de tweede LED moet worden aangesloten op DIN van de derde en VSS en VDD moeten worden aangesloten op de aardingspin en de 5V-pin respectievelijk. Die WS2812B LED's kunnen dan eenvoudig worden geprogrammeerd, b.v. met de NeoPixel-bibliotheek van Adafruit.

Nu hebben we alle ingrediënten die we nodig hebben: een microcontroller met wifi-mogelijkheid, een aanraaksensor voor het aansturen van de lamp en de lichtbron zelf. In de volgende stappen zullen we beschrijven hoe de eigenlijke lamp moet worden gebouwd en hoe de software moet worden geüpload en wat er moet gebeuren om twee (of meer) lampen via internet te synchroniseren.

Stap 3: Solderen van de elektronica

De elektronica solderen
De elektronica solderen
De elektronica solderen
De elektronica solderen
De elektronica solderen
De elektronica solderen
De elektronica solderen
De elektronica solderen

Dus eerst en vooral moeten we alle elektronische onderdelen aan elkaar solderen. We zijn begonnen met het aan elkaar solderen van de enkele WS2812B LED's (zoals getoond en beschreven in de vorige stap). Als we dit project opnieuw zouden doen, zouden we waarschijnlijk gewoon de WS2812B LED's in stripvorm kopen. Die strips kun je zo knippen dat je precies de hoeveelheid LED's hebt die je wilt en dan hoef je alleen nog maar de DIN, VDD en VSS connectoren van die strip te solderen op pinnen D8, 5V en G van de ESP8266. Dit zou gemakkelijker zijn dan het te doen zoals wij het deden, maar het aan elkaar solderen van de enkele WS2812B LED's is ook mogelijk zoals te zien is op de foto's (hoewel onze soldeerverbindingen niet erg mooi zijn - maar ze werken)

Vervolgens hebben we de weerstand tussen pinnen D2 en D5 gesoldeerd. Op pin D5 moeten we ook nog een extra draad solderen die later op het deel van de lamp wordt gesoldeerd dat als aanraaksensor moet functioneren. Op de foto's kun je zien dat we de weerstand niet rechtstreeks op het bord hebben gesoldeerd, maar in plaats daarvan connectoren op het bord hebben gesoldeerd waarin we vervolgens de weerstand hebben geplaatst. Dit was omdat we wilden weten welke weerstand het beste werkt voor dit project, maar je kunt de weerstand ook rechtstreeks op het bord solderen.

Als laatste stap kunnen we nu onze USB-kabel aansluiten op de USB-stekker van de Wemos D1 mini (zorg ervoor dat je een USB-datakabel hebt - er zijn ook kabels die alleen werken voor opladen maar niet voor gegevensoverdracht, maar we hebben de gegevenscapaciteit om de software later te flashen).

Stap 4: De lamp bouwen

De lamp bouwen
De lamp bouwen
De lamp bouwen
De lamp bouwen
De lamp bouwen
De lamp bouwen

Nu de elektronische onderdelen klaar zijn, kunnen we beginnen met het maken van de eigenlijke lamp. Hiervoor willen we de vaas van bovenaf verlichten met onze LED's en willen we dat het licht van de lamp diffuus is. Omdat het glas van de vaas die we vonden heel helder is, hebben we Ice Flower Spray gebruikt om het glas een meer gematteerde look te geven. Er zijn verschillende versies van spray beschikbaar die glas een meer mat of diffuus uiterlijk kunnen geven, zodat u gewoon kunt kijken wat u kunt vinden. Als je deze spray gebruikt zorg er dan voor dat alles goed droog is voordat je verder gaat. Dit kan enkele uren duren, afhankelijk van de spray die u gebruikt.

Om de lamp nu te bouwen, moeten we ervoor zorgen dat de metalen bloempot op de juiste hoogte op de vaas blijft staan en dat de elektronica in de pot wordt bevestigd zodat de LED's de vaas verlichten. Hiervoor hebben we de twee houten stokken, het schuurpapier en de houtzaag gebruikt om een kruis te maken. Dit kruis komt bovenop de vaas te zitten en de uiteinden van het kruis worden aan de pot gelijmd. Zo kunnen we ervoor zorgen dat de pot op de juiste hoogte staat (mits het houten kruis de juiste maat heeft).

Hiervoor hebben we eerst de zaag gebruikt om de houten stokken op de juiste maat te krijgen. Daarna hebben we met schuurpapier een groef in het midden van een van de stokjes geschuurd. Nu hebben we de andere met behulp van het hotmeltpistool in de groef gelijmd. Als we dit op de vaas zouden zetten zou het niet goed passen, omdat de stokjes niet op gelijke hoogte staan. Dus hebben we twee nieuwe groeven geschuurd aan de uiteinden van de stok die op het lagere niveau zit, zodat het kruis perfect op de vaas past. Dit is goed te zien op de foto's.

Als alles goed past, is de volgende stap om een stuk karton op het kruis te lijmen. Dit moet aan de kant van het kruis zijn waar geen groeven zijn. Vervolgens hebben we het Wemos D1 miniboard op het karton gelijmd en de LED's aan de andere kant van het kruis.

De volgende stap is dan om de kabel voor de resistieve aanraaksensor aan de metalen pot te solderen. Zo kunnen we de kleur van de lamp regelen door de pot aan te raken. Als dit gedaan is kan het houten kruis met het hotmelt pistool op de metalen pot worden gelijmd en daarna kunnen het kruis en de pot op de vaas worden gelijmd.

Als laatste stap kunnen we nu de USB-kabel met de superlijm aan de vaas lijmen zodat alles er mooi en netjes uitziet. Nu zijn we bijna klaar.

Stap 5: Zet het in werking

De laatste stap is het uploaden van de software naar de lamp en het configureren van de server die zal worden gebruikt voor de synchronisatie van de lamp. Als je geïnteresseerd bent in hoe de software precies werkt, ben je welkom om de broncode te bestuderen, we zullen hier niet te veel in detail treden. Maar het basisidee is dat elk van de lampen die u wilt synchroniseren, verbonden moet zijn met dezelfde MQTT-server. MQTT is een berichtenprotocol voor het internet der dingen en machine-naar-machine-communicatie. Als een van de lampen van kleur verandert, publiceert hij dit naar de MQTT-server, die vervolgens een signaal naar alle andere lampen stuurt, die hen vervolgens vertelt dat ze ook van kleur moeten veranderen.

Maar maak je geen zorgen, je hoeft niets te weten over MQTT, hoe het werkt of hoe je een MQTT-server opzet als je de lamp alleen wilt gebruiken. Natuurlijk kunt u uw eigen server opzetten en configureren als u dat wilt. Maar als u dat niet wilt, zijn er ook verschillende services beschikbaar waar u een MQTT-server kunt huren die in de cloud wordt gehost. We hebben hiervoor CloudMQTT gebruikt, waar je zelfs gratis een zeer beperkte server kunt krijgen (maar met voldoende functionaliteit en bandbreedte voor onze doeleinden). Het gratis abonnement heet Cute Cat en als je er een krijgt, hoef je alleen maar naar Details → Instance Info te kijken en daar kun je de server, de gebruiker, het wachtwoord en de poort van je MQTT-instantie zien. Die waarden zijn alles wat je nodig hebt, dus schrijf ze op:-)

Om nu de software naar de lamp te uploaden, moet u de USB-kabel op uw laptop of computer aansluiten en vervolgens kunt u de software uploaden met behulp van de Arduino-software. Het installeren en configureren van de Arduino-software voor gebruik met op ESP8266 gebaseerde boards wordt goed uitgelegd in deze Instructable, dus we hoeven die stappen hier niet te herhalen.

Nadat je alles hebt geïnstalleerd en geconfigureerd, ga je naar Extra → Bibliotheken beheren in de Arduino-software en installeer je de bibliotheken die nodig zijn voor dit project: Adafruit NeoPixel, CapacativeSensor, PubSubClient, WifiManager (in versie 0.11) en ArduinoJson (in versie 5, niet de bèta 6-versie). Als deze zijn geïnstalleerd, kunt u de broncode voor de lamp downloaden van onze Github-repository voor dit project en deze uploaden naar de lamp met behulp van de Arduino-software.

Als alles goed is gegaan, start de lamp nu op en is klaar voor gebruik:-) Tijdens het opstarten swoosht hij in blauwe kleur en probeert hij verbinding te maken met een bekende WiFi. Bij de eerste keer opstarten weet de lamp natuurlijk niets van wifi en zal hij zijn eigen Hotspot opstarten (met een naam die een combinatie is van "Syncenlight" en een unieke identifier voor de ESP8266 die je hebt gebruikt). U kunt b.v. uw smartphone naar deze wifi en u wordt naar de configuratiepagina van de lamp geleid waar u uw wifi-inloggegevens kunt configureren en ook de vereiste instellingen voor de MQTT-server kunt invoeren (die u een paar alinea's eerder moest opschrijven). Als je daarmee klaar bent zal de lamp opnieuw opstarten en is nu helemaal klaar voor gebruik!

Laat ons weten hoe je dit project leuk vond of als je vragen hebt, we hopen dat je dit Instructable leuk vond:-)

Aanbevolen: