Smarthome

ESPHome – Okos RGB LED szalag

Ne vegyél drágán vezérlőket. Csak egy ESP-re és 3 MOSFET-re van szükséged, hogy okos RGB LED szalagod legyen.

Már lassan 10 éve történt, hogy meglepett édesapám egy 10m-es RGB LED szalaggal. Ez a tipikus infra távirányítós, olcsó, kínai 5050 RGB strip.

Mivel ez egy infrás cucc, fel lehet okosítani infra adókkal, mint pl. a Broadlink RM termékeivel. Ennek ugye van egy nagy hátránya: nincs semmilyen visszajelzés arról, hogy az eszköz tényleg fogadta-e azt, amit a távirányító kiadott.

Sokszor persze ez félrement, emiatt már scriptekkel hívtam, ami pl. 3x ismételte meg a parancsokat, hogy tuti vegye őket a vezérlő vevője. Ezzel meg az volt a gond, hogy néha „félreértette” őket, pl. teljesen más színben kapcsolt be vagy rosszabb esetben fade modeban, amikor az összes színt áttűnéssel váltogatja.

Meguntam, hogy ilyen instabil, úgyhogy gondoltam kiváltom ESPHome-mal.

Hardver

A LED szalagok vezérléséről

Szükséged lesz értelemszerűen egy LED szalagra ehhez a projekthez. Nagyon fontos, hogy közös anódú legyen, azaz olyan, ahol a különböző színű LED-ek közös pontja pozitív.

Ha megnézed a LED szalagod, azt kell látnod az érintkezők feliratainál, hogy az R-G-B-n kívül + vagy VCC szerepel, semmiképpen sem vagy GND.

Szerencsére a közös anódú LED szalagok az elterjedtebbek, ugyanis sokkal könnyebb és olcsóbb őket vezérelni. Az ilyen szalagok vezérléséhez N típusú FET-ek használhatóak, amikből találsz bőven olyat, amit 3V-tal is tudsz kapcsolni. Közös katódú szalagokat ellenben P típusú FET-ekkel tudsz kapcsolni, amik nem a legideálisabbak pl. ESP32-höz, mert magas a küszöb feszültségük (Vgs(th)) (4V+).

MOSFET

Az ESP GPIO-i ugyebár 3.3V-ot és 20mA-t tudnak magukból kipréselni. Egy rövidebb LED szalag már simán megehet 1A-t, ráadásul jó eséllyel legalább 5V-ra van szüksége. Az én LED szalagom 2A-es tápegységgel érkezett és 12V-os. Szükség van tehát valamire, amivel egy másik áramkört lehet kapcsolni. Az optocsatoló nem jó választás, mert azon nagyon kevés áram tud átfolyni.

Barátunk ehhez a feladathoz a MOSFET. Ez egy tranzisztor, ami pont erre való, amit szeretnénk itt csinálni: gyengébb áramú áramkörrel nagyobbat kapcsolni.

TO220AB tokozású FET
TO220AB tokozású FET

Az én projektjeimhez az IRLZ44NPBF jó választásnak tűnt, ezért rendeltem belőle egy nagy kupaccal. Amire figyelned kell, ha nem ezt veszed:

  • legyen N típusú
  • ID (drén áram) értékébe férjen bele a LED szalag áramigénye
  • VDSS (drén-forrás feszültség) értékébe férjen bele a LED szalag tápjának feszültsége
  • VGS(th) maximuma legyen 3.3V alatt

Áramkör

Ez a design tetszőlegesen bővíthető annyi MOSFET-tel, amennyi GPIO-d elérhető, így mindenféle LED szalaggal használhatod:

  • egy színű szalag esetén elég lesz 1 darab,
  • állítható színhőmérsékletű (hideg és fehér csatorna) szalagnál 2 darab,
  • RGB-nél 3,
  • RGBW-nél 4
  • és RGBWW-nél 5 db MOSFET-re van szükséged.

Összerereltem ezt is egy univerzális nyákra, bekerült egy kis dobozba.

Szoftver

light:
  - platform: rgb
    name: "Bed Light Strip"
    red: o_mosfet_1
    green: o_mosfet_0
    blue: o_mosfet_2
    
output:
  - platform: ledc
    id: o_mosfet_0
    pin: GPIO0
    frequency: 19531
    max_power: 40%
  - platform: ledc
    id: o_mosfet_1
    pin: GPIO1
    frequency: 19531
    max_power: 40%
  - platform: ledc
    id: o_mosfet_2
    pin: GPIO2
    frequency: 19531
    max_power: 40%

3 PWM kimenetre és egy RGB fény komponensre van szükséged. A PWM kimenetek a MOSFET-ek gate-jeire vannak kötve.

RGB LED szalag Home Assistantban

Kész is az okos RGB fény az ágy alá.

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük