ESP8266 POV-ventilator met klok en webpagina-tekstupdate - Ajarnpa
ESP8266 POV-ventilator met klok en webpagina-tekstupdate - Ajarnpa
Anonim
ESP8266 POV-ventilator met klok en webpaginatekstupdate
ESP8266 POV-ventilator met klok en webpaginatekstupdate
ESP8266 POV-ventilator met klok en webpaginatekstupdate
ESP8266 POV-ventilator met klok en webpaginatekstupdate
ESP8266 POV-ventilator met klok en webpaginatekstupdate
ESP8266 POV-ventilator met klok en webpaginatekstupdate
ESP8266 POV-ventilator met klok en webpaginatekstupdate
ESP8266 POV-ventilator met klok en webpaginatekstupdate

Dit is een variabele snelheid, POV (Persistence Of Vision), ventilator die met tussenpozen de tijd weergeeft, en twee tekstberichten die "on the fly" kunnen worden bijgewerkt.

De POV Fan is ook een webserver met één pagina waarmee u de twee tekstberichten kunt wijzigen.

Om deze POV Fan te gebruiken, moet er een draadloos netwerk zijn met "client sharing". Als u niet weet wat het delen van klanten is, is het gemakkelijk om erachter te komen. Zoek naar andere computers in uw netwerk. Als u ze kunt zien, beschikt u over mogelijkheden voor het delen van clients op uw netwerk. (De meeste hotels en openbare gelegenheden staan het delen van klanten - klantisolatie - om voor de hand liggende veiligheidsredenen niet toe.)

De POV maakt gebruik van de "WifiManager"-bibliotheek, waardoor u gemakkelijk verbinding kunt maken met het draadloze netwerk, waar u ook bent. Eenmaal verbonden met het draadloze netwerk, geeft de POV-ventilator het IP-adres weer dat u in de adresbalk van uw webbrowser moet invoeren. U kunt de tekst in de POV Fan wijzigen via de webpagina.

Dit instructable is een beetje boven het beginnende niveau. Er komt wat solderen, boren, "hete lijmpistool" en elektrisch testen bij kijken. Als je denkt dat je moeder boos zal zijn dat je haar favoriete ventilator uit elkaar hebt gescheurd en je huishouden in gevaar hebt gebracht door blootgestelde elektriciteit, moet je misschien iets anders doen, lees anders verder.

Benodigdheden

Hardware:

  • ESP8266 --- Dit kan een NodeMCU VIN5v--3.3Logic, Super Node VIN3.3v, Weemos VIN5v--3.3Logic, Adafruit Huzzah VIN5v-3.3Logic Sparkfun Thing VIN5v--3.3Logic of kale ESP8266 VIN3.3v (als zolang je het kunt programmeren. Ik ga niet in detail in op het opzetten van een programmeerbord voor een kale ESP8266, dus de genoemde USB-compatibele borden zijn misschien het gemakkelijkst.) Let op de vereisten die nodig zijn in de bovenstaande afbeelding.
  • AMS1117-3.3v en 10k weerstand (voor 3.3v boards) -- Dit is een 3.3v power regulator. Let op de hierboven genoemde opties van ESP-apparaten en de spanningen die ernaast staan vermeld. Als je een VIN 3.3volt systeem hebt, is de AMS1117-3.3v noodzakelijk. De kale ESP8266 is 3.3v.
  • Hall-sensor en 10k-weerstand --- Ik gebruik de variëteit 3144. Hoewel ze geschikt zijn voor 4,5v en hoger, heb ik geweldige resultaten behaald met de 3,3v-rail. Ik gebruik een weerstand van 10k om de trigger te resetten door de spanning terug te "lekken" (pull default low).
  • (5) LED's (en optionele weerstanden) --- Gebruik wat je kunt vinden. De classificaties voor een LED vereisen een weerstand om te voorkomen dat een constante stroom vrij door de LED stroomt en vergelijkbaar is met een kortsluiting. Let op de LED-gegevenspagina's met de classificatie voor DUURZAAM vermogen. Voor "Pulse Width Modulation, PWM" of snel knipperen, kunnen de LED's een kleine variatie in de spanning weerstaan, dus de weerstand is optioneel in een 3,3v-systeem. Ik hou van de superheldere witte 3 mm of 5 mm, ~ 3,4v @ 20mA. Als u een rode LED gebruikt, moet u er rekening mee houden dat de nominale spanning aanzienlijk lager kan zijn, 1,8 V @ 20 mA, dus weerstanden kunnen een goede voorzorgsmaatregel zijn. (voltage_rail - LED_voltage) / Ampère = benodigde weerstand. dat wil zeggen, (3.3v-1.8vLED = 1.5v) gedeeld door.02A of 20mA = 75 Ohm weerstand aanbevolen. (Opmerking: de beste weerstandstutorial die ik me herinner is van een Raspbery Pi-tutorial die ik aan het kijken was-- https://www. youtube.com/watch?v=ZNNpoLFbL9E&t=227… op ongeveer 2:40-- Het is een geweldige openbaring! Ik tekende de cirkel hierboven ter referentie.)
  • Goedkope 5v-wandoplader --- Ik gebruikte een oude van een telefoon. We gaan het openbreken en er soldeer op gooien. Een goedkope van een Dollar Store zou voldoende zijn.
  • Draadloze oplaadspoelen --- Ik gebruik zoiets als dit, of dit. Het is klein maar zeer effectief. De ESP8266 gebruikt ergens rond de 300mA bij draadloos verzenden. Groter is niet nodig, alleen duurder. … bovendien zal een condensator in lijn met de gelijkspanning de belasting stabiliseren wanneer de vraag hoger is.
  • 100uF 16v elektrolytische condensator-- De spanning moet minimaal 5v zijn. Alles boven de 5v is prima. Een 16v dop is overkill, maar ook goedkoop en makkelijk te vinden.
  • Magneet-- Ik had een paar neodymium-magneten liggen, maar elke magneet zou moeten werken.
  • Ventilator-- Ik gebruikte een goedkope doosventilator van de plaatselijke winkel voor $ 12 - $ 18 tijdens het zomerseizoen. De stijlen en maten zijn onbeperkt met uitzondering van hardware room. Hoe groter de ventilator, hoe gemakkelijker het is om de hardware in te drukken. Een te kleine ventilator zal meer "Ghetto Frankenstein" lijken, terwijl er aan de buitenkant hardware wordt gemonteerd. Merk op dat deze ventilator de nodige wikkelingen heeft om de ventilatorsnelheidsregeling te laten werken.
  • Ventilatorsnelheidsregeling (optioneel)-- Dit is anders dan een wandschakelaar- gloeilampdimmer. Ventilatorsnelheidsregelaars veranderen de golflengte van de elektriciteit om de inductantie die in een AC-motor wordt aangestuurd te optimaliseren. Vind de juiste ventilatorsnelheidsregelaar voor uw ventilator. Als u geen ventilatorsnelheidsregelaar gebruikt, moet u de stroom naar de 5V-rail afzonderlijk inschakelen. --Sommigen geven hier misschien de voorkeur aan, omdat je hiermee de POV kunt uitschakelen en de ventilator kunt blijven gebruiken.
  • Krimpkous-- en/of draadisolator naar keuze. Ik heb echt dikke verf, siliconenkit, elektrische tape en hete lijm gezien als draadisolatie. Op de draaiende delen is het belangrijk om het gewicht laag te houden.
  • Super-Glue-- Super Glue is lichter dan Hot Glue en helpt het gewicht laag te houden op draaiende delen.
  • De kleinste en lichtste geïsoleerde draad die je kunt vinden. (telefoonsnoer, ethernetkabel, geborgen ATA-bus HDD-lint, …)

