• Schéma zapojení a ovládání LED pásku pomocí Arduina. Připojení a ovládání LED pásku k arduinu

    Arduino je ideální pro ovládání jakéhokoli zařízení. Mikroprocesor ATmega pomocí skicového programu manipuluje velké množství diskrétní výstupy, analogově-digitální vstupy/výstupy a PWM regulátory.

    Díky flexibilitě kódu je mikrokontrolér ATmega široce používán v různých automatizačních modulech, včetně na jeho základě je možné vytvořit ovladač pro řízení LED osvětlení.

    Princip řízení zátěže přes Arduino

    Deska Arduino má dva typy výstupních portů: digitální a analogový (řadič PWM). Digitální port má dva možné stavy - logickou nulu a logickou jedničku. Pokud k němu připojíte LED diodu, bude svítit nebo ne.

    Analogovým výstupem je PWM regulátor, na který je přiváděn signál o frekvenci asi 500 Hz s nastavitelným pracovním cyklem. Co je to PWM regulátor a jak funguje, najdete na internetu. Přes analogový port je možné zátěž nejen zapínat a vypínat, ale také na ní měnit napětí (proud).

    Syntaxe příkazu

    Digitální výstup:

    pinMode(12, OUTPUT);- nastavte port 12 jako výstupní port dat;
    digitalWrite(12, VYSOKÝ);- na diskrétní výstup 12 přivedeme logickou jednotku, která rozsvítí LED.

    Analogový výstup:

    analogOutPin = 3;- nastavte port 3 na výstup analogové hodnoty;
    analogWrite(3, hodnota);- na výstupu tvoříme signál o napětí od 0 do 5V. Hodnota – pracovní cyklus signálu od 0 do 255. Při hodnotě 255 maximální napětí.

    Způsoby ovládání LED přes Arduino

    Přímo přes port lze připojit pouze slabou LED a i tak je to lepší přes omezovací rezistor. Pokus o připojení výkonnější zátěže ji deaktivuje.

    Pro výkonnější zátěže včetně LED pásků se používá elektronický klíč - tranzistor.

    Typy tranzistorových klíčů

    • bipolární;
    • Pole;
    • Kompozitní (sestava Darlington).
    Způsoby připojení zátěže
    Přes bipolární tranzistor Přes tranzistor s efektem pole Přes přepínač napětí

    Při použití vysoké logické úrovně (digitalWrite(12, HIGH);) přes výstupní port do báze tranzistoru přes řetězec kolektor-emitor poteče referenční napětí do zátěže. Tímto způsobem můžete LED zapínat a vypínat.

    Tranzistor s efektem pole funguje podobným způsobem, ale protože má místo „základny“ kolektor, který není řízen proudem, ale napětím, je omezovací rezistor v tomto obvodu volitelný.

    Bipolární pohled neumožňuje regulovat výkonné zátěže. Proud jím je omezen na úrovni 0,1-0,3A.

    Tranzistory s efektem pole pracují s výkonnějšími zátěžemi s proudem do 2A. Pro ještě víc silné zatížení použití FET Mosfet s proudem do 9A a napětím do 60V.

    Místo pole můžete použít sestavu Darlington z bipolární tranzistory na čipech ULN2003, ULN2803.

    Čip ULN2003 a schéma zapojení elektronického spínače napětí:

    Princip činnosti tranzistoru pro plynulé ovládání LED pásku

    Tranzistor funguje jako faucet, pouze pro elektrony. Čím vyšší je napětí přiváděné do báze bipolárního tranzistoru nebo odvod efektu pole, tím nižší je odpor v řetězci emitor-kolektor, tím vyšší je proud procházející zátěží.

    Připojením tranzistoru k analogovému portu Arduino mu přiřaďte hodnotu od 0 do 255, změňte napětí aplikované na kolektor nebo kolektor z 0 na 5V. Přes obvod kolektor-emitor bude procházet od 0 do 100 % referenčního napětí zátěže.

    Pro ovládání arduino LED pásku je potřeba vybrat tranzistor vhodného výkonu. Provozní proud pro napájení LED měřiče je 300-500mA, k tomuto účelu je vhodný výkonový bipolární tranzistor. Pro větší délky je vyžadován tranzistor s efektem pole.

    Systém LED připojení pásky pro arduino:

    Ovládání pásky RGB s Andurinem

    Kromě jednočipových LED umí Arduino pracovat i s barevnými LED. Připojením výstupů každé barvy k analogovým výstupům Arduino můžete libovolně měnit jas každého krystalu a dosáhnout tak požadované barvy záře.

    Schéma zapojení pro Arduino RGB VEDENÝ:

    Ovládání pásky Arduino RGB je postaveno podobně:

    Řadič Arduino RGB je nejlépe sestavit na tranzistorech s efektem pole.

    Pro plynulé ovládání jas lze použít dvě tlačítka. Jeden zvýší jas záře, druhý sníží.

    Náčrt ovládání jasu Arduino LED pásku

    int led = 120; Nainstalujte průměrná úroveň jas

    void setup()(
    pinMode(4, OUTPUT); nastavte 4. analogový port na výstup
    pinMode(2, INPUT);

    pinMode(4, INPUT); nastavte 2. a 4. digitální port pro vstup pro dotazování tlačítek
    }
    void loop()(

    tlačítko1 = digitalRead(2);

    tlačítko2 = digitalRead(4);
    if (tlačítko1 == VYSOKÁ) stisknutím prvního tlačítka se jas zvýší
    {
    led=led+5;

    analogWrite(4, led);
    }
    if (tlačítko2 == VYSOKÁ) stisknutím druhého tlačítka se jas sníží
    {
    led \u003d led - 5;

    analogWrite(4, led);
    }

    Při přidržení prvního nebo druhého tlačítka se plynule mění napětí přivedené na ovládací kontakt elektronický klíč. Pak dojde k hladké změně jasu.

    Řídicí moduly Arduino

    Chcete-li vytvořit plnohodnotný ovladač LED pásku, můžete použít senzorové moduly.

    IR ovládání

    Modul umožňuje naprogramovat až 20 příkazů.

    Poloměr signálu je cca 8m.

    Cena kompletu je 6 kč.

    Prostřednictvím rádiového kanálu

    Čtyřkanálová jednotka s dosahem až 100m

    Cena kompletu je 8 kč.

    Umožňuje zapnout osvětlení i při přiblížení k bytu.

    Bezkontaktní

    Snímač vzdálenosti je schopen zvýšit a snížit jas světla pohybem ruky.

    Dosah až 5m.

    Cena modulu 0,3 c.u.

    V tomto článku si povíme o barevných LED, rozdílu mezi jednoduchou RGB LED a adresovatelnou, doplníme informace o aplikacích, jak fungují, jak se ovládají schematickými obrázky zapojení LED.

    LED diody - Elektronická součástka schopné vyzařovat světlo. Dnes jsou široce používány v různých elektronických zařízeních: ve svítilnách, počítačích, domácí přístroje, auta, telefony atd. Mnoho projektů mikrokontrolérů používá LED tak či onak.

    Mají dva hlavní účely.:

    Ukázka provozu zařízení nebo upozornění na jakoukoli událost;
    použití pro dekorativní účely (osvětlení a vizualizace).

    Uvnitř se LED skládá z červených (červených), zelených (zelených) a modrých (modrých) krystalů sestavených v jednom balení. Odtud název - RGB (obr. 1).

    2. Použití mikrokontrolérů

    S ním můžete získat mnoho různých odstínů světla. RGB LED je řízena mikrokontrolérem (MK), například Arduino (obr. 2).

    Samozřejmě, můžete jednoduchý blok 5 voltový zdroj, 100-200 ohmové odpory pro omezení proudu a tři spínače, ale pak budete muset ručně ovládat záři a barvu. V tomto případě nebude možné dosáhnout požadovaného odstínu světla (obr. 3-4).

    Problém nastává, když potřebujete k mikrokontroléru připojit sto barevných LED. Řadič má omezený počet pinů a každá LED potřebuje čtyři piny, z nichž tři jsou zodpovědné za barvu a čtvrtý pin je společný: v závislosti na typu LED to může být anoda nebo katoda.

    3. Ovladač pro ovládání RGB

    Pro odlehčení výstupů MK se používají speciální ovladače WS2801 (5 voltů) nebo WS2812B (12 voltů) (obr. 5).

    Při použití samostatného ovladače není potřeba obsazovat více výstupů MK, lze omezit pouze na jeden signálový výstup. MK vyšle signál na "Datový" vstup řídícího ovladače WS2801 LED.

    Tento signál obsahuje 24bitové informace o jasu barev (3 kanály po 8 bitech pro každou barvu) a také informace pro vnitřní posuvný registr. Je to posuvný registr, který umožňuje určit, které LED informace jsou adresovány. Je tak možné zapojit více LED do série a přitom stále využívat jeden výstup mikrokontroléru (obr. 6).

    4. Adresovatelná LED

    Jedná se o RGB LED, pouze s integrovaným ovladačem WS2801 přímo na čipu. Pouzdro LED je vyrobeno jako SMD součástka pro povrchovou montáž. Tento přístup umožňuje umístit LED diody co nejblíže k sobě, čímž je záře detailnější (obr. 7).

    V internetových obchodech se můžete setkat s adresovatelnými LED pásky, kdy se do jednoho metru vejde až 144 kusů (obr. 8).

    Stojí za zvážení, že jedna LED spotřebovává při plném jasu pouze 60-70 mA, při připojení pásky například k 90 LED budete potřebovat mocný blok napájecí zdroj s proudem alespoň 5 ampér. V žádném případě nenapájejte LED pásek přes ovladač, jinak se přehřeje a vyhoří od zátěže. Použití externí zdroje výživy (obr. 9).

    5. Nedostatek adresovatelných LED diod

    Adresovatelný LED páskové světlo nemůže pracovat při příliš nízkých teplotách: při -15 začne regulátor selhávat, při silnějších mrazech je vysoké riziko jeho poruchy.

    Druhou nevýhodou je, že pokud jedna LED selže, všechny ostatní odmítnou pracovat v řetězci: interní posuvný registr nebude schopen přenášet informace dále.

    6. Aplikace adresovatelných LED pásků

    Adresné LED pásky lze použít pro dekorativní osvětlení automobilů, akvárií, fotorámečků a obrazů, v interiérovém designu, jako vánoční dekorace atd.

    Zajímavým řešením se ukazuje, pokud je pásek LED použit jako podsvícení Ambilight pro monitor počítače (obr. 10-11).

    Pokud používáte mikrokontroléry Arduino základna, budete potřebovat knihovnu FastLed pro usnadnění práce s LED páskem ().

    RGB LED pásek je flexibilní pásek s nanesenými vodiči a RGB LED (plnobarevné). V Nedávno LED pásky jsou široce používány v architektuře, tuningu automobilů a motocyklů, kostýmech, dekoracích atd. Existují také voděodolné pásky, které lze použít například v bazénech.

    Existují dva typy LED pásků: analogové a digitální.
    V analogových páskách jsou všechny LED zapojeny paralelně. Můžete tedy nastavit barvu celého LED pásku, ale nastavit nelze specifická barva pro konkrétní LED. Tyto pásky se snadno spojují a nejsou drahé.
    Digitální LED pásky jsou trochu složitější. Pro každou LED je navíc instalován mikročip, který umožňuje ovládat libovolnou LED. Takové pásky jsou mnohem dražší než obvykle.

    V tomto článku budeme zvažovat práci pouze s analogovými LED pásky.

    Analogové RGB LED pásky

    datový list:
    - šířka 10,5 mm, tloušťka 3 mm, délka 100 mm na segment
    - voděodolný
    - 3M páska na spodní straně
    - max. odběr proudu (12V, bílá barva) - 60 mA na segment
    - barva záře (vlnová délka, nm): 630nm/530nm/475nm

    Schéma RGB LED pásku

    Páska je dodávána v rolích a skládá se ze sekcí o délce 10 cm Každá sekce obsahuje 3 RGB LED o velikosti 5050. Tj. v každé sekci se ukáže, že je 9 LED: 3 červené, 3 zelené a 3 modré. Hranice sekcí jsou označeny a obsahují měděné podložky. Proto lze v případě potřeby pásku odříznout a bezpečně připájet. Schéma LED pásku:

    Spotřeba energie

    V každé části pásku jsou 3 LED zapojené do série, takže napájení 5V nebude fungovat. Napájení by mělo být 12V, ale můžete dodat napětí i 9V, ale pak nebudou LED tak pálit.

    Jedna segmentová LED linka odebírá přibližně 20 mA při napájení 12 V. Že. pokud svítí bílá (t.j. červená 100%, zelená 100% a modrá 100%), příkon sekce bude cca 60mA.

    Nyní můžete snadno vypočítat proudovou spotřebu celé pásky. Délka pásky je tedy 1 metr. Páska má 10 sekcí (každý 10 cm). Spotřeba pásky s bílou barvou bude 60mA*10=600mA nebo 0,6A. Pokud použijete PWM efekt prolínání mezi barvami, lze spotřebu energie snížit na polovinu.

    Páskové připojení

    Pro připojení pásky je nutné připájet vodiče ke 4 ploškám. Použili jsme bílý vodič pro +12V a ostatní barvy, aby odpovídaly barvám LED.

    odříznout ochranný film na konci pásky. Z které strany bude spojení provedeno - na tom nezáleží, protože. páska je symetrická.

    Odstraňte izolační vrstvu, abyste odkryli podložky.

    Vypořádejte se s nimi.

    Připájejte čtyři dráty. Je lepší použít lankový drát (například PV3 nebo PVA kabel), je flexibilnější.

    Tepelně smrštitelné bužírky lze použít k ochraně před vodou a vnějšími vlivy. Pokud bude LED pásek používán ve vlhkém prostředí, lze kontakty navíc potřít silikonem.

    Práce s LED páskem

    Pásku lze snadno použít s jakýmkoliv mikrokontrolérem. K ovládání LED se doporučuje použít modulaci šířky pulzu (PWM). Nepřipojujte páskové vodiče přímo k vodičům MK, protože. jedná se o velké proudové zatížení a regulátor se může spálit. Je lepší použít tranzistory.

    Můžete použít NPN tranzistory nebo ještě lépe N-kanálové mosfety. Při výběru tranzistoru nezapomeňte, že maximální spínací proud tranzistoru je nutné brát s rezervou.

    Připojení LED pásku k Arduino ovladači

    Zvažte příklad připojení LED pásku k populárnímu. Pro připojení můžete použít levné a oblíbené mosfety. Můžete také použít konvenční bipolární tranzistory, jako je TIP120. Ale ve srovnání s mosfetem má větší ztrátu napětí, takže se stále doporučuje používat první.
    Níže uvedený diagram ukazuje RGB připojení LED pásek při použití N-kanálových mosfetů. Brána mosfetu je připojena na pin1 řadiče, drain na pin2 a zdroj na pin3.

    Níže je znázorněno schéma zapojení při použití konvenčních bipolárních tranzistorů (například TIP120). Báze tranzistoru je připojena na pin1 regulátoru, kolektor na pin2 a emitor na pin3. Mezi základnu a výstup regulátoru musíte umístit odpor s odporem 100-220 ohmů.

    NA Arduino ovladač připojte napájecí zdroj s napětím 9-12 Voltů a + 12V z LED pásku musí být připojeno ke svorce Vin ovladače. Můžete použít 2 samostatné zdroje, jen nezapomeňte propojit "zemnění" zdroje a ovladače.

    Příklad programu

    K ovládání pásku bude použit PWM výstup ovladače, k tomu můžete použít funkci analogWrite () pro piny 3, 5, 6, 9, 10 nebo 11. U analogWrite (pin, 0) LED nebude světlo, s analogWrite (pin, 127) bude LED hořet na plný výkon a s analogWrite (pin, 255) bude LED svítit na maximální jas. Níže je ukázkový náčrt pro Arduino:

    #define REDPIN 5 #define GREENPIN 6 #define BLUEPIN 3 #define FADESPEED 5 // čím vyšší číslo, tím pomalejší bude slábnutí void setup() ( pinMode(REDPIN, OUTPUT); pinMode(GREENPIN, OUTPUT); pinMode( BLUEPIN , OUTPUT); ) void loop() ( int r, g, b; // přechod z modré do fialové pro (r = 0; r 0; b--) ( analogWrite(BLUEPIN, b); delay(FADESPEED) ; ) // slábnutí z červené na žlutou pro (g = 0; g 0; r--) ( analogWrite(REDPIN, r); delay(FADESPEED); ) // ze zelené na zelenomodrou pro (b = 0; b 0; g--) ( analogWrite(GREENPIN, g); zpoždění (FADESPEED); ) )

    Toto je nekomplikované Projekt Arduino navrženo pro řízení PWM (pulse width modulation). Může nezávisle měnit úroveň každé barvy změnou pracovního cyklu PWM. Tímto způsobem lze vytvořit jakoukoli barvu smícháním různých barev v procentech. Otočení kodéru na desce umožňuje uživateli výběr požadovaný kanál a změnit jeho jas. Tranzistory s nízkým spínacím odporem generují velmi nízký odvod tepla i při použití velký počet LED diody. Například tranzistor IRF540 má velmi nízký průchozí odpor RDS - asi 70 mΩ.

    Schéma páskového ovladače

    RGB LED je velmi běžný typ LED pásku, který obsahuje červenou, zelenou a modrou. led čip v jedné budově. Přestože jsou ve stejném pouzdře, každý krystal lze ovládat nezávisle. Díky této funkci můžeme získat obrovské množství různých barev pomocí RGB LED diody a samozřejmě lze výslednou barvu dynamicky měnit posuvníkem.

    Hlavní ovladač je vyroben pomocí Arduino Uno. Načte vstupní data z kodéru a podle těchto informací se spínají tranzistory. Tranzistory jsou buzeny piny 9, 10 a 11, které mají interní PWM funkce. Směr signálů kodéru A a B se čte pomocí prvků 2 a 3, které jsou připojeny k modulu. Tlačítko kodéru se používá k výběru kanálu a je připojeno ke kolíku 1, který je nastaven jako vstup.

    Minule se uvažovalo o způsobu připojení LED pásku k arduinu přes ovladač L298. Správa barev byla provedena programově - funkce Random. Nyní je čas zjistit, jak ovládat barvu LED pásku na základě údajů snímače teploty a vlhkosti DHT 11.

    Jako základ je brán příklad připojení LED pásku přes ovladač L298. Navíc byl do příkladu přidán displej LCD 1602, který bude zobrazovat hodnoty senzoru DHT 11.

    Pro projekt budete potřebovat následující prvky Arduino:

    1. Deska Arduino UNO.
    2. Displej LCD 1602 + I2C.
    3. DHT senzor teploty a vlhkosti
    4. LED páskové světlo.
    5. Ovladač L298.
    6. Napájení 9-12V.
    7. Pouzdro pro arduino a displej (volitelné).

    Nejprve se podívejme na schéma zapojení (obr. 1). Na něm vidíte, jak je potřeba propojit všechny výše uvedené prvky. Sestavení obvodu a jeho zapojení není nic složitého, ale stojí za zmínku jednu nuanci, na kterou většina lidí zapomene a skončí se špatnými výsledky. pracovní LED- stuhy s Arduinem.

    Obrázek 1. Kruhový diagram Arduino připojení a LED pásek se senzorem DHT 11

    Aby ne správné fungování LED pásek (blikání, nesoulad barev, neúplná záře atd.), napájení celého obvodu musí být provedeno společné, tzn. propojte GND (zem) piny ovladače Arduino a ovladače L298 (LED pásek). Jak to udělat, můžete vidět v diagramu.

    Pár slov o připojení čidla vlhkosti. Pokud si koupíte holý DHT 11, bez páskování, pak mezi prvním a druhým kontaktem, 5V a Data, musíte připájet odpor s nominální hodnotou 5-10 kOhm. Rozsah měření teploty a vlhkosti je napsán opačná strana tělo snímače DHT 11. Teplota: 0-50 stupňů Celsia. Vlhkost: 0-80%.


    Obrázek 2 Správné připojeníčidlo vlhkosti DHT 11

    Po sestavení všech prvků projektu podle schématu musíte napsat programovací kód, díky čemuž bude vše fungovat tak, jak chceme. A potřebujeme, aby LED pásek měnil barvu v závislosti na údajích snímače DHT 11 (vlhkost).

    K naprogramování senzoru DHT 11 budete potřebovat další knihovnu.

    Arduino a RGB programový kód - páska. Změna barvy stuhy v závislosti na vlhkosti.

    #include #include //knihovna pro práci s LCD displej 1602 #include //knihovna pro práci s čidlem vlhkosti a teploty DHT 11 int chk; //proměnná uloží všechna data ze senzoru DHT11 int hum; //proměnná bude ukládat hodnoty vlhkosti ze senzoru DHT11 dht11 DHT; //objekt typu DHT #define DHT11_PIN 4 //datový kontakt senzoru DHT11 je připojen na vstup 4 #define LED_R 9 //pin pro kanál R #define LED_G 10 //pin pro kanál G #define LED_B 11 //pin pro kanál B / /proměnné budou ukládat hodnoty barev //při smíchání všech tří barev se získá požadovaná barva int led_r=0, led_g=0, led_b=0; //deklarování objektu zobrazení s adresou 0x27 //nezapomeňte v projektu použít displej přes I2C desku LiquidCrystal_I2C lcd(0x27,16,2); void setup() ( //vytvoření displeje lcd.init(); lcd.backlight(); // deklarace pinů jako výstupů pinMode(LED_R, OUTPUT); pinMode(LED_G, OUTPUT); pinMode(LED_B, OUTPUT); ) void loop () ( chk = DHT.read(DHT11_PIN);//čtení dat ze senzoru DHT11 //výstup dat na displej lcd.print("Temp: "); lcd.print(DHT.teplota, 1); lcd .print( " C"); lcd.setCursor(0,1); lcd.print("Hum: "); lcd.print(DHT.vlhkost, 1); lcd.print(" %"); delay(1500 ); / /pro správnou funkci senzoru je potřeba zpoždění pro dotazování lcd.clear(); brum = DHT.humidity; //proveďte měření vlhkosti //v rozsahu od 19 do 30 % vlhkosti, abyste se dostali zelená barva if ((hučení >= 19) && (hučení<= 30)) { led_r = 1; led_g = 255; led_b = 1; } //в диапозоне от 31 до 40% влажности выдать красный цвет if ((hum >= 31) && (hum<= 40)) { led_r = 255; led_g = 1; led_b = 1; } //в диапозоне от 41 до 49% влажности выдать синий цвет if ((hum >= 41) && (hučení<= 49)) { led_r = 1; led_g = 1; led_b = 255; } // подача сигналов цвета на выхода analogWrite(LED_R, led_r); analogWrite(LED_G, led_g); analogWrite(LED_B, led_b); }

    Tagy: Tagy