Indholdsfortegnelse:
Video: 12V LED PWM Dimmer med ESP8266: 3 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Mens jeg forsøgte at gøre min husstand mere bæredygtig, byttede jeg halogenpærer til LED -lamper. Der findes masser af alternativer til udskiftning af enhver form for pære. Mens jeg gjorde dette, stødte jeg på følgende problem: Jeg havde en lampe, der brugte 7 12 volt halogenpærer, hver 10 Watt. Dette lys blev styret af en dæmper, som fungerede fint. Da jeg byttede pærerne til 12 volt LED -lys, hver 1 Watt, fungerede lysdæmperen dårligt: lyset flimrede og dæmpningen noget uregelmæssig. Dette er et problem med mange klassiske dæmpere: de har en minimal effektværdi, som de har brug for for at fungere.
Så baseret på mit domotics -system besluttede jeg at udveksle denne manuelle dæmper med en ny, hvilket ville have den ekstra fordel, at den kunne fjernstyres. Jeg havde allerede bygget en lysdæmper ved hjælp af en N-kanal MOSFET (IRF540), som er perfekt til denne slags ting: den kan styres af et PWM-signal, og den er praktisk talt uforgængelig med en maksimalværdi på 100 volt og 33 ampere, rigeligt nok til dette formål (hurtig kontrol: 7 x 1 Watt = 7 Watt, divideret med 12 volt giver en maksimal strøm på ca. 0,58 ampere). Jeg vil bruge denne lysdæmper til en anden armatur, der har 12 pærer, hver 2 watt, hvilket giver maksimalt 2 ampere, så det er også tilstrækkeligt. Det eneste der skal passe på frekvensen af PWM -signalet, men de sædvanlige værdier for Arduino eller ESP8266 (500 Hz eller 1 kHz) er ikke et problem.
Trin 1: Trin 1: Komponenterne
- LED Driver (230 volt AC til 12 volt DC converter) Til mit formål vil jeg maksimalt bruge 24 watt, så jeg startede med en LED driver på 12 volt og 2 ampere. Jeg fandt en på et kinesisk distributørsite. Denne driver blev vurderet til 12 volt, 28 watt, så det var tilstrækkeligt at køre armaturet af sig selv. Til din egen situation kan du bruge en lettere eller tungere version, afhængigt af din armatur.
- IRF540 n-kanal MOSFET
- Adafruit Huzzah ESP8266 Breakout Fordi jeg ville bruge WiFi, og jeg er helt vild med Adafruit's produkter, valgte jeg dette board: det giver mig en ESP8266 med en bekvem programmering pinout, en indbygget strømregulator og en elegant formfaktor. Det er en smule overkill for dette projekt, men det gør testning og fejlfinding meget lettere.
- LM2596-baseret DC-DC-konverter For at få strøm til ESP-kortet fra 12 volt, havde jeg brug for en regulator; disse små konvertere er meget effektive og meget billige.
-
Rotary Encoder med knapfunktion, med indbygget LED-lys:
www.sparkfun.com/products/10596
Enhver roterende encoder ville gøre, men jeg kunne godt lide den flotte ekstra funktion i en indbygget LED.
-
Klar plastknap
www.sparkfun.com/products/10597
- Modstand 4k7
- Modstand 1k
Trin 2: Trin 2: kredsløbet
Dette er det kredsløb, jeg brugte: Jeg brugte ben 4 & 5 som indgange til den roterende encoder og pin 0 til knappen. Pin 0 er også forbundet med den indbyggede røde LED, så jeg kunne kontrollere funktionen af knappen på kodningen ved at se denne LED.
Pin 16 bruges til PWM output, og jeg tilsluttede dette direkte til den grønne LED på Sparkfun encoder. ESP8266 er 3, 3 volt, og selv med 100%målte jeg kun 2, 9 volt output, så jeg tilsluttede det direkte uden en seriemodstand. Den samme output går til porten på n-kanal MOSFET ved hjælp af en 1 kOhm modstand. Denne port trækkes højt til 12 volt af en 4,7 kOhm modstand.
Jeg brugte DC-DC-konverteren til at konvertere de 12 volt til 5,5 volt, dette er forbundet til V+ -indgangen i Adafruit breakout. Jeg kunne have brugt 3,3 volt og tilsluttet det direkte, men det er lidt mere sikkert.
12 V LED -lampen i kredsløbet er mit armatur.
Trin 3: Trin 3: Koden
Jeg satte koden på GitHub:
Skitse til ESP8266 LED PWM lysdæmper
Det er baseret på en idé, som en anden kan instrueres:
www.instructables.com/id/Arduino-PWM-LED-D…
Men dette var rent lokal kontrol, så jeg tilføjede min egen MQTT-baserede domotik-løsning. Det gør stort set det samme, men de største forskelle er:
- standardantallet af PWM -trin med en Arduino er 255, med ESP8266 er det 1023 (som jeg fandt ud af senere, hele forsøg på at finde ud af, hvorfor min LED -armatur ikke steg helt op til 100% lysstyrke …)
- Jeg brugte ikke 'Totempole' kredsløbet med de 2 transistorer, da PWM alligevel var DC og fungerede fint med IRF 540.
- Jeg brugte ikke 10k pull-up modstande til encoderen, jeg stolede på de indbyggede pullups i ESP8266.
- ESP8266 bruger 3,3 volt logik i stedet for 5 volt til Arduino, hvilket viste sig ikke at være noget problem for IRF540
Softwaren har følgende funktioner:
- drejning af encoder vil dæmpe lyset op (CW) eller ned (CCW), fra 0 hele vejen til 100%, i 1023 trin, med en vis fremskyndelse i de lavere niveauer.
- Hvis du trykker på knappen, tændes lyset, når det er slukket, ved hjælp af det sidst gemte lysstyrkeniveau, eller det slukkes, når det er tændt.
- Hvis du trykker på knappen i længere tid, mens lyset er tændt, gemmes den aktuelle lysstyrke som standardniveau.
- Hvis du trykker på knappen i længere tid, mens lyset er slukket, tændes lyset til 100% lysstyrke uden at ændre standardniveauet.
- Den opretter forbindelse til WiFi -indstillingerne defineret af strengene 'SECRET_SSID' og 'SECRET_PASS', som er gemt i en separat fil i min skitse, kaldet 'secrets.h'
- Den opretter forbindelse til en MQTT -server i WiFi -netværket ved hjælp af strengene 'MQTTSERVER' og 'MQTTPORT' i den samme fil.
- Du kan bruge det indgående emne MQTT 'domus/esp/in' til at udstede kommandoer: 'ON' eller 'OFF' for at tænde eller slukke lyset, eller en værdi fra 0 til 1023 for at ændre lysstyrken.
- Den rapporterer tilstanden om MQTT -emnerne 'domus/esp/uit' (ON eller OFF -status) og 'domus/esp/uit/brightness' (lysstyrkeværdien).
Anbefalede:
12V Mini Joule Thief Inverter - Power 220V AC LED -pære med 12V batteri: 5 trin
12V Mini Joule Thief Inverter - Power 220V AC LED pære med 12V batteri: Hej, dette er min første Instructables. I denne instruktion vil jeg dele, hvordan jeg lavede en simpel inverter til at drive en 12 W LED -pære. Dette kredsløb inverterer 12 V DC fra batteri til 220 V AC ved høj frekvens, fordi det brugte joule tyv som hjertet i c
PWM Med ESP32 - Dæmpning LED med PWM på ESP 32 Med Arduino IDE: 6 trin
PWM Med ESP32 | Dæmpning af LED med PWM på ESP 32 Med Arduino IDE: I denne instruktion vil vi se, hvordan man genererer PWM -signaler med ESP32 ved hjælp af Arduino IDE & PWM bruges dybest set til at generere analog output fra enhver MCU, og den analoge output kan være alt mellem 0V til 3,3V (i tilfælde af esp32) & fra
WiFi Fan Speed Regulator (ESP8266 AC Dimmer): 8 trin (med billeder)
WiFi blæserhastighedsregulator (ESP8266 AC -dæmper): Denne instruktør guider dig til, hvordan du laver en loftsventilatorhastighedsregulator ved hjælp af Triac Phase -vinkelkontrolmetode. Triac styres konventionelt af Atmega8 standalone arduino -konfigurerede chip. Wemos D1 mini tilføjer WiFi -funktionalitet til denne regulator
Overbevis dig selv om bare at bruge en 12V-til-AC-line inverter til LED-lysstrenge i stedet for at genoprette dem til 12V .: 3 trin
Overbevis dig selv om bare at bruge en 12V-til-AC-line inverter til LED-lysstrenge i stedet for at genoprette dem til 12V .: Min plan var enkel. Jeg ville skære en væg-drevet LED-lysstreng i stykker og derefter genkoble den til at køre 12 volt. Alternativet var at bruge en strømomformer, men vi ved alle, at de er frygtelig ineffektive, ikke? Ret? Eller er de det?
12v til USB Adapter 12v til 5v Transformer (fantastisk til biler): 6 trin
12v til USB Adapter 12v til 5v Transformer (fantastisk til biler): Dette viser dig, hvordan du laver en 12v til USB (5v) adapter. Den mest oplagte anvendelse af dette er til 12v biladaptere, men hvor som helst du har 12v kan du bruge det! Hvis du har brug for 5v til andet end USB, skal du blot springe trinene om tilføjelse af USB -porte over