Inhoudsopgave:

Spanningsmeting met Arduino: 5 stappen
Spanningsmeting met Arduino: 5 stappen

Video: Spanningsmeting met Arduino: 5 stappen

Video: Spanningsmeting met Arduino: 5 stappen
Video: Stroom Meten met Arduino DEEL 1 2024, November
Anonim
Image
Image
Spanningsmeting met Arduino
Spanningsmeting met Arduino

Het meten van spanning is vrij eenvoudig met elke microcontroller in vergelijking met het meten van stroom. Het meten van spanningen wordt noodzakelijk als je met batterijen werkt of je eigen regelbare voeding wilt maken. Hoewel deze methode van toepassing is op elke uC, maar in deze tutorial, zullen we leren hoe we spanning kunnen meten met behulp van Arduino.

Er zijn spanningssensoren op de markt. Maar heb je ze echt nodig? Laten we het uitzoeken!

Stap 1: Basis

Basis
Basis
Basis
Basis
Basis
Basis

Een microcontroller kan analoge spanning niet direct begrijpen. Daarom moeten we een Analoog naar Digitaal Converter of kortweg ADC gebruiken. Atmega328, het brein van de Arduino Uno, heeft 6 kanalen (gemarkeerd als A0 tot A5), 10-bit ADC. Dit betekent dat het ingangsspanningen van 0 tot 5V zal weergeven in gehele waarden van 0 tot (2^10-1), d.w.z. gelijk aan 1023, wat een resolutie van 4,9 mV per eenheid geeft. 0 komt overeen met 0V, 1 tot 4.9mv, 2 tot 9.8mV enzovoort tot 1023.

Stap 2: Meten van 0-5V

Meten van 0-5V
Meten van 0-5V
Meten van 0-5V
Meten van 0-5V
Meten van 0-5V
Meten van 0-5V
Meten van 0-5V
Meten van 0-5V

Eerst zullen we zien hoe we spanning kunnen meten met een maximale spanning van 5V. Dit is heel eenvoudig omdat er geen speciale aanpassingen nodig zijn. Om de variërende spanning te simuleren, gebruiken we een potentiometer waarvan de middelste pin is verbonden met een van de 6 kanalen. We zullen nu de code schrijven om de waarden van ADC te lezen en ze terug om te zetten in bruikbare spanningsmetingen.

Het lezen van de analoge pin A0

waarde = analoog lezen (A0);

Nu bevat de variabele 'waarde' een waarde tussen 0 en 1023, afhankelijk van de spanning.

spanning = waarde * 5,0/1023;

De verkregen waarde wordt nu vermenigvuldigd met de resolutie (5/1023 = 4,9 mV per eenheid) om de werkelijke spanning te krijgen.

Geef ten slotte de gemeten spanning weer op de seriële monitor.

Serial.print("Spanning = ");

Serial.println(spanning);

Stap 3: Spanning boven 5V meten

Spanning boven 5V meten
Spanning boven 5V meten

Maar het probleem ontstaat wanneer de te meten spanning hoger is dan 5 volt. Dit kan worden opgelost met behulp van een spanningsdelerschakeling die bestaat uit 2 weerstanden die in serie zijn geschakeld zoals weergegeven. Het ene uiteinde van deze serieschakeling is verbonden met de te meten spanning (Vm) en het andere uiteinde met aarde. Op de kruising van twee weerstanden verschijnt een spanning (V1) die evenredig is met de gemeten spanning. Dit knooppunt kan vervolgens worden aangesloten op de analoge pin van de Arduino. De spanning kan worden gevonden met behulp van deze formule.

V1 = Vm * (R2/(R1+R2))

De spanning V1 wordt dan gemeten door de Arduino.

Stap 4: De spanningsdeler bouwen

De spanningsdeler bouwen
De spanningsdeler bouwen
De spanningsdeler bouwen
De spanningsdeler bouwen
De spanningsdeler bouwen
De spanningsdeler bouwen

Om deze spanningsdeler te bouwen, moeten we eerst de waarden van weerstanden achterhalen. Volg deze stappen om de waarde van weerstanden te berekenen.

  1. Bepaal de maximale spanning die gemeten moet worden.
  2. Bepaal een geschikte en standaardwaarde voor R1 in het kilo-ohm-bereik.
  3. Bereken R2 met behulp van de formule.
  4. Als de waarde van R2 geen standaardwaarde is (of in de buurt komt), verander dan R1 en herhaal de bovenstaande stappen.
  5. Aangezien Arduino maximaal 5V aankan, is V1 = 5V.

Stel bijvoorbeeld dat de maximaal te meten spanning (Vm) 12V is en R1 = 47 kilo-ohm. Dan komt het gebruik van de formule R2 uit op 33k.

Bouw nu een spanningsdelercircuit met behulp van deze weerstanden.

Met deze opstelling hebben we nu een boven- en ondergrens. Voor Vm = 12V krijgen we V1 = 5V en voor Vm = 0V krijgen we V1 = 0V. Dat wil zeggen, voor 0 tot 12V bij Vm zal er een proportionele spanning zijn van 0 tot 5V bij V1, die dan zoals voorheen in de Arduino kan worden ingevoerd.

Stap 5: De spanning aflezen

De spanning lezen
De spanning lezen
De spanning lezen
De spanning lezen

Met een kleine wijziging in de code kunnen we nu 0 tot 12V meten.

Analoge waarde wordt gelezen zoals eerder. Vervolgens wordt met dezelfde formule als eerder genoemd de spanning tussen 0 en 12V gemeten.

waarde = analoog lezen (A0);

spanning = waarde * (5,0/1023) * ((R1 + R2)/R2);

De algemeen verkrijgbare spanningssensormodules zijn niets anders dan een spanningsdelercircuit. Deze zijn geschikt voor 0 tot 25V met weerstanden van 30 kiloohm en 7,5 kilo-ohm.

Dus, waarom KOPEN, als je zelf kunt maken!

Bedankt voor het volhouden tot het einde. Ik hoop dat deze tutorial je zou hebben geholpen.

Abonneer je op mijn YouTube-kanaal voor meer aankomende projecten en tutorials. Nogmaals bedankt!

Aanbevolen: