INHOUDSOPGAWE:
Video: 12V LED PWM -dimmer met ESP8266: 3 stappen
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
Terwyl ek probeer om my huishouding meer volhoubaar te maak, het ek halogeenlampe vir LED -ligte verruil. Daar is baie alternatiewe beskikbaar om enige tipe gloeilamp te vervang. Terwyl ek dit gedoen het, het ek die volgende probleem teëgekom: ek het 'n lamp gehad wat 7 12 volt halogeen gloeilampe gebruik, elk 10 watt. Hierdie lig is beheer deur 'n dimmer, wat goed gewerk het. Toe ek die gloeilampe verruil vir 12 volt LED -ligte, elke 1 Watt, werk die dimmer sleg: die lig flikker en die verdowning effens wisselvallig. Dit is 'n probleem met baie klassieke dimmers: hulle het 'n minimale drywing wat hulle nodig het om te kan werk.
Op grond van my domotika -stelsel het ek besluit om hierdie handmatige dimmer met 'n nuwe een te verruil, wat die bykomende voordeel het dat ek op afstand beheer kan word. Ek het reeds 'n dimmer gebou met 'n N-kanaal MOSFET (IRF540), wat perfek is vir hierdie soort dinge: dit kan beheer word deur 'n PWM-sein, en dit is feitlik onvernietigbaar, met 'n maksimum van 100 volt en 33 ampère, voldoende vir hierdie doel (vinnige kontrole: 7 x 1 watt = 7 watt, gedeel deur 12 volt, gee 'n maksimum stroom van ongeveer.58 ampère). Ek wil hierdie dimmer gebruik vir 'n ander armatuur met 12 gloeilampe, elk 2 watt, wat 'n maksimum van 2 Ampère gee, wat ook voldoende is. Die enigste ding om op te let vir die frekwensie van die PWM -sein, maar die gewone waardes vir Arduino of ESP8266 (500 Hz of 1kHz) is nie 'n probleem nie.
Stap 1: Stap 1: die komponente
- LED driver (230 volt AC tot 12 volt DC converter) Vir my doel wil ek 'n maksimum van 24 Watts gebruik, so ek het begin met 'n LED driver van 12 volt en 2 Amps. Ek het een op 'n Chinese verspreiderwebwerf gekry. Hierdie bestuurder het 'n nominale spanning van 12 volt, 28 watt, dus dit was voldoende om die toestel self te bestuur. Afhangende van u toestel, kan u 'n ligter of swaarder weergawe gebruik vir u eie situasie.
- IRF540 n-kanaal MOSFET
- Adafruit Huzzah ESP8266 Breakout Omdat ek WiFi wou gebruik, en ek is absoluut mal oor Adafruit se produkte, het ek hierdie bord gekies: dit gee my 'n ESP8266 met 'n maklike programmering, 'n ingeboude kragreguleerder en 'n elegante vormfaktor. Dit is 'n bietjie te veel vir hierdie projek, maar dit maak toets en ontfouting baie makliker.
- LM2596-gebaseerde DC-DC-omskakelaar Om die krag van die ESP-bord uit die 12 volt te verkry, het ek 'n reguleerder nodig gehad; hierdie klein omsetters is baie doeltreffend en baie goedkoop.
-
Draaikodeerder met knoppie-funksie, met ingeboude LED-lig:
www.sparkfun.com/products/10596
Enige roterende encoder sou doen, maar ek hou van die ekstra funksie van 'n ingeboude LED.
-
Deursigtige plastiek knop
www.sparkfun.com/products/10597
- Weerstand 4k7
- Weerstand 1k
Stap 2: Stap 2: die kring
Dit is die stroombaan wat ek gebruik het: ek het penne 4 en 5 as insette vir die draaikodeerder gebruik en pen 0 vir die knoppie. Pin 0 is ook gekoppel aan die ingeboude rooi led, sodat ek die funksie van die knoppie op die kode kan nagaan deur na hierdie LED te kyk.
Speld 16 word gebruik vir die PWM -uitvoer, en ek het dit direk gekoppel aan die groen led op die Sparkfun -enkodeerder. Die ESP8266 is 3, 3 volt, en selfs met 100%het ek slegs 2, 9 volt se uitset gemeet, so ek het dit direk verbind sonder 'n reeksweerstand. Dieselfde uitset gaan na die poort van die n-kanaal MOSFET, deur middel van 'n 1kOhm-weerstand. Hierdie hek word tot 12 volt getrek deur 'n 4,7 kOhm-weerstand.
Ek het die DC-DC-omskakelaar gebruik om die 12 volt na 5,5 volt om te skakel, dit is gekoppel aan die V+ -invoer van die Adafruit breakout. Ek sou 3.3 volt kon gebruik en dit direk konnekteer, maar dit is 'n bietjie veiliger.
Die 12 V LED -lamp in die stroombaan is my toestel.
Stap 3: Stap 3: die kode
Ek plaas die kode op GitHub:
Skets vir ESP8266 LED PWM dimmer
Dit is gebaseer op 'n idee wat nog 'n opdrag is:
www.instructables.com/id/Arduino-PWM-LED-D…
Maar dit was bloot plaaslike beheer, so ek het my eie MQTT-gebaseerde domotika-oplossing bygevoeg. Dit doen basies dieselfde, maar die belangrikste verskille is:
- die standaard aantal PWM -stappe met 'n Arduino is 255, met die ESP8266 is dit 1023 (soos ek later uitgevind het, probeer ek uitvind hoekom my LED -lamp nie 100% helder geword het nie …)
- Ek het nie die 'Totempole' -kring met die 2 transistors gebruik nie, aangesien die PWM in elk geval DC was, en het dit goed gewerk met die IRF 540.
- Ek het nie die 10k optrekweerstands vir die encoder gebruik nie; ek het die ingeboude pullups van die ESP8266 vertrou.
- Die ESP8266 gebruik 3.3 volt logika in plaas van 5 volt vir die Arduino, wat geen probleem vir die IRF540 was nie
Die sagteware het die volgende funksies:
- As u die encoder draai, word die lig (CW) of af (CCW) verlaag, van 0 tot 100%, in 1023 stappe, terwyl die laer vlakke versnel word.
- As u op die knoppie druk, word die lig aangeskakel as dit af is, met die laaste gestoorde helderheidsvlak, of as dit aan is.
- As u die knoppie langer ingedruk hou terwyl die lig brand, word die huidige helderheid as standaardvlak bespaar.
- As u die knoppie langer ingedruk hou terwyl die lig af is, word die lig 100% helder, sonder om die standaardvlak te verander.
- Dit maak verbinding met die WiFi -instellings wat gedefinieer word deur die 'SECRET_SSID' en 'SECRET_PASS' snare, wat in 'n aparte lêer in my skets gestoor word, genaamd 'secrets.h'
- Dit maak verbinding met 'n MQTT -bediener in die WiFi -netwerk met behulp van die 'MQTTSERVER'- en' MQTTPORT' -snare in dieselfde lêer.
- U kan die MQTT -inkomende onderwerp 'domus/esp/in' gebruik om opdragte uit te voer: 'AAN' of 'UIT' om die lig aan of uit te skakel, of 'n waarde van 0 tot 1023 om die helderheid te verander.
- Dit sal die toestand oor die MQTT -onderwerpe 'domus/esp/uit' (AAN of UIT) en 'domus/esp/uit/helderheid' (die helderheidswaarde) rapporteer.
Aanbeveel:
12V Mini Joule dief omskakelaar - Krag 220V AC LED gloeilamp met 12V battery: 5 stappe
12V Mini Joule dief omskakelaar - Krag 220V AC LED gloeilamp met 12V battery: Hallo, dit is my eerste instruksies. In hierdie instruksies sal ek deel hoe ek 'n eenvoudige omskakelaar gemaak het om 'n 12 W LED -lamp aan te skakel. Hierdie kring draai 12 V DC van battery na 220 V AC teen hoë frekwensie omdat dit joule dief as die hart van die
PWM Met ESP32 - Dim LED met PWM op ESP 32 Met Arduino IDE: 6 stappe
PWM Met ESP32 | Dim LED met PWM op ESP 32 Met Arduino IDE: In hierdie instruksies sal ons sien hoe om PWM seine te genereer met ESP32 met behulp van Arduino IDE & PWM word basies gebruik om analoog uitset van enige MCU te genereer en die analoog uitset kan tussen 0V en 3.3V wees (in die geval van esp32) & van
Wifi -beheerde 12v Led Strip met Raspberry Pi Met Tasker, Ifttt -integrasie: 15 stappe (met foto's)
Wifi -beheerde 12v Led Strip met Raspberry Pi Met Tasker, Ifttt Integration .: In hierdie projek sal ek jou wys hoe om 'n eenvoudige 12v analoge led strip oor wifi te beheer met 'n framboos pi. Vir hierdie projek benodig jy: 1x Raspberry Pi (I gebruik 'n Raspberry Pi 1 Model B+) 1x RGB 12v Le
Speel liedjies (MP3) met Arduino met behulp van PWM op luidspreker of Flyback -transformator: 6 stappe (met foto's)
Speel liedjies (MP3) met Arduino met behulp van PWM op luidspreker of Flyback -transformator: Hallo ouens, dit is my eerste instruksie, ek hoop dat u daarvan sal hou !! In hierdie projek het ek die seriële kommunikasie tussen my Arduino en my laptop gebruik, om musiekdata van my skootrekenaar na die Arduino oor te dra. En met behulp van die Arduino TIMERS t
Oortuig u daarvan om net 'n 12V-na-AC-lynomvormer te gebruik vir LED-ligstringe in plaas daarvan om hulle weer vir 12V te bedraad: 3 stappe
Oortuig u daarvan om net 'n 12V-na-AC-lynomvormer te gebruik vir LED-ligstringe in plaas daarvan om hulle weer vir 12V te bedraad: my plan was eenvoudig. Ek wou 'n muur-aangedrewe LED-ligstring in stukke sny en dan weer bedraad om 12 volt af te loop. Die alternatief was om 'n kragomvormer te gebruik, maar ons weet almal dat hulle vreeslik ondoeltreffend is, nie waar nie? Reg? Of is hulle?