Trafo-vahelduvvoolu voltmeetri vooluring Arduino abil

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





Selles artiklis õpime, kuidas teha trafoteta vahelduvvoolu voltmeeter Arduino abil.

Valmistamine analoog voltmeeter ei ole lihtne ülesanne, kuna selle ehitamiseks peate teadma füüsikalisi suurusi, nagu pöördemoment, kiirus, mis võib nende praktilistes rakendustes olla väga keeruline.



KõrvalAnkit Negi

Kuid a digitaalne voltmeeter võrreldes saab teha analoog-voltmeeter kiiresti ja ka väga vähese vaevaga. Nüüd saab ühe päeva digitaalse voltmeetri valmistada mikrokontrolleri või arendusplaadi abil nagu arduino, kasutades 4-5 rea koodi.



Miks see vahelduvvoolu voltmeeter on erinev?

Kui lähete Google'isse ja otsite 'vahelduvvoolu voltmeeter arduino abil', leiate kogu Internetist palju vooluringe. Kuid peaaegu kõigis nendes vooluringides leiate trafo, mida kasutatakse.

Trafo kasutamine pole nüüd hea mõte, kui soovite teha usaldusväärset ja tõhusat voltmeetrit, kuna see muudab vooluringi mahukaks ja raskeks.

Selle projekti skeem lahendab selle probleemi täielikult, asendades trafo kõrge vatti pingejaguri ahelast. Selle vooluringi saab hõlpsalt valmistada väikesele leivaplaadile mõne minuti jooksul. Vajalikud komponendid:

Selle projekti tegemiseks vajate järgmisi komponente:

1. Arduino

2. 100 k oomi takisti (2 vatti)

3. 1k oomi takisti (2 vatti)

4. 1N4007 diood

5. Üks zener-diood 5 volti

6. 1 uf kondensaator

7. Juhtmete ühendamine

VÖÖDIAGRAMM:

Tehke ühendused vastavalt skeemile.

A) Tehke takistite abil pingejagur, pidades silmas, et maandusega peaks olema ühendatud 1 k oomi takisti.

B) Ühendage dioodi p-klemm otse pärast 1 k oomi takistit, nagu on näidatud joonisel fig. ja selle n-klemm 1 uf kondensaatorile.

C) Ärge unustage ühendada zener-dioodi paralleelselt kondensaatoriga (selgitatud allpool)

D) Ühendage traat kondensaatori positiivsest klemmist arduino analoognõelaga A0.

E) ** ühendage Arduino maandustihvt üldise maandusega, muidu vooluring ei tööta.

ARDUINO EESMÄRK ::

Noh, võite kasutada mis tahes mikrokontrollerit, kuid ma olen kasutanud arduino tänu oma lihtsale IDE-le. Põhimõtteliselt on siin arduino või mis tahes mikrokontrolleri funktsioon võtta 1 k oomi takisti pinge analoogsisendina ja teisendada see väärtus võrgu vahelduvvooluks. pinge väärtus valemi abil (selgitatud tööosas). Arduino printib selle põhiväärtuse veelgi seeriamonitorile või sülearvuti ekraanile.

PINGEJAGAJA JOON:

Nagu komponentide osas juba mainitud, peavad takistid (mis moodustavad pingejaguri ahela) olema suure võimsusega, kuna me ühendame need otse vooluvõrku.

Ja see pingejaguri ahel asendab trafot. Kuna arduino võib analoogsisendina võtta maksimaalselt 5 V, kasutatakse pingejaguri ahelat võrgu kõrgepinge jaotamiseks madalaks pingeks (alla 5 V). Oletame, et võrgu toitepinge on 350 volti (rpm)

Mis annab maksimaalse või tipppinge = 300 * 1,414 = 494,2 volti

Seega on 1 k oomi takisti tipppinge = (494,2 volti / 101 k) * 1 k = 4,9 volti (maksimaalselt)

Märkus: * kuid isegi 350 p / min juures ei ole see 4,9 volti rpm, mis tähendab, et tegelikkuses on arduino analoognõelal pinge väiksem kui 4,9 v.

Nende arvutuste põhjal võib täheldada, et see vooluahel võib ohutult mõõta vahelduvvoolu pinget umbes 385 p / min.

MIKS DIODI?

Kuna arduino ei saa sisendiks võtta negatiivset pinget, on väga oluline eemaldada sisendi a.c sin laine negatiivne osa 1 k oomi takisti ulatuses. Ja selleks tehakse dioodi abil parandus. Paremate tulemuste saavutamiseks võite kasutada ka sildalaldit.

MIKS KAPASITAATOR?
Isegi pärast parandamist on lainetes lainetusi ja selliste lainete eemaldamiseks kasutatakse kondensaatorit. Kondensaator silub enne arduino toitmist pinget.

MIKS ZENER DIODI

Pinge, mis on suurem kui 5 volti, võib arduino kahjustada. Seega kasutatakse selle kaitsmiseks 5 v zenerdioodi. Kui vahelduvvoolu pinge suureneb üle 380 volti, st üle 5 volti analoogpoldil, toimub zeneri dioodi lagunemine. Nii lühistatakse kondensaator maapinnale. See tagab arduino ohutuse.

KOOD:

Põletage see kood oma arduinosse:

int x// initialise variable x
float y//initialise variable y
void setup()
{
pinMode(A0,INPUT) // set pin a0 as input pin
Serial.begin(9600)// begin serial communication between arduino and pc
}
void loop()
{
x=analogRead(A0)// read analog values from pin A0 across capacitor
y=(x*.380156)// converts analog value(x) into input ac supply value using this formula ( explained in woeking section)
Serial.print(' analaog input ' ) // specify name to the corresponding value to be printed
Serial.print(x) // print input analog value on serial monitor
Serial.print(' ac voltage ') // specify name to the corresponding value to be printed
Serial.print(y) // prints the ac value on Serial monitor
Serial.println()
}

Koodi mõistmine:

1. MUUTUV x:

X on sisendanaloogi väärtus (pinge), mis on saadud kontaktilt A0, nagu koodis täpsustatud, st

x = pinMode (A0, INPUT) // määrake pin a0 sisendnõelaks

2. MUUTUV JA

Selle valemi saamiseks y = (x * .380156) peame kõigepealt tegema mingisugused arvutused:

See vooluahel annab siin kondensaatori ja dioodi tõttu alati väiksema pinge kui arduino tihvti A0 tegelik väärtus. Mis tähendab, et analoogpoldi pinge on alati väiksem kui 1 k oomi takisti pinge.

Seetõttu peame välja selgitama selle sisendvoolu pinge väärtuse, mille korral saame tihvtile A0 5 volti või 1023 analoogväärtust. Löögi- ja katsemeetodi järgi on see väärtus umbes 550 volti (tipp), nagu on näidatud simulatsioonis.

Rpms 550 tippvolt = 550 / 1,414 = 388,96 volti rpm Seega saame selle r.m.s väärtuse jaoks tihvtile A0 5 volti. Nii et see vooluring võib mõõta maksimaalselt 389 volti.

Nüüd 1023 analoogväärtust tihvtil A0 --- 389 a.c volti = y

Mis annab mis tahes analoogväärtuse (x) korral y = (389/1023) * x a.c volti

VÕI y = .38015 * x a.c volti

Joonisel saate selgelt jälgida, et seeriamonitorile on trükitud a.c väärtus samuti 389 volti

Nõutavate väärtuste printimine ekraanile ::

Me nõuame, et seeriamonitorile trükitakse kaks väärtust, nagu on näidatud simulatsioonipildil:

1. Koodis määratletud analoognupu A0 poolt saadud analoogsisendi väärtus:

Serial.print ('analaogi sisend') // määrake nimi vastava prinditava väärtuse jaoks

Serial.print (x) // printimissisendi analoogväärtus seeriamonitoril

2. Koodis määratletud elektrivõrgu vahelduvpinge tegelik väärtus:

Serial.print ('vahelduvpinge') // määrake nimi vastava prinditava väärtuseni

Serial.print (y) // trükib seeriamonitorile vahelduvvoolu väärtuse

ARDUINO KASUTAMISEGA SEE TUUMATU AC-VOLMEETRI TÖÖTAMINE

1. Pingejaoturi vooluahel muudab võrgu vahelduvvoolu pinge vastavaks madalapinge väärtuseks või langetab selle.

2. See pinge pärast parandamist võetakse arduino analoognõela abil ja kasutades valemit

y = 0,38015 * x a.c volti teisendatakse võrgu tegelikuks vahelduvvoolu pingeks.

3. Seejärel teisendatakse see väärtus arduino IDE seeriamonitorile.

SIMULATSIOON:

Et näha, kui lähedal ekraanil olev prinditud väärtus on tegelikule a.c väärtusele, käivitatakse simuleerimine erinevate pingete a.c pingete kohta:

A) 220 volti ehk 311 amplituudi

B) 235 volti ehk 332,9 amplituudi

C) 300 volti ehk 424,2

Järgnevatest tulemustest järeldub, et 220 a.c toiteallika korral näitab arduino 217 volti. Ja kui see ac väärtus suureneb, muutuvad simulatsiooni tulemused täpsemaks, mis on lähemal sisendi ac väärtusele.




Paar: LCD 220V võrgutaimeri vooluring - pistik ja taimer Järgmine: Inverteripinge languse probleem - kuidas lahendada