<< Zpět

   

RCLmeter

Měřič odporů, kondenzátorů, cívek, ESR, napětí a indikátor zkratů, s automatickou změnou rozsahů.

RCLmeter je řízen procesorem ATmega8. Obsahuje 3 na sobě nezávislé měřiče. RC měřič měří odpor, kapacitu a ESR, metodou měření nabíjecí a vybíjecí konstanty RC obvodu. K měření používá 8 přesných referenčních odporů a měření napětí ADC převodníkem. Měříč indukčnosti používá rezonanční LC obvod s obvodem LM311D, jehož frekvenci měří procesor a převádí ji na indukčnost. Třetím měřičem je měření napětí ADC převodníkem. Měření napětí je pouze pomocná funkce a slouží k měření zbytkového napětí na kondenzátoru připojenému k vybíjecímu vstupu (kondenzátor měřený na RC vstupu musí být předem vybitý přes vybíjecí vstup U).

Přesnost měření ESR je pouze orientační, pro porovnání kvality kondenzátorů (přesné měření by vyžadovalo měření velmi malých napětí s dlouhým časem, což podobná jednoduchá zapojení s procesory neumožňují). Měření ESR se provádí pokud možno malým napětím a je tedy možné měřit kondenzátory zapojené do obvodu. Je však nutné počítat se zkreslením výsledku měření parazitními obvody, např. připojenými keramickými kondenzátory.

Doplňkovou funkcí měřiče je indikátor zkratů. Je-li detekován odpor menší než 5 Ohmů, ozývá se zvuková signalizace z vestavěného reproduktoru. Reproduktor je využíván též při indikaci nulování přístroje tlačítkem TARE a při indikaci kvality ESR odporu.

Měřicí vstup RC lze využít též k testování LED diod. Při připojení LED diody (anoda na RC vstup, katoda na GND) se dioda rozbliká.

Pozn.: Obrázky na stránce uvedené zvětšíte kliknutím

Schéma zapojení a metoda měření

Srdcem měřiče je ve schématu procesor ATmega8. Použil jsem ze zásob ATmega8L, který je určen pro nízká napětí a nízké frekvence, ale i na 5V s 16 MHz pracoval v pořádku.

Měřič odporů a kondenzátorů používá referenční odpory R1 až R8. Měly by být, pokud možno, s přesností 0.1%. Odpory slouží k nabíjení a vybíjení měřeného RC obvodu a jsou spínané přímo výstupy procesoru. Napětí na RC obvodu je měřeno ADC převodníkem (vstup RC_IN).

Měřený kondenzátor musí být před připojením k měřicímu RC vstupu vybit. K tomu slouží vybíjecí vstup U (DISCHARGE). Paralelně k vybíjecímu vstupu je připojen výkonový odpor 22 kOhm/5 W. Napětí z vybíjecího vstupu je děleno odporovým děličem v poměru 1:100. Současně je do děliče přiveden nulovací proud (přes R23), který posune střed vstupního napětí. Díky tomu je rozsah vstupního napětí -500V až +500V převeden na rozsah 0 až +5V (který je měřen ADC převodníkem).

Měření indukčnosti se provádí obvodem LM311D. Na jeho vstupu je připojen rezonanční LC obvod sestávající z kondenzátoru C1 a cívky L1. Měřená cívka se připojí do série s cívkou L1. Frekvence obvodu se měří procesorem (vstup L_OUT).

Tlačítko TARE slouží k nulování přístroje, tj. k nastavení nuly měřicích rozsahů. Jeho funkce závisí na zapojení měřicích pinů. Je-li vstup RC nezapojen, nastaví se nula pro měření kapacity (změří se aktuální hodnota kapacity a tato hodnota se odečítá od naměřeného údaje). Při zkratování vstupu RC na nulu se vynuluje měření odporu. Zkratováním vstupu L se nuluje měření indukčnosti. Měření napětí se nuluje vždy.

K procesoru je připojen dvouřádkový LCD displej (2x16 znaků), pracující ve 4-bitovém módu. LCD dvouřádkové displeje bývají po elektrické stránce kompatibilní (obvykle se dodržuje kompatibilita s řadičem Hitachi HD44780), rozdíly však bývají s rozložením pinů. Proto pozor u jiných displejů - je možné, že budete mít proti schématu jinak piny 15 a 16 (prohozené LED- a LED+).

Odporový trimr R18 slouží k nastavení kontrastu displeje. Je možné ho nahradit jedním odporem 1K0, připojeným mezi pin V0 a zem.

Klikněte na obrázek pro zvětšení...

Měření odporů a kondenzátorů probíhá v několika krocích. Nejdříve proběhne detekce, zda je připojen kondenzátor nebo odpor. Proběhne nabíjení odporem R1 (po dobu 2 ms) následované krátkým vybíjením odporem R5. Je-li za 10 us na součástce detekováno napětí, jedná se o kondenzátor. Detekce kondenzátoru je potřebná pouze k rozlišení, zda se bude měřit běžný odpor nebo ESR.

Nejedná-li se o kondenzátor, proběhne měření hodnoty odporu. Rychlým měřením (s nižší přesností) se změří napětí na součástce s postupným zapojením odporů R1 až R8. V tabulce se vyhledá hranice, které odpory poskytnou nejpřesnější výsledek. Pro nalezené odpory se provede pomalé (přesnější) měření napětí a hodnota se přepočte na odpor. Výsledek se přidá do kruhového bufferu filtru odporů, který zajistí filtraci (vyhlazení) výsledků za více měření. Jedno měření trvá 65 ms, délka filtru je 15 vzorků, údaj by se měl stabilizovat do 1 sekundy. Při rychlých změnách (např. připojení odporu) se filtr resetuje, aby se změna projevila okamžitě.

Je-li detekován kondenzátor, proběhne měření ESR (Equivalent Series Resistance = ekvivalentní sériový odpor). Zapojením rezistoru R1 k nule se kondenzátor nejdříve vybije. Poté se všechny odpory vypnou a změří se aktuální zbytkové napětí. Aktivuje se nabíjení odporem R1, změří se napětí na kondenzátoru, nabíjení se vypne a opět se změří napětí. Z napětí před nabíjením a po nabíjení se vypočte střední hodnota napětí, která by odpovídala napětí na ideálním kondenzátoru v okamžiku nabíjení. Z rozdílu střední hodnoty a naměřené hodnoty je vypočítán odpovídající sériový odpor (naměřená hodnota bude větší než vypočtená střední hodnota). Jedná-li se o platnou hodnotu, je údaj přidán do filtru měření odporů. Je-li údaj neplatný (např. ESR větší než 100 Ohmů), provede se standardní měření odporu - to pro případ, že vysoké hodnoty odporů mohou být někdy považovány za kondenzátor (protože je měření zkresleno průmyslovým rušením).

Nezávisle na detekci kondenzátoru je vždy změřena kapacita (detekce kondenzátoru nemusí být spolehlivá, velké hodnoty odporů mohou být detekovány také jako kondenzátor, kvůli naindukovanému rušení). Nejdříve je provedeno rychlé (nepřesné) měření kapacity, s využitím odporů R1, R4 a R8. Při měření kapacity jedním odporem proběhne nejdříve vybíjení kondenzátoru uzemněním všech odporů. Změří se výchozí hodnota napětí a zahájí se nabíjení vybraným odporem. Po dosažení určitého koncového napětí, nebo po uběhnutí limitního času, se nabíjení přeruší a změří se koncové napětí. Z přírustku napětí a z uběhlého času se odvodí hodnota kondenzátoru. Z výsledku rychlého měření se určí 2 nejbližší odpory, které poskytnou nejpřesnější výsledek. Provede se pomalé (přesné) měření pomocí vybraných 2 odporů, z výsledku se určí hodnota kondenzátoru a výsledek se uloží do kruhového bufferu filtru kondenzátorů. Údaj by se měl stabilizovat do 1 sekundy.

K internímu měření časových intervalů se používá časovač Timer 0. Přerušení od časovače nastává přibližně každou 1 ms. Při přerušení se updatuje systémový čas (s přesností 1 us) a pokud uběhlo 250 ms, updatuje se měření indukčnosti.

Měření indukčnosti využívá čítač Timer 1. Čítač čítá pulzy přicházející od LC oscilátoru na pin T1. Při přetečení se inkrementuje čítač přetečení (vyšší řád čítače). Každých 250 ms se updatuje měření indukčnosti, kdy se uchová uběhlý čas od minulého update a stav čítače pulzů. Z těchto dvou údajů se vypočte frekvence oscilátoru. Z frekvence a ze známé hodnoty L1 a C1 se odvodí naměřená indukčnost. Výpočet indukčnosti se provádí v integer matematice a proto se provádí ve 4 hranicích, aby nedošlo k přetečení operací.

Plošný spoj a osazení

Plošný spoj je navržen jako jednostranný, s několika drátovými propojkami.

K napájení jsem zvolil střídavý zdroj 9V ze starého modemu, můstkový usměrňovač a stabilizátor 7805. Stabilizátor vyžaduje chladič. Aby se vešel pod displej, musel jsem žebra chladiče ohnout, vhodnější je použít nižší chladič. Bylo by sice možné použít napájení z USB konektoru (z USB nabíječky +5V), bez potřeby usměrňovače a stabilizátoru, avšak muselo by se počítat s nižší přesností měření napětí. Ostatní měřené veličiny nevyžadují přesnou hodnotu napájecího napětí +5V (meřicí metoda není závislá na napětí), je však nutné dobré vyhlazení napětí.

Do displeje je přiletována řada pinů a je zasouvací do konektoru v plošném spoji. Řešení s konektorem velmi dopočuruji, raději než propojení drátovým kabelem - mnohem snáze se s tím manipuluje a displeje můžete snadno vyměňovat. Potíž můžete mít s výběrem displeje. Po elektrické stránce bývají displeje kompatibilní (řadič kompatibilní s Hitachi HD44780), ovšem může se lišit rozložení pinů. Displej, který jsem použil, rozložením pinů nejvíce odpovídá displeji WINSTAR WH1602A-YGH-ET - což znamená: piny se nachází vlevo dole, v pořadí 14 (=DB7) ... 1 (=Vss), 16 (=K LED-), 15 (=A LED+). Můžete sice použít jiný displej (může i vyjít levněji), ale může být potřeba změnit piny na plošném spoji, jako např. pořadí pinů otočit a přesunout nahoru.

Před sestavením si zkontrolujte, jak vám elektronika vyjde do krabičky na výšku. Použil jsem krabičku podobnou krabičce KM78, jen je o pár milimetrů vyšší. Možná budete muset šetřit s výškou konektoru pro LCD displej (zvolit nižší konektor - precizní) a zvážit, zda se vám tam vejde případný chladič stabilizátoru a napájecí konektor (příp. víko krabičky podložit, aby se vytvořil větší prostor).

Doporučuji nejdříve přiletovat napájecí obvody a zkontrolovat napájecí napětí. Po naletování ostatních součástek se chyby napájení už špatně hledají nebo dokonce může dojít k poškození některých obvodů.

Odpory R1 až R8 by měly být použity pokud možno přesné, s přesností 0.1%. Je možné použít i méně přesné odpory (např. 1%), v tom případě bude nutné buď počítat s nižší přesností měření odporů (2%) a kondenzátorů (15%) nebo měřič kalibrovat - tj. zapsat skutečné hodnoty odporů do konfiguračního souboru config.h. Cívka L1 a kondenzátor C1 by měly být použity stabilní, s přesností alespoň 5%. Odpory v děliči napětí R20, R21 a R23 by měly být použity také pokud možno přesné, alespoň 1%.

Na plošném spoji je náznak "vylití země", je to provedeno ručně, v té době jsem ještě neuměl použít automatickou funkci. :-)

Spodní strana (strana spojů):

Horní strana (nahrazeno drátovými propojkami):

Osazení součástek:

Potisk:

Deska je připevněna ke dnu krabičky dole 2 šrouby a nahoře 2 distančními sloupky M3. Lze použít krabičku KM78, ale může být potřeba použít nižší konektor pro LCD, nižší chladič stabilizátoru a nižší napájecí konektor.

Displej je upevněn na dolní straně konektorem a na horní straně šrouby ke sloupkům. Horní díry v displeji může být potřeba trochu rozšířit pilníkem, aby se do nich vešly šrouby M3.

Do víka krabičky jsou upevněny 4 banánkové zdířky a vyřezán otvor pro displej.

Potisk krabičky (vytiskl jsem na inkoustové tiskárně):

Na horní stranu krabičky jsem přilepil popisku a přelepil izolepou proti otěru.

Naprogramování a oživení

Kód k naprogramování procesoru ve formátu HEX nebo BIN naleznete v balíku zdrojových souborů. Po naprogramování nastavte pojistky následujícím způsobem (konfigurace pro krystal 16 MHz):

low = 0xEF (11101111), high = 0xC9 (11001001).

Důležité - bohužel se celý kód procesoru nevešel do paměti ROM. Některé tabulky a texty musely být umístěny do EEPROM. Kromě ROM je tedy nutné naprogramovat i obsah EEPROM paměti. V překladu pomocí MAKEFILE je nastaveno umístění sekce EEPROM na adresu 0x810000, což je standardní nastavení očekávané i běžnými programovacími nástroji. Znáte-li adresu EEPROM používanou vaším programovacím nástrojem, můžete ji změnit v souboru MAKEFILE v parametru "-Wl,--section-start=.eeprom=0x810000". Jinak můžete použít samostatné binární soubory: RCLmeter_rom.bin je obsah paměti ROM bez EEPROM, RCLmeter_eeprom.bin je obsah paměti EEPROM bez ROM a RCLmeter.bin jsou paměti ROM a EEPROM bezprostředně za sebou následující (obsah ROM končí na adrese 0x2000).

Po připojení napájení by se měl rozsvítit displej následujícím způsobem:

Vlevo nahoře je údaj měření odporu, vpravo nahoře údaj měření kapacity, vlevo dole údaj měření indukčnosti a vpravo dole údaj měření napětí. Údaje v klidovém stavu mohou indikovat nenulovou hodnotu, v tom případě může být nutné vynulování měřiče tlačítkem TARE. Údaje měření odporu a měření kapacity mohou v klidovém nezapojeném stavu přeskakovat po náhodných hodnotách (údaj odporu v řádech MOhm, údaj kapacity v řádech pF), protože měřicí vodiče zachytávají průmyslové rušení (měřicí vstupy jsou velmi citlivé).

Budete-li chtít program upravovat, překládá se pomocí WinAvr 20100110 (avr-gcc 4.3.3). Instalátor lze stáhnout např. ze SourceForge https://sourceforge.net/projects/winavr/. Program se překládá povelovým souborem c.bat (=compile).

Kalibrace

Budete-li chtít zvýšit přesnost měření (nebo použijete-li méně přesné součástky), je možné měřič zkalibrovat nastavením přesných (změřených) hodnot odporů R1 až R8 (R1_VAL až R8B_VAL) do konfiguračního souboru config.h, překladem a zápisem upraveného programu do procesoru. Hodnota R8B_VAL je hodnota odporu R8 v případě měření vysokých odporů (22 MOhm) - slouží ke korekci charakteristiky v oblasti vysokých odporů. Podobně lze do konfigurace nastavit nulovací hodnoty (TARE R, C, L a U), skutečnou hodnotu referenčního kondenzátoru C1 (C0REF) a referenční cívky L1 (L0REF).

Skutečné hodnoty součástek zapojených v obvodu se mohou trochu lišit od naměřených přesných hodnot. Typicky hodnoty R1 až R8 jsou ovlivněny dalšími vlivy, jako výstupní odpor spínačů. Proto může být dosaženo lepších výsledků dodatečnou korekcí konfigurace.

Budete-li chtít upřesnit hodnoty odporů R1 až R8, připojte na RC vstup referenční odpory se známou přesnou hodnotou takovou, aby zhruba odpovídaly hodnotě opravovaného odporu. Např. pro opravu odporu R4 (s hodnotou 10 kOhm) připojte na vstup přesný odpor 10 kOhm. Hodnotu R4 upravte tak, aby měřič ukazoval správný výsledek. Po opravě všech odporů proveďte opravu znovu, protože odpory se navzájem mohou mírně ovlivňovat. U malých odporů je potřeba počítat ještě s interním odporem spínačů procesoru - hodnota R0_VAL.

Podobně, zkusmo, lze opravit hodnoty L1 a C1. Použijte 2 cívky s přesnou známou hodnotou, z dolního a horního konce rozsahu. Měření cívky s velkou hodnotou je ovlivňeno více hodnotou C1, cívka s malou hodnotou je ovlivněna více hodnotou L1. Několikanásobnou střídavou korekcí postupně upřesníte hodnoty L1 a C1.

Graf chybovosti měření odporů:

Grafy charakteristik odchylky měření jednotlivými odpory R1..R8B:

Měření

Displej měřiče je rozdělen na 4 pole. Vlevo nahoře se zobrazí měřený odpor a ESR, vpravo nahoře měřená kapacita, vlevo dole měřená indukčnost a vpravo dole měřené napětí.

Po zapnutí napájení přístroje může být nutné měřicí rozsahy vynulovat. K nulování slouží tlačítko TARE, nacházející se na zadní straně přístroje. Funkce nulování závisí na zapojení měřicích vodičů. Nulovací hodnoty se neukládají do EEPROM. Je-li potřebné jejich uchování, lze to provést nastavením konstant v konfiguračním souboru config.h.

Měření hodnoty odporů se provádí připojením odporu mezi vstupy RC a GND. Při měření velkých odporů (od desítek kOhmů) se může současně zobrazit i falešný údaj kapacity (v řádech desítek nF) - je to z důvodu zachytávání průmyslového rušení do měřicích vodičů, které je považováno za zbytkové napětí na kondenzátoru. Při hodnotách odporů menší než 5 Ohmů se ozývá zvuková signalizace indikující zkrat. Měřicí vstup RC lze využít též k testování LED diod. Při připojení LED diody (anoda na RC vstup, katoda na GND) se dioda rozbliká.

Měření hodnoty kondenzátorů se provádí připojením kondenzátoru mezi vstupy RC a GND.

Při měření malých kapacit (jednotky a desítky pF) může být nutné častější provádění nulování s TARE, protože se více projevují parazitní kapacity, např. způsob položení měřicích vodičů nebo přiblížení rukou.

Při měření elektrolytických kondenzátorů se připojuje + pól na vstup RC, - pól na vstup GND. Kromě kapacity se v levém horním poli zobrazí hodnota ESR (Equivalent Series Resistance = ekvivalentní sériový odpor). Za údajem naměřené hodnoty ESR se zobrazí značka, vyhodnocující kvalitu kondenzátoru. Současně se ozve odpovídající zvuková signalizace.

Výborná kvalita, ESR < 1 Ohm

Dobrá kvalita, 1 Ohm <= ESR < 6 Ohm

Špatná kvalita, ESR >= 6 Ohm

Při měření indukčností se měřená cívka připojuje na vstupy L a GND. Před měřením může být nutné provést nulování (spojit vodiče a stisknout TARE).

K měření napětí lze použít vstupy U a GND. Rozsah vstupních napětí je -500V až +500V. Vstup je zatížen výkonovým odporem 22 kOhm/5W. Běžně ovšem tento vstup není určen k měření napětí. Slouží k vybíjení kondenzátorů, které mohou být z přístroje nabity na vysoké napětí, které by přístroj poškodilo. Napětí je zde měřeno pouze jako pomocná funkce, ke sledování stavu vybití kondenzátoru.

Downloady

Zdrojové kódy RCLmeter s firmware

Schéma zapojení v Eagle Free

Grafické podklady (schéma a plošný spoj)

Kompletní download podkladů RCLmeter (včetně www stránky)

Použité součástky

Výběr součástek byl uzpůsoben na prodejnu GM Electronics, kterou mám blízko. Displej jsem zde vybral takový, který svými piny odpovídá displeji, který jsem použil, tj. piny jsou vlevo dole. Se stejnou funkčností by měl jít použít i jiný displej (2 řádky po 16 znacích), který může být i levnější, ale může mít jiné rozložení pinů. Typicky mají mnohé displeje piny naopak vlevo nahoře, což bude znamenat nutnost upravit plošný spoj. Každopádně ještě vyzkoušejte zapojení LED diody pro osvícení pozadí (u mých displejů jsou piny obráceně než odpovídalo datasheetu).

V seznamu jsem uvedl krabičku KM78, která je nejvíce podobná krabičce kterou jsem použil. Ovšem uvedená krabička je o pár milimetrů nižší a proto může být nutné provést korekce, aby se elektronika vešla do krabičky na výšku - použít precizní konektor pro displej, nízký chladič a nízký napájecí konektor. Nebo podložit horní díl krabičky.

Součet ceny za vše je 576 Kč (včetně krabičky, fotocuprextitu, dražšího displeje a dražšího konektoru).

Miroslav Němeček

<< Zpět