- Komponenter, der kræves
- Beregning af frekvens og induktans
- Kredsløbsdiagram og forklaring
- Programmering Forklaring
Alle indlejrede elskere er fortrolige med multimeter, hvilket er et godt værktøj til at måle spænding, strøm, modstand osv. Et multimeter kan nemt måle dem. Men nogle gange er vi nødt til at måle induktans og kapacitans, hvilket ikke er muligt med et normalt multimeter. Der er nogle specielle multimetre, der kan måle induktans og kapacitans, men de er dyre. Vi har allerede bygget frekvensmåler, kapacitansmåler og modstandsmåler ved hjælp af Arduino. Så i dag skal vi lave et induktans LC Meter ved hjælp af Arduino. I dette projekt vil vi vise induktans- og kapacitansværdier sammen med frekvensen over 16x2 LCD-display. En trykknap er givet i kredsløbet for at skifte mellem kapacitans og induktansvisning.
Komponenter, der kræves
- Arduino Uno
- 741 opamp IC
- 3v batteri
- 100 ohm modstand
- Kondensatorer
- Spoler
- 1n4007-diode
- 10k modstand
- 10 k gryde
- Strømforsyning
- Trykknap
- Brødbræt eller PCB
- Tilslutning af ledninger
Beregning af frekvens og induktans
I dette projekt skal vi måle induktans og kapacitans ved hjælp af et LC-kredsløb parallelt. Dette kredsløb er ligesom en ring eller en klokke, der begynder at resonere med en bestemt frekvens. Når vi anvender en puls, begynder dette LC-kredsløb at resonere, og denne resonansfrekvens er i form af analog (sinusformet bølge), så vi er nødt til at konvertere den til en squire-bølge. For at gøre dette anvender vi denne analoge resonansfrekvens på opamp (741 i vores tilfælde), der konverterer den i squire-bølge (frekvens) ved 50% af driftscyklussen. Nu måler vi frekvensen ved hjælp af Arduino, og ved hjælp af en matematisk beregning kan vi finde induktansen eller kapacitansen. Vi har brugt den givne LC-kredsløbsfrekvensresponsformel.
f = 1 / (2 * tid)
hvor tiden er produktion af pulseIn () funktion
nu har vi LC kredsløb Frekvens:
f = 1/2 * Pi * kvadratroden af (LC)
vi kan løse det for at få induktans:
f 2 = 1 / (4Pi 2 LC) L = 1 / (4Pi 2 f 2 C) L = 1 / (4 * Pi * Pi * f * f * C)
Som vi allerede har nævnt, at vores bølge er sinusformet bølge, så den har samme tidsperiode i både positiv og negativ amplitude. Dens betyder, at komparatoren konverterer det til firkantbølge med en 50% -cyklus. Så vi kan måle det ved hjælp af pulseIn () - funktionen af Arduino. Denne funktion giver os en tidsperiode, som let kan konverteres til en frekvens ved at invertere tidsperioden. Da pulseIn- funktionen kun måler en puls, så for at få den korrekte frekvens skal vi gange den med til 2. Nu har vi en frekvens, der kan konverteres til induktans ved hjælp af ovenstående formel.
Bemærk: Under måling af induktans (L1) skal kondensator (C1) -værdien være 0,1 uF, og mens måling af kapacitans (C1) skal induktor (L1) -værdien være 10mH.
Kredsløbsdiagram og forklaring
I dette LC Meter kredsløbsdiagram har vi brugt Arduino til at styre projektets drift. I dette har vi brugt et LC-kredsløb. Dette LC-kredsløb består af en induktor og en kondensator. For at konvertere sinusformet resonansfrekvens til digital eller firkantbølge har vi brugt operationsforstærker nemlig 741. Her skal vi anvende negativ forsyning til op-amp for at få nøjagtig udgangsfrekvens. Så vi har brugt et 3v-batteri tilsluttet i omvendt polaritet, hvilket betyder, at 741 negativ pin er forbundet til batteriets negative terminal, og at den positive pin på batteriet er forbundet til jorden af det resterende kredsløb. For mere præcisering se kredsløbsdiagrammet nedenfor.
Her har vi en trykknap for at ændre driftsformen, uanset om vi måler induktans eller kapacitans. En 16x2 LCD bruges til at vise induktans eller kapacitans med frekvensen af LC-kredsløbet. En 10k pot bruges til at kontrollere lysstyrken på LCD'et. Kredsløbet er drevet ved hjælp af Arduino 5v forsyning, og vi kan strømforsyne Arduino med 5v ved hjælp af USB eller 12v adapter.
Programmering Forklaring
Programmeringsdelen af dette LC Meter-projekt er meget let. Komplet Arduino- kode gives i slutningen af denne artikel.
Først skal vi medtage bibliotek til LCD og erklære nogle stifter og makroer.
#omfatte
Efter det, i setup -funktionen har vi initialiseret LCD og seriel kommunikation for at vise målte værdier over LCD og seriel skærm.
ugyldig opsætning () { #ifdef seriel Serial.begin (9600); #endif lcd.begin (16, 2); pinMode (freqIn, INPUT); pinMode (opladning, OUTPUT); pinMode (tilstand, INPUT_PULLUP); lcd.print ("LC Meter Brug"); lcd.setCursor (0, 1); lcd.print ("Arduino"); forsinkelse (2000); lcd.clear (); lcd.print ("Circuit Digest"); forsinkelse (2000); }
Derefter anvender en sløjfefunktion en puls med en fast tidsperiode på LC-kredsløbet, der oplader LC-kredsløbet. Efter fjernelse af puls begynder LC-kredsløb at resonere. Derefter læser vi dens firkantbølgekonvertering, der kommer fra op-amp, ved hjælp af pulseIn () -funktionen og konverterer det ved at gange med 2. Her har vi også taget nogle prøver af dette. Sådan beregnes frekvensen:
ugyldig sløjfe () { for (int i = 0; i
Efter at have fået frekvensværdi, har vi konverteret dem til induktans ved hjælp af et givet stykke kode
kapacitans = 0,1E-6; induktans = (1. / (kapacitans * frekvens * frekvens * 4. * 3.14159 * 3.14159)) * 1.E6; #ifdef serielt Serial.print ("Ind:"); hvis (induktans> = 1000) { Serial.print (induktans / 1000); Serial.println ("mH"); } andet { Serial.print (induktans); Serial.println ("uH"); } #endif lcd.setCursor (0, 1); lcd.print ("Ind:"); hvis (induktans> = 1000) { lcd.print (induktans / 1000); lcd.print ("mH"); } andet { lcd.print (induktans); lcd.print ("uH"); } }
Og ved at bruge en given kode beregnede vi kapacitans.
hvis (Bit.flag) { induktans = 1.E-3; kapacitans = ((1. / (induktans * frekvens * frekvens * 4. * 3.14159 * 3.14159)) * 1.E9); hvis ((int) kapacitans <0) kapacitans = 0; #ifdef serial Serial.print ("Capacitance:"); Serial.print (kapacitans, 6); Serial.println ("uF"); #endif lcd.setCursor (0, 1); lcd.print ("Cap:"); hvis (kapacitans> 47) { lcd.print ((kapacitans / 1000)); lcd.print ("uF"); } andet { lcd.print (kapacitans); lcd.print ("nF"); } }
Så det er sådan, vi beregnede frekvens, kapacitans og induktans ved hjælp af Arduino og viste det på 16x2 LCD.