Obsah:

Ako merať účinník striedavého prúdu pomocou Arduina: 4 kroky
Ako merať účinník striedavého prúdu pomocou Arduina: 4 kroky

Video: Ako merať účinník striedavého prúdu pomocou Arduina: 4 kroky

Video: Ako merať účinník striedavého prúdu pomocou Arduina: 4 kroky
Video: Удаленно контролировать энергопотребление дома | ПЗЭМ-004Т | Облако Интернета вещей RemoteXY 2024, Júl
Anonim
Ako merať účinník striedavého prúdu pomocou Arduina
Ako merať účinník striedavého prúdu pomocou Arduina
Ako merať účinník striedavého prúdu pomocou Arduina
Ako merať účinník striedavého prúdu pomocou Arduina

Ahoj všetci! Toto je môj tretí návod, dúfam, že vás bude poučiť:-) Toto bude návod, ako vykonať základné meranie účinníka pomocou Arduina. Predtým, ako začneme, je potrebné mať na pamäti niekoľko vecí:

  1. Bude to fungovať IBA s LINEÁRNYM zaťažením (napr. Indukčné motory, transformátory, solenoidy)
  2. To nebude fungovať s NON-LINEAR (napr. Žiarovky CFL, napájacie zdroje s prepínaním režimu, diódy LED)
  3. Som elektrotechnik a veľmi kompetentný pri práci so sieťovým potenciálom (t.j. 230 V)

Výstraha! Ak nie ste vyškolení alebo neviete, ako správne pracovať so sieťovým napätím, navrhujem, aby ste nepokračovali v tejto časti návodu a ukážem vám bezpečný spôsob, ako dokázať, že obvod funguje.

Toto je hardvérové riešenie problému s meraním PF pri lineárnom zaťažení. To je možné vykonať aj čisto pomocou kódu vrátane schopnosti merať nelineárne zaťaženia, na ktoré sa zameriam v inom návode.

V prospech všetkých začiatočníkov, ktorí to čítajú, je účinník pomer skutočného výkonu k zdanlivému výkonu a je možné ho vypočítať tak, že zistíte kosínus fázového uhla medzi napájacím napätím a prúdom (pozri priložený obrázok od spoločnosti Google). Toto je dôležité v aplikáciách striedavého prúdu, pretože „zdanlivý výkon“(voltampéry) je možné ľahko vypočítať pomocou napätia vynásobeného prúdom. Na získanie skutočného výkonu alebo „skutočného výkonu“(watty) je však potrebné zdanlivý výkon vynásobiť účinníkom, aby bolo možné skutočne merať výkon vo wattoch. Toto platí iba pre zaťaženia, ktoré majú významnú indukčnú alebo kapacitnú zložku (napríklad motor). Čisto odporové záťaže, ako sú elektrické ohrievače alebo žiarovky, majú účinník 1,0 (jednota), a preto je skutočná sila a zdanlivá sila rovnaká.

Krok 1: Návrh obvodu

Návrh obvodu
Návrh obvodu
Návrh obvodu
Návrh obvodu
Návrh obvodu
Návrh obvodu
Návrh obvodu
Návrh obvodu

Účinník je možné vypočítať pomocou osciloskopu meraním časového rozdielu medzi napäťovým a prúdovým signálom. Môžu byť merané v ľubovoľnom bode vlny, pokiaľ sú vzorkované na rovnakom mieste. V tomto prípade bolo logické merať medzi nulovými bodmi prechodu (body vo vlne, kde napätie prešlo cez os X).