Gereedschap:

  • Veiligheid voorop -- Sommige veiligheidsbrillen zijn altijd goed. Krijg niet dat kleine beetje in uw oog op dit project.
  • Leren handschoenen -- Je moet altijd leren handschoenen dragen als je iets boort. Stoffen handschoenen kunnen losraken en gemakkelijk verstrikt raken in een boor, waarbij vingers en/of de boor breken en breken.
  • Soldeerbout, vloeimiddel en soldeer
  • Boor en/of Dremel
  • Draadknippers en draadstrippers
  • Heet lijmpistool-- Mijn dochter is de "Hot Glue Gun Ninja." Ik denk dat ze er letterlijk alles mee kan repareren.
  • Schroevendraaier-- Om de ventilator uit elkaar te halen.
  • Elektrische tester
  • Schuurpapier -- Als je een nagelvijl hebt, is dat prima. We hoeven alleen de LED's op te ruwen, zodat ze ondoorzichtiger zijn. Superlijm en bakpoeder werken net zo goed.

Stap 1: Uw POV heeft stroom nodig - er zijn opties

Er zijn twee opties om het POV-gedeelte van de ventilator van stroom te voorzien. Misschien wilt u dat de POV standaard wordt ingeschakeld met de ventilator, of u wilt de POV slechts af en toe inschakelen.

OPTIE 1 is om de variabele snelheidsregelaar helemaal niet te gebruiken. Vertak de stroom die in de ventilator komt gewoon naar een aparte schakelaar die de POV inschakelt. Dit is duidelijk. Dit kan een betere optie zijn voor kleinere ventilatoren die niet veel ruimte in de behuizing hebben voor de variabele snelheidsregelaar.

OPTIE 2 is om de schakelaar met drie snelheden te vervangen door een variabele snelheidsregelaar. Gebruik de stroom na de snelheidsregelaar om de POV in te schakelen wanneer de ventilator aan staat. Dit ZAL je fan wijden als een POV-teken. Dit is misschien wat je wilt als je niet wilt dat iedereen je harde inspanning de hele tijd leent om een kamer af te koelen terwijl ze slapen. Ik heb deze optie gebruikt in de hierboven afgebeelde box-fan.

Ik denk dat er een derde optie IS. Je zou beide kunnen doen, het POV-vermogen van de inkomende voedingslijn aftakken naar een schakelaar, EN een variabele snelheidsregelaar gebruiken om de ventilatorsnelheid beter te regelen.

Stap 2: De variabele snelheidsregelaar gebruiken

De variabele snelheidsregelaar gebruiken
De variabele snelheidsregelaar gebruiken

Voordat je iets doet, sluit je je ventilator aan op de muur en zet je de ventilator op de hoogste stand. Zodra de hoogste stand van de ventilator is ingesteld, trekt u de stekker uit de muur. Laat de schakelaar in de hoogste stand staan en trek de knop eraf. Dit zal ons helpen de juiste draad voor de Fan Speed Controller te vinden.

Variabele snelheidsregelaars moeten de ventilator op de hoogste snelheid hebben ingesteld. Een typische doosventilatorschakelaar (de originele schakelaar die u gaat vervangen) heeft één draad die uit de stroombron komt (uiteinde van het stopcontact) en drie draden die naar verschillende delen van de wikkeling in de ventilatormotor gaan. Een van de drie draden tussen de schakelaar en de ventilatormotor zet de ventilator op de hoogste stand. U moet uitzoeken welke draad de hoogste ventilatorsnelheid heeft en deze labelen. De andere twee draden zijn overbodig en kunnen worden geïsoleerd en/of afgedekt. Nu kunt u de schakelaar met drie snelheden vervangen door de variabele snelheidsregelaar met behulp van de gelabelde draad.

Sommige fans hebben mogelijk een kleine witte doos naast de schakelaar. Knoei er niet mee. Het is hoogstwaarschijnlijk de condensator en thermische sensor die de ventilator aandrijven.

