Hvordan lage et digitalt DC-voltmeter ved hjelp av Arduino?

Et voltmeter er et spenningsmåleapparat som brukes til å måle spenningen på bestemte punkter i en elektrisk krets. Spenning er potensialforskjellen som opprettes mellom to punkter i en elektrisk krets. Det er to typer voltmetere. Noen voltmetere er designet for å måle spenningen til DC-kretser, og andre voltmetre er ment for å måle spenningen i AC-kretser. Disse voltmetrene er videre karakterisert i to kategorier. Den ene er digital voltmeter som viser målingene på en digital skjerm, og den andre er et analogt voltmeter som bruker en nål til å peke på skalaen for å vise oss den nøyaktige avlesningen.

I dette prosjektet skal vi lage et voltmeter ved hjelp av Arduino Uno. Vi vil forklare to konfigurasjoner av et digitalt voltmeter i denne artikkelen. I den første konfigurasjonen vil mikrokontrolleren kunne måle spenning i området 0 - 5V. I den andre konfigurasjonen vil mikrokontrolleren kunne måle spenningen i området 0 - 50V.

Hvordan lage et digitalt voltmeter?

Som vi vet at det er to typer voltmetere, analog voltmeter og digital voltmeter. Det er noen ytterligere typer analoge voltmetere som er basert på konstruksjonen av enheten. Noen av disse typene inkluderer Permanent Magnet Moving Coil Voltmeter, Rectifier Type Voltmeter, Moving Iron Type Voltmeter, etc. Hovedformålet med å introdusere Digital Voltmeter i markedet skyldtes større sannsynlighet for feil i analoge voltmetre. I motsetning til analogt voltmeter, som bruker en nål og en skala, viser det digitale voltmeteret avlesningene direkte i sifre på skjermen. Dette fjerner muligheten for Null feil. Prosentandelen av feil reduseres fra 5% til 1% når vi har skiftet fra analogt voltmeter til digitalt voltmeter.

Nå som vi vet sammendraget av dette prosjektet, la oss samle litt mer informasjon og begynne å lage et digitalt voltmeter ved hjelp av Arduino Uno.

Trinn 1: Samle komponentene

Den beste tilnærmingen for å starte et prosjekt er å lage en liste over komponenter og gå gjennom en kort studie av disse komponentene, fordi ingen vil holde seg midt i et prosjekt bare på grunn av en manglende komponent. En liste over komponenter som vi skal bruke i dette prosjektet er gitt nedenfor:

Trinn 2: Studere komponentene

Arduino UNO er et mikrokontrollerkort som består av et mikrochip ATMega 328P og er utviklet av Arduino.cc. Dette kortet har et sett med digitale og analoge datapinner som kan grensesnittes med andre utvidelseskort eller kretser. Dette kortet har 14 digitale pinner, 6 analoge pinner og programmerbare med Arduino IDE (Integrated Development Environment) via en USB-kabel type B. Det krever 5V for strøm og en C-kodeå operere.

LCD-skjermene vises i alle elektroniske enheter som må vise tekst eller siffer eller noe bilde til brukerne. En LCD er en skjermmodul der flytende krystall brukes til å produsere et synlig bilde eller tekst. EN 16 × 2 LCD-skjermer en veldig enkel elektronisk modul som viser 16 tegn per linje og totalt to linjer på skjermen om gangen. En 5 × 7 pikselmatrise brukes til å vise et tegn i disse LCD-skjermene.

EN Brettbretter en loddefri enhet. Den brukes til å lage og teste midlertidige prototype elektroniske kretser og design. De fleste av de elektroniske komponentene er ganske enkelt koblet til et brødbord bare ved å sette inn pinnene i brødbordet. En stripe av metall er lagt ned hullene på brødbrettet, og hullene er koblet sammen på en bestemt måte. Forbindelsene til hullene er vist i diagrammet nedenfor:

Trinn 3: Kretsdiagram

Den første kretsen hvis måleområde er fra 0 til 5V er vist nedenfor:

Den andre kretsen hvis måleområde er fra 0 til 50V er vist nedenfor:

Trinn 4: Arbeidsprinsipp

Arbeidet med dette prosjektet med Arduino-basert digitalt DC-voltmeter er forklart her. I det digitale voltmeteret vil spenningen som måles i analog form konverteres til sin tilsvarende digitale verdi ved hjelp av en analog til digital omformer.

I den første kretsen hvis måleområde er fra 0 til 5V, vil inngangen bli tatt på Analog pin0. Den analoge pinnen vil lese hvilken som helst verdi fra 0 til 1024. Deretter konverteres denne analoge verdien til digital ved å multiplisere den med total spenning, som er 5V og dele den med total oppløsning, som er 1024.

I den andre kretsen, da rekkevidden skal økes fra 5V til 50V, må det gjøres en spenningsdelerkonfigurasjon. Spenningsdelerkretsen er laget ved å bruke en 10k-ohm og en 100k-ohm motstand. Denne spenningsdelerkonfigurasjonen hjelper oss med å bringe inngangsspenningen til området for Arduino Unos analoge inngang.

Alle de matematiske beregningene gjøres i programmeringen av Arduino Uno.

Trinn 5: Montere komponentene

Tilkoblingen av LCD-modulen til Arduino Uno-kortet er den samme i begge kretsene. Den eneste forskjellen er at inngangsområdet i den første kretsen er lavt, så det sendes direkte til den analoge pinnen til Arduino. I den andre kretsen brukes en spenningsdelerkonfigurasjon på inngangssiden av Microcontroller-kortet.

  1. Koble Vss- og Vdd-pinnen på LCD-modulen til henholdsvis bakken og 5V på Arduino-kortet. Vee-pinnen er pinnen som brukes til å justere begrensningene på skjermen. Den er koblet til potensiometeret hvis ene pinne er koblet til 5V og den andre er koblet til jord.
  2. Koble RS- og E-pinnen på LCD-modulen til henholdsvis pin2 og pin3 på Arduino-kortet. RW-pinnen på LCD-skjermen er koblet til bakken.
  3. Som vi skal bruke LCD-modulen i 4-bit datamodus, blir de fire pinnene D4 til D7 brukt. D4-D7-pinner på LCD-modulen er koblet til pin4-pin7 på mikrokontrollkortet.
  4. I den første kretsen er det ingen ekstra kretser på inngangssiden fordi den maksimale spenningen som skal måles er 5V. I den andre kretsen, da måleområdet er fra 0-50V, blir en spenningsdelerkonfigurasjon laget med en 10k-ohm og en 100k-ohm-motstand. Det må bemerkes at alle begrunnelsene er vanlige.

Trinn 6: Komme i gang med Arduino

Hvis du ikke er kjent med Arduino IDE før, ikke bekymre deg, for nedenfor kan du se klare trinn for å brenne kode på mikrokontrollerkortet ved hjelp av Arduino IDE. Du kan laste ned den nyeste versjonen av Arduino IDE herfra og følge trinnene nevnt nedenfor:

  1. Når Arduino-kortet er koblet til PC-en, åpner du "Kontrollpanel" og klikker på "Maskinvare og lyd". Klikk deretter på "Enheter og skrivere". Finn navnet på porten som Arduino-kortet ditt er koblet til. I mitt tilfelle er det "COM14", men det kan være annerledes på din PC.
  2. Vi må ta med et bibliotek for å bruke LCD-modulen. Biblioteket er vedlagt nedenfor i nedlastningskoblingen sammen med koden. Gå til Skisse> Inkluder bibliotek> Legg til .ZIP-bibliotek.
  3. Åpne nå Arduino IDE. Fra Verktøy, sett Arduino-kortet til Arduino / Genuino UNO.
  4. Fra den samme verktøymenyen angir du portnummeret du så i kontrollpanelet.
  5. Last ned koden som er vedlagt nedenfor, og kopier den til IDE. For å laste opp koden, klikk på opplastingsknappen.

Du kan laste ned koden ved å klikke her.

Trinn 7: Kode

Koden er ganske enkel og godt kommentert. Men fortsatt, noen blir det forklart nedenfor.

1. I starten brukes biblioteket slik at vi kan grensesnitt LCD-modulen med Arduino Uno-kortet og programmere det deretter. Enn pinner på Arduino-kortet initialiseres som skal brukes til å koble til LCD-modulen. Deretter initialiseres forskjellige variabler for å lagre verdier på kjøretiden som vil bli brukt senere i beregninger.

# inkluderer "LiquidCrystal.h" // inkluderer bibliotek til grensesnitt LCD-modul med Arduino-kort LiquidCrystal lcd (2, 3, 4, 5, 6, 7); // pinner på LCD-modulen som skal brukes flytespenning = 0,0; flyt temp = 0,0; // variabel for å lagre digital verdi til inngangen int analog_value; // variabel for å lagre analog verdi ved inngangen

2. ugyldig oppsett ()er en funksjon som bare kjører en gang når enheten starter eller aktiveringsknappen trykkes. Her har vi initialisert LCD-skjermen for å starte. Når LCD-skjermen starter, vises teksten “Arduino Based Digital Voltmeter”. Baudrate er også angitt i denne funksjonen. Baud Rate er hastigheten i bits per sekund som Arduino kommuniserer med de eksterne enhetene.

ugyldig oppsett () {lcd.begin (16, 2); // start kommunikasjon med LCD lcd.setCursor (0,0); // start markøren fra begynnelsen lcd.print ("Arduino basert"); // Skriv ut tekst i første linje lcd.setCursor (0,1); // Flytt cursoor til neste linje lcd.print ("Digital Voltmeter"); // skriv ut tekst i andre linjes forsinkelse (2000); // vent i to sekunder}

3. ugyldig sløyfe ()er en funksjon som går kontinuerlig i en løkke. Her leses den analoge verdien på inngangssiden. Deretter konverteres denne analoge verdien til digital form. En tilstand blir brukt, og de endelige målingene vises på LCD-skjermen

ugyldig sløyfe () {analog_value = analogRead (A0); // Leser den analoge verdien temp = (analog_value * 5.0) / 1024.0; // omvertering av den analoge verdien i digital spenning = temp / (0,0909); hvis (spenning <0,1) {spenning = 0,0; } lcd.clear (); // Fjern tekst på LCD lcd.setCursor (0, 0); // Flytt markøren til utgangsposisjonen lcd.print ("Voltage ="); // Skriv ut Voltgae = lcd.print (spenning); // Skriv ut den endelige digitale verdien av spenningen lcd.setCursor (13,1); // flytt markøren lcd.print ("V"); // skriv ut enheten med spenningsforsinkelse (30); // vent i 0,3 sekunder}

applikasjoner

Noen av applikasjonene til et digitalt voltmeter inkluderer:

  1. Kretsen laget ovenfor kan brukes til å måle forskjellige spenningsområder med høy presisjon i enhver elektrisk krets.
  2. Hvis vi gjør små endringer i kretsen, vil mikrokontrolleren også kunne måle spenningen i vekselstrømskretser.
Facebook Twitter Google Plus Pinterest