Hoe maak je een digitale DC-voltmeter met Arduino?

Een voltmeter is een spanningsmeetapparaat dat wordt gebruikt om de spanning op bepaalde punten in een elektrisch circuit te meten. Spanning is het potentiaalverschil dat ontstaat tussen twee punten in een elektrisch circuit. Er zijn twee soorten voltmeters. Sommige voltmeters zijn ontworpen om de spanning van DC-circuits te meten en andere voltmeters zijn bedoeld om de spanning in AC-circuits te meten. Deze voltmeters worden verder gekarakteriseerd in twee categorieën. De ene is een digitale voltmeter die de metingen op een digitaal scherm weergeeft en de andere is een analoge voltmeter die een naald gebruikt om op de schaal te wijzen om ons de exacte waarde te laten zien.

In dit project gaan we een voltmeter maken met Arduino Uno. We zullen in dit artikel twee configuraties van een digitale voltmeter uitleggen. In de eerste configuratie kan de microcontroller spanning meten in het bereik van 0 – 5V. In de tweede configuratie kan de microcontroller de spanning meten in het bereik van 0 – 50V.

Hoe maak je een digitale voltmeter?

Zoals we weten, zijn er twee soorten voltmeters, een analoge voltmeter en een digitale voltmeter. Er zijn nog enkele andere typen analoge voltmeters die zijn gebaseerd op de constructie van het apparaat. Sommige van deze typen zijn onder meer permanente magneet bewegende spoel voltmeter, gelijkrichter type voltmeter, bewegende ijzeren type voltmeter, enz. Het belangrijkste doel van de introductie van de digitale voltmeter op de markt was te wijten aan de grotere kans op fouten in analoge voltmeters. In tegenstelling tot een analoge voltmeter, die een naald en een schaal gebruikt, geeft de digitale voltmeter de meetwaarden direct in cijfers op het scherm weer. Dit neemt de mogelijkheid weg om Nul fout. Het foutenpercentage wordt teruggebracht van 5% naar 1% wanneer we zijn overgestapt van analoge voltmeter naar digitale voltmeter.

Nu we de samenvatting van dit project kennen, laten we wat meer informatie verzamelen en beginnen met het maken van een digitale voltmeter met Arduino Uno.

Stap 1: De componenten verzamelen The

De beste aanpak om een ​​project te starten, is door een lijst met componenten te maken en deze componenten kort te bestuderen, omdat niemand midden in een project wil blijven zitten vanwege een ontbrekend onderdeel. Hieronder vindt u een lijst met componenten die we in dit project gaan gebruiken:

Stap 2: De componenten bestuderen

Arduino UNO is een microcontroller-bord dat bestaat uit een microchip ATMega 328P en is ontwikkeld door Arduino.cc. Dit bord heeft een set digitale en analoge datapinnen die kunnen worden gekoppeld aan andere uitbreidingskaarten of circuits. Dit bord heeft 14 digitale pinnen, 6 analoge pinnen en is programmeerbaar met de Arduino IDE (Integrated Development Environment) via een type B USB-kabel. Het vereist 5V om te voeden AAN en een C-codeopereren.

LCD's zijn te zien in elk elektronisch apparaat dat tekst of cijfers of een afbeelding aan de gebruikers moet weergeven. Een LCD is een weergavemodule waarin vloeibaar kristal wordt gebruikt om een ​​zichtbare afbeelding of tekst te produceren. EEN 16 × 2 LCD-schermis een zeer eenvoudige elektronische module die 16 tekens per regel en in totaal twee regels tegelijk op het scherm weergeeft. Een 5×7 pixelmatrix wordt gebruikt om een ​​karakter in deze LCD's weer te geven.

EEN Breadboardis een soldeerloos apparaat. Het wordt gebruikt om tijdelijke prototype elektronische schakelingen en ontwerpen te maken en te testen. De meeste elektronische componenten worden eenvoudig op een breadboard aangesloten door gewoon hun pinnen in het breadboard te steken. Een strook metaal wordt in de gaten van het breadboard gelegd en de gaten worden op een specifieke manier met elkaar verbonden. De aansluitingen van de gaten zijn weergegeven in het onderstaande schema:

Stap 3: Schakelschema

Het eerste circuit waarvan het meetbereik van 0 tot 5V is, wordt hieronder weergegeven:

Het tweede circuit waarvan het meetbereik van 0 tot 50V is, wordt hieronder weergegeven:

Stap 4: Werkingsprincipe

De werking van dit project van een op Arduino gebaseerde digitale DC-voltmeter wordt hier uitgelegd. In de digitale voltmeter wordt de spanning die in analoge vorm wordt gemeten, omgezet naar de bijbehorende digitale waarde met behulp van een analoog-naar-digitaalomzetter.

In het eerste circuit waarvan het meetbereik van 0 tot 5V is, wordt de ingang genomen op Analoge pin0. De analoge pin leest elke waarde van 0 tot 1024. Vervolgens wordt deze analoge waarde geconverteerd naar digitaal door deze te vermenigvuldigen met de totale spanning, wat 5V is, en te delen door de totale resolutie, die 1024 is.

In het tweede circuit, omdat het bereik moet worden vergroot van 5V naar 50V, moet een spanningsdelerconfiguratie worden gemaakt. Het spanningsdelercircuit wordt gemaakt met behulp van een 10k-ohm en een 100k-ohm-weerstand. Deze spanningsdelerconfiguratie helpt ons om de ingangsspanning binnen het bereik van de analoge ingang van Arduino Uno te brengen.

Alle wiskundige berekeningen worden gedaan in de programmering van Arduino Uno.

Stap 5: Montage van de componenten

De aansluiting van de LCD-module op het Arduino Uno-bord is in beide circuits hetzelfde. Het enige verschil is dat in het eerste circuit het ingangsbereik laag is, dus het wordt direct naar de analoge pin van de Arduino gestuurd. In het tweede circuit wordt een spanningsdelerconfiguratie gebruikt aan de ingangszijde van de Microcontroller-kaart.

  1. Verbind de Vss- en Vdd-pin van de LCD-module met respectievelijk de grond en 5V van het Arduino-bord. De Vee-pin is de pin die wordt gebruikt om de beperkingen van het scherm aan te passen. Het is verbonden met de potentiometer waarvan de ene pin is verbonden met 5V en de andere is verbonden met aarde.
  2. Verbind de RS- en E-pin van de LCD-module met respectievelijk pin2 en pin3 van het Arduino-bord. De RW-pin van het LCD-scherm is verbonden met de grond.
  3. Omdat we de LCD-module in 4-bits datamodus zullen gebruiken, worden de vier pinnen D4 tot D7 gebruikt. D4-D7-pinnen van de LCD-module zijn verbonden met pin4-pin7 van het microcontrollerbord.
  4. In het eerste circuit is er geen extra circuit aan de ingangszijde omdat de maximaal te meten spanning 5V is. In het tweede circuit, aangezien het meetbereik van 0-50V is, wordt een spanningsdelerconfiguratie gemaakt met behulp van een 10k-ohm en een 100k-ohm-weerstand. Opgemerkt moet worden dat alle gronden gemeenschappelijk zijn.

Stap 6: Aan de slag met Arduino

Als u nog niet bekend bent met Arduino IDE, hoeft u zich geen zorgen te maken, want hieronder ziet u duidelijke stappen voor het branden van code op het microcontrollerbord met behulp van Arduino IDE. U kunt de nieuwste versie van Arduino IDE hier downloaden en de onderstaande stappen volgen:

  1. Wanneer het Arduino-bord is aangesloten op uw pc, opent u "Configuratiescherm" en klikt u op "Hardware en geluid". Klik vervolgens op "Apparaten en printers". Zoek de naam van de poort waarop uw Arduino-bord is aangesloten. In mijn geval is het "COM14", maar het kan op uw pc anders zijn.
  2. We zullen een bibliotheek moeten toevoegen om de LCD-module te gebruiken. De bibliotheek is hieronder bijgevoegd in de downloadlink, samen met de code. Ga naar Schets > Bibliotheek opnemen > .ZIP-bibliotheek toevoegen.
  3. Open nu de Arduino IDE. Stel vanuit Tools het Arduino-bord in op Arduino / Echte UNO.
  4. Stel vanuit hetzelfde Tool-menu het poortnummer in dat u in het configuratiescherm zag.
  5. Download de onderstaande code en kopieer deze naar uw IDE. Om de code te uploaden, klikt u op de upload-knop.

U kunt de code downloaden door hier te klikken.

Stap 7: Coderen

De code is vrij eenvoudig en goed becommentarieerd. Maar toch, sommigen worden hieronder uitgelegd.

1. In het begin wordt de bibliotheek gebruikt, zodat we de LCD-module met het Arduino Uno-bord kunnen koppelen en dienovereenkomstig kunnen programmeren. Dan worden de pinnen van het Arduino-bord geïnitialiseerd die zullen worden gebruikt om verbinding te maken met de LCD-module. Vervolgens worden verschillende variabelen geïnitialiseerd om waarden op te slaan tijdens de looptijd die later in berekeningen zullen worden gebruikt.

#include "LiquidCrystal.h" // inclusief bibliotheek om LCD-module te koppelen met Arduino-bord LiquidCrystal lcd (2, 3, 4, 5, 6, 7); // pinnen van te gebruiken LCD-module floatspanning = 0,0; vlottertemperatuur = 0,0; // variabele om de digitale waarde van de input int analog_value op te slaan; // variabele om analoge waarde op te slaan bij de ingang

2. ongeldige setup()is een functie die slechts één keer wordt uitgevoerd wanneer het apparaat wordt gestart of op de activeringsknop wordt gedrukt. Hier hebben we het LCD-scherm geïnitialiseerd om te starten. Wanneer het LCD-scherm start, wordt de tekst "Arduino Based Digital Voltmeter" weergegeven. In deze functie wordt ook de baudrate ingesteld. Baudrate is de snelheid in bits per seconde waarmee de Arduino communiceert met de externe apparaten.

leegte setup () {lcd.begin (16, 2); // start communicatie met LCD lcd.setCursor (0,0); // start de cursor vanaf het begin lcd.print ("op Arduino gebaseerd"); // Print tekst in eerste regel lcd.setCursor (0,1); // Verplaats de cursor naar de volgende regel lcd.print ("Digital Voltmeter"); // print tekst in tweede regel vertraging (2000); // wacht twee seconden}

3. lege lus()is een functie die continu in een lus draait. Hier wordt de analoge waarde aan de ingangszijde uitgelezen. Vervolgens wordt deze analoge waarde omgezet in digitale vorm. Er wordt een voorwaarde toegepast en de uiteindelijke metingen worden weergegeven op het LCD-scherm

void loop () {analoge_waarde = analogRead (A0); // Lezen van de analoge waarde temp = (analog_value * 5.0) / 1024.0; // omzetten van de analoge waarde in digitale spanning = temp/(0.0909); als (spanning < 0,1) { spanning = 0,0; } lcd.clear(); // Wis alle tekst op het LCD lcd.setCursor (0, 0); // Verplaats de cursor naar de beginpositie lcd.print("Voltage="); // Print Voltgae = lcd.print (spanning); // Druk de uiteindelijke digitale waarde van de spanning af lcd.setCursor(13,1); // verplaats de cursor lcd.print ("V"); // print de eenheid van spanningsvertraging (30); // wacht 0,3 seconden }

Toepassingen

Enkele van de toepassingen van een digitale voltmeter zijn:

  1. Het hierboven gemaakte circuit kan worden gebruikt om verschillende spanningsbereiken met hoge precisie in elk elektrisch circuit te meten.
  2. Als we kleine veranderingen in het circuit aanbrengen, kan de Microcontroller ook de spanning in AC-circuits meten.
Facebook Twitter Google Plus Pinterest