.. .. .. .. ..
22.4.2002
Mikroprocesory v přístroj. technice
Voltmetr .
.
.
.
.
Petr Česák
Letní semestr 2001/2002
.
.
.
.
.
.. .. .. .. ..
Voltmetr 3. úloha ZADÁNÍ Navrhněte a sestavte na kontaktním poli číslicový voltmetr s dvojí integrací řízený mikropočítačem (MP) s I8031. Parametry: • Vstupní rozsah: 0 až -2 V • Rozlišovací schopnost: min. 0.2 mV případně lepší • Chyba měření : max. 1 mV • Doba integrace Ux : celistvý násobek 20 ms • Polarita vstupního napětí: záporná • Napájecí napětí operačních zesilovačů : +5V a -5 V • Vestavěná programová korekce chyby nuly a měřítka (aditivní a multiplikativní chyby) • Zobrazení výsledku měření: prostřednictvím RS-232 na PC Příkazy: • M - opakované měření bez průměrování, zobrazení výsledku je ve formě x.xxxx V • S - jednorázový odměr; provede jednorázový odměr a vypíše napětí • A - opakované měření, výsledek jako průměr z počtu odměrů nastavených příkazem N • Nn - nastavení počtu průměrování (n = 1, 2, 4, 8; defaultně 2) • C x.xxxx - kalibrace zadáním aktuálního napětí na vstupu • V - vypsání kalibrační konstanty (může se jednat i o zjednodušenou prezentaci kalibrační konstanty - např. pouze 3 číslice) • Zxxxx - zadání kalibrační konstanty ve stejné formě, jak byla vypsána příkazem V • F - uzavření zpětné vazby (připojení výstupu komparátoru na vstup integrátoru přes čtvrtý vstup multiplexeru
Petr Česák
1
22.4.2002
ROZBOR Princip činnosti: Vstupní napětí se přivádí přes multiplexer na vstup integrátoru po dobu k*20ms . Tento čas je zvolen proto, aby byl potlačen rušivý signál o f=50 Hz. Napětí na výstupu integrátoru se z počáteční výchozí napěťové úrovně (zde obvykle 0V) postupně mění s rychlostí přímo úměrnou velikosti vstupního napětí Ux. Pak se připojí referenční napětí opačné polarity a integruje se tak dlouho, až se dosáhne opět původní výchozí napěťové úrovně (0V). Úloha může použít řady programových bloků, které již byly vyvinuty pro ohmmetr (měření délky impulsu pomocí čítače T0, násobení, převod BIN- BCD- ASCII, výpis dat na PC). Použité operační zesilovače (dále OZ) mají vstupní napěťovou nesymetrii řádově 1 - 5 mV, která ovlivňuje výsledek. Napěťová reference LM431 (TL431) má rozptyl velikosti napětí řádově v rozmezí 2.44 až 2.55 V v závislosti na použité součástce. Proto voltmetr musí obsahovat programové korekce chyby nuly a měřítka. Korekční hodnotu pro korekci chyby nuly (kalibraci nuly) může voltmetr určovat před každým měření, případně po jistém počtu měření. Korekce nuly se provede tak, že se vstup voltmetru připojí na zem (nulové napětí) a změří se napětí, které je nyní určeno pouze vnitřními napěťovými posuny a napěťovou nesymetrií OZ. Tato hodnota se bude odečítat od výsledné hodnoty. Vstupní napěťová nesymetrie OZ může nabývat obou polarit. Mohla by proto nastat situace, kdy by nebylo možno změřit chybu nuly (voltmetr je schopen měřit pouze jednu polaritu vstupního napětí). Aby to bylo možné vždy bez ohledu na vlastnosti použitých OZ, zavede se uměle pomocí odporů posun nuly na hodnotu řádově 20 mV. Kalibrace: Korekční hodnota pro vyloučení chyby měřítka (kalibrace měřítka) se určí pouze na základě požadavku uživatele zadaného prostřednictvím RS-232. Toto měření se provede následujícím způsobem: Na vstup se přivede napětí o známé velikosti. V režimu kalibrace měřítka bude voltmetr stále měřit velikost přivedeného napětí. Po zadání jeho skutečné velikosti (zjištěné voltmetrem HP34401) mikropočítač vypočte kalibrační konstantu, pomocí níž dále koriguje výsledek. V této fázi je nutné, aby MP určoval správnou korekci nuly při každém měření. Mikropočítač pak může ihned určit správnou velikost multiplikativní korekční konstanty. Korekce nuly zůstává shodně s předchozím případem. Výpočty: Je třeba určit velikost odporu v integrátoru tak, aby napětí na výstupech OZ (mimo komparátoru) nepřesáhlo 2.5V. OZ pracuje lineárně pro výstupní napětí, která jsou menší než napájecí napětí OZ. Na výstupu integrátoru by při maximálním vstupním napětí mělo být na konci integrace Ux zhruba 2 až 2.5 V (kladné nebo záporné, podle volby). Příliš malé zvolené napětí však zvyšuje vliv rušivých šumů. Pro výstup integrátoru obecně platí: Petr Česák
2
22.4.2002
u int
1 = R ⋅C
Tint
∫ u (t )dt 0
uint
je napětí na výstupu integrátoru
u(t)
napětí na vstupu integrátoru
R,C
velikost R a C v integrátoru
Pro velikost měřeného napětí pak obecně platí: U X = −U R
T2 T1
Uref
je velikost referenčního napětí
T1
je doba integrace neznámého měřeného napětí Ux
T2
je doba integrace referenčního napětí Uref
Všechny výpočty se provádějí v binární aritmetice a až pro účely zobrazení se převádějí čísla na BCD a ASCII řetěz. Postup výpočtu: Nkx = Nx - No korekce nuly No - obsah čítače pro dobu T2 při připojení vstupu na zem Nx - obsah čítače pro dobu T2 při měření Ux Ukx = Nkx * Km převod na napětí a korekce multiplikativní chyby Z velikosti konstanty integrátoru, referenčního napětí a doby integrace měřeného napětí se vypočte první odhad pro převodní konstantu Kv, kterou se násobí doba integrace T2. Použitá součástková základna: - čtyřnásobný operační zesilovač (OZ) TL084 - vstupní napěťová nesymetrie je typicky 5 mV, vstupní klidový proud je řádově 50pA, rychlost přeběhu 10 V/us - případně dvojnásobný OZ typu KF442 (ekvivalent LF442), vstupní napěťová nesymetrie typicky 1 mV, vstupní klidový proud 50 pA, rychlost přeběhu 1V/us. Informace o TL084: TL084 od firmy SGS Thomson nebo TL084 od firmy TI ve formátu PDF. - integrační kondenzátor 220 nF
Petr Česák
3
22.4.2002
- analogový multiplexer 74HCT4052 (napájení +5V, -5V). Informace o 74HCT4052: 74HCT4052 od firmy HARRIS nebo74HCT4052 od firmy Toshiba ve formátu PDF. - napěťová reference LM431 (ekviv. TL431 - Informace o 431: LM431 od firmy NS nebo TL431 od firmy Motorola nebo TL431 od firmy SGS Thomson ve formátu PDF - jako napěťový komparátor je použit OZ TL084 s omezením výstupního napětí na +5V a 0V pomocí odporu a diody. Katalogové listy lze také nalézt v Katalogu součástek. Poznámky: Doporučuje se před začátkem psaní programu nakreslit si časový diagram činnosti přístroje (včetně předpokládaných napěťových úrovní v jednotlivých bodech zapojení). Při návrhu obvodů na kontaktním poli je třeba dbát na dobré zemnění do jednoho bodu, nepoužívat zbytečně dlouhé vodiče pro spoje na poli. Obě napájecí napětí +5V i -5V i referenční napětí 2.5V je třeba zablokovat kondenzátory (např. 47 uF/10V) proti zemi. Na impedanci dlouhých napájecích vodičů totiž mohou vznikat parazitní úbytky napětí, které mohou bez blokování negativně ovlivnit funkci voltmetru. Při běhu voltmetru je vhodné osciloskopem zkontrolovat, zda na výstupu integrátoru je lineárně rostoucí napětí bez omezování. Výstup komparátoru se (podobně jako z MKO u ohmmetru) bude přivádět na invertující přerušovací vstup INT0\ vývojové desky I8031. Je nutné zajistit, aby na vstupech vývojové desky nebylo nikdy záporné napětí. Ovládání multiplexeru 74HCT4052 je pomocí portu P1. Program pro příjem znaků z RS-232 musí vzít v úvahu, že ladicí program MON51 i TS51 zajišťují režijní komunikaci s vývojovou destičkou vysíláním znaků CTRl_S a CTRL_Q (11hex a 13hex). Proto přijímací podprogram musí obsahovat zádržný filtr, který neakceptuje tyto znaky. Výsledky měření při opakovaných odměrech se vypisují bez odřádkování na stále stejný řádek (znak 0Dh = CR cariage return - návrat na začátek řádku). Při jednorázových odměrech (příkaz S) se výsledky vypisují s odřádkováním. Rychlost měření nesmí záviset na měřeném napětí. Integrátor se nesmí (ani v době mezi měřeními) dostat do saturace. Uzavření zpětné vazby příkazem F (tj. připojení výstupu komparátoru na vstup integrátoru přes čtvrtý vstup multiplexeru) slouží zejména pro oživování integrátoru a komparátoru. V tomto režimu procesor do činnosti obvodu nezasahuje a integrátor tak stále integruje výstupní napětí komparátoru. Vzhledem k tomu, že obvod má záporný přenos, musí se na výstupu integrátoru generovat malé napětí s pilovitým průběhem. Součástky: Pin č.1 je na pouzdře integrovaného obvodu vlevo od značky. Multiplexer 74HCT4052: Multiplexer 74HCT4052 je dvoupólový , čtyřpolohový přepínač. Přepínají se kontakty X na 0X, 1X, 2X, 3X a Y na 0Y, 1Y, 2Y, 3Y.
Petr Česák
4
22.4.2002
Operační zeslovač TL084: Čtyřnásobný J-FET operační zesilovač TL084 má vstupní proudy typ 50 pA, vstupní napěťovou nesymetrii typ. 5 mV.
Napěťová reference LM431: Napěťovou referenci je třeba zablokovat elektolytickým kondenzátorem 22uF. Sériový odpor k referenci volte tak, aby referencí tekl proud alespoň 2mA (viz Ohmův zákon).
Petr Česák
5
22.4.2002
Kladné i záporné napájecí napětí je třeba také na kontaktním poli zablokovat el. kondenzátory. OBVODOVÉ ŘEŠENÍ Průběh napětí na výstupu integračního článku: Průběhy pro různá vstupní napětí
Uint
t
Tp
Tp
Tzv
Ts
Tx
Tn
Tz
- doba pře vlastním měřením
Tzv - nulování kondenzátoru za pomocí zpětné vazby
Petr Česák
Ts
- softwarové nulování
Tx
- integrace záporného vstupního napětí
Tn
- integrace kladné reference - vybíjení (přebíjení) kondenzátoru
Tz
- připojení integrátoru na zem
6
22.4.2002
VCC
Ux
R6 91 k VCC R7 15 0
R1
VCC
1k
VCC
REF
LM431A/TO9 2
P1.4
P1.5
12 14 15 11 1 5 2 4 6 10 9
X0 X1 X2 X3 Y0 Y1 Y2 Y3 INH A B 40 52
X Y
13 3
5 6
R2 +
7
3
U1A
2
+
1
-
27 0k
12 13
TL0 84
U1D 4
U3
U1B
TL0 84
TL0 84 + -
14
D1 INT0 DIODE
-VCC -VCC
C1
R3 3k
11
ANODE
3
4
CTHD 4
2
11
1
VCC
11
U2
-VCC R4 10 k
22 0n
R5 10 k
SOFTWAROVÉ ŘEŠENÍ Program jsme rozdělili na dvě části – viz vývojový diagram: •
komunikace s uživatelem + měření
•
výpočetní část
Postupně jsme si odladili jednotlivé procedury-funkce •
výpis hodnot na obrazovku pomocí RS232
•
komunikace s multiplexorem
•
nulování (vybití) kondenzátoru
•
časování 60ms – doba integrace vstupního napětí
•
měření doby vybití integračního kondenzátoru
•
výpočetní funkce
•
automatické nulovaní při startu
•
úpravy výpisu a zadávání hodnot
Poznámka: Interně v programu jsme do matematické části přidali instrukci „O“, která má za úkol načíst offset. Tento offset se používá k odečtení od změřené doby integrace. Takto odstraníme aditivní chybu měření. Jako interní multiplikativní konstanta složí 24-bitová proměnná. Při výpisu a zadávání se s ní pracuje jako 16-bitovou proměnnou. Teoreticky má být horních 8 bitů nad 16-bitovou hranicí rovno log. 0. 24-bitová proměnná byla použita kvůli využití matematické knihovny.
Petr Česák
8
22.4.2002
RESET
Příkaz "O" Vybití kond. Integrace nuly - 60ms
Inicializace - RS232, časovač
Čekaní+načtení příkazu
Chyba: Neznámý příkaz
Platný příkaz?
Nastavení zpětné vazby
NE
Chyba: Mimo rozsah ANO
Příkaz"F"?
Vybití kond. Integrace vstupu - 60ms
Přetečení
Integrace referecne Změření doby T
Příkaz "N2" "N"
"S"
"M"
"A"
"V"
"O"
"Z "
Ta=Ta+T
Uložení N Nuluj Ta i=0
ANO
"C"
Výpočet K=Uref/(T-T0)
i=N?
T=Ta/N i=0
Uložení T0
NE
Výpočet U=-K*(T-T0)
Načtení K
Uložení K
Uložení K
MATH
Zobrazení K
ANO
U<=-2 V
NE Zobrazení R
ANO
Petr Česák
P řík az "M ","A"?
NE
9
22.4.2002
NAMĚŘENÉ HODNOTY Pro kalibraci jsme použili hodnotu 1V. Uskut[mV] Uzmer[mV] Absolutní chyba[mV] 0,0 0,1 0,1 1,4 1,5 0,1 9,3 9,4 0,1 22,3 22,4 0,1 53,2 53,2 0,0 74,3 74,3 0,0 122,0 122,0 0,0 229,0 228,9 -0,1 372,0 371,9 -0,1 475,2 475,0 -0,2 568,8 568,6 -0,2 677,7 677,5 -0,2 812,8 812,6 -0,2 996,8 996,8 0,0 1049,0 1049,0 0,0 1181,6 1181,6 0,0 1381,8 1381,9 0,1 1629,2 1629,5 0,3 1786,3 1786,7 0,4 1824,0 1824,5 0,5 1927,1 1927,8 0,7 1994,2 1995,0 0,8 1994,2 1995 ,0 0,8
Absolutní chyba měření voltmetru 1,0 0,8
Chyba [mV]
0,6 0,4 0,2 0,0 -0,2 -0,4 0,0
200,0
400,0
600,0
800,0
1000,0
1200,0
1400,0
1600,0
1800,0
2000,0
U [mV]
Petr Česák
10
22.4.2002
ZÁVĚR ZADÁNÍ: Po změření celého rozsahu jsme nalezli největší absolutní chybu +0,8mV. Zkonstruovaný voltmetr tedy splnil zadní, které udávalo největší možnou chybu 1mV. PROGRAMOVÁNÍ: Program jsme si s kolegou rozdělili na dvě části – část komunikace s uživatelem+měření a část matematickou. Problémem při programování byl program MONINTOR, který neustále zasílá data po sériové lince RS232 znak 11h. Proto jsme toto číslo při načítání dat od uživatele ignorovali. REALIZACE: HW část jsme realizovali na nepájivém poli. Některé hodnoty odporů jsme nenalezli přímo, tak jsme použili jejich sériovou kombinaci. CHYBY MĚŘENÍ: Chyby měření jsou způsobeny několika faktory: •
kalibračním napětím
•
přesností matematické výpočtu
•
chybou zdroje referenčního napětí
•
nestálostí integračního kondenzátoru
•
dalšími rušivými vlivy – teplota, přívodními kabely, ...
Nevýhodou měření je nutná kalibrace napětí a požadavek na záporné napájecí napětí. Přístroj vyhověl zadaným parametrům.
Petr Česák
11
22.4.2002
VÝPIS PROGRAMU
Petr Česák
12
22.4.2002
Petr Česák
13
22.4.2002
Petr Česák
14
22.4.2002
Petr Česák
15
22.4.2002
Petr Česák
16
22.4.2002
Petr Česák
17
22.4.2002
Petr Česák
18
22.4.2002