- Práce se stropním ventilátorovým regulátorem založeným na IoT
- Materiály potřebné pro řídicí obvod otáček ventilátoru střídavého proudu
- Řídicí obvod regulátoru střídavého ventilátoru
- Návrh desky plošných spojů pro IoT řízený regulátor stropního ventilátoru
- Nastavení účtu Firebase
- Arduino Code to Control Fan Regulator with NodeMCU
- Vytváření aplikace Regulátor ventilátorů pomocí aplikace MIT App Inventor
- Testování obvodu dotykového snímače založeného na ESP32
- Další vylepšení
V tomto článku stavíme obvod regulátoru střídavého ventilátoru, který je schopen řídit rychlost ventilátoru omezením toku proudu do ventilátoru. Termín AC Ceiling Fan Regulator je soustavný, proto jej od nynějška budeme jednoduše nazývat regulátorem ventilátoru. Regulátor ventilátor obvod je základním prvkem, který se používá pro zvýšení nebo snížení rychlosti AC Fan / motoru podle potřeby. Před několika lety jste měli na výběr mezi konvenčním odporovým regulátorem ventilátoru nebo elektronickým regulátorem, ale dnes je vše nahrazeno obvodem elektronického regulátoru ventilátoru.
V předchozím článku jsme vám ukázali, jak můžete vytvořit obvod pro řízení střídavého úhlu střídavého proudu s Arduinem, který byl schopen řídit jas žárovky a také řídit rychlost ventilátoru, aby se zvýšil stupeň v tomto článku se chystáme vybudovat obvod AC Ceiling Fan Regulator založený na IoT. Který bude schopen ovládat rychlost vašeho stropního ventilátoru pomocí aplikace pro Android.
Práce se stropním ventilátorovým regulátorem založeným na IoT
Obvod regulátoru ventilátoru je jednoduchý obvod, který je schopen řídit rychlost stropního střídavého ventilátoru změnou fázového úhlu sinusové vlny střídavého proudu nebo jednoduše řečeno přesným ovládáním TRIAC. Jak jsem zmínil všechna základní fungování obvodu regulátoru střídavého ventilátoru v článku AC Phase Angle Control s 555 Timer a PWM, budeme se soustředit na samotné budování obvodu. A pokud se chcete o tématu dozvědět více, podívejte se také na článek o AC Light Dimmer pomocí Arduino a TRIAC Project.
Základní blokové schéma výše ukazuje, jak obvod ve skutečnosti funguje. Jak jsem již řekl dříve, budeme generovat signál PWM pomocí Firebase IoT a NodeMCU, poté bude signál PWM předán dolnoprůchodovým filtrem, který bude řídit bránu MOSFET poté, co bude ovládat časovač 555 skutečný TRIAC pomocí optočlenu.
V tomto případě aplikace pro Android mění hodnotu v firebaseDB a ESP neustále kontroluje jakékoli změny, které se v dané databázi dějí, pokud dojde k jakékoli změně, která se stáhne dolů a hodnota se převede na signál PWM
Materiály potřebné pro řídicí obvod otáček ventilátoru střídavého proudu
Obrázek níže ukazuje materiál použitý k sestavení tohoto obvodu, protože je vyroben s velmi obecnými součástmi, měli byste být schopni najít veškerý uvedený materiál ve vašem místním hobby obchodě.
Také jsem uvedl komponenty v tabulce níže s typem a množstvím od jeho demonstračního projektu, používám k tomu jediný kanál. Ale obvod lze snadno zvětšit podle požadavku.
- Šroubová svorka 5,04 mm konektor - 2
- Zásuvka konektoru 2,54 mm - 1
- 56K, 1W rezistor - 2
- Dioda 1N4007 - 4
- 0,1uF, 25V kondenzátor - 2
- AMS1117 Regulátor napětí - 1
- 1000uF, 25V kondenzátor - 1
- DC napájecí konektor - 1
- 1K rezistor - 1
- Rezistor 470R - 2
- Rezistor 47R - 2
- Rezistory 82 K - 1
- 10 K rezistory - 5
- Optočlen PC817 - 1
- NE7555 IC - 1
- MOC3021 Opto TriacDrive - 1
- IRF9540 MOSFET - 1
- Kondenzátor 3,3uF - 1
- Připojení vodičů - 5
- 0,1uF, 1KV kondenzátor - 1
- Mikrokontrolér ESP8266 (ESP-12E) - 1
Řídicí obvod regulátoru střídavého ventilátoru
Schéma obvodu regulátoru ventilátoru IoT je uvedeno níže, tento obvod je velmi jednoduchý a k dosažení řízení fázového úhlu využívá obecné komponenty.
Tento obvod je složen z velmi pečlivě navržených komponent. Projdu každý z nich a vysvětlím každý blok.
Čip Wi-Fi ESP8266 (ESP-12E):
Toto je první část našeho okruhu a je to ta část, kde jsme změnili spoustu věcí, ostatní části zůstávají úplně stejné, tj. Pokud jste sledovali předchozí článek.
V této části jsme vytáhli piny Enable, Reset a GPIO0, také jsme stáhli GPIO15 a Ground Pin, které jsou doporučeny v datovém listu čipu. Pokud jde o programování, umístili jsme 3pinovou záhlaví vystavující TX, RX a zemnící kolík, kterým můžeme velmi snadno programovat čip. Také jsme umístili hmatový spínač, který umístil GPIO0 na zem, což je nezbytný krok k uvedení ESP do programovacího režimu. Jako výstup, kterým je generován signál PWM, jsme vybrali pin GPIO14.
Poznámka! V době programování musíme stisknout tlačítko a napájet zařízení DC jack konektorem.
Okruh detekce nulového přechodu:
Nejprve je na našem seznamu detekční obvod procházející nulou vyrobený se dvěma rezistory 56K, 1W ve spojení se čtyřmi diodami 1n4007 a optočlenem PC817. A tento obvod je zodpovědný za poskytování signálu přechodu nuly do IC 555 časovače. Také jsme odlepili fázi a neutrální signál, abychom je mohli dále používat v sekci TRIAC.
Regulátor napětí AMS1117-3.3V:
Regulátor napětí AMS1117 se používá k napájení obvodu, obvod je zodpovědný za napájení celého obvodu. Navíc jsme použili dva kondenzátory 1000uF a kondenzátor 0,1uF jako oddělovací kondenzátor pro AMS1117-3.3 IC.
Řídicí obvod s časovačem NE555:
Výše uvedený obrázek ukazuje řídicí obvod časovače 555, 555 je konfigurován v monostabilní konfiguraci, takže když spouštěcí signál z detekčního obvodu procházejícího nulou zasáhne spoušť, časovač 555 začne nabíjet kondenzátor pomocí odporu (obecně), ale náš obvod má místo odporu MOSFET a ovládáním brány MOSFET ovládáme proud směřující do kondenzátoru, proto kontrolujeme dobu nabíjení, proto kontrolujeme výstup 555 časovačů.
TRIAC a obvod řidiče TRIAC:
TRIAC funguje jako hlavní vypínač, který ve skutečnosti zapíná a vypíná, čímž řídí výstup střídavého signálu. Pohon TRIAC pomocí pohonu MOC3021 Opto-Triac, nejen pohání TRIAC, ale také poskytuje optickou izolaci, vysokonapěťový kondenzátor 0,01uF 2KV a rezistor 47R tvoří tlumící obvod, který chrání náš obvod před vysokonapěťové hroty, ke kterým dochází při připojení k indukční zátěži, za hroty je zodpovědná nesinusová povaha spínaného střídavého signálu. Je také zodpovědný za problémy s účinníkem, ale to je téma pro další článek.
Lowpass-filtr a P-kanál MOSFET (funguje jako rezistor v obvodu):
Rezistor 82K a kondenzátor 3,3uF tvoří dolní propust, který je zodpovědný za vyhlazení vysokofrekvenčního PWM signálu generovaného Arduinem. Jak již bylo zmíněno dříve, P-Channel MOSFET funguje jako proměnný rezistor, který řídí dobu nabíjení kondenzátoru. Ovládá jej signál PWM, který je vyhlazován dolnoprůchodovým filtrem.
Návrh desky plošných spojů pro IoT řízený regulátor stropního ventilátoru
Deska plošných spojů pro náš obvod regulátoru stropního ventilátoru IoT je navržena v jednostranné desce. K návrhu své desky plošných spojů jsem použil návrhový software Eagle PCB, ale můžete použít jakýkoli návrhový software podle vašeho výběru. 2D obrázek mého návrhu desky je zobrazen níže.
K řádnému uzemnění všech komponent se používá dostatečné naplnění země. Vstup 3,3 V DC a 220 V střídavý vstup jsou osazeny na levé straně, výstup je umístěn na pravé straně desky plošných spojů. Kompletní konstrukční soubor pro Eagle spolu s Gerberem si můžete stáhnout z níže uvedeného odkazu.
- Soubory PCB, soubory GERBER a PDF pro obvod regulátoru stropního ventilátoru
Ruční PCB:
Pro větší pohodlí jsem vyrobil svoji ručně vyrobenou verzi desky plošných spojů a je zobrazena níže.
Díky tomu je náš hardware připraven podle našeho schématu zapojení, nyní musíme připravit naši aplikaci pro Android a Google Firebase.
Nastavení účtu Firebase
V dalším kroku musíme nastavit účet firebase. Veškerá komunikace bude probíhat přes účet firebase. Chcete-li nastavit účet Firebase, přejděte na web Firebase a klikněte na možnost Začít.
Po kliknutí se musíte přihlásit pomocí svého účtu Google a
jakmile jste přihlášeni, musíte vytvořit projekt kliknutím na tlačítko vytvořit projekt.
Tímto způsobem budete přesměrováni na stránku, která vypadá jako obrázek výše. Zadejte název projektu a klikněte na Pokračovat.
Opět klikněte na pokračovat.
Jakmile tak učiníte, musíte souhlasit s některými podmínkami kliknutím na zaškrtávací políčko, dále musíte kliknout na tlačítko vytvořit projekt.
Pokud jste vše udělali správně, po nějaké době dostanete zprávu, jako je tato. Po dokončení by konzole firebase měla vypadat jako na obrázku níže.
Odtud musíme posbírat dvě věci. Chcete-li to provést, musíte kliknout na název projektu, který jste právě vytvořili. Pro mě je to CelingFanRegulator, jakmile na něj kliknete, dostanete řídicí panel podobný obrázku níže.
Klikněte na nastavení, poté na nastavení projektu, stránka, kterou získáte, bude vypadat jako obrázky níže.
Klikněte na servisní účet -> tajemství databáze.
Zkopírujte databázi v tajnosti a uložte ji někam pro pozdější použití.
Dále klikněte na databázi v reálném čase a zkopírujte adresu URL. také si to uschovejte pro pozdější použití.
A to je vše, je tu i ohnivá stránka věcí.
Arduino Code to Control Fan Regulator with NodeMCU
O komunikaci mezi firebase a modulem ESP-12E se stará jednoduchý Arduino kód, vysvětlení obvodu a kódu je uvedeno níže. Nejprve definujeme všechny potřebné potřebné knihovny, z uvedených odkazů si můžete stáhnout následující knihovny Arduino JSON knihovna a knihovna FirebaseArduino
#zahrnout
Budeme používat FirebaseArduino knihovny navázat komunikaci s firebase.
// Nastavte tyto pro spuštění příkladů. #define FIREBASE_HOST "celingfanregulator.firebaseio.com" #define FIREBASE_AUTH "1qAnDEuPmdy4ef3d9QLEGtYcA1cOehKmpmzxUtLr" #define WIFI_SSID "váš SSID" # definovat WIFI
Dále jsme definovali hostitele firebase, firebase auth, který jsme dříve uložili, když jsme vytvářeli účet firebase. Poté jsme definovali SSID a heslo našeho routeru.
Řetězec Resivedata; #define PWM_PIN 14;
Dále jsme definovali proměnnou typu řetězce Resivedata, kde budou uložena všechna data, a také jsme definovali PWM_PIN, kde získáme výstup PWM.
Dále v sekci void setup () provedeme nezbytné,
Serial.begin (9600); pinMode (PWM_PIN, VÝSTUP); WiFi.begin (WIFI_SSID, WIFI_PASSWORD); Serial.print ("připojení"); while (WiFi.status ()! = WL_CONNECTED) {Serial.print ("."); zpoždění (500); } Serial.println (); Serial.print ("připojeno:"); Serial.println (WiFi.localIP ()); Firebase.begin (FIREBASE_HOST, FIREBASE_AUTH); Firebase.setString ("Proměnná / hodnota", "FirstTestStrig");
Nejprve povolíme seriál voláním funkce Serial.begin () . Dále jsme nastavili PWM pin jako VÝSTUP. Spojení Wi-Fi zahájíme pomocí funkce WiFi.begin () a ve funkci předáme SSID a heslo. Zkontrolujeme stav připojení ve chvíli smyčky a po připojení smyčku prolomíme a pokračujeme dál. Dále vytiskneme připojenou zprávu s IP adresou.
Nakonec zahájíme komunikaci s firebase pomocí funkce Firebase.begin () a předáme parametry FIREBASE_HOST a FIREBASE_AUTH, které jsme definovali dříve. A nastavili jsme řetězec pomocí funkce setString () , která označuje konec funkce nastavení. V void smyčky () části,
Resivedata = Firebase.getString ("Proměnná / hodnota"); Serial.println (Resivedata); analogWrite (PWM_PIN, mapa (Resivedata.toInt (), 0, 80, 80, 0)); Serial.println (Resivedata); zpoždění (100);
Nazýváme getString () funkce s proměnlivým / Value, kde jsou data uložena v firebase, příkladem by bylo jako obrazové below-
Potom vytiskneme hodnotu pouze pro ladění. Dále použijeme funkci mapování k namapování hodnoty, použije se 80, protože v rozsahu 0 - 80 jsme schopni přesně ovládat bránu MOSFET a za tuto hodnotu je poněkud zodpovědný RC dolní propust. V tomto rozsahu pracuje obvod pro řízení fázového úhlu přesně, můžete tuto hodnotu nazvat jako hardwarově-softwarové sladké místo. Pokud děláte tento projekt a čelíte problémům, musíte si pohrát s hodnotou a určit výsledky sami.
A poté použijeme funkci analogWrite () ke krmení dat a povolení PWM, poté znovu použijeme funkci Serial.println (), abychom zkontrolovali výsledek, a nakonec použijeme funkci zpoždění ke snížení počet zásahů do firebase API, které ukončuje náš program.
Vytváření aplikace Regulátor ventilátorů pomocí aplikace MIT App Inventor
S pomocí AppInventoru vytvoříme aplikaci pro Android, která bude komunikovat s firebase a má oprávnění měnit data uložená v databázi firebase.
Chcete-li to provést, přejděte na web appInventors, přihlaste se pomocí svého účtu Google a přijměte podmínky. Jakmile to uděláte, zobrazí se obrazovka, která vypadá jako obrázek níže.
Klikněte na ikonu pro spuštění nového projektu, pojmenujte jej a stiskněte OK, jakmile to uděláte, zobrazí se vám obrazovka jako na následujícím obrázku.
Jakmile tam potřebujete, musíte nejprve umístit dva štítky, kde je třeba trochu posunout posuvník, dále musíte zatáhnout některé moduly a jsou to modul FirebaseDB a webový modul.
Modul firebaseDB komunikuje s firebase, webový modul slouží k odeslání požadavku. Který vypadá jako obrázek níže.
Jakmile to uděláte, musíte zatáhnout jezdec a štítek, který jsme pojmenovali PWM, pokud se vám v tuto chvíli nedaří zmást, můžete se podívat na některé další návody týkající se vytváření aplikací s vynálezcem aplikace.
Po dokončení procesu klikněte na ikonu firebase DB a vložte token firebase a adresu firebase URL, které jsme uložili při vytváření účtu firebase.
Nyní jsme hotovi s návrhovou částí a musíme nastavit sekci bloku. K tomu musíme kliknout na tlačítko blokování v pravém horním rohu vedle návrháře.
Jakmile kliknete na posuvník, zobrazí se vám dlouhý seznam modulů, vytáhněte první modul a najeďte myší na tlačítko polohy palce, budete uvítáni dalšími dvěma moduly, oba vytáhněte. Budeme je používat později.
Nyní připojíme proměnnoupozice palce , zaokrouhlíme ji a dostaneme hodnotu polohy palce. Dále klikneme na firebasedb a vytáhneme hodnotu volání značky FirebaseDB.storeValue, abychom ji uložili, modulovali a připojili ke spodní části hodnoty polohy palce.
Po dokončení vytáhneme prázdné textové pole kliknutím na textový blok a připojíme jej k tagu, to je tag, který jsme nastavili v Arduino IDE pro čtení a zápis dat na firebase. Nyní připojte proměnnou hodnoty palce k hodnotě pro uložení značky. Pokud jste vše udělali správně, posunutím jezdce budete moci měnit hodnoty v firebaseDB.
- .Aia (uložený soubor) a.apk (kompilovaný soubor)
Což znamená konec našeho procesu vytváření aplikací. Níže je uveden snímek aplikace pro Android, kterou jsme právě vytvořili.
Testování obvodu dotykového snímače založeného na ESP32
Abych otestoval obvod, připojil jsem žárovku paralelně se stropním ventilátorem a obvod jsem napájel 5V DC adaptérem, jak vidíte na obrázku výše, jezdec aplikace je nastaven na nízkou hodnotu, proto žárovka svítí při nízkém jasu. A ventilátor se také pomalu otáčí.
Další vylepšení
Pro tuto ukázku je obvod vyroben na ručně vyrobené desce plošných spojů, ale obvod lze snadno postavit na kvalitní desce plošných spojů, podle mých experimentů je velikost desky plošných spojů opravdu trochu kvůli velikosti součásti, ale v produkčním prostředí to lze snížit pomocí levných komponent SMD, zjistil jsem, že použití časovače 7555 namísto časovače 555 značně zvyšuje kontrolu, dále se zvyšuje také stabilita obvodu.