Ik wilde de schakelaar van deze ventilator al heel lang veranderen omdat onze geadopteerde zwerfhond op de knop kauwde en overschakelde naar de nub die je op de afbeelding hierboven ziet. Mijn ventilator nam een kruiskopschroevendraaier nr. 2 om de voorgrill gemakkelijk van de ventilator te verwijderen. Toen de grill eenmaal was getrokken, kon ik gemakkelijk bij de schakelaar komen. Ik heb de draden gelabeld zoals de afbeelding hierboven om ze georganiseerd te houden. Ik zette een streep op de Neutrale, "N," lijn en zette de andere lijnen op een lijn.

Zodra u de draden hebt gelabeld, kunt u de schakelaar uitknippen. Gebruik een Ohm-meter om te zien welke draad naar de wikkeling met de hoogste snelheid van de motor gaat. De mijne was de nummer 1 draad.

Stap 3: Breadboard Uw ESP8266 (optioneel)

Breadboard Uw ESP8266 (optioneel)
Breadboard Uw ESP8266 (optioneel)
Breadboard Uw ESP8266 (optioneel)
Breadboard Uw ESP8266 (optioneel)
Breadboard Uw ESP8266 (optioneel)
Breadboard Uw ESP8266 (optioneel)
Breadboard Uw ESP8266 (optioneel)
Breadboard Uw ESP8266 (optioneel)

Oké, ik vind het leuk om mijn projecten te breadboarden om er zeker van te zijn dat ze niet voor verrassingen komen te staan. Ik leg al mijn spullen op een breadboard en voer het uit.

ESP-12F De eerste drie afbeeldingen hierboven zijn de blote ESP-12F-pinnen. De eerste afbeelding is voor het programmeren van het bord. De tweede afbeelding zijn alleen de ventilatoraansluitingen. Je kunt beide gebruiken, of gewoon programmeren en alleen de tweede bijlagen plaatsen.

Super Node In de vierde en vijfde afbeelding wordt het Super Node-bord gebruikt. Je kunt dit bord ook gewoon programmeren en een paar schakelaars en een FTDI op de ventilator elimineren. Merk op dat ik de benodigde condensator niet in de afbeelding heb geplaatst. Je hebt er nog steeds een nodig voor constante stroom.

NodeMCU De derde optie is supereenvoudig. Gebruik een NodeMCU of gelijkwaardig (Huzzah Feather, Weemos, Sparkfun Thing, …) en elimineer alle schakelaars en 3.3v-regelaars. Het verschil is de prijs van de NodeMCU, die bijna drie tot vier keer zo duur is als een kale ESP-12F.

Stap 4: Programmeer de ESP8266

Laten we naar de code kijken.

Er zijn een paar bibliotheken vereist in deze schets. Deze zijn nodig in uw Arduino IDE. De meeste kunnen worden toegevoegd vanuit de "Libraries Manager" in de Arduino IDE. Ga naar je Arduino IDE en open "Tools >> Library Manager". De belangrijkste is de WifiManager van tzapu.

#include //https://github.com/esp8266/Arduino

#erbij betrekken

#erbij betrekken

#erbij betrekken

#include //https://github.com/tzapu/WiFiManager ESP8266WebServer-server(80); #erbij betrekken; WiFiUDP-UDP;

Merk op dat er een heleboel opmerkingen in de code staan, zodat deze gemakkelijk te volgen is.

Ik heb ook een aantal lijnen gewijzigd van het gebruik van een gewone wifi-verbinding naar de meer dynamische WifiManager. Ik verliet de statische IP-verbindingslijnen, maar becommentarieerde hen uit. Ik heb ook elke 24 uur toegang tot de NTP-server in plaats van elke lus toegang te krijgen tot de server. Je NTP-server blokkeert je als een TSR-virus als je er te vaak toegang toe hebt.

Het ziet er misschien een beetje rommelig uit met alle extra code die is becommentarieerd. Voel je vrij om de uitgecommentarieerde code te verwijderen. Ik liet het daar voor opties.

Ik zal de belangrijkste regels noemen.

Op lijn 42 wordt de "hall_interval" gedeclareerd. Het hall-interval is de tijd tussen het wisselen van sms. Deze is ingesteld op 10 seconden. Elke tien seconden leest de hall-sensor het toerental van de ventilator en past de tekst daarop aan. Ook schakelt hij tussen de tijd, tekst 1 en tekst 2. Dit is naar wens aan te passen.

Op regel 52 wilt u misschien de NTP-server wijzigen waarmee u verbinding wilt maken en uw tijd wilt krijgen.

Krediet moet worden gegeven waar krediet verschuldigd is! Ik heb mijn eerste POV gemaakt met een Altoids Tin, een ATTiny85 en een telefoonsnoer. Op regel 131 vermeld ik de originele bron voor het POV-letterconcept. Ik heb de code behoorlijk veranderd om efficiënter te zijn voor dit project, maar zonder deze start zou deze niet zijn ontstaan.

Op regels 291-365 wordt de webpagina met de jQuery-bibliotheken geïnduceerd. De Ajax-bibliotheken zijn afkomstig van een externe bron, dus het is misschien het beste om ervoor te zorgen dat ze up-to-date zijn.

Op lijn 498 moet het WifiManager-wachtwoord worden gewijzigd om aan te geven wat u wilt. Dit is het wachtwoord dat nodig is om de POV-ventilator de eerste keer in te stellen.

Blader gerust door de rest van de code. Als u zich in de breadboarding-modus bevindt, kunt u de opmerkingen over de seriële feedbackregels voor foutopsporing verwijderen.

Nadat je de schets naar je ESP8266 hebt geüpload, zou je een ander wifi-toegangspunt op je telefoon of laptop moeten zien met de naam POV_Fan. Maak er verbinding mee, open een webbrowser en typ het IP-adres in de adresbalk "192.168.4.1". U zou uw ventilator moeten kunnen aansluiten op uw wifi-router in uw thuisnetwerk. Je verliest de verbinding met de POV_Fan. Geen paniek. Zwaai een magneet heen en weer over de hall-sensor, van voren naar achteren. Je POV_Fan maakt verbinding met de NTP-server en krijgt de tijd (dit kan een minuut duren). U zou de LED's moeten zien knipperen.

Stap 5: Maak je klaar om je Frankenstein te maken

Maak je klaar om je Frankenstein te maken!
Maak je klaar om je Frankenstein te maken!
Maak je klaar om je Frankenstein te maken!
Maak je klaar om je Frankenstein te maken!

Alles bij elkaar, ja!!!!!

Laat je creatieve sappen op gang komen voor dit onderdeel. Toen je de voorgrill van je ventilator verwijderde, heb je waarschijnlijk gemerkt dat er niet veel ruimte is tussen de voorkant van de ventilatorbladen en de grill. De eerste foto hierboven toont een ventilator met een moer die het blad op de motoras vasthoudt. De tweede foto toont een ventilator met een gegoten ventilatorblad op de spil.

Ik kon de mesconstructie met de moer verwijderen en ook alle lege ruimte achter de messen gebruiken - erg leuk! Ik had meer moeten doen. Ik gebruikte een Super Node, dus ik moest alle andere componenten rond de spil plaatsen.

De tweede set messen was moeilijk omdat de middelste as zo dicht bij de grill was. Ik moest een aantal componenten inbouwen. Ik wou dat ik net de buitenrand van de binnenste mesconstructie had gebruikt om de componenten te plaatsen in plaats van te proberen de voorkant te gebruiken. Ik gebruikte een ESP-12F die echter een beetje kleiner was. Het werkt goed. Ik heb ook de componenten voor het programmeren toegevoegd, zodat ik het later kon tweeken als ik dat wilde.

Betrokkenheidsregels

  • Probeer rekening te houden met de balans van de ventilator. Plaats een tegengewichtcomponent op de LED's en Hall-sensor. Als je merkt dat je ventilator te veel trilt, gebruik dan iets om de bladen tegen te werken (een kleine schroef, wat plakband, klodders hete lijm, wat dan ook…).
  • Hoe verder van het midden van de ventilator, hoe meer centrifugale kracht er op het onderdeel komt. Zet ze goed vast.

Stap 6: Beveilig uw LED's en uw Hall-sensor

Beveilig uw LED's en uw Hall-sensor
Beveilig uw LED's en uw Hall-sensor
Beveilig uw LED's en uw Hall-sensor
Beveilig uw LED's en uw Hall-sensor
Beveilig uw LED's en uw Hall-sensor
Beveilig uw LED's en uw Hall-sensor

Om de LED's aan elkaar te solderen, heb ik een 1/4 boor gebruikt en gemeten op een rechte lijn van 1,5 cm in een 2x4 bord. De LED's zaten erin en ik kon ze gemakkelijk in een array solderen. Ik denk dat 1 cm beter zou zijn, omdat de letters vaak erg lang zijn en uitgerekt op 1,5 cm.

Meet je mes en gebruik een 3/16 inch bit om de gaten te boren. De LED's moeten zeer strak in de gaten passen en zeer veilig zijn. Gebruik schuurpapier op de voorkant van de LED's om het licht beter te laten diffunderen. Ik gebruik ook graag superlijm en bakpoeder om de LED's op hun plaats te lijmen en een betere lichtverspreiding te creëren. Superglue is ook licht van gewicht in vergelijking met Hot Glue.

Boor of dremel aan het andere uiteinde van de ventilatoreenheid drie kleine gaatjes voor uw hall-sensor. Merk op in de afbeelding dat de hall-sensor loodrecht op de bladbeweging staat. Nogmaals, beveilig uw draden goed. Leid ze door gaten in de mesconstructie voor stabiliteit.

Stap 7: Soldeer het eindproduct

Soldeer het eindproduct
Soldeer het eindproduct
Soldeer het eindproduct
Soldeer het eindproduct
Soldeer het eindproduct
Soldeer het eindproduct

Plaats uw coils zo dicht mogelijk bij elkaar zonder ze aan te raken. Een paar knipsels naar een oude cd-rom is een goede afstandhouder als u de spoelen moet opvullen. Omdat de spoelen zich in het midden van het draaiende ventilatorblad bevinden, is er niet te veel centrifugale kracht. U kunt vol vertrouwen Hot Glue gebruiken.

Ik gebruikte een USB-kabel (goedkope, niet je mooie programmeerkabel) om de spoel op de grill van stroom te voorzien. Onthoud dat de stroomkabels naar een standaard vieraderige USB-kabel rood en zwart zijn. De witte en groene lijnen zijn digitale lijnen.

Voltooi uw soldeerwerk. Sinds ik aan boord van de mijne ben, installeer ik slechts één onderdeel tegelijk. Neem je tijd. Zorg ervoor dat de LED's in de juiste volgorde zijn bevestigd. De nr. 1 LED moet de buitenste zijn.

Als je klaar bent met solderen, plaats je een magneet in het pad van de hall-sensor. Je wilt dat hij tijdens het draaien zo dicht mogelijk bij de hall-sensor zit zonder hem te raken.

Stap 8: Start het op

Vuur het op
Vuur het op
Vuur het op
Vuur het op

Zodra je ventilator klaar is, start je hem op!

Als je je ventilator al hebt ingesteld op wifi, zou je het IP-adres in de fan POV moeten zien. Het kan een minuut duren om verbinding te maken met de wifi. Ga naar een webbrowser en typ het IP-adres in de adresbalk. De tekst zal op magische wijze veranderen in de twee teksten die je hebt getypt.

GEDAAN!!!

Aanbevolen: