- Požadované komponenty:
- Schéma zapojenia voltmetra Arduino:
- Pracovanie striedavého voltmetra na báze Arduino:
- Simulácia:
- Vysvetlenie kódu:
V tomto projekte vyrobíme zariadenie na meranie striedavého napätia pomocou Arduina, ktoré bude merať napätie zdroja striedavého prúdu u nás doma. Chystáme sa toto napätie vytlačiť na sériový monitor Arduino IDE a ukázať ho aj na multimetri.
Výroba digitálneho voltmetra je oveľa ľahšia ako výroba analógového, pretože v prípade analógového voltmetra musíte mať dobré znalosti o fyzikálnych parametroch, ako sú krútiaci moment, straty trením atď. Zatiaľ čo v prípade digitálneho voltmetra stačí použiť maticu LCD alebo LED alebo dokonca aj prenosný počítač (ako v tomto prípade), aby vám vytlačil hodnoty napätia. Tu je niekoľko projektov digitálneho voltmetra:
- Jednoduchý obvod digitálneho voltmetra s PCB pomocou ICL7107
- Obvod voltmetra LM3914
- Digitálny voltmeter 0-25 V pomocou mikrokontroléra AVR
Požadované komponenty:
- Jeden transformátor 12-0-12
- Dióda 1N4007
- 1uf kondenzátor
- Rezistory 10k; 4,7 tis.
- Zenerova dióda (5 V)
- Arduino UNO
- Pripojovacie vodiče
Schéma zapojenia voltmetra Arduino:
Schéma zapojenia tohto Arduino voltmetra je uvedená vyššie.
Pripojenia:
- Pripojte vysokonapäťovú stranu (220 V) transformátora k sieťovému napájaniu a nízke napätie (12 V) k obvodu rozdeľovača napätia.
- Pripojte 10k rezistor do série s 4,7k rezistorom, ale nezabudnite na vstupné napätie cez 4,7k rezistor.
- Pripojte diódu podľa obrázka.
- Pripojte kondenzátor a zenerovu diódu cez 4,7k
- Pripojte vodič z n-svorky diódy na analógový pin A0 Arduina.
** Poznámka: Pripojte uzemňovací kolík Arduina k bodu, ako je znázornené na obrázku, alebo obvod nebude fungovať.
Potrebujete obvod deliča napätia?
Pretože používame transformátor 220/12 V, dostaneme 12 V na strane NN. Pretože toto napätie nie je vhodné ako vstup pre Arduino, potrebujeme obvod deliča napätia, ktorý môže poskytnúť vhodnú hodnotu napätia ako vstup do Arduina
Prečo je pripojená dióda a kondenzátor?
Pretože Arduino neberie ako vstup záporné hodnoty napätia, musíme najskôr odstrániť negatívny cyklus znižovania striedavého prúdu, aby Arduino získalo iba kladnú hodnotu napätia. Preto je pripojená dióda na usmernenie napätia s klesajúcim napätím. Skontrolujte náš usmerňovač s polovičnou vlnou a usmerňovač s plnou vlnou, aby ste sa dozvedeli viac o usmernení.
Toto usmernené napätie nie je plynulé, pretože obsahuje veľké vlnky, ktoré nám nemôžu poskytnúť presnú analógovú hodnotu. Preto je pripojený kondenzátor na vyhladenie striedavého signálu.
Účel zenerovej diódy?
Arduino sa môže poškodiť, ak je doň napájané napätie väčšie ako 5v. Preto je pripojená 5V zenerova dióda, aby sa zaistila bezpečnosť Arduina, ktoré sa rozpadne v prípade, že toto napätie prekročí 5V.
Pracovanie striedavého voltmetra na báze Arduino:
1. Zostupné napätie sa získava na strane nn transformátora, ktorý je vhodný na použitie v rezistoroch s normálnym výkonom.
2. Potom dostaneme vhodnú hodnotu napätia na 4,7k rezistore
Maximálne napätie, ktoré je možné merať, sa zistí simuláciou tohto obvodu na proteuse (vysvetlené v simulačnej časti).
3. Arduino berie toto napätie ako vstup z pinu A0 vo forme analógových hodnôt od 0 do 1023. 0 je 0 V a 1023 5 V.
4. Arduino potom prevedie túto analógovú hodnotu na zodpovedajúce sieťové napätie podľa vzorca. (Vysvetlené v časti venovanej kódu).
Simulácia:
Presný obvod sa vytvorí v proteuse a potom sa simuluje. Na zistenie maximálneho napätia, ktoré môže tento obvod merať zásah, sa používa skúšobná metóda.
Pri vytváraní špičkového napätia alternátora 440 (311 rms) sa zistilo, že napätie na kolíku A0 je 5 voltov, tj maximum. Preto tento obvod môže merať maximálne 311 efektívnych napätí.
Simulácia sa vykonáva pre rôzne napätia medzi 220 rms a 440v.
Vysvetlenie kódu:
Kompletný kód ArduinoVoltmeter je uvedený na konci tohto projektu a je dobre vysvetlený v komentároch. Tu vysvetľujeme niekoľko jeho častí.
m je vstupná analógová hodnota prijatá na kolíku A0, tj
m = pinMode (A0, VSTUP); // nastaví pin a0 ako vstupný pin
Ak chcete premennej n priradiť tento vzorec n = (m * . 304177), najskôr sa vykoná nejaký druh výpočtov s použitím údajov získaných v simulačnej časti:
Ako je vidieť na simulačnej fotografii, na kolíku A0 sa získa 5v alebo 1023 analógových hodnôt, keď je vstupné striedavé napätie 311 voltov. Preto:
Takže akákoľvek náhodná analógová hodnota zodpovedá (311/1023) * m, kde m je získaná analógová hodnota.
Preto prichádzame k tomuto vzorcu:
n = (311/1023) * m voltov alebo n = (m *. 304177)
Teraz je táto hodnota napätia vytlačená na sériovom monitore pomocou sériových príkazov, ako je vysvetlené nižšie. A tiež zobrazené na multimetri, ako je to znázornené na videu nižšie.
Hodnoty vytlačené na obrazovke sú:
Analógová vstupná hodnota uvedená v kóde:
Serial.print ("analógový vstup"); // toto dáva názov, ktorý je „analógový vstup“ k tlačenej analógovej hodnote Serial.print (m); // týmto sa jednoducho vytlačí vstupná analógová hodnota
Požadované striedavé napätie uvedené v kóde:
Serial.print ("striedavé napätie"); // toto dá meno „striedavé napätie“ vytlačenej analógovej hodnote Serial.print (n); // toto jednoducho vytlačí hodnotu striedavého napätia