- Zahtevane komponente:
- Shema vezja Arduino voltmetra:
- Delovanje AC voltmetra na osnovi Arduino:
- Simulacija:
- Razlaga kode:
V tem projektu bomo izdelali napravo za merjenje izmenične napetosti z uporabo Arduina, ki bo merila napetost oskrbe z izmeničnim tokom v našem domu. To napetost bomo natisnili na serijski monitor Arduino IDE in prikazali na multimetru.
Izdelava digitalnega voltmetra je veliko enostavnejša od izdelave analognega, ker morate v primeru analognega voltmetra dobro poznati fizične parametre, kot so navor, izgube zaradi trenja itd., V primeru digitalnega voltmetra pa lahko uporabite LCD ali LED matrico ali celo vaš prenosnik (kot v tem primeru), da vam natisne vrednosti napetosti. Tu je nekaj projektov digitalnega voltmetra:
- Preprosto vezje digitalnega voltmetra s tiskanim vezjem z uporabo ICL7107
- LM3914 Voltmeter vezje
- 0-25V digitalni voltmeter z uporabo mikrokrmilnika AVR
Zahtevane komponente:
- En transformator 12-0-12
- Dioda 1N4007
- 1uf kondenzator
- Upori 10k; 4,7 tis.
- Zener dioda (5v)
- Arduino UNO
- Priključne žice
Shema vezja Arduino voltmetra:
Shema vezja za ta Arduino voltmeter je prikazana zgoraj.
Povezave:
- Visokonapetostno stran (220V) transformatorja priključite na električno omrežje, nizko napetost (12v) pa na vezje delilnika napetosti.
- Priključite 10k upor zaporedno z uporom 4.7k, vendar upoštevajte napetost kot vhod na 4.7k uporu.
- Priključite diodo, kot je prikazano.
- Kondenzator in cenerjevo diodo priključite na 4,7 k
- Priključite žico z n-terminala diode na analogni zatič A0 Arduina.
** Opomba: Priključite ozemljitveni zatič Arduino na točko, kot je prikazano na sliki, ali vezje ne bo delovalo.
Potrebujete napetostno vezje?
Ker uporabljamo transformator 220/12 v, dobimo 12 v na strani lv. Ker ta napetost ni primerna kot vhod za Arduino, potrebujemo vezje delilnika napetosti, ki lahko daje ustrezno vrednost napetosti kot vhod za Arduino
Zakaj sta dioda in kondenzator priključena?
Ker Arduino za vhod ne vzame negativnih napetostnih vrednosti, moramo najprej odstraniti negativni cikel koraka navzdol AC, tako da Arduino sprejme samo pozitivno napetostno vrednost. Zato je dioda priključena za odpravo napetosti, ki se znižuje. Oglejte si naš polvalni usmernik in polvalni usmernik, če želite izvedeti več o usmerjanju.
Ta odpravljena napetost ni gladka, saj vsebuje velike valove, ki nam ne morejo dati natančne analogne vrednosti. Tako je kondenzator priključen za izravnavo izmeničnega signala.
Namen zener diode?
Arduino lahko poškoduje, če se nanj napaja napetost večja od 5v. Zato je 5v cener dioda priključena, da se zagotovi varnost Arduina, ki se pokvari, če ta napetost preseže 5v.
Delovanje AC voltmetra na osnovi Arduino:
1. Na spodnji strani transformatorja dobimo napetost navzdol, ki je primerna za uporabo na običajnih uporih moči.
2. Nato dobimo primerno vrednost napetosti na uporu 4,7 k
Največjo napetost, ki jo je mogoče izmeriti, najdemo s simulacijo tega vezja na proteusu (razloženo v oddelku za simulacijo).
3. Arduino vzame to napetost kot vhod iz zatiča A0 v obliki analognih vrednosti med 0 in 1023. 0 je 0 volt in 1023 je 5v.
4. Arduino nato pretvori to analogno vrednost v ustrezno omrežno izmenično napetost s formulo. (Razloženo v odseku kode).
Simulacija:
Natančno vezje je narejeno iz proteusa in nato simulirano. Da bi ugotovili največjo napetost, s katero lahko to vezje meri hit, se uporablja poskusna metoda.
Pri izdelavi največje napetosti alternatorja 440 (311 rms) je bilo ugotovljeno, da je napetost na zatiču A0 5 voltov, tj. Tako lahko to vezje izmeri največ 311 efektivnih napetosti.
Simulacija se izvaja za različne napetosti med 220 rms in 440v.
Razlaga kode:
Popolna koda ArduinoVoltmeter je podana na koncu tega projekta in je dobro pojasnjena s komentarji. Tukaj razlagamo nekaj njegovih delov.
m je vhodna analogna vrednost, sprejeta na pin A0, tj.
m = pinMode (A0, INPUT); // nastavimo pin a0 kot vhodni pin
Če želite tej formuli dodeliti spremenljivko n = (m * . 304177), najprej izvedemo neke vrste izračune z uporabo podatkov, dobljenih v oddelku za simulacijo:
Kot je razvidno iz simulacijske fotografije, dobimo analogno vrednost 5v ali 1023 na zatiču A0, ko je vhodna izmenična napetost 311 voltov. Zato:
Torej katera koli naključna analogna vrednost ustreza (311/1023) * m, kjer je m dobljena analogna vrednost.
Zato smo prišli do te formule:
n = (311/1023) * m voltov ali n = (m *.304177)
Zdaj se ta vrednost napetosti natisne na serijski monitor z uporabo serijskih ukazov, kot je razloženo spodaj. In prikazano tudi na multimetru, kot je prikazano v spodnjem videu.
Na zaslonu so natisnjene vrednosti:
Vrednost analognega vhoda, kot je določeno v kodi:
Serial.print ("analogni vhod"); // to daje ime, ki je "analogni vhod" za natisnjeno analogno vrednost Serial.print (m); // to preprosto natisne vhodno analogno vrednost
Zahtevana izmenična napetost, kot je določeno v kodi:
Serial.print ("izmenična napetost"); // to daje natisnjeni analogni vrednosti Serial.print (n) ime "izmenična napetost"; // to preprosto natisne vrednost izmenične napetosti