Nasledujúci obvod som navrhol v Multisime. Za predpokladu, že prúd a napätie do záťaže sú čisté sínusové priebehy, je možné merať účinník. Každý priebeh je privedený do detektora prechodu nulou (niekedy známy ako prevodník sínusových na štvorcových vĺn), čo je jednoducho 741 operačný zosilňovač v režime komparátora, kde je porovnávacie napätie 0V. Keď je sínusová vlna v negatívnom cykle, generuje sa negatívny jednosmerný impulz a keď je sínusová vlna kladná, generuje sa pozitívny jednosmerný impulz. Dve štvorcové vlny sa potom porovnajú pomocou exkluzívnej logickej brány OR (XOR), ktorá bude vydávať pozitívny vysoký jednosmerný impulz iba vtedy, ak sa štvorcové vlny neprekrývajú, a 0 V, keď sa prekrývajú. Výstupom brány XOR je teda časový rozdiel (delta t) medzi dvoma vlnami od bodu, v ktorom prechádzajú nulovým bodom. Tento rozdielový signál potom môže byť načasovaný mikrokontrolérom a prevedený na účinník pomocou nasledujúceho výpočtu (uistite sa, že vaša vedecká kalkulačka je v stupňoch, nie v radiánoch):

cos (phi) = f * dt * 360

Kde:

cos (phi) - účinník

f - Frekvencia meraného napájania

dt - delta t alebo časový rozdiel medzi vlnami

360 - konštanta používaná na poskytnutie odpovede v stupňoch

Na obrázkoch uvidíte tri simulované stopy osciloskopu pre obvod. Dva vstupné signály predstavujú prúd a napätie k záťaži. Druhému signálu som dal fázový rozdiel 18 stupňov, aby som demonštroval teóriu. To dáva PF približne 0,95.

Krok 2: Prototypovanie a testovanie

Prototypovanie a testovanie
Prototypovanie a testovanie
Prototypovanie a testovanie
Prototypovanie a testovanie
Prototypovanie a testovanie
Prototypovanie a testovanie

V prípade svojej prototypovej konštrukcie som návrh obvodu umiestnil na nepájivú dosku. Z údajového listu UA741CN a údajového listu CD4070CN obidva integrované obvody vybíjajú zdroj 12-15 Vss, takže som napájal pomocou dvoch batérií, aby som vyrobil napájanie s dvoma lištami +12V, 0V, -12V volt.

Simulácia záťaže

Zaťaženie môžete simulovať pomocou dvojkanálového generátora signálu alebo generátora funkcií. Použil som tento lacný a veselý čínsky box na výrobu dvoch 50 Hz sínusových vĺn od seba vzdialených 18 stupňov a priviedol signály do obvodu. Výsledné krivky môžete vidieť na osciloskope. Na obrázkoch vyššie vidíte dve prekrývajúce sa štvorcové vlny (výstup z každého operačného zosilňovača) a ďalšie tri obrázky znázorňujú výstup brány XOR. Všimnite si, ako sa šírka výstupného impulzu skracuje s klesajúcim fázovým uhlom. Príklady uvedené vyššie ukazujú 90, 40, 0 stupňov.

Krok 3: Arduino kód

Ako je uvedené vyššie, výstup z meracieho obvodu je časový rozdiel medzi dvoma vstupnými signálmi (t. J. Prúdovým a napäťovým signálom). Arduino kód používa na meranie dĺžky výstupného impulzu z meracieho obvodu v nano sekundách „pulseIn“a používa ho vo vyššie uvedenom vzorci PF.

Kód začína definovaním konštánt, hlavne aby bol kód organizovanejší a čitateľnejší. Najdôležitejšie je, že kód C (arduino kód) pracuje v radiánoch, nie v stupňoch, takže na neskoršie vypočítanie uhlov a PF je potrebná konverzia z radiánov na stupne. Jeden radián je cca. 57,29577951 stupňov. Uloží sa tiež číslo 360 a multiplikačný faktor 1x10^-6 na prevod nano sekúnd na obyčajné sekundy. Frekvencia je tiež definovaná na začiatku, ak používate niečo iné ako 50 Hz, uistite sa, že je to aktualizované na začiatku kódu.

Vo vnútri „prázdnej slučky ()“som povedal Arduinu, aby vypočítal uhol na základe vyššie uvedeného vzorca PF. Pri mojej prvej iterácii tohto kódu kód vráti správny uhol a účinník, avšak medzi každým správnym výsledkom sa v sériovej konzole vráti aj nejaká chybná nízka hodnota. Všimol som si, že to bolo buď každé druhé čítanie, alebo každé štyri merania. Do slučky „pre“som umiestnil príkaz „if“, aby sa uložila maximálna hodnota každých štyroch po sebe nasledujúcich čítaní. Dosiahne sa to porovnaním výpočtu s „uhlom_max“, ktorý je pôvodne nula, a ak je väčší, uloží novú hodnotu do „uhla_max“. Toto sa opakuje pre meranie PF. Ak to urobíte v slučke „pre“, znamená to, že sa vždy vráti správny uhol a pf, ale ak sa nameraný uhol zmení (vyšší alebo nižší), keď sa „pre“konce „uhol_max“vynuluje pre ďalší test, keď „ void loop () “sa opakuje. Na webovej stránke Arduino (https://www.arduino.cc/en/Tutorial/Calibration) je veľmi dobrý príklad toho, ako to funguje. Druhý vzorec „ak“jednoducho bráni tomu, aby sa v prípade merania nameranej chybnej hodnoty pri vypnutí testovaného zariadenia vrátila akákoľvek hodnota vyššia ako 360.

Krok 4: Test na kyseliny

Kyselinový test!
Kyselinový test!
Kyselinový test!
Kyselinový test!
Kyselinový test!
Kyselinový test!

Nepokúšajte sa o nasledujúce činnosti, pokiaľ neviete, ako bezpečne pracovať so sieťovým napätím striedavého prúdu. Ak máte pochybnosti o svojej bezpečnosti, skúste simulovať vstupné signály pomocou dvojkanálového generátora tvaru vlny.

Na žiadosť nasledovníka som na Fritzingu zostavil rozvádzač, aby som mal lepšiu predstavu o obvode a obvode vzorkovania/snímania (priložil som súbor.fzz a diagram.png). Motor v hornej časti predstavuje stolný ventilátor, ktorý som použil, a indukčná cievka predstavuje prúdový transformátor, ktorý som omotal okolo živého vodiča. Napájal som 741 IC pomocou dvoch batérií 12V, usporiadaných tak, aby poskytovali napätie +12 VDC, 0 VDC (uzemnenie) a -12 VDC. CD4070 je možné napájať aj priamo z 5V napájacej lišty Arduino.

Aby sa preukázalo, že koncept funguje v skutočnosti, obvod bol postavený na nepájivej doske. Z obrázkov je zrejmé usporiadanie obvodu. Na testovanie konceptu som použil stolný ventilátor ako svoju indukčnú záťaž. Medzi napájacím zdrojom 230 V a záťažou je moje snímacie zariadenie. Mám stupňovitý transformátor, ktorý transformuje 230 V priamo na 5 V, aby bolo možné vzorkovať priebeh napätia. Neinvazívny prúdový transformátor upnutý okolo živého vodiča bol použitý na vzorkovanie priebehu prúdu (vpravo od rezistora potiahnutého hliníkom). Všimnite si toho, že nemusíte nevyhnutne poznať amplitúdu prúdu alebo napätia, ale iba priebeh vlny operačného zosilňovača na identifikáciu prechodu nuly. Vyššie uvedené obrázky zobrazujú skutočné priebehy prúdu a napätia z ventilátora a sériovej konzoly arduino, ktorá hlási PF 0,41 a uhol 65 stupňov.

Túto funkčnú zásadu je možné začleniť do domáceho monitora energie, aby bolo možné vykonávať skutočné merania výkonu. Ak máte kompetentné, môžete skúsiť monitorovať rôzne indukčné a odporové záťaže a určiť ich účinník. A je to tu! veľmi jednoduchá metóda merania účinníka.

Odporúča: