Ponekad želite provjeriti napon ili neku točku u strujnom krugu, ali nemate voltmetar ili multimetar pri ruci? Trčati kupiti? Dugo je i skupo. Prije nego to učinite, kako bi bilo da sami napravite voltmetar? Zapravo, uz pomoć jednostavne komponente možete ga sami napraviti.
Prije povezivanja prvo pogledajmo kako radi.
Koristite SunFounder Uno ploču za glavni dio obrade podataka voltmetra, LCD1602 kao zaslon, potenciometar za podešavanje kontrasta LCD-a i drugi za dijeljenje napona.
Kada okrenete potenciometar spojen na Uno ploču, otpornik potenciometra se mijenja, čime se mijenja napon na njemu. Naponski signal će biti poslan na Uno ploču preko pina A0, a Uno će primljeni analogni signal pretvoriti u digitalni oblik i snimati na LCD-u. Na taj način možete vidjeti vrijednost napona pri trenutnom otporu kapacitivnosti.
LCD1602 ima dva načina rada: 4-bitni i 8-bitni. Kada MCU IO nije dovoljan, možete odabrati 4-bitni način rada, koji koristi samo pinove D4~D7.
Slijedite tablicu kako biste ih povezali.
Spojite srednji pin potenciometra na Vo pin na LCD1602 i bilo koji drugi pin na GND.
Spojite srednji pin potenciometra na pin A0 SunFounder Uno, a jedan od ostalih na 5V, a drugi na GND.
Ovaj kod:
#uključi /************************************************ ******* *****/ const int analogIn = A0;//potenciometar priključite na A0 LiquidCrystal lcd(4, 6, 10, 11, 12, 13);//lcd(RS,E,D4 ,D5,D6.D7) float val = 0;// definirajte varijablu kao value=0 /**************************** ******* *****************/ void setup() ( Serial.begin(9600);//Inicijaliziraj serijski lcd.begin(16, 2) ;//postavite položaj znakova na LCD-u kao redak 2, stupac 16 lcd.print("Vrijednost napona:");//ispišite "Vrijednost napona:") /*********** ******* *************************************/ void loop() ( val = analogRead (A0);//Očitajte vrijednost potenciometra na val val = val/1024*5.0;// Pretvorite podatke u odgovarajuću vrijednost napona na matematički način Serial.print(val);//Ispišite broj val na serijskom monitoru Serial.print ("V"); // ispis jedinice kao V, skraćenica za napon na serijskom monitoru lcd.setCursor(6,1);//Postavite kursor na redak 1, stupac 6. Od ovdje se znakovi trebaju prikazati lcd.print(val);//Ispisati broj val na LCD-u lcd.print("V");//Zatim ispisati jedinicu kao V, skraćenicu za napon na LCD-u kašnjenje( 200); //Pričekajte 200ms )
Okrenite potenciometar da provjerite napon na LCD1602 u stvarnom vremenu.
Evo jedne zeznute stvari. Nakon što sam pokrenuo kod, LCD je pokazao znakove. Zatim sam podesio kontrast zaslona (postupna promjena od crne do bijele) okretanjem potenciometra u smjeru kazaljke na satu ili suprotno od njega dok zaslon nije jasno prikazao znakove.
Uzmite dvije baterije za mjerenje napona: 1,5 V i 3,7 V. Otkačite priključak drugog potenciometra na A0 i GND pin, što znači da potenciometar izvadite iz strujnog kruga. Pričvrstite kraj žice A0 na anodu baterije i krug GND na katodu. NEMOJTE ih ponovno uključiti ili ćete dobiti kratki spoj na bateriji. Vrijednost 0V je obrnuti spoj.
Dakle, na LCD zaslonu se prikazuje napon baterije. Možda postoji pogreška između vrijednosti i nominalne vrijednosti jer baterija nije potpuno napunjena. I zato moram izmjeriti napon da bih shvatio mogu li koristiti bateriju ili ne.
P.S: Ako imate problema s prikazom na zaslonu - pogledajte ovaj FAQ za LCD zaslone - http://wiki.sunfounder.cc/index.php?title=LCD1602/I2C_LCD1602_FAQ.
Pozdrav, Habr! Danas želim nastaviti s temom "ukrštanja" arduina i androida. U prethodnoj publikaciji govorio sam o bluetooth stroju, a danas ćemo govoriti o DIY bluetooth voltmetru. Drugi takav uređaj može se nazvati pametni voltmetar, "pametni" voltmetar ili samo pametni voltmetar, bez navodnika. Prezime je netočno s gledišta ruske gramatike, međutim, često se nalazi u medijima. Na kraju članka bit će glasovanje o ovoj temi, ali predlažem da počnete s demonstracijom rada uređaja kako biste razumjeli o čemu će članak biti.
Skica
int analogni ulaz = A0;
float val = 0,0;
napon plovka = 0,0;
float R1 = 100000,0; //Baterija Vin-> 100K -> A0
plovak R2 = 10000,0; //Baterija Gnd -> Arduino Gnd i Arduino Gnd -> 10K -> A0
int vrijednost = 0;
Void setup() (
Serial.begin(9600);
pinMode(analogni ulaz, ULAZ);
}
Void petlja() (
vrijednost = analogRead(analogInput);
val = (vrijednost * 4,7) / 1024,0;
napon = val / (R2/(R1+R2));
Serial.println(napon);
kašnjenje (500);
}
Predstavili koristan dijagram za one koji vole eksperimentirati s Arduinom. Jednostavno je digitalni voltmetar, koji može pouzdano mjeriti istosmjerni napon u rasponu 0 – 30V. Arduino ploču, kao i obično, može napajati baterija od 9V.
Kao što vjerojatno znate, Arduino analogni ulazi mogu se koristiti za mjerenje Istosmjerni napon u rasponu 0 – 5V i ovaj raspon se može povećati,
koristeći dva otpornika kao razdjelnik napona. Razdjelnik će smanjiti izmjereni napon na razinu Arduino analognih ulaza. Zatim će program izračunati stvarnu vrijednost napona.
Analogni senzor na Arduino ploči detektira prisutnost napona na analognom ulazu i pretvara ga u digitalni oblik za daljnju obradu od strane mikrokontrolera. Na slici, napon se dovodi na analogni ulaz (A0) preko jednostavnog razdjelnika napona koji se sastoji od otpornika R1 (100 kOhm) i R2 (10 kOhm).
S ovim vrijednostima razdjelnika, Arduino ploča se može napajati naponom od 0 do
55V. Na ulazu A0 imamo izmjereni napon podijeljen s 11, tj. 55V / 11=5V. Drugim riječima, kada mjerimo 55V na Arduino ulazu, imamo maksimalnu dopuštenu vrijednost od 5V. U praksi je bolje napisati raspon "0 - 30V" na ovom voltmetru tako da ostane
Sigurnosna granica!
Bilješke
Ako se očitanja na zaslonu ne podudaraju s očitanjima industrijskog (laboratorijskog) voltmetra, tada je potrebno precizni instrument izmjerite vrijednosti otpora R1 i R2 i unesite te vrijednosti umjesto R1=100000.0 i R2=10000.0 u programski kod. Tada biste trebali mjeriti laboratorijski voltmetar stvarni napon između pinova od 5V i "zemlje" Arduino ploče. Rezultat će biti vrijednost manja od 5V, na primjer, bit će 4,95V. Ovaj prava vrijednost treba umetnuti u liniju koda
vout = (vrijednost * 5,0) / 1024,0 umjesto 5,0.
Također pokušajte koristiti precizne otpornike s tolerancijom od 1%.
Otpornici R1 i R2 pružaju određenu zaštitu od povećanih ulaznih napona. Međutim, upamtite da svaki napon iznad 55 V može oštetiti Arduino ploču. Osim toga, ovaj dizajn ne pruža druge vrste zaštite (od prenapona, promjene polariteta ili prenapona).
Program za digitalni voltmetar
/*
DC voltmetar
Arduino DVM temeljen na konceptu razdjelnika napona
T.K.Hareendran
*/
#uključi
LiquidCrystal lcd (7, 8, 9, 10, 11, 12);
int analogni ulaz = 0;
float vout = 0,0;
float vin = 0,0;
float R1 = 100000,0; // otpornost R1 (100K) - vidi tekst!
plovak R2 = 10000,0; // otpor R2 (10K) – vidi tekst!
int vrijednost = 0;
void setup())(
pinMode(analogni ulaz, ULAZ);
lcd.begin(16, 2);
lcd.print(“DC VOLTMETAR”);
}
void petlja()
// čitanje vrijednosti na analognom ulazu
vrijednost = analogRead(analogInput);
vout = (vrijednost * 5,0) / 1024,0; // vidi tekst
vin = vout / (R2/(R1+R2));
ako (vin<0.09) {
vin=0.0;//izjava za poništavanje neželjenog čitanja !
}
lcd.setCursor(0, 1);
lcd.print(“ULAZ V= “);
lcd.ispis(vin);
kašnjenje (500);
}
Shematski dijagram Arduino-voltmetra
Popis komponenti
Arduino Uno ploča
Otpornik od 100 kOhm
Otpornik od 10 kOhm
Otpornik od 100 ohma
10kOhm trimer otpornik
LCD zaslon 16×2 (Hitachi HD44780)
nanbaby.ru - Zdravlje i ljepota. Moda. Djeca i roditelji. Slobodno vrijeme. Život Kuća