- Komponenter krävs
- Beräkning av frekvens och induktans
- Kretsschema och förklaring
- Programmeringsförklaring
Alla inbäddade älskare är bekanta med multimeter vilket är ett utmärkt verktyg för att mäta spänning, ström, motstånd etc. En multimeter kan enkelt mäta dem. Men ibland måste vi mäta induktans och kapacitans, vilket inte är möjligt med en vanlig multimeter. Det finns några speciella multimetrar som kan mäta induktans och kapacitans men de är kostsamma. Vi har redan byggt frekvensmätare, kapacitansmätare och motståndsmätare med Arduino. Så idag ska vi göra en induktans LC-mätare med Arduino. I det här projektet visar vi induktans- och kapacitansvärdena tillsammans med frekvensen över 16x2 LCD-skärm. En tryckknapp ges i kretsen för att växla mellan kapacitans och induktansvisning.
Komponenter krävs
- Arduino Uno
- 741 opamp IC
- 3v batteri
- 100 ohm motstånd
- Kondensatorer
- Induktorer
- 1n4007-diod
- 10k motstånd
- 10k kruka
- Strömförsörjning
- Tryckknapp
- Brödbräda eller kretskort
- Anslutande ledningar
Beräkning av frekvens och induktans
I det här projektet ska vi mäta induktans och kapacitans genom att använda en LC-krets parallellt. Denna krets är som en ring eller klocka som börjar resonera vid viss frekvens. Närhelst vi applicerar en puls kommer denna LC-krets att börja resonera och den här resonansfrekvensen är i form av analog (sinusformad våg) så vi måste konvertera den till en våg. För att göra detta tillämpar vi denna analoga resonansfrekvens på opamp (741 i vårt fall) som kommer att konvertera den i squire wave (frekvens) vid 50% av arbetscykeln. Nu mäter vi frekvensen med hjälp av Arduino och med hjälp av någon matematisk beräkning kan vi hitta induktansen eller kapacitansen. Vi har använt den givna LC-kretsens frekvenssvarformel.
f = 1 / (2 * tid)
där tiden matas ut från pulseIn () -funktionen
nu har vi LC-kretsfrekvens:
f = 1/2 * Pi * kvadratrot av (LC)
vi kan lösa det för att 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 redan nämnde att vår våg är sinusformad våg så har den samma tidsperiod i både positiv och negativ amplitud. Det betyder att komparatorn kommer att konvertera den till fyrkantig våg med en 50% arbetscykel. Så att vi kan mäta det med hjälp av pulseIn () -funktionen i Arduino. Denna funktion ger oss en tidsperiod som lätt kan omvandlas till en frekvens genom att invertera tidsperioden. Som pulseIn- funktion mäter bara en puls, så nu för att få rätt frekvens måste vi multiplicera den med till 2. Nu har vi en frekvens som kan omvandlas till induktans med formeln ovan.
Obs: vid mätning av induktans (L1) ska kondensatorns (C1) värde vara 0,1uF och vid mätning av kapacitans (C1) bör induktans (L1) -värdet vara 10mH.
Kretsschema och förklaring
I detta kretsschema för LC-mätare har vi använt Arduino för att styra projektets funktion. I detta har vi använt en LC-krets. Denna LC-krets består av en induktor och en kondensator. För att konvertera sinusformad resonansfrekvens till digital eller fyrkantig våg har vi använt operationsförstärkare, nämligen 741. Här måste vi använda negativ matning till op-amp för att få exakt utfrekvens. Så vi har använt ett 3v-batteri anslutet i omvänd polaritet, vilket betyder att 741 negativt stift är anslutet till batteriets negativa uttag och att det positiva stiftet på batteriet är anslutet till jorden på den återstående kretsen. För mer förtydligande se kretsschemat nedan.
Här har vi en tryckknapp för att ändra driftsättet oavsett om vi mäter induktans eller kapacitans. En 16x2 LCD används för att visa induktans eller kapacitans med frekvensen för LC-kretsen. En 10k-kruka används för att styra LCD-skärmens ljusstyrka. Kretsen drivs med hjälp av Arduino 5v-försörjning och vi kan driva Arduino med 5v med USB- eller 12v-adapter.
Programmeringsförklaring
Programmeringsdelen av detta LC Meter-projekt är mycket lätt. Komplett Arduino- kod ges i slutet av denna artikel.
Först måste vi inkludera bibliotek för LCD och deklarera några stift och makron.
#omfatta
Efter det, i installationsfunktionen har vi initierat LCD- och seriekommunikation för att visa uppmätta värden över LCD och seriell bildskärm.
ogiltig installation () { #ifdef seriell Serial.begin (9600); #endif lcd.begin (16, 2); pinMode (freqIn, INPUT); pinMode (laddning, UTGÅNG); pinMode (läge, INPUT_PULLUP); lcd.print ("LC Meter använder"); lcd.setCursor (0, 1); lcd.print ("Arduino"); fördröjning (2000); lcd.clear (); lcd.print ("Circuit Digest"); fördröjning (2000); }
Sedan i loop funktion, tillämpa en puls av en tidsperiod för att LC-kretsen fast som debiterar LC-kretsen. Efter avlägsnande av puls börjar LC-kretsen resonera. Sedan läser vi dess fyrkantvågskonvertering, kommer från op-amp, genom att använda pulseIn () -funktionen och konverterar den genom att multiplicera med 2. Här har vi tagit några prover av detta också. Så beräknas frekvensen:
ogiltig slinga () { för (int i = 0; i
Efter att ha fått frekvensvärde har vi konverterat dem till induktans med hjälp av en viss kod
kapacitans = 0,1E-6; induktans = (1. / (kapacitans * frekvens * frekvens * 4. * 3.14159 * 3.14159)) * 1.E6; #ifdef seriell Serial.print ("Ind:"); if (induktans> = 1000) { Serial.print (induktans / 1000); Serial.println ("mH"); } annat { Serial.print (induktans); Serial.println ("uH"); } #endif lcd.setCursor (0, 1); lcd.print ("Ind:"); if (induktans> = 1000) { lcd.print (induktans / 1000); lcd.print ("mH"); } annat { lcd.print (induktans); lcd.print ("uH"); } }
Och genom att använda given kod beräknade vi kapacitans.
if (Bit.flag) { induktans = 1.E-3; kapacitans = ((1. / (induktans * frekvens * frekvens * 4. * 3.14159 * 3.14159)) * 1.E9); om ((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:"); if (kapacitans> 47) { lcd.print ((kapacitans / 1000)); lcd.print ("uF"); } annat { lcd.print (kapacitans); lcd.print ("nF"); } }
Så här beräknade vi frekvens, kapacitans och induktans med Arduino och visade det på 16x2 LCD.