Indholdsfortegnelse:

Arduino CAP-ESR-FREQ Meter: 6 trin
Arduino CAP-ESR-FREQ Meter: 6 trin

Video: Arduino CAP-ESR-FREQ Meter: 6 trin

Video: Arduino CAP-ESR-FREQ Meter: 6 trin
Video: Inductance meter with Arduino 2024, Juli
Anonim
Arduino CAP-ESR-FREQ måler
Arduino CAP-ESR-FREQ måler
Arduino CAP-ESR-FREQ måler
Arduino CAP-ESR-FREQ måler
Arduino CAP-ESR-FREQ måler
Arduino CAP-ESR-FREQ måler
Arduino CAP-ESR-FREQ måler
Arduino CAP-ESR-FREQ måler

CAP-ESR-FREQ måler med en Arduino Duemilanove.

I denne instruktive kan du finde alle nødvendige oplysninger om et måleinstrument baseret på en Arduino Duemilanove. Med dette instrument kan du måle tre ting: kondensatorværdier i nanofarader og mikrofarader, den tilsvarende seriemodstand (ESR -værdi) for en kondensator og sidst men ikke mindst frekvenser mellem 1 Herz og 3 MegaHerz. Alle tre designs er baseret på beskrivelser, jeg fandt på Arduino forum og på Hackerstore. Efter at have tilføjet nogle opdateringer kombinerede jeg dem til et instrument, der blev kontrolleret med kun et Arduino ino -program. De forskellige målere vælges via en trepositionskontakt S2, der er forbundet til ben A1, A2 og A3. ESR -nulstilling og nulstilling af måler foretages via en enkelt trykknap S3 på A4. Switch S1 er tænd/sluk -kontakten, der er nødvendig til 9 V DC batteristrøm, når måleren ikke er tilsluttet en pc via USB. Disse ben bruges til input: A0: esr -værdiindgang. A5: kondensatorindgang. D5: frekvens input.

Måleren bruger en Liquid Crystal Display (LCD) baseret på Hitachi HD44780 (eller et kompatibelt) chipsæt, som findes på de fleste tekstbaserede LCD'er. Biblioteket fungerer i 4- bit-tilstand (dvs. ved hjælp af 4 datalinjer ud over rs, enable og rw-kontrollinjer). Jeg startede dette projekt med en lcd med kun 2 datalinjer (SDA- og SCL I2C -forbindelser), men det kom desværre i konflikt med den anden software, jeg brugte til målerne. Først vil jeg forklare ham tre forskellige målere og til sidst samlevejledningen. Med hver type måler kan du også downloade den separate Arduino ino -fil, hvis du kun vil installere den specifikke type måler.

Trin 1: Kondensatormåleren

Kondensatormåleren
Kondensatormåleren
Kondensatormåleren
Kondensatormåleren

Den digitale kondensatormåler er baseret på et design fra Hackerstore. Måling af værdien af en kondensator:

Kapacitans er et mål for en kondensators evne til at lagre elektrisk ladning. Arduino -måleren er afhængig af den samme grundlæggende egenskab ved kondensatorer: tidskonstanten. Denne tidskonstant er defineret som den tid, det tager for spændingen over kondensatoren at nå 63,2% af dens spænding, når den er fuldt opladet. En Arduino kan måle kapacitans, fordi den tid, en kondensator tager at oplade, er direkte relateret til dens kapacitans ved ligningen TC = R x C. TC er kondensatorens tidskonstant (i sekunder). R er kredsløbets modstand (i ohm). C er kondensatorens kapacitans (i Farads). Formlen til at få kapacitansværdien i Farads er C = TC/R.

I denne måler kan R -værdien indstilles til kalibrering mellem 15 kOhm og 25 kOhm via potmeter P1. Kondensatoren oplades via pin D12 og aflades til en næste måling via pin D7. Den ladede spændingsværdi måles via pin A5. Den fulde analoge værdi på denne pin er 1023, så 63,2% repræsenteres med en værdi på 647. Når denne værdi er nået, beregner programmet kondensatorværdien baseret på den ovennævnte formel.

Trin 2: ESR -måleren

ESR -måleren
ESR -måleren

Se definition af ESR

Se det originale Arduino -forumemne https://forum.arduino.cc/index.php?topic=80357.0Tak til szmeu for starten af dette emne og mikanb for hans esr50_AutoRange -design. Jeg brugte dette design, herunder de fleste kommentarer og forbedringer til mit esr -målerdesign.

OPDATERING Maj 2021: Min ESR -måler opfører sig mærkeligt nogle gange. Jeg brugte meget tid på at finde årsagen (e), men fandt den ikke. At kontrollere de originale Arduino -forumsider som nævnt ovenfor kan være løsningen ….

Equivalent Series Resistance (ESR) er den interne modstand, der vises i serie med enhedens kapacitans. Det kan bruges til at finde defekte kondensatorer under reparationssessioner. Ingen kondensator er perfekt, og ESR kommer fra ledningerne, aluminiumsfolien og elektrolyttens modstand. Det er ofte en vigtig parameter i strømforsyningsdesign, hvor ESR for en udgangskondensator kan påvirke regulatorens stabilitet (dvs. få den til at svinge eller overreagerer på transienter i belastningen). Det er en af de ikke-ideelle egenskaber ved en kondensator, som kan forårsage en række ydelsesproblemer i elektroniske kredsløb. En høj ESR -værdi forringer ydelsen på grund af effekttab, støj og et højere spændingsfald.

