Innehållsförteckning:

Arduino CAP-ESR-FREQ-mätare: 6 steg
Arduino CAP-ESR-FREQ-mätare: 6 steg

Video: Arduino CAP-ESR-FREQ-mätare: 6 steg

Video: Arduino CAP-ESR-FREQ-mätare: 6 steg
Video: DIY Capacitor Meter | 555 IC Measures Capacitance!! 2024, November
Anonim
Arduino CAP-ESR-FREQ-mätare
Arduino CAP-ESR-FREQ-mätare
Arduino CAP-ESR-FREQ-mätare
Arduino CAP-ESR-FREQ-mätare
Arduino CAP-ESR-FREQ-mätare
Arduino CAP-ESR-FREQ-mätare
Arduino CAP-ESR-FREQ-mätare
Arduino CAP-ESR-FREQ-mätare

CAP-ESR-FREQ-mätare med en Arduino Duemilanove.

I denna instruktör kan du hitta all nödvändig information om ett mätinstrument baserat på en Arduino Duemilanove. Med detta instrument kan du mäta tre saker: kondensatorvärden i nanofarader och mikrofarader, motsvarande seriemotstånd (ESR -värde) för en kondensator och sist men inte minst frekvenser mellan 1 Herz och 3 MegaHerz. Alla tre mönster är baserade på beskrivningar jag hittade på Arduino -forumet och på Hackerstore. Efter att ha lagt till några uppdateringar kombinerade jag dem till ett instrument, styrt med bara ett Arduino ino -program. De olika mätarna väljs via en trelägesväljare S2, ansluten till stiften A1, A2 och A3. ESR -nollställning och återställning av mätare görs via en enda tryckknapp S3 på A4. Strömbrytare S1 är strömbrytaren PÅ/AV, behövs för 9 V DC batteri när mätaren inte är ansluten till en dator via USB. Dessa stift används för ingång: A0: ingång esr -värde. A5: kondensatoringång. D5: frekvens inmatning.

Mätaren använder en Liquid Crystal Display (LCD) baserad på Hitachi HD44780 (eller en kompatibel) chipset, som finns på de flesta textbaserade LCD-skärmar. Biblioteket fungerar i 4- bitars läge (dvs med hjälp av 4 datarader utöver rs, enable och rw kontrollinjer). Jag startade detta projekt med en LCD -skärm med endast 2 datalinjer (SDA- och SCL I2C -anslutningar) men tyvärr kom det i konflikt med den andra programvaran jag använde för mätarna. Först ska jag förklara tre olika mätare och slutligen monteringsanvisningarna. Med varje typ av mätare kan du också ladda ner den separata Arduino ino -filen om du bara vill installera den specifika mätartypen.

Steg 1: Kondensatormätaren

Kondensatormätaren
Kondensatormätaren
Kondensatormätaren
Kondensatormätaren

Den digitala kondensatormätaren är baserad på en design från Hackerstore. Mätning av värdet på en kondensator:

Kapacitans är ett mått på kondensatorns förmåga att lagra elektrisk laddning. Arduino -mätaren förlitar sig på samma grundläggande egenskap hos kondensatorer: tidskonstanten. Denna tidskonstant definieras som den tid det tar för spänningen över kondensatorn att nå 63,2% av dess spänning när den är fulladdad. En Arduino kan mäta kapacitans eftersom den tid en kondensator tar att ladda är direkt relaterad till dess kapacitans med ekvationen TC = R x C. TC är kondensatorens tidskonstant (i sekunder). R är kretsens motstånd (i ohm). C är kondensatorns kapacitans (i Farads). Formeln för att få kapacitansvärdet i Farads är C = TC/R.

I denna mätare kan R -värdet ställas in för kalibrering mellan 15 kOhm och 25 kOhm via potmeter P1. Kondensatorn laddas via stift D12 och urladdas för nästa mätning via stift D7. Det laddade spänningsvärdet mäts via stift A5. Det fullständiga analoga värdet på denna pin är 1023, så 63,2% representeras av ett värde på 647. När detta värde har uppnåtts beräknar programmet kondensatorns värde baserat på ovan nämnda formel.

Steg 2: ESR -mätaren

ESR -mätaren
ESR -mätaren

Se definitionen av ESR

Se det ursprungliga ämnet på Arduino -forumet https://forum.arduino.cc/index.php?topic=80357.0Tack till szmeu för starten av detta ämne och mikanb för hans esr50_AutoRange -design. Jag använde denna design inklusive de flesta kommentarer och förbättringar för min esr -mätardesign.

UPPDATERING Maj 2021: Min ESR -mätare beter sig konstigt ibland. Jag spenderade mycket tid på att hitta orsakerna men hittade det inte. Att kontrollera de ursprungliga Arduino -forumsidorna som nämnts ovan kan vara lösningen ….

Equivalent Series Resistance (ESR) är det interna motståndet som visas i serie med enhetens kapacitans. Den kan användas för att hitta defekta kondensatorer under reparationssessioner. Ingen kondensator är perfekt och ESR kommer från ledningarna, aluminiumfolien och elektrolyten. Det är ofta en viktig parameter i strömförsörjningsdesign där ESR för en utgångskondensator kan påverka regulatorns stabilitet (dvs få den att svänga eller överreagera på transienter i lasten). Det är en av de icke-idealiska egenskaperna hos en kondensator som kan orsaka olika prestandaproblem i elektroniska kretsar. Ett högt ESR -värde försämrar prestandan på grund av effektförluster, brus och ett högre spänningsfall.

Under testet förs en känd ström genom kondensatorn under en mycket kort tid så att kondensatorn inte laddas helt. Strömmen producerar en spänning över kondensatorn. Denna spänning kommer att vara produkten av strömmen och ESR för kondensatorn plus en försumbar spänning på grund av den lilla laddningen i kondensatorn. Eftersom strömmen är känd beräknas ESR -värdet genom att dividera den uppmätta spänningen med strömmen. Resultaten visas sedan på mätardisplayen. Testströmmarna genereras via transistorerna Q1 och Q2, deras värden är 5mA (inställning för högt område) och 50mA, (inställning för lågt område) via R4 och R6. Urladdning sker via transistorn Q3. Kondensatorns spänning mäts via analog ingång A0.

Steg 3: Frekvensmätaren

Frekvensmätaren
Frekvensmätaren

Se för originaldata Arduino -forumet: https://forum.arduino.cc/index.php? Topic = 324796.0#main_content_section. Tack till arduinoaleman för hans fantastiska frekvensmätardesign.

Frekvensräknaren fungerar enligt följande: 16 -bitars timer/räknare1 lägger till alla klockor som kommer in från stift D5. Timer/Counter2 genererar ett avbrott varje millisekund (1000 gånger per sekund). Om det finns ett överflöd i Timer/Counter1, ökar overflow_counter med en. Efter 1000 avbrott (= exakt en sekund) multipliceras antalet överflöden med 65536 (detta är när räknaren flyter över). I cykel 1000 kommer det aktuella värdet på räknaren att läggas till, vilket ger dig det totala antalet klockfickor som kom in under den sista sekunden. Och detta motsvarar frekvensen du ville mäta (frekvens = klockor per sekund). Procedurmätningen (1000) ställer in räknarna och initierar dem. Därefter väntar en WHILE -slinga tills avbrottservicerutinen ställer in mått_redo till TRUE. Detta är exakt efter 1 sekund (1000 ms eller 1000 avbrott). För hobbyister fungerar denna frekvensräknare mycket bra (bortsett från lägre frekvenser kan du få 4 eller 5 -siffrig noggrannhet). Särskilt med högre frekvenser blir räknaren väldigt exakt. Jag har bestämt mig för att bara visa 4 siffror. Du kan dock justera det i LCD -utmatningsdelen. Du måste använda D5 -stift på Arduino som frekvensingång. Detta är en förutsättning för att använda 16 -bitars Timer/Counter1 på ATmega -chipet. (kolla Arduino -stiftet för andra brädor). För att mäta analoga signaler eller lågspänningssignaler läggs en förförstärkare till med en förförstärkartransistor BC547 och en blockpulsformare (Schmitt-trigger) med en 74HC14N IC.

Steg 4: Komponentmonteringen

Komponenterna
Komponenterna
Komponenterna
Komponenterna
Komponenterna
Komponenterna

ESR- och CAP -kretsarna är monterade på ett stycke perfboard med hål på 0,1 tum avstånd. FREQ -kretsen är monterad på en separat perfboard (denna krets lades till senare). För de trådbundna anslutningarna används manliga rubriker. LCD -skärmen är monterad i den övre luckan på lådan, tillsammans med ON/OFF -omkopplaren. (Och en extra switch för framtida uppdateringar). Layouten gjordes på papper (mycket enklare än att använda Fritzing eller andra designprogram). Denna papperslayout användes senare också för att kontrollera den verkliga kretsen.

Steg 5: Boxenheten

Boxenheten
Boxenheten
Boxenheten
Boxenheten
Boxenheten
Boxenheten

En svart plastlåda (mått BxDxH 120x120x60 mm) användes för att montera alla komponenter och båda kretskorten. Arduino, perfboard -kretsarna och batterihållaren är monterade på en 6 mm trämonteringsplatta för enkel montering och lödning. På detta sätt kan allt sättas ihop och när det är klart kan det placeras inuti lådan. Under kretskorten och Arduino nylon distanser användes för att förhindra att brädorna böjs.

Steg 6: Den slutliga ledningen

Den sista ledningen
Den sista ledningen
Den sista ledningen
Den sista ledningen

Slutligen löds alla interna trådanslutningar. När detta var klart testade jag esr -omkopplingstransistorerna, via testanslutningarna T1, T2 och T3 i kopplingsschemat. Jag skrev ett litet testprogram för att ändra de anslutna utgångarna D8, D9 och D10 från HIGH till LOW varje sekund och kollade detta på anslutningarna T1, T2 och T3 med ett oscilloskop. För att ansluta kondensatorerna under testet var ett par korta testledningar gjord med krokodilklämförbindelser.

För frekvensmätning kan längre testledningar användas.

Glad testning!

Rekommenderad: