Advertentie

Desktop PC-torens hebben een lange weg afgelegd sinds de tijd van grijze plastic torens die onder bureaus verborgen waren. Naast behuizingen die verschillende functies vervullen, hebben pc-behuizingen een gevoel van esthetiek ontwikkeld, met glas panelen die trots pronken met componenten en sterke futuristische ontwerpen die centraal staan ​​op elke trotse nerd bureau.

desktop pc zijtoren led-verlichting

LED-installaties komen steeds vaker voor. Een eenvoudige 12v RGB strip kan worden gekocht voor zo weinig als $ 1 per meter en zal de binnenkant van een koffer verlichten (samen met bijna al het andere) uitstekend.

We willen echter iets speciaals doen! Vandaag zullen we Pixel-LED's gebruiken om met Wi-Fi bestuurbare kastverlichting te creëren, op maat Als dit dan dat (IFTTT) meldingen. Dit hele systeem wordt gevoed met behulp van een reserve Molex-connector in de toren, waardoor het volledig op zichzelf staat. Het beste van alles is dat dit hele project minder dan $ 10 kost om te maken.

Deze tutorial is beschikbaar in onderstaande video-vorm, of blijf lezen voor de geschreven versie.

instagram viewer

Lichten met hersenen

Voor dit project gebruiken we individueel adresseerbare LED's. Ook wel bekend als Neopixels, er zijn verschillende modellen om uit te kiezen. De hier gebruikte LED's zijn van een WS2812B strip, beschikbaar voor rond $ 4 per meter.

We zullen de gebruiken NodeMCU board om ze te controleren. Hoewel je elk Arduino-compatibel bord met wifi kunt gebruiken, is de NodeMCU een favoriet van ons als een Arduino-moordenaar Maak kennis met de Arduino Killer: ESP8266Wat als ik je vertelde dat er een Arduino-compatibel dev-bord is met ingebouwd Wi-Fi voor minder dan $ 10? Nou, dat is er. Lees verder .

Wat je nodig hebt

  1. 1 x 5v Pixel LED-strip, Neopixel / WS2811 / 12 / 12B
  2. 1 x NodeMCU ($ 3 op AliExpress)
  3. 1 x 220-500 Ohm weerstand
  4. 1 x 100-1000 microFarad-condensator
  5. 1 x tuimelschakelaar of stroomonderbreker
  6. 1 x vrouwelijke Molex-connector
  7. 1 x broodplank
  8. 1 x 5v voeding (om te testen)
  9. 1 x Proto-board en draad (voor het installeren van het circuit)
  10. Diverse aansluitdraden
  11. Soldeerbout en soldeer

Het enige in deze lijst dat hier buitengewoon is, is het Molex aansluiting. Veel pc-bezitters gebruiken tegenwoordig helemaal geen cd-station in hun builds, hoewel voedingen nog steeds een aansluiting voor hen hebben. We kunnen deze reservekabels gebruiken in ons voordeel. Ik heb mijn vrouwelijke connector gered van een oude schijf, hoewel ze beschikbaar zijn voor slechts $0.30.

Bouw je circuit

Om onnodig rondneuzen in ons geval te voorkomen, zullen we onze opstelling testen met behulp van een externe voeding. Stel je breadboard zo in.

led koffer breadboard

Als dit de eerste keer is dat u dit soort LED's instelt, raad ik u aan om eens te kijken onze uitgebreide gids om deze strips eerst met Arduino te gebruiken.

De schakelaar verbreekt eenvoudig de NodeMCU van het circuit. In deze build zal ik eigenlijk een eenvoudige stroomonderbreker gebruiken in plaats van de schakelaar. Zijn functie is om ons in staat te stellen de borden te isoleren VIN pin terwijl deze is aangesloten via USB. Hoewel de hoeveelheid stroom die onze LED's verbruiken relatief klein is, is het een goede gewoonte om te voorkomen dat er te veel stroom via USB wordt getrokken.

Zodra uw breadboard is ingesteld, zou deze er ongeveer zo uit moeten zien:

breadboard instellen

In mijn voorbeeld staan ​​de condensator en weerstand al op het proto-bord omdat het werd geborgen uit een ouder project, hoewel het circuit precies hetzelfde is.

Nu we de hardware hebben ingesteld, gaan we onze code maken.

De hersenen van de operatie

U codeert uw NodeMCU met behulp van de Arduino IDE. Voor dit voorbeeld zullen we twee werkingsmodi instellen, een master aan / uit-schakelaar en een meldingssignaal wanneer een e-mail wordt ontvangen. We zullen Blynk [Broken URL Removed] gebruiken, een webservice voor Internet of Things-apparaten om met ons forum te communiceren.

Zorg ervoor dat je onze bekijkt Blynk inleidend artikel Aan de slag met Blynk: eenvoudige doe-het-zelf-IoT-apparatenBlynk is een Internet of Things (IoT) -service die is ontworpen om de afstandsbediening en het lezen van sensorgegevens van uw apparaten zo snel en gemakkelijk mogelijk te maken. Lees verder als je het nog nooit eerder hebt gebruikt.

Stel in de Blynk-app een nieuw project in en selecteer NodeMCU als uw bord. Er wordt een autorisatiecode verzonden naar uw bij Blynk geregistreerde e-mailadres. Toevoegen 3 knoppen en 3 schuifregelaars.

blynk app-schuifregelaars en -knoppen

Deze knoppen en schuifregelaars moeten worden ingesteld om waarden naar virtuele pinnen V0-V5 te verzenden. De knop "Test" test voorlopig onze e-mailmelding. Label de andere twee knoppen Kracht en Automatisch / handmatig of iets dergelijks, en de drie schuifregelaars zijn voor Rood, Groen, en Blauw.

Open nu de Arduino IDE. U hebt de Blynk- en FastLED-bibliotheken nodig voor dit project, dus zorg ervoor dat u beide hebt geïnstalleerd. Als je net begint met de Arduino IDE, kijk dan eens onze Arduino beginnershandleiding Aan de slag met Arduino: een beginnershandleidingArduino is een open-source prototypeplatform voor elektronica, gebaseerd op flexibele, gebruiksvriendelijke hardware en software. Het is bedoeld voor kunstenaars, ontwerpers, hobbyisten en iedereen die geïnteresseerd is in het maken van interactieve objecten of omgevingen. Lees verder .

We zullen de code hier opsplitsen in stukjes, maar als je liever de volledige code wilt downloaden, je kunt het vinden op GitHub.

Als u besluit dit te doen, zorg er dan voor dat u uw eigen Wi-Fi-details, autorisatiecode en relevante NodeMCU-pin en het aantal LED's aan het script toevoegt. Als je net begint met programmeren, zou ik het helemaal opnieuw doornemen om te leren hoe elk onderdeel werkt. Dit is een van de vele manieren om dit te doen grip krijgen op codering Programmeren leren zonder alle stressMisschien heb je besloten om te gaan programmeren, voor een carrière of gewoon als hobby. Super goed! Maar misschien begin je je overweldigd te voelen. Niet zo goed. Hier is hulp om uw reis te vergemakkelijken. Lees verder .

Maak een nieuwe schets en sla deze op met een toepasselijke naam. Zorg ervoor dat u de juiste kaart en poort selecteert uit de Hulpmiddelen > Bord en Hulpmiddelen > Haven menu's. Begin met het opnemen van de relevante naamruimten van Blynk en FastLED:

#define BLYNK_PRINT Serie. #include 
#include 
#include "FastLED.h"

Voeg vervolgens enkele definities toe voor FastLED:

// FastLED-definities en CRGB #define LED_PIN 3 // GPIO-pin voor RGB-leds. #define NUM_LEDS 44 // Aantal aangesloten leds. #define BRIGHTNESS 64 // Standaard LED-helderheid. # definieer LED_TYPE WS2812B. #define COLOR_ORDER GRB. CRGB-leds [NUM_LEDS];

Vervolgens verklaren we variabelen voor onze RGB-waarden, onze automatische / handmatige modus en onze hoofdschakelaar. We voegen ook een waarde toe voor een basiskleur die vereist is voor de FastLED-voorinstelling die we later zullen gebruiken.

// variabelen voor onze RGB-waarden (0-1023) int r = 500; int g = 500; int b = 500; // variabelen voor aan / uit en automatisch / handmatig schakelen. int masterSwitch = 1; int autoMode = 1; // int / byte voor automatische toename van kleurtinten uint8_t gHue = 0; // roterende "basiskleur" die door veel van de patronen wordt gebruikt.

Wanneer u uw Blynk-gegevens toevoegt, moet u hier uw eigen Wi-Fi-gegevens invullen:

// Blynk auth code en wifi details char auth [] = "YourAuthCode"; // Blynk-autorisatie. char ssid [] = "YourWifiName"; char pass [] = "YourWifiPassword";

We gebruiken onze Setup-functie om onze LED's aan FastLED toe te voegen en communicatie met Blynk tot stand te brengen.

ongeldige setup () {// vertraging bij opstarten veiligheidsvertraging (3000); Serial.begin (9600); // voeg de LEDS toe aan FastLED en stel de helderheid FastLED.addLeds in(leds, NUM_LEDS) .setCorrection (TypicalSMD5050); FastLED.setBrightness (HELDERHEID); #define FRAMES_PER_SECOND 120 // start communicatie met de Blynk-server Blynk.begin (auth, ssid, pass); }

Gebruik if-statements in uw Loop-functie om verschillende dingen te doen, afhankelijk van in welke modus u zich bevindt.

leegte lus () {Blynk.run (); if (masterSwitch == 0) {voor (int i = 0; i 

Gebruik nu de BLYNK_WRITE functies om deze variabelen te wijzigen, afhankelijk van wat u selecteert in de Blynk-app:

// Master aan / uit BLYNK_WRITE (V0) {masterSwitch = param.asInt (); } // Rode schuifwaarde BLYNK_WRITE (V1) {r = param.asInt (); } // Groene schuifwaarde BLYNK_WRITE (V2) {g = param.asInt (); } // Blauwe schuifwaarde BLYNK_WRITE (V3) {b = param.asInt (); } // Toggle Automatische / handmatige modus BLYNK_WRITE (V4) {autoMode = param.asInt (); }

Maak ten slotte een functie die ervoor zorgt dat een herhaalde reeks rode lichten wordt gebruikt als e-mailmelding. Dit is ontworpen om te activeren, ongeacht wat er nog meer gebeurt, wat betekent dat u altijd een melding krijgt, zelfs als de lichten momenteel uit zijn.

// Waarschuwingslampje voor e-mail BLYNK_WRITE (V5) {int g = param.asInt (); if (g == 1) {voor (int a = 0; a <10; a ++) {voor (int i = 0; i 

Zodra u deze volledige code hebt, gebruikt u de schakelaar / stroomonderbreker om de NodeMCU van het circuit te isoleren en sluit u deze via USB aan. Upload de schets naar het bord. Na het uploaden koppelt u de USB-kabel los en sluit u uw 5v-voeding aan. Als alles goed is, zou de LED-strip in de automatische modus moeten opstarten, wat de fill_rainbow modus van FastLED. U kunt het meldingssignaal testen met de testknop.

het testen van led-verlichting

Zoals je hier kunt zien, heb ik mijn LED's ongeveer aan de zijkant van mijn behuizing neergelegd, zodat ik wist hoeveel ik er nodig zou hebben. In mijn geval was het 44, hoewel ik een minitower gebruik, dus je kunt er misschien nog veel meer gebruiken. Zorg ervoor dat u rekening houdt met het stroomverbruik van de LED's die u gebruikt en hoeveel de stroomvoorziening van uw pc kan leveren.

IFTTT configureren

We zullen gebruiken IFTTT's Gmail-integratie om onze meldingsvolgorde te activeren. Als je IFTTT nog nooit eerder hebt gebruikt, zul je versteld staan ​​hoeveel manieren je kunt automatiseer uw favoriete webapps Als dit dan dat: verbind en automatiseer twee van uw favoriete webappsVerbind twee van uw favoriete web-apps op creatieve manieren. Een soort "digitale ducttape" volgens Linden Tibbets, de maker van de app, If This Then That (ifttt) laat je nieuwe toepassingen vinden voor ... Lees verder .

Stel een nieuwe applet in. Kies voor "Dit" Elke nieuwe e-mail in de inbox van de Gmail kanaal. Selecteer voor "Dat" Maker Webhooks en Doe een webverzoek.

In het URL-gedeelte noemen we onze meldingspin. U moet de URL aanpassen om met uw project te werken. Het formaat is http://BlynkIpAddress/YourAuthCode/pin/V5. U kunt de Blynk-ip vinden door te typen ping blynk-cloud.com in de opdrachtprompt.

ifttt url

Kiezen LEGGEN als de Methode, en applicatie / json als de Inhoudstype. Voeg ten slotte toe [“1”] naar de Lichaam sectie en klik vervolgens op Actie maken.

Telkens wanneer een e-mail binnenkomt in de inbox van het Gmail-adres dat is gekoppeld aan IFTTT, wordt er een "1" -bericht verzonden naar Virtual Pin 5 op de Blynk-server, wat onze melding zal activeren. Stuur jezelf een e-mail om het te testen. Wees geduldig, IFTTT kan even duren!

U kunt nu de testknop in uw Blynk-app verwijderen als u dat wilt.

Alles bij elkaar brengen

Nu we alles hebben getest, is het tijd om onze hardware af te werken en te installeren. Verplaats uw project van het breadboard naar het proto-board. Als je nieuw bent met solderen en op zoek bent naar een paar tips, kijk dan eens onze gids voor solderen Leer hoe u kunt solderen met deze eenvoudige tips en projectenBen je een beetje geïntimideerd door de gedachte aan een heet strijkijzer en gesmolten metaal? Als je met elektronica wilt gaan werken, moet je leren solderen. Laat ons helpen. Lees verder .

Voordat u uw Molex-connector op het bord bevestigt, moet u weten welke pinnen u gaat gebruiken. De mannelijke connector die uit de voeding van uw pc komt, heeft vier kabels. De twee zwarte kabels zijn gewone aardingskabels, de gele kabel is + 12v en de rode is + 5v. Zorg ervoor dat u de corresponderende pinnen van de vrouwelijke connector op het bord bevestigt. Ik heb ervoor gekozen om slechts twee pinnen te bevestigen om te voorkomen dat ik per ongeluk mijn bord en LED's bak!

molex

Ik besloot om DuPont-kabels tussen mijn bord en LED's te bevestigen, zodat de zijkant van de pc-behuizing nog steeds volledig kan worden verwijderd zonder het proto-bord te hoeven verwijderen. Ik stel voor om uw LED's op de behuizing te leggen en ze in het begin met tape te bevestigen, gewoon om te controleren of ze goed in de behuizing passen als ze gesloten zijn.

Opmerking: Wanneer u uw ledstrips aan elkaar soldeert, moeten de datalijnen allemaal in dezelfde richting stromen. Dit wordt aangegeven op de strip.

soldeer led strips

Monteer ten slotte uw proto-board in uw pc-toren. Omdat dit een tijdelijke constructie voor mij is, heb ik ervoor gekozen om de achterkant van het bord te isoleren en het aan de achterkant van mijn koffer te knopen. Hoe u het bord ook bevestigt, zorg ervoor dat u geen kortsluiting veroorzaakt en wees op uw hoede voor het gevaar van statische elektriciteit op interne componenten.

Verlicht

verlichte ledverlichting compleet

Als alles goed is, zou je een volledig functionele Wi-Fi-lamp moeten hebben met automatische e-mailmeldingen. Nu je dit systeem hebt geïnstalleerd, kun je de kill-schakelaar op het bord gebruiken om je NodeMCU veilig via USB aan te sluiten en de code te wijzigen. Je zou kunnen proberen een andere melding toe te voegen die is geïntegreerd met IFTTT (blauw licht voor vermeldingen op Twitter of Facebook bijvoorbeeld) of experimenteer met aangepaste instellingen in de FastLED-bibliotheek om je lichten een beetje te geven beweging.

Heeft u LED's geïnstalleerd in uw pc-toren? Heb je een geweldige automatisering voor hen opgezet? Laat het ons weten over uw projecten en plannen in de opmerkingen hieronder!

Beeldcredits: David Brown / Flickr

Ian Buckley is freelance journalist, muzikant, artiest en videoproducent en woont in Berlijn, Duitsland. Als hij niet schrijft of op het podium staat, sleutelt hij aan doe-het-elektronica of code in de hoop een gekke wetenschapper te worden.