Stap 3: De circuits
Microcontroller-core
Het hart van het circuit is de ESP8266 gebaseerde ESP-01 wifi microcontroller module. Het basisidee is om te programmeren van dit ding te houden van tijd, dienen van een webpagina, leiden tot een alarm en controle een dimmer, door een PWM -signaal te sturen naar een MOSFET -schakelaar.
De ESP-01-bestuur is goedkoop, klein, en beschikt over een easy-to-use 2,54 mm/0,1 '' toonhoogte connector. Het nadeel is dat je alleen maar 2 General-Purpose input/output (GPIO) pinnen: GPIO0 en GPIO2. Ook, zowel van deze noodzaak als trok hoog in eerste instantie voor de juiste microcontroller start-up, en ze worden gedreven door de bootloader voor een korte terwijl na het opstarten (zoals kan worden gezien in twee gekoppelde toepassingsgebied screenshots). Deze dingen zal leiden tot merkbare flikkeren als we de lamp rechtstreeks vanaf een van de pinnen zou rijden.
Kijkend naar de werkingssfeer metingen weer, zien we kan dat zelfs tijdens het opstarten, er is geen tijd die als GPIO0 en GPIO2 worden gedreven laag tegelijkertijd. We zullen dit misbruik maken door het circuit op een zodanige wijze dat de lamp alleen inschakelen zal wanneer zowel de GPIO0 als de GPIO2 zijn gedreven laag - effectief brengen een NOR poort tussen de GPIO0/2 en de MOSFET. GPIO0 zal worden gebruikt voor (omgekeerde) PWM, en GPIO2 zullen een pin 'inschakelen'. Deze set-up geeft ons volledige controle om te voorkomen dat flikkeren.
Opamp en MOSFET
De resultaten van GPIO0 en GPIO2 worden gevoed in de inverterende ingang van de opamp via R4 en R5. De niet-inverterende ingang van de opamp krijgt een referentie spanning van over 0.5V gemaakt door R6/D1. Dit zet de gewenste NOR-functie. Door de opamp met 12V voeding, het biedt ook de nodige impuls van de 3.3V logica van de ESP-01 tot en met de 10V + moet volledig station de MOSFET. Wij rijden de MOSFET van de uitgang van de opamp via R7. Terwijl dit zeker niet een ideale MOSFET-stuurprogramma te maken, het is absoluut goed (snel) genoeg voor deze toepassing. Bij het opbouwen van het circuit op een breadboard ik zag sommige spanningspieken en beltonen, waarschijnlijk gerelateerd aan het zelf zelfinductie van de draden tussen de MOSFET en de LED-unit. Ik onderdrukt (ruw maar effectief) dit door C2 over bron- en afvoer plaatsen.
Voeding
Deel van onze schakeling moet over 12V, en het andere deel moet ongeveer 3.3V, en we hebben een bestaande 12V voeding om dit uit te krijgen. We bent effectief 'stelen' macht van een bestaand ontwerp, in de hoop dat de hoeveelheid stroom die we trekken de veiligheidsmarges in de bestaande lamp - wat betekent dat we moeten blijven stroomverbruik vrij laag niet overschrijden.
Volgens dit onderzoekmoeten we uitgaan van een 215mA huidige trekken uit de ESP-01. Met behulp van een lineaire regulator (zoals een LD1117) is niet een goede optie. Het zou betekenen dat we ook de 215mA uit de oorspronkelijke voeding gewaardeerd op 1A trekken zou - dus 215mA zou vrij aanzienlijk. Ook, zou de regelgever ongeveer 1.9W te verdrijven en zo moet een heat sink. Dus gebruikte ik een switch voedingsmodule plaats. Deze bijzondere LM2596 gebaseerde module kan worden aangepast aan de gewenste 3,3 v door een trimpot aan te passen. Ervan uitgaande dat een 85% conversie efficiëntie, zou het 70mA trekken de oorspronkelijke voeding en verdrijven 125mW - dat veel meer aanvaardbaar is.