Video:
Goedemiddag, vandaag zal ik instructies delen voor het vervaardigen van een kleine tafellamp, een nachtlamp. De lichtbron bestaat uit 120 WS2812-leds. Je kunt het aantal diodes verhogen of andersom, de lamp kleiner maken met minder diodes. Ik heb een ledstrip gebruikt met een dichtheid van 60 diodes per meter. Beheert alle ESP8266-12E. Beheer via html-pagina. Laten we dus beginnen met de lijst met noodzakelijke:
- ESP8266-12E
- 3.3v spanningsstabilisator
- Weerstanden 10 kOhm, 5st.
- Kleine schakelaar
- Knop
- aansluitdraden
- Mat of "melk" plastic
- Golfkarton
- USB-TTL
- USB-aansluiting
- Een klein stukje plastic buis
- Voeding 5 V, minimaal 2 A
- Heet lijmpistool
- Soldeerbout, hars, soldeer, etc. enzovoort.
Stap 1 Voorbereiding van de basis en LED's.
Voor de basis waarop we de leds gaan lijmen, gebruiken we golfkarton. Ik zal de maten schrijven voor de nachtlamp, die ik zelf heb gemonteerd. Als u besluit het formaat te wijzigen of een andere LED-strip te gebruiken, moeten de afmetingen opnieuw worden geteld. We hebben dus een rechthoek van 26,5 x 12,5 cm uit karton gesneden:
We trekken 1 cm van één rand terug om de delen met elkaar te verbinden en verdelen de resterende rechthoek in 3 gelijke delen. We snijden de bovenste laag golfkarton zodat deze kan worden gebogen:
We buigen onze rechthoek, langs de sleuven en lijmen het, we krijgen een prisma:
De kleeflaag van de diodetape is soms niet voldoende om ze goed te fixeren. Daarom kunt u voor sterkte dubbelzijdige tape gebruiken. Lijm het op een kartonnen basis:
Lijm de diodes met lijnen, begin vanaf de onderste lijn. Lijm de eerste lijn helemaal onderaan, stap een stukje terug en lijm de volgende lijn zodat de afstand tussen de diodes van de aangrenzende lijnen 1,6 cm is.Voor de WS8212 tape moet de richting van het signaalcontact in acht worden genomen. Op de tape wordt de richting aangegeven. Lijmlijnen in één richting:
De draden van de +5- en GND-stroomcontacten van de eerste lijn van LED's, evenals de draad van het signaalsignaal Din, worden in de behuizing geleid. Vervolgens solderen we Do van de eerste tot Din van de tweede regel enzovoort.De vermogenscontacten (+5 en GND) worden parallel gesoldeerd:
Ik gebruik het bijsnijden van plastic buizen, bijvoorbeeld van een ballon op een stok, we maken poten van 1 cm lang tot onze lamp:
Het resultaat zou er ongeveer zo uit moeten zien:
Dit is een van de opties, de vorm kan van alles zijn, alles wordt alleen beperkt door uw verbeeldingskracht. Zo kan er bijvoorbeeld een nachtlampje gemaakt worden in de vorm van een kegel of een cilinder.
Stap 2 Bereid de ESP8266 en de voeding voor.
Ik gebruik ESP8266-12E, met 4 MB Flash-geheugen. ESP8266-versies met minder GPIO's kunnen worden gebruikt. Er is slechts één GPIO nodig om de tape te bedienen. Flash-geheugen is minder dan 1 MB, het is beter om het niet te nemen. Om het ESP te laten werken en de schets erin te vullen, moet je eerst een minimale binding voor dit bord maken. De binding bestaat uit een schakelaar die aan het ene uiteinde is aangesloten op GPIO0 en het andere op GND, die wordt gebruikt om de module in de schetsvulmodus te zetten. In de normale toestand moet GPIO0 via een weerstand van 10 kOhm op de stroom worden aangesloten. Een pull-up naar de voeding via de weerstand heeft ook CH_PD, GPIO2 nodig. Om de module opnieuw op te starten, wordt er een knop tussen RESET en GND geplaatst; om stabiliteit te garanderen, moet de RESET ook naar de stroom worden getrokken. Er is een weerstand van 470 ohm tussen RESET en GPIO16 nodig om de module uit de slaapstand te halen. We zullen deze modus niet gebruiken, daarom is een weerstand niet vereist. De uitgang van de GPIO15-module moet ook via een weerstand van 10 kΩ naar GND worden getrokken. De module moet strikt worden gevoed vanaf 3.3V. Daarom gebruiken we een spanningsstabilisator. Op de ingang waarvan we de plus van de voeding zullen aansluiten, en op de uitgang van de VCC ESP8266. GND Ik denk dat alles duidelijk is, het belangrijkste is dat de GND-voeding, GND-tape en GND ESP zijn aangesloten. En vergeet USB-TTL niet. RX naar TX, TX naar RX en sluit de GND ESP aan op de GND USB-TTL. De regeling is als volgt:
Nu op de markt van radioapparatuur is er een lijn van Wemos-modules. Dit zijn dezelfde ESP8266-modules, alleen met het benodigde harnas, spanningsregelaar, USB-TTL en handige uitgangscontacten. Het is veel gemakkelijker om ermee te werken, je kunt deze modules volgen, alleen bij het invullen van de schets, kies het juiste bord.
We zullen de tape verbinden met GPIO5. Dat wil zeggen, Din vanaf de eerste regel van de tape is aangesloten op de GPIO5 ESP8266.
Naar mijn mening kunt u alle benodigde luifels solderen. Na montage ziet de ESP8266 er ongeveer zo uit:
Zo blijkt het compact en past de controller gemakkelijk in het nachtlampje:
Wat betreft de voeding. De WS2812-tape is erg vraatzuchtig. Als u alle drie de kleuren inschakelt, en zelfs bij maximale helderheid, verbruikt één LED 0,06 A. Dienovereenkomstig zijn 120 diodes 7,2 A. Nou, dit is de maximale waarde. Meestal is deze helderheid niet nodig, in mijn schets kost het 10 (bereik van 0 tot 255) en dit is voldoende. Ik heb het verbruik van mijn nachtlampje gemeten met een helderheid van 20. Het verbruik lag tussen 1,0 A en 1,8 A. Voor dit nachtlampje heb je een voeding nodig met een uitgangsstroom van minimaal 2.0 A. Voor het gemak is het beter om USB aan het einde van het nachtlampje te solderen, of neem gewoon een draad met USB al gesoldeerd. De voeding zou er dan ongeveer zo uit moeten zien:
Stap 3 Bereid de omgeving voor en vul de schets.
Voor een goede werking en schetsvulling is het noodzakelijk om een programmeeromgeving voor te bereiden. We gaan naar de site en downloaden de nieuwste versie Arduino IDE.
Schets getest op de nieuwste versie Arduino De IDE die op het moment van schrijven was, was -1.8.10. Als je het installatieprogramma hebt gekozen, installeer dan eerst de programmeeromgeving, als je het archief hebt gedownload, pak je het gewoon uit op een plek die voor jou geschikt is.
Nu moet je het ESP8266-bord en zijn aanpassingen toevoegen aan de Arduino IDE. We starten de programmeeromgeving, selecteer het menu-item "Bestand" in de lijst "Instellingen" die wordt geopend. Selecteer het item "Extra links voor de Board Manager." Voeg de link in om de ESP8266-extensie te downloaden en te installeren:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Selecteer vervolgens het menu-item "Tools" en ga naar de "Board Manager". Voer in de zoekbalk van de boardmanager "ESP" in, selecteer "esp8266 by ESP8266 Community" en installeer de nieuwste versie. Op het moment van schrijven is dit 2.5.2. We wachten tot de installatie is voltooid.
Ik gebruikte de Adafruit neopixel-bibliotheek om de ledstrip te bedienen. Om deze bibliotheek te installeren, selecteert u het menu-item "Sketch", gaat u naar "Connect the library" en selecteert u "Manage libraries". Voer in de zoekbalk die het menu opent "Adafruit neopixel" in, selecteer en installeer de bibliotheek met dezelfde naam.Je hebt ook de ArduinoJson-bibliotheek nodig, je kunt deze ook vinden door te zoeken naar de Library Manager.
Een html-pagina wordt gebruikt om het nachtlicht te regelen, er zijn ook verschillende pagina's voor het configureren van de module. Om deze html-pagina's en al het nodige voor hun goede werking vast te leggen, hebben we een extra hulpprogramma nodig. Download het onderstaande archief en pak het uit in de map "tools" op de installatielocatie van de Arduino IDE:
Archief downloaden
Na alle manipulaties moet u de programmeeromgeving opnieuw opstarten.
Bewerk nu de schets. Open de schets:
Schets downloaden
Je moet de volgende regels bewerken:
String _ssid = ""; // SSID van het toegangspunt waarmee u verbinding wilt maken
Voer op deze regel tussen aanhalingstekens de naam in van het toegangspunt waarmee het nachtlampje verbinding probeert te maken.
String _password = ""; // netwerkwachtwoord
Geef hier, ook tussen aanhalingstekens, het wachtwoord op vanaf het toegangspunt waarmee het nachtlampje verbinding probeert te maken. Als u niet wilt dat de ESP verbinding maakt met een soort toegangspunt, laat u deze paden gewoon onaangeroerd.
String _ssidAP = "Treygolka"; // SSID AP in toegangspuntmodus
De regel geeft de naam aan van het toegangspunt dat de ESP8266 zal maken.
String _passwordAP = "12051005"; // Toegangspunt wachtwoord
Wachtwoord van het aangemaakte toegangspunt.
Rest nog om de schets in te vullen en de html-pagina in ESP8266 te laden.