Hvordan lese spenning i Arduino

Hvordan lese spenning i Arduino
Les analog spenning er en teknikk som vi kan lese det analoge signalet om spenning fra de analoge I/O -pinnene til Arduino. Analoge signaler er kontinuerlige signaler som varierer med tiden som menneskelige lyder og AC (vekselstrøm) spenning.

I denne oppskrivningen vil vi diskutere et eksempel for å forklare hvordan den analoge spenningen blir lest av analograad () -funksjonen.

Hvordan lese analog spenning på Arduino

I Arduino er det spesifiserte analoge I/O -pinner, for eksempel vurderer vi et Arduino Uno -brett, som har seks pinner for analog inngang, A0 til A5. Disse pinnene brukes til å ta de analoge signalene, og deretter konverteres disse signalene til digitale signaler ved hjelp av ADC (analog til digital omformer). ADC -kretsen er som standard innebygd på et Arduino -brett, denne kretsen konverterer det analoge signalet til digital, for eksempel, hvis spenningen er 0 volt, konverteres den til 0 -verdi og hvis inngangsspenningen over pinnen er 5 volt, den konverteres til 1023 -verdien av digital.

Eksempel på analograad () i Arduino

Vi vil prøve å forklare prosessen med å lese analoge signaler ved hjelp av et eksempel, vi vil variere en spenning ved hjelp av et potensiometer og lese utgangen på seriemonitoren og seriell plotter. For dette formålet trenger vi følgende komponenter:

  • Brødbrett
  • Koble til ledninger
  • Potensiometer

Vi vil koble det ene benet av potensiometeret med 5 volt og det andre endebenet med bakken, midtbenet på potensiometer. Kretsdiagrammet vil være slik:

Vi vil åpne IDE og skrive inn følgende Arduino -kode for å lese den analoge spenningen ved å bruke ovennevnte potensiometer:

void setup ()
Serie.Begynn (9600);

void loop ()
int i = analograad (A4);
Serie.println (in);
forsinkelse (1000);

Forklaring til kode: I ovennevnte kode, i Loop -delen, erklærer vi en variabel "i" av heltalldatatype og lagrer verdien av analograad () -funksjonen som tok innspill fra pinne A4 av Arduino. Så ved hjelp av println () skriver vi ut den analoge verdien konvertert til digital gjennom seriell kommunikasjon med en baud rate på 9600. Vi genererer en forsinkelse på ett sekund mellom hver iterasjon. Seriell monitorutgangen er:

Vi kan også visualisere resultatet ovenfor på seriell plotter:

Maskinvarekonfigurasjonen til kretsen er:

Konklusjon

Vi kan lese de analoge spenningssignalene fra de analoge I/O -pinnene til Arduino -brettet, og denne inngangen konverteres til de digitale verdiene ved hjelp av ADC. I denne oppskrivningen har vi vist et eksempel på å lese analog spenningsinngang og visualisert resultatene på en seriell skjerm samt en seriell plotter.