ÿ(6.e9<62.e8ÿ(1Ì7(&+1,&.e935$=( )DNXOWDHOHNWURWHFKQLFNi .DWHGUDPďĢHQt
%$.$/Éġ6.É35É&(
$XWRU5RPDQ7iERUVNì
ÿHVNpY\VRNpXĀHQtWHFKQLFNpY3UD]H )DNXOWDHOHNWURWHFKQLFNi .DWHGUDPďĢHQt
%$.$/Éġ6.É35É&( 0,.52352&(625(0ġÌ=(1É2'32529É '(.É'$
9HGRXFtSUiFH,QJ-DQ.XĀHUD
3UDKD
$XWRU5RPDQ7iERUVNì
3URKOiåHQt Prohlašuji, že jsem svou bakaláĜskou práci vypracoval samostatnČ a použil jsem pouze podklady (literaturu, projekty, SW atd.) uvedené v pĜiloženém seznamu. Nemám závažný dĤvod proti užití tohoto školního díla ve smyslu § 60 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Ĥ (autorský zákon).
V Praze dne ……………………….
……………………………………. podpis
3RGďNRYiQt Rád bych podČkoval všem, kteĜí mi jakýmkoli zpĤsobem pomáhali pĜi vzniku této bakaláĜské práce. DČkuji pĜedevším vedoucímu mé práce Ing. Janu Kuþerovi a jeho kolegovi Ing. Radku Sedláþkovi, za trpČlivé vedení a cenné rady bČhem celé realizace. Dále dČkuji rodiþĤm za trpČlivost a podporu.
$QRWDFH BakaláĜská práce se zabývá návrhem a zhotovením elektronické odporové dekády, která je urþena do zapojení obvodu Wagnerovy zemČ. Celé zaĜízení je Ĝízeno jedním mikropoþítaþem. Akþní odporové elementy tvoĜí digitální potenciometry. Nastavení hodnot a další ovládání zajišĢuje sada tlaþítek. Pro možnost automatizovaného Ĝízení je hardwarovČ pĜipraveno ke spojení s PC pĜes USB. Hodnotu nastavené rezistivity zobrazuje LED displej. Zhotovené zaĜízení je uloženo do stínící mČdČné krabiþky s vyvedenými konektory pro pĜipojení do mČĜeného obvodu. Práce se zabývá hardwarovým Ĝešením i návrhem softwaru umožĖující použití zaĜízení.
$QQRWDWLRQ The Bachelor work deals with a design and implementation of the electronic decaderesistor box, which is intended for conection to the Wagner‘s ground circuit. The device is controled by one microcomputer. The action resistance elements are constituted by the digital potentiometers. The value setup and other system control is perfomed by set of buttons. The device is hardware prepared for a conection with PC via the USB port . Actual state of the decade is indicated by a LED display . The design is placed in a shielded box with conectors dedicated for plug-in to the measured circuit. The work accomplishes hardware implementation of the device and its control software development.
2EVDK 1
ÚVOD ........................................................................................................................................................... 3 POŽADAVKY NA ěEŠENÍ ........................................................................................................................ 4
1.1 2
NÁVRH HARDWARU ............................................................................................................................... 5 TEORETICKÝ ROZBOR ........................................................................................................................... 5
2.1
2.1.1 Digitální potenciometry................................................................................................................... 6 2.1.2 Zobrazovaþ...................................................................................................................................... 7 2.1.3 Procesor .......................................................................................................................................... 7 2.1.4 Napájecí prvky ................................................................................................................................ 7 2.1.5 Stabilizátory (lineární regulátory) .................................................................................................. 8 2.1.6 Modul pro komunikaci s PC............................................................................................................ 8 2.2 HARDWAROVÉ FUNKýNÍ BLOKY ........................................................................................................... 9 2.2.1 2.2.2
Mikroprocesor PIC16F877A –I/PT................................................................................................. 9 Napájecí zdroje ............................................................................................................................. 11
2.2.2.1 2.2.2.2 2.2.2.3
2.2.3
Digitální potenciometry AD7376BRUZ50 .................................................................................... 14
2.2.3.1
2.2.4
Zdroj ±12 V........................................................................................................................................ 11 Zdroj +5 V........................................................................................................................................... 12 Zdroj ±2,6 V ........................................................................................................................................ 13 Rozhraní SPI ....................................................................................................................................... 17
Digitální potenciometry AD5254BRUZ1 ...................................................................................... 19
2.2.4.1
Rozhraní I2C........................................................................................................................................ 22
2.2.5 ýtyĜ - místný LED zobrazovaþ BQM514RD.................................................................................. 24 2.2.6 ěízení – jednochuchá klávesnice ................................................................................................... 24 2.2.7 UMS2 – konvertor USB................................................................................................................. 25 2.3 KONSTRUKýNÍ ěEŠENÍ ........................................................................................................................ 27 2.3.1 Plošné spoje .................................................................................................................................. 27 2.4 KONEýNÁ PODOBA ZAěÍZENÍ .............................................................................................................. 28 3
SOFTWAROVÉ ěEŠENÍ ........................................................................................................................ 28 3.1
VÝVOJOVÉ PROSTěEDÍ A JAZYK .......................................................................................................... 28
3.2
PROGRAM ........................................................................................................................................... 29
3.2.1 Struktura programu odporova_dekada.asm................................................................................. 29 3.3 VÝVOJOVÝ DIAGRAM.......................................................................................................................... 29 3.3.1 4
5
PĜíklady kódování z þíslic displeje ................................................................................................ 33
VÝSLEDKY MċěENÍ.............................................................................................................................. 35 4.1
PěESNOST MċěENÍ .............................................................................................................................. 36
4.2
MċěENÍ REZISTIVITY .......................................................................................................................... 37
4.3
MċěENÍ KAPACITY .............................................................................................................................. 38
4.4
MċěENÍ FREKVENýNÍ ZÁVISLOSTI CP A RP ......................................................................................... 39
4.5
MċěENÍ NA KOAXIÁLNÍM MģSTKU...................................................................................................... 40
ZÁVċR ....................................................................................................................................................... 41
LITERATURA .................................................................................................................................................... 42 A
PěÍLOHA - ROZMÍSTċNÍ VÝVODģ SOUýÁSTEK ......................................................................... 44
B
PěÍLOHA - SCHÉMA ZAPOJENÍ......................................................................................................... 46
C
PěÍLOHA - SEZNAM SOUýÁSTEK..................................................................................................... 48
D
PěÍLOHA - PLOŠNÉ SPOJE.................................................................................................................. 49
E
PěÍLOHA - OBSAH PěILOŽENÉHO CD ............................................................................................ 52
1
6H]QDPREUi]NĪ Obr. 2.1 Blokové schéma odporové dekády ............................................................................. 5 Obr. 2.2 UspoĜádání odporových elementĤ .............................................................................. 6 Obr. 2.4 a) pĜipojení akumulátorĤ, b) blokování napČtí.......................................................... 11 Obr. 2.5 Zapojení zdroje +5 V ................................................................................................ 12 Obr. 2.6 Zapojení zdroje ± 2,6 V............................................................................................ 14 Obr. 2.7 VnitĜní organizace AD7376ARUZ50 ....................................................................... 15 Obr. 2.8 RDAC struktura AD7376ARUZ50........................................................................... 15 Obr. 2.9 Možnosti zapojení ..................................................................................................... 16 Obr. 2.10 Základní koncepce SPI bus., b)............................................................................... 18 Obr. 2.11 ýtení dat z pamČti s rozhranním SPI....................................................................... 18 Obr. 2.12 Zápis dat do pamČti s rozhranním SPI .................................................................... 18 Obr. 2.13 PrĤbČh logických úrovní na vodiþích SDI, CLK a CS ........................................... 19 Obr. 2.14 Blokové schéma vnitĜní struktury potenciometru AD5254BRUZ1 ....................... 20 Obr. 2.15 Zapojení AD5254BRUZ1 ....................................................................................... 20 Obr. 2.16 Celková koncepce sbČrnice I2C .............................................................................. 22 Obr. 2.17 PrĤbČh logických úrovní na vodiþích SDA a SCL ................................................. 23 Obr. 2.18 Display BQ M514RD–pohled shora ....................................................................... 24 Obr. 2.19 Zapojení pro dynamické Ĝízení svitu LED displej .................................................. 24 Obr. 2.20 ýásti Ĝídícího obvodu klávesnice ............................................................................ 25 Obr. 2.21 Zapojení modulu v aplikaci..................................................................................... 26 Obr. 2.22 Zapojení impedanþního oddČlovaþe........................................................................ 26 Obr. 2.23 Koneþná podoba zaĜízení ........................................................................................ 28 Obr. 3.1 Struktura hlavní programové smyþky ....................................................................... 30 Obr. 3.2 Struktura podprogramu init ....................................................................................... 30 Obr. 3.3 Struktura podprogramu poc_nast .............................................................................. 30 Obr. 3.4 Struktura procedury obsluhy tlaþítek ........................................................................ 31 Obr. 3.5 Struktura podprogramu rutina ................................................................................... 32 Obr. 3.6 Struktura podprogramu dej_kody ............................................................................. 32 Obr. 3.7 Struktura podprogramu zapis .................................................................................... 32 Obr. 3.8 Struktura podprogramu zapisEE ............................................................................... 32 Obr. 3.9 Struktura podprogramu vykresli ............................................................................... 33 Obr. 3.10 Podmínky pro kódvání codeI2C a codeSPI ............................................................ 35 Obr. 4.6 Frekvenþní závislost složky Cp................................................................................. 40 Obr. A.1 RozmístČní vývodĤ pouzdra TQFP mikroprocesoru PIC16F877A ......................... 44 Obr. A.2 RozmístČní vývodĤ pouzdra DIP8 lineárního regulátoru MAX667CSA ................ 44 Obr. A.3 RozmístČní vývodĤ pouzdra DIP8 lineárního regulátoru MAX663CSA ................ 44 Obr. A.4 RozmístČní vývodĤ pouzdra DIP8 lineárního regulátoru MAX664CSA ................ 44 Obr. A.5 RozmístČní vývodĤ pouzdra TSSOP potenciometru AD7376ARUZ50 .................. 45 Obr. A.6 RozmístČní vývodĤ pouzdra TSSOP potenciometru AD5254BRUZ1 .................... 45 Obr. A.7 RozmístČní vývodĤ pouzdra SOIC_N oddČlovaþe ADuM3201 .............................. 45 Obr. A.8 RozmístČní vývodĤ USB modulu UMS2 (DIL28)................................................... 45 Obr. B.9 Schéma zapojení odporové dekády (1.þást) .............................................................. 46 Obr. B.10 Schéma zapojení odporové dekády (2. þást) .......................................................... 47 Obr. D.11 DPS keyboard......................................................................................................... 49 Obr. D.12 Osazovací výkres DPS keyboard ........................................................................... 49 Obr. D.13 DPS modul_digipot ................................................................................................ 49 Obr. D.14 Osazovací výkres DPS modul_digipot................................................................... 50 Obr. D.15 DPS Mainboard ...................................................................................................... 50 Obr. D.16 Osazovací výkres DPS Main board........................................................................ 51 2
ÔYRG Úkolem této bakaláĜské práce je realizace elektronické odporové dekády a hlavní myšlenkou využití digitálních potenciometrĤ jako základních odporových prvkĤ. ZaĜízení bude využíváno na KatedĜe mČĜení v laboratoĜích legální metrologie elektrických veliþin. Pojem elektronická odporová dekáda, pĜedstavuje pĜípravek, který je schopen mČnit na rezistivitu mezi jeho výstupními svorkami. Meze rezistivity, stejnČ jako rozlišení, jsou urþeny typovým rozsahem použitých odporových prvkĤ. Odporová dekáda je užívána k mČĜení na pĜesném stĜídavém impedanþním mĤstku, konkrétnČ, v obvodu vyvažování Wagnerovy zemČ [ 2],[ 3],[ 4]. Oþekává se, že za použití digitálních potenciometrĤ nebude ovlivĖovat metody mČĜení promČnnými parazitními kapacitami, zakmitáváním mechanických kontaktĤ a poskytne snadnČjší možnost nastavování než dosud používané mechanicky pĜepínané dekády. Dalším kladem je vyšší maximální frekvence mČĜeného signálu. ZpČtnou vazbu s uživatelem zajišĢuje LED display. Samotné Ĝízení hodnot zprostĜedkovává vlastní jednoduchá klávesnice. Z dĤvodu vzdáleného automatizovaného Ĝízení je hardwarovČ pĜipraveno k budoucímu pĜipojení k PC. Práce je tématicky þlenČna do tĜí hlavních þástí. První þást je vČnována návrhu hardwaru a konstrukþnímu Ĝešení. V druhé þásti je popsán implementovaný obslužný software. Poslední þást se vČnuje testování zaĜízení a mČĜení jeho parametrĤ, dĤležitých pro užití v praxi.
3
3RçDGDYN\QDĢHåHQt Možnosti použití •
Rozsah: o 500Ω - 10KΩ o 500 Ω realizováno diskrétní souþástkou na DPS nebo softwarovČ
•
NapČtí vstupního signálu: o Max. ±10V
•
Proudové zatížení: o Max. ± 20mA
Funkce •
ěízení odporové složky
•
Rozlišení 1ȍ
•
Zobrazení 4-místné nastavené odporové hodnoty
•
ěízení pomocí tlaþítkové klávesnice
•
Hrubé a jemné ladČní hodnot
•
Signalizace špatného stavu baterií
•
Odpojení dekády od mČĜeného obvodu
•
Provozní doba alespoĖ 10 hodin
•
Hardwarové pĜizpĤsobení pro komunikaci po USB s PC
•
Zapnutí/vypnutí zaĜízení
Ochrana proti rušení •
oddČlení Ĝídící a signálové þásti
•
odporové elementy v nejmenší možné vzdálenosti od sebe
•
napájení ze stejnosmČrných nabíjecích akumulátorĤ
•
samostatné napájecí bloky pro odporové elementy a ostatní komponenty
•
USB signály impedanþnČ oddČlené od obvodu
•
užití stínicí rozlévané mČdi v okolí signálových cest na plošném spoji
•
umístČní v kovovém stínicím krytu s vyvedenými BNC konektory
4
1iYUKKDUGZDUX Tato kapitola popisuje návrh a realizaci hardwarové þásti odporové dekády. První þást zdĤvodĖuje použití vybraných souþástí pro konkrétní Ĝešení. Druhá þást se detailnČ zabývá návrhem a popisem jednotlivých funkþních blokĤ. V tĜetí þásti je rozebrána problematika návrhu celkové konstrukce a desek plošných spojĤ.
Obr. 2.1 Blokové schéma odporové dekády
7HRUHWLFNìUR]ERU ZaĜízení má být koncipováno jako samostatnČ funkþní mobilní celek, tedy s vlastní þíslicovou Ĝídící jednotkou . Daný rozsah jmenovitého odporu zajišĢují užité digitální potenciometry. PĜesnost je ovlivnČna jak parametry a možnostmi potenciometrĤ tak softwarovými algoritmy Ĝízení. Ovládání je zprostĜedkováno návrhem vhodné klávesnice. Nechybí ani možnost pĜipojení ke komunikaþnímu portu USB osobního poþítaþe. Pro uživatelovu kontrolu Ĝízení a nastavování bude použit levný, ale pro naši aplikaci postaþující zobrazovací prvek. PĜipojování do obvodu bude realizováno konektory. Napájení musí být Ĝešeno pomocí baterií z dĤvodu zmínČného nezanášení rušení do zaĜízení. Bude uloženo v odstínČném prostoru kovové krabiþky z dĤvodu zamezení rušení od okolních elektronických spotĜebiþĤ.
5
'LJLWiOQtSRWHQFLRPHWU\ Dekáda bude pĜipojována na stĜídavé napČtí max ±10 V. Nezkreslený symetrický signál na výstupech potenciometrĤ je pĜi podmínce (2.1), USIG < UNAP
(2.1)
kde USIG zastupuje velikost napČtí pĜipojovaného na svorky potenciometru a UNAP velikost napájecího napČtí potenciometrĤ. Pro frekvenci signálu platí podmínka (2.2), FSIG < FBW
(2.2)
kde FSIG je frekvence signálu pĜipojovaného na svorky potenciometru a FBW je hodnota udaná výrobcem a urþuje šíĜku frekvenþního pásma potenciometru(od slova band width). Další požadavky na dekádu jsou, rozsah dekády 10 kȍ a rozlišení pĜibližnČ 1Ω. Univerzální souþástku pro tyto parametry nelze na svČtovém trhu sehnat. ěešením požadavkĤ je realizace nestandardního Ĝešení zapojení souþástek. Vychází ze sérioparalelní kombinace pevného diskrétního odporu a dvou rĤzných digitálních potenciometrĤ, kdy dojde k rozložení pĜipojovaného napČtí na všechny prvky. RozdČlení odporových složek je patrné z blokového schématu obr. 2.2. Pro Ĝády tisícĤ a stovek ohmĤ se použije potenciometr s malým rozlišením a velkým vstupním napČtím okolo ±12 V. Pro Ĝád desítek a jednotek ohmĤ velké rozlišení a rozsah napájecího napČtí kolem ±3,0 V. Pro tyto požadavky byly vybrány potenciometry AD7376ARUZ50[ 7] a AD5254BRUZ1[ 8]. RozmístČní vývodĤ jejich pouzder je zĜejmé z Obr. A.5 a obr. a.6. Tímto zapojením dosáhneme požadovaného vykrytí škály hodnot a rozlišitelnost 1 Ω v plném rozsahu. Krok tĜí paralelních 50 kȍ potenciometrĤ má velikost 130 ȍ a þtyĜi paralelní 1 kȍ pĜesnČ 1 ȍ. Rozložením napČtí 10 V na tĜi þleny se zabrání pĜekroþení povolených napČĢových maxim obvodĤ. ZaĜazené duální relé bude sloužit jako ochrana pĜed pĜipojením digitálních potenciometrĤ na napČtí, bez napájení.
Obr. 2.2 UspoĜádání odporových elementĤ
6
Obvodem mĤže protékat nejvyšší proud 20 mA. Každý potenciometr je navržen na stejnosmČrné proudové zatížení 5 mA. Dle rovnice (2.3)
i MAX = 2 ⋅ I SS (A)
(2.3)
je urþeno stĜídavé proudové zatížení jednoho digitálního potenciometru na 7 mA. Tedy pro tĜi paralelní souþástky tvoĜí hranici 21 mA. Frekvenþní pásmo se odvodí od slabšího prvku v bloku a také je silnČ závislé na nastavené hodnotČ. Z katalogových listĤ [ 7] a [ 8] se nechá pĜepokládat mezní frekvence 100 kHz pro polovinu z rozsahu jejich rezistivity. Ale to je pĜedmČtem testování v mČĜení.
=REUD]RYDĀ Hlavní funkcí zobrazovaþe je indikace nastavené hodnoty odporu dekády. Vzhledem k tomu, že maximální rozsah dekády je stanoven 10 kȍ a rozlišení 1 ȍ, bude pro realizaci zobrazovaþe postaþovat þtyĜmístný sedmi-segmentový displej pro zobrazení maximální hodnoty 9999. Z dĤvodu úspory I/O pinĤ Ĝídící jednotky zobrazovaþe byla vybrána souþástka s možností multiplexovaného Ĝízení svitu. Druh Ĝízení pĜispívá i nižší spotĜebČ. Vzhledem k bateriovému napájení je vhodné zvolit nízkopĜíkonovou souþástku. Výše uvedeným vlastnostem odpovídá LED display BQ M514RD na obr. 2.18, se zapojením spoleþná katoda, který je také použit v aplikaci.
3URFHVRU Procesor slouží jako Ĝídící prvek celé odporové dekády. Jsou na nČj pĜipojeny periferní zaĜízení, za které považujeme ovládací klávesnici, sériové vodiþe komunikátoru po USB rozhraní, digitální potenciometry a zobrazovaþ. K pĜipojení všech potĜebných blokĤ postaþí kontrolér s 31 vstupnČ/výstupními porty. Musí obsahovat pamČĢ EEPROM pro uložení nastavených hodnot, pamČĢ RAM pro ukládání dat vedlejších výpoþtĤ a dostateþnou pamČĢ programu pro pĜípadnou tvorbu tabulek. Modul alespoĖ jednoho sériového rozhranní I2C nebo SPI pro Ĝízení digitálních potenciometrĤ a UART ke komunikaci s pĜevodníkem USB/UART. Mikroprocesor vyhovující požadavkĤm je PIC16F877A od firmy Microchip.
1DSiMHFtSUYN\ Z hlediska pĜenositelnosti zaĜízení není jiná možnost, než použití stejnosmČrných þlánkĤ. Tato volba odstraĖuje možnost rušení ze sítČ . Z podmínky rozsahu vstupního signálu max. ±10 V jsou potĜeba baterie s alespoĖ 1,5 V pĜesahem úrovnČ signálu. Volba uvažuje 7
možný pokles napČtí v dĤsledku dlouhodobého užívání celého zaĜízení nebo zaĜazení ochranných diod. Tato doba je urþena maximálnČ 10 hodinami provozu. ZaĜízení má v souþtu i s pĜedimenzováním proudový odbČr 110 mA. Z této skuteþnosti vyplývá minimální kapacita þlánkĤ 1,2 Ah. Jako nejlepší volba se jeví 12 V olovČné akumulátory s kapacitou 1,5 Ah. Zapojením tČchto dvou þlánkĤ do série a vyvedením nulového potenciálu jsou zajištČny úrovnČ ±12 V.
6WDELOL]iWRU\OLQHiUQtUHJXOiWRU\ Z použitých typĤ souþástek pro Ĝídící a odporové prvky (PIC16F877A, AD5254, AD7376) je zĜejmé, že v obvodu budou muset být tĜi úrovnČ napájecího napČtí. Neboli tĜi samostatné zdroje, upravující ±12 V nabíjecích akumulátorĤ na požadované úrovnČ +5V pro procesor, ±2,6V pro digitální potenciometry AD5254 a pro AD7376 se ponechá vlastních ±12V baterií. Z hlediska individuality úrovnČ ±2,6V je nutné použít lineární regulátory. Pro zachování koncepþnosti se použijí souþástky od jednoho výrobce i pro ostatní potĜebné stabilizace napČtí. Výstupní proud dosahuje maximálnČ pro +5 V stabilizátor 100 mA. Postaþí tedy obvod MAX667CSA z obr. a.2 s možným proudovým odbČrem 250 mA. Dále pak ze stabilizátoru ±2,6 V bude odebírán proud v Ĝádech jednotek mA a proto je využit obvod MAX663CSA z Obr. A.3 pro kladné a MAX664CSA z obr. a.4 pro záporné napČtí s maximálním výstupním proudem -40 mA.
0RGXOSURNRPXQLNDFLV3& ZaĜízení se v budoucnosti musí nechat Ĝídit prostĜednictvím osobního poþítaþe. KonkrétnČ se jedná o propojení sériové linky UART mikroprocesoru se sériovým vysokorychlostním portem USB. Proto je tĜeba uvažovat použití nČjakého snadného prostĜedku, který by toto zajistil. Jako nejlepší vyšlo využití již ovČĜeného zpĤsobu spojení. ěešení spoþívá v aplikování modulu UMS2 z obr. a.8 od firmy FTDI. Tento obvod je urþen výhradnČ pro zmínČnou specifickou komunikaci v rĤzných módech zapojení.
8
+DUGZDURYpIXQNĀQtEORN\ Tato kapitola postupnČ rozebírá jednotlivé prvky obvodového schématu. ObjasĖuje použitá zapojení a konfiguraci souþástek kolem integrovaných obvodĤ. Vztahy mezi bloky souþástek jsou patrné z blokového schématu na obr. 2.1
0LNURSURFHVRU3,&)$²,37 Procesor firmy Microchip, PIC16F877A byl vybrán na základČ jeho možností z verzí rodiny PIC16F87XA, jejíž nižší þlenové se liší hlavnČ v poþtu pinĤ a velikosti vnitĜní flash a EEPROM pamČti. Z obr. a.1 je patrné, že procesor má 44 vyvedených pinĤ, k zapojení jich lze využít 40
Obr. 2.3 Struktura jádra mikroprocesoru PIC16F877
9
a jako I/O piny je možno definovat 33 z nich. Rozdíl tvoĜí neobsazené piny, oznaþované NC z anglického No Connect, osazované výrobcem pro dodržení standardĤ TQFP pouzder. Jedná se o 8-mi bitový mikropoþítaþ navržený technologií CMOS, což umožĖuje jeho využití v plnČ statickém režimu s minimálním odbČrem a uchováním dat v jeho vnitĜních pamČtech po odpojení napájení. Struktura jádra je patrná z obr. 2.3. Pro programování nám postaþí pouze znalost 35 instrukcí, které urþují rozsah jeho instrukþního souboru typu Microchip RISC. Další výhodou v možnostech jeho programování je implementace rozhraní ICSP (InCircuit Serial Programming), které umožĖuje po hardwarové úpravČ obvodu nahrávat nový kód do procesoru pĜímo v aplikaci a získat pĜístup k vnitĜní flash a EEPROM pamČti. Mimo zmínČných typĤ je procesor vybaven ještČ RAM pamČtí pro ukládání vedlejších dat za bČhu programu. Hlavní þást jádra procesoru tvoĜí ALU(Aritmeticko Logická jednotka) ve spolupráci s pracovním registrem W (Working) a sadou SFR (Speciální Funkþní Registry), které jsou na ni pĜipojeny.
PĜehled vlastností: PamČti: •
nezávislá programová a datová pamČt
•
14,3 kB pamČti programu (flash), 256 B pamČti EEPROM, 368 B pamČti dat (SRAM)
Vybrané periferie: •
Timer0 o
•
•
8-mi bitový þasovaþ/þítaþ (Timer/Counter - 0) s 8-mi bitovou pĜeddČliþkou
Synchronní Sériový Port (SSP) o
SPI™ (Master mode)
o
I2C™ (Master/Slave)
Univerzální synchronní asynchronní pĜijímaþ vysílaþ(USART/SCI) o
možnost 9-bitového pĜenosu
o
maximální rychlost 57,6 KBaud
•
Reset po pĜipojení napájení: Power-on Reset
•
ZpoždČní výpoþetní þinnosti po pĜipojení napájení (PWRT): Power-up-Timer
Vybrané speciální vlastnosti: •
In-Circuit Serial Programming™ (ICSP™), nesymetrické napájení 5V In-Circuit Serial Programming,programovatelný zámek dat
•
I/O porty A, B, C, D, E mající v souþtu 33 I/O pinĤ
Technické parametry:
10
•
Nesymetrické napájení (2,0 –5,5) V
•
Taktovací frekvence od 32 kHz do 20 MHz
Pro další podrobnČjší popis lze využít katalogový list výrobce [ 9].
1DSiMHFt]GURMH
Návrh napájecích blokĤ je z velké þásti standardním postupem z knihy [ 5] této
problematiky. Celý návrh zapojení a volba stabilizaþních prvkĤ vychází z potĜebných úprav napájecí úrovnČ ±12V.
=GURM± ±9 V tomto pĜípadČ se jedná o sériovČ zapojené olovČné akumulátory z obr. 2.4 a) s blokovací þástí na obr. 2.4 b) a slouží k napájení vysokonapČĢových
v kombinaci
digitálních potenciometrĤ.
+12V BT1 VY P
+12V
J3
1 2 3
0V
1 2 3 CON3 CON3
-12V
BT2
+12V
D2 DIODE J4
0V
+
C18 10uF
+
C17 10uF
C7 100nF
0V
-12V
C8 100nF
-12V D5 DIODE
D
b)
Obr. 2.4 a) pĜipojení akumulátorĤ, b) blokování napČtí Baterie s napČtím +12 V BT1 a BT2 jsou umístČny mimo ochrannou stínící „krabiþku“. PĜipojení k obvodu je realizováno pomocí stínČného dvoužilového vodiþe ve spojení se stínČným XLR konektorem. Odpojení baterií od obvodu zajišĢuje kolébkový duální vypínaþ. Konektory J3 a J4 slouží k pĜivedení napČtí na tištČný spoj zaĜízení. Konektor J3 je umístČn na desce plošného spoje. Diody D2 a D5 fungují jako ochrana obvodu pĜi pĜepólování baterií. Jsou voleny typu Schottky, protože úbytek napČtí na nich þiní v propustném smČru pouze 0,3V. Soustava blokovacích kondenzátorĤ z obr. 2.4 b) je v realizaci rozdČlena do dvou þástí. Elektrolytické kondenzátory jsou umístČny na hlavní desce plošného spoje a keramické na zvláštních deskách u každého ze tĜí potenciometrĤ. Z tohoto vyplývá, že blok b) z obr. 2.4 se vyskytuje v obvodu celkem tĜikrát.
11
=GURM9 Tímto zdrojem je napájen mikroprocesor a LED zobrazovaþ. Dále také zajišĢuje potĜebné budicí signály pro ovládací klávesnici, resetovací obvod mikroprocesoru a Ĝídící cívky ochranného relé. Zapojení zdroje znázorĖuje obr. 2.5.Hlavním prvkem je lineární regulátor MAX667CSA. D8
D1 DIODE
uPVdd
+12V
8
L10V
3 6 5
R1 200K
S
1
2
C1 100nF
DIODE
U22 IN
OUT
LBI SET SHDN
DD LBO
GND DIG
2 1 7
R3 10K
+
C2 10uF LBO
MAX667/SO
R2 24K
0V DIG 126LNS GND DIG
Obr. 2.5 Zapojení zdroje +5 V Ten pĜi zapojení vstupĤ SET,SHDN,GND podle doporuþených schémat z [ 10] nastaví na výstupu +5 V z možných vstupních (5,5–16,5)V. Pin 4 (GND) se nezobrazuje, ale v knihovnČ programu Orcad 10.0 se automaticky pĜipojuje ke znaþce nulového potenciálu. Protože se jedná o napájení digitální þásti zaĜízení, která pracuje na frekvenci 429 kHz (taktovací frekvence mikroprocesoru), zaĜazením sériové tlumivky L1 do obvodu dojde k omezení šíĜení rušení po napájecích vodiþích do zbytku obvodu. Tlumivka má indukþnost 0,8 ȝH a impedanci pĜibližnČ 1,5 ȍ. Odpory R1 a R2 tvoĜí odporový dČliþ, kterým je nastavena referenþní hodnota pro vstup detektoru nízkého napČtí (LBI). Pro jejich výpoþet lze užít vztah (2.4) z katalogového listu [ 10]
R1 = R2 .(VBAT / VLBI − 1) (ȍ)
(2.4)
Kde VBAT je hodnota napČtí na vstupu stabilizátoru, která se hlídá a VLBI je interní referenþní hodnota 1,225 V. Hodnota R2 nesmí ve spojení s R1 zatČžovat napájecí akumulátory, proto se jejich velikost pohybuje v Ĝádech kȍ až stovek kȍ. V tomto pĜípadČ se jedná o R1 = 180 kȍ a R2 = 24 Kȍ a jejich kombinací se hlídá pokles napČtí pod 10,8 V. ÚplnČ vybité akumulátory se poznají pĜi zatížení proudem IZAT = 0,05*C20 (A), kdy napČtí na svorkách musí poklesnout na 10,8 V [ 22]. Konstanta C20 udává kapacitu þlánku. Výstup detektoru (LBO) je pĜipojen ke 12
vstupnímu pinu mikroprocesoru s návČštím „LBO“. Výstupní brána detektoru je typu otevĜený kolektor. Zapojením pull-up rezistoru R3 k tomuto výstupu zaruþuje na snímacím pinu procesoru logickou úroveĖ „H“. Pokud bude úroveĖ nižší, dojde ke stažení úrovnČ na nulu. Paralelní elektrolytický kondenzátor C2 = 10ȝF a keramický C1 = 100nF se starají o filtraci a jejich velikost je pĜebrána z [ 5].. Dioda D1 plní úþel ochrany regulátoru proti vyššímu napČtí na výstupu než na vstupu. Dioda D6 oddČluje napájení mikroprocesoru od zbytku obvodu z dĤvodu použití ICSP programování.
=GURM± ±9
Symetrický zdroj napČtí ±2,6 V je využíván pro napájení nízkonapČĢových digitálních
potenciometrĤ. Hodnoty je dosaženo regulací ±12 V. Zapojení zdroje ±2,6 V zobrazuje obr. 2.6. Stabilizaþními prvky jsou lineární regulátory MAX663 (U20) v kladné vČtvi a MAX664 (U21) v záporné. Univerzální zapojení je pĜevzato z [ 11],[ 12]. Nastavení požadované hodnoty se dosáhne zpČtnou vazbou pĜes odporový dČliþ z R7 = 1 MΩ a R8 = 1MΩ, respektive R6 = 1 MΩ a R5 = 1 MΩ na vstup VSET. Jejich hodnota je dána vztahem (2.5) pĜevzatého z [8],[9].
UVÝST = 1,30 ⋅
Rx + Ry (V) Rx
(2.5)
Kde Rx zastupuje rezistory R6, R7 a Ry zastupuje R8 a R5. Diody D3 a D4 mají opČt ochranný charakter jako v zapojení na obr. 2.5. Kondenzátory C3, C4, C5, C6 na výstupu plní stejný úþel jako v zapojení na obr. 2.5. NávČští „VddAD5254“, „VssAD5254,“ „GNDAD5254“ odkazují na napájecí piny potenciometru AD5254.
13
D3
DIODE
U20 8
VIN+
1 5 6
SENSE SHDN VSET
VOUT1 VOUT2 VTC
3 2 7 +
MAX663/SO +12V
R7
Vdd AD5254
R8
1M
C3 10uF
C6 100nF
1M
0V
GND AD5254 D4
DIODE +
-12V U21 4
VIN-
2 5 3 6
VOUT1 VOUT2
7 1
C4 10uF
C5 100nF Vss AD5254
SENSE SHDN SHDN VSET MAX664/SO
R6 1M
R5 1M
Obr. 2.6 Zapojení zdroje ± 2,6 V
'LJLWiOQtSRWHQFLRPHWU\$'%58= Z koncového þísla oznaþení digitálního potenciometru AD7376ARUZ50 vyplývá jeho maximální ohmická hodnota, tzv. nominální hodnota, 50 kȍ. Dalším dĤležitým parametrem, z hlediska možností aplikace a vlastního Ĝízení, je údaj 128 „krokĤ“, jenž dČlí jeho rezistanci a výsledek udává ohmickou hodnotu jednoho kroku. To je minimální skok, kterého pĜi Ĝízení mĤže být dosaženo. Jako jeden z mála, dostupných na svČtovém trhu, disponuje nestandardnČ širokým rozsahem napájecího a souþasnČ vstupního signálového napČtí ±15 V, které však nesmí pĜekroþit úrovnČ napájecího. Vlastní Ĝízení probíhá s maximální frekvencí hodinového signálu 4MHz po standardizované komunikaþní tĜívodiþové sbČrnici SPI, která je popsána v kapitole 2.2.3.1. RozmístČní vývodĤ potenciometru je na obr. a.5. Z blokového schématu na obr. 2.7 jsou patrné tĜi základní funkþní bloky, které tento potenciometr obsahuje. První v poĜadí je 7-mi bitový sériový registr, do kterého se ukládají aktuální pĜijatá data. Podle þasového diagramu SPI rozhraní (obr. 2.13)se v jedineþném okamžiku pĜepíší do RDAC LATCH registru, který zprostĜedkovává dekódování a nastavení ohmické hodnoty na výstup odpovídající pĜijatému binárnímu þíslu a posléze funguje jako SRAM pamČĢ k udržení aktuálního nastavení.
14
Obr. 2.7 VnitĜní organizace AD7376ARUZ50 Poslední blok SHDN umožĖuje uvést potenciometr do Sleep-mode, kde má ve spojení s CMOS technologií maximální odbČr <1 μA. Sleep-mode zde znamená vnitĜní propojení pinu A s pinem B, jak si lze pĜestavit na obr. 2.8, který zobrazuje zjednodušenou RDAC strukturu integrovaného obvodu.
Obr. 2.8 RDAC struktura AD7376ARUZ50 Vlastní teorie návrhu: Potenciometr je možné zapojit na tĜi rĤzné zpĤsoby podle obr. 2.9, kdy se mČní jeho parametry a také instrukce Ĝízení pro dosažení požadované hodnoty.
15
a)
b)
c)
Obr. 2.9 Možnosti zapojení V elektronické odporové dekádČ je zvolen typ zapojení z obr. 2.9 a) a zapojené jsou vývody A a W. Pro urþení kódu, jenž odpovídá výslednému odporu RWA (mezi portem W a portem A se vychází z rovnice (2.6)
R( D) =
D − 128 × R AB + RW (ȍ) 128
(2.6)
Pro paralelní kombinaci tĜí potenciometrĤ platí:
§ D − 128 × RAB ¨ R( D) = ¨ 128 3 ¨ ©
· ¸ ¸ + RW (ȍ) ¸ ¹
(2.7)
Kde D je dekadická hodnota ekvivalentní binárnímu þíslu naþítanému 7-mi bitovým RDAC registrem. MĤže se tedy pohybovat od 0–127, pĜiþemž pĜípadný 8-mý bit vyslaného datového bytu je tímto registrem ignorován. RAB je nominální hodnota charakteristická pro užitý potenciometr a Rw je neodstranitelná odporová složka s definovanou velikostí <400 Ω v interní struktuĜe. Krok, v našem pĜípadČ, tĜí paralelních potenciometrĤ je 130 Ω podle(2.7). Využitím rovnice (2.7),
dostáváme minimální odporovou hodnotu
tĜí paralelních
potenciometrĤ pro Ĝídící kód 0x00 133Ω, protože:
§ 128 /128 × RAB RWB = ¨ 3 ©
· ¸ + RW = 0Ω + 133Ω atd.. ¹
(2.8)
PĜi navrhování aplikací se musí brát v úvahu, že nominální hodnota udávaná výrobcem je v toleranþním pásmu ±30%. V praxi se totiž ukázalo, že minimální hodnota je 210 Ω.
Technické parametry: •
Napájení:
16
o
jednoduché: (4,5–33,0) V
o
symetrické: ( ± 4,5– ± 16,5) V, IDD = 2 mA, ISS = -0,1 mA
•
Taktovací frekvence vstupu CLK max.: 4 MHz
•
Rezistence: 50 KΩ
•
Rozlišení: 7 bitĤ
•
Chyby:
•
•
•
o
DNL: max. ±1 LSB
o
ΔRAB: ±30%
o
RW: (120–200)Ω pĜi Vdd /VSS ± 15 V
Dynamické vlastnosti: o
BW -3 dB: 90 KHz
o
THDW: 0,002% pĜi f = 1 KHz, UA = 1 V rms, UB = 0V a Vdd /VSS ±15 V
o
Doba ustálení: 4 μs
I/O A, B, W o
rozsah pĜipojitelného napČtí: VDD–VSS
o
kapacita W: 60 pF proti GND pĜi 1MHz na hodnotČ 0x40
o
Rw v ShutDown stavu: max. 400 Ω
Komunikaþní rozhraní: o
SPI
5R]KUDQt63,
Rozhraní SPI(Serial Pheripheral Interface) [ 6], [ 13] je urþeno pĜedevším pro pĜipojení
vnČjších pamČtí, A/D pĜevodníkĤ a dalších obvodĤ k mikropoþítaþi, pĜípadnČ pro vzájemnou komunikaci mezi mikropoþítaþi. U nČkterých mikropoþítaþĤ je SPI využíváno i pro programování jejich vnitĜní pamČti Flash. Základní koncepce systému využívajícího sbČrnici SPI je následující (viz obr. 2.10): V systému mohou být zapojeny dva nebo více obvodĤ. Jeden z obvodĤ, obvykle procesor, je typu Master, ostatní jsou typu Slave. Jednotlivé obvody jsou propojeny tĜemi nebo þtyĜmi vodiþi: •
Datový výstup MOSI (Master Out, Slave In) obvodu Master je pĜipojen na vstupy MOSI všech obvodĤ Slave.
•
Datový vstup MISO (Master In, Slave Out) obvodu Master je nebo není propojen s výstupy MISO všech obvodĤ Slave.
•
Výstup hodinového signálu SCK je pĜipojen na vstupy SCK všech obvodĤ Slave. 17
•
Každý obvod Slave má vstup SS/CS (Slave Select/Chip Select) pro výbČr obvodu.
Je-li SS/CS v neaktivní úrovni, je rozhraní SPI daného obvodu neaktivní a jeho výstup MISO je ve stavu vysoké impedance stavu. Vstupy SS/CS jednotlivých obvodĤ jsou samostatnými vodiþi propojeny s obvodem Master. Tak lze snadno vybírat obvod, se kterým má být v daném okamžiku vedena komunikace.
a) posuvný registr
b) kruhový posuvný registr
Obr. 2.10 Základní koncepce SPI bus., b) Standardní prĤbČh Ĝídících a datových signálĤ pro algoritmus þtení z Slave zaĜízení (pamČĢ) na sbČrnici SPI je zobrazen na obr. 2.11, pro zápis do stejného zaĜízení pak na obr. 2.12.
Obr. 2.11 ýtení dat z pamČti s rozhranním SPI
Obr. 2.12 Zápis dat do pamČti s rozhranním SPI
18
Používaná
souþástka
od
firmy
Analog
Devices,
AD7376ARUZ50,
má
implementované kompatibilní komunikaþní rozhraní SPI. V porovnání s uvedeným pĜíkladem zápisu a þtení se protokol liší v poþtu dat, jež musejí být vyslány. Nemusí se vysílat adresa uložení dat. Z dĤvodu vlastního programového vyvinutí algoritmu SPI pro zápis v aplikaci, je na obr. 2.13 uvedena konkrétní Ĝídící zápisová sekvence.
Obr. 2.13 PrĤbČh logických úrovní na vodiþích SDI, CLK a CS VČtšina mikroprocesorĤ sice obsahuje sériový komunikaþní modul s možností volby SPI þi I2C, ale vždy lze využít pouze jeden z typĤ. SPI sbČrnice má jednodušší pĜenosový protokol než I2C, proto byla vybrána k softwarovému obsluhování. Podstata je v synchronizaci výbČrového vodiþe CS a datového SDI nad bČhem hodinových pulsĤ signálu CLK. V poĜadí se uvede úroveĖ signálu CS do logické „0“ a následnČ se mĤže po definovaném þasovém zpoždČní zaþít vysílat datový byte. Jednotlivé bity jsou ukládány do zaĜízení „Slave“ s pĜíchodem nábČžné hrany signálu CLK. Bity se ukládají do vyrovnávacího sériového registru a navrácením úrovnČ signálu CS do logické „1“ se zapíše do registru RDAC. Další detailnČjší informace jsou uvedeny v katalogovém listu výrobce [ 7].
'LJLWiOQtSRWHQFLRPHWU\$'%58= Obecný popis digitálního potenciometru AD5254BRUZ1 z obr. 2.14 se hodnČ liší od popisu potenciometru AD7376ARUZ50. Souþástka obsahuje þtyĜi shodné, nezávisle
Ĝiditelné potenciometry s vlastní SRAM pamČtí. Komunikace s „Masterem“ probíhá po standardizované sbČrnici I2C, popsané ve 2.2.4.1. Dále je vybaven vnitĜní EEPROM pamČtí pro uložení datových obsahĤ RDAC registrĤ. Na blokovém schématu z obr. 2.14 si mĤžeme pĜestavit 5 blokĤ sloužících k Ĝízení a ukládání dat v potenciometru. Z vstupní þásti se jedná o blok implementovaného sériového rozhraní I2C(I2C serial block interface). PĜijatá data se zpracovávají v logické þásti. Ta má tĜi úrovnČ a jedná se o dekodér instrukce(command decode logic), dekodér adresy(adress decode 19
logic) a Ĝídící prvek(control logic). Logický blok zajišĢuje zapsání pĜijatých dat do správného RDAC registru, který uchovává binární hodnotu spojenou s konkrétní rezistivitou. Posledním blokem je vlastní „výkonová“ þást zajištující výstupní rezistanci. ZaþlenČní do obvodu odporové dekády znázorĖuje obr. 2.15.
Obr. 2.14 Blokové schéma vnitĜní struktury potenciometru AD5254BRUZ1
Teorie návrhu Ĝízení Jelikož je stejná jako v pĜípadČ digitálního potenciometru AD7376ARUZ50, odkazuji se na kapitolu 2.2.3 OUT AD7376 AD5254BRU1
U4A
A0 W0 B0 +5V R27 10K WP AD5254 SCLK SDA
R26 5K6
4 16
R33
5 R31
10K R28 3K9
14
5K6 R29 3K9
R30 10K
9 Vdd AD5254 R34 Vss AD5254 10K
R32 5K6
20 10
A1 W1 B1 AD0 AD1 ? WP* SCL SDA VDD VSS
A2 W2 B2 A3 W3 B3 DGND
3 1 2 8 6 7 11 13 12 17 19 18 15
GND AD5254 SY M 1 OF 1
Obr. 2.15 Zapojení AD5254BRUZ1
20
OUT AD5254
Snížení ohmické hodnoty jednoho kroku je dosaženo paralelním spojením všech þtyĜ vnitĜních odporĤ „Slave“, jeho adresu udávají pĜizemČné piny AD0, AD1. Z dĤvodu symetrického napájení se úrovnČ napČtí Ĝídících signálĤ liší od standardní +5 V logiky a to na maximální +2,7 V a minimální -2,7 V. Jsou zde proto zavedeny odporové dČliþe , které upravují +5 V úrovnČ mikroprocesoru na zmínČné pĜípustné. Jedná se o digitální vstupy WP (Write Protect), SCL (Serial CLock), SDA (Serial DAta). Tyto porty jsou vyrobeny technologií CMOS a z principu nesnesou vyšší napČtí než napájecí. Rezistory R27 =10 kȍ, R26 =5,6 kȍ zastupují standardní pull-up prvky podle koncepce sbČrnice I2C. DČliþ napČtí 1:1 pro vstup WP tvoĜí R33 a R34. DvouúrovĖový dČliþ pro vstup SCL vytváĜí spojení dČliþe z R26,R30 a R31,R32. Poslední dČliþ tvoĜí rezistory R28 a R29 spolu s pull-up rezistorem R27. Toto spojení se liší od pĜedchozích tím, že musí zajišĢovat obousmČrné toleranþní napČĢové úrovnČ, jelikož pin SDA funguje na sbČrnici I2C jako vstup i výstup a mikroprocesor (master) na nČj data posílá i je z nČho snímá. NávČští WP AD5254, SCLK, SDA vedou na porty Ĝídícího mikropoþítaþe a Vdd AD5254, Vss AD5254, GND AD5254 na výstupy napájecího zdroje ±2,6 V. OUT AD7376 oznaþuje vstup signálu do potenciometru AD5254 a zároveĖ výstup z potenciometru AD7376. OUT AD5254 je výstupním bodem signálu z dekády. Technické parametry: •
Napájení: o jednoduché: 2,7V - 5,5V, IDD = 15 μA o
symetrické: ± 2,25V - ± 2,75V, IDD = 15 μA, ISS = -15μA
•
Rezistence: 1kΩ
•
Rozlišení: 8 bitĤ
•
Chyby:
•
•
•
o
DNL: max. ±1,0 LSB
o
ΔRAB: ± 30%
o
RW: (75–130) Ω
Dynamické vlastnosti: o
BW -3dB: 4 MHz
o
THD: 0,05% pĜi f = 1 kHz, UA = 1V rms, UB = 0V
o
Doba ustálení: 0,2μs
I/O A, B, W o
rozsah pĜipojitelného napČtí: VDD – VSS
o
kapacita W: 95pF proti GND pĜi 1 kHz na hodnotČ 0x80
Komunikaþní rozhraní: I2C
21
DetailnČjší informace jsou uvedeny v katalogovém listu výrobce [5].
5R]KUDQt,&
I²C neboli IIC (Inter Integrated Circuit)[ 6],[ 14] bus pĜedstavuje komunikaþní datovou sbČrnici sloužící pro pĜenos dat mezi rĤznými integrovanými obvody vČtšinou v rámci jednoho zaĜízení. V dnešní dobČ se hojnČ používá a je podporováná nejen výrobcem integrovaných obvodĤ znaþky Philips, která ji vyvinula. Na rozdíl od SPI je I2C sbČrnice typu multimaster. ěeší proto i arbitraci pro pĜístup na sbČrnici a má zabudovaný mechanismus adresování jednotlivých pĜipojených stanic nebo integrovaných obvodĤ. Základní koncepce sbČrnice I2C je na obr. 2.16, z kterého také vyplývá popis fyzické vrstvy.
Obr. 2.16 Celková koncepce sbČrnice I2C Jednotlivé stanice rozhraní I2C jsou propojeny jedním datovým vodiþem (SDA) a jedním hodinovým vodiþem (SCL). Z elektrického hlediska jsou oba vodiþe typu otevĜený kolektor. To zajišĢují Jejich maximální délka je dána jejich nejvyšší pĜípustnou kapacitou 400 pF. Maximální pĜípustná frekvence signálu SCL je podle verze I2C 100 kHz, pro režim fast 400 kHz. V režimu high-speed lze dosáhnout rychlosti až 3,4Mb/s (verze 2,0). V klidovém stavu (volná sbČrnice) jsou oba vodiþe v úrovni „H“ (high). To je zajištČno pull-up rezistory. Jejich odpory mají hodnotu v Ĝádech jednotek kiloohmĤ. ýím je vyšší komunikaþní frekvence, tím musí být nižší hodnoty tČchto odporĤ. Pro 100kHz postaþuje 4,7 kȍ. PĜi probíhajícím pĜenosu jsou na SDA vysílány jednotlivé datové bity pĜiþemž platí pravidlo, že logická úroveĖ na SDA se smí mČnit pouze je-li SCL v úrovni „L“(low). Toto pravidlo je porušeno ve dvou speciálních pĜípadech – vysílání podmínek START a STOP, které se používají k zahájení arbitrace a k ukonþení pĜenosu. Pro všechny frekvence je specifikována minimální povolená doba setrvání SCL v úrovni „L“ i „H“. PĜi arbitraci i pĜi pĜenosu dat si jednotlivé stanice synchronizují generátory 22
hodin tak, že trvání úrovnČ „H“ na SCL je odmČĜováno vnitĜním þasovaþem každé stanice až od okamžiku, kdy SCL skuteþnČ úrovnČ „H“ dosáhne (protože je SCL typu otevĜený kolektor, mĤže být v úrovni „L“ držen i v situaci kdy se daná stanice snaží nastavit úroveĖ „H“). PodobnČ je doba trvání úrovnČ „L“ na SCL odmČĜována od sestupné hrany. Tento mechanismus umožĖuje nČkteré ze stanic zpomalit pĜenos: pomalá stanice mĤže podržet po urþitou dobu signál SCL v úrovni „L“ a tím zabránit vysílající stanici ve vyslání dalšího bitu. Linková vrstva Formát rámce se sedmibitovou adresou pĜi pĜenosu na I2C je na obr. 2.17. Každému pĜenosu pĜedchází vyslání podmínky START. Potom je vysílána 7bitová adresa pĜíjemce a jeden
bit
R/W,
který
indikuje
požadovanou
operaci
(þtení/zápis).
Další
bit
ACK(acknowledge) je vysílán s úrovní „H“ a je urþen k potvrzení pĜijímací stanicí. Dále jsou pĜenášena data ve smČru urþeném pĜedchozím bitem R/W. Každý byte je následován jedním bitem ACK. Po ukonþení pĜenosu je vyslána podmínka STOP.
SDA
7
6
5
4
3
2
1
0
7
6
5- - -0
SCL
7
6
5
4
3
2
1
0
7
6
5- - -0
Stav klidu
Start bit
Data nebo adresa zaĜízení
ACK od pĜijímaþe
Další data
ACK od vysílaþe
Stop bit
Obr. 2.17 PrĤbČh logických úrovní na vodiþích SDA a SCL Každá stanice (v praxi napĜ. každý integrovaný obvod) pĜipojená na I2C má pĜidČlenou 7-bitovou adresu. Po zachycení podmínky START porovnávají všechny obvody svou adresu s adresou, která je vysílána na sbČrnici. Zjistí-li nČkterý z obvodĤ shodu, je vysílání urþeno právČ jemu a musí pĜijetí adresy potvrdit bitem ACK. Potom pĜijímá resp. vysílá další data.
23
ÿW\ĢPtVWQì/(']REUD]RYDĀ%405' LED displej slouží k zobrazování 4 místné dekadické hodnoty (0–9999), která se pĜímo váže s nastavenou hodnotou odporu potenciometrĤ. Pohled shora na obr. 2.18 pĜedstavuje uspoĜádání a rozmístČní jednotlivých segmentĤ.
Obr. 2.18 Display BQ M514RD–pohled shora Jak již bylo Ĝeþeno, tento displej je typu spoleþná katoda a vyžaduje multiplexované
Ĝízení. Zapojení pro dynamické Ĝízení zobrazuje obr. 2.19. Signály RB0–RB4 se aktivuje +5V
+5V
R12 RB1
T2 BSV52
RB2
T3 BSV52
9
RB3
T4 BSV52 550R 6
550R
12
550R
D4
T1 BSV52 550R
R14
8
RB0
+5V
R13
D3
+5V R11
B
C
D
E
F
G
GP
7
4
2
1
10
5
3
D2
A 11
D1
DISPLAY 1
LED Display SC RD1 RD4 RD6 RD3 RD2 RD0 RD5 RD7
R22 R21 R20 R19 R18 R17 R16 R15
330R 330R 330R 330R 330R 330R 330R 330R
Obr. 2.19 Zapojení pro dynamické Ĝízení svitu LED displej vždy pĜívod pro jedinou þíslici displeje. NáslednČ se na vybrané signály RD0–RD7 pĜivede v jednom okamžiku logická úroveĖ „L“, která zajistí rozsvícení pĜíslušných segmentĤ. Tímto zpĤsobem probČhne postupné rozsvícení všech ĜádĤ. ýasové zpoždČní mezi jednotlivým zhasnutím a rozsvícením musí být menší než 0,02s, aby nešlo spatĜit blikání displeje.
ġt]HQt²MHGQRFKXFKiNOiYHVQLFH Klávesnice slouží k manuálnímu nastavování odporové hodnoty elektronické dekády.
24
Dále k vypnutí þi zapnutí svitu zobrazovaþe a resetování dekády na urþenou hodnotu. Je vytvoĜena na samostatném plošném spoji a principiální obvodové bloky, z kterých je postavena, znázorĖuje obr. 2.20. +5V
+5V
R9 10K
R31 10K RB7 J19 B2
1 A1
RA3 RA1 RB7 RB5 +5V RB4 RB6 RA0 RA2 GNDTlac
C27 100nF 3 A
D6 RA2
U9
SET1
1 A1
B2
SET1
3
C31 100nF
C35
A B2
U13 SET2
D7 SET2
3 A
a)
1 2 3 4 5 6 7 8 9 10
100nF
U18
GNDTlac
1 A1
b)
CON10
c)
Obr. 2.20 ýásti Ĝídícího obvodu klávesnice
ýástí a) z obr. 2.20 se obsluhuje þítání ĜádĤ hodnoty a je zapojena do matice tlaþítek. Tlaþítka zapojená podle þásti b) fungují jako reset hodnoty a ovládání displeje. CON10 z obr. 2.20 c) slouží k pĜipojení celé klávesnice k hlavní desce. Diody D6 a D7 museli být zaĜazeny do zapojení dodateþnČ, neboĢ bez nich docházelo k nekontrolovanému buzení ĜádkĤ matice tlaþítek a nebylo možné snímání zmČn.
806²NRQYHUWRU86% UMS2 je osazený plošný spoj založený na integrovaném obvodu FT8U232BM firmy FTDI [ 15], který umožĖuje velmi snadné pĜipojení uživatelské aplikace k PC pomocí sbČrnice USB. Má rozmČry standardní patice DIL28, pĜes kterou se i na DPS odporové dekády pĜipojí. RozmístČní vývodĤ je patrné z obr. a.8. Jedná se o pĜevodník mezi sbČrnicí USB a UART s možností plnČ hardwarového
Ĝízení toku dat. Modul umožĖuje pĜenos dat rychlostí až 1 MBd po sbČrnici RS232 a až 3 MBd po sbČrnici RS485. Navíc modul obsahuje pamČĢ EEPROM umožĖující identifikaci VID a PID pro OEM (Original Equipment Manufacture) aplikace. Vstupem do modulu jsou 2 signály z konektoru USB, výstupem jsou signály sbČrnice UART. Typické zapojení modulu v aplikaci napájené pĜes port USB, které je použito i v našem zaĜízení znázorĖuje obr. 2.21.
25
USB konektor VCC
USBModul18 1 2 3 4 5 6 7 8 9 10 11 12 13 14
VCC RL D6 LED
RxUSB TxUSB
R25 1k5
RL
GND USB
GND VCC RL# RI# DCD# DSR# DTR# CTS# RTS# RxD TxD GNDb RSO# RST#
USBDM USBDP TXDE PWRE# PWRCT TL# 3V3 SLP# EDT ESK ECS GNDd VIO VCCd
VCC 28 27 26 25 24 23 22 21 20 19 18 17 16 15
1 2 3 4
VCC USBDM USBDP GND U19
GND USB R24 4k7
R23 10k
GND USB
UMS2_1
Obr. 2.21 Zapojení modulu v aplikaci DĤležitým doplĖkem pĜi užití modulu v tomto zapojení je zaĜazení impedanþního oddČlovaþe (obr. 2.22) do signálových cest. Zaruþí se tím tak správné napČĢové úrovnČ rozhraních a dojde k izolaci poþítaþové digitální „zemČ“ od digitální a anologové zemČ odporové dekády. To je nutné z hlediska možného rušení nejen vysokými frekvencemi z poþítaþe.
+5V
U17A C21 100nF
GND USB
VCC RxUSB TxUSB
1 2 3 4
VDD1 VDD2 VOA VIA VIB VOB GND1 GND2 ADuM3201ARZ
8 7 6 5
TX RX
C22 100nF
GND DIG
Obr. 2.22 Zapojení impedanþního oddČlovaþe Modul UMS2 je osazen pamČtí 93LC56 o kapacitČ 128 x 16 bitĤ, z které je pro potĜeby USB využita spodní polovina pamČti (64 x 16 bitĤ)a pomocí pinĤ EEDATA, EESK a EECS mĤže aplikace využít horních 64 x 16 bitĤ pro svoje potĜeby. K modulu jsou pro spolehlivou funkci zdarma k dispozici ovladaþe pro 98/ME/2K/XP/CE,Mac OS8/OS9/OS X a Linux. ÚplnČjší informace obsahují katalogové listy obou souþástek. Pro UMS2 [ 16] a pro ADuM3201 [ 17].
26
.RQVWUXNĀQtĢHåHQt Tato kapitola popisuje podobu desek plošných spojĤ a celého zaĜízení. Vlastnosti desek plošných spojĤ a blokové rozmístČní souþástek na deskách. Jelikož je souþástí práce i ochranný úložný kryt, jeho návrh je také uveden.
3ORåQpVSRMH Plošné spoje byly vytvoĜeny v návrhovém systému Orcad 10.0. Z hlediska zjednodušení návrhu a dosažení lepších elektrických vlastností je použita dvouvrstvá technologie. Celé zaĜízení se skládá z šesti dílþích desek plošných spojĤ. Hlavní deska („MainBoard“), deska tlaþítek („Keyboard“) a þtyĜi shodné desky pro digitální potenciometry AD7376 („modul_digipot“). Hlavní deska má k uchycení vyvrtány þtyĜi otvory (prĤmČr 3,2 mm), v každém rohu jeden, umístČné vzájemnČ od sebe pod úhlem 90° a dva u levého okraje stejného prĤmČru k pĜichycení desky tlaþítek. Deska tlaþítek drží pomocí dvou šroubkĤ s dvČma distanþními sloupky a dvouĜadé pinové lišty, která zároveĖ slouží k propojení signálových cest s hlavní deskou. ýtyĜi desky s digitálními potenciometry AD7376 jsou
Ĝazeny do sloupce nad sebe a propojeny jednoĜadými pinovými lištami. PĜipojení k hlavní desce je zajištČno zasunutím celého modulu do standardní patice DIL14. Spoje mezi souþástkami nebudou zatČžovány velkými ani špiþkovými proudy proto postaþí tloušĢka 0,3 mm. Pro rozvod napájení je voleno 0,5 mm. PĜi návrhu je dodrženo oddČlení digitální zemČ(DIGGND), analogové zemČ(GND) a poþítaþové digitální zemČ USB modulu (USBGND). V návrhu je kladen dĤraz na minimalizaci délky cest, které se v praxi pĜipojují k mČĜicímu obvodu. Proto bylo voleno u potenciometrĤ AD7376 Ĝešení s jednotlivými plošnými spoji skládanými nad sebe, místo komplikovaného paralelního propojování na tištČném spoji. Výsledkem je minimalizace délky vodivých cest a možnost pĜípadného zamČnČní s jinými potenciometry a úprava rozsahu odporové dekády. RozmístČní funkþních blokĤ a periferií na desce plošných spojĤ je voleno podle doporuþených uspoĜádání [ 5] a v druhé ĜadČ je ovlivnČno rozmístČním Ĝídících portĤ mikropoþítaþe, ke kterým musejí být pĜipojeny.
27
.RQHĀQiSRGREDRGSRURYpGHNiG\ Finální podobu navržené odporové dekády ukazuje fotografie na obr. 2.1
Obr. 2.23 Koneþná podoba odporové dekády
6RIWZDURYpĢHåHQt V této kapitole je rozebrána problematika obslužného softwarového vybavení mikroprocesorem Ĝízené odporové dekády. Je zde uvedena struktura a popis jednotlivých blokĤ programu, objasnČní použitých algoritmĤ a nastaveních, nutných ke splnČní požadavkĤ zadání.
9ìYRMRYpSURVWĢHGtDMD]\N Program je napsán v programovacím jazyku nižší úrovnČ, neboli v assembleru. Jako vývojové prostĜedí byl použit MPLAB IDE v7.21. MPLAB je základní vývojový software pro mikrokontroléry PIC vytvoĜený pro operaþní systém Windows a je k dispozici zdarma na [ 23]. Jeho souþástí je i pĜekladaþ kódu do hexa soustavy MPASM.
PĜi kompilaci jsou vytvoĜeny soubory s charakteristickou pĜíponou: -
.asm - vlastní kód napsaný assemblerovskými instrukcemi
-
.lst – kompletní kód s komentáĜi
-
.err – chybová hlášení po pĜekladu
-
.cod – header file pro pĜekladaþ
-
.hex – pĜeložený asm soubor do hexa soustavy
28
3URJUDP Program je vytvoĜen þástí sady 35 instrukcí, které zvolený procesor nabízí. Je rozdČlen do tĜí dílþích souborĤ a to: „odporova_dekada.asm“, „P16F877A.inc“ a „tabulky.inc“. Výhodou souboru hodnot tabulky.inc je, že nezabírá místo v pamČti dat mikroprocesoru, ale jsou po pĜekladu souþástí pamČti programu od adresy 0x40. Zápis programu se nachází ve zmínČném souboru „odporova_dekada.asm“, do kterého jsou pomocí direktiva assembleru (#include) vloženy zbylé dva soubory. Koncovka .inc oznaþuje právČ soubory pro „includování“. Soubor „P16F877.inc“ obsahuje definice bytových registrĤ a pĜíslušných bitĤ z pamČĢových bank. Dále pĜiĜazení jejich adres v pamČti dat pro pĜekladaþ. Tento soubor je souþástí vývojového prostĜedí. Soubor „tabulky.inc“ obsahuje data potĜebná k pĜepoþtu hodnoty zobrazované displejem na 2 nezávislé byty urþené k nastavování rezistivity digitálních potenciometrĤ. Doba jedné instrukce trvá 9,32 ȝs, protože frekvence keramického rezonátoru pro procesor je 429 KHz a instrukþní cyklus mikropoþítaþe trvá þtyĜi takty hodinového signálu.
6WUXNWXUDSURJUDPXRGSRURYDBGHNDGDDVP
vložení externích souborĤ
definování pozic vlastních bitĤ registrĤ
alokace pamČti dat
definice maker
podprogramy
hlavní programová smyþka
9ìYRMRYìGLDJUDP Vlastní kód je dostateþnČ okomentován v samotném souboru „odporova_dekada.asm“. Proto postaþí k objasnČní softwarového Ĝešení zjednodušený vývojový diagram. Nejsou v nČm rozvíjeny úplné detaily programu, jako nČkteré podmínky, cykly, þekací smyþky. Výjimkou jsou þtyĜi hlavní registry(promČnné), z kterých se odvozují veškeré výpoþty a pĜevody(3.3.1). Jedná se o „tisice“,“ stovky“, „desitky“, “jednotky“, kdy každý z nich zastupuje jeden dekadický Ĝád a jejich hodnota je zobrazována LED displejem. Dále pak registry codeI2C a codeSPI (3.3.1). Hlavní programová smyþka je zobrazena na obr. 3.1. BČhem prĤbČhu hlavní smyþky se v sériovém sledu vykonávají podmínČné i nepodmínČné volání podprogramĤ. 29
Start
init
poc_nast
init
nastavení portĤ
odpojení dekády
poc_nast
zakázání pĜerušení
Obsluha tlaþítek
nastavení konstant
vyþtení hodnot pro všechny Ĝády z EEPROM
Zápis do EEPROM
definování þíslic displeje
nastavení potenciometrĤ
Konec init
rutina pĜipojení dekády Konec poc_nast
výpis na displej End
Obr. 3.1 Struktura hlavní programové smyþky
Obr. 3.2 Struktura podprogramu init
Obr. 3.3 Struktura podprogramu poc_nast
init (inicializace na obr. 3.2): vedlejší programová smyþka, kde dochází k nastavení portĤ (vstupy, výstupy, log. úrovnČ), pĜerušení (žádné pĜerušení), nastavení konstant(horní a dolní meze þítaní hodnot na displeji, velikost kroku digitálních potenciometrĤ a vedlejší pĜíznakové bity). Dále se definuje tabulka tab. 3.2 kódĤ þíslic pro displej.
poc_nast (poþáteþní nastavení z obr. 3.3): PĜi zapnutí odporové dekády, není urþeno, jaká hodnota je nastavena digitálními potenciometry. Pro ochranu tČchto souþástek se dekáda odepíná od obvodu. NáslednČ dojde k vyþtení uložené hodnoty z pamČti EEPROM a nastavení þtyĜ hlavních registrĤ (podprogram ctiEE). Data v EEPROM jsou Ĝazeny v po sobČ následujících 4Bytech od referenþní adresy. Další operací je nastavení digitálních potenciometrĤ na již známou hodnotu (podprogram rutina) a pĜipnutí k obvodu.
obsluha tlaþítek (obr. 3.4).: V programu není jako samostatný blok, ale k objasnČní funkce a obsluhy tlaþítek postaþujeKlávesnice se skládá z deseti tlaþítek. MaticovČ Ĝízených osm tlaþítek pro þítání jednotlivých ĜádĤ (nahoru, dolĤ) a dvČ pro povel zhasínání displeje a resetování hodnoty. Testování zmČn probíhá v periodČ 93ȝs.
30
Obsluha tlaþítek vypDisp +
decrem
vypnutí displeje
testRad resHodn +
+
odectiRad
hodnota na 5000 rutina
<100
+
increm
nastav100 testRad
+
rutina
prictiRad +
>9999
nepĜiþítej Konec obsluhy
Obr. 3.4 Struktura procedury obsluhy tlaþítek Pokud dojde ke stisku tlaþítka vypDisp, nastaví se pĜíznak na invertovanou hodnotu než má. Stav pĜíznaku urþí, zda rozsvČdcovat segmenty displeje. Pokud dojde ke stisku tlaþítka resHodn, resetuje se hodnota na polovinu rozsahu dekády, tj. 5000 ȍ. V následujícím bloku se aktivuje v matici tlaþítek Ĝádek (makro increm), pro inkrementování hodnot. PĜi detekci zmČny(stisk tlaþítka) ve sloupci je volán obslužný podprogram prictiRad. Ten provede inkrementování Ĝádu, odkud pĜišla zmČna a pĜípadné pĜenesení do vyšších ĜádĤ. Maximální hodnotou inkrementování je 9999(rozsah displeje). Dekrementování se provádí aktivací Ĝádku v matici tlaþítek pomocí makra decrem. OpČt je detekována zmČna(stisk tlaþítka) ve sloupci, ale volání obslužného podprogramu odectiRad. Ten provede dekrementování vybraného Ĝádu s pĜípadným podteþením do nižšího Ĝádu. Minimální hodnota je nastavena na 100.
rutina (obr. 3.5): Obsahuje volání podprogramĤ k urþení kódĤ ze þtyĜ hlavních registrĤ(dej_kody), pĜenastavení digitálních potenciometrĤ na novou hodnotu a uložení zmČnČné hodnoty do EEPROM(zapisEE).
dej_kody (obr. 3.6): Tento podprogram pracuje s externím souborem hodnot tabulky.inc. Nastavením programového þítaþe na adresu poþátku tabulek (0x40) a postupným
31
offsetováním se pro každý Ĝád urþí hodnota kódu(8b binární kombinace) a hodnota doplĖku(0–255 ȍ). Celý algoritmus je v assembleru hodnČ zdlouhavý proto je uvedena konkrétní ukázka kódování Ĝídících slov na pĜíkladu ve vlastní kapitole 3.3.1
rutina
dej_kody
zapis
dej_kody
nastavení programového þítaþe
naþtení Ĝídících slov(codeI2C, codeSPI) pro potenciometry
zapis
naþtení hodnot z tabulek
zapisEE Konec rutina
kódování Ĝídících slov pro potenciometry Konec dej_kody
zapisEE
Ĝád tisíce?
+
adresa0 = tisíce
Ĝád stovky?
+
adresa1 = stovky
Ĝád desítky?
+
adresa2 = desítky
Ĝád jednotky? +
adresa3 = jednotky
vyšli codeSPI do AD7376 vyšli codeI2C do AD5254 Konec zapis
Konec zápisEE
Obr. 3.5 Struktura podprogramu rutina
Obr. 3.6 Struktura podprogramu dej_kody
Obr. 3.7 Struktura podprogramu zapis
Obr. 3.8 Struktura podprogramu zapisEE
zapis (obr. 3.7): Výsledky z podprogramu dej_kody jsou uloženy v registrech codeI2C pro AD5254 a codeSPI pro AD7376. Podprogram zapis spoþívá ve vyslání registru codeI2C po sbČrnici I2C a codeSPI po sbČrnici SPI do odpovídajících digitálních potenciometrĤ. Je nutné
Ĝíci, že obsluha obou rozhranních je vytvoĜena programovČ, jelikož nastavení MSSP modulu Ĝídícího mikroprocesoru v módu master I2C neplnilo funkci ani pĜi konfiguraci podle manuálu MSSP [ 21].
zapisEE (obr. 3.8) : Podprogram zapisEE obstarává uložení hodnoty po její zmČnČ(stisk Ĝídícího tlaþítka) do pamČti EEPROM. Vždy se ukládají promČnné všech ĜádĤ do bloku 4B od referenþní adresy.
vykresli (obr. 3.9): Podprogram pro vypsání všech þíslic displeje. Je realizováno pomocí nepĜímého adresování pamČti dat. Spoþívá v pĜiĜazení 1B kombinace na výstupní bránu mikropoþítaþe s názvem PORTD(vyplývá z kapitoly 2.2.5) a sepnutí báze tranzistoru pro 32
pĜíslušný Ĝád. Segmenty displeje odpovídají bitĤm
vykresli
registru PORTD podle tab. 3.1. Tabulka kódĤ þíslic výbČr Ĝádu
pro PORTD je tab. 3.2. Po cyklickém vypsání všech
ĜádĤ
podprogram
konþí.
Perioda
opakovaní nastav FSR
podprogramu vykresli je 1,45 ms (687 Hz), þili dostateþnČ s vyšší rychlostí, než zaznamená lidské oko.
PORTD = INDF
všechny Ĝády? + Konec vykresly
Obr. 3.9 vykresli
Bit 7 A
Struktura podprogramu
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
F
B
G
E
D
GP
C
Tab. 3.1 Pozice segmentĤ displeje v registru PORTD Na displeji
PORTD
0 1 2 3 4 5 6 7 8 9 nesvítí nic
00010010 11011110 01000011 01001010 10001110 00101010 00100010 01011110 00000010 00001010 11111111
Tab. 3.2 Nastavení registru PORTD pro þíslici displeje
3ĢtNODG\NyGRYiQt]ĀtVOLFGLVSOHMH Každý ze dvou druhĤ potenciometrĤ nastaví hodnotu výstupu v závislosti na pĜijatém kódu. Kód musí být obsažen vždy v 1 bytu. Jak už bylo Ĝeþeno v kapitole 2.2.3 pro AD7376BRUZ50 postaþí dokonce 7 bitĤ , pro AD5254ARUZ1 z kapitoly 2.2.4 právČ 1B.
33
Hodnota displeje je uložena do þtyĜ registrĤ, v programu konkrétnČ pod názvy: „tisice“,“ stovky“, „desitky“, “jednotky“, kdy každý zastupuje jeden dekadický Ĝád. Jejich obsah se pohybuje mezi 0 až 9. K pĜevodu na kódové byty dochází podle tabulky tab. 3.3 a následných souþtových rovnic ( 3.1) a ( 3.2) . Hodnoty v tabulkách vyplývají ze vztahu (2.7), kdy je ještČ uvažována sérioparalelní kombinace souþástek.1 krok potenciometru AD7376 je 130ȍ
(„krokVELK“). U AD5254 má velikost 1ȍ, s kterým lze poþítat jako s jedním bitem. ěád tisíce Na displeji 0 1 2 3 4 5 6 7 8 9
ěád stovky
KódT
ZbytekT [ȍ]
Na displeji
127 120 112 104 97 89 81 74 66 58
0 90 50 10 100 60 20 110 70 30
0 1 2 3 4 5 6 7 8 9
ěád desítky Na displeji 0 1 2 3 4 5 6 7 8 9
KódS ZbytekS [ȍ] 0 0 1 2 3 3 4 5 6 6
0 100 70 40 10 110 80 50 20 120
ěád jednotky
KódD
ZbytekD [ȍ]
Na displeji
0 10 20 30 40 50 60 70 80 90
0 90 50 10 100 60 20 110 70 30
0 1 2 3 4 5 6 7 8 9
KódJ ZbytekJ [ȍ] 0 1 2 3 4 5 6 7 8 9
0 100 70 40 10 110 80 50 20 120
Tab. 3.3 Tabulky pro urþení Ĝídících slov do potenciometrĤ codeSPI = (KódT – KódS)
( 3.1)
codeI2C = doplĖek(KódD + KódJ + ZbytekT + Zbytek + Zbytek + ZbytekS)
( 3.2)
PĜíklad: Nastav hodnotu odporu 1234ȍ. codeSPI = (KódT – KódS) = 120 – 0 = 120 codeI2C = (KódD + KódJ + ZbytekT + ZbytekS + ZbytekD + ZbytekJ) = = 0 + 4 + 90 + 40 + 0 + 0 = 164
34
Nastavené konstanty v programu: codeI2C > MAXIMUM
+ dekrementace codeSPI
krokVELK = 130 MAXIMUM = 130 MINIMUM = krokVELK-MAXIMUM
codeI2C -= krokVELK
codeI2C > MINIMUM
inkrementace codeSPI
+ codeI2C += krokVELK
Obr. 3.10 Podmínky pro kódvání codeI2C a codeSPI
codeSPI = codeSPI – 2 codeSPI = 118 Æ výsledný kód pro AD7376 codeI2C = 64 - vytvoĜení doplĖku 8bitového slova codeI2C = 255-64 = 191 Æ výsledný kód pro AD5254
9ìVOHGN\PďĢHQt Pro použití odporové dekády jsou rozhodujícími parametry monotónnost funkce rezistivity, nejmenšní možná zmČna kapacitní složky pĜi zmČnČ rezistivity a jejich frekvenþní nezávislost. ZjištČní pĜedešlých vlastností odporové dekády spoþívá v promČĜení celého rozsahu odporové dekády a zpracování hodnot odporových a kapacitních složek. Vzhledem k tomu, že rozsah dekády þiní 9899 hodnot(maximálnČ 9999 z kap. 2.1.2, 2.2.5 a minimálnČ 100 kap. 3.3 ), bylo mČĜení provedeno automaticky precizním LCR metrem (Agilent 4284A) po sbČrnici GPIB. Mód LCR metru byl nastaven na mČĜení Cp-Rp(tj. paralelní náhradní schéma odporu). Pro dodržení teorému vzorkování ( 4.1) byla nastavena zmČna hodnoty f VZ > 2 f SIG
( 4.1)
odporové dekády po 3s ( 0,333 [Hz]) a doba odmČru LCR metru 1s (1 [Hz]). I pĜesto však nČkdy došlo k situaci, že pĜi vzorkování LCR metrem nebyla mČĜená hodnota ustálená a došlo k odchýlení výsledku. Této skuteþnosti však nelze zabránit dokud mČĜení nebude probíhat synchronizovanČ tj. dokud odporová dekáda nebude Ĝízena poþítaþem pĜes USB. Ale to nebylo souþástí práce. Pro urþení frekvenþní závislosti Cp a Rp složky bylo zvoleno sedm rovnomČrnČ rozložených hodnot na celém rozsahu dekády pro osm frekvencí. NejdĤležitČjšími poznatky
35
pro praktické užívání dekády je její chování na vysokých frekvencích pĜi nastaveném odporu u horní hranice rozsahu.
3ĢHVQRVWPďĢHQt MČĜení probČhlo, jak bylo již bylo Ĝeþeno, na mČĜicím pĜístroji Agilent 4284A, který má udanou pĜesnost mČĜení 0,05 %. Tou je daná nejistota mČĜení typu B. Nejistoty typu B všech hodnot definuje interval mezi nejistotami nejmenší (611 ȍ) a nejvyšší (10700 ȍ) hodnotou. Nejmenší hodnota je urþena souþtem nastavené meze v programu(100 ȍ), neodstranitelnou rezistivitou „jezdcĤ“ digitálních potenciometrĤ (240 ȍ) a hodnotou pevných rezistorĤ na desce plošných spojĤ (270 ȍ). Hodnota 10700 ȍ je dána pĜiþtením zmínČného posunu od nuly(nejmenší hodnota) k 9899 krokĤm. Tyto kroky však nejsou rovné 1 ȍ a dochází proto k odchýlení od ideální maximální hodnoty 10510 ȍ. Vztah a výpoþet nejistoty typu B pro 611 ȍ ( 4.2):
δ1
X
u B (RP ) = 100 3
0,05 ⋅ 611 100 = = 0,18Ω 3
( 4.2)
Nejistota typu B pro 10700 ȍ ( 4.3):
uB (10700 ) = 3, 08Ω
( 4.3)
Velikost nejistoty tupu B se pohybuje v závislosti na velikosti namČĜené hodnoty v rozmezí (0,18–3,08)ȍ. Vztah pro uþenín nejistoty typu A je definována ( 4.4):
u A ( RP ) =
(
n 1 ¦ RPi − RP n ⋅ (n − 1) i´=1
)
2
( 4.4)
Vztah pro uþení celkové nejistoty typu C je definována ( 4.5):
uC ( RP ) = u A2 + uB 2
( 4.5)
Z opakovaného mČĜení vyplynulo, že nejistota typu A je proti nejistotČ typu B zanedbatelná. Proto je výsledná nejistota uc ( RP ) s koeficientem rozšíĜení kr = 2 rovna intervalu(0,36– 6,16)ȍ. 36
0ďĢHQtUH]LVWLYLW\
Vlastnosti Rp 12000
80 Rp (Ohm) Odchylka od linearity Lineární (Rp (Ohm))
40
8000 Rp [ȍ]
60
y = 1,0583x - 69,758 R2 = 0,9999
6000
20 0
4000
-20
2000
Odchylka od linearizovaného prĤbČhu Rp [ȍ]
10000
-40
0 0
2000
4000
6000 Krok n
8000
-60 12000
10000
Obr. 4.1 NamČĜené vlastnosti Rp složky Z grafu na obr. 4.1 lze vidČt vynesenou kĜivku sady namČĜných hodnot složky Rp [ȍ] v závislosti na aktuálním nastaveném kroku odporové dekády. Tato kĜivka je proložená linearizaþní pĜímkou, která udává ideální prĤbČh odporové veliþiny. TĜetí prĤbČh je vypoþítaná odchylka skuteþných hodnot Rp od linearizovaného prĤbČhu. Graf na obr. 4.2 názornČ ukazuje diferenciální nelinearitu digitálního potenciometru AD5254BRUZ1.
Potenciometr
charakteristiky(rozsahu).
Toto
se
používá
omezení
je
pouze
rovno
na
kroku
þásti
jeho
paralelní
odporové
kombinace
tĜí
AD7376BRUZ1 pro kompletní vykrytí rozsahu. V tomto pĜípadČ þiní 130 ȍ (z 2.1.1 nebo 3.3.1) a je volen v charakteristice na pozicích (0-130)ȍ, aby prĤmČrná hodnota kroku byla 1ȍ. Na grafu z obr. 4.2 je velice dobĜe vidČt vliv nelinearity na prĤbČh odporové složky, kdy dochází v krocích 630, 760 a 890 k pĜepnutí hodnoty z maxima na minimum zvoleného rozsahu.
37
Detail zmČn Rp 900
Rp [ȍ]
850 800 750 700 650 600 600
650
700
750
800
850
900
Krok n
Obr. 4.2 Detailní znázornČní zmČn rezistivity ZmČnu kroku, na rĤzných pozicích v odporové charakteristice potenciometrĤ, znázorĖuje graf z obr. 4.3. Ideální pĜípad by nastal tehdy, když by graf tvoĜila pĜímka
ǻ(Rp(n)-Rp(n-1)) = 1.
ǻ(Rp(n)-Rp(n-1)) [ȍ]
Rozdíl Rp(n)-Rp(n-1) 2,5 2 1,5 1 0,5 0 0
2000
4000
6000
8000
10000
Krok n
Obr. 4.3 Rozdíl namČĜené Rp(n)-Rp(n-1)
0ďĢHQtNDSDFLW\ Znalost velikosti a zmČny kapacity v závislosti na hodnotČ kroku potenciometrĤ je pro zapojení obvodu Wagnerovy zemČ [ 2],[ 3],[ 4] velice dĤležitá, nicménČ její velikost nelze bČžným Ĝízením odporové dekády cílenČ mČnit. PĜi mČĜení byly zjištČny zmČny kapacity vynesené v grafu na obr. 4.4. Je zde opČt velice dobĜe patrný vliv pĜepínání rozsahĤ digitálních potenciometrĤ. Jemné špiþky zpĤsobuje AD5254 a velké „schody“ zpĤsobují potenciometry AD7376.
38
ZmČny kapacitní složky 80 75
Cp [pF]
70 65 60 55 50 0
2000
4000
6000
8000
10000
Krok n
Obr. 4.4 ZmČny kapacity v závislosti na kroku
0ďĢHQtIUHNYHQĀQt]iYLVORVWL&SD5S Frekvenþní závislost je jedním z hlavních dĤvodĤ návrhu elektronické odporové dekády. PĜi mČĜení byly zjištČny výsledky vynesené v grafu obr. 4.5. Je vidČt, že pro nastavený odpor témČĜ na minimum nemá velikost frekvence témČĜ vliv. Zato pro hodnoty od jedné tĜetiny rozsahu dekády výš jsou ovlivnČny na frekvenci 1 MHz až o -24% nominální hodnoty. Z grafu na obr. 4.6 jsou vyneseny závislosti kapacitní složky na zvČtšující se frekvenci. Vzorky jsou odebrány pĜi stejném nastavení hodnot jako pĜi mČĜení frekvenþní závislosti Rp. Na rozdíl však od Rp dochází k nejvČtším zmČnám (až o -12% ) pĜi nastavení hodnot kolem (1000–2000)ȍ.
Frekvenþní závislost Rp 12000
Rp=1000ȍ Rp=2000ȍ
10000
Rp=4000ȍ Rp=6000ȍ
8000
Rp[ȍ]
Rp=8000ȍ Rp=10000ȍ
6000
Rp=10700ȍ
4000 2000 0 1000
10000
f [Hz]
100000
Obr. 4.5 Frekvenþní závislost složky Rp
39
1000000
Frekvenþní závislost Cp
Cp [pF]
76
Cp(1000ȍ)[pF]
Cp(2000ȍ)[pF]
74
Cp(4000ȍ)[pF] Cp(8000ȍ)[pF]
Cp(6000ȍ)[pF] Cp(10000ȍ)[pF]
72
Cp(10700ȍ)[pF]
70 68 66 64 1000
10000
100000
1000000
f [Hz]
Obr. 4.6 Frekvenþní závislost složky Cp
0ďĢHQtQDNRD[LiOQtPPĪVWNX Odporovou dekádu je tĜeba vyzkoušet v praxi pĜi vyrovnávání koaxiálního mĤstku v zapojení obvodu Wagnerovy zemČ [ 2], [ 3], [ 4]. Proto probČhlo experimentální meĜení, v zapojení podle obr. 4.7. V tomto schématu jsou zastoupeny namČĜené veliþiny na odporové dekádČ RP promČnným rezistorem RW2 a namČĜená složka CP pak promČnným kapacitorem CW2. Popis metody vyvažování uvádí literatura [ 4]. Výsledky experimentu ukázaly, že navržená odporová dekáda bude použitelná pĜi realizaci obvodu Wagnerovy zemČ, protože nebyl zaznamenán negativní vliv pĜi porovnání s mČĜením realizovaným klasickou mechanicky pĜepínanou dekádou. Generátor sinusového prĤbČhu
ISOLAýNÍ TRANSFORMÁTOR
DUT
IVD 1:10
INJEKýNÍ TRANSFORMÁTOR
H
R1 100 ∠ CINJ
1-n
UG1
Pomocný Generátor Sinusového prĤbČhu
LIA
R2 1 k∠ ∠
n L CW2
RW2
Obr. 4.7 Zapojení impedanþního mĤstku
40
UINJ
UG2
=iYďU Úkolem této bakaláĜské práce bylo navrhnout a realizovat mikroprocesorem Ĝízenou odporovou dekádu. Jako odporové elementy byly využity digitální potenciometry (kap. 2.2.3, kap. 2.2.4). Rozsah dekády se pohybuje okolo pĜedpokládaných mezí 500 ȍ – 10 kȍ. Pro její
Ĝízení došlo k výbČru požadovaného mikroprocesoru(kap. 2.2.1). K zobrazení nastavené hodnoty byl vybrán þtyĜmístný LED zobrazovaþ(kap. 2.2.5). ýíslicovČ Ĝízená dporová dekáda je realizována jako finální laboratorní pĜípravek. Pomocí BNC konektorĤ ji lze pĜipojit k obvodu impedanþního mĤstku(kap. 4.5). Odporová dekáda je navržena s prĤmČrným rozlišením 1 Ω (pohybuje se v rozmezí (0,4–1,6)Ω (kap. 4.2)). Nyní poskytuje rozsah od (611–10700)Ω. Minimální hodnota je tvoĜena souþtem pevných rezistorĤ, odporem potenciometrĤ pĜi nastavené nulové hodnotČ a minimální hodnotou 100 nastavenou v programu. Posunout rozsah níž lze zámČnou pevných rezistorĤ. Minimální hodnota rozsahu je (500–10589)Ω, aby byla zachována ochrana proudového pĜetížení digitálních potenciometrĤ. ZaĜízení mĤže být pĜipojeno do obvodu s maximálním napČtím ±10 V. Ovládání je vyĜešeno deseti tlaþítky(kap. 2.2.6). Osm z nich slouží k rychlému nastavování hodnoty, kdy lze mČnit každý dekadický Ĝád samostatnČ. Zbylé dvČ fungují jako reset hodnoty na stĜed rozsahu dekády a vypínaþ displeje. Odporová dekáda byla uložena do ochranné krabiþky, která zároveĖ slouží jako stínící kryt k omezení vniku vnČjšího rušení do obvodu Wagnerovy zemČ. PĜi mČĜení bylo ovČĜeno, že dekádu lze použít na frekvenþním rozsahu 1kHz – 1 MHz, pĜiþemž rozsah dekády se s rostoucí frekvencí zmenšuje. Proto údaj na zobrazovaþi nemusí odpovídat reálné odporové složce, což ale neovlivĖuje funkci dekády jako vyvažovacího prvku Wagnerovy zemČ (kap. 4). V této práci se podaĜilo vytvoĜit kompletní hardware a napsat obslužný software, který byl požadován. ZaĜízení bylo odzkoušeno a je plnČ funkþní.
41
/LWHUDWXUD [ 1] Vedral, J., Fischer, J.: Elektronické obvody pro mČĜicí techniku. Vydavatelství ýVUT, Praha 1999 [ 2] Boháþek, J.: Metrologie elektrických veliþin. Vydavatelství ýVUT, 1994, ISBN 80-01-01152-6
[ 3] Kibble, B.P.: Coaxial AC bridges. Vydavatelství Adam Hilger Ltd., Bristol 1984. [ 4] Sedláþek, R. - Kuþera, J. - Boháþek, J.: A New Design of Permuting Capacitors Device for Calibration of 10:1 High-Frequency Inductive Voltage Dividers. In 2006 Conference on Precision Electromagnetic Measurements. Torino: Politecnico di Torino, 2006, s. 476-477. ISBN 88-7992-228-9. [ 5] Záhlava, V.: Metodika návrhu plošných spojĤ, Vydavatelství ýVUT, 2000, ISBN 80-01-02193-9 [ 6] Dudáþek, K.: Seriova_rozhrani SPI, I2C, Microwire a CAN, dokument pdf
[ 7] AD7376ARUZ50, digital potentiometr, katalogový list Rev B. D01119-0-3/07(B) [ 8] AD5254BRUZ1, digital potentiometr, katalogový list, Rev A. D03824–0–9/05(A) [ 9] PIC16F877A, 44 Pin - enhanced flash microcontoller, katalogový list, DS39582B [ 10] MAX667CSA, +5V/Programmable Low-Dropout Voltage Regulator, katalogový list, 19-3894; Rev 3; 10/94, [ 11] MAX663CSA, +5V/Programable micropower voltage regulator, katalogový list, 19-0921; Rev 1; 7/96, [ 12] MAX664CSA, -5V/Programable micropower voltage regulator, katalogový list, 19-0921; Rev 1; 7/96, [ 13] SPI, Serial pheripheral interface, základní informace k rozhraní [ 14] I2C, Inter-Integrated Circuit, základní informace k rozhraní, [ 15]
FTDI, FT232R - USB UART IC,
[ 16]
UMS2, USB modul, uživatelská pĜíruþka
[ 17]
ADuM3201, Dual-Channel, Digital Isolators, katalogový list, Rev 0. D05927-0-7/06
[ 18]
BSV52, NPN Tranzistor, katalogový list, R75/04/pp7
[ 19]
Ral 5 WK, Miniature 2 poles relay, katalogový list, Rev. 11/08/2005.
42
[ 20]
GM Electronic - Katalog souþástek pro elektroniku,
[ 21]
AN735, MSSP Module for Master I2C Communications, návod k užití, DS00735A
[ 22]
OlovČné akumulátory – popis, chování, údržba
[ 23]
MPLAB, vývojové prostĜedí,
[ 24]
Asix UP, software pro programátor,
43
$ 3ĢtORKDUR]PtVWďQtYìYRGĪVRXĀiVWHN
Obr. A.1 RozmístČní vývodĤ pouzdra TQFP mikroprocesoru PIC16F877A
Obr. A.2 RozmístČní vývodĤ pouzdra DIP8 lineárního regulátoru MAX667CSA
Obr. A.3 RozmístČní vývodĤ pouzdra DIP8 lineárního regulátoru MAX663CSA
Obr. A.4 RozmístČní vývodĤ pouzdra DIP8 lineárního regulátoru MAX664CSA
44
Obr. A.5 RozmístČní vývodĤ pouzdra TSSOP potenciometru AD7376ARUZ50
Obr. A.6 RozmístČní vývodĤ pouzdra TSSOP potenciometru AD5254BRUZ1
Obr. A.7 RozmístČní vývodĤ pouzdra SOIC_N Obr. A.8 RozmístČní vývodĤ USB modulu oddČlovaþe ADuM3201 UMS2 (DIL28)
45
%
3ĢtORKDVFKpPD]DSRMHQt
Obr. B.9 Schéma zapojení odporové dekády (1.þást) 46
Obr. B.10 Schéma zapojení odporové dekády (2. þást)
47
& 3ĢtORKDVH]QDPVRXĀiVWHN Oznaþení C1,C5,C6,C7,C8,C9,C15,C16,C21,C22,C27 C28,C29,C30,C31,C32,C33,C34,C35,C36 C2,C3,C4,C17,C18,C19 C20,C23,C24,C25,C26 DISPLAY1 D1,D2,D3,D4,D5,D7,D8,D9,D10,D11,D12 D6 J1 J3,J4 J19,J20 J21,J22 J23,J24 J29,J30,J31,J32,J33,J34 L1 MCU1 PROGRAMOVACI PINY1 RELE1 R1 R2,R5,R6,R7,R8 R3,R4,R9,R10,R23,R41,R42,R43,R44 R11,R12,R13,R14 R15,R16,R17,R18,R19 R20,R21,R22,R32,R33,R34,R35 R24 R25 R26,R27,R28,R29,R30 R31,R36,R37,R38,R39,R40 SW9 T1,T2,T3,T4,T5,T6 USBModul18 U4A U5A U9,U10,U11,U12,U13,U14,U15,U16,U18,U23 U17A U19 U20 U21 U22 Y1
Hodnota 100nF 100nF 10uF 10uF
Popis Poþet kondenzátor, SMD 0805 20 kondenzátor, SMD 0806 kondenzátor elektrolitycký 11 radiální 1 BQ M514RD 4-místný LED zobrazovaþ DIODE Dioda, SMD 1406 11 LED LED dioda, 3 mm 1 CON3 Konektor 3-pinový, 3,5mm 1 BNC BNC konektor 2 CON10 Konektor 10-pinový, 2,54mm 2 CONN PWR 2-J Konektor 3-pinový, 5mm 2 CONN RECT 3 Konektor 10-pinový, 3,5mm 2 HEADER 7 Konektor 10-pinový, 2,54mm 6 126LNS Tlumivka, SMD 1406 1 PIC16F877A Mikroprocesor TQFP-44 1 ICSP Lišta precizní, 2,54mm 1 RAL D 5WK bistabilní mikro relé 1 200K Rezistor, SMD 0805 1 1M Rezistor, SMD 0805 5 10K Rezistor, SMD 0805 9 550R Rezistor, SMD 0805 4 330R Rezistor, SMD 0805 12 330R Rezistor, SMD 0806 4k7 Rezistor, SMD 0806 1 1k5 Rezistor, SMD 0807 1 5K5 Rezistor, SMD 0807 11 5K6 Rezistor, SMD 0808 mikro switch mikro tlaþítko 1 BSV52 NPN tranzistor, SOT23 6 UMS2 convertor USB/UART 1 AD5254BRU1 digitální potenciometr 1 AD7376ARU50 digitální potenciometr 1 P-ST1034 mikro tlaþítko 10 ADuM3201ARZ impedanþní oddČlovaþ 1 konektor USB konektor 1 MAX663/SO napČĢový regulátor 1 MAX664/SO napČĢový regulátor 1 MAX667/SO napČĢový regulátor 1 Keram. Rezonator 429KHz 1
48
' 3ĢtORKDSORåQpVSRMH
a) vrstva TOP
b) vrstva BOTTOM
Obr. D.11 DPS keyboard
a) vrstva TOP
b) vrstva BOTTOM
Obr. D.12 Osazovací výkres DPS keyboard
a) vrstva TOP
b) vrstva BOTTOM
Obr. D.13 DPS modul_digipot
49
b) vrstva BOTTOM není osazena žádnou souþástkou
a) vrstva TOP
Obr. D.14 Osazovací výkres DPS modul_digipot
a) vrstva TOP
b) vrstva BOTTOM
Obr. D.15 DPS Mainboard
50
a) vrstva TOP
b) vrstva BOTTOM
Obr. D.16 Osazovací výkres DPS Main board
51
(
3ĢtORKDREVDKSĢLORçHQpKR&'
PĜiložené CD obsahuje text této bakaláĜské práce a veškeré materiály s ní spojené. Data jsou
þlenČna do tČchto adresáĜĤ: /bp/ -obsahuje tuto práci ve formátu PDF /katalogove_listy/ - obsahuje veškeré katalogové listy a dokumentaci /orcad/ - obsahuje veškeré materiály pro návrh a výrobu desek plošných spojĤ, které vznikly v návrhovém systému OrCad /zdrojove_kody/ - obsahuje veškeré zdrojové kódy v assembleru, které byly pro aplikaci napsány
/excel/ - obsahuje namČĜené hodnoty na odporové dekádČ a pomocný soubor pro urþování odporu /programy/ - obsahuje vývojové prostĜedí, ve kterém byly napsány zdrojové kódy a programátor AsixUp /obrazky/ - obsahuje veškeré použité obrázky /zaloha/ - obsahuje komprimovanou kopii všech dat na tomto CD
52