Maak deze geavanceerde digitale ampèremeter met Arduino

Probeer Ons Instrument Voor Het Oplossen Van Problemen





In deze post gaan we een digitale ampèremeter bouwen met een 16 x 2 LCD-scherm en Arduino. We zullen de methodologie van het meten van stroom met een shuntweerstand begrijpen en een ontwerp op basis van Arduino implementeren. De voorgestelde digitale ampèremeter kan met redelijke nauwkeurigheid een stroom meten van 0 tot 2 Ampère (absoluut maximum).

Hoe ampèremeters werken

Er zijn twee soorten ampèremeters: analoog en digitaal, hun werking is heel verschillend van elkaar. Maar ze hebben allebei één concept gemeen: een shuntweerstand.



Een shuntweerstand is een weerstand met een zeer kleine weerstand die tussen de bron en de belasting wordt geplaatst tijdens het meten van de stroom.

Laten we eens kijken hoe een analoge ampèremeter werkt, en dan wordt het gemakkelijker om de digitale te begrijpen.



hoe een analoge ampèremeter werkt

Een shuntweerstand met een zeer lage weerstand R en neem aan dat er een soort analoge meter is aangesloten over de weerstand waarvan de afbuiging recht evenredig is met de spanning via de analoge meter.

Laten we nu wat stroom van de linkerkant afgeven. i1 is de stroom voordat deze de shuntweerstand R binnengaat en i2 is de stroom nadat deze door de shuntweerstand is gegaan.

De huidige i1 zal groter zijn dan i2 omdat er een fractie van de stroom door de shuntweerstand is gedaald. Het stroomverschil tussen de shuntweerstand ontwikkelt een zeer kleine hoeveelheid spanning op V1 en V2.
De hoeveelheid spanning wordt gemeten door die analoge meter.

De spanning die over de shuntweerstand wordt ontwikkeld, is afhankelijk van twee factoren: de stroom die door de shuntweerstand vloeit en de waarde van de shuntweerstand.

Als de stroom groter is door de shunt, is de ontwikkelde spanning groter. Als de waarde van de shunt hoog is, is de spanning die over de shunt wordt ontwikkeld hoger.

De shuntweerstand moet een zeer kleine waarde hebben en moet een hoger wattage hebben.

Een kleine weerstand zorgt ervoor dat de belasting voldoende stroom en spanning krijgt voor normaal gebruik.

Ook moet de shuntweerstand een hoger wattage hebben, zodat deze de hogere temperatuur kan verdragen tijdens het meten van de stroom. Hoe hoger de stroom door de shunt, hoe meer warmte wordt gegenereerd.

Je zou nu het basisidee hebben, hoe een analoge meter werkt. Laten we nu verder gaan met digitaal ontwerp.

We weten inmiddels dat een weerstand een spanning zal produceren als er stroom loopt. Uit het diagram V1 en V2 zijn de punten waar we de spanningsmonsters naar de microcontroller brengen.

Omzetting van spanning naar stroom berekenen

Laten we nu eens kijken naar de eenvoudige wiskunde: hoe kunnen we de geproduceerde spanning omzetten in stroom.

De wet van de ohm: I = V / R

We kennen de waarde van de shuntweerstand R en deze wordt in het programma ingevoerd.

De spanning die over de shuntweerstand wordt geproduceerd, is:

V = V1 - V2

Of

V = V2 - V1 (om een ​​negatief symbool tijdens het meten te vermijden en ook een negatief symbool hangt af van de richting van de stroom)

Dus we kunnen de vergelijking vereenvoudigen,

Ik = (V1 - V2) / R
Of
Ik = (V2 - V1) / R

Een van de bovenstaande vergelijkingen wordt in de code ingevoerd en we kunnen de huidige stroom vinden en deze worden weergegeven op het LCD-scherm.

Laten we nu eens kijken hoe we de shuntweerstandswaarde kiezen.

De Arduino heeft een ingebouwde 10 bit analoog naar digitaal converter (ADC). Het kan van 0 tot 5V detecteren in 0 tot 1024 stappen of spanningsniveaus.

De resolutie van deze ADC is dus 5/1024 = 0,00488 volt of 4,88 millivolt per stap.

Dus 4,88 millivolt / 2 mA (minimale resolutie van ampèremeter) = 2,44 of 2,5 ohm weerstand.

We kunnen vier weerstanden van 10 ohm en 2 Watt parallel gebruiken om 2,5 ohm te krijgen, wat in het prototype is getest.

Dus, hoe kunnen we zeggen dat het maximaal meetbare bereik van de voorgestelde ampèremeter 2 Ampère is.

De ADC kan alleen meten van 0 tot 5 V, d.w.z.. Alles hierboven zal de ADC in de microcontroller beschadigen.

Van het geteste prototype wat we hebben opgemerkt dat, op de twee analoge ingangen van punt V1 en V2 wanneer de huidige meetwaarde X mA, de analoge spanning X / 2 aangeeft (in seriële monitor).

Stel bijvoorbeeld dat als de ampèremeter 500 mA aangeeft, de analoge waarden op de seriële monitor 250 stappen of spanningsniveaus aflezen. De ADC kan tot 1024 stappen of maximaal 5 V tolereren, dus wanneer de ampèremeter 2000 mA aangeeft, leest de seriële monitor ongeveer 1000 stappen. dat is bijna 1024.

Alles boven het spanningsniveau van 1024 zal de ADC in Arduino beschadigen. Om dit te vermijden zal vlak voor 2000 mA een waarschuwingsbericht op het LCD-scherm verschijnen met de mededeling dat het circuit moet worden losgekoppeld.

Je zou nu hebben begrepen hoe de voorgestelde ampèremeter werkt.

Laten we nu verder gaan met constructieve details.

Schematisch diagram:

Arduino DC digitale ampèremeter

Het voorgestelde circuit is heel eenvoudig en beginnersvriendelijk. Bouw volgens het schakelschema. Pas de 10K-potentiometer aan om het schermcontrast aan te passen.

Je kunt de Arduino van stroom voorzien via USB of via DC-aansluiting met 9 V-batterijen. Vier weerstanden van 2 watt zullen de warmte gelijkmatig afvoeren dan een weerstand van 2,5 ohm met een weerstand van 8-10 watt.

Als er geen stroom passeert, kan het display een kleine willekeurige waarde weergeven die u mogelijk negeert, dit kan te wijten zijn aan strooispanning over de meetklemmen.

OPMERKING: Keer de polariteit van de ingangsbelasting niet om.

Programmacode:

Als je een specifieke vraag hebt over dit op Arduino gebaseerde digitale ampèremeter-circuitproject, geef dit dan aan in het commentaargedeelte, je krijgt mogelijk snel antwoord.




Een paar: Digitale potentiometer MCP41xx gebruiken met Arduino Volgende: Overstroomonderbrekingsvoeding met Arduino