- Hardware necesar:
- Circuit divizor de tensiune:
- Diagrama circuitului și conexiunile:
- Explicație de codare:
Cu o cunoaștere simplă a circuitului Arduino și a divizorului de tensiune, putem transforma Arduino în voltmetru digital și putem măsura tensiunea de intrare folosind Arduino și un afișaj LCD de 16x2.
Arduino are mai mulți pini de intrare analogici care se conectează la un convertor analog-digital (ADC) din interiorul Arduino. Arduino ADC este un convertor de zece biți, înseamnă că valoarea de ieșire va varia de la 0 la 1023. Vom obține această valoare utilizând funcția analogRead () . Dacă cunoașteți tensiunea de referință, puteți calcula cu ușurință tensiunea prezentă la intrarea analogică. Putem folosi circuitul divizor de tensiune pentru a calcula tensiunea de intrare. Aflați mai multe despre ADC în Arduino aici.
Tensiunea măsurată este afișată pe afișajul cu cristale lichide (LCD) 16x2. De asemenea, am afișat tensiunea în monitorul serial al Arduino IDE și am confirmat tensiunea măsurată folosind multimetrul.
Hardware necesar:
- Arduino uno
- LCD 16x2 (afișaj cu cristale lichide)
- Rezistor de 100 k ohm
- Rezistor de 10 k ohm
- Potențiometru de 10 k ohm
- panou de masă
- fire jumper
Circuit divizor de tensiune:
Înainte de a intra în acest circuit de voltmetru Arduino, să discutăm despre circuitul divizorului de tensiune.
Divizorul de tensiune este un circuit rezistiv și este prezentat în figură. În această rețea rezistivă avem două rezistențe. Așa cum se arată în figură, R1 și R2, care sunt de 10k și 100k ohm. Punctul de mijloc al ramurii este luat la măsurare ca o intrare anologică la Arduino. Căderea de tensiune pe R2 se numește Vout, aceasta este tensiunea divizată a circuitului nostru.
Formule:
Folosind valoarea cunoscută (două valori ale rezistenței R1, R2 și tensiunea de intrare), putem înlocui în ecuația de mai jos pentru a calcula tensiunea de ieșire.
Vout = Vin (R2 / R1 + R2)
Această ecuație afirmă că tensiunea de ieșire este direct proporțională cu tensiunea de intrare și raportul dintre R1 și R2.
Prin aplicarea acestei ecuații în codul Arduino, tensiunea de intrare poate fi ușor derivată. Arduino poate măsura doar tensiunea de intrare DC de + 55v, Cu alte cuvinte, atunci când măsoară 55V, pinul analogic Arduino va fi la tensiunea maximă de 5V, deci este sigur să măsurați în această limită. Aici valoarea rezistențelor R2 și R1 este setată la 100000 și 10000, adică în raportul 100: 10.
Diagrama circuitului și conexiunile:
Conexiunea pentru acest voltmetru digital Arduino este simplă și este prezentată în diagrama de mai jos:
Pinul DB4, DB5, DB6, DB7, RS și EN al ecranului LCD sunt conectate direct la pinul D4, D5, D6, D7, D8, D9 al Arduino Uno
Punctul central al celor două rezistențe R1 și R2, care face circuitul divizor de tensiune, este conectat la pinul Arduino A0. În timp ce celelalte 2 capete sunt conectate la voltajul de intrare (tensiunea de măsurat) și gnd.
Explicație de codare:
Codul Arduino complet pentru măsurarea tensiunii DC este dat în partea de mai jos. Codul este simplu și poate fi ușor de înțeles.
Partea principală a codului este să convertească și să mapeze tensiunea de intrare dată în tensiunea de ieșire afișată cu ajutorul ecuației date mai sus Vout = Vin (R2 / R1 + R2). Așa cum am menționat mai devreme, valoarea de ieșire Arduino ADC va varia de la 0 la 1023, iar tensiunea de ieșire maximă Arduino este 5v, deci trebuie să multiplicăm intrarea analogică de la A0 la 5/1024 pentru a obține tensiunea reală.
void loop () {int analogvalue = analogRead (A0); temp = (analogvalue * 5.0) / 1024.0; // FORMULĂ UTILIZATĂ PENTRU CONVERTIREA TENSIUNII input_volt = temp / (r2 / (r1 + r2));
Aici am afișat valoarea măsurată a tensiunii pe LCD și pe monitorul serial al Arduino. Deci, aici, în codul Serial.println este utilizat pentru a imprima valorile pe monitorul serial, iar lcd.print este utilizat pentru a imprima valorile pe ecranul LCD 16x2.
Serial.print ("v ="); // tipărește valoarea tensiunii în monitorul serial Serial.println (input_volt); lcd.setCursor (0, 1); lcd.print ("Tensiune ="); // tipărește valoarea tensiunii pe afișajul LCD lcd.print (input_voltage);
Acesta este modul în care putem calcula cu ușurință tensiunea continuă folosind Arduino. Verificați videoclipul de mai jos pentru demonstrație. Este puțin dificil să calculați tensiunea de curent alternativ folosind Arduino, puteți verifica același lucru aici.