Innehållsförteckning:

Spänningsmätning med Arduino: 5 steg
Spänningsmätning med Arduino: 5 steg

Video: Spänningsmätning med Arduino: 5 steg

Video: Spänningsmätning med Arduino: 5 steg
Video: Använda Melexis MLX90614 Infraröd termometer med Arduino 2024, November
Anonim
Image
Image
Spänningsmätning med Arduino
Spänningsmätning med Arduino

Att mäta spänning är ganska enkelt med alla mikrokontroller jämfört med mätning av ström. Det är nödvändigt att mäta spänningar om du arbetar med batterier eller om du vill skapa en egen justerbar strömförsörjning. Även om denna metod gäller för alla uC, men i den här självstudien kommer vi att lära oss hur man mäter spänning med Arduino.

Det finns spänningssensorer tillgängliga på marknaden. Men behöver du verkligen dem? Låt oss ta reda på!

Steg 1: Grunderna

Grunderna
Grunderna
Grunderna
Grunderna
Grunderna
Grunderna

En mikrokontroller kan inte förstå analog spänning direkt. Det är därför vi måste använda en analog till digital omvandlare eller ADC i korthet. Atmega328 som är hjärnan i Arduino Uno har 6 kanaler (markerad som A0 till A5), 10-bitars ADC. Detta betyder att den kommer att kartlägga ingångsspänningar från 0 till 5V till heltalsvärden från 0 till (2^10-1) dvs lika med 1023 vilket ger en upplösning på 4,9mV per enhet. 0 kommer att motsvara 0V, 1 till 4,9mv, 2 till 9,8mV och så vidare till 1023.

Steg 2: Mätning 0-5V

Mäter 0-5V
Mäter 0-5V
Mäter 0-5V
Mäter 0-5V
Mäter 0-5V
Mäter 0-5V
Mäter 0-5V
Mäter 0-5V

Först ska vi se hur man mäter spänning med en maximal spänning på 5V. Detta är mycket enkelt eftersom inga speciella ändringar krävs. För att simulera den varierande spänningen kommer vi att använda en potentiometer vars mittstift är ansluten till någon av de 6 kanalerna. Vi kommer nu att skriva koden för att läsa värdena från ADC och konvertera dem tillbaka till användbara spänningsavläsningar.

Läser den analoga stift A0

värde = analogRead (A0);

Nu innehåller variabeln 'värde' ett värde mellan 0 och 1023 beroende på spänningen.

spänning = värde * 5,0/1023;

Det erhållna värdet multipliceras nu med upplösningen (5/1023 = 4,9mV per enhet) för att få den faktiska spänningen.

Och slutligen, visa den uppmätta spänningen på seriemonitorn.

Serial.print ("Spänning =");

Serial.println (spänning);

Steg 3: Mät spänning över 5V

Mätspänning över 5V
Mätspänning över 5V

Men problemet uppstår när spänningen som ska mätas överstiger 5 volt. Detta kan lösas med en spänningsdelarkrets som består av 2 motstånd som är seriekopplade enligt bilden. Ena änden av denna seriekoppling är ansluten till spänningen som ska mätas (Vm) och den andra änden till marken. En spänning (V1) proportionell mot den uppmätta spänningen kommer att visas vid korsningen mellan två motstånd. Denna korsning kan sedan anslutas till den analoga stiftet på Arduino. Spänningen kan hittas med hjälp av denna formel.

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

Spänningen V1 mäts sedan av Arduino.

Steg 4: Bygga spänningsdelaren

Bygga spänningsdelaren
Bygga spänningsdelaren
Bygga spänningsdelaren
Bygga spänningsdelaren
Bygga spänningsdelaren
Bygga spänningsdelaren

Nu för att bygga denna spänningsdelare måste vi först ta reda på värdena för motstånd. Följ dessa steg för att beräkna värdet på motstånd.

  1. Bestäm den maximala spänningen som ska mätas.
  2. Bestäm ett lämpligt och standardvärde för R1 i kilo-ohm-intervall.
  3. Beräkna R2 med hjälp av formel.
  4. Om värdet på R2 inte är (eller nära) ett standardvärde ändrar du R1 och upprepar ovanstående steg.
  5. Eftersom Arduino kan hantera maximalt 5V är V1 = 5V.

Till exempel, låt den maximala spänningen (Vm) som ska mätas vara 12V och R1 = 47 kilo-ohm. Då kommer formeln R2 att vara lika med 33k.

Bygg nu en spänningsdelare med dessa motstånd.

Med denna inställning har vi nu en övre och nedre gräns. För Vm = 12V får vi V1 = 5V och för Vm = 0V får vi V1 = 0V. Det vill säga för 0 till 12V vid Vm kommer det att finnas en proportionell spänning från 0 till 5V vid V1 som sedan kan matas in i Arduino som tidigare.

Steg 5: Läs av spänningen

Läser spänningen
Läser spänningen
Läser spänningen
Läser spänningen

Med en liten ändring i koden kan vi nu mäta 0 till 12V.

Analogt värde läses som tidigare. Sedan mäts spänningen mellan 0 och 12V med samma formel som nämnts tidigare.

värde = analogRead (A0);

spänning = värde * (5,0/1023) * ((R1 + R2)/R2);

De vanligt tillgängliga spänningssensormodulerna är bara en spänningsdelare. Dessa är klassade för 0 till 25V med 30 kiloohm och 7,5 kilo-ohm motstånd.

Så, varför köpa, när du kan göra själv!

Tack för att du håller fast till slutet. Jag hoppas att denna handledning skulle ha hjälpt dig.

Prenumerera på min YouTube -kanal för fler kommande projekt och självstudier. Tack igen!

Rekommenderad: