VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky
Číslicový RLC metr bakalářská práce
Autor: Zbyněk Bulant Vedoucí práce: Ing. Bohumil Brtník, Dr. Jihlava 2011
Anotace Tato práce se zabývá sestrojením číslicového RLC metru, který je konstruován za účelem výuky. Je sestaven ze dvou mikrokontrolérů, z nichž jeden generuje signály a druhý provádí samotné měření. Dále se skládá z převodníku impedance na napětí, obvodů pro úpravu signálu a displeje. Obsahem práce je návrh desky plošného spoje, osazení, oživení. Dále návrh příslušného softwaru pro generování signálu, měření a zobrazení na display. Detailně je rozebrán generátor signálu a měření fázového posuvu číslicovou metodou.
Klíčová slova Číslicový RLC metr, RLC metr, RLC
Abstract This thesis he built a digital RLC meter, which is designed for teaching purposes. It consists of two microcontrollers, one of which generates a signal and the second performing a single measurement. Furthermore, consists of a transmitter impedance voltage circuits for signal conditioning and display. The thesis is a printed circuit board design, installation, commissioning. Furthermore, the design software for signal generation, measurement and display on screen. Is discussed in detail the signal generator and digital phase shift measuring method.
Keywords Digital RLC meter, RLC meter, RLC
Poděkování Chtěl bych poděkovat Ing. Bohumilu Brtníkovi, Dr., vedoucímu mé bakalářské práce, za pomoc a rady, které mi poskytl při konzultacích. Dále bych chtěl poděkovat oponentovi mé práce Ing.Bc. Davidu Matouškovi, za technickou pomo.
Prohlášení Prohlašuji, že předložená bakalářská práce je původní a zpracoval
jsem ji samostatně.
Prohlašuji, že citace použitých pramenů je úplná, že jsem v práci neporušil autorská práva (ve smyslu zákona č. 121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů, v platném znění, dále též „AZ“). Souhlasím s umístěním bakalářské práce v knihovně VŠPJ a s jejím užitím k výuce nebo k vlastní vnitřní potřebě VŠPJ . Byl/a jsem seznámen s tím, že na mou bakalářskou práci se plně vztahuje AZ, zejména § 60 (školní dílo). Beru na vědomí, že VŠPJ má právo na uzavření licenční smlouvy o užití mé bakalářské práce a prohlašuji, že s o u h l a s í m s případným užitím mé bakalářské práce (prodej, zapůjčení apod.). Jsem si vědom toho, že užít své bakalářské práce či poskytnout licenci k jejímu využití mohu jen se souhlasem VŠPJ, která má právo ode mne požadovat přiměřený příspěvek na úhradu nákladů, vynaložených vysokou školou na vytvoření díla (až do jejich skutečné výše), z výdělku dosaženého v souvislosti s užitím díla či poskytnutím licence. V Jihlavě dne ..................................................... Podpis
Obsah 1
Úvod ................................................................................................................................................ 8
2
Úvod do měření pasivních součástek .............................................................................................. 9 2.1
2.1.1
Výchylkové ....................................................................................................................... 9
2.1.2
Srovnávací, substituční .................................................................................................... 9
2.1.3
Můstkové ....................................................................................................................... 10
2.2
3
Metody měření R, L, C ............................................................................................................. 9
RLC metr ................................................................................................................................ 11
2.2.1
Princip převodu impedance na napětí – Z/U převodník ............................................... 11
2.2.2
RLC popsaný v této BP ................................................................................................... 12
Číslicový RLC metr ......................................................................................................................... 13 3.1
Úvodní slovo .......................................................................................................................... 13
3.1.1
Vývoj prototypu ............................................................................................................. 13
3.1.1.1 Generátor signálu, uP 1 .................................................................................. 13 3.1.1.2 Z/U převodník................................................................................................. 14 3.1.1.2.1 První návrh ................................................................................................ 14 3.1.1.2.2 Druhý návrh .............................................................................................. 15 3.1.1.3 Program druhého mikrokontroléru ................................................................. 16 3.1.1.3.1 Obsluha displeje ........................................................................................ 16 3.1.1.3.2 Měření napětí ............................................................................................ 16 3.1.1.3.3 Měření fázového posunu ........................................................................... 17 3.1.1.3.4 Shrnutí ....................................................................................................... 17 3.2 Blok generátoru signálu............................................................................................................ 17 3.2.1
Generované signály ....................................................................................................... 17
3.2.2
Vývojový diagram generátoru signálu ........................................................................... 18
3.2.3
Získání sinusového signálu ............................................................................................ 19
3.2.4
Získání pomocných signálů HSIN, HCOS a HPER ............................................................ 20
3.2.4.1 HPER .............................................................................................................. 20 3.2.4.2 HSIN ............................................................................................................... 21 3.2.4.3 HCOS.............................................................................................................. 21 3.2.5
Tabulka vzorků............................................................................................................... 22
3.2.6
Program GENERATOR .................................................................................................... 23
3.3 Blok Z/U převodníku ................................................................................................................. 24 3.3.1
Filtr horní propust.......................................................................................................... 24
3.3.2
Aktivní filtr II. řádu typu dolní propust .......................................................................... 25
3.3.3
Z/U převodník ................................................................................................................ 29
3.3.4
Úplné schéma zapojení včetně přepínače LX, CX ........................................................... 30
3.3.5
Výstupní filtr s usměrňovačem typu operační dioda .................................................... 31
3.3.6
Úplné schéma bloku Z/U převodníku ............................................................................ 34
3.4 Blok mikrokontroléru 2 - vyhodnocení signálu ....................................................................... 35 3.4.1
Obsluha displeje ............................................................................................................ 35
3.4.2
Měření napětí ................................................................................................................ 35
3.4.3
Měření fázového posunu číslicovou metodou .............................................................. 37
3.4.3.1 Výpis procedury měření fázového posunu ..................................................... 39 3.4.4
Výpočet hodnot součástky ze změřených údajů ........................................................... 39
3.4.4.1 Zapojení pro cívku .......................................................................................... 39 3.4.4.2 Zapojení pro kapacitor .................................................................................... 41 3.5 Napájení ................................................................................................................................... 42 3.6 Měřící vývody ........................................................................................................................... 42 3.7 Seznam součástek .................................................................................................................... 43 3.8 Návrh plošného spoje............................................................................................................... 44 4
Závěr .............................................................................................................................................. 45 4.1 Zhodnocení práce ..................................................................................................................... 45 4.2 Testování .................................................................................................................................. 46 4.3 Možnosti rozšíření .................................................................................................................... 46
5
Seznam literatury .......................................................................................................................... 50
6
Seznam zkratek.............................................................................................................................. 51
1 Úvod Svoji bakalářskou práci jsem si mohl navrhnout, nebo vybrat téma nabízené školou. Rozhodl jsem se využít nabídku školy. Zvolil
jsem
si
vypsané
téma
s
názvem
Číslicový RLC
metr,
protože
mým
zájmem je technika a elektronika, ale z technické problematiky nebylo žádné téma dostupné. Navíc princip těchto přístrojů se probíral v předmětu Elektrická měření a programování použitých mikrokontrolérů se vyučovalo v předmětech Mikroprocesorová technika 1 a 2, takže jisté teoretické poznatky mám již ze školy a nemusím je nikde vyhledávat. Přípravek, který vzejde z mé bakalářské práce, bude použit jako výuková pomůcka na vysoké škole polytechnické v Jihlavě. Studenti budou moci na měřících vývodech poskytujících páteřní signály systému, sledovat především jak tento měřič pracuje, jaké děje probíhají uvnitř, mohou pokusně změřit různé pasivní součástky, jako např. neoznačené cívky a kondenzátory, nebo třeba pasivní výhybky při stavbě reprosoustav. Jelikož se jedná o číslicový přístroj řízený procesorem, je úprava nebo doplnění měřícího programu velice snadná. Po navržení a odzkoušení prototypu vyrobím 5 kusů těchto přípravků.
Na rozdíl od prototypu s analogovými fázovými detektory, který se vyučuje v předmětu Elektrická měření, bude přístroj, který vzejde z této práce obsahovat jen analogový převodník impedance na napětí a zbytek obvodu, tj. generátor a obvod pro zjištění výstupního napětí a fáze bude tvořen obvody pracujícími číslicově, tudíž by v nich nemělo nedojít ke zkreslení signálu, protože tento bude zpracováván ve formě dat a jediná chyba která může vzniknout je při převodu signálu z analogové části na data při početních úkonech s těmito daty, protože např. při dělení nejsou zohledněna všechna desetinná místa výsledku. V mikrokontroléru budou uloženy vzorce pro měření induktivní i kapacitní zátěže a podle polohy přepínače, který zároveň přizpůsobí obvod pro měření LX, nebo CX „pozná„ mikrokontrolér co se měří a podle toho použije příslušné vzorce. Výsledky budou zobrazeny na LCD displeji 2x8 znaků. Mikrokontroléry budou programovány v assembleru, jelikož je ve škole vyučován a jsou k dispozici vzorové příklady. 8
2 Úvod do měření pasivních součástek V této minikapitole bych nastínil co je to měření odporu, impedance a kapacity, proč je dobré takovéto součástky měřit, nejzákladnější metody jak je lze změřit a proč vyrábíme RLC metr. Z větší části je tato kapitola citací literatury [2]
2.1 Metody měření R, L, C K měření odporu, indukčnosti a kapacity uvedu jen pár obecných metod pro měření malých impedancí
2.1.1 Výchylkové Měřenou součástkou necháme protékat proud ze zdroje a měříme napětí na součástce voltmetrem a proud protékající součástkou ampérmetrem. Pro odpor vypočteme: R=U/I Pro měření součástek setrvačného charakteru (L, C) potřebujeme zdroj střídavého signálu a měřiče střídavého signálu. Potom vypočteme: L = U/I (pro ideální cívku) C= I/U (pro ideální kapacitor) Schéma lze naznačit obrázkem: 1 Měření výchylkovou metodou
1 Měření výchylkovou metodou
2.1.2 Srovnávací, substituční Metoda spočívá pouze v tom, že se ampérmetr nahradí normálovým odporem, na kterém se měří napětí. Viz obr.: 2 Srovnávací metoda 9
2 Srovnávací metoda
Neznámou impedanci pak zjistíme výpočtem: RX=RN*UX/UN LX=RN*UX/*UN (pro ideální cívku) CX= UN /RN*UX*(pro ideální kapacitor) Substituční metoda, spočívá jenom v použití normálové dekády místo odporu RN, která se nastavuje tak, aby napětí UN, bylo co nejbližší napětí UX.
2.1.3 Můstkové Oproti Substituční metodě se voltmetry nahradí normálovými odpory. Normálová dekáda se nastavuje tak, aby mezi body A a B bylo stejné napětí, což indikuje nulový indikátor NI nulovou výchylkou ručky. Viz. Obr.:
3 Zapojení do můstku
Potom lze vypočítat: RX = RN*R4/R3 LX=RN* R4/* R3 (pro ideální cívku) 10
CX= R3 /RN* R4*(pro ideální kapacitor) Takovýchto metod je samozřejmě mnohem více, ale je vidět, že vždy potřebujeme několik přístrojů, nebo alespoň normálových odporů, dekád atd., proto nelze všechny tyto metody integrovat do jednoho přístroje.
2.2 RLC metr Z výše uvedeného je patrné, že používání jednotlivých metod měření velikosti součástek není nejrychlejší a nejjednodušší metoda, proto s příchodem zesilovačů s velkým zesílením a vysokým vstupním odporem, vznikly systémy měření, které nezjišťují jednotlivé složky součástky, jako např. můstků, kde se zvlášť stejnosměrným proudem zjistí odpor cívky a potom střídavým proudem její indukčnost, ale nechají neznámou součástkou protékat střídavý proud a sledují, jak tato součástka signál ovlivní (útlum, fázový posun). Na tomto principu pracují dnešní RLC metry které jsou tvořeny oscilátorem, převodníkem impedance na napětí a systémem vyhodnocení signálu.
2.2.1 Princip převodu impedance na napětí – Z/U převodník Zde se vychází především z literatury [2] a vlastních poznatků. “Principem činnosti je převod impedance na napětí, které se následně změří tzv. vektorovými voltmetry, obsahujícími fázové detektory, a po analogověčíslicovém převodu se zobrazí na displeji.“
4 Základní schéma číslicového RLCG metru
Bohumil Brtník [2]
11
Takovýto převodník je stěžejním obvodem RLC metru a pracuje na jednoduchém principu, a to, že na svém výstupu nastaví OZ takové napětí, aby mezi vstupy bylo nulové napětí. Jak vidíme na obrázku 4 Základní schéma číslicového RLCG metru, neinvertující vstup OZ je připojen na zem, invertující vstup k normálovému odporu RN. Dále je patrné, že k tomuto odporu je připojen zdroj signálu, který jím protlačuje proud: I = (U1-UIN-)/RN = U1/RN protože OZ se postará o to, aby v uzlu UIN- bylo napětí nulové. Tento proud I nemůže kvůli vysokému vstupnímu odporu vtéct do vstupu OZ a musí proto celý procházet měřenou součástkou. Na které vyvolá napětí které je ve fázi s napětím oscilátoru a má velikost úměrnou odporové složce měřené součástky a napětí které o 90° předbíhá napětí oscilátoru a má velikost úměrnou indukčnosti měřené součástky. Bohužel tyto napětí můžeme na výstupu měřit pouze vektorově sečtené a je tedy nutné je rozdělit ve fázových detektorech, což jsou vlastně analogové spínače, které při přivedení napětí na referenční vstup, propustí na výstup, vstupní napětí o velikosti úměrné napětí referenčního. Matematicky lze dle obrázku 4 Základní schéma číslicového RLCG metru napsat: U2Re = U2 * U1 U2Im = U2 * (U1 + 90°)
2.2.2 RLC popsaný v této BP V mé práci je oscilátor nahrazen mikrokontrolérem společně s D/A převodníkem, a napětí U2 je vedeno přímo na A/D převodník a tvarovač signálu. Po těchto převodech je dále zpracováváno pouze číslicově.
12
3 Číslicový RLC metr 3.1 Úvodní slovo Nutno upozornit, že tento měřič je pouze ilustrací, jak zhruba funguje číslicový RLC metr, nikoliv přesný laboratorní přístroj. O tom svědčí také použité součástky, např. rezistory jsou použité ve standartních přesnostech, odporové děliče použité pro nastavení referenčních napětí nejsou řešeny přesnými odporovými děliči, ale pouze nastaveny trimry a stabilizace napájecího napětí je ponechána pouze na napájecím zdroji. Použité číslicové součástky jsou běžné, určené nikoliv k přesnému měření. Dále také metoda zjištění fázového posunu na výstupu Z/U převodníku, která je realizována pouze vzorkováním napětí a porovnáním s referenčním signálem, což při frekvenci 200 vzorků na periodu a s použitou metodou měření která poskytuje kroky po 1,8°, vnese do měření jistou chybu.
3.1.1 Vývoj prototypu Celý měřič lze charakterizovat jako 3 nezávislé obvodové bloky spojené pouze datovými, signálovými a napájecími vodiči, proto i vývoj byl veden u každého bloku zvlášť, přičemž bylo přibližně známo jaké vstupy požaduje následující blok a tyto byly uvažovány. Blokové schéma vidíme na obr.: 5 Blokové schéma RLC metru
5 Blokové schéma RLC metru
3.1.1.1 Generátor signálu, uP 1 Po prostudování doporučené literatury [1], byla velice rychle naprogramována a odzkoušena část programu generující sinusový signál, který ještě tehdy byl odladěna na frekvenci 10 kHz.
13
Dále byly pokusy o poskytnutí hodinového taktu druhému mikrokontroléru, který by se podle nich synchronizoval. Ovšem tato cesta se zdála z hlediska programu druhého mikrokontroléru velice složitá a proto od ní bylo upuštěno. Po prostudování a lepšího pochopení metody číslicového
zjištění
fázového
posuvu[2]
vzešla
myšlenka
poskytovat
druhému
mikrokontroléru pouze referenční signály, které mu poslouží pro porovnání s měřeným signálem, a tím se zrodily se datové linky HPER, HSIN a HCOS. Po rozšíření programu o tyto linky již nebyl první mikrokontrolér schopen generovat signály rychlostí 10 kHz, proto byla tato rychlost přestavena na 5 kHz a upraveny příslušné čekací smyčky. 3.1.1.2 Z/U převodník 3.1.1.2.1 První návrh První návrh vypadal asi takto (Viz obr.: 6 První návrh Z/U převodníku) uP1 PORTA[0] RX
LX
uP2 PORTA[0] D2
240 R3
3.3k R4
1n
U1 C2 1n C1
240
U2
R5
1u C3
OZ2
R1 S1 OZ1 R2
D4
+5V OZ3
D1 4.7k R6 D3
uP2 PORTC[0]
6 První návrh Z/U převodníku
Tento návrh obsahoval na vstupu Z/U převodníku filtr pásmová propust I. řádu, čímž odděloval stejnosměrnou složku signálu a částečně kvantizační šum. Na výstupu je připojena operační dioda, která jakožto ideální usměrňovač měla za úkol propustit celou kladnou půlvlnu napětí do výstupního nezatíženého filtru tvořeného oporem R4 a kapacitou C3, zde by se náboj uchovával s konstantním napětím a sestupná hrana komparátoru OZ3 by dala signál k přečtení této hodnoty napětí A/D převodníkem a vynulování této „paměťové buňky“ spínačem S1. K fyzické realizaci tohoto zapojení nikdy nedošlo, protože po konzultaci bylo
14
patrné, že vstupní filtr by s měřenou indukčností vytvořil sériový rezonanční obvod a celá soustava by se rozkmitala. Předností této metody měla být jednoduchá metoda čtení napětí, která spočívala pouze v přečtení maximální hodnoty a převedení na efektivní pouhým vydělením 1,41. 3.1.1.2.2 Druhý návrh Po neúspěchu prvního návrhu vznikl další návrh, který vypadal asi takto, viz obr.: 7 Druhý návrh Z/U převodníku
120
200
50m
Rx
Lx
TL072
V2 R1 X1
VOUT ADCref1.2V
VR1 10k 12%
TL072
VR2 10k 24%
5 V1
X2
V4
HOUT
7 Druhý návrh Z/U převodníku
Tento vynechal vstupní filtry, došlo k přepojení neinvertujícího vstupu operačního zesilovače Z/U převodníku, místo na zem, na napětí 0,6 V, čímž zůstaly veškeré signály probíhající v celém převodníku na offsetu 0,6 V a vzhledem k amplitudě 0,6 V generovaného signálu a normálovému odporu převodníku 120 Ω, nekleslo napětí v žádném místě zapojení pod 0 V. Ovšem zde se již nedala uplatnit metoda zjištění výstupního napětí pouze změřením kladné půlvlny, protože výstupní napětí měnilo svou velikost na offsetu 0,6 V, vznikla procedura zjištění napětí ušš, která bude popsána v samostatné kapitole. Takovéto zapojení se zpočátku zdálo ideální, došlo i fyzické realizaci, ale bohužel se ukázalo, že nefiltrované vstupní napětí zatížené kvantizačním šumem vyvolává na výstupu obrovské napěťové špičky, vyšší než amplituda samotného signálu, které by zcela zlikvidovaly výsledky měření, operační zesilovače napájené napětím 0-5 V nebyly schopny „dotáhnout“ napětí generované sinusovky při proudu 5 mA až k nule voltů, a navíc po konzultaci s vedoucím práce bylo zjištěno, že přítomnost stejnosměrného proudu, by při připojení cívky s jádrem, přesitila jádro, čímž by se změnily vlastnosti cívky a měření by bylo neplatné.
15
Po tomto fatálním neúspěchu skončilo toto zapojení na smetišti dějin a začalo se pracovat na nynějším zapojení, které je ovšem několikanásobně složitější, ale poskytuje kvalitnější výsledky. Ovšem i v tomto nynějším zapojení, které bylo už téměř kompletní, se vyskytl problém v měření výstupního napětí a proto bylo ještě doplněno o usměrňovač a přepracováno na měření stejnosměrného napětí. Na obrázku (8 Schéma zapojení pro výstupní napětí špička-špička) můžete vidět ještě schéma připravené pro měření napětí špička-špička, posunutého na offset 1,28 V.
8 Schéma zapojení pro výstupní napětí špička-špička
3.1.1.3 Program druhého mikrokontroléru 3.1.1.3.1 Obsluha displeje Procedury pro obsluhu displeje vzniky nejdříve, protože bylo předem jasné, co musejí obsahovat a další změny byly prakticky jen ve vypisovaných chybových hlášeních 3.1.1.3.2 Měření napětí První návrh, který by zahrnoval pouze změření napětí se napoprvé ani nerealizoval, druhý návrh vyžaduje měření střídavého napětí v kladných hodnotách. To se realizuje zjištěním nejvyšší a nejnižší hodnoty měřeného signálu a dále se pokračuje běžným převodem napětí špička-špička na efektivní hodnotu. Nakonec bylo od takovéto metody měření upuštěno kvůli nízké rychlosti převodu A/D převodníku.
16
3.1.1.3.3 Měření fázového posunu Vzhledem k tomu že cílem číslicového měřiče je eliminace co největšího počtu analogových obvodů a jejich nahrazení číslicovými, byly vypuštěny fázové detektory a obvod fázového posuvu, který dodává signál kosinového průběhu. Tyto chybějící obvody nahrazuje číslicová metoda fázového posunu popsaná v literatuře [2]. 3.1.1.3.4 Shrnutí Tímto stručným popisem jsme se seznámili se základními znalostmi o RLC metru a nyní si detailně rozebereme jednotlivé bloky přístroje a popíšeme děje v nich probíhající.
3.2 Blok generátoru signálu Dle zadání má být použit číslicový generátor vzorků realizovaný mikrokontrolérem. K tomuto účelu se výborně hodí produkt firmy Atmel, s označením ATmega16. Programovaný je v assembleru pomocí vývojového studia AVR 4 rovněž od firmy Atmel. Jedná se o RISC procesor osazený 16 MHz krystalem. Doba vykonání jedné instrukce trvá 62,5 ns. Více informací v literatuře [3] a [4].
3.2.1 Generované signály Použitý mikrokontrolér je dostatečně rychlý aby zvládl generovat vzorky sinusového signálu o frekvenci 5 kHz tvořený 32 vzorky na periodu a dále signály nazvané:
„Hrana periody“ [HPER] - obdélníkový signál o poloviční frekvenci, než je frekvence generované sinusovky, tj. 2,5 kHz, smyslem tohoto signálu je, určit mikrokontroléru který vyhodnocuje signál, kdy má začít a ukončit měření fázového posuvu
„Hrana sinusovky“ [HSIN] – obdélníkový signál o stejné frekvenci jako generovaná sinusovka, slouží jako referenční signál reprezentující ideální sinusový průběh převedený do TTL logiky
„Hrana kosinusovky“ [HCOS] – obdélníkový signál o stejné frekvenci jako generovaná sinusovka pouze předbíhající o 90°, slouží jako referenční signál reprezentující ideální kosinusový průběh převedený do TTL logiky
Hrana vzorku [HS] – Obdélníkový signál jehož každá hrana indikuje vyslání vzorku.
17
3.2.2 Vývojový diagram generátoru signálu
9 Vývojový diagram generátoru signálu
Ve vývojovém diagramu nejsou zobrazeny čekací smyčky, kterými je délka průběhu jedním cyklem nazvaným „SMYCKA“ nastavena na 100 kroků. Jedná se o:
Hlavní smyčku s názvem „CEKEJ“ o délce 53 kroků, která doplňuje každý průběh smyčkou na 100 kroků
Pomocnou smyčku tvořenou shlukem příkazů RCALL NOPP + 3xNOP o délce 15 kroků, jenž kompenzuje příkazy, které neproběhly, pokud program nepracuje s příkazy HSIN, HCOS nebo HPER.
18
3.2.3 Získání sinusového signálu Mikrokontrolér má ve své paměti uloženo 32 vzorků, jejichž vysláním na vstup D/A převodníku získáme na jeho výstupu rekonstruovaný signál ve tvaru sinusovky který je ovšem vzhledem ke svému digitálnímu původu zatížen kvantizačním šumem. Velikost těchto vzorků byla určena výpočtem pomocí programu EXCEL dle vzorce X=128+127*SIN(2*3,14/32*N) který byl opět převzat z časopisu „Amatérské rádio“ [1], přičemž X je číselná velikost vzorku uložená v paměti a N je číslo vzorku.
10 Sinusový harmonický signál zatížený kvantizačním šumem
11 Skutečný signál na výstupu D/A převodníku
Použitý D/A převodník dovoluje maximální napětí 1,2 V, což odpovídá efektivní hodnotě 430 mV.
19
3.2.4 Získání pomocných signálů HSIN, HCOS a HPER Jak již bylo naznačeno, je nutné ke generovanému sinusovému signálu dodat další signály, které jsou už pouze v TTL logice, protože se zpracovávají přímo v mikrokontroléru 2. Aby tento mohl vyhodnotit fázový posun, musí mít k dispozici informace o skutečném začátku sinusového signálu. Bylo by sice možno před začátkem měření zatížit měřič reálným odporem, který by nevnášel do měření fázový posun, podle této informace a ze známé frekvence sinusového signálu, nebo při použití společných taktovacích hodin by si druhý mikrokontrolér stanovil začátek a konec periody měření, začátek by byl shodný se začátkem čistě sinusového signálu, konec tohoto signálu by se dopočítal a obdobně by se řešil i problém kosinové složky. Ovšem toto řešení by bylo programově i výpočetně docela složité a mikrokontrolér 1 by se vlastně „flákal“ jen generováním sinusovky a přebývala by mu trocha výpočetního výkonu. Proto jsem se rozhodl k tomuto řešení, které spočívá v tom, že mikrokontrolér 1 sám dodává informace o tom kdy má druhý mikrokontrolér provádět tato měření v podobě signálů HSIN, HCOS a HPER. Druhý mikrokontrolér tedy vůbec nemusí zjišťovat kdy má tato měření provést, pouze zkontroluje stav příslušných signálu a podle nich ví, kdy má měřit sinovou a kosinovou složku signálu a jak dlouho. Mikrokontrolér 1 má tedy nastavené hodnoty vzorků, podle nichž lze určit, ve které části generované sinusovky se nachází. Při každém načtení vzorku z tabulky, zkontroluje, zda tento neodpovídá hodnotě, při které má být započato nebo ukončeno měření sinové/kosinové složky a podle toho případně nastaví nebo vynuluje příslušný signál. 3.2.4.1 HPER Měření fáze probíhá během jedné periody generované sinusovky a proto je signál HPER po každém vygenerování jedné periody (po průběhu celou tabulkou vzorků a nastavení 1. vzorku na vstup D/A převodníku) znegován. Z tohoto signálu, resp. z jeho přechodové hrany, je tedy jasné kdy začala a kdy skončí perioda generované sinusovky na vstupu Z/U převodníku. Protože změna tohoto signálu nastane vždy se začátkem signálu HSIN je proto funkce negace tohoto signálu zahrnuta do procedury nastavení signálu HSIN.
20
3.2.4.2 HSIN Reprezentuje ideální sinusový průběh v TTL logice, jeho začátek je definován na začátek generované sinusovky, je tedy nastaven procedurou, která zjišťuje, zda nynější vzorek má velikost 127 a nulován je procedurou hledající velikost vzorku 126, po fázové korekci jsou tyto vzorky přestaveny na velikost 218 a 38. 3.2.4.3 HCOS Reprezentuje ideální kosinusový průběh v TTL logice, jeho začátek je definován o 90° dříve než signál HSIN, je tedy nastaven procedurou, která zjišťuje, zda nynější vzorek má velikost 252 a nulován je procedurou hledající velikost vzorku 1, po fázové korekci jsou tyto vzorky přestaveny na velikost 217 a 37.
12 Generované signály
Signály výš uvedené jsou fázově korigovatelné v krocích po 11,25°, to znamená, že je možné všechny tyto signály zpozdit oproti generované sinusovce o násobky 11,25°.
Takováto
možnost je nezbytná, protože doba průchodu vzorků D/A převodníkem je značná a způsobila by chybu měření fázového posunu více než 50 %, a to pouze v generátoru signálu. Proto je nutné zpozdit i generované signály HPER, HSIN a HCOS, to se provede číselnou změnou konstanty v programu generátoru, která zajišťuje nastavení a nulování těchto signálů.
21
Zjednodušeně řečeno, se tyto signály nespustí s prvním generovaným vzorkem, ale až o pár vzorků dál, čímž se kompenzuje prodleva D/A převodníku. Během ladění byla fázová korekce určena na posun 55°, což odpovídá přibližně zpoždění o pět vzorků a chyba se tím minimalizovala přibližně na 1 - 2 %.
3.2.5 Tabulka vzorků Podle výše uvedeného vzorce získáme hodnoty: 128 153 177 199 218 234 245 253 255 253 245 234 218 199 177 153 128 103 80 58 38 23 11 3 1 3 11 22 38 57 79 103 Jak jsme ale viděli, potřebujeme jedinečné vzorky, aby bylo možno zjistit, ve které části sinusovky se nacházíme, proto opakující se vzorky musíme upravit. Proto se každý opakující vzorek sníží o 1, a vyjde tabulka: .DB 128,153,177,199,218,234,245,253 .DB 252,250,244,233,217,198,176,152 .DB 127,103, 80, 58, 38, 23, 11, 3 .DB 1, 2, 10, 22, 37, 57, 79,102
22
3.2.6 Program GENERATOR Tento program byl převzat z článku v časopise „Amatérské rádio“ [1] a doplněn o čekací smyčky, jež definují frekvenci 5 kHz a výše zmíněné signály HPER, HSIN, HCOS a HS. .INCLUDE "m16def.inc" .CSEG .EQU DACD=DDRB .EQU DAC=PORTB .EQU CTRLD=DDRD .EQU CTRL=PORTD .EQU WR=3 .EQU HRANAD=DDRA .EQU HRANA=PORTA .EQU HSIN=1 .EQU HCOS=2 .EQU HPER=0 INIC: LDI R16,LOW(RAMEND) OUT SPL,R16 LDI R16,HIGH(RAMEND) OUT SPH,R16
SHSIN: SBI HRANA,HSIN RCALL PERIOD NOP NOP NOP NOP NOP RJMP SMYCKA CHSIN: CBI HRANA,HSIN RCALL NOPP NOP NOP RJMP SMYCKA CHCOS: CBI HRANA,HCOS RCALL NOPP RJMP SMYCKA SHCOS:
LDI R16,255
SBI HRANA,HCOS RCALL NOPP NOP NOP NOP NOP RJMP SMYCKA
OUT DACD,R16 OUT CTRLD,R16 OUT HRANAD,R16 OUT HRANA,R16 LDI ZL,LOW(ADRTAB) LDI ZH,HIGH(ADRTAB) SMYCKA: RCALL NOPP NOP NOP NOP LPM R0,Z+ ANDI ZL,31 OUT DAC,R0 NOP RCALL CEKEJ MOV R16,R0
CEKEJ: LDI R19,15 CK: DEC R19 BRNE CK nop RET PERIOD: SBIS HRANA,HPER RJMP PR2 CBI HRANA,HPER RJMP PR3 PR2: SBI HRANA,HPER
CPI R16,197 BREQ SHSIN CPI R16,231 BREQ SHCOS CPI R16,56 BREQ CHSIN CPI R16,20 BREQ CHCOS RCALL NOPP NOP NOP NOP RJMP SMYCKA
PR3: RET NOPP: NOP NOP NOP NOP NOP RET .ORG 128 TAB: .DB 127,151,175,197,216,232,244,251 .DB 253,250,243,231,215,196,174,150 .DB 126,102, 77, 56, 37, 21, 9, 2 .DB 0, 1, 8, 20, 36, 55, 76,101 .EQU ADRTAB=2*TAB
23
3.3 Blok Z/U převodníku Blok samotného Z/U převodníku lze naznačit obrázkem:
13 Blokové schéma Z/U převodníku
3.3.1 Filtr horní propust Tento filtr je zapojený mezi výstup D/A převodníku generujícího sinusovku a vstup filtru dolní propust. Je ho účelem je oddělit stejnosměrnou složku signálu z D/A převodníku. Tato se nedá oddělit číslicově, protože použitý D/A převodní dovoluje generovat napětí pouze v rozsahu 0 – 1,2 V. Filtr byl navržen a odsimulován v programu Simetrix, jeho mezní frekvence je 1,3 kHz a jedná se o filtr I. řádu.
14 Filtr horní propust použitý v RLC metru
24
15 Útlumová charakteristika filtru horní propust
3.3.2 Aktivní filtr II. řádu typu dolní propust Protože zdroj signálu na vstupu Z/U je zatížen kvantizačním šumem, tak i proud procházejí měřenou součástkou, není čistě sinusový. To v kombinaci se základní vlastností cívky, a totiž, že cívka vystaví na svých vývodech pokud možno takové napětí, aby proud jí procházející byl konstantní, znamená, že napětí na cívce připojené do obvodu, je rovněž zatíženo kmity o frekvenci shodné s frekvencí kvantizačního šumu (tj. 32 kmitů na periodu procházejícího proudu) a velikosti úměrné proudu vyvolaného kvantizačním šumem. Viz obr.: 16 Šumové napětí na měřené součástce
16 Šumové napětí na měřené součástce
25
Z obrázku je patrné, že připojená cívka generuje napěťové špičky, které svou velikostí přesahují maximální, minimální a nulovou hodnotu napětí generovaného sinusového signálu. Jelikož fázový posun se vyhodnocuje tvarovačem signálu připojeným hned na výstup Z/U převodníku, tento by nebyl schopen rozlišit napětí generované sinusovky na kladnou a zápornou hodnotu, protože napěťové špičky vyvolané kvantizačním šumem sahají přes nulovou hodnotu (Viz. Obr.:17 Výstup tvarovače signálu bez filtru na vstupu Z/U převodníku). Z tohoto důvodu je na vstupu signálu do Z/U převodníku umístěn filtr typu dolní propust. Ten odstraňuje nežádoucí proud vyvolaný kvantizačním šumem.
17 Výstup tvarovače signálu bez filtru na vstupu Z/U převodníku
Simulací v programu Simetrix bylo určeno, že filtr bude II. řádu. Vzhledem k přítomnosti napěťového sledovače, který odděluje vstupní filtry od měřeného obvodu, čímž zabraňuje v rozkmitání vlivem uzavření sériového rezonančního obvodu při měření součástky induktivního charakteru, jsem se rozhodl tento sledovač využít jako zesilující prvek a spojit ho s existujícím filtrem, čímž vznikl aktivní filtr II. řádu. Dále se ukázalo je sledovač je opravdu nutný, proto byl přidán druhý operační zesilovač jako sledovač. Mezní kmitočet tohoto filtru je 18,4 kHz.
26
18 Schéma aktivního filtru dolní propust II. řádu
19 Útlum některých navrhovaných filtrů
20 Útlum některých navrhovaných filtrů v oblasti 5 kHz
27
21 Útlum některých navrhovaných filtrů v oblasti 160 kHz
22 Napětí na měřené součástce s aktivním filtrem II. řádu na vstupu Z/U převodníku
Při použití aktivního filtru II. řádu je z obrázku: 20 Útlum některých navrhovaných filtrů v oblasti 5 kHz, patrné, že žádaný signál na frekvenci 5 kHz je ovlivněn minimálně a nežádoucí rušivý signál na frekvenci 160 kHz je utlumen mnohem více. Na obrázku: 22 Napětí na měřené součástce s aktivním filtrem II. řádu na vstupu Z/U převodníku, je jasně viditelné zlepšení situace na výstupu Z/U převodníku. Tvarovač signálu nyní mnohem přesněji rozpozná horní a spodní polovinu generované sinusovky a bude moci přesněji kopírovat fázový posun do TTL logiky, ze které se později určí fázový posun mezi signálem HSIN a tímto signálem. Viz obr.: 23 Výstup tvarovače signálu s připojeným aktivním filtrem II. řádu na vstupu Z/U převodníku
28
23 Výstup tvarovače signálu s připojeným aktivním filtrem II. řádu na vstupu Z/U převodníku
3.3.3 Z/U převodník Je ústřední součástkou celého zařízení. Jde o to, že použitý operační zesilovač je zapojen tak, aby měřenou součástkou procházel proud definovaný normálovým odporem a jeho budícím napětím z D/A převodníku, tento proud je ve fázi s výstupním napětím D/A převodníku U1. Zapojení pro měření LX vidíme na obrázku: 24 Schéma zapojení OZ ve funkci převodníku impedance na napětí
24 Schéma zapojení OZ ve funkci převodníku impedance na napětí pro měření indukčnosti
Jelikož OZ nastaví výstupní napětí tak, aby na vstupu IN- bylo stejné napětí jako na vstupu IN+. Vstup IN+ je připojen na zem, proto OZ na stupu IN- udržuje napětí rovno 0 V. Do vstupů OZ nevtéká žádný proud, proto všechen proud musí protéct zátěží LX a RX, na nich vyvolá napětí U2 = ZX*I, přičemž proud je roven I=U1/RN
29
25 Schéma zapojení OZ ve funkci převodníku impedance na napětí pro měření kapacity
3.3.4 Úplné schéma zapojení včetně přepínače LX, CX Aby mohla být měřena kapacitní zátěž se sériovým odporem, nebo induktivní zátěž s paralelní svodovou vodivostí, je nutné pokaždé změnit zapojení Z/U převodníku. O to se stará třířadý přepínač který je do obvodu připojen dle obrázku: 26 Princip zapojení přepínače Lx, Cx v obvodu Z/U převodníku
26 Princip zapojení přepínače Lx, Cx v obvodu Z/U převodníku
Výstupy PC7 a PC8 připojované na zem, slouží k rozpoznání měřené metody mikrokontrolérem a tomu použité metody výpočtu. Odpory R17 a R18 byly stanoveny tak, aby nemohlo dojít k překročení výrobcem udané maximální zátěže použitého operačního zesilovače, tj. 2,5 mA. Z tohoto údaje a z maximálního napětí, které se může dostat na vstup, tj. pro měření indukčnosti (při zanedbání útlumu filtrů) poskytuje D/A převodník amplitudu napětí 0,6 V. Z toho minimální odpor je R = U/I = 0,6/0,0025 = 240 . Pro měření kapacity je maximální 30
napětí dané výstupem operačního zesilovače, tj. 5 V, z toho vypočteme, že nejnižší hodnota odporu je R = U/I = 5/0,0025 = 2 k. Aby mohly být měřeny součástky o vyšších hodnotách, jsou tyto normálové odpory nahrazovány hodnotami 10x vyššími pomocí přepínače 3x4 kroky jehož zapojení v obvodu Z/U převodníku vidíme na obr.: 27 Zapojení přepínače Lx, Cx a přepínače rozsahů do obvodu Z/U převodníku
27 Zapojení přepínače Lx, Cx a přepínače rozsahů do obvodu Z/U převodníku
3.3.5 Výstupní filtr s usměrňovačem typu operační dioda Protože měření výstupního napětí se provádí v různých dobách periody, je nutné výstupní napětí usměrnit a vyfiltrovat tak, aby mělo po celou dobu periody pokud možno stejnou hodnotu, rovnou špičkovému napětí. Pokud by pro usměrnění byla použita jen klasická dioda, mohlo by napětí na jejím výstupu dle zatížení poklesnout až o 0,7 V, což při maximální měřitelné hodnotě 2,55 V úplně degraduje výsledek měření. Aby k tomuto nedocházelo, je klasická dioda doplněna o operační zesilovač v zapojení operační diody (Obr.: 28 Schéma zapojení operační diody).
31
28 Schéma zapojení operační diody
A na výstupu je připojen RC filtr s rezistorem 2 K a kapacitorem 100 nF, k němuž je připojena umělá zátěž v podobě rezistoru s hodnotou 220 k, který slouží k pomalému vybíjení kapacitou, aby napětí na filtru kopírovalo snížení amplitudy signálu. Zapojení celého filtru s operační diodou vidíme na obr.: 29 Schéma výstupního filtru s operační diodou
29 Schéma výstupního filtru s operační diodou
32
Činnost filtru vidíme na obrázcích: 30 Vstupní napětí operační diody až 32 Výstupní napětí operační diody s připojeným výstupním filtrem.
30 Vstupní napětí operační diody
31 Výstupní napětí operační diody bez připojeného výstupního filtru
32 Výstupní napětí operační diody s připojeným výstupním filtrem
33
3.3.6 Úplné schéma bloku Z/U převodníku
33 Úplné schéma bloku Z/U převodníku
34
3.4 Blok mikrokontroléru 2 - vyhodnocení signálu 3.4.1 Obsluha displeje Použitý displej je řádkový displej 8×2 znaků (2 řádky po 8 sloupcích) osazený řadičem HD44780 který s ním ovšem pracuje jako s displejem 40x2 (32 znaků není vidět), tento problém je vyřešen procedurou, která posune kurzor o 32 znaků, čím ž se kurzor objeví na novém řádku. Obsluha řadiče typu HD44780 se ve škole vyučovala v předmětu MT1, kde byl ovšem programován jazyce C. Nechal jsem se tedy inspirovat tímto programem a dokumentací k tomuto řadiči (složka materiály/12_LCD.pdf) a napsal v assembleru procedury inicializace displeje pro 4-bitovou komunikaci, výpis znaku, výpis příkazu a dále pomocné procedury pro výpis jednoho čísla a jeho doplněk, výpis třímístného čísla, které je možno použít pro výpis celých registrů. Tyto procedury jsou uloženy v souboru „mlcd.inc“, Další procedury pro displej jsou uloženy v souboru „lcdhlasky.inc“ a obsahují vypisovaná slova, např. chybová hlášení, posun kurzoru o 32 míst, atd. Displej tedy obsloužíme úvodním voláním metody „LCDINIC“ která zajistí inicializaci displeje, nastavení 4-bitové komunikace, blikání kurzoru a další parametry displeje. Při běhu programu je možno vypsat znak uložením jeho adresy do registru R16 a voláním procedury „LCDZANK“, výpis jednoho čísla se provede uložením jeho hodnoty do R21 a voláním procedury „ZOBRAZ_CISLICI“, výpis registru se zajistí jeho nahráním do R21 a voláním procedury „ZOBRAZ_CISLO“.
3.4.2 Měření napětí Napětí se měří pomocí zabudovaného A/D převodníku s rozlišením 10 bitů, pro naše potřeby ovšem postačuje znát pouze horních 8 bitů, proto se čte jen registr ADCH, který obsahuje horní bity změřené hodnoty a práce s tímto údajem je tedy jednodušší. Jelikož už z předchozího návrhu Z/U převodníku se měřil harmonický signál, který se pohyboval pouze v kladných hodnotách, vznikla už tehdy procedura pro měření napětí špička-špička, které se pohybovalo jen v kladných hodnotách, bohužel tato metoda se ukázala být naprosto nevhodná a to především proto, že A/D převodník stihnul nejvýše dva převody na periodu a proto rozhodně nemohl vystihnout okamžik nejvyšší a 35
nejnižší hodnoty signálu. Zůstává naprostou záhadou, že měření tímto způsobem bylo zatíženo chybou pouze asi 10 %. Po tomto šokujícím odhalení, vrátil jsem se k původnímu řešení s operační diodou, která usměrňuje napětí přímo vycházející ze Z/U převodníku, to je dále vedeno na filtr napětí kde udržuje konstantní hodnotu. (Viz obr.: 32 Výstupní napětí operační diody s připojeným výstupním filtrem) Po změření A/D převodníkem ovšem dostaneme maximální hodnotu výstupního napětí, proto je nutné tento údaj ještě převést na efektivní hodnotu. O toto všechno se stará procedura „NAPETI“ v souboru „detektor.inc“, viz: NAPETI: ;mereni napeti ;VYSLEDEK JE EFEKTIVNI NAPETI *10mV R16 RCALL CTIAD CPI R16,255 BREQ VYPIS_RZSH ;MAX HODNOTA /14, *10+ PRICTENI ZBYTKU /14*10 LDI R17,14 ;/14 RCALL div8u LDI R17,10 ;*10 RCALL mpy8u MOV R10,R17 ;SCHOVANI VYPOCTENE HODNOTY ;PREPOCET ZBYTKU MOV R16,R15 LDI R17,10 ;NASOBENI ZBYTKU *10 RCALL mpy8u MOV R16,R17 LDI R17,14 ;/14 RCALL div8u ;SECTENI ZBYTKU SE SCHOVANOU HODNOTOU ADD R16,R10 RET
Po zavolání této procedury je přečtena hodnota z A/D převodníku, zjistí se, zda nedosahuje maximálního rozsahu, tj. 255, pokud ano, je vypsána hláška „ROZSAH“. Pokud napětí vyhovuje je převáděno na efektivní hodnotu a to vydělením 14, dále vynásobením 10, tím se zajistí dělení 1,4. Zbytek po tomto dělení je uložen v R15, to
36
samé se provede tímto zbytkem a nakonec se oba údaje sečtou, tím dostaneme v R16 hodnotu efektivního výstupního napětí U2, které může být v rozsahu 0 – 180 mV.
3.4.3 Měření fázového posunu číslicovou metodou Jak již bylo nastíněno, u klasického zapojení se ve fázových detektorech provede součin vstupního
a
výstupního
napětí
Z/U
převodníku,
resp.
vstupního
napětí
posunutého o 90°. Ovšem tento součin se provádí analogově, to znamená, že pokud v jednom okamžiku je na referenčním vstupu fázového detektoru např. 0,6 V a tento pracuje v rozsahu 1 V, pak je na výstup U2 nastaveno napětí 0,6*U1. Pokud by se ovšem takováto operace měla vykonat číslicově, bylo by nutno použít podle ShannonKotelnikovova teorému analogově-číslicový převodník tak výkonný, aby přečetl víc než dva vzorky na periodu, ale pro věrnou rekonstrukci signálu by jich bylo potřeba alespoň 256. Pokud by bylo k dispozici takto výkonné zařízení, bylo by možno přímo přečíst vzorky signálu vstupujícího a vystupujícího ze Z/U převodníku a rovnou počítat jejich součin ze kterého by se určila efektivní hodnota signálu a ta by se zobrazila. Bohužel mnou použitý procesor dokáže vzorkovat rychlostí maximálně dva vzorky na periodu, což naprosto nedostačuje. Je tedy použita metoda zjištění fázového posunu číslicovou metodou, která spočívá ve zjištění fázového posunu vstupního a výstupního signálu Z/U převodníku, které jsou ovšem převedené do TTL logiky a jsou přímo čteny na vstupech procesoru, což nevyžaduje použití A/D převodníku. S tímto řešením je procesor při použití níže uvedeného algoritmu schopen přečíst 200 vzorků, z nichž 50 udává fázový posun. Z toho vyplívá, že je procesor schopen zjistit fázový posun v krocích po 3,6°.
37
34 Měření fázového posunu číslicovou metodou [2]
Jak vidíme na obr.: 34 Měření fázového posunu číslicovou metodou [2], procesor vzorkuje signály v TTL logice a provádí jejich součin a výsledek připočte k předchozímu výsledku. Ve skutečnosti je vzorků na periodu 200, pokud jsou signály přesně ve fázi, je součet součinů jednotlivých vzorků ½ celkového počtu tj. 100 a pokud jsou signály vzájemně posunuty o 90° je součet součinů ¼, tj. 50. V našem případě se provádí součin signálu HSIN + výstupního signálu Z/U převodníku a signálu HCOS + výstupního signálu Z/U převodníku, měření se provádí v době, kdy je signál HPER v log. 1. Pro výstupní signál ve fázi se signálem HSIN je v proměnné reprezentující sinusový signál uložena hodnota 100 a v proměnné reprezentující kosinusový signál hodnota 50. V případě že je výstupní signál ve fázi se signálem HCOS, je tomu naopak. Po skončení měření je tedy nutno od naměřených hodnot odečíst 50 a zbytek potom reprezentuje lineární množství sinusové, resp. kosinusové složky výstupního signálu Z/U převodníku. Jelikož použitý procesor neumožňuje přímo vypočítat arcsin, resp. arccos těchto hodnot, je v programu uložena tabulka „SINUS_TAB“, která obsahuje 38
vypočtené hodnoty sinu úhlů, které mohou vyjít z měření, tj. 0-90° v 50 krocích. Po měření se proto skočí do tabulky o zjištěný počet kroků a tím se zjistí velikost sinové a kosinové složky měřeného signálu. Protože velikost sinu a kosinu je změřena zvlášť a každá hodnota reprezentuje obrácený konec tabulky „SINUS_TAB“, mohou obě tyto funkce čerpat přepočítané hodnoty z jediné tabulky. 3.4.3.1 Výpis procedury měření fázového posunu POSUN: LDI R16,0 OUT HRANAD,R16 CLR R21 CLR R22 CLR R23 RCALL ZACATEK_PERIODY ;SINUS INC R21 IN R16,OUTHRANA BST R16,HOUT CLR R16 BLD R16,0 IN R17,HRANA BST R17,HSIN CLR R17 BLD R17,0 AND R17,R16 ADD R22,R17 CPI R21,255 BREQ VYPIS_CHYBA SBIC HRANA,HPER RJMP MPSIN RCALL ZACATEK_PERIODY
CLR R21 MPCOSIN: ;DELKA PULSU INC R21 IN R16,OUTHRANA BST R16,HOUT CLR R16 BLD R16,0 ;COSINUS IN R17,HRANA BST R17,HCOS CLR R17 BLD R17,0 AND R17,R16 ADD R23,R17 CPI R21,255 BREQ VYPIS_CHYBA SBIC HRANA,HPER RJMP MPCOSIN MOV R11,R21 MOV R12,R22 MOV R13,R23
3.4.4 Výpočet hodnot součástky ze změřených údajů Při výpočtu se vychází ze vzorců [2]: 3.4.4.1 Zapojení pro cívku RX = ((U2*RN)/U1)*sin LX = ((U2*RN)/U1*)*cos Přičemž za fázový posun se považuje hodnota zjištěná procedurou měření fázového posunu. Pro signál HSIN nabývá této údaj hodnoty 100 pro výstup ve fázi se vstupem a 39
hodnoty 50 pro fázový posun 90°, proto je nutné od hodnoty dodané procedurou měření fáze odečíst 50, zbylou hodnotu která je v rozsahu 0 - 50, převést na rozsah 0 - 90 a poté provést sinus této hodnoty. Jelikož sinu by v procesoru, který disponuje pouze operátory součet a rozdíl, byly velice složité, byla vytvořena tabulka, která každé hodnotě 0 – 50 přiřadí hodnotu dle vzorce y =100*SIN(3,14/100*x), kde y je výstupní hodnota zapsaná do tabulky a x je hodnota zjištěná procedurou fáze. Jelikož v procesoru nelze uložit číslo v rozsahu 0 – 1, je ve výsledku zahrnut násobitel x100, čili výsledný rozsah lze snadno uložit do 8-bitového registru. Ačkoliv se může zdát nesmyslné, že pro zjištění reálné složky signálu je použita sinová funkce a pro imaginární složku kosinová, je to dáno tím, že v běžných aplikacích pro signály s fázovým posunem 0° vychází prostě nula, ale v tomto případě je vrácena zjištěním fáze číslicově maximální hodnota (50) a se zvyšujícím se rozdílem fází klesá k nule. Ve vzorci RX = U2*RN/U1 po dosazení maximálního změřeného napětí U2, tj. 180, odporu 240 , a napětí U1 = 300mV (na výstupu D/A převodníku je 430, ale filtrem je utlumeno na 300), dostaneme: 180*240/30 = 1440 . Tento výsledek je ovšem velice nepříjemný, protože se nevejde do 8-bitového registru, proto se ve výpočtu normálový odpor uvažuje pouze o velikosti 1/6, potom maximální výsledek je 240, což se vejde do 8-bitového registru a je možno snadno zobrazit na displeji. Aby tato úprava ve výsledku byla vykompenzována, je na displeji vypsáno x6, což znamená, že je nutné zobrazenou hodnotu vynásobit šestkrát. Při přepínání rozsahu dochází fyzicky k výměně normálového odporu za hodnotu 10x vyšší, tj.: 2,4k, 24k, 240k, avšak výpočet zůstává stejný, pouze popisek na displeji se 10x zvyšuje na hodnoty x60, x600, x6k. Pro vzorek LX je výsledná hodnota navíc vydělena konstantou 2**f, kde f = 5 kHz, tudíž výsledek celého vzorce 0,042 H. Tento opět velice nepříjemný výsledek vyřešíme jednoduchou úpravou, změnou frekvence na 5 Hz. Potom vzorec vyjde 42 a zobrazíme mH. Ovšem na displeji s rozsahem 255 je škoda zobrazovat jen do 42, proto ve jmenovateli vzorce se ještě škrtne pětka, čímž se 5x zmenší jeho velikost a na displeji se zobrazí číslo 211, s tím že tento údaj je doplněn o znaménko /5, což znamená, že zobrazený údaj je nutno vydělit 5. Jelikož po vyškrtnutí jen pětky ze jmenovatele
40
zůstane dělitel 188, ve výpočtu je proto použita jeho poloviční velikost, tj. 94 a za normálový odpor 240 se taky uvažuje jen polovina, tj. 120. Na displeji je tedy zobrazeno nevyšší číslo indukčnosti ve tvaru: 159 /5mH. Po prvním zvýšení rozsahu se zvětší normálový odpor 10x, to odpovídá násobiteli /0,5, ten se dá napsat i jako x2, proto se displej změní na 159 x2mH, při dalším se objeví 159 /50H a na nejvyšší rozsah je displej ve tvaru 159/5H 3.4.4.2 Zapojení pro kapacitor GX = (U2/(RN*U1))*sin CX = (U2/(RN*U1*))*cos Zatímco u měření cívky s rostoucím odporem RN rostla i maximální impedance měřené součástky, v tomto případě je tomu opačně a se zvyšujícím se odporem R N klesá nejvyšší změřitelná kapacita součástky, proto se snažím použít co nejnižší hodnotu jeho odporu, bohužel konstrukčně je dovoleno použití minimálně odporu 2 k a tudíž nejvyšší hodnota změřené součástky je 180/(30*2k*2*3,14*5k) = 100 nF. To je sice hodnota velice malá, ale vzhledem k procházejícímu střídavému proudu, stejně není možno měřit elektrolytické kapacitory. Jak vidíme 100 nF není opět číslo vhodná pro zobrazení na displeji. Zaprvé se musíme ve výpočtu zbavit řádu nano, to docílíme jednoduše změnou konstanty dělitele z hodnoty 1,8x10^9, na 1,8 a doplněním přípony nF na displeji. Jenomže dělit číslem 1,8 je složité a číslo 100 je jen v malém rozsahu displeje, proto by bylo fajn dělit celým číslem a výsledek mít třeba 2x větší, aby pokryl rozsah displeje, proto napětí U2 vynásobíme 20x a dělíme 18. Výpočet v procesoru tedy je (20*U2)/18*cos a na displeji se zobrazí /2nF. Navíc je tento výpočet nápadně podobný výpočtu LX a lze tedy využít základ již jednou napsané procedury, pouze se změnou rozsahu a zvyšujícím se RN, se hodnota násobitele 10x nezvyšuje, ale snižuje na /20nF, /k2nF a /2pF. Pro výpočet vodivosti GX opět dosadíme maximální měřenou velikost napětí U2 a dostaneme GX = 180/(2k*30) = 3 mS, nahrazením 2k za 2 a kompenzací vypsáním koncovky mS, se dostaneme na zobrazenou hodnotu 3, pro využití potenciálu displeje ještě vynásobíme čitatele 80x a na displeji je zobrazeno /80mS. Se změnou rozsahu je postupně vypsáno /800mS, /8uS a /80uS. 41
Výpočet v procesoru je tedy ve tvaru GX = (U2*80)/(2*30)*sin Možností jak zvednout maximální hodnotu měřené součástky by bylo, buď zvýšit výstupní proud operačního zesilovače použitého v Z/U převodníku např. připojením koncového stupně ve třídě B, což by umožnilo použít normálový odpor s nižší hodnotou, nebo připojit vstup referenčního napětí A/D převodníku ADC REF na vyšší napětí a podle těchto kroků upravit výpočty v procesoru. Procedury výpočtu změřené součástky nejsou pro jejich přílišnou obsáhlost uvedeny.
3.5 Napájení Přístroj je napájen pomocí dvou samostatných zdrojů napětí 5 V, zapojených tak, aby bylo k dispozici napětí +5V i -5V pro správnou činnost operačních zesilovačů v Z/U převodníku. Na desce je ovšem připraveno i místo pro nábojovou pumpu LTC1046, která zajistí záporné napětí -5 V se zatížením až 50mA, ovšem vzhledem k vysokým pořizovacím nákladům a špatné dostupnosti tato součástky, není osazena. Pro případ jejího osazení je napájecí konektor záporného napětí řešen tak, že připojením adaptéru se odpojí nábojová pumpa a záporné napětí se odebírá z adaptéru. Přítomnost kladného a záporného napětí je indikována červenou a zeleno LED.
3.6 Měřící vývody Přípravek je dle zadání vybaven měřícími vývody:
VSTUP A/D – vyveden pin 0 portu A mikrokontroléru 2, na kterém se provádí měření výstupního napětí bloku Z/U převodníku
VYSTUP Z/U – vyveden výstupní signál operačního zesilovače který je zapojen jako převodník impedance na napětí, zároveň vstupní signál operační diody
VYSTUP
KOMP
–
výstupní
signál
komparátoru
který
poskytuje
mikrokontroléru signál pro zjištění fázového posuvu (HOUT)
VYSTUP D/A – výstupní signál D/A převodníku, také signál na vstupu aktivního filtru II. řádu
42
VSTUP Z/U – vstupní signál operačního zesilovače který je zapojen jako převodník impedance na napětí, zároveň výstupní signál aktivního filtru II. řádu
HCOS (hrana kosinus) – poskytovaný kosinový signál
HSIN (hrana sinus) – poskytovaný sinový signál
HPER (hrana periody) – signál, jehož délka log. 1 nebo log. 0 určuje délku periody generovaného signálu 5 kHz
HS (hrana sample) – s každou přechodovou hranou tohoto signálu je vyslán vzorek na D/A převodník.
3.7 Seznam součástek +5V -5V C1 C10 C11 C12 C13 C14 C15 C16 C17 C18 C19 C2 C20 C21 C22 C23 C24 C25 C3 C4 C5 C6 C7 C8 C9 CON2
PAD_1+ PAD_127p 100n 100n 47u 10n 10n CK1206100N 100n CK1206100N CK1206100N CK1206100N 27p CK1206100N CK1206100N CK1206100N CK1206100N 10u 10u 100n 10n 100n 47u 100n 27p 27p Cx
CON3 D1 D2 D3 D4 IC1 IC2 IO1 IO2 IO4 L1 L2 OZ1 Q1 Q3 R1 R10 R11 R12 R13 R14 R15 R16 R17 R18 R19 R2 R20
Lx 1N4004 ATM0802A LED_5 LED_5 MEGA16-P MEGA16-P TL074CN DAC0832 LM317L 33uH 33uH LM358 16MHz 16MHz 100 100k 100k 1M 1M 240 1,2k 1,2k 24k 1k 120k 100 120k
43
R21 R22 R23 R25 R26 R27 R3 R4
1k 1k 220k R1206180R R12061K5 1k 3,3k 220
R5 R6 R7 R8 R9 U1 VR1 VR2
220 220 1k 1k 20k LTC1046 TL431 TL431
3.8 Návrh plošného spoje
35 Osazená deska včetně všech spojů
36 Pouze měděné spoje na desce
44
37 Osazovací plánek
4 Závěr 4.1
Zhodnocení práce
Cílem bakalářské práce bylo navrhnout, sestrojit a odzkoušet měřící přípravek číslicového RLC metru, který bude využíván k výukovým účelům na Vysoké škole polytechnické Jihlava. Podle požadavků zadání je přístroj vybaven dvěma mikrokontroléry, převodníkem impedance na napětí, D/A převodníkem, A/D převodník je použitý integrovaný v mikrokontroléru 2, displejem 2x8 znaků a měřícími body, na nichž je možno sledovat děje uvnitř zařízení. Těmto požadavkům bylo vyhověno a přístroj byl úspěšně sestrojen a odzkoušen. Dále přístroj obsahuje přípravu pro nábojovou pumpu, která umožní použít jen jeden napájecí zdroj, LED indikující připojení napájení a přepínač rozsahů, kterým zle volit 4 rozsahy. Přesnost přístroje odpovídá pořizovací ceně a splňuje záměr bakalářské práce na demonstrační model přístroje tohoto typu. Hlavní předností tohoto přístroje je číslicové pracování signálu na výstupu Z/U převodníku, což teoreticky oproti analogovému prototypu zvyšuje přesnost měření, ovšem i tento přístroj obsahuje množství analogových obvodů pro úpravu signálu, které způsobují jeho zkreslení a podléhají rušení.
45
4.2 Testování Během testování byla zjištěna chyba výpočtu kapacitní složky, proto byla do programu připsána instrukce CLR R31, která před každým výpočtem hodnoty R X, GX, LX, CX vymaže nejvyšší registr, po této úpravě se již chyba nevyskytla. Během testování bylo také zjištěno, že je dobré osciloskopem sledovat signál VYSTUP Z/U a nastavit takový rozsah měření, resp. velikost měřené součástky, aby tento signál zachoval sinusový tvar a nebyl ořezáván limitním napětím operačního zesilovače.
4.3 Sestavení na DPS Během přestavby z nepájivého pole na desku plošného spoje bylo zjištěno, že operační zesilovač LM358 ve funkci sledovače připojený za D/A převodník, který napájí přímo filtr horní propust, nedokáže udržet signál při napájení 0,+5 V a tento signál se při hodnotách blízkých nule deformoval. Tento operační zesilovač není možno přeřadit na napájení -5,+5 V, protože je sdružený s komparátorem který poskytuje signál do mikrokontroléru a tento musí mít výstupní napětí v rozsahu 0,+5 V. Z tohoto důvodu byl do zapojení přidán ještě jeden operační zesilovač LM358 jako sledovač připojený na napětí -5, +5 V, připojený před filtr horní propust. Po této úpravě již i signál blízký nule kopíruje výstup z D/A převodníku.
38 Sestavený přípravek RLC metru
46
4.3.1 Rušení Na DPS vykazuje přístroj menší přesnost než na nepájovém poli a vyšší zarušení, to přisuzuji větší hustotě obvodu, tudíž se mohou jednotlivé části rušit navzájem. Dále je přístroj extrémně náchylný na rušení z okolí, jak ukazují obrázky: Obr.: 39 Ukázka měření kapacity a Obr.: 40 Zarušení přístroje dotekem obalu dekády, které pocházejí ze stejného měření, pouze na druhém je na obalu měřené dekády dotek lidské ruky. Jak sami vidíte, i takovýto nepatrný zdroj rušení zcela zlikviduje činnost celého obvodu.
39 Ukázka měření kapacity
40 Zarušení přístroje dotekem obalu dekády
47
4.4 Naměřené hodnoty Po sestavení na DPS byly naměřeny tyto orientační hodnoty
4.4.1 Indukčnost 1 Testování měření indukčnosti
LX 5,2 mH 60 mH 140 mH
RX 24 480 6600
LN
RN
4,9 mH 0 54,9 mH 90 100 mH 9090
4.4.2 Kapacita 2 Testování měření kapacity
CX
RX
CN
RN
9 nF 19 nF 300 pF
912 637 40 k
10,04 nF 7 nF 600 pF
5500 5500 60 k
Při měření je nutné sledovat osciloskopem signály VYSTUP Z/U a VYSTUP KOMP, a nastavovat takové hodnoty a rozsah, aby signál VYSTUP KOMP měl obdélníkový průběh se střídou přibližně 1:1 a signál VYSTU Z/U měl sinusový průběh.
41 Pracoviště sestavení a testování
48
4.5 Možnosti rozšíření Bylo by možné zařízení doplnit o obvody pro zjištění zkratu, nebo nepřipojené měřené součástky. Program by také mohl obsahovat smyčku automatického ladění, která by přestavovala měřící rozsah pomocí analogového komparátoru, jenž by strojově přepínal normálový odpor Z/U převodníku, popřípadě by mohl mírně upravit amplitudu generovaného signálu, aby převodníky pracovaly pokud možno v nejvyšších hodnotách, kde je chyba měření nejmenší. Výsledky by mohly být zobrazovány nejen na displeji ale odesílána i do PC.
4.6 Praktické zkušenosti Při návrhu a stavbě tohoto přístroje jsem hodně rozšířil svoje zkušenosti, protože takto rozsáhlé zařízení jsem nikdy nekonstruoval. Nejvíce jsem obohatil svoje znalosti práce a návrhu v programu EAGLE.
49
5 Seznam literatury 1. BRTNÍK,
Bohumil;
MATOUŠEK,
David.
APLIKACE
PROCESORU
ATmega644 V ALGORITMECH ČÍSLICOVÉHO ZPRACOVÁNÍ SIGNÁLU: Jednoduchý generátor signálu. ARadio : Konstrukční elektronika. 2010, XV, 1, s. 3-40. ISSN 1211-3557. 2. BRTNÍK, Bohumil. ELKEKTRICKÁ MERENÍ : 3.3.4 Číslicové generátory. Jihlava, 2007. 162 s. Skripta. Vysoká škola polytenchnická Jihlava. 3. MATOUŠEK, David. Práce s mikrokontroléry ATMEL AVR : ATmega16. Praha : BEN - technická literatura, 2006. 320 s. ISBN 80-7300-174-8. 4. ATMEL referenční příručka ATmega16, AVR instrukční sada 5. Literatura obsažená v adresáři „materiály“ 6. Forumer.com [online]. 2003 [cit. 2011-05-05]. MATH ROUTINES . Dostupné z WWW: http://avr.15.forumer.com/a/math-routines-25/ 7. Avr-asm-tutorial.net : Calculations in assembler language [online]. 2002 [cit. 2011-05-06]. Beginner's introduction to AVR assembler language. Dostupné z WWW: http://www.avr-asm-tutorial.net/avr_en/beginner/CALC.html 8. 8052.com : Submit code to code library [online]. 2002 [cit. 2011-05-06]. 8052 Code Library. Dostupné z WWW: http://www.8052.com/codelib 9. Piclist.com [online]. 2011 [cit. 2011-05-06]. Atmel AVR Microcontroller Basic Math
Code
Library
.
Dostupné
z
WWW:
http://www.piclist.com/techref/atmel/avr/div8x8sw-aat.htm
50
6 Seznam zkratek OZ
Operační zesilovač
IN+
Neinvertující vstup operačního zesilovače
IN-
Invertující vstup operačního zesilovače
H
Henry – jednotka indukčnosti
F
Farrad – Jednotka kapacity
W
Ohm – jednotka odporu, resp. Impedance
f
Značka elektrické frekvence
R
Značka elektrického odporu
C
Značka elektrické kapacity
L
Značka elektrické indukčnosti
kHz
Jednotka frekvence
A/D
Analogově digitální
D/A
Digitálně analogový
Z/U
Impedance - napětí
HCOS Hrana kosinus – poskytovaný kosinový signál HSIN
Hrana sinus – poskytovaný sinový signál
HPER
Hrana periody – signál, jehož délka log. 1 nebo log. 0 určuje délku periody generovaného signálu 5 kHz
HS
Hrana sample – s každou přechodovou hranou tohoto signálu je vyslán vzorek na D/A převodník.
LED
Light emitting diode – světlo emitující dioda
DPS
Deska plošného spoje
51