Under testen føres en kendt strøm gennem kondensatoren i meget kort tid, så kondensatoren ikke oplades fuldstændigt. Strømmen producerer en spænding over kondensatoren. Denne spænding vil være produktet af strømmen og ESR for kondensatoren plus en ubetydelig spænding på grund af den lille ladning i kondensatoren. Da strømmen er kendt, beregnes ESR -værdien ved at dividere den målte spænding med strømmen. Resultaterne vises derefter på måledisplayet. Teststrømmene genereres via transistorer Q1 og Q2, deres værdier er 5mA (indstilling for højt område) og 50mA, (lavt områdeindstilling) via R4 og R6. Udladning sker via transistor Q3. Kondensatorspændingen måles via analog indgang A0.

Trin 3: Frekvensmåleren

Frekvensmåleren
Frekvensmåleren

Se for de originale data Arduino -forummet: https://forum.arduino.cc/index.php? Topic = 324796.0#main_content_section. Tak til arduinoaleman for hans flotte design af frekvensmålere.

Frekvens -tælleren fungerer som følger: 16 -bit timeren/tælleren1 optæller alle ure, der kommer ind fra pin D5. Timer/Counter2 genererer en afbrydelse hvert millisekund (1000 gange i sekundet). Hvis der er et overløb i Timer/Counter1, øges overflow_counter med en. Efter 1000 afbrydelser (= nøjagtigt et sekund) multipliceres antallet af overløb med 65536 (det er når tælleren flyder over). I cyklus 1000 tilføjes den aktuelle værdi af tælleren, hvilket giver dig det samlede antal urflåter, der kom ind i løbet af det sidste sekund. Og det svarer til den frekvens, du ønskede at måle (frekvens = ure pr. Sekund). Proceduremåling (1000) sætter tællerne op og initialiserer dem. Derefter venter en WHILE -sløjfe, indtil afbrydelses -servicerutinen sætter måling_klar til SAND. Dette er præcis efter 1 sekund (1000 ms eller 1000 afbrydelser). For hobbyfolk fungerer denne frekvensmåler meget godt (bortset fra lavere frekvenser kan du få 4 eller 5 cifret nøjagtighed). Især med højere frekvenser bliver tælleren meget præcis. Jeg har besluttet at vise kun 4 cifre. Du kan dog justere det i LCD -udgangssektionen. Du skal bruge D5 -pin på Arduino som frekvensindgang. Dette er en forudsætning for at bruge 16bit -timeren/tælleren1 i ATmega -chippen. (tjek venligst Arduino -stiften for andre tavler). For at måle analoge signaler eller lavspændingssignaler tilføjes en forforstærker med en forforstærker-transistor BC547 og en blokpulsformning (Schmitt-trigger) med en 74HC14N IC.

Trin 4: Komponentmonteringen

Komponentmonteringen
Komponentmonteringen
Komponentmonteringen
Komponentmonteringen
Komponentmonteringen
Komponentmonteringen

ESR- og CAP -kredsløbene er monteret på et stykke perfboard med huller på 0,1 tommer. FREQ kredsløbet er monteret på et separat perfboard (dette kredsløb blev tilføjet senere). Til de kabelforbundne forbindelser bruges hanhoveder. LCD -skærmen er monteret i boksens topdæksel sammen med ON/OFF -kontakten. (Og en ekstra switch til fremtidige opdateringer). Layoutet blev lavet på papir (meget lettere end at bruge Fritzing eller andre designprogrammer). Dette papirlayout blev senere også brugt til at kontrollere det virkelige kredsløb.

Trin 5: Boksamlingen

Boksenheden
Boksenheden
Boksenheden
Boksenheden
Boksenheden
Boksenheden

En sort plastkasse (dimensioner BxDxH 120x120x60 mm) blev brugt til at montere alle komponenter og begge printkort. Arduino, perfboard kredsløb og batteriholder er monteret på en 6 mm træ monteringsplade for nem montering og lodning. På denne måde kan alt samles, og når det er færdigt, kan det placeres inde i kassen. Under kredsløbskortene og Arduino -nylonafstandsstykkerne blev brugt til at forhindre, at brædderne bøjede sig.

Trin 6: Den sidste ledning

Den sidste ledning
Den sidste ledning
Den sidste ledning
Den sidste ledning

Endelig loddes alle interne kabelforbindelser. Da dette var afsluttet, testede jeg esr -switch -transistorer via testforbindelserne T1, T2 og T3 i ledningsdiagrammet. Jeg skrev et lille testprogram for at ændre de tilsluttede udgange D8, D9 og D10 fra HIGH til LOW hvert sekund og tjekkede dette på tilslutningerne T1, T2 og T3 med et oscilloskop. For at forbinde kondensatorerne under test var der et par korte testledninger lavet med krokodilleklipforbindelser.

Til frekvensmåling kan længere testledninger bruges.

God test!

Anbefalede: