Stmívač světla řízený Arduinem. Stmívač světla ovládaný Arduinem Pojďme sestavit obvod v hardwaru

Energie řízená Arduinem!

Pozornost!

Jsou dostupné

Koupit ve velkém

Milujete programování mikrokontrolérů!? Nyní můžete snadno vyřešit problémy s řízením napájení v síti 220V AC. Vyrobili jsme regulátor výkonu, který lze snadno připojit k mikrokontroléru, jako je například deska Arduino. Jednoduše připojte PWM výstup mikrokontroléru k našemu regulátoru výkonu a programově ovládejte elektrické spotřebiče: plynule zapínejte elektromotory, upravujte teplotu topení a mnoho dalšího.

Pozornost!

V některých pokynech k zařízení a ve schématu zapojení byl překlep. Vzhledem k nemožnosti nahradit návod ve všech dostupných balíčcích Vás žádáme o použití schématu z webu při připojování.

Specifikace

Zvláštnosti

  • Napájení z řídicí desky mikrokontroléru
  • Možnost nastavení otáček asynchronních motorů.
  • Nezasahuje do sítě 220V.

Princip činnosti

Klasický triakový regulátor výkonu s analogovým řídicím vstupem, kompatibilní s PWM výstupy mikrokontrolérů. Analogová část modulu je napájena z vaší desky mikrokontroléru (+Vcc). Přípustné napájecí napětí je +3,3...+5,0 V. Když se signál na analogovém vstupu regulátoru změní z 0 na + Vcc, výkon v zátěži se změní z 0 na 100 %.

Funkce

  • ovládání zátěže

dodatečné informace

Upoutejte pozornost!

Při provozu modulu se zátěží nad 3000 W je nutné zesílit dráhy desky plošných spojů vedoucí k výkonovému prvku. K tomu je nutné připájet jednožilový montážní vodič o průměru 1,5-2 mm od kontaktů svorky LOAD ke kontaktům svorek prvku POWER.

Modul je navržen pro práci se signálem PWM o frekvenci 300 Hz.

Zkontrolujte, zda modul správně funguje
Odstraňte propojku.



Propojte +VCC a ovládací kolíky pomocí propojky. Zároveň by se měl zvýšit jas lampy.
Propojte propojkou GND a „ovládací“ kontakty. V tomto případě by se měl jas lampy snížit.

Systém

Obsah dodávky

  • Modul MP248 - 1 ks. PC.
  • Návod - 1 ks. PC.

Příprava k použití

  • POZORNOST! Před zapnutím dodržujte bezpečnostní opatření při práci s vysokého napětí.
  • Odstraňte propojku.
  • Připojte k modulu žárovku.
  • Připojte 5V napájení pro nízkonapěťovou část obvodu.
  • Připojte napájení 220V pro vysokonapěťovou část obvodu.
  • Připojte propojku mezi +VCC a ovládací kolíky. Zároveň by se měl zvýšit jas lampy.
  • Připojte propojku mezi GND a ovládací kontakty. V tomto případě by se měl jas lampy snížit.
  • Po instalaci propojky se aktivuje inverze řízení.
  • Kontrola dokončena, užijte si ji.

Preventivní opatření

  • Dodržujte pravidla pro práci s vysokým napětím.
  • Připojení provádějte pouze tehdy, když je síť spolehlivě bez napětí.
  • Před použitím umístěte zařízení do krytu, například do plastové montážní krabice dostatečné velikosti.
  • Zajistěte dostatečné přirozené větrání a chlazení modulu, zejména při regulaci výkonů vyšších než 100W

Údržba

  • Na desce je vysoké napětí, které je životu nebezpečné. Při práci s elektroinstalací dodržujte bezpečnostní opatření.

Otázky a odpovědi

  • Dobré odpoledne Chápu správně, že řízení výkonu je možné pomocí PWM i analogového signálu, přičemž pracovní cyklus výstupního signálu PWM do triaku bude odpovídat úrovni analogového signálu v procentech napájecího napětí?
    • Tento modul byl navržen pro práci s Arduino 300 Hz PWM. S ostatními jsem to nezkoušel. Ale v zásadě by to mělo fungovat, protože jako základ se bere analogový signál a ne trvání a frekvence pulzu.
  • Dobré odpoledne Je možné s tímto zařízením s Arduinem ovládat rychlost 12V DC motoru (ventilátor topení auta)
    • Zařízení je určeno k ovládání zátěže pouze v obvodu 220V AC.
  • V mém regulátoru je 190 V bez zátěže a pod zátěží žárovka sotva svítí.
    • Zkontrolujte přítomnost rezistoru R10 - 10 kOhm a elektrolytického kondenzátoru C5 - 100 μFx16V, pokud možno je nainstalujte a zkontrolujte činnost zařízení.
  • Dobré odpoledne. Koupil jsem od vás tento regulátor. Ale z nějakého důvodu není propojka nalevo od řídicího vstupu zapojena a na vstupu není žádný kondenzátor. A dokud jsem propojku nepřemostil, tak regulátor vůbec nereagoval na ovládání. V návodu o tom není ani slovo. Proč?
    • Musíte nainstalovat C5 - 100 μFx16V, R10 - 10 kOhm Pokud to není možné, vezměte jej na místo nákupu Na jeho základě budou provedeny opravy nebo nahrazeny novým modulem..ru vám řeknou, co dělat.
  • Dobré odpoledne. Lze tento regulátor použít jako ostatní s proměnným rezistorem? Nebo bude ovládání stále vyžadovat 5 V a propojky (tlačítka) na ovládací kontakt?
    • To je pravda, k použití v režimu stmívače budete potřebovat externí napájení 5V a tlačítka.

Pokračování vývoje regulátoru začalo v lekci 36. Napíšeme program pro regulátor výkonu na bázi Peltierova prvku. Pojďme zjistit, co je integrální regulátor.

Chladicí výkon Peltierova článku (chladicí výkon) souvisí s elektrickým výkonem v článku. Proto je nutné upravit teplotu v komoře změnou elektrického výkonu na Peltierově modulu. Tito. Potřebujeme regulátor ani napětí, ani proudu, ale výkonu.

Vyvineme regulátor výkonu, ale nejprve se dozvíme minimum informací o regulátorech.

Obecné informace o regulátorech.

Regulátor je zařízení, které udržuje určité parametry objektu na dané úrovni. Regulátor monitoruje stav objektu a vyvíjí regulační akce pro zajištění stability regulačního parametru.

Dobře si pamatuji, že první regulační systém, který nám učitel TAU představil na ústavu (teorie automatické ovládání) existoval mechanismus pro udržování hladiny vody v nádrži. Když hladina vody dosáhne předem stanovené hodnoty, plovák se zvedne a ventil spojený s jeho pákou zastaví průtok vody. Pokud hladina vody klesne, plovák se spustí a ventil otevře vodu.

V každém regulátoru je nutné jasně identifikovat, co regulujeme a čím regulujeme. Tito.

  • nastavitelný parametr;
  • a regulační prvek.

V systému regulace hladiny vody je řízeným parametrem hladina vody a ovládacím prvkem je ventil spojený s pákou plováku. Vše ostatní mezi plovákem a ventilem je realizováno řídicím algoritmem.

Pro náš regulátor výkonu:

  • nastavitelný parametr – elektrický výkon na zátěži;
  • regulačním prvkem je pulzně šířkový modulátor.

Někoho napadne, co je regulačním prvkem v našem systému - pracovní cyklus PWM nebo klíčový tranzistor elektronický obvod. Implementujeme algoritmus regulátoru programově. Pro program je regulačním prvkem pracovní cyklus PWM.

Naprostá většina regulátorů využívá zpětnou vazbu ke zjištění stavu řízeného parametru a kompenzaci vnějších poruch.

V našem případě regulátor přijímá naměřený výkon z výstupu systému a nastavenou hodnotu výkonu. Pomocí určitého algoritmu regulátor vypočítá hodnotu pracovního cyklu PWM, díky kterému se mění výkon na zátěži.

Jako všechno ostatní má regulátor kritéria pro posuzování kvality. Tento:

  • Rychlost regulace (rychlost odezvy) – čas do snížení chyby regulace na danou hodnotu.
  • Přesnost regulace je chyba regulačního parametru v ustáleném stavu.
  • Stabilita regulátoru – absence výkyvů v regulačním parametru.

A dál. Řídicí algoritmus implementujeme softwarově. To znamená, že budeme mít diskrétní časový regulátor. Řízení bude probíhat v různých časových bodech. V programu regulátoru jsme definovali časovou diskrétnost regulátoru výkonu na 20 ms.

Integrovaný regulátor.

Na další regulační zákony se podíváme v další lekci, až budeme vyvíjet PID (proporcionálně-integrálně-derivační) regulátor teploty. Nyní mluvíme pouze o integrálním zákonu regulace.

Musíme tedy zachovat hodnotu výstupního výkonu změnou PWM. Nejjednodušší a nejintuitivnější způsob je:

  • porovnejte udaný výkon s naměřeným;
  • pokud je zadaná hodnota větší než skutečná, zvyšte PWM o 1;
  • pokud je zadaná hodnota menší než skutečná hodnota, snižte PWM o 1.

Regulátor s takovým řídicím algoritmem bude fungovat, ale jeho kritéria kvality řízení nejsou na úrovni. A úplně všechno.

Pro lepší regulaci je nutné k aktuální hodnotě PWM přičíst hodnotu, která závisí na chybě parametru regulace.

Matematicky, kontrolní zákon integrovaný regulátor vypadá to tak

  • Kw – pracovní cyklus PWM;
  • Ki – integrální koeficient;
  • e(t) – chyba neshody, tzn. rozdíl mezi nastavenou a skutečnou hodnotou řízeného parametru.

Výstupní funkce integrálního regulátoru je úměrná časovému integrálu odchylky regulovaného parametru.

Integrální regulátor je postupný aproximační regulátor. Velká chyba - mění PWM ve velkých krocích. Malá chyba, kterou pomalu napravuje. Chyba se hromadí v integrátoru a ať je sebemenší, časem se stejně projeví na ovládacím prvku.

Ve srozumitelnější podobě, blízké diskrétní implementaci, obvod integrovaného řadiče vypadá takto.

  • Chyba neshody e se vypočítá jako rozdíl mezi zadaným výkonem Pset a naměřeným výkonem Preal: e = Pset – Preal.
  • Chyba e nesouladu je vynásobena integrálním koeficientem Ki a akumulována v integrátorovém registru Rgl.
  • Celé bity registru jsou posílány do pulzně šířkového modulátoru.

Integrátor má zpravidla poměrně velkou bitovou hloubku se zlomkovou částí. A PWM může přijímat pouze celočíselné hodnoty. Není zde žádný rozpor. Hodnoty menší než jedna se postupně hromadí v integrátoru a přesouvají se do celé části, potažmo do PWM. To umožňuje malé chyby nesouladu nebo nízké hodnoty Ki ke snížení rychlosti ovladače. Malé hodnoty budou trvat dlouho, než se transformují do celku.

Integrální regulátory mají:

  • vysoká přesnost;
  • nízká rychlost regulace;
  • průměrná stabilita v závislosti na rychlosti regulace.

Proč jsme zvolili integrální regulační zákon pro regulátor výkonu založený na Peltierově prvku?

  • Peltierův článek mění své parametry v závislosti na teplotě. Ale to se děje extrémně pomalu. Jednoduše nepotřebujeme rychlý regulátor.
  • Navíc prudká změna výkonu na Peltierově prvku vede k degradaci polovodičových krystalů modulu. Vlivem náhlých teplotních změn vznikají na přechodech polovodičů mechanická pnutí, což vede ke snížení účinnosti prvku až k jeho poruše. Proto bez ohledu na to, jak rychle regulátor teploty mění nastavenou hodnotu pro regulátor výkonu, je nutné, aby změna výkonu na Peltierově článku probíhala plynule.
  • Na výstupu regulátoru je také velký kondenzátor, který je také lepší nabíjet pomalu.

Například, když zapnete napájení, když chladicí oddíl není chlazen, regulátor teploty by měl zapnout prvek na plný výkon. Je nutné, aby se to nestalo okamžitě, ale během několika sekund.

Integrovaný regulátor se ideálně hodí pro všechny tyto požadavky. Navíc specificky snížíme koeficient Ki, abychom zajistili pomalou změnu výkonu při zátěži.

Program regulátoru výkonu.

Doplňme regulátor do programu z předchozí lekce. Připomínám, že jsme v něm vytvořili strukturu programu regulátoru a realizovali měření napětí, proudu a výkonu na zátěži.

Potřebujeme následující proměnné a konstanty:

plovoucí míraP; // měřený výkon zátěže, W – tato proměnná již v programu existuje.

plovákový setPower; // nastavit výkon
float regPwrInt=0; //
#define koeffRegPwrInt 0,05 //

Samotný regulátor se vejde do jedné řady:

A také musíte přetížit celou část od integrátoru po PWM:

analogWrite(9, (nepodepsané int) regPwrInt); // PWM

V zásadě tento program již funguje. Výkon můžete dočasně nastavit například na 5 W:

setPower = 5; // dočasně nastavený výkon 5 W

vložte regulátor do 20 ms cyklu a zkontrolujte. Některé operace ale stále chybí.

Omezení integrátoru.

Pracujeme se skutečným okruhem. Řekněme, že je nastaven výkon, který regulátor není schopen poskytnout například 50 W. Regulátor musí generovat maximální PWM. Nedílná součást našeho regulátoru se však bude nadále zvětšovat. Když překročí maximální přípustnou hodnotu PWM (u nás je to 255), PWM přestane správně fungovat. Spíše se resetuje na 0 a začne se znovu zvyšovat. Tito. je nutné zavést omezení integrální vazby. Nemělo by být větší než maximální hodnota PWM a nemělo by být povoleno, aby se stal záporným.

if (regPwrInt< 0) regPwrInt=0; // spodní limit
if (regPwrInt > horní limit

"mrtvý čas" PWM.

Je tu ještě jedna jemnost práce s PWM. Pulzy na výstupu PWM přepínají skutečný spínač. Když se pracovní cyklus sníží, spínací impulsy se mohou velmi zkrátit. Pro naše PWM hodnota 1 odpovídá trvání pulsu 62,5 ns. Za tak krátkou dobu se klíč nestihne úplně otevřít a nebude fungovat normálně. S naším nízkonapěťovým zdrojem (12 V) s největší pravděpodobností k potížím nedojde. Ale ve vysokonapěťových obvodech napájecích zdrojů (300 V nebo více) takové přepínání vede ke katastrofickým následkům. Proto je dobrým stylem řízení PWM zakázat řídicí impulsy, které jsou příliš krátké.

Zaveďme dvě časové úseky, během kterých zakážeme provoz PWM. Jeden segment je blízko nule, druhý je blízko maximální hodnoty. Obecně je přijímáno nazývat trvání těchto segmentů „mrtvým časem“ PWM (mrtvý čas). Algoritmus je jednoduchý:

  • Pokud je hodnota PWM menší než „mrtvý čas“, pak je PWM 0.
  • Pokud je hodnota PWM větší než rozdíl mezi maximální PWM a „mrtvou dobou“, pak se PWM rovná maximální hodnotě.

Implementace tohoto algoritmu v programu vypadá takto:


if(pwm< DEAD_TIME) pwm=0;
if (pwm >
analogWrite(9, pwm); // PWM

Nastavil jsem „mrtvý čas“ na 500 ns:

#define DEAD_TIME 8 // mrtvý čas PWM (* 62,5 ns)

Vypnutí regulátoru.

Poslední věc, kterou je třeba dodat, je rychlé vypnutí regulátoru. Řekl jsem, že regulátor by měl pomalu měnit výkon na Peltierově článku. To ale neplatí pro nouzové vypnutí. Při setPower=0 regulátor okamžitě vypneme.

Plně programový blok integrovaný regulátor výkonu vypadá takto:

//------------------- regulátor Napájení
if (setPower != 0) (
regPwrInt = regPwrInt + (setPower - measureP) * koeffRegPwrInt;
if (regPwrInt< 0) regPwrInt=0; // spodní limit
if (regPwrInt > MAX_PWM) regPwrInt=MAX_PWM; // horní limit
// Mrtvý čas PWM
unsigned int pwm = (unsigned int)regPwrInt; // převod do PWM
if(pwm< DEAD_TIME) pwm=0;
if (pwm > (MAX_PWM - DEAD_TIME)) pwm=MAX_PWM;
analogWrite(9, pwm); // PWM
}
jinak ( // vypnutí
regPwrInt=0;
analogWrite(9, 0); // PWM
}

Serial.print(" p="); Serial.print(regPwrInt, 2); // integrální propojení regulátoru výkonu

A platit. Pouze 40 rublů. za měsíc pro přístup ke všem zdrojům webu!

Kontrola a seřízení regulátoru.

Nyní zkontrolujeme činnost regulátoru na reálné zátěži a určíme integrální koeficient.

Jako prostředek ke sledování činnosti regulátoru použijeme monitor sériového portu. Nezapomeňte nastavit přenosovou rychlost na 19200.

Nejprve jsem nastavil integrální koeficient na 0,1.

#define koeffRegPwrInt 0.1 // integrální koeficient regulátoru výkonu

Spustil jsem monitor sériového portu a viděl jsem tento obrázek.

Regulátor funguje. Nastaví specifikovaný výkon (5 W) za 14-15 sekund.

Jeden rezistor je zkratovaný. Výkon se prudce změnil, ale regulátor ho vrátil do normálu za 5-6 sekund.

Pracuje stabilně. Stabilitu je nutno posuzovat podle změny v celé části integrálního článku, tzn. PWM V ideálním regulátoru by se PWM měla změnit o 1. Proud, potažmo výkon, „skáče“ kvůli nepříliš přesnému vzorkování ADC při nízkých hodnotách. V zásadě nám tento koeficient (0,1) vyhovuje. Ale je lepší vidět limity stabilního provozu regulátoru a nastavit jej s rezervou.

Nastavil jsem integrální koeficient na 1 a viděl jsem následující.

Výkon se nastaví na nastavenou úroveň asi za 1 sekundu a regulátor dále pracuje stabilně.

Nyní je kurz 10.

Funguje to ještě rychleji, ale PWM začalo „skákat“ o 2-5 jednotek. Regulátor je nestabilní. Tento koeficient nelze použít.

Pro čistě demonstrační účely jsem nastavil koeficient na 20.

Výkyvy dosáhly 30 jednotek PWM. Zde je oscilogram výstupního napětí. Všechno šlo na kusy.

Koeficient si zvolte sami. Myslím, že by to nemělo přesáhnout 0,5. Pomalý faktor jsem zatím nastavil na 0,05.

Regulátor nastaví stanovený výkon na 5 W za 30 sekund. S větším výkonem bude pracovat ještě pomaleji. Ale tím lépe pro Peltierův prvek. Ano a koeficient lze vždy změnit.

Souhrn.

Pro systém Smart Home je hlavním úkolem ovládání domácích spotřebičů z řídicího zařízení, ať už se jedná o mikrokontrolér typu Arduino, nebo mikropočítač typu Raspberry PI či jakýkoli jiný. Ale nebude to možné udělat přímo, pojďme zjistit, jak ovládat zátěž 220 V pomocí Arduina.

Mikrokontrolér nestačí k ovládání střídavých obvodů ze dvou důvodů:

1. Výstup mikrokontrolér generuje se signál konstantního napětí.

2. Proud kolíkem mikrokontroléru je obvykle omezen na 20-40 mA.

Máme dvě možnosti spínání pomocí relé nebo pomocí triaku. Triak lze nahradit dvěma tyristory zapojenými zády k sobě (toto je vnitřní struktura triaku). Pojďme se na to podívat blíže.

Ovládání zátěže 220 V pomocí triaku a mikrokontroléru

Vnitřní struktura triaku je znázorněna na obrázku níže.

Tyristor funguje následovně: když je na tyristor přivedeno dopředné předpětí (plus na anodu a mínus na katodu), neprojde jím žádný proud, dokud nepřivedete řídicí impuls na řídicí elektrodu.

Impuls jsem napsal z nějakého důvodu. Na rozdíl od tranzistoru je tyristor POLOŘÍZENÝ polovodičový spínač. To znamená, že po odstranění řídicího signálu bude proud přes tyristor dále protékat, tzn. zůstane otevřená. Aby se zavřel, musíte přerušit proud v obvodu nebo změnit polaritu přiváděného napětí.

To znamená, že při zachování kladného impulsu na řídicí elektrodě bude tyristor v obvodu střídavého proudu přenášet pouze kladnou půlvlnu. Triak může procházet proud v obou směrech, ale od skládá se ze dvou vzájemně spojených tyristorů.

Polarita řídicích impulsů pro každý z vnitřních tyristorů musí odpovídat polaritě příslušné půlvlny, pouze pokud je tato podmínka splněna, bude triak protékat střídavý proud. V praxi je takové schéma implementováno ve společném .

Jak jsem již řekl, mikrokontrolér produkuje signál pouze jedné polarity, aby se signál shodoval, musíte použít ovladač postavený na optosimistoru.

Signál tedy rozsvítí vnitřní LED optočlenu, otevře triak, který dodává řídicí signál do výkonového triaku T1. MOC3063 a podobné lze použít jako optodriver, například níže uvedená fotografie ukazuje MOC3041.

Obvod průchodu nulou - obvod detektoru fázového přechodu přes nulu. Potřebné pro implementaci různých typů triakových regulátorů na mikrokontroléru.

Pokud obvod nemá optodriver, kde je přizpůsobení organizováno přes diodový můstek, ale na rozdíl od předchozí verze zde není galvanické oddělení. To znamená, že při prvním napěťovém rázu může můstek prorazit a na pinu mikrokontroléru se objeví vysoké napětí, což je špatně.

Při zapínání/vypínání výkonné zátěže, zejména indukční, jako jsou motory a elektromagnety, dochází k napěťovým rázům, takže odlehčovací RC obvod musí být instalován paralelně se všemi polovodičovými zařízeními.

Relé a Arduino

Chcete-li ovládat relé pomocí Arduina, musíte použít další tranzistor pro zesílení proudu.

Pozor, použité bipolární tranzistor reverzní vodivost (struktura NPN), to by mohl být domácí KT315 (všem milovaný a známý). Dioda je potřebná k tlumení výbuchů samoindukčního EMF v indukčnosti, což je nezbytné, aby tranzistor neselhal z vysokého použitého napětí. Proč k tomu dochází, vysvětlí komutační zákon: "Proud v indukčnosti se nemůže okamžitě změnit."

A když je tranzistor uzavřen (řídící impuls je odstraněn), energie magnetického pole nahromaděného v cívce relé musí někam jít, proto instalují volnoběžná dioda. Ještě jednou podotýkám, že dioda je zapojena v REVERZNÍM směru, tzn. katoda na kladnou, anoda na zápor.

Takový obvod si můžete sestavit vlastníma rukama, což je mnohem levnější, navíc můžete použít obvod určený pro jakékoli stejnosměrné napětí.

Nebo si kupte hotový modul nebo celý štít s relé pro Arduino:

Na fotografii je domácí štít, mimochodem, používá KT315G k zesílení proudu a níže vidíte stejný štít vyrobený z výroby:

Závěr

Bezpečné ovládání AC zátěže v první řadě znamená, že všechny výše popsané informace platí pro jakýkoli mikrokontrolér, nejen pro desku Arduino.

Hlavním úkolem je zajistit potřebné napětí a proud pro ovládání triaku nebo relé a galvanické oddělení řídicích obvodů a střídavého napájecího obvodu.

Kromě bezpečnosti pro mikrokontrolér se tímto způsobem chráníte, abyste během servisu neutrpěli úraz elektrickým proudem. Při práci s vysokým napětím musíte dodržovat všechna bezpečnostní pravidla, dodržovat PUE a PTEEP.

Tato schémata lze také použít. Triaky a relé v tomto případě fungují jako mezizesilovač a přizpůsobovač signálu. U výkonných spínacích zařízení jsou řídicí proudy cívky velké a závisí přímo na výkonu stykače nebo spouštěče.

Alexej Bartoš

Zapnout stmívání Na bázi Arduina je jedním ze stovek jednoduchých a zajímavá zařízení, kterým plynule změníte síťové napětí z 0 na jmenovitou hodnotu. Každý uživatel Arduina najde pro takový užitečný domácí produkt využití a zkušenosti získané při kutilské montáži mu přidají znalostní základnu.

Schéma a princip jeho činnosti

Jako většina levných stmívačů, toto schéma Funguje díky fázové regulaci napětí, které je dosaženo vynuceným rozepnutím vypínače - triaku. Princip činnosti obvodu je následující. Arduino na softwarové úrovni generuje impulsy, jejichž frekvence se nastavuje odporem potenciometru. Řídicí impuls z pinu P1 prochází optočlenem MOC3021 a dorazí na řídicí elektrodu triaku. Otevírá a prochází proudem, dokud polovina vlny síťového napětí neprojde nulou, poté se uzavře. Pak přijde další impuls a cyklus se opakuje. Vlivem posunu řídicích impulsů se v zátěži vytvoří přední řezaná část sinusoidy.

Aby se triak otevřel v souladu s daným algoritmem, musí být frekvence opakování impulsů synchronizována se síťovým napětím 220 V. Jinými slovy, Arduino musí vědět, v jakém bodě sinusová vlna síťového napětí prochází nulou. Za tímto účelem je ve stmívači na prvcích R3, R4 a PC814 realizován obvod zpětná vazba, signál ze kterého je odeslán na pin P2 a analyzován mikrokontrolérem. Do obvodu nulového detektoru byl přidán 10 kOhm rezistor R5, který je potřebný pro napájení výstupního tranzistoru optočlenu.

Jeden výkonový výstup triaku je připojen k fázovému vodiči a zátěž je připojena k druhému. Nulový vodič sítě 220 V jde přímo ze svorkovnice J1 do J2 a poté do zátěže. Použití optočlenů je nutné pro galvanické oddělení silové a nízkonapěťové části obvodu stmívače. Potenciometr (na obrázku není znázorněn) je připojen prostředním kolíkem k libovolnému analogovému vstupu Arduina a dva krajní kolíky jsou připojeny k +5 V a „společnému“.

Deska plošných spojů a montážní díly

Minimum radioprvků umožňuje navrhnout jednostranně tištěný spoj, jehož rozměr nepřesahuje 20x35 mm. Jak je patrné z obrázku, není na něm žádný proměnný rezistor, takže radioamatér může nezávisle vybrat potenciometr vhodného tvaru a určit místo jeho uchycení k tělu hotového stmívače. Připojení k Arduinu je provedeno pomocí vodičů, které jsou připájeny do odpovídajících otvorů na desce.

K sestavení stmívače ovládaného Arduinem vlastníma rukama budete potřebovat následující rádiové prvky a díly:

  1. Triak BT136-600D, schopný odolat zpětné napětí do 600 V a do zátěže propustí proud až 4 A (samozřejmě s předběžnou instalací na radiátor). V obvodu lze použít triak s vyšší zatížitelností. Hlavní věcí je zajistit odvod tepla z jeho těla a správně zvolit proud do řídící elektrody (referenční parametr). Při připojení elektrického spotřebiče vysokého výkonu k zátěži bude potřeba přepočítat šířku tištěných vodičů ve výkonové části obvodu. Alternativně mohou být průběhy napájení duplikovány na druhou stranu desky.
  2. Optočlen MOC3021 s triakovým výstupem.
  3. Optočlen PC814 s tranzistorovým výstupem.
  4. Rezistory o jmenovité hodnotě 1 kOhm, 220 Ohm, 10 kOhm o výkonu 0,25 W a 2 odpory 51 kOhm o výkonu 0,5 W.
  5. Proměnný odpor 10 kOhm.
  6. Svorkovnice – 2 ks, se dvěma konektory a roztečí 5 mm.

Všechny potřebné soubory pro projekt jsou v archivu ZIP: dimmer-arduino.zip

Řídicí algoritmus Arduino

Program ovládání triaku je vytvořen na základě časovače Timer1 a knihovny Cyber.Lib, díky čemuž není ovlivněn chod ostatních programových kódů. Princip jeho fungování je následující. Když síťové napětí projde nulou „zdola nahoru“, časovač se překonfiguruje na reverzní přechod „shora dolů“ a začne odpočítávat čas v souladu s hodnotou proměnné „Dimmer“. Když se spustí časovač, Arduino vygeneruje řídicí impuls a triak se otevře. Při dalším přechodu přes nulu triak přestane procházet proud a čeká na spuštění dalšího časovače. A tak 50krát za sekundu. Proměnná „Dimmer“ je zodpovědná za nastavení zpoždění pro otevření triaku. Čte a zpracovává signál z potenciometru a může nabývat hodnoty od 0 do 255.

Rozsah použití stmívače na Arduinu

Samozřejmě používat drahé Arduino pro ovládání jasu halogenových žárovek je nadbytečné. Pro tento účel je lepší nahradit konvenční spínač průmyslovým stmívačem. Stmívač na Arduinu je schopen vyřešit vážnější problémy:

  • ovládat jakýkoli typ aktivní zátěže (teplota ohřevu páječky, průtokového ohřívače vody atd.) s přesným zachováním daného parametru;
  • vykonávat několik funkcí současně. Zajistěte například plynulé ranní rozsvícení světla (zhasnutí večer), stejně jako kontrolu teploty a vlhkosti terária.

Jak se mění napětí v zátěži, můžete vidět pomocí osciloskopu. K tomu je na výstupní svorky stmívače připájen odporový dělič, díky kterému by se měl signál v řídicím bodě snížit asi 20krát. Poté jsou sondy osciloskopu připojeny k děliči a obvod je napájen. Změnou polohy knoflíku potenciometru můžete na obrazovce osciloskopu vidět, jak plynule Arduino ovládá triak a zda je přítomno vysokofrekvenční rušení.

Přečtěte si také