´ UCEN ˇ ´I TECHNICKE ´ V BRNE ˇ VYSOKE ˇ ´ICH TECHNOLOGI´I FAKULTA ELEKTROTECHNIKY A KOMUNIKACN ´ Ustav radioelektroniky
Pˇ resn´ y termostat bakal´aˇrsk´a pr´ace
Obor : Jm´eno studenta: Vedouc´ı bakal´aˇrsk´e pr´ace:
Elektronika a sdˇelovac´ı technika Petr Snopek doc. Dr. Ing. Zdenˇek Kolka
BRNO UNIVERSITY OF TECHNOLOGY FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION Institute of Radio Electronics
Precise Thermoregulator bachelor thesis
Study Specialization: Author : Supervisor :
Electronics and Communication Petr SNOPEK Dr. Zdenˇek Kolka
ABSTRACT This project finds possible solution for design of precise thermoregulator. Design puts the accent on correct selection and application method of temperature sensor and circuit elements with low offset (amplifiers) and low noise. Everything respects minimum inaccuracy circuit modules. This work also considers most suitable solution of sensor’s nonlinearity and temperature momentum load. Except for IC sensors, all temperature sensors have nonlinear transfer functions. In the past, complex analog conditioning circuits were designed to correct for the sensor nonlinearity. These circuits often required manual calibration and precision resistors to achieve the desired accuracy. Platinum resistance temperature detector (PRTD) is used as pattern sensor because of many advantages of pure platinum. RTDs are accurate, but require excitation current and are mostly used in bridge circuits. Linearization and calibration is then performed digitally, thereby reducing cost and complexity. Very important is analog-to-digital conversion. Bite depth is selected as single sample was smaller than half accuracy of temperature sensor. Bite depth about 16b is suitable for wide period of measured temperatures. Sample rate is irrelevant for sampling slowly change temperature. Last but not least is right concept and it’s design. Such as nonzero resistance of incoming wires, suppress occurrence eventually elimination ground loops and other couplings among circuit devices. In the beginning of the design it considers this factors.
Prohl´ aˇ sen´ı Prohlaˇsuji, ˇze svou bakal´aˇrskou pr´aci na t´ema ”. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” jsem vypracoval(-a) samostatnˇe pod veden´ım vedouc´ıho bakal´aˇrsk´e pr´ace a s pouˇzit´ım odborn´e literatury a dalˇs´ıch informaˇcn´ıch zdroj˚ u, kter´e jsou vˇsechny uvedeny v seznamu literatury na konci pr´ace.
V Brnˇe dne . . . . . . . . . . . . . . . . . .
.............................. (podpis autora)
Podˇ ekov´ an´ı Dˇekuji vedouc´ımu bakal´aˇrsk´e pr´ace doc. Dr. Ing. Zdeˇ nku Kolkovi za u ´ˇcinnou metodickou, pedagogickou a odbornou pomoc a dalˇs´ı cenn´e rady pˇri zpracov´an´ı m´e bakal´aˇrsk´e pr´ace.
V Brnˇe dne . . . . . . . . . . . . . . . . . .
.............................. (podpis autora)
OBSAH ´ 1 Uvod
6
2 Vstupn´ı ˇ clen - sn´ımaˇ c teploty
7
2.1
Rozdˇelen´ı teplotn´ıch sn´ımaˇc˚ u . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
2.1.1
Bimetalov´ y teplotn´ı sp´ınaˇc . . . . . . . . . . . . . . . . . . . . . . . . . .
7
2.1.2
Termoelektrick´ y ˇcl´anek . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
2.1.3
Termistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2.1.4
Odporov´ y teplotn´ı senzor . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.1.5
Kˇrem´ıkov´ y teplotn´ı senzor . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
Kalibrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
2.2.1
Line´arn´ı teplotn´ı senzory . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
2.2.2
Pˇresn´e odporov´e teplotn´ı senzory . . . . . . . . . . . . . . . . . . . . . . .
12
2.3
Shrnut´ı teplotn´ıch senzor˚ u . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.4
Typov´e pˇr´ıklady zapojen´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.4.1
M˚ ustkov´e (Wheatsonovo) zapojen´ı platinov´eho teplotn´ıho ˇcidla PT100 . .
13
2.4.2
Integrovan´ y obvod ADT70 pro mˇeˇren´ı s PT1000 . . . . . . . . . . . . . .
14
2.4.3
Pˇrevodn´ık teplota/napˇet´ı s LM335 . . . . . . . . . . . . . . . . . . . . . .
14
2.2
3 Linearizace 3.1
3.2
16
Teoretick´ yu ´vod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
3.1.1
Linearizace pomoc´ı mikroprocesoru . . . . . . . . . . . . . . . . . . . . . .
18
Typov´e pˇr´ıklady linearizace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
Linearizace napˇet’ov´eho pr˚ ubˇehu na v´ ystupu platinov´eho teplotn´ıho ˇcidla PT100 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
Integrovan´e obvody ˇrady XTR . . . . . . . . . . . . . . . . . . . . . . . .
19
3.2.1 3.2.2
4 Digitalizace sign´ alu – A/D pˇ revodn´ık
20
4.1
Principieln´ı rozdˇelen´ı pˇrevodn´ık˚ u . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
4.2
Komunikace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
4.3
Shrnut´ı A/D pˇrevodn´ık˚ u . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
5 Mikroprocesor
22
6 V´ ystupn´ı periferie
23
6.1
LCD displej . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
23
6.2
V´ ykonov´ y akˇcn´ı ˇclen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
6.2.1
24
Typov´ y pˇr´ıklad sp´ın´an´ı v´ ykonov´e z´atˇeˇze optotriakem . . . . . . . . . . . .
7 N´ avrh
25
7.1
Analogov´a ˇc´ast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
7.1.1
Zdroj napˇet´ı a sp´ınaˇc v´ ykonov´eho akˇcn´ıho ˇclenu . . . . . . . . . . . . . .
26
7.1.2 M˚ ustkov´e zapojen´ı PT100 s pˇresn´ ym napˇet’ov´ ym zes´ılen´ım . . . . . . . . ˇ ıslicov´a ˇc´ast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C´
27
7.2.1
Komunikace mezi prvky . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
7.2.2
Tepeln´a setrvaˇcnost z´atˇeˇze . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
Programov´e vybaven´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
7.2
7.3
8 Rozbor chyb
29
32
8.1
Teplotn´ı senzor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
8.2
Teplotn´ı stabilita analogov´eho obvodu . . . . . . . . . . . . . . . . . . . . . . . .
32
8.3
Linearizace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ˇ Sumov´ e vlastosti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
8.4
37
9 Z´ avˇ er
39
A V´ ykresov´ a dokumentace
41
A.1 Sch´ema zapojen´ı zdroje napˇet´ı a v´ ykonov´e ˇc´asti termostatu . . . . . . . . . . . .
41
A.2 Sch´ema zapojen´ı DPS01 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
A.3 Sch´ema zapojen´ı DPS02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
A.4 Deska ploˇsn´ ych spoj˚ u DPS01 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
A.5 Deska ploˇsn´ ych spoj˚ u DPS02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
A.6 Technick´ y v´ ykres zadn´ıho panelu . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
B Rozpiska souˇ c´ astek
48
C Laboratorn´ı mˇ eˇ ren´ı
50
C.1 Mˇeˇren´ı ˇsumu a zvlnˇen´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
50
C.2 Mˇeˇren´ı teplotn´ı stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
D Programov´ e vybaven´ı pro AT89C4051
53
E Pozn´ amky
59
5
1
´ UVOD
C´ılem m´e pr´ace je navrhnout pˇresn´ y a teplotnˇe stabiln´ı termostat s chybou nepˇresahuj´ıc´ı ±0,1◦ C v ˇsirˇs´ım intervalu teplot. Systematick´ ym postupem je hled´an vhodn´ y teplotn´ı sn´ımaˇc, kter´ y disponuje dostateˇcnou pˇresnost´ı, a ostatn´ı obvodov´e prvky. Pr´avˇe nad v´ ybˇerem teplotn´ıho sn´ımaˇce a n´asleduj´ıc´ıch obvod˚ u analogov´eho charakteru by mˇela b´ yt upˇrena zv´ yˇsen´a pozornost, jelikoˇz nepˇresnosti z´ıskan´e chybou teplotn´ıho senzoru se ve stejn´e, ne-li ve vˇetˇs´ı, m´ıˇre projev´ı i na v´ ystupu cel´eho zaˇr´ızen´ı. Abychom mˇeˇren´e v´ ysledky dost´avali v pˇresn´ ych hodnot´ach i po urˇcit´e dobˇe, je kromˇe samotn´e pˇresnosti nepˇrehl´ednuteln´ ym parametrem pˇresn´eho senzoru i stabilita v ˇcase. Tot´eˇz plat´ı pro veˇsker´e analogov´e obvody, pro kter´e je nem´enˇe d˚ uleˇzit´a vysok´ a teplotn´ı stabilita. Posledn´ım ˇclenem, kter´ y m˚ uˇze zp˚ usobit chybu analogov´eho charakteru je A/D pˇrevodn´ık. Rozumnou volbu si zaslouˇz´ı jeho bitov´e rozliˇsen´ı a nepochybnˇe i ˇsumov´e vlastnosti. Rozliˇsen´ı A/D pˇrevodn´ıku je voleno tak, aby teplotn´ı rozd´ıl mezi dvˇema vzorky nebyl vˇetˇs´ı neˇz je absolutn´ı chyba teplotn´ıho senzoru a kompenzaˇcn´ıch obvod˚ u. D´ale se informace ˇs´ıˇr´ı ˇc´ıslicovˇe a tedy beze ztr´at. Tak aby bylo moˇzno navrhnout pˇresn´ y termostat je rovnˇeˇz tˇreba ˇreˇsit pˇr´ıpadn´e odchylky od nelinearity jednotliv´ ych obvodov´ ych elementu u nichˇz doch´az´ı k posuvu na dynamick´ ych pˇrevodn´ıch charakteristik´ach, nenulov´ y odpor pˇr´ıvodn´ıch vodiˇc˚ u k teplotn´ımu senzoru a jin´e aspekty spr´avn´eho n´avrhu a konstrukce. Zjednoduˇsen´e blokov´e sch´ema pˇredstavuje obr´azek 1.1.
VYKONOVY AKCNI CLEN (TOPENI)
SNIMAC TEPLOTY
OBVODY KOMPENZACE A LINEARIZACE
A/D PREVODNIK
MIKRO PROCESOR
ZOBRAZOVACI JEDNOTKA
OVLADANI
Obr. 1.1: Blokov´ e sch´ ema pˇ resn´ eho digit´ aln´ıho termostatu
6
ˇ ˇ TEPLOTY VSTUPN´I CLEN - SN´IMAC
2 2.1
Rozdˇ elen´ı teplotn´ıch sn´ımaˇ c˚ u
Sn´ımat teplotu m˚ uˇzeme nˇekolika z´akladn´ımi zp˚ usoby. Jedn´ım z moˇzn´ ych rozdˇelen´ı je podle typu v´ ystupn´ıho sign´alu: • Mechanicky · Bimetalov´ y teplotn´ı sp´ınaˇc • Analogovˇe · Pˇrevodn´ık teploty na napˇet´ı (proud) · Termoelektrick´ y ˇcl´anek · Termistor · Odporov´ y teplotn´ı senzor · Kˇrem´ıkov´ y teplotn´ı senzor • Digit´alnˇe - Pˇrevodn´ıkem teploty na bin´arn´ı ˇc´ıslo · Digit´aln´ı teplotn´ı senzor
2.1.1
Bimetalov´ y teplotn´ı sp´ınaˇ c
Jedn´a se pouze o jist´ y druh kontaktn´ıho sp´ınaˇce, nikoliv o teplotn´ı ˇcidlo. Bimetalov´ y p´asek pracuje na principu teplotn´ı d´elkov´e roztaˇznosti kov˚ u viz. rovnice (2.1) ∆l = l0 α∆t
kde je
∆l l0 α ∆t
(2.1)
rozd´ıl d´elky kovov´eho pˇredmˇetu pˇri rozd´ılu teplot ∆t[m] d´elka kovov´eho pˇredmˇetu [m] souˇcinitel teplotn´ı d´elkov´e roztaˇznosti [−] rozd´ıl teplot [◦ K]
Pˇri zmˇenˇe teploty se p´asek oh´ yb´a, jelikoˇz je tvoˇren dvˇema kovy s rozd´ılnou α. Sp´ınaˇc b´ yv´ a souˇc´ast´ı elektrick´eho obvodu, kter´ y se pˇri jist´e nastaviteln´e teplotˇe sepne (a nebo rozpoj´ı). Tato zmˇena pr˚ uchodu proudu v obvodu vyvol´a dalˇs´ı ˇcinnosti s termostatem spojen´e. Konstrukˇcnˇe lze rovnˇeˇz nastavit hysterezi. Sn´ıman´e teploty mohou b´ yt v intervalech aˇz o velikosti ˇr´adovˇe ◦ nˇekolika tis´ıc˚ u C, z´aleˇz´ı na druhu pouˇzit´ ych slitin. K v´ yrobˇe bimetalov´ ych sp´ınaˇc˚ u se pouˇz´ıvaj´ı kovy a jejich slitiny: Fe, CuNi, NiCr, NiAl, Pt, aj. Toto ˇreˇsen´ı se jeˇstˇe st´ale pouˇz´ıv´a, a to hlavnˇe tam, kde nen´ı kladen d˚ uraz na pˇresnost mˇeˇren´e teploty, napˇr. v pokojov´ ych termostatech, spor´ac´ıch, ˇzehliˇck´ach a nebo tam, kde je tˇreba regulovat pˇri vysok´ ych teplot´ach napˇr. v tˇeˇzk´em pr˚ umyslu. Mimo to existuj´ı i velmi pˇresn´ a teplotn´ı ˇcidla pracuj´ıc´ı rovnˇeˇz na principu bimetalu. Zmiˇ novanou pˇresnost z´ısk´avaj´ı d´ıky pouˇzit´ı
7
vz´acn´ ych kov˚ u, jako je napˇr. platina a speci´aln´ımi konstrukˇcn´ımi ˇreˇsen´ımi, kter´ ym tak´e odpov´ıd´ a vysok´a v´ yrobn´ı cena. Bimetalov´ y teplotn´ı sp´ınaˇc (v rozumn´ ych cenov´ ych relac´ıch) nen´ı pˇr´ıliˇs vhodn´ y pro ˇc´ıslicov´e zpracov´an´ı, a to pˇredevˇs´ım pro velk´e nepˇresnosti se sn´ım´an´ım spojen´e. Pˇreci se jenom jedn´a o mechanick´ y sp´ınaˇc, kter´ y st´arne a oxiduje. A pˇri naˇs´ı volbˇe velmi mal´e hystereze by sp´ınaˇc nemˇel dlouh´eho trv´an´ı. Volba teplotn´ıho sn´ımac´ıho prvku by tedy mˇela smˇeˇrovat jinam.
2.1.2
Termoelektrick´ yˇ cl´ anek
Jednou z velmi pouˇz´ıvan´ ych metod mˇeˇren´ı teplot s velmi ˇsirok´ ymi tepeln´ ymi intervaly je mˇeˇren´ı pomoc´ı termoˇcl´ank˚ u. K pˇrevodu teploty na elektrick´e napˇet´ı se vyuˇz´ıv´a termoelektrick´eho jevu. Princip t´eto metody tkv´ı ve faktu, ˇze pˇriloˇz´ıme-li k sobˇe dva r˚ uzn´e kovy, vznikne na nich rozd´ıl napˇet´ı, kter´emu se ˇr´ık´a konstantn´ı (stykov´ y) potenci´al. Ten je znaˇcnˇe z´avisl´ y pr´avˇe na teplotˇe (2.2). UE = A + B∆t + C∆t2
kde je
UE A, B, C ∆t
(2.2)
termoelektrick´e napˇet´ı [V ] konstanty z´avisl´e na pouˇzit´e dvojici kov˚ u [−] rozd´ıl teplot mezi obˇema kovy [◦ K]
Aktivn´ı konec termoˇcl´anku se naz´ yv´a hork´ y (mˇeˇr´ıc´ı), druh´ y konec je naz´ yv´an studen´ ym, a je nutn´e jej udrˇzovat pˇri konstantn´ı teplotˇe. V´ ysledn´e termoelektrick´e napˇet´ı je d´ano rozd´ılem napˇet´ı na hork´em a studen´em konci a pakliˇze dodrˇz´ıme dostateˇcnou stabilitu studen´eho konce bude v´ ysledn´e termoelektrick´e napˇet´ı u ´mˇern´e pouze teplotˇe na mˇeˇr´ıc´ım konci. Teplota studen´eho konce termoˇcl´anku b´ yv´a obvykle udrˇzov´ana na 0 ◦ C, 20 ◦ C, 25 ◦ C, pˇr´ıpadnˇe 50 ◦ C a to vhodn´ ym termostatem nebo elektronicky. Z´avislost termoelektrick´eho napˇet´ı termoˇcl´anku vˇsak nen´ı line´arn´ı, a proto se jako termoˇcl´anky vyb´ıraj´ı ty dvojice materi´al˚ u, kter´e maj´ı z´avislost termoelektrick´eho napˇet´ı na teplotˇe v dan´em intervalu teplot co moˇzn´a nejline´arnˇejˇs´ı, maj´ı vysokou citlivost termoelektrick´eho napˇet´ı, jsou fyzik´alnˇe stabiln´ı a odoln´e v dan´em pracovn´ım prostˇred´ı a daj´ı se zpracovat na vodiˇc (dr´at) potˇrebn´ ych rozmˇer˚ u. Nejˇcastˇeji pouˇz´ıvan´e termoˇcl´anky jsou PtRh10 (platinarhodium), NiCr10 (niklchrom) a Fe-CuNi45 (konstantan). Tyto a nˇekter´e dalˇs´ı s nejd˚ uleˇzitˇejˇs´ımi parametry jsou uvedeny v tab. 2.1 a rovnˇeˇz ve [1].
Termoelektrick´ yˇ cl´ anek Platina(6–30%)/ Rhodium Wolfram(5–26%)/Rhenium Chrom - Konstantan ˇ Zelezo - Konstantan Chrom - Hlin´ık Platina(13%)/Rhodium – Platina Platina(10%)/Rhodium – Platina Mˇed’ - Konstantan
Teplotn´ı interval [◦ C] 38 – 1800 0 – 2300 0 – 982 0 – 760 −184 – 1260 0 – 1593 0 – 1538 −184 – 400
Citlivost [µV /◦ C] 7,7 16 76 55 39 11,7 10,4 45
Oznaˇ cen´ı B C E J K R S T
Tab. 2.1: Nejˇ castˇ ejˇ s´ı materi´ aly uˇ z´ıvan´ e pro termoelektrick´ eˇ cl´ anky
8
V´ yhodou termoˇcl´ank˚ u je moˇznost pracovat ve velmi ˇsirok´em rozmez´ı teplot (pˇri pouˇzit´ı speci´aln´ıch slitin aˇz do 3000 ◦ C). Pro n´aˇs u ´ˇcel je ale tato pˇrednost ponˇekud zbyteˇcn´a. Parametr, kter´ y od teplotn´ıho senzoru poˇzadujeme je v prvn´ı ˇradˇe pˇresnost, a ta je pˇribliˇznˇe 0,5 ◦ C, coˇz nen´ı mnoho. I pˇres malou tepelnou kapacitu – malou tepelnou setrvaˇcnost a moˇznosti realizace ve velmi mal´ ych rozmˇerech, st´ale z˚ ust´av´a prioritou pˇresnost, a ta je v porovn´an´ı s jin´ ymi teplotn´ımi sn´ımaˇci pˇr´ıliˇs mal´a. Termoˇcl´anky jsou urˇceny pˇredevˇs´ım na speci´aln´ı vysokoteplotn´ı aplikace, kde velk´a pˇresnost nen´ı tou hlavn´ı prioritou. Speci´aln´ım aplikac´ım odpov´ıd´a i speci´aln´ı cena, zaˇc´ınaj´ıc´ı na 600 Kˇc a jdouc´ı aˇz do ˇr´ad˚ u tis. Kˇc. D´ıky integraci jsou rovnˇeˇz vyr´abˇeny obvody, kter´e v sobˇe obsahuj´ı studen´ y konec“, dok´ aˇz´ı ” jej regulovat a udrˇzovat tak pˇri st´al´e teplotˇe. Jedn´a se o monolitick´e nastaviteln´e regul´atory, jako je napˇr. AD595 urˇcen´ y pro termoˇcl´anky typu J/K, kter´ y vyr´ab´ı Analog Devices. Cena tˇechto obvodu je rovnˇeˇz hodnˇe vysok´a, doln´ı strop nejlevnˇejˇs´ıho proveden´ı se nach´az´ı nˇekde na hranici 800 Kˇc.
2.1.3
Termistor
Termistory patˇr´ı mezi odporov´e teplotn´ı sn´ımaˇce a lze je realizovat ve velmi mal´ ych rozmˇerech. ◦ Mˇeˇr´ıc´ı rozsah se obvykle pohybuje od −60 do +200 C. Podle proveden´ı je rozdˇelujeme na tyˇcinkov´e, destiˇckov´e a perliˇckov´e, a podle z´avislosti napˇet´ı na teplotˇe na PTC (Positive Temperature Coefficient), NTC (Negative Temperature Coefficient). Z´avislost odporu na teplotˇe lze pro v´ıce uˇz´ıvan´ y NTC termistor popsat exponenci´aln´ı funkc´ı (2.3). −BT
Rt = Rt0
kde je
Rt Rt0 BT
1 − 1t t0
(2.3)
odpor termistoru pˇri teplotˇe t [Ω] odpor termistoru pˇri teplotˇe t0 [Ω] materi´alov´a konstanta (´ umˇern´a mˇern´emu odporu materi´alu) t[−]
Termistory jsou levn´e a pro svoje miniaturn´ı rozmˇery je lze pouˇz´ıt i na nesnadno pˇr´ıstupn´ ych m´ıstech. D´ıky velk´e teplotn´ı citlivosti (nen´ı tˇreba v´ ystupn´ı veliˇcinu pˇr´ıliˇs zesilovat) a n´ızk´e cenˇe lze navrhnout pomˇernˇe pˇresn´e a cenovˇe pˇrijateln´e teplotn´ı sn´ımaˇce dosahuj´ıc´ı pˇresnosti vˇetˇs´ı jak ±0,1 ◦ C. Avˇsak u ´skal´ı pouˇzit´ı termistoru je v tom, ˇze jej nelze aplikovat na ˇsirˇs´ı rozsahy teplot. Znaˇcn´a nelinearita pr˚ ubˇehu popsan´a exponenci´aln´ı funkc´ı v praxi znatelnˇe znemoˇzn ˇuje t´ımto teplotn´ım ˇcidlem mˇeˇrit teplotu, aniˇz by nedoˇslo ke znaˇcn´emu ovlivnˇen´ı chyby mˇeˇren´ı ve vˇetˇs´ım rozsahu teplot. Pouˇzit´ı kompenzaˇcn´ıch obvod˚ u ˇc´asteˇcnˇe potlaˇcuj´ıc´ıch tuto neˇz´adouc´ı vlastnost je pak nutnost´ı. Tepeln´ y rozsah teplot lze v´ yraznˇe zvˇetˇsit, a to v paraleln´ım, m˚ ustkov´em ˇci jin´em zapojen´ı s pˇresn´ ymi rezistory a pˇri pouˇzit´ı impedanˇcn´ıho pˇrizp˚ usoben´ı (napˇr. OZ), pˇr´ıp. vhodn´eho kompenzaˇcn´ıho obvodu, kter´ y by linearizoval exponenci´aln´ı pr˚ ubˇeh, viz. kapitola 3. Termistor je vhodn´ ym a velmi pˇresn´ ym sn´ımaˇcem pro ˇradu aplikac´ı a to pˇredevˇs´ım cenou a jednoduchost´ı pouˇzit´ı. Proti vypov´ıd´a znaˇcn´a nelinearita a nestabilita v ˇcase a tyto dvˇe vlastnosti jsou taky d˚ uvodem, proˇc nebude termistor uˇzit.
9
2.1.4
Odporov´ y teplotn´ı senzor
Tyto souˇc´astky vyuˇz´ıvaj´ı jednu ze z´akladn´ıch fyzik´aln´ıch vlastnost´ı kov˚ u, kterou je z´avislost jejich mˇern´eho odporu na teplotˇe. Pod obecn´ ym n´azvem RTD (Resistance Temperature Detector) se skr´ yv´a cel´a rodina tˇechto teplotn´ıch senzor˚ u, a pod n´azvem PRTD (Platinum Resistance Temperature Detector) pak nejpouˇz´ıvanˇejˇs´ı z nich, vyuˇz´ıvaj´ıc´ı zmˇeny mˇern´eho odporu platiny. Z´avislost odporu odporov´ ych senzor˚ u na teplotˇe ovˇsem nen´ı line´arn´ı, viz. v´ yraz pro PRTD (2.4) n´ıˇze, kter´ y je vyj´adˇren jako polynom 3. ˇr´adu. Pokud striktnˇe nevyˇzadujeme vysokou pˇresnost v teplot´ach < 0 ◦ C m˚ uˇzeme si dovolit v u ´zk´em intervalu mocninn´ y ˇclen 3. ˇr´adu zanedbat. Obecnˇe pak ˇr´ık´ame, ˇze platinov´ y teplotn´ı senzor mˇen´ı sv˚ uj odpor s teplotou odpov´ıdaj´ıce polynomu 2. ˇr´adu. ρt = ρt0 1 + at1 + bt21 + c (t1 − 100)
kde je
ρt ρt0 a b c
(2.4)
mˇern´ y el. odpor teplomˇeru pˇri teplotˇe t1 [Ωm] mˇern´ y el. odpor teplomˇeru pˇri teplotˇe 0 ◦ C [Ωm] line´arn´ı teplotn´ı koeficient odporu [K −1 ] kvadratick´ y teplotn´ı koeficient odporu [K −2 ] mocninn´ y teplotn´ı koeficient 3.ˇr´adu [K −3 ] (kter´ y se uvaˇzuje pro teploty do 0 ◦ C)
Mezi nejvˇetˇs´ı pˇrednosti tˇechto odpor˚ u obecnˇe patˇr´ı jejich dlouhodob´a st´alost (coˇz je d´ano vlastnostmi pouˇzit´eho materi´alu, nejˇcastˇeji Pt) a velmi ˇsirok´ y rozsah mˇeˇriteln´ ych teplot, kter´ y ◦ ◦ ◦ sah´a od −200 do +1000 C s rezistivitou 20 – 20 kΩ. Rozd´ılem odporu mezi 100 C a 0 C je pak naz´ yv´an tzv. odporov´ y pomˇer. Tento pomˇer souˇcasnˇe vyjadˇruje jakost odporu odporov´eho ˇcidla (u platiny 0,385). Urˇcitou nev´ yhodou platinov´ ych odporov´ ych teplomˇer˚ u je pomˇernˇe mal´a zmˇena odporu pˇri jednotkov´e zmˇenˇe teploty (je zhruba o ˇr´ad menˇs´ı neˇz u termistor˚ u), takˇze u pˇresn´ ych mˇeˇren´ı je zpravidla nutn´e pouˇz´ıvat m˚ ustkov´e mˇeˇr´ıc´ı metody. Nespornou v´ yhodou oproti vˇsem ostatn´ım teplotn´ım sn´ımaˇc˚ um je pˇresnˇe stanoven´ y odpor ˇcist´e platiny v cel´em intervalu mˇeˇren´ ych hodnot, kter´ y se d´ıky velmi st´al´ ym vlastnostem platiny v ˇcase t´emˇeˇr nemˇen´ı. Viz. Pˇr´ıloha ˇc.1: Referenˇcn´ı tabulka platinov´eho teplotn´ıho senzoru a Pˇr´ıloha ˇc.2: Grafick´a z´avislost odporu platinov´eho teplotn´ıho senzoru na teplotˇe. Odporov´e teplomˇery se vyr´abˇej´ı bud’to jako ploch´e (tˇel´ısko tvoˇr´ı ploch´a destiˇcka z tvrzen´eho pap´ıru nebo sl´ıdy), nebo keramick´e. D˚ uleˇzit´ ym parametrem je otˇresuvzdornost, coˇz je odolnost sn´ımaˇce v˚ uˇci mechanick´emu chvˇen´ı, kter´e by mohlo m´ıt za n´asledek mechanick´e poˇskozen´ı mˇeˇr´ıc´ıho odporu a t´ım by vneslo do mˇeˇren´ı jist´e nepˇresnosti. Pro v´ yrobu se pouˇz´ıvaj´ı kovy jako je Cu, Ni, Balco (slouˇcenina Fe a Ni), Wo, Ir a Pt, viz. tabulka 2.2 n´ıˇze. Platinov´ y odporov´ y teplotn´ı senzor se jev´ı jako vhodn´ y sn´ımaˇc teploty, nebot’ vykazuje dostateˇcnˇe velkou pˇresnost a stabilitu pro mˇeˇren´ı velk´ ych interval˚ u teplot. D´ıky vlastnostem platiny patˇr´ı mezi nejvˇetˇs´ı v´ yhody tohoto senzoru tabulkovˇe definovan´ y elektrick´ y odpor odpov´ıdaj´ıc´ı pr˚ ubˇehu polynomu 2. ˇr´adu a definovan´a pˇresnost pro vˇsechny mˇeˇren´e teploty. Velk´ a ˇcasov´a stabilita a chemick´a neteˇcnost umoˇzn ˇuj´ı velmi pˇresn´e odhady chyb, a to v cel´em rozsahu p˚ usobnosti teplotn´ıho ˇcidla. Pro kategorizaci do tˇr´ıd pˇresnosti je stˇeˇzejn´ım parametrem
10
Odporov´ y teplomˇ er Platina Mˇed’ Nikl Balco (70 %Ni, 30 %Fe) Wolfram
Teplotn´ı interval [◦ C] 260 – 1000 200 – 260 −200 – 430 −100 – 230 −100 – 1200
Odporov´ y pomˇ er [µV /◦ C] 0,385 0,380 0,672 0,460
Pozn´ amka dobr´ a linearita, stabilita Copper 0.00427 ˇspatn´ a linearita levn´ a v´ yroba, ˇspatn´ a linearita
Tab. 2.2: Materi´ aly pouˇ z´ıvan´ e pro odporov´ e teplomˇ ery ˇcistota pouˇzit´e platiny. Vysok´ ym procentueln´ım zastoupen´ım ˇcist´eho kovu lze dos´ahnout hra◦ nice pˇresnosti 0,01 C. Platina je daleko nejpouˇz´ıvanˇejˇs´ı materi´al v regulaci obecnˇe, a to proto, ˇze ze vˇsech ostatn´ıch RTD m´a z´avislost napˇet´ı na teplotˇe nejbl´ıˇze k linearitˇe, ˇsirok´ y rozsah mˇeˇren´ ych teplot a dlouhodobou funkˇcnost. V´ yznam platinov´ ych teplotn´ıch ˇcidel (PRTD) se st´av´a v´ıce aktu´aln´ı skrz ˇsirok´e pouˇzit´ı jako velmi pˇresn´e tenkovrstv´e odporov´e elementy. Cena nejhojnˇeji pouˇz´ıvan´eho platinov´eho RTD PT100 zaˇc´ın´a na 200 Kˇc a konˇc´ı nˇekde na nˇekolika tis´ıc´ıch Kˇc. V´ yraznˇe vyˇsˇs´ı cena v sobˇe skr´ yv´a jin´e konstrukˇcn´ı ˇreˇsen´ı a pˇredevˇs´ım jakost senzor˚ u [2].
2.1.5
Kˇ rem´ıkov´ y teplotn´ı senzor
Jedn´a se o monokrystalick´ y teplotn´ı senzor vyuˇz´ıvaj´ıc´ı Zenerova jevu. Teplotn´ı dioda pracuje v z´avˇern´em smˇeru a stabilizuje napˇet´ı na urˇcitou hodnotu, kter´a se mˇen´ı s teplotou. Nejvˇetˇs´ı v´ yhodou tˇechto ˇcidel je jejich line´arn´ı charakteristika - napˇet´ı je pˇr´ımo u ´mˇern´e absolutn´ı teplotˇe. Charakteristika je d´ana pouze strmost´ı (napˇr. 10 mV /◦ C pro LM335), coˇz znaˇcnˇe zjednoduˇsuje konstrukci dalˇs´ıch prvk˚ u obvodu. Nen´ı tedy tˇreba ˇz´adn´e linearizace, pouze pˇresn´e reference se kterou se stabilizovan´e napˇet´ı na diodˇe srovn´av´a. Nev´ yhodou je pak velk´a odchylka od pˇresn´e ◦ hodnoty, kter´a je 1 C (pro LM335) v cel´em rozsahu teplot a omezen´ y interval teplot, kter´e je senzor schopen sn´ımat. Rozsah mˇeˇriteln´ ych teplot je zpravidla −55 aˇz +150 ◦ C, pˇriˇcemˇz kalibrace pˇri v´ yrobˇe prob´ıh´a pro 25 ◦ C. V´ yrobn´ı technologi´ı se ale nelze vyhnout urˇcit´ ym odchylk´ am od jmenovit´e hodnoty napˇet´ı. Kompenzaci tohoto rozptylu ˇreˇs´ı ˇrada v´ yrobc˚ u tˇret´ım v´ yvodem z ˇcidla, kter´ y se doporuˇcuje zapojit pˇres pˇresn´ y trimr na zem, a odchylku tak kompenzovat (obdoba kompenzace offsetu u operaˇcn´ıch zesilovaˇc˚ u). Zener˚ uv jev se neobjevuje pouze u diod, ale i u jin´ ych el. souˇc´astek obsahuj´ıc´ıch PN pˇrechod. Jsou jimi napˇr. tranzistory, konkr´etnˇe jejich pˇrechod B-E. Pˇr´ıkladem m˚ uˇze b´ yt integrovan´e teplotn´ı ˇcidlo AD592 firmy Analog Devices, pracuj´ıc´ı jako zdroj proudu s v´ ystupem u ´mˇern´ ym absolutn´ı teplotˇe. D´ıky velmi snadn´e integraci je moˇznost do pouzdra teplotn´ıho sn´ımaˇce vmˇestnat ˇc´ıslicov´ y modul´ator, kter´ y by plnil funkci AD pˇrevodn´ıku. V´ ystupn´ı sign´al by pak, nam´ısto napˇet’ov´eho ˇci proudov´eho charakteru, nab´ yval bin´arn´ıch hodnot. Odpadla by tak nutnost pouˇzit´ı extern´ıho AD pˇrevodn´ıku a vzorky by se mohly rovnou pos´ılat na zpracov´an´ı do ˇr´ıd´ıc´ı jednotky - procesoru. Jako pˇr´ıklad uvedu obvody TMP03 (Analog Devices), DS18B20 (Dallas Semiconductors), apod. Tyto IO obsahuj´ı vlastn´ı programovatelnou pamˇet’, aˇz 16-ti bitov´e rozliˇsen´ı a nevyˇzaduj´ı ˇz´adnou kalibraci. Komunikace zpravidla prob´ıh´a po s´eriov´e lince. Celkov´a chyba pak z´aleˇz´ı na typu obvodu a je zpravidla vyj´adˇrena jako teplotn´ı odchylka 0,5–2 ◦ C v cel´em rozsahu teplot. Jak jiˇz bylo ps´ano v´ yˇse, kˇrem´ıkov´e teplotn´ı senzory maj´ı nespornou v´ yhodu v jednodu-
11
chosti pouˇzit´ı. A to at’ se jedn´a pouze o line´arn´ı pr˚ ubˇeh, a nebo i o pˇr´ıpadnou digitalizaci pˇr´ımo v pouzdˇre a bin´arn´ı komunikaci s extern´ımi periferiemi. Slabinou z˚ ust´av´a odklon od skuteˇcn´e hodnoty mˇeˇren´e teploty. Ve vˇetˇsinˇe aplikac´ı by tato odchylka nebyla aˇz tak nepˇrijateln´a, ale pro opravdu pˇresn´e mˇeˇren´ı mus´ıme hledat teplotn´ı senzor nˇekde jinde.
2.2
Kalibrace
Pˇri stavbˇe pˇr´ıstroj˚ u mˇeˇr´ıc´ı neelektrick´e veliˇciny b´ yv´a nejvˇetˇs´ım probl´emem kalibrace. Dostupn´ a ˇcidla maj´ı sice poˇzadovanou pˇresnost, ale jsou bud’ neline´arn´ı nebo jsou v´ ystupn´ı hodnoty stejnosmˇernˇe posunuty. Tak´e je velmi sloˇzit´e sehnat profesion´aln´ı mˇeˇr´ıc´ı pˇr´ıstroj, podle kter´eho by se dal postaven´ y teplomˇer zkalibrovat [5].
2.2.1
Line´ arn´ı teplotn´ı senzory
Operaˇcn´ı v´ ystupn´ı napˇet´ı u n´ami mˇeˇren´eho kˇrem´ıkov´eho teplotn´ıho ˇcidla LM335 je 2,98 V pˇri teplotˇe 25 ◦ C, coˇz s jistou odchylkou garantuje v´ yrobce, dalˇs´ı garantovan´ ym parametrem je ◦ strmost line´arn´ı charakteristiky, kter´a je 10 mV / C. Ke kalibraci je potˇreba jak´ ykoliv pˇresn´ y teplomˇer a teplotnˇe konstantn´ı l´azeˇ n kapaliny, zpravidla vody. Teplota pro kalibraci m˚ uˇze b´ yt prakticky jak´akoliv, ale s ohledem na rozd´ılov´ y zesilovaˇc se nejˇcastˇeji prov´ad´ı pˇri 0 ◦ C. Pr´avˇe pˇri t´eto teplotˇe by teplotn´ı ˇcidlo mˇelo vykazovat napˇet’ov´ yu ´bytek 2,73 V (2,98 V − 25 · 10 mV ) a pˇresnˇe na tuto hodnotu napˇet´ı se mus´ıme dostat i s referenc´ı, tak aby na v´ ystupu rozd´ılov´eho zesilovaˇce objevil u ´bytek 0 V. K tomu slouˇz´ı v obvodu pouˇzit´e nastavovac´ı prvky. Samotn´a kalibrace se prov´ad´ı ponoˇren´ım obou teplotn´ıch ˇcidel do t´eto l´aznˇe. Mˇeˇr´ıme v´ ystupn´ı napˇet´ı z rozd´ılov´eho zesilovaˇce a z´aroveˇ n sledujeme teplotu na pˇresn´em teplomˇeru. To vˇse aˇz do t´e doby, neˇz namˇeˇr´ıme na v´ ystupu 0 V pˇri teplotˇe 0 ◦ C, pak m´ame zkalibrov´ano.
2.2.2
Pˇ resn´ e odporov´ e teplotn´ı senzory
Odporov´e teplomˇery se vyznaˇcuj´ı pˇresn´ ym odporem pˇri dan´e teplotˇe, tzn. ˇze napˇr. pˇri 40 ◦ C bude elektrick´ y odpor vˇzdy 115,54 Ω. Tato skuteˇcnost kalibraci velmi zjednoduˇsuje. Ke kalibraci RTD tedy nen´ı potˇreba ˇz´adn´ y dalˇs´ı teplomˇer ani kapalinov´a l´azeˇ n. Kalibrace se prov´ad´ı za pouˇzit´ı pˇresn´e odporov´e dek´ady a nebo za pouˇzit´ı jin´ ych odporov´ ych soustav, u kter´ ych je moˇznost si danou hodnotu odporu za pouˇzit´ı mechanick´eho opracov´av´an´ı tzv. vyrobit“. ” Kalibrace spoˇc´ıv´a v nastaven´ı dvou referenˇcn´ıch hodnot teploty. Nejprve se na v´ ystupu impedanˇcn´ıho pˇrizp˚ usoben´ı (OZ) odeˇcte hodnota napˇet´ı pro teplotu 0 ◦ C a to tak, ˇze se odporov´ y teplomˇer nahrad´ı odporovou dek´adou a na n´ı se nastav´ı pˇresnˇe 100 Ω. Druhou hodnotou je napˇr. 100 ◦ C a t´e odpov´ıd´a el. odpor 138,5025 Ω, kter´ y se rovnˇeˇz nastav´ı na odporov´e dek´adˇe. Obˇe hodnoty napˇet´ı se zaznamenaj´ı pro dalˇs´ı zpracov´an´ı. M´ame-li vˇsak moˇznost zasahovat nastavovac´ımi prvky do napˇet’ov´eho pr˚ ubˇehu na v´ ystupu, tak pro snazˇs´ı dalˇs´ı zpracov´an´ı je vhodn´e na samotn´em OZ vyuˇz´ıt kalibrace jeho offsetu pro cel´ y obvod a nastavit tak napˇr. nulov´e napˇet´ı pro 0 ◦ C. Zmˇenou velikost´ı rezistoru ve zpˇetn´e vazbˇe OZ mˇen´ıme zes´ılen´ı a rovnˇeˇz pro jednoduˇsˇs´ı dalˇs´ı odeˇcet a pˇrepoˇcet hodnot napˇet´ı na stupnˇe Celsia je v´ yhodn´e nastavit zes´ılen´ı tak, aby napˇr. 100 ◦ C odpov´ıdalo napˇet´ı 10 V na v´ ystupu.
12
2.3
Shrnut´ı teplotn´ıch senzor˚ u
Jako nevhodnˇejˇs´ı se jev´ı platinov´ y odporov´ y teplotn´ı senzor a to pro svou teplotn´ı a ˇcasovou ykonn´e stabilitu a pˇredevˇs´ım pro velkou pˇresnost [2]. Konstrukce vˇsak bude vyˇzadovat pˇresn´e a v´ zesilovac´ı prvky, kter´e by vykompenzovaly velmi malou citlivost na teplotˇe, viz. tabulka 2.3. Dalˇs´ım probl´emem, kter´ y je tˇreba ˇreˇsit je neline´arn´ı z´avislost, o tom pojedn´av´a kapitola 3
Teplotn´ı interval Citlivost Pˇresnost Char. pr˚ ubˇeh Buzen´ı Forma v´ ystupu Orientaˇcn´ı cena
Termoelektrick´ y ˇ cl´ anek −270 – 1800 ◦ C des´ıtky V /◦ C ±0,5 ◦ C polynom 4. ˇr´ adu – napˇet´ı podle typu cca od 600 Kˇc do nˇekolika tis´ıc Kˇc
Termistor −100 – 450 ◦ C jednotky Ω/◦ C ±0,01 ◦ C exponenci´ aln´ı zdrojem U elektrick´ y odpor od 10 Kˇc
Odporov´ y teplotn´ı senzor - RTD −250 – 900 ◦ C 3,58 µV /◦ C (pro Pt) ±0,01 ◦ C polynom 2. ˇr´ adu zdrojem I elektrick´ y odpor podle jakosti Pt od 200 Kˇc
Integrovan´ y kˇ rem´ık −55 – 150 ◦ C 5 – 20 mV /◦ C ±1 ◦ C line´ arn´ı z´ avislost typicky zdrojem U U, I nebo digit´ aln´ı 100 Kˇc – 500 Kˇc od 200 Kˇc
Tab. 2.3: Shrnut´ı parametr˚ u teplotn´ıch senzor˚ u
2.4 2.4.1
Typov´ e pˇ r´ıklady zapojen´ı M˚ ustkov´ e (Wheatsonovo) zapojen´ı platinov´ eho teplotn´ıho ˇ cidla PT100
Zapojen´ı mˇeˇr´ı teplotu od 0 do 100 ◦ C a pˇri pˇresn´e kalibraci s odchylkou menˇs´ı neˇz 0,1 ◦ C. Jako teplotn´ı senzor je uˇzit pr˚ umyslovˇe vyr´abˇen´ y platinov´ y odporov´ y teplomˇer PT100 se z´akladn´ım ◦ odporem 100 Ω pˇri 0 C. Pouˇzit´ y PT100 je vhodnˇejˇs´ı pro mˇeˇren´ı ˇsirˇs´ıch interval˚ u teplot, naopak PT1000 (0 ◦ C ∼ 1000 Ω) je pˇresnˇejˇs´ı, d´ıky menˇs´ımu prot´ekaj´ıc´ımu proudu. S pouˇzit´ım m˚ ustku se tento nedostatek u PT100 ztr´ac´ı, a mˇeˇren´ı tak m˚ uˇze vykazovat velmi pˇresn´e v´ ysledky. Ale k pˇresn´emu mˇeˇren´ı je jeˇstˇe zapotˇreb´ı pˇresn´eho aktivn´ıho kompenzaˇcn´ıho ˇclenu – OZ, jako je napˇr. operaˇcn´ı zesilovaˇc OP77 firmy Analog Devices s velkou linearitou pˇri velk´ ych hodnot´ ach ’ ’ napˇet ov´eho zes´ılen´ı, s velmi mal´ ym vlastn´ım offsetem a s velkou citlivosti na zmˇeny napˇet ov´e nesoumˇernosti nap´ajec´ıho napˇet´ı. Odporov´ y teplomˇer PT100 je zapojen do jedn´e vˇetve m˚ ustku, zmˇena teploty zp˚ usob´ı zmˇenu mˇeˇr´ıc´ıho odporu, t´ım dojde k rozv´aˇzen´ı m˚ ustku. To je indikov´ano mˇeˇr´ıc´ım pˇr´ıstrojem, v naˇsem pˇr´ıpadˇe operaˇcn´ım zesilovaˇcem OP77 zapojen´ ym v u ´hlopˇr´ıˇcce. Hodnoty odpor˚ u jsou voleny tak, aby pˇri minim´aln´ı hodnotˇe rozsahu (0 ◦ C) byl m˚ ustek vyv´aˇzen a na v´ ystupu OZ bylo nulov´e napˇet´ı. Kalibrace tohoto offsetu se prov´ad´ı pomoc´ı trimru P1 pˇripojen´eho ke svork´am 1 a 8 OZ. Jelikoˇz platinov´ y teplomˇer mˇen´ı sv˚ uj odpor s teplotou jen velmi slabˇe (0–100 ◦ C ∼ 38,5Ω), je zapotˇreb´ı indukovan´e rozd´ılov´e napˇet´ı jeˇstˇe patˇriˇcnˇe zes´ılit. Pˇri nastavov´an´ı zpˇetn´e vazby potenciometrem P2 se snaˇz´ıme doc´ılit dostateˇcn´eho zes´ılen´ı, tak aby v´ ystupn´ımu napˇet´ı 1 V odpov´ıdala teplota 100 ◦ C. Pokud by i to pro naˇse potˇreby nestaˇcilo, bylo by zapotˇreb´ı na v´ ystup zapojit dalˇs´ı zesilovac´ı prvek.
V´ yhoda m˚ ustkov´eho zapojen´ı s pˇresn´ ym OZ spoˇc´ıv´a v minim´aln´ım proudov´em zat´ıˇzen´ı senzoru a tud´ıˇz vede k minim´aln´ım nepˇresnostem metody. Pro potˇreby pˇresn´eho termostatu v
13
+10V
+10V
IO2 78L05Z 1
GND
S
VO
P1 22K
A +
C6 10u
VI
2
+
3
C2 10u
C3 M1
R1 10K
C4
R2
R3
E
R10 22K
R11 22K
M1
PT100
1 2 3 4
R8 10K
3
R9 10K
2
C1 R4 10u 10K R5 27
A
OUT
8 6
4 5
+
SV1
7 1
56
S
10K R6 200
IO1 OP77Z C5
1 2
R7 100
M1
E
P2 330
-10V
Obr. 2.1: Pˇ revodn´ık teplota/napˇ et´ı s PT100 ve ˇ ctyˇ r-vodiˇ cov´ em zapojen´ı
u ´zk´em intervalu teplot by n´asledn´a linearizace ˇreˇsen´a analogovˇe byla ponˇekud zbyteˇcn´a, jelikoˇz by chybu jen zvˇetˇsila. Ale o tom v´ıce v kapitole 3.
2.4.2
Integrovan´ y obvod ADT70 pro mˇ eˇ ren´ı s PT1000
Integrovan´ y obvod Analog Devices ADT70 je kompletn´ım PRTD korel´atorem, kter´ y poskytuje v´ ystupn´ı napˇet´ı 5 mV /◦ C pˇri pouˇzit´ı 1000 Ω RTD. ADT70 obsahuje dva proudov´e zdroje, pˇresn´ y rail-to-rail v´ ystupem vybaven´ y zesilovaˇc a 2,5 V referenci. IO je urˇcen pro pˇr´ımou komunikaci s µP – umoˇzn ˇuje pos´ıl´an´ı varovn´ ych sign´al˚ u over temperature“ a je vybaven funkc´ı shutdown“ ” ” pro sn´ıˇzen´ı spotˇreby. V z´akladn´ım zapojen´ı je platinov´ y RTD pˇripojen paralelnˇe k 1 kΩ referenˇcn´ımu rezistoru. Kaˇzd´ y je buzen jedn´ım p´arov´ ym 1 mA proudov´ ym zdrojem. Zvl´aˇstnost´ı je, ˇze oba zdroje poskytuj´ı stejn´ y proud s odchylkou pouze 0,5 µA vz´ajemnˇe od sebe. Jedn´ım, pro tento u ´ˇcel urˇcen´ ym, pˇr´ıdavn´ ym potenciometrem se tato odchylka odstraˇ nuje. Rozd´ılov´ y zesilovaˇc porovn´av´a napˇet´ı z PRTD a z referenˇcn´ıho rezistoru, poskytuje zes´ılen´ y v´ ystupn´ı napˇet’ov´ y sign´al, kter´ y je u ´mˇern´ y ◦ sn´ıman´e teplotˇe (0 C ∼ 0 V ). Vnitˇrn´ı zapojen´ı je tedy principielnˇe srovnateln´e s pˇredch´azej´ıc´ım. Pˇresnost ADT70 je do ±1 ◦ C v cel´em rozsahu teplot, kter´ y je omezen jen senzorem samotn´ ym, ◦ ◦ v extr´emn´ım pˇr´ıpadˇe tedy −200 C aˇz +1000 C. Pˇriˇcemˇz pro uˇzˇs´ı interval teplot by tato chyba byla u ´mˇernˇe menˇs´ı. Proti pouˇzit´ı tohoto integrovan´eho obvodu stoj´ı jeho vysok´a cena.
2.4.3
Pˇ revodn´ık teplota/napˇ et´ı s LM335
Princip cel´eho zapojen´ı je velmi jednoduch´ y. M´ame dvˇe diody vyuˇz´ıvaj´ıc´ı Zenerova jevu. Prvn´ı – teplotn´ı LM335 (T D1) mˇen´ı sv´e stabilizovan´e napˇet´ı podle teploty, druh´a – referenˇcn´ı LM336 (T D2) svou hodnotu s co moˇzn´a nejmenˇs´ı odchylkou drˇz´ı. Pokud nav´aˇzi na kapitolu 2.2.1, tak pˇri teplotˇe 0 ◦ C, by teplotn´ı ˇcidlo mˇelo vykazovat napˇet’ov´ y u ´bytek 2,73 V . V r´amci impedanˇcn´ıho pˇrizp˚ usoben´ı (IO1), tomu tak i s v´ yrobcem danou odchylkou, je. Tento OZ zabraˇ nuje nepˇresnostem tak, ˇze senzor minim´alnˇe zatˇeˇzuje odeb´ıran´ ym proudem, tzv. impedanˇcnˇe oddˇeluje. Reference je v obvodu zapojen´a obdobnˇe, jen s t´ım rozd´ılem, ˇze je zapotˇreb´ı aby IO3 oddˇelil a z´aroveˇ n napˇet´ı m´ırnˇe zes´ılil. Je to proto, abychom z ref. LM336, kter´a stabi-
14
lizuje na 2,5 V z´ıskali napˇet´ı 2,73 V . Probl´em lze ˇreˇsit i jinou cestou a to pouˇzit´ım jin´e reference, napˇr. 5 V a pak toto napˇet´ı na potˇrebn´ ych 2,73 V zmenˇsit. Stˇeˇzejn´ım ˇclenem v obvodu je rozd´ılov´ y zesilovaˇc (IO2). Ten obˇe pˇriv´adˇen´a napˇet´ı od sebe vz´ajemnˇe odeˇcte a rozd´ıl vyk´aˇze na v´ ystupu. Rozd´ıl 0 V pak odpov´ıd´a 0 ◦ C. Posledn´ı prvkem je v´ ykonov´ y OZ (IO5), kter´ y rozd´ılov´e napˇet´ı zes´ıl´ı na potˇrebnou hodnotu. Volbou pˇresn´ ych IO renomovan´ ych firem a d˚ uslednou kalibrac´ı lze zajistit pˇresnost cel´eho zapojen´ı tak, aby se bl´ıˇzila k pˇresnosti samotn´eho teplotn´ıho senzoru, coˇz pro LM335 odpov´ıd´ a chybˇe ±1 ◦ C v cel´em intervalu pouˇzit´ı.
+15V
+15V
R7 22
R14 22 Uref = 2,7315V
IO5 OPA177 Au = 10 R13 3
MB3 1
R18 C8
+
10K
1u
1u
2
+15V 2
R17
E
5
C13 -15V
8
+15V
Teplotni dioda LM335 Utd1 = 2,98V/+25C Strmost 10mV/K
4
C5 1u
C6 1u
-15V
MB2 1
7 1
1u R15 22
R6 22
2 4 5
C2 M1
TD1
1u 8 6
3
1K C1 M1
C3 +
V-
+
R16
INA105P
R3 22
R2
NC
1 7 +
V+
+
3
IO1 OPA177 Au = 1
R5 22
6
+15V
R1 5K6
MB4
8 6 4 5
R8 22
R19
C12 +
S
R11
1
8 6
+15V MB1
2
C9 1u
4 5
+
1u
7 1
S
C7 +
1
IO3 OPA177 Au = 1,5 R9 3
7 1
R10
E
Reference LM336 Utd2 = 2,49V
C10 10u
A
TD2
P1
C11 M1
+
R12 4K7
-15V
C4
+
1u R4 22
-15V
Obr. 2.2: Pˇ revodn´ık teplota/napˇ et´ı s LM335
15
A
P2
OUT 1 2
3 3.1
LINEARIZACE Teoretick´ yu ´ vod
Linearizace je urˇcena pˇredevˇs´ım pro pˇresn´e platinov´e odporov´e senzory a NTC termistory, kde mˇeˇr´ıme teplotu v ˇsirˇs´ı oblasti teplot. U polovodiˇc˚ u to nen´ı zapotˇreb´ı, ty jiˇz line´arn´ı pr˚ ubˇeh maj´ı. K linearizaci z´avislosti napˇet´ı na teplotˇe se u platinov´ ych senzor˚ u uˇz´ıv´a tzv. tˇr´ıbodov´a metoda linearizace, u kter´e se ze tˇr´ı teplotnˇe ekvidistatn´ıch bod˚ u teplotn´ı z´avislosti sn´ımaˇce urˇc´ı hodnota linearizaˇcn´ıho odporu [6].
RP t [Ω] Rt3
∆R Rt2
Rt1 T1
T2
T3
T [◦ C]
Obr. 3.1: Teplotn´ı z´ avislost odporu platinov´ eho sn´ımaˇ ce teploty
N L[%] 5 4 3 2 1 0 −200 −1
850
T [◦ C]
Obr. 3.2: Neline´ arn´ı zkreslen´ı pr˚ ubˇ ehu teplotn´ıho senzoru Protoˇze odpor ∆R vych´az´ı u platinov´eho sn´ımaˇce z´aporn´ y, uˇz´ıv´a se k jeho linearizaci proudov´ y zdroj s kladnou zpˇetnou vazbou, jehoˇz vnitˇrn´ı odpor je roven odporu RL (3.1)
16
RL =
Rt2 (Rt1 + Rt3 ) − 2Rt1 Rt3 Rt1 + Rt3 − 2Rt2
(3.1)
U NTC termistor˚ u lze pˇredeˇsl´ y vzorec aplikovat na paraleln´ı zapojen´ı s pevn´ ym rezistorem. Hodnota paraleln´ıho RL v´ yraznˇe pˇrispˇela k linearizaci, jak je vidˇet z n´asleduj´ıc´ıho obr´azku. Citlivost cel´eho zapojen´ı je pak srovnateln´a s termoˇcl´anky nebo RTD. Hlavn´ı nev´ yhodou tohoto zapojen´ı oproti odporov´ ym teplomˇer˚ um je omezen´ y rozsah linearizace v u ´zk´em intervalu teplot. V´ıce ve [1].
RT h [Ω] Rt3
Rt2 ∆R
Rt1 T1
T2
T3
T [◦ C]
Obr. 3.3: Teplotn´ı z´ avislost odporu NTC termistoru a jeho paraleln´ı kombinace s pevn´ ym rezistorem Samotn´a realizace linearizace je bud’to zapojen´ım jednoho ˇci v´ıce OZ s vhodnˇe zvolen´ ymi zpˇetn´ ymi vazbami tvoˇr´ıc´ı regulovateln´ y proudov´ y zdroj, tak aby obvod pracoval jako pˇresn´ y derivaˇcn´ı zesilovaˇc pro kvadratick´ y ˇclen polynomu v urˇcit´em intervalu mˇeˇren´ ych hodnot napˇet´ı a nebo vyuˇz´ıt integrace cel´eho zapojen´ı v jedin´em integrovan´em obvodu. T´ımto se zab´ yv´a firma Burr-Brown (Texas Instruments) nebo rovnˇeˇz zn´am´ y americk´ y Honeywell, jedn´a se pak o obvody ˇrady XTR, napˇr. integrovan´ y obvod XTR103 [8], [14].
R5
R2
3,01K
11,8K R1
3 6 2 4 8
11K
VOUT
7 1
+5V
IO1 MAX4236 R3
105K PT100
R4 12,4K
Obr. 3.4: Linearizace PRTD pomoc´ı pˇ resn´ eho OZ
17
3.1.1
Linearizace pomoc´ı mikroprocesoru
Jeden z moˇzn´ ych zp˚ usobu jak linearizovat pr˚ ubˇehy teplotn´ıch senzor˚ u, je naprogramovat µP tak aby podle funkˇcn´ı hodnoty napˇet´ı dopoˇc´ıt´aval“ odpov´ıdaj´ıc´ı teplotu. Polynom se tak jednoduˇse ” uloˇz´ı do pamˇeti µP a veˇsker´e vstupn´ı vzorky z AD pˇrevodn´ıku vyjadˇruj´ıc´ı napˇet’ovou hodnotu jsou pomoc´ı tohoto polynomu pˇrepoˇc´ıt´av´any na teplotn´ı hodnoty. Pak jiˇz nen´ı tˇreba ˇz´adn´ ych mnohdy sloˇzit´ ych a nebo finanˇcnˇe n´akladn´ ych linearizaˇcn´ıch obvod˚ u.
Typov´ e pˇ r´ıklady linearizace Linearizace napˇ et’ov´ eho pr˚ ubˇ ehu na v´ ystupu platinov´ eho teplotn´ıho ˇ cidla PT100
P3
+15V
E
1M
5x Napajení kazdeho IO
A
2M2
R3 10K
3
R4 10K
3
C25-C29
+
-UB
+
+UB
2K7
LM725 IO3
1u GND
-UB
5 6
3
+UB R14 10K
7 1
+UB
R17
2
10K
PT100
LM741P IO4 5 6
3 2
OUT 1 2
4 8
E
R10 4K7
+UB
R13 R6 5K
7 1
R9 2K7
C20-C24 1u
6 5
5K R8 1K
R25-R29 22
2
+UB R7
-15V
R20-R24 22
7 1
6 5
2
R12 5K
4 8
2
5 6
3
7 1
10K
-UB LM741P IO2
4 8
R2
S
P1 470
10K
-UB LM741P IO1
LM741P IC5
E
R5
A
R1 29K
+15V
+UB
R11 10K
4 8
R19
7 1
+15V
4 8
3.2.1
S
3.2
S
R16
A
-UB
51K
P2 2K2
-UB R18 5K6
R15 100
Obr. 3.5: Linearizace napˇ et’ov´ eho pr˚ ubˇ ehu na v´ ystupu platinov´ eho teplotn´ıho ˇ cidla PT100 Zapojen´ı bylo navrˇzeno pro mˇeˇren´ı teploty od 0 do 200 ◦ C s odchylkou od linearity < 0,1%, a dle potˇreby lze pomoc´ı nastavovac´ıch prvk˚ u tuto oblast zmˇenit. Obvod pro linearizaci se skl´ad´ a ze zdroje konstantn´ıho proudu pracuj´ıc´ıho do uzemnˇen´e z´atˇeˇze (IO1 a IO2), kterou tvoˇr´ı pr´avˇe odporov´ y teplomˇer. Druh´a ˇc´ast slouˇz´ı k takov´emu zes´ılen´ı u ´bytku napˇet´ı na teplomˇeru, aby v´ ysledn´e napˇet´ı bylo u ´mˇern´e teplotˇe v Celsiovˇe stupnici. Zesilovaˇc napˇet´ı (vytvoˇren´eho pr˚ utokem mˇeˇr´ıc´ı proudu odporov´ ym teplomˇerem) m´a zes´ılen´ı nastaven´e tak, aby zmˇena teploty o 200 ◦ C zp˚ usobila v´ ystupu zmˇenu napˇet´ı 2 V . Zapojen´ı je tedy jakousi obdobou m˚ ustkov´e mˇeˇr´ıc´ı metody, rozd´ıl je v pouˇzit´ı kladn´e zpˇetn´e vazby z v´ ystupu IO4 na (−) proudov´eho zdroje IO1, kter´ a zajiˇst’uje linearizaci cel´eho mˇeˇr´ıc´ıho zaˇr´ızen´ı, viz. [3].
18
3.2.2
Integrovan´ e obvody ˇ rady XTR
Firma Burr-Brown vyr´ab´ı ˇradu integrovan´ ych obvod˚ u urˇcen´ ych obecnˇe k linearizov´an´ı pr˚ ubˇeh˚ u sn´ımaˇc˚ u. Jedn´ım z nich je obvod XTR103, pracuj´ıc´ı jako kompletn´ı RTD proudov´ y budiˇc s linearizuj´ıc´ımi vlastnostmi. Samotn´ y IO je zjednoduˇsenˇe tvoˇren dvˇema OZ se zpˇetn´ ymi vazbami a jedn´ım proudov´ ym zdrojem obsahuj´ıc´ım OZ. Pracuje na principu derivace vstupn´ıho napˇet´ı a doporuˇcuje se pro linearizov´an´ı velk´e ˇsk´aly senzor˚ u a to nejen teplotn´ıch ale i tlakov´ ych, pr˚ utokov´ ych, aj. Podle provozn´ıch podm´ınek se vyr´ab´ı v keramick´em nebo plastov´em pouzdˇre.
D1 VCC
5
PT100
10
V+IN
IO1 XTR103
RG1
R3 169 6
B RG2
I0
11
7
RLIN1
T1 BC337
8
R1 1K5
V-IN
15
9
100 C1 10n
3
RLIN2
E
RG
GND
V+
4
IR1
IR2
12
13
C2 10n
R LIN 1K127
Obr. 3.6: Linearizace pomoc´ı IO XTR103 Do obvodu se pˇriv´ad´ı dva sign´aly – napˇet´ı mˇen´ıc´ı se v ˇcase, kter´e odpov´ıdaj´ıc´ı mˇeˇren´e teplotˇe a referenˇcn´ı napˇet´ı (svorky V + IN a V − IN ). IO pracuje jako rozd´ılov´ y zesilovaˇc, kter´ y tato dvˇe napˇet´ı nejprve od sebe vz´ajemnˇe odeˇcte a pak zderivuje. XTR103 nav´ıc funguje jako pˇrevodn´ık U/I, na v´ ystupu tedy z´ısk´av´ame proud odpov´ıdaj´ıc´ı teplotˇe. Rezistory jsou navrhnuty tak, aby obvod mˇeˇril od 0 do 200 ◦ C. Extern´ım rezistorem RG (R3) pak nastavujeme rozsah v´ ystupn´ıho proudu. Proud prot´ekaj´ıc´ı t´ımto rezistorem ovlivˇ nuje v jak´em intervalu hodnot bude v´ ystupn´ı proud IG = 4 – 20 mA (pˇri RG ≈ ∞ je IG = 20 mA). A hodnotou RLIN nastavujeme rozsah (hloubku) samotn´e linearizace. Naˇsemu rozsahu 0 do 200 ◦ C odpov´ıd´a hodnota 1127Ω. Pˇri rozpojen´ı (RLIN ≈ ∞) XTR103 nebude linearizovat. V´ıce informac´ı o tomto obvodu je moˇzno nal´ezt v katalogov´em listu XTR103 v [14]. Integrovan´e obvody ˇrady XTR vynikaj´ı mal´ ymi rozmˇery, mal´ ym offsetem (XTR103 ±2 nA) a driftem, excelentn´ı linearitou, danou pˇresn´ ymi intern´ımi proudov´ ymi zdroji. V jejich neprospˇech mluv´ı vysok´a cena. Ta je u podobn´eho obvodu XTR101AU 547 Kˇc. Nejedn´a se sice o IO, kter´ y je pˇr´ımo urˇcen pro linearizaci, ale pouze o precizn´ı rozd´ılov´ y zesilovaˇc buzen´ y rovnˇeˇz proudov´ ymi zdroji podobn´e architektury. Cena stotrojky“ bude pravdˇepodobnˇe pˇres jeden tis´ıc Kˇc. ”
19
4
´ ˇ ´IK DIGITALIZACE SIGNALU – A/D PREVODN
Jak jiˇz bylo zm´ınˇeno v u ´vodu A/D pˇrevodn´ık (ADC) je posledn´ım ˇcl´ankem, kter´ y m˚ uˇze ovlivnit pˇresnost cel´eho zaˇr´ızen´ı. A/D pˇrevodn´ık pracuje na principu vzorkovaˇce, kter´ y ze spojit´eho analogov´eho sign´alu tvoˇr´ı sign´al diskr´etn´ı. Pro pˇresnost mˇeˇren´ı je pak stˇeˇzejn´ım parametrem, do jak´e m´ıry je ADC zat´ıˇzen chybou zp˚ usobenou nenulovou hladinou kvantizaˇcn´ıho ˇsumu.
4.1
Principieln´ı rozdˇ elen´ı pˇ revodn´ık˚ u
Paraleln´ı pˇ revodn´ıky s pˇ r´ımou konverz´ı (direct-conversion - flash converters) Pˇrevodn´ık s pˇr´ımou konverz´ı obsahuje 2n−1 kompar´ator˚ u, na jejichˇz jednu svorku jsou pˇriv´adˇena napˇet´ı odpov´ıdaj´ıc´ı rozhodovac´ım hladin´am (nastavovan´e integrovan´ ymi odporov´ ymi dˇeliˇci z referenˇcn´ı hodnoty napˇet´ı) a na druhou pˇrev´adˇen´ y analogov´ y sign´al. Obvody oproti ostatn´ım vynikaj´ı vysokou rychlost´ı, ale technologicky nedosahuj´ı vysok´ ych rozliˇsen´ı. Obecnˇe se u velmi rychl´ ych obvod˚ u upouˇst´ı od komunikace pˇres s´eriovou linku, vyuˇz´ıv´a se tak pouze paraleln´ı pˇrenos.
Pˇ revodn´ıky typu pipeline“ (subranging, half-flesh converters) ” ADC vych´az´ı z pˇrevodn´ık˚ u s pˇr´ımou konverz´ı, ale na m´ısto 2n − 1 kompar´ator˚ u je tˇreba pouze 2 ∗ (n/2 − 1) kompar´ator˚ u. Toho je doc´ıleno t´ım, ˇze je ADC rozdˇelen na dva n/2 pˇrevodn´ıky – napˇr. 8-bitov´ y pˇrevodn´ık na dva 4-bitov´e. ADC pracuje ve dvou cyklech. Prvn´ıch n/2 nejvyˇsˇs´ıch bit˚ u je pˇrevedeno prvn´ım flash pˇrevodn´ıkem. V´ ystup n´asledn´eho D/A pˇrevodn´ıku je odeˇcten od vstupn´ıho sign´alu (je drˇzen bˇehem pˇrevodu SH obvodem) a v´ ysledn´ y zbytkov´ y sign´al je zes´ılen a pˇriveden do druh´eho flash pˇrevodn´ıku. V´ ystup obou flash pˇrevodn´ık˚ u je nakonec spojen do jednoho n bitov´eho v´ ystupn´ıho bajtu. Parametry jsou obdobn´e s pˇrevodn´ıky s pˇr´ımou konverz´ı.
Pˇ revodn´ıky Σ-∆ (sigma-delta converters) Zapojen´ı pˇrevodn´ıku se Σ-∆ modul´atorem generuje v´ ystupn´ı n-bitov´e ˇc´ıslo postupnˇe pomoc´ı zpˇetnovazebn´ıho jednobitov´eho DAC a integr´atoru. Pˇrevod prob´ıh´a tak dlouho, dokud na v´ ystupu integr´atoru nen´ı vyv´aˇzen´e napˇet´ı (nulov´a u ´roveˇ n). Ze z´ıskan´e posloupnosti na v´ ystupu kompar´atoru ˇc´ıslicov´ y filtr vygeneruje ˇc´ıslicov´ y tvar vstupn´ıho sign´alu. Tyto pˇrevodn´ıky umoˇzn ˇuj´ı pˇredevˇs´ım dos´ahnout velmi vysok´eho rozliˇsen´ı (aˇz 24 bit˚ u), naopak ztr´ac´ı v rychlosti pˇrevodu.
Integraˇ cn´ı pˇ revodn´ıky (stairstep-ramp converters) Hlavn´ı myˇslenkou je pˇripojen´ı v´ ystupu volnˇe bˇeˇz´ıc´ıho ˇc´ıtaˇce na vstup integrovan´eho D/A pˇrevodn´ıku. N´asleduje srovn´an´ı analogov´eho v´ ystupu DAC se vstupn´ım analogov´ ym sign´alem, d´ale digitalizace. K ovl´adan´ı ˇc´ıtaˇce se vyuˇz´ıv´a v´ ystup z kompar´atoru (impuls zastaven´ı a resetov´an´ı). V´ yhodou je rovnˇeˇz moˇznost dos´ahnut´ı vysok´ ych rozliˇsen´ı.
20
Pˇ revodn´ıky s postupnou aproximac´ı (successive-approximation conv. - SAR) Jedinou zmˇenou oproti integraˇcn´ım pˇrevodn´ık˚ um je velmi speci´aln´ı ˇc´ıtac´ı obvod, zn´am´ y jako postupnˇe aproximaˇcn´ı registr. Jako n´ahrada za pˇriˇc´ıt´an´ı v bin´arn´ı posloupnosti, tento registr sˇc´ıt´a zkouˇsen´ım vˇsech hodnot bit˚ u, poˇc´ınaje bitem s nejvˇetˇs´ı v´ahou a konˇce bitem s nejmenˇs´ı v´ahou. Skrz ˇc´ıtac´ı proces registr hl´ıd´a v´ ystup kompar´atoru, jestli je bin´arn´ı souˇcet menˇs´ı nebo vˇetˇs´ı neˇz hodnota pˇrev´adˇen´eho analogov´eho sign´alu a podle toho nastavuje bitovou hodnotu. V´ yhodou t´eto metody jsou mnohem rychlejˇs´ı v´ ysledky – pˇrevod analogov´e sign´alu prob´ıh´a ve vˇetˇs´ıch kroc´ıch, neˇz-li u plnohodnotn´eho ˇc´ıtaˇce.
4.2
Komunikace
Komunikace spoˇc´ıv´a v pˇrenosu informac´ı z jednoho zaˇr´ızen´ı k druh´emu. Propojovac´ım elementem je pak sbˇernice. Sbˇernic je nespoˇcet typ˚ u, liˇs´ıc´ıch se pˇredevˇs´ım komunikaˇcn´ı rychlost´ı a poˇctem propojovac´ıch kontakt˚ u [11]. V podstatˇe nen´ı aˇz tak d˚ uleˇzit´e jak´e pˇrenosov´e rozhran´ı pouˇzijeme. Z d˚ uvodu uˇsetˇren´ı I/O pin˚ u µP by bylo vhodn´e zvolit nˇekter´e ze s´eriov´ ych rozhran´ı, napˇr´ıklad 2 nejbˇeˇznˇejˇs´ı I C (Philips Semiconductors) vyˇzaduj´ıc´ı 2 vodiˇce, SP I (Motorola) se dvˇema vodiˇci nebo z SP I vych´azej´ıc´ı M icrowire (National Semiconductor) se tˇremi aˇz ˇctyˇrmi komunikaˇcn´ımi vodiˇci. T´ımto v´ ybˇerem oˇzel´ıme rychlost komunikace, vlastnost, kter´a je pro tyto s´eriov´e linky typick´a, ale pro n´as v´ıcem´enˇe nepodstatn´a. Nˇekter´e µP jsou jiˇz hardwarovˇe pˇrizp˚ usobeny ke komunikaci s tˇemito sbˇernicemi, maj´ı k tomu vyvedeny speci´aln´ı piny. U ostatn´ıch mikroprocesor˚ u, kde ˇz´adn´a podobn´a pˇr´ıprava nen´ı, se piny ke komunikaci zvol´ı (z libovoln´e br´any) a komunikaˇcn´ı protokoly se mus´ı naprogramovat ruˇcnˇe.
4.3
Shrnut´ı A/D pˇ revodn´ık˚ u
Pro uvaˇzovan´ y obvod termostatu nen´ı zapotˇreb´ı z´avratn´e rychlosti, tud´ıˇz nen´ı potˇreba platit vysokou cenu za pˇrevodn´ık s pˇr´ımou konverz´ı. Naopak cenovˇe nejpˇrijatelnˇejˇs´ı jsou pˇri vyˇsˇs´ım rozliˇsen´ı pˇrevodn´ıky typu Σ∆. Tyto pˇrevodn´ıky maj´ı nav´ıc v´ yhodu v tom, ˇze u nich nen´ı tˇreba ˇz´adn´e kalibrace1 , a to ani u vyˇsˇs´ıch rozliˇsen´ı (16–18 bit˚ u), jak je tomu u cenovˇe srovnateln´ ych SAR, viz. n´ıˇze Tabulka 4.1.
IO AD7705 AD7680 MAX1200
Architektura Sigma-Delta SAR Pipelined
Rozliˇ sen´ı 16 bit˚ u 16 bit˚ u 16 bit˚ u
Vstupy 2 1 1
Datov´ y v´ ystup S´eriov´ y, SPI S´eriov´ y, SPI Paraleln´ı
Vz. kmitoˇ cet 500SPS 100KSPS 1MSPS
Cena v USD $4.85 $5.81 $20.21
Tab. 4.1: Porovn´ an´ı parametr˚ u A/D pˇ revodn´ık˚ u s r˚ uznou architekturou
1
Kalibrace sice nen´ı nutn´ a, ale je n´ am zpravidla umoˇznˇena. Pˇrevodn´ıky obsahuj´ı autokalibraˇcn´ı obvody do nichˇz lze kdykoliv zasahovat a zaˇr´ızen´ı dle potˇreby a okolnost´ı kalibrovat
21
5
MIKROPROCESOR
Jednoˇcipov´e poˇc´ıtaˇce nach´azej´ı vyuˇzit´ı v jedno´ uˇcelov´ ych aplikac´ıch, pˇriˇcemˇz je lze velice snadno pˇrizp˚ usobit dan´e aplikaci. Jejich vlastnost´ı se vyuˇz´ıv´a snad ve vˇsech odvˇetv´ıch pr˚ umyslu (automobilov´ y pr˚ umysl - vstˇrikovac´ı jednotky, zabezpeˇcovac´ı syst´emy, ABS,. . . ), ale i v bˇeˇzn´em ˇzivotˇe (digit´aln´ı hodiny, kalkulaˇcky mikrovlnn´e trouby,. . . ). Nejrozˇs´ıˇrenˇejˇs´ı jednoˇcipov´e mikroprocesory jsou zn´amy oznaˇcen´ım j´adra 51“. Pˇrestoˇze se jedn´a o procesory s velmi zastaralou architektu” rou, jsou u n´avrh´aˇr˚ u elektronick´ ych zaˇr´ızen´ı st´ale velmi obl´ıben´e a to pro jejich jednoduchost a snadnou aplikaci pro vˇetˇsinu bˇeˇzn´ ych zaˇr´ızen´ı (ide´alnˇe i pro jednoduch´e ˇr´ızen´ı termostatu) [7], [9] .
Obr. 5.1: Pouzdro DIP20 architektury 8051 (AT89C4051) Kaˇzd´ y v´ yrobce dnes nab´ız´ı nˇekolik r˚ uzn´ ych variant procesoru, vˇetˇsina z nich m´a ale ve sv´e v´ yrobn´ı nab´ıdce i p˚ uvodn´ı typ 8051. Mikroprocesory vyr´abˇen´e r˚ uzn´ ymi firmami se od sebe liˇs´ı v poˇctu port˚ u, ˇc´ıtaˇc˚ u/ˇcasovaˇc˚ u, s´eriov´ ych kan´al˚ u (UART), v z´avislosti na tom pak i poˇctem v´ yvod˚ u pouzdra, proveden´ım pouzdra, velikost´ı a typem pamˇeti a vybavenost´ı dalˇs´ımi perif´eriemi. Mezi nejzn´amˇejˇs´ı v´ yrobce patˇr´ı Analog devices, Atmel, Dallas Semiconductor, Intel, OKI Semiconductor, Philips, Siemens a mnoho dalˇs´ıch. Ceny se odv´ıjej´ı od v´ yˇse zm´ınˇen´ ych parametr˚ u a zaˇc´ınaj´ı na 25 Kˇc/ks. Zastaral´a architektura vˇsak pˇr´ıliˇs zmˇen nedovoluje, proto se v´ yrobci snaˇz´ı z´akazn´ıky pˇril´akat na mikroprocesory novˇejˇs´ı generace. V souˇcasn´e elektronice je hitem integrace“. Vˇsichni ” v´ yrobci modern´ıch jednoˇcipov´ ych mikroprocesor˚ u se snaˇz´ı um´ıstit na ˇcip co moˇzn´a nejv´ıce perif´eri´ı usnadˇ nuj´ıc´ıch jejich pouˇzit´ı v aplikaci. Zjednoduˇsuje to n´avrh zaˇr´ızen´ı, sniˇzuje n´aklady na v´ yrobu a zrychluje v´ yvoj. Nespornou v´ yhodou je pak integrace nejbˇeˇznˇejˇs´ıch perif´eri´ı jako je A/D pˇrevodn´ık, zpravidla aproximaˇcn´ı s postupnou aproximac´ı, LCD ˇradiˇc, s´eriov´a rozhran´ı ˇci obvody pro PWM (Pulse Width Modulation) integrovan´e pˇr´ımo na ˇcipu.
22
6 6.1
´ ´I PERIFERIE VYSTUPN LCD displej
Mezi z´akladn´ı parametry podle kter´ ych bychom mˇeli vyb´ırat LCD patˇr´ı pˇredevˇs´ım struktura segment˚ u (segmentov´a, alfanumerick´a nebo maticov´a), rozmˇery a design, rozsah provozn´ıch teplot (standartn´ı nebo pr˚ umyslov´ y), zp˚ usob nap´ajen´ı a komunikace s procesorem a v neposledn´ı ˇradˇe tak´e cena. Dalˇs´ımi parametry, kter´e bychom mohli nazvat ergonomick´ ymi je dostateˇcn´ y kontrast, tedy dobr´a ˇcitelnost z co nejvˇetˇs´ıch zorn´ ych u ´hl˚ u a to i za zhorˇsen´ ych svˇeteln´ ych podm´ınek. D´ıky tˇemto n´arok˚ um jsou displeje vyr´abˇeny bud’ jako reflexn´ı (bez podsv´ıcen´ı), a pro provoz v tmavˇejˇs´ıch m´ıstnostech a nebo v noci, s LED podsv´ıcen´ım. S ohledem na dobrou ˇcitelnost by bylo vhodn´e aby displej podporoval rovnˇeˇz ˇceskou diakritiku, popˇr. jin´e znakov´e sady. Pˇr´ıkladem m˚ uˇze b´ yt asi nejrozˇs´ıˇrenˇejˇs´ı sada anglicko/rusk´a podporuj´ıc´ı cyrilick´e znaky, anebo sada anglicko/japonsk´a. Pro pouˇzit´ı v termostatu by bohatˇe postaˇcil i segmentov´ y displej, kter´ y by vˇsak byl znaˇcnˇe omezen zobrazen´ım pouze ˇc´ıseln´e hodnoty. Znakov´e displeje maj´ı oproti segmentov´ ym velkou v´ yhodu v moˇznosti zobrazen´ı znakov´ ych sad. V n´avrhu termostatu se objev´ı v´ıce nastavovac´ıch prvk˚ u a pro dobrou orientaci mezi nimi je vhodn´e zobrazovac´ı v´ ystup LCD displeje obohatit o doprovodn´ y text s popisky aktu´aln´ıch parametr˚ u. V takov´em pˇr´ıpadˇe nejvhodnˇejˇs´ı volba z˚ ust´av´a u displeje znakov´eho. Komunikaci s procesorem zajiˇst’uje ˇradiˇc, ten m˚ uˇze b´ yt integrov´an pˇr´ımo v pouzdˇre procesoru, nebo ˇreˇsen extern´ım integrovan´ ym obvodem (urˇcen´ ym pro speci´aln´ı u ´ˇcely, ˇr´ızen´ı pole displej˚ u) a nebo m˚ uˇze b´ yt souˇc´asti DPS spoleˇcnˇe s displejem, coˇz je ˇcastˇejˇs´ı pˇr´ıpad. Standartem se stal ˇradiˇc HD44780 od firmy Hitachi. Tento ˇradiˇc, popˇr. nˇejak´ y jeho ekvivalent, pouˇz´ıvaj´ı vˇsichni v´ yrobci znakov´ ych LCD displej˚ u. Pro dosaˇzen´ı u ´pln´e kompatibility, je u vˇsech zapojen´ı pˇr´ıvodn´ıho konektoru stejn´e. To v´ yraznˇe zjednoduˇsuje pouˇzit´ı displej˚ u v praxi. Komunikace s modulem muˇze b´ yt po 8-bitov´e sbˇernici (DB0–DB7) nebo po 4-bitov´e sbˇernici (DB4–DB7) kdy zbyl´e uzemn´ıme. K tomu je tˇreba modulu sdˇelit jestli pos´ıl´ame data nebo instrukce – RS, d´ ale smˇer toku dat µP ↔ LCD – R/W a pochopitelnˇe nesm´ı chybˇet hodinov´ y sign´al – E. Celkem tedy 11 vodiˇc˚ u pro komunikaci, dva pro nap´ajen´ı, dva pro extern´ı osvˇetlen´ı a jeden pro nastaven´ı kontrastu, v´ıce v [10] .
Obr. 6.1: Uk´ azka zobrazen´ı znak˚ u na alfanumerick´ em displeji V´ yrobc˚ u LCD displej˚ u je opravdu mnoho, jen nam´atkou Data Image, Elatec, Fairchild, Kenwood, Picvue, Sharp, Toshiba, a mnoho dalˇs´ıch. Ceny jednoˇr´adkov´ ych alfanumerick´ ych LCD displej˚ u zaˇc´ınaj´ı pˇribliˇznˇe na 100 Kˇc v reflexn´ı verzi a ve verzi podsv´ıcen´e LED na 150 Kˇc.
23
6.2
V´ ykonov´ y akˇ cn´ı ˇ clen
Sp´ın´an´ı v´ ykonov´e z´atˇeˇze lze realizovat v´ıce zp˚ usoby. Nejstarˇs´ı, co se t´ yk´a vzniku, je kontaktn´ı rel´eov´e sp´ın´an´ı, kter´e pracuje na elektromagnetick´e indukci. Elektromagnet zde pˇritahuje kotvu z magnet. materi´alu s kontaktem a protikontaktem. K sepnut´ı dojde, je-li kotva pˇritaˇzena elektromagnetem. Tak je moˇzno mal´ ym proudem sp´ınat proudy podstatnˇe vˇetˇs´ı. Rel´e by se dalo charakterizovat jako mechanick´ y sp´ınaˇc, kter´ y oxiduje a st´arne. Pro ˇcast´e sp´ın´an´ı a dlouhodobou funkˇcnost nen´ı tedy pˇr´ıliˇs vhodn´e. Z hlediska dlouhodob´e funkˇcnosti je vhodnˇejˇs´ı pouˇz´ıt sp´ın´an´ı polovodiˇcov´ ym prvkem, jako je napˇr´ıklad optotriak. V´ yhoda optotriaku spoˇc´ıv´a v tom, ˇze galvanicky oddˇeluje logickou a v´ ykonovou ˇc´ast obvodu. Uvnitˇr optotriaku doch´az´ı k bezkontaktn´ımu sp´ın´an´ı a tud´ıˇz je vylouˇcen jak´ ykoliv pˇrenos ruˇsiv´ ych sloˇzek, poch´azej´ıc´ı ze s´ıt’ov´eho napˇet´ı, zpˇet do logick´e ˇc´asti - procesoru. Princip optotriaku je obdobn´ y jako u vˇetˇsiny jin´ ych optoelektronick´ ych sp´ınaˇc˚ u. Integrovan´a IR dioda pˇri vybuzen´ı mikroprocesorem generuje energii, kter´a se pˇren´aˇs´ı na v t´emˇze pouzdˇre integrovan´ y triak a sepne ho. Pro v´ ykonov´ y obvod se pak triak jev´ı jako obyˇcejn´a usmˇerˇ novac´ı dioda, po ukonˇcen´ı IR impulsu pak jako (t´emˇeˇr) rozpojen´ y kontakt.
6.2.1
Typov´ y pˇ r´ıklad sp´ın´ an´ı v´ ykonov´ e z´ atˇ eˇ ze optotriakem
Zapojen´ı pˇredstavuje v´ ykonov´ y sp´ınaˇc tvoˇren´ y dvˇema polovodiˇcov´ ymi triaky. Prvn´ım je galvanicky oddˇeluj´ıc´ı optotriak IO1 MOC3020 a druh´ ym je v´ ykonov´ y triak T 1, sp´ınaj´ıc´ı samotnou z´atˇeˇz. V optotriaku je integrov´an obvod sleduj´ıc´ı pr˚ uchod s´ıt’ov´eho napˇet´ı nulou, tud´ıˇz veˇsker´e sp´ın´an´ı a rozp´ınan´ı je samotn´ ym obvodem realizov´ano aˇz po pr˚ uchodu s´ıt’ov´eho napˇet´ı nulou. Vstup optotriaku je pˇripojen k bitu portu mikroprocesoru (LOG IN). Jakmile je z nˇej vysl´ an impuls optotriak sepne a s n´ım pˇres ˇr´ıd´ıc´ı elektrodu i v´ ykonov´ y triak T 1. Pˇri v´ ybˇeru optotriaku je stˇeˇzejn´ım parametrem provozn´ı sp´ınan´e napˇet´ı a proud. T´ımto zapojen´ım je moˇzno sp´ınat proud aˇz do nˇekolika Amp´er, a to podle typu pouˇzit´eho v´ ykonov´eho stupnˇe. Je vˇsak nutno zajistit odpov´ıdaj´ıc´ı chlazen´ı. Ceny u pouˇzit´eho v´ ykonov´eho triaku i optotriaku se pohybuj´ı kolem 20 Kˇc.
IO1 MOC3041 R1
1
6
R5
2
5
R2
VCC R4
LOG_IN
T2 BC327
3
T1
ZERO CROSSING CIRCUIT
+
230V R6
C1
4
R3 ZATEZ
Obr. 6.2: Sp´ın´ an´ı v´ ykonov´ e z´ atˇ eˇ ze optotriakem
24
7 7.1
´ NAVRH Analogov´ aˇ c´ ast
N´avrh zapojen´ı podporuje velkou pˇresnost platinov´eho ˇcidla. Pˇresnost ostatn´ıch souˇc´astek je volena tak, aby odchylky od jejich ide´aln´ıch parametr˚ u byly co moˇzn´a nejmenˇs´ı a v porovn´an´ı s chybou platinov´eho senzoru zanedbateln´e. ˇ rbodov´e nebo tak´e Teplotn´ı senzor je zapojen ˇctyˇrbodovˇe do Wheatsonova m˚ ustku. Ctyˇ naz´ yvan´e ˇctyˇrsvorkov´e zapojen´ı, pro oddˇelen´e nap´ajen´ı a mˇeˇren´ı, zmenˇsuje chybu vzniklou nezanedbateln´ ym odporem pˇr´ıvodn´ıch vodiˇc˚ u. S pˇredpokladem, ˇze el. odpor PRTD se s teplotou zvyˇsuje jen velmi pozvolna (0–100 ◦ C ∼ 38,5 Ω), tak byt’ i nepatrn´a odchylka od nomin´aln´ı hodnoty se po n´asledn´em zes´ılen´ı ve znaˇcn´e m´ıˇre objev´ı i na v´ ystupu. Poˇzadavky mal´eho offsetu zesilovac´ıch prvk˚ u, n´ızk´e hladiny prahu ˇsumu tvoˇren´eho pˇredevˇs´ım pomˇerem tepeln´ ych ˇsum˚ u a vysok´a m´ıra stability v teplotˇe i v ˇcase by mˇely b´ yt samozˇrejmost´ı. Hodnota nepatrnˇe vyˇsˇs´ıho offsetu vˇsak nen´ı na z´avadu, nebot’ se kompenzuje kalibrac´ı v posledn´ı f´azi konstrukce (oˇzivov´an´ı). Pro v´ yslednou pˇresnost je pak v´ yhodnˇejˇs´ı pouˇz´ıt radˇeji m´enˇe souˇc´astek a vyvarovat se sloˇzitˇejˇs´ıch zapojen´ı. D˚ uvodem jsou neide´aln´ı vlastnosti kaˇzd´eho obvodov´eho elementu, kter´ y je zdrojem nepˇresnost´ı, a pro popisovan´ y n´avrh ˇc´asti pro mˇeˇren´ı teploty, s pˇrevahou neˇz´adouc´ıho ˇsumu a nestability. Vhodn´e je pouˇzit´ı integrovan´ ych obvod˚ u, mnoh´e nahrazuj´ıc´ı cel´a zapojen´ı obvodov´ ych souˇc´astek a to s pˇresnost´ı, kterou v bˇeˇzn´ ych podm´ınk´ach jen stˇeˇz´ı dos´ahneme. U preciznˇejˇs´ıch IO se u pasivn´ıch prvk˚ u v´ yrobci chlub´ı oznaˇcen´ım: laser ” trimmed“ a k zajiˇstˇen´ı vysok´e stability v ˇcase je podrobuj´ı tzv. umˇel´emu st´arnut´ı, kdy jsou opakovanˇe vystavov´any velk´ ym v´ ykyv˚ um teplot.
PROUDOVY ZDROJ
NAPETOVY INVERTOR
NAPETOVA REFERENCE
VYKONOVY AKCNI CLEN (TOPENI)
ZESILOVAC
A/D PREVODNIK
MIKRO PROCESOR
PT100
ZOBRAZOVACI JEDNOTKA
OVLADANI
Obr. 7.1: Blokov´ y diagram termostatu s platinov´ ym teplotn´ım senzorem
25
7.1.1
Zdroj napˇ et´ı a sp´ınaˇ c v´ ykonov´ eho akˇ cn´ıho ˇ clenu
V prvotn´ım kroku je tˇreba si rozmyslet, jak´ ym zp˚ usobem se bude cel´ y digit´aln´ı teplomˇer nap´ajet. Je tˇreba si uvˇedomit jak´e(-´a) napˇet´ı budeme pro provoz potˇrebovat, s jakou stabilitou a s jakou proudovou vytˇeˇzitelnost´ı. Je zcela zˇrejm´e, ˇze ˇc´ıslicov´a ˇc´ast pracuje ve vˇetˇsinˇe pˇr´ıpad˚ u s pevn´ ym ss. napˇet´ım 5 V a to je i n´aˇs pˇr´ıpad. Tedy, cel´a digit´aln´ı ˇc´ast zauj´ımaj´ıc´ı µP, AD pˇrevodn´ık, LCD displej a jeho podsv´ıcen´ı si vystaˇc´ı s t´ımto napˇet´ım. U analogov´e ˇc´asti je to ponˇekud sloˇzitˇejˇs´ı. Je zde zapotˇreb´ı symetrick´eho napˇet´ı pro nap´ajen´ı operaˇcn´ıch zesilovaˇc˚ u, zpravidla se jedn´a o napˇet´ı 15 V , ale nen´ı to podm´ınkou. Modern´ı OZ dok´aˇz´ı pracovat i s daleko menˇs´ım symetrick´ ym nap´ajen´ım zaˇc´ınaj´ıc´ım na cca 2–3 V . Sch´ema zapojen´ı je moˇzno nal´ezt z pˇr´ıloze A.1. S´ıt’ov´e napˇet´ı je rozvˇetveno do dvou ˇc´ast´ı, nap´ajen´ı silov´e ˇc´asti optotriaku, a na nap´ajen´ı ostatn´ıch n´ızkopˇr´ıkonov´ ych obvod˚ u (analogov´ ych a ˇc´ıslicov´ ych). Obˇe tyto vˇetve maj´ı svou vlastn´ı pojistku F U 2 a F U 3, hlavn´ı pojistkou chr´an´ıc´ı cel´e zaˇr´ızen´ı je F U 1. Pro 400 W z´atˇeˇze sp´ınan´e optotriakem poteˇce pojistkou F U 3 klidov´ y proud pˇribliˇznˇe 1,74 A. S jistou rezervou byla hodnota F U 3 zvolena 3A. Velikost F U 2 je, s ohledem na proudov´e ˇspiˇcky1 ihned po sepnut´ı, dostateˇcnˇe vˇetˇs´ı, neˇz-li je tento proud a dostateˇcnˇe menˇs´ı, neˇz-li je proudov´a zat´ıˇzitelnost pˇr´ıvodn´ıch vodiˇc˚ u k v´ ykonov´e z´atˇeˇzi. Ze slaboproud´e ˇc´asti bude nejv´ıce proudovˇe odeb´ırat µP (pˇribliˇznˇe 100 mA/5 V pˇri pln´e z´atˇeˇzi) a LCD displej (120 mA/5 V se zapnut´ ym podsv´ıcen´ım), viz. n´asleduj´ıc´ı tabulka 7.1.
Souˇ c´ astka Mikroprocesor LCD displej Operaˇcn´ı zesilovaˇce
P [mW ] 500 600 < 200
Pozn´ amka Pˇr´ıkonov´e maximum s pˇripojen´ ymi periferiemi Se zapnut´ ym LED podsv´ıcen´ım Celkov´ a spotˇreba
Tab. 7.1: Porovn´ an´ı pouˇ zit´ ych souˇ c´ astek s nejvˇ etˇ s´ım pˇ r´ıkonem Z´aklad zdroje napˇet´ı je tvoˇren klasick´ ym transform´atorem se zd´anliv´ ym v´ ykonem prim´arn´ıho vinut´ı 2x 5 VA, coˇz by mˇelo pro analogov´e a ˇc´ıslicov´e obvody s pˇrehledem postaˇcovat. Transform´ator m´a dvˇe sekund´arn´ı vinut´ı a toho bude vyuˇzito pro dvˇe r˚ uzn´a ss. v´ ystupn´ı napˇet´ı. Ve sch´ematu je sice uvedeno napˇet´ı 2x 9 V , ale to plat´ı pouze pro pln´e zat´ıˇzen´ı. Skuteˇcn´ a hodnota m˚ uˇze b´ yt vyˇsˇs´ı, maxima dosahuje pˇri provozu napr´azdno (u pouˇzit´eho trafa fy. Hahn je napˇet´ı napr´azdno 12,7 V ). Pro z´ısk´an´ı stabilizovan´ ych 5 V se napˇet´ı sekund´aru nejprve usmˇern´ı m˚ ustkov´ ym usmˇerˇ novaˇcem a n´aslednˇe stabilizuje bˇeˇzn´ ym stabiliz´atorem ˇrady 7805 (IO1) na koncov´e napˇet´ı 5 V . D´ıky vyˇsˇs´ımu odbˇeru 5V vˇetve a tak´e d´ıky tomu, ˇze se na stabiliz´atoru tvoˇr´ı u ´bytek pˇresahuj´ıc´ı 7 V (7.1) je IO1 opatˇren pasivn´ım Al chladiˇcem. ∆UIO1 = Usec − UB1 − UIO1out = 12,7 − 0,55 − 5 = 7,15 V
(7.1)
Stabilizovan´e napˇet´ı ±12V z´ısk´ame zdvojen´ım sekund´arn´ıho napˇet´ı pˇres dvˇe vinut´ı, po usmˇernˇen´ı n´asleduje stabilizace – obvod 7812 (IO2) +12 V a 7912 (IO3) −12 V . 1 Vznik tˇechto ˇspiˇcek je zapˇr´ıˇcinˇen zv´ yˇsen´ ym odbˇerem obvodu. Po zapnut´ı nap´ ajen´ı do obvodu kr´ atkou chv´ıli teˇce zv´ yˇsen´ y proud – nab´ıj´ı se kondenz´ atory, formuj´ı se PN pˇrechody aktivn´ıch souˇc´ astek
26
7.1.2
M˚ ustkov´ e zapojen´ı PT100 s pˇ resn´ ym napˇ et’ov´ ym zes´ılen´ım
Blokov´e zapojen´ı 7.1 je volnˇe odvozeno ze sch´ematu v kapitole 2.4.1. Sch´ema zapojen´ı se pak y operaˇcn´ı zesilovaˇc INA114 (IO8). Jeho vstupn´ım nach´az´ı v pˇr´ıloze A.3. Stˇredem zapojen´ı je pˇresn´ ˇclenem je platinov´ y teplotn´ı odpor PT100 zapojen´ y v m˚ ustku. OZ je pak jak´ ymsi nulov´ ym indik´atorem, kter´ y sleduje“ zmˇenu ve vyv´aˇzenosti m˚ ustku. Buzen´ı m˚ ustku obstar´av´a proudov´ y ” zdroj INA105 (IO7) z napˇet’ov´e reference AD586 (IO5). Z doporuˇcen´ı v´ yrobce je nutno proudov´ y zdroj nap´ajet z´aporn´ ym napˇet´ım. Z toho d˚ uvodu je mezi tyto dva bloky um´ıstˇen OZ OPA177 (IO6) v invertuj´ıc´ım zapojen´ı, kter´ y ot´aˇc´ı polaritu referenˇcn´ıho napˇet´ı.
INA105 25K
SENSE
IO7 25K
R8
ln-
R5 3K9
10K R13 240
R7 OZ U IO7-
R6 1K
IO6 OPA177
R14 240 REF
U ref
10K
OUT
25K
25K
U R6
ln+
IZ
RZ
UZ
Obr. 7.2: Zjednoduˇ sen´ e zapojen´ı proudov´ eho zdroje Proud dod´avan´ y proudov´ ym zdrojem je nastaven tak, aby nepˇrekraˇcoval mezn´ı proud PT100. Pˇri nedodrˇzen´ı t´eto meze by doˇslo k vlastn´ımu zahˇr´ıv´an´ı odporov´eho senzoru, a t´ım i ke zhorˇsen´ı pˇresnosti mˇeˇren´ı. Aby nedoch´azelo k tomuto parazitn´ımu jevu, v´ yrobci doporuˇcuj´ı nepˇrekraˇcovat hranici 7 mA. V druh´e f´azi doch´az´ı k vyhodnocov´an´ı m˚ ustku – napˇet’ov´ y rozd´ıl mezi vˇetvemi ∆U je zes´ılen a pos´ıl´an d´ale do A/D pˇrevodn´ıku. Pokud bychom zvolili proud teplotn´ım ˇcidlem velmi mal´ y ˇr´adovˇe do 1 mA, teplotn´ımu ohˇrevu bychom size zabr´anili, ale bylo by to na u ´kor vlastn´ı chyby PT100, kterou spoleˇcnˇe s poˇzadovan´ ym sign´alem zesilujeme2 . Z toho plyne, ˇze volba proudu senzorem je jak´ ymsi kompromisem mezi chybou vlastn´ıho ohˇrevu a chybou zes´ılen´ı absolutn´ı chyby deklarovan´e v´ yrobcem. ˇ ızen´ı proudu zajiˇst’uje napˇet’ov´ R´ y dˇeliˇc pˇripojen´ y na v´ ystup reference IO5. Vzorec (7.2) z katalogov´eho listu INA105 [14] vyjadˇruje v´ ystupn´ı proud IZ z tohoto OZ. IZ = (U+ − U− )
1 1 + 25k RIZ
(7.2)
kde U+ , U− jsou vstupn´ı napˇet´ı na neinvertuj´ıc´ım a invertuj´ıc´ım vstupu OZ a RIZ je velikost rezistoru mezi piny 5–6 a 6–1. 2
Zmenˇsen´ı proudu pˇri stejn´em el. odporu vyvol´ a zmenˇsen´ı u ´bytku napˇet´ı na tomto prvku. Pˇri dodrˇzen´ı 5-ti V napˇet’ov´eho rozsahu na vstupu A/D pˇrevodn´ıku je pak nutn´e patˇriˇcnˇe zv´ yˇsit zes´ılen´ı IO8
27
UR6
= Uref ·
R6 R5 +R6
=5·
1k 4k7+1k
= 0,877 V
10k 8 UIO7− = UR6 · − R = 0,877 · − R7 10k = −0,877 V RIZ
= R13 = R14 = 240 Ω
IZ
= (UIO7+ − UIO7− )
1 25k
+
1 RIZ
= (0 + 0,877)
1 25k
+
1 240
= 3,69 mA
kde U1 je napˇet´ı za dˇeliˇcem a U2 je invertovan´e napˇet´ı. V´ ysledn´ y proud tekouc´ı do m˚ ustku je 4,291 mA. Aby teplota 0 ◦ C nebyla pro A/D pˇrevodn´ık limitn´ı hodnotou, je m˚ ustek pro Rpt100 = 100 Ω m´ırnˇe rozv´aˇzen. To je doc´ıleno paraleln´ı kombinac´ı odpor˚ u R15 R16 a R19 R20 , obr. 7.3.
IZ
R15 10K
R16 100
R17 100
U
UZ
PT100
R19 100
R20 10K
Obr. 7.3: Zapojen´ı mˇ eˇ r´ıc´ıho m˚ ustku
R1516 = R1920 = R15 kR16 = R19 kR20 = 10kk100 = 99,01 Ω Napˇet’ov´e zes´ılen´ı rozv´aˇzen´eho m˚ ustku zajiˇst’uje INA114 (IO8), a to podle rovnice (7.3), katalogov´ y list INA114 [14]. AU = 1 +
50k Rzes
(7.3)
kde AU je napˇet’ov´e zes´ılen´ı (7.3) a Rzes je velikost rezistoru nebo kombinace rezistor˚ u pˇripojen´ ych ke svork´am 1 a 8. Hodnotou tohoto odporu se nastavuje v´ ysledn´e zes´ılen´ı OZ.
Rzes = R23 kR24 = 4k7k290 = 360,12 Ω AU
= 1+
50k Rzes
=1+
50k 360,12
= 139,84
S pˇredpokladem, ˇze budeme mˇeˇrit teplotu do 100 ◦ C ∼ Rpt100 = 138,5 Ω, pro vyv´aˇzen´ y m˚ ustek bude platit:
28
RZ
= (R1516 + Rpt100 ) k (R17 + R1920 ) = (99,01 + 138,5) k (100 + 99,01) = 108,281 Ω
UZ
= IZ · RZ = 3,69 · 10−3 · 108,281 = 0,4 V
Upt100 = UZ ·
Rpt100 Rpt100 +R1516 R1920 R1920 +R17
= 0,4 ·
= 0,4 ·
138,5 138,5+99,01
99,01 99,01+100
= 0,233 V
U1920
= UZ ·
∆U
= Upt100 − U1920 = 0,233 − 0,1988 = 0,0342 V
Uout
= AU · ∆U = 139,84 · 0,0342 = 4,784 V
= 0,1988 V
Stejn´ ym matematick´ ym postupem pro teplotu 0 ◦ C ∼ Rpt100 = 100 Ω dostaneme Uout = 0,255 V . Vypoˇcten´e hodnoty jsou pouze orientaˇcn´ı. Skuteˇcn´e hodnoty proud˚ u a napˇet´ı dostaneme aˇz pˇri pˇresn´em zmˇeˇren´ı hodnot vˇsech rezistor˚ u. Krom rezistor˚ u pouˇzit´ ych v m˚ ustku a v zesilovac´ı ” vˇetvi“ IO8 jsou vˇsechny ostatn´ı v ˇradˇe E12 s pˇresnost´ı ±1%. V m´ıstech, kde nen´ı nutn´a vysok´ a stabilita, a je takov´ yto rezistor pouˇzit, doch´az´ı k odklonu od nomin´aln´ıch hodnot deklarovan´eho el. odporu a v´ ysledky v´ ypoˇct˚ u se tak mohou v´ıce ˇci m´enˇe od skuteˇcn´ ych odklonit. Skuteˇcn´e hodnoty jsou pro etalon 0 ◦ C (tab. 8.5) k naleznut´ı v pˇr´ıloze C.2. novac´ı diody D1 a D2 . Ve sch´ematu analogov´e ˇc´asti (pˇr´ıloha ˇc.A.3) lze vystopovat usmˇerˇ Jedn´a se o kˇrem´ıkov´e Schottkyho diody, u kter´ ych je vyuˇzita jejich n´ızk´a u ´roveˇ n prahov´eho ’ napˇet´ı. Napˇet ov´ y v´ ystup IO8 je pˇr´ımo pˇriveden na vstupn´ı kontakty A/D pˇrevodn´ıku a pokud by doˇslo k u ´pln´emu rozv´aˇzen´ı m˚ ustku, poˇskozen´ım nebo odpojen´ım PT100, objev´ı se na v´ ystupu IO2 napˇet´ı odpov´ıdaj´ıc´ı t´emˇeˇr zdrojov´ ym −12 V . Toto napˇet´ı by zcela urˇcitˇe A/D poˇskodilo. Antis´eriov´ ym zapojen´ım tˇechto dvou diod se tohoto snadno vyvarujeme. Dioda D1 pak bude chr´anit v´ ystup pˇred napˇet´ım vˇetˇs´ım jak 5,25 V a D2 pˇred z´aporn´ ym napˇet´ım vˇetˇs´ım −0,25 V .
7.2 7.2.1
ˇ ıslicov´ C´ aˇ c´ ast Komunikace mezi prvky
Centrem veˇsker´eho dˇen´ı je µP (IO10). Mikroprocesor vyhodnocuje vzorky, linearizuje pr˚ ubˇeh teplotn´ıho ˇcidla, sn´ım´a povely z kl´avesnice, vypisuje v´ ysledky mˇeˇren´ı na displej a ovl´ad´a v´ ykonovou z´atˇeˇz. Kromˇe A/D pˇrevodn´ıku (IO9) a LCD displeje (IO11), je k µP pˇripojena uˇzivatelsk´ a kl´avesnice o ˇctyˇrech tlaˇc´ıtk´ach (T 1–T 4), informaˇcn´ı LED (LD6) a tranzistor (T 1) sp´ınaj´ıc´ı optotriak. Tlaˇc´ıtka T L1 a T L3 slouˇz´ı k pohybu mezi jednotliv´ ymi nastavovac´ımi prvky, a T L2 s T L4 k samotn´e zmˇenˇe nastaven´ı +/-.
A/D pˇ revodn´ık Jako A/D pˇrevodn´ık byl vybr´an 16-ti bitov´ y Σ-∆ AD7705 od firmy Analog Devices [13]. U nˇehoˇz je bitov´a hloubka slova v´ıce neˇz dostateˇcn´a a niˇzˇs´ı vzorkovac´ı frekvence je pro sn´ım´an´ı teploty
29
nepodstatn´a – nosn´ y sign´al nezasahuje do vyˇsˇs´ıch kmitoˇctov´ ych spekter. N´ızk´a hladina ˇsumu je pak d´ana vlastn´ı architekturou Σ∆. Pˇrevodn´ık vyˇzaduje dvˇe napˇet’ov´e reference, vymezuj´ıc´ı dvˇe krajn´ı hodnoty vstupn´ıho sign´alu. K tomuto u ´ˇcelu jsou z IO vyvedeny dva piny. REF (−), pro pouˇzitou unipol´arn´ı orientaci, vyjadˇruje bin´arn´ı nulu tj. doln´ı hranici, od n´ıˇz bude vstupn´ı sign´al sn´ım´an a d´ale REF (+) vyjadˇruj´ı hodnotu 216 − 1, bin´arn´ı maximum, kter´eho lze z pˇrevodn´ıku z´ıskat. Ze vstupn´ıch kan´al˚ u vyuˇz´ıv´a pouze prvn´ı AIN 1, druh´ y AN 2 je nepˇripojen. Vstupn´ım sign´alem pro AIN 1 je v´ ystup z analogov´e desky, napˇet´ı 0–5 V . Pˇrevodn´ık rovnˇeˇz potˇrebuje vlastn´ı krystal ˇci rezon´ator. Z jeho kmitoˇctu se odv´ıj´ı vzorkov´an´ı vstupn´ıho sign´alu, pˇr´ıstup a z´apis do registr˚ ua velkou mˇerou i hladina v´ ystupn´ıho ˇsumu. Jelikoˇz nepotˇrebujeme vysokou vzorkovac´ı frekvenci, ale jde n´am sp´ıˇse o n´ızk´ y v´ yskyt ˇsumu, zvolil jsem krystal o frekvenci 2,457 M Hz. Pro naprogramov´an´ı procesoru je d˚ uleˇzit´ y zp˚ usob komunikace s t´ımto A/D pˇrevodn´ıkem. AD7705 disponuje komunikaˇcn´ı sbˇernic´ı Microwire (vych´azej´ıc´ı ze starˇs´ı SPI). Jako optimum v´ yrobce doporuˇcuje pouˇzit´ı ˇctyˇr vodiˇc˚ u: vstupn´ı a v´ ystupn´ı s´eriov´a linka DIN a DOU T , hodinov´ y sign´al generovan´ y µP SCLK a DRDY (Data ReaDY) pro status dokonˇcen´e operace. DRDY vˇsak nen´ı nezbytnˇe nutn´ y, pokud se dodrˇz´ı ˇcasov´e intervaly mezi instrukcemi. Dalˇs´ımi kontakty krom nap´ajen´ı jsou; RESET , kter´ y je trvale pˇripojen na +5V a CS (Chip Select). Protoˇze se na s´eriov´e lince vyskytuje jen jedno zaˇr´ızen´ı, CS je pro trvalou komunikaci s t´ımto obvodem pˇrizemnˇen [13].
LCD displej Zapojen´ı je zcela zˇreteln´e z pˇr´ılohy A.3. Komunikace mezi µP a integrovan´ ym ˇradiˇcem Hitachi HD44780U prob´ıh´a z d˚ uvodu uˇsetˇren´ı pin˚ u µP po ˇctyˇrbitov´e sbˇernici. Ovl´ad´an´ı ˇradiˇce se prov´ad´ı pomoc´ı dvou ˇr´ıd´ıc´ıch kontakt˚ u RS a R/W a jednoho hodinov´eho sign´alu E. Pˇrivedenou logickou u ´rovn´ı na RS d´av´ame ˇradiˇci vˇedˇet jak´eho typu budou n´asleduj´ıc´ı slovo, RS = 1 informuje o n´asleduj´ıc´ı instrukci a RS = 0 o n´aslednˇe pos´ılan´ ych datech. R/W = 0 pak nastavuje z´apis na displej a R/W = 1 ˇcten´ı z nˇej, v´ıce v [15].
7.2.2
Tepeln´ a setrvaˇ cnost z´ atˇ eˇ ze
Pokud se pomoc´ı ovl´adac´ıch prvk˚ u definuje interval hystereze termostatu, pˇredpokl´ad´ame, ˇze se regulovan´a teplota bude vyskytovat pr´avˇe v tomto intervalu hodnot. M˚ uˇze ale doj´ıt k tomu, ˇze se vlivem velk´e tepeln´e setrvaˇcnosti v´ ykonov´eho akˇcn´ıho ˇclenu (topen´ı) teplota regulovan´eho prostˇred´ı bude zvyˇsovat i po vypnut´ı nap´ajen´ı topen´ı. Tuto neˇz´adouc´ı vlastnost je tˇreba ˇreˇsit pomoc´ı programov´eho vybaven´ı mikroprocesoru a to ˇcastˇejˇs´ım odeˇctem a vyhodnocov´an´ım mˇeˇren´ ych hodnot pr´avˇe ke konci definovan´eho intervalu teplot – horn´ı meze hystereze. Program je nastaven tak, aby vypnul spojit´e nap´ajen´ı topen´ı jeˇstˇe pˇred vrchn´ım bodem intervalu hystereze, ne aˇz pˇr´ımo na nˇem. Pak se jiˇz teplota zvyˇsuje sp´ın´an´ım akˇcn´ıho ˇclenu kr´atk´ ymi diskr´etn´ımi impulsy, a to do t´e doby, neˇz dos´ahne k horn´ımu bodu hystereze, kde se nakonec nap´ajen´ı topen´ı definitivnˇe pˇreruˇs´ı.
30
7.3
Programov´ e vybaven´ı
Ihned po zapnut´ı nap´ajen´ı se provede nulov´an´ı konstant a v´ ystup˚ u. Druh´ ym krokem je inicializace A/D pˇrevodn´ıku, pˇri n´ıˇz se nastavuje takt vnˇejˇs´ıho oscil´atoru, kalibrace z napˇet’ov´e reference IO5, unipol´arn´ı orientace vstupn´ıho sign´alu a zes´ılen´ı. Po 4-bitov´e paraleln´ı sbˇernici LCD displeje se nejprve pos´ılaj´ı horn´ı 4 bity 8-bitov´eho slova, za nimi, po taktu hodinov´eho impulsu E, n´asleduj´ı doln´ı 4 bity. Po zapnut´ı programu se nejprve provede inicializace displeje instrukˇcn´ımi povely, o jak´ y typ displeje se jedn´a, zp˚ usob ˇ c Hitachi HD44780U spoleˇcnˇe s integrovanou pamˇet´ı posuvu kurzoru, blik´an´ı kurzoru, atd. Radiˇ CGRAM (64B) dok´aˇze vytvoˇrit a uchovat aˇz 8 uˇzivatelsk´ ych znak˚ u. Toho je vyuˇzito pro znak ’◦ ’, kter´ y se v dod´avan´e znakov´e sadˇe nevyskytuje.
Obrazovka Aktu´ aln´ı teplota Regulovat na Hystereze Pulzn´ı ˇr´ızen´ı
Veliˇ cina Ta Tr Th Tpr
Min. rozsahu −3,9 ◦ C +0,1 ◦ C −9,9 ◦ C −9,9 ◦ C
Max. rozsahu +99,9 ◦ C +99,9 ◦ C −0,1 ◦ C −0,1 ◦ C
Tab. 7.2: Uˇ zivatelsk´ e menu Uk´azkou uˇzivatelsk´eho menu je tab. 7.2. Pˇri nastaven´ı napˇr. Tr = 26 ◦ C, Th = −1 ◦ C a Tpr = −0,5 ◦ C se topen´ı zap´ın´a pˇri teplotˇe 25 ◦ C a pˇri 25,5 ◦ C pˇrech´az´ı ze spojit´eho na impulsov´e ˇr´ızen´ı tepeln´e z´atˇeˇze a to se stˇr´ıdou 1:20 (perioda 1 s). LED dioda LD6 informuje o aktu´aln´ım stavu termostatu. Sv´ıt´ı-li, termostat top´ı a nach´ az´ı se uvnitˇr hysterezn´ı smyˇcky, nesv´ıt´ı-li, termostat se rovnˇeˇz nach´az´ı uvnitˇr smyˇcky, ale netop´ı. Blik´a-li se stˇr´ıdou 1/20 (perioda 1 s), aktu´aln´ı teplota je nad smyˇckou nebo mimo rozsah, termostat netop´ı, naopak blik´a-li se stˇr´ıdou 19/20, termostat top´ı a teplota je pod hysterezn´ı smyˇckou.
Dalˇ s´ı vlastnosti: • aktualizace teploty prob´ıh´a kaˇzd´ ych 250 ms • pˇri odpojen´em ˇci poˇskozen´ım teplotn´ım senzoru displej zobraz´ı upozornˇen´ı mimo rozsah“ ” • tlaˇc´ıtka T L2 a T L4 reaguj´ı na d´elku stisku zrychlen´ ym posuvem • v´ıce podrobnost´ı pˇr´ımo v pozn´amk´ach pˇr´ılohy D
31
8 8.1
ROZBOR CHYB Teplotn´ı senzor
Odporov´e teplotn´ı senzory jsou normovan´e a jejich parametry klasifikuje norma IEC-751 (IECˇ CSN 751). Ta pro PRTD vyjadˇruje pomˇer elektrick´eho odporu W100 = 1,385 a z´avislost na teplotˇe (8.1).
Rpt100 = 100 1 + 3,90802 · 10−3 t − 5,80165 · 10−7 t2 − 4,27350 · 10−12 t3 (t − 100)
(8.1)
Pˇredeˇsl´ y vzorec plat´ı pro PRTD o nomin´aln´ı hodnotˇe 100 Ω pˇri 0 ◦ C. Mocninn´ y ˇclen 3. ˇr´adu se uplatˇ nuje pouze pro t < 0 ◦ C a b´ yv´a ˇcasto zanedb´av´an. Jeho vynech´an´ım z´ısk´av´ame 8.2. Rpt100 = 100 1 + 3,90802 · 10−3 t − 5,80165 · 10−7 t2
(8.2)
Jak jiˇz bylo ˇreˇceno v 2.1.4 velk´a ˇcasov´a stabilita a chemick´a neteˇcnost umoˇzn ˇuj´ı velmi pˇresn´e odhady chyb. Ty jsou rovnˇeˇz pod z´aˇstitou norem, konkr´etnˇe DIN EN 60751 a IEC 751, kter´e definuj´ı nejbˇeˇznˇejˇs´ı tˇr´ıdy pˇresnost´ı, tabulka 8.1.
Tˇ r´ıda 1/3B A B 2B
Dovolen´ e odchylky teploty [◦ C] ± (0,100 + 0,0017|t|) ± (0,15 + 0,002|t|) ± (0,30 + 0,005|t|) ± (0,6 ± 0,01|t|)
Urˇ ceno pro teploty – < 650 ◦ C < 850 ◦ C –
Tab. 8.1: Tˇ r´ıdy pˇ resnosti platinov´ ych teplotn´ıch senzor˚ u V seznamu jsou uvedeny pouze 4 nejbˇeˇznˇejˇs´ı tˇr´ıdy. Tˇr´ıd je pochopitelnˇe daleko v´ıc, ale zpravidla se jedn´a o speci´aln´ı teplotn´ı senzory, kde jde cena do tis´ıc˚ u Kˇc.
8.2
Teplotn´ı stabilita analogov´ eho obvodu
Nem˚ uˇze poˇc´ıtat s t´ım, ˇze bude mˇeˇr´ıc´ı pˇr´ıstroj um´ıstˇen v teplotnˇe stabiln´ım prostˇred´ı. Za norm´aln´ıch okolnost´ı a pˇri pouˇzit´ı bˇeˇzn´ ych integrovan´ ych prvk˚ u by chyba, kterou do mˇeˇren´ı vn´aˇs´ı zmˇena teploty prostˇred´ı mˇeˇr´ıc´ıho u ´stroj´ı, byla znaˇcnˇe velik´a. Napˇr. rezistory na r˚ uzn´ ych pozic´ıch v obvodu mohou nemalou mˇerou ovlivnit chybu zpracov´avan´eho v´ ystupn´ıho napˇet´ı Uout . Jako pˇr´ıklad uvedu rezistory R23 a R24 , kter´e zajiˇst’uj´ı celkov´e zes´ılen´ı IO8. Pˇri zes´ılen´ı AU = 139,84 je podstatn´e aby tato hodnota nekol´ısala. Proto jsou mezi tˇemito kontakty uˇzity rezistory s vyˇsˇs´ı teplotn´ı stabilitou ±25 ppm, nikoliv odporov´e trimry, kter´e takovou stabilitou zdaleka nedisponuj´ı. U ostatn´ıch obvodov´ ych element˚ u je to obdobn´e. Teplotn´ı zmˇena m´a vliv na referenˇcn´ı napˇet´ı, zes´ılen´ı a velikost vstupn´ıho offsetu operaˇcn´ıch zesilovaˇc˚ u, aj. Viz n´ıˇze. Pro zapojen´ı je potˇreba v´ıce napˇet’ov´ ych referenc´ı (pro nap´ajen´ı proudov´eho zdroje a A/D pˇrevodn´ıku). Tyto obvody vyuˇz´ıvaj´ıc´ı jej´ı referenˇcn´ı hodnoty jsou zapojeny tak, aby se pˇr´ıpadn´ a referenˇcn´ı chyba ve v´ ysledku alespoˇ n ˇc´asteˇcnˇe kompenzovala poklesem ˇci pˇr´ır˚ ustkem pˇrenos˚ u
32
Souˇ c´ astka AD586 (IO5) R5 R6 OPA177 (IO6) INA105 (IO7) R13 , R14 RZ Rzes INA114 (IO8) AD7705 (IO9)
Z´ avislost na T ∆UOD = 25 ppm Tc = 50ppm ∆UIO = 0,1 µV /◦ C ∆UIO = 5 µV /◦ C, UGE = 1 ppm Tc = 50 ppm Tc = 25 ppm Tc = 25 ppm ∆UIO /∆T = 0,1 + 0,5/AU µV /◦ C ∆UIO = 0,5 µV /◦ C, UF S = 0,5 µV /◦ C
Pozn´ amka chyba nap. dˇeliˇce v nejhorˇs´ı moˇzn´e kombinaci
chyba rezistor˚ u pouˇzit´ ych v m˚ ustku chyba paraleln´ıho zapojen´ı R23 a R24 nap. offset odpov´ıd´ a pouˇzit´e unipol´ arn´ı orientaci
Tab. 8.2: Seznam souˇ c´ astek se stˇ eˇ zejn´ımi teplotn´ımi z´ avislostmi K(−) jednotliv´ ych zesilovac´ıch prvk˚ u v obvodu a to bez znateln´eho projevu na v´ ystupu Uout . To je moˇzno ovˇeˇrit v´ ypoˇcty z kap. 7.1.2. N´asleduj´ıc´ı u ´vahy plynou z v´ yrobci ud´avan´ ych teplotn´ıch z´avislost´ı pouˇzit´ ych souˇc´astek. V tab. 8.2 jsou uvedeny jen ty obvodov´e prvky, kter´e se nejvˇetˇs´ı mˇerou pod´ılej´ı na chybovosti ´ cel´eho mˇeˇr´ıc´ıho u ´stroj´ı. Udaje a z´avislosti kter´e jsou obsaˇzeny v t´eto tabulce jsou rovnˇeˇz jen ty s nejvˇetˇs´ım vlivem na v´ ystupn´ı napˇet´ı Uout . Pojem ∆UOD pak vyjadˇruje v´ ystupn´ı napˇet’ov´ y drift z´avisl´ y na T , Tc je teplotn´ı koeficient, ∆UIO napˇet’ov´ y offset vstupn´ıho napˇet´ı z´avisl´ y na T , UGE chyba zes´ılen´ı pˇri ∆T a UF S napˇet’ov´a odchylka v d˚ usledku velikosti rozsahu v´ ystupn´ıch vzork˚ u D. Samotn´e odchylky jsou poˇc´ıt´any pro skokovou zmˇenu teploty +1 ◦ C pro Rpt100 = 100 a 138,5 Ω.
Souˇ c´ astka AD586 (IO5) R5 R6 OPA177 (IO6) INA105 (IO7) R13 , R14 RZ Rzes INA114 (IO8) AD7705 (IO9) celkem
∆U/◦ C [V ] 7,43 · 10−6 2,37 · 10−5 2,91 · 10−8 1,75 · 10−6 −1,47 · 10−5 −3,68 · 10−4 −2,05 · 10−8 7,00 · 10−5 2,97 · 10−7 −3,27 · 10−4
∆T /◦ C [◦ C] 1,56 · 10−4 4,98 · 10−4 6,13 · 10−7 3,69 · 10−5 −3,10 · 10−4 −7,74 · 10−3 −4,31 · 10−7 1,47 · 10−3 6,25 · 10−6 −6,87 · 10−3
∆D/◦ C [dek] 0,0974 0,310 3,82 · 10−4 0,023 −0,193 −4,82 −2,68 · 10−4 0,918 3,90 · 10−3 −4,28
Tab. 8.3: Odchylky v´ ystupn´ıch veliˇ cin pro Rpt100 = 100 Ω skokov´ e zmˇ eny teploty o +1 ◦ C v okol´ı analogov´ ych obvod˚ u Uk´azka v´ ysledk˚ u teplotn´ıch z´avislost´ı pro Rpt100 = 100,5 Ω je uvedena v tab. 8.3 a pro Rpt100 = 138,5 Ω v tab. 8.4. Z tˇechto v´ ysledk˚ u je patrn´ y rozd´ıl v celkov´e chybˇe na velikosti rozv´aˇzen´ı m˚ ustku. Je to d´ano t´ım, ˇze se zvyˇsuj´ıc´ım se napˇet’ov´ ym rozd´ılem na m˚ ustku ∆U kles´ a vliv pod´ılu jednotliv´ ych rezistor˚ u v m˚ ustku na chybu, a to spoleˇcnˇe se zmenˇsuj´ıc´ı se chybou zes´ılen´ı IO8. Naopak chyba kter´a s rozv´aˇzenost´ı“ m˚ ustku roste nejv´ıce je zmˇena teplotn´ıho ” koeficientu Tc rezistor˚ u R13 a R14 , z nichˇz se odv´ıj´ı v´ ystupn´ı proud IO7. Obdobn´e v´ ypoˇcty se provedou rovnˇeˇz pro Rpt100 = 100 Ω. V´ ysledkem je pak pˇribliˇzn´a, t´emˇeˇr symetrick´a charakteristika (obr. 8.1) – z´avislost odchylky od zobrazovan´e teploty ∆T v d˚ usledku zmˇeny napˇet´ı na ◦ v´ ystupu IO8 vlivem oteplen´ı o ±1 C na skuteˇcn´e hodnotˇe mˇeˇren´e teplotn´ım senzorem Tpt100 . Moˇznost srovn´an´ı se skuteˇcn´ ymi hodnotami nab´ız´ı tabulka C.3.
33
Souˇ c´ astka AD586 (IO5) R5 R6 OPA177 (IO6) INA105 (IO7) R13 , R14 RZ Rzes INA114 (IO8) AD7705 (IO9) celkem
∆U/◦ C [V ] 1,39 · 10−4 −4,43 · 10−4 5,45 · 10−7 3,28 · 10−5 −2,76 · 10−4 −2,93 · 10−4 −3,84 · 10−7 7,00 · 10−5 5,57 · 10−6 −7,64 · 10−4
∆T /◦ C [◦ C] 2,93 · 10−3 −9,32 · 10−3 1,15 · 10−5 6,91 · 10−4 −5,80 · 10−3 −6,16 · 10−3 −8,07 · 10−6 1,47 · 10−3 1,17 · 10−4 −1,61 · 10−2
∆D/◦ C [dek] 1,82 −5,81 7,15 · 10−3 0,43 −3,61 −3,84 −5,03 · 10−3 0,918 7,29 · 10−2 −10,01
Tab. 8.4: Odchylky v´ ystupn´ıch veliˇ cin pro Rpt100 = 138,5 Ω skokov´ e zmˇ eny teploty o +1 ◦ C v okol´ı analogov´ ych obvod˚ u 0,020 ∆T [◦ C] 0,015 0,010 0,005 0 0
20
40
60
−0,005
80
100 Tpt100 [◦ C]
−0,010 −0,015 −0,020
Obr. 8.1: Z´ avislost odchylky teploty ∆T vlivem oteplen´ı o ±1 ◦ C na Tpt100
8.3
Linearizace
ych zp˚ usobu jak linearizovat pr˚ ubˇehy teplotn´ıch Jak jsem se jiˇz zm´ınil v kapitole 3, jeden z moˇzn´ senzor˚ u, je naprogramovat procesor, tak aby podle funkˇcn´ı hodnoty napˇet´ı dopoˇc´ıt´aval“ od” pov´ıdaj´ıc´ı teplotu. Podm´ınkou pro linearizaci je pˇresn´e zmˇeˇren´ı alespoˇ n dvou hodnot napˇet´ı pro urˇcit´e teploty. Dvˇe odeˇcten´e dekadick´e hodnoty v´ ystupu A/D pˇrevodn´ıku se uloˇz´ı do registru spoleˇcnˇe s rovnic´ı vyjadˇruj´ıc´ı pr˚ ubˇeh PRTD a jak´akoliv nov´a pˇrich´azej´ıc´ı hodnota bude mikroprocesorem nejprve podle t´eto rovnice pˇrepoˇc´ıt´ana. ˇ ım v´ıce tˇechto referenˇcn´ıch bod˚ C´ u k sestaven´ı linearizaˇcn´ı funkce pouˇzijeme, t´ım (pro pˇresnost) l´epe. Nejjednoduˇsˇs´ım zp˚ usobem jak referenˇcn´ı body z´ıskat, je pˇripojit ke vstupu vyhrazen´emu pro odporov´ y senzor, pˇresnou odporovou dek´adu, kterou pˇredstavuj´ı odporov´e etalony v tab. 8.5, nahrazuj´ıc´ı rozsah teplot 0–100 ◦ C platinov´eho teplotn´ıho senzoru PT100. Po odeˇcten´ı vˇsech dekadick´ ych hodnot v´ ystupn´ıch sign´al˚ u byla sestavena charakteristika ∆T = f (D), obr. 8.3. D˚ ukazem, ˇze byt’ i nepatrn´e odchylky el. odporu od linearity, kter´e se na
34
prvn´ı pohled z charakteristiky 8.2 zdaj´ı nepodstatn´e, po pˇreveden´ı na ∆T mohou m´ıt z´asadn´ı vliv na v´ ystupn´ı teplotu, viz. obr. 8.3. Z´avislost m´a mocninn´ y charakter a vyjadˇruje nelinearitu OZ INA114 a ADC AD7705, zejm´ena druh´eho zmiˇ novan´eho prvku. Odchylka pro v´ ystupn´ı teplotu ◦ pˇredstavuje pˇribliˇznˇe ±3 C.
Etalon 0 10 20 30 35 40 50 75 80 100
R [Ω] 99,997 103,880 107,761 111,610 113,581 115,486 119,408 128,998 130,880 138,433
T [◦ C] −0,013 9,937 19,912 29,834 34,925 39,855 50,026 75,026 79,956 99,811
∆D [dek] 3170 9950 16602 23077 26339 29460 35808 50845 53718 62435
Tab. 8.5: Seznam pouˇ zit´ ych etalon˚ u
135 R[Ω] 130 125 120 115 0
10000
20000
30000
40000
50000
60000
110 105 100 D[dek] 95
Obr. 8.2: Nelinearita ADC s aproximaˇ cn´ı funkc´ı
V prvn´ım kroku zpracov´an´ı sign´alu je nutn´e dekadickou hodnotu v´ ystupn´ıho slova A/D pˇrevodn´ıku pˇrepoˇc´ıtat na hodnotu el. odporu Rvysl . Abychom vylouˇcili i nelinearitu A/D pˇrevodu, je tˇreba tento pˇrepoˇcet vyj´adˇrit jako mocninnou funkci 2. ˇr´adu kompenzuj´ıc´ı tuto chybu (8.3). V´ ysledkem kompenzace je podstatnˇe menˇs´ı ±0,012 ◦ C odklon od line´arn´ı z´avislosti, obr. 8.4. Rvysl = 9 · 10−10 D2 + 5,596 · 10−4 D + 98,2185
Nelinearita samotn´eho teplotn´ıho ˇcidla je zn´azornˇena v kap. 3 a na obr. 3.4.
35
(8.3)
4 ∆T [◦ C] 3 2 1 0 0
10000
20000
30000
40000
50000
60000
−1 −2 −3 D[dek]
−4
Obr. 8.3: Nelinearita ADC 0,015 ∆T [◦ C] 0,010
0,005
0 0
10000
20000
30000
40000
50000
60000
−0,005
−0,010 D[dek]
−0,015
Obr. 8.4: Kompenzace nelinearity ADC
2 Rvysl = 100 −5,80165 · 10−7 Tvysl + 3,90802 · 10−3 Tvysl + 1
(8.4)
Z normovan´e charakteristick´e funkce PT100 8.4 je tˇreba vyj´adˇrit teplotu T , v´ ysledkem je rovnice (8.5), jej´ıˇz odchylku od skuteˇcn´e mˇeˇren´e teploty charakterizuje grafick´a z´avislost 8.5.
Tvysl =131,59033899196 ·
p
Rvysl + 561,14562770565 − 25,712752239028
2 + 0,00194115Rvysl − 0,3884Rvysl + 19,4235
(8.5)
Po takto zvolen´e linearizaci je zaruˇcen odklon od line´arn´ı z´avislosti do ±0,006 ◦ C. Ale i tuto hodnotu lze d´ale zmenˇsovat. Ovˇsem dalˇs´ım zmenˇsov´an´ım chyby se do v´ ypoˇct˚ u dost´avaj´ı
36
3
mocninn´e funkce vyˇsˇs´ıch ˇr´ad˚ u, coˇz klade vyˇsˇs´ı n´aroky na statickou i dynamickou pamˇet’ µP vˇcetnˇe vyˇsˇs´ıch poˇzadavk˚ u na v´ ypoˇcetn´ım v´ ykon. To vˇsak nen´ı nezbytnˇe nutn´e, nebot’ se v zapojen´ı analogov´e ˇc´asti objevuj´ı faktory, kter´e do celkov´e chyby zasahuj´ı vˇetˇs´ı mˇerou.
0,006 ∆T [◦ C]
0,005 0,004 0,003 0,002 0,001 0 100 −0,001
105
110
115
120
125
130
135
140
−0,002 −0,003 −0,004 −0,005 R[Ω]
−0,006
Obr. 8.5: Kompenzace nelinearity PT100 Souˇctem tˇechto relativn´ıch chyb nelinearity se dostaneme k odchylce nepˇresahuj´ıc´ı hodnotu ±0,017 ◦ C v cel´em rozsahu teplot 0 – 80 ◦ C. Bude vˇsak platit pouze pokud um´ıst´ıme mˇeˇr´ıc´ı pˇr´ıstroj do teplotnˇe konstantn´ıho prostˇred´ı o teplotˇe pˇri n´ıˇz prob´ıhala kalibrace. Naˇstˇest´ı je tato relativn´ı odchylka natolik m´ala, ˇze s rezervou pokryje tepelnou nestabilitu prostˇred´ı, kter´emu je termostat vystaven.
8.4
ˇ Sumov´ e vlastosti
ˇ Spr´avn´ ym v´ ybˇerem zesilovac´ıch prvk˚ u byla doc´ılena velmi n´ızk´a hladina ˇsumu. Sumov´ a ˇc´ısla jednotliv´ ych zesilovac´ıch prvk˚ u dosahuj´ı tak mal´ ych hodnot, ˇze se na v´ ysledn´ ych v´ ypoˇctech pod´ıl´ı jen s nepatrn´ ym vlivem. Dokladem toho je pˇr´ıloha C.1. Namˇeˇren´a hodnota napˇet’ov´eho ˇsumu vstupn´ıho sign´alu A/D pˇrevodn´ıku C.5 byla dokonce menˇs´ı neˇz-li je napˇet’ov´a hodnota rozd´ılu dvou po sobˇe jdouc´ıch vzork˚ u (8.6). ∆Uout = 76,29 µV ∆R = 6,186 · 10−4 Ω ∆D = 1 dek ∼ ∆T = 1,606 · 10−3 ◦ C
(8.6)
ym rozliˇsen´ım N´ızk´a hladina kvantovac´ıho ˇsumu A/D pˇrevodn´ıku (8.7) je d´ana vysok´ pˇrevodu. Vstupn´ı vzorkovan´ y sign´al proch´az´ı integraˇcn´ı smyˇckou pˇrevodn´ıku s poˇctem opakov´an´ım odpov´ıdaj´ıc´ı d´elce v´ ystupn´ıho bitov´eho slova, tedy 16x. Opakuj´ıc´ı se smyˇcka odeˇc´ıt´ a v´ ystupn´ı napˇet´ı od vstupn´ıho, kter´e je d´ale integrov´ano. T´ım doch´az´ı i k odeˇctu kvantovac´ı chyby, kter´a se v kaˇzd´em kroku smyˇcky zmenˇsuje. Hrub´e pˇrevzorkov´an´ı vstupn´ıho sign´alu m´ a za n´asledek zvˇetˇsen´ı ˇs´ıˇrky p´asma a pokles hustoty kvantizaˇcn´ıho ˇsumu [16].
37
s Z 1 q/2 2 2−n Uqi = ∆Uain x dx = √ ∆Uain q −q/2 12 2−16 Uqi = √ 5 = 22 µV 12
(8.7)
kde Uqi vyjadˇruje napˇet’ovou hodnotu kvantovac´ıho ˇsumu, ∆Uain napˇet’ov´ y rozsah pˇrij´ıman´eho sign´alu analogov´ ym vstupem ADC, q vzd´alenost dvou kvantizaˇcn´ıch hladin a n bitovou hloubku pˇrevodu. N´ızk´ y pod´ıl v´ ystupn´ıho ˇsumu je d´an ˇc´ıslicov´ ym FIR filtrem funkce sinc3 , kter´ y odstraˇ nuje ˇ aditivn´ı ˇsum zp˚ usoben´ y A/D pˇrevodem. S´ıˇrka p´asma tohoto filtru se odv´ıj´ı od kmitoˇctu extern´ıho oscil´atoru a zes´ılen´ı, do kter´ ych je moˇzn´e zasahovat prostˇrednictv´ım registr˚ u ADC. Pro pouˇzit´ y krystal 2,4576 M Hz je mezn´ı kmitoˇcet nastaven jako nejmenˇs´ı moˇzn´ y a to 5,24 Hz.
38
9
´ ER ˇ ZAV
Koneˇcn´ y n´avrh pˇresn´eho termostatu poukazuje na jednu z v´ıce moˇznost´ı jak´ ym zp˚ usobem sn´ımat a regulovat teplotu. Koncepˇcnˇe nelze nikdy, s oddˇelen´ ymi sn´ımac´ımi a bud´ıc´ımi obvodov´ ymi bloky, dos´ahnout pˇresnosti monolitick´ ych integrovan´ ych obvod˚ u, kter´e jsou pˇr´ımo k u ´ˇcelu buzen´ı teplotn´ıch (a jin´ ych) senzor˚ u urˇceny. Precizn´ı SMD proveden´ı, pˇresn´e a stabiln´ı proudov´e zdroje a proudov´e reference, linearizaˇcn´ı obvody, vˇse integrovan´e v jednom pouzdˇre, pˇr´ımo pˇredurˇcuje tyto obvodov´e prvky k vˇedeck´ ym u ´ˇcel˚ um s odchylkou na hranici ±0,001 ◦ C. Toto zapojen´ı nem˚ uˇze tyto obvody nikterak nahradit. S pˇresnost´ı ±0,1 ◦ C vˇsak reprezentuje jinou cestu (moˇznost), jak vysok´e pˇresnosti dos´ahnout za daleko pˇrijatelnˇejˇs´ı cenu. Chyby vznikl´e neline´arn´ımi pˇrevodn´ımi charakteristikami prvk˚ u, kter´e se nejvˇetˇs´ı mˇerou pod´ıl´ı pr´avˇe na t´eto chybˇe lze pˇresn´ ym promˇeˇren´ım, d˚ uslednou a pˇredevˇs´ım vhodnˇe volenou linearizac´ı do znaˇcn´e m´ıry kompenzovat. Naopak chyby vznikl´e nenulov´ ym odporem vodiv´ ych cest (spoj˚ u), zemn´ıch smyˇcek a jin´ ych vazeb, a rozd´ıln´e teplotn´ı koeficienty Tc a jin´e teplotnˇe z´avisl´e parametry r˚ uzn´ ych obvodov´ ych prvk˚ u ponˇekud komplikuj´ı n´avrh pˇresn´eho termostatu. Znaˇcn´ ym vlivem se pak pod´ıl´ı chyby ve ˇspatn´em v´ ybˇeru souˇc´astek, n´avrhu ˇci konstrukci cel´eho zaˇr´ızen´ı, kter´e jsou pr´avˇe v pˇr´ıpadˇe monolitick´ ych IO vylouˇceny. V obou pˇr´ıpadech je pak d˚ uleˇzit´ a pˇredevˇs´ım stabilita, jak teplotn´ı tak i ˇcasov´a, vˇsech pouˇzit´ ych souˇc´astek. N´avrh byl koncip´an tak, aby termostat spolupracoval s v´ıce typy platinov´ ych ˇcidel. Bˇeˇznˇe ve tˇr´ıdˇe pˇresnosti A nebo B s odchylkou ±0,15 ◦ C resp. ±0,3 ◦ C deklarovanou pˇri teplotˇe 0 ◦ C. Takto navrhnut´ y termostat dosahuje v pokojov´ ych provozn´ıch teplot´ach chyby < ±0,1 ◦ C, a to ◦ v rozsahu 0–80 C ve kter´em byl kalibrov´an. D´ıky tˇemto mal´ ym odchylk´am od skuteˇcn´e teploty, tam kde jsou poˇzadavky aplikace na vysokou pˇresnost, je pak moˇzno bˇeˇzn´ y“ pouˇzit´ y platinov´ y ” senzor vymˇenit za jin´ y kus s vyˇsˇs´ı jakost´ı a tedy i pˇresnost´ı. Samotn´ y termostat pak nebude omezuj´ıc´ım prvkem k nabyt´ı vyˇsˇs´ı pˇresnosti. Bohuˇzel nelze navrhnout obvod, jehoˇz parametry by se v ˇcase nemˇenili. Od okamˇziku kalibrace a v´ ypoˇctu pˇrevodn´ıch funkc´ı, doch´az´ı k odklonu vlastnost´ı mˇeˇr´ıc´ı soustavy a jedin´ ym ˇreˇsen´ım jak dodrˇzet poˇzadovanou pˇresnost je opˇetovn´a kalibrace. Tato ˇcasov´a nestabilita je v bˇeˇzn´ ych podm´ınk´ach jen stˇeˇz´ı mˇeˇriteln´a a jen u m´alo obvodov´ ych souˇc´astek b´ yv´a uv´adˇena, zpravidla jen u IO. V takov´em pˇr´ıpadˇe nezb´ yv´a nic jin´eho, neˇz vˇeˇrit u ´daj˚ um v´ yrobc˚ um tˇechto obvod˚ u a tˇemto hodnot´am pak podˇr´ıdit intervaly opˇetovn´ ych kalibrac´ı.
39
LITERATURA [1] KESTER, Walt; BRYANT, James; JUNG, Walt: Op Amp Applications. Section 07: Temperature sensors, Analog Devices Technical Bookstore, U.S.A., 1999 [2] BAKER, Bonne: Temperature Sensing Technologies, Microchip Technology Inc., 2002 [3] Doplnˇek pro mˇeˇren´ı teploty k mˇeˇridlu DPM 2, Amat´ersk´e r´adio, 1981, B/4 s. 155 [4] Integrovan´y pˇrevodn´ık T/I, Amat´ersk´e r´adio, 1994, A/9 s. 94 ˇ J. a kol.: Z´ [5] BROZ, aklady fyzik´ aln´ıch mˇeˇren´ı I., SPN, Praha, 1983, st. 3.1.2, st. 3.3.1 [6] VEDRAL J.: Zpracov´ an´ı a digitalizace analogov´ych sign´ al˚ u, Laboratorn´ı cviˇcen´ı: Obvody ˇ odporov´ ych sn´ımaˇc˚ u teploty, Skripta CVUT. Fakulta elektrotechnick´a. Katedra mˇeˇren´ı, Praha ´ Petr: Mikroprocesory ˇrady 8051, BEN, Praha, 1998 [7] SKALICKY, [8] HW Server. URL: http://www.hw.cz/ [9] HANKOVEC, David: Mikroprocesory 8051 [online], 2005. URL: http://www.dhservis.cz/ ´ Jaroslav: Znakov´e LCD displeje - procesory PIC [online], 2004. URL: [10] STROLENY, http://www.cmail.cz/doveda/lcd/ ´ CEK, ˇ [11] DUDA K.: S´eriov´ a rozhran´ı SPI, Microwire, I2C a CAN, syst´em Orion Z´apadoˇcesk´e univerzity v Plzni, 2002 [12] Maxim Data Sheets, Dallas Semiconductor, U.S.A. URL: http://www.maxim-ic.com/ [13] OPA177, AD586, AD7705 – Analog Devices Data Sheets, Analog Devices, U.S.A. URL: http://www.analog.com/ [14] XTR103, INA105, INA114 – Burr Brown Data Sheets, Texas Instruments, U.S.A. URL: http://www.burr-brown.com/ [15] Elatec Character (Alpha/Numeric), Graphic LCD Module Data Sheets, Germany. URL: http://www.elatecworld.com/ [16] PARK, Sangil: Principles of Sigma-Delta Modulation for Analog-to-Digital Converters, Motorola Digital Signal Processors, APR8/D
40
CON1
41
N.
PE
L1.4
CON2
VIDLICE TOPENI
N.
PE
L1
2
PE
PE
SV1
3
1
ZADNI PANEL DPS01 PE
3A
FU3
FU1 6,3A
PE
2 1
SV4
3 2 1
SV2
3 2 1
SV3 500mA
FU2
1
2
9 7
10
6
230V / 2x9V
5
TR1
1 PRI
VIDLICE 230V
S2
S1
STINENI 4
3
PE
Ovládání optotriaku
B1
C3 M1
C1 M1
+
C4 1m
C2 1m
L2
L1
C7 M1
C5 M1
+
C8 1m
C6 1m
2
1
1
VO GND
VO
GND
IO3 7912T
VI
VI
VO GND
IO2 7812T
VI
IO1 7805T
2 2 1
3
3
3
C13 M1
C11 M1
C9 M1
C12 470u
C14 470u
C10 470u
+ +
+
+
LD3
R3 3K3
LD2
R2 3K3
LD1
R1 1K
GND
-12V
+12V
+5V
A.1
+
A ´ ´ DOKUMENTACE VYKRESOV A
Sch´ ema zapojen´ı zdroje napˇ et´ı a v´ ykonov´ eˇ c´ asti termostatu
PT100
CON3
PE
1 2 3 4 G
1 2 3 4
SV1
R17 100
R19 100
-12V
R12 22
4
1 7
6
5
R22 100
R21 100
R20 10K
R14 240
R13 240
+
V-
V+
R23 4K7
8
3
2
C28 1n
3
8
1
2
C27 1n
C26 1u
C25 100n
INA105P
NC
IO7
MB3
V-
V+
IO8
1
4
5 7
MB4
+
R25 22
R26 22
R7
C30 1u +
MB2
D1 BA46
+5V
C20 100n
D2 BA46
1K
R27
C29 1u
10K C22 1u +
+12V
6
C21 1u IO6 OPA177P
R10 22
2
3
+
R9 22
-12V
-12V
R8 10K
INA114P
6
1 7 8 4
C23 100n
R24 290
1
C24 1u
1
+
C39 4,7u
MB5
R6 1K
R5 3K9
C40 100n
7 8
10
9
6 11
MB1 1
R11 22
+
REFIN(-)
REFIN(+)
AIN2(+) AIN2(-)
AIN1(+) AIN1(-)
IO9
C33 100n
C34 1u
DRDY
MCLK2
MCLK1
RESET CS
SCLK
DOUT DIN
IO5
C16 100n
C17 1u
3
2
5 4
1
13 14
12
AD586
NC NC NC
1
+5V
COM
V+
OUT TRIM NR
AD7705
+
R28 22
+5V
C18 C19 100n 6,8u
4
2
6
+
1 3 7
5 8
2
C32 33p
X1 2,457MHz
C31 33p
C15 3,3u
12 13 14 15 16 17 18 19
+5V +5V +5V
R29 4K7
R4 22
R30 4K7
+12V
+
+
R32 3K3
+5V
+
GND
AIN0-P1.0 AIN1-P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
VCC
IO10
3K3
R33
+5V
2K7
R37
S
470
R34
2 11,059MHz 3 6 7 8 9 11
4 X2
5
T1
AT89C2051P
P3.0-RXD P3.1-TXD P3.2-INTO/ P3.3-INT1/ P3.4-T0 P3.5-T1 P3.7
XTAL2
XTAL1
1
C38 22u
RST-VPP
C37 1u
+5V
P3
6k8
+
A E 2
+12V
R36
T2
+5V
S
P2 10K LD4
+5V
C35 27p
C36 27p
1k
R35
+12V
1
15 VDD GND 16
22 A
20 10
42
1
+5V
Podsviceni LED+ Podsviceni LEDPodsviceni LED+ Podsviceni LEDLCD DB7 LCD DB6 LCD DB5 LCD DB4 LCD E - Hodiny LCD RS TL2 TL3 TL1 TL4 Kontrast LCD Signal LED +5V +5V GND GND
Optotriak
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
CON4
Sch´ ema zapojen´ı DPS01
E
R16 100
R15 10K
ZADNI PANEL DPS01
A.2
Sch´ ema zapojen´ı DPS02
LD6
R41 3K3
R42 3K3
+5V
R43 3K3
+5V
+5V
R44 3K3
IO11
1 2
1 2
R46 1K8
1 2
16
1 2
1
LD5
TL1
43
TL2
TL3
3 4
3 4
R45 1K8 3 4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
+5V
TL4
LEDLED+ DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 E R/W RS V0 VDD VSS
HIGH 8B
CON5 Podsviceni LED+ Podsviceni LEDPodsviceni LED+ Podsviceni LEDLCD DB7 LCD DB6 LCD DB5 LCD DB4 LCD E - Hodiny LCD RS TL2 TL3 TL1 TL4 Kontrast LCD Signal LED +5V +5V GND GND
+5V
LOW 8B
+5V
+5V
3 4
A.3
KONTRAST GND +5V
LCD16X2
A.4
Deska ploˇ sn´ ych spoj˚ u DPS01
Obr. A.1: Deska ploˇ sn´ ych spoj˚ u DPS1 – pohled TOP
44
Obr. A.2: Deska ploˇ sn´ ych spoj˚ u DPS1 – pohled BOTTOM
45
A.5
Deska ploˇ sn´ ych spoj˚ u DPS02
Obr. A.3: Deska ploˇ sn´ ych spoj˚ u DPS2 – pohled TOP
Obr. A.4: Deska ploˇ sn´ ych spoj˚ u DPS2 – pohled BOTTOM
46
A.6
Technick´ y v´ ykres zadn´ıho panelu
47
B
ˇ ASTEK ´ ROZPISKA SOUC
Sch. znaˇ cka TR1 FU1 FU2 FU3 CON1 CON2 CON3 CON4 CON5 SV1 SV2, SV3 SV4 B1 IO1 IO2 IO3 IO4 IO5 IO6 IO7 IO8 IO9 I10 I11 D1, D2 T1, T2 X1 X2 P2 P3 LD1–6 MB1–MB6
Typ – oznaˇ cen´ı BV EI 481 1118 6,3A 3A 500mA GSD781 GSD4 XLR187B MLW20G MLW20A WAGO236 ARK210/3 ARK210/2 B80 R L7805CV L7812CV L7912CV S202S12 AD586JN OPA177FP INA105KP INA144BP AD7705BRU AT89C4051 EL1602A BA46 BC337-40 Q 2.457MHz QM 11.059 10k 4K7 LED3mm
Cena/ks 132 Kˇc 3 Kˇc 3 Kˇc 3 Kˇc 10 Kˇc 14 Kˇc 20 Kˇc 14 Kˇc 14 Kˇc 20 Kˇc 11 Kˇc 7 Kˇc 8 Kˇc 6 Kˇc 7 Kˇc 7 Kˇc 274 Kˇc 296 Kˇc 165 Kˇc 182 Kˇc 286 Kˇc 236 Kˇc 36 Kˇc 179 Kˇc 3 Kˇc 2 Kˇc 17 Kˇc 15 Kˇc 8 Kˇc 8 Kˇc 8 Kˇc –
V´ yrobce Hahn – – – Schurter Schurter – – – Wago PTR Messtechnik PTR Messtechnik RFE International ST Microelectronics ST Microelectronics ST Microelectronics Sharp Analog Devices Burr Brown Burr Brown Burr Brown Analog Devices Atmel Elatec ST Microelectronics – – – – – – –
48
Popis Transform´ ator 230V/2x 9V Axi´ aln´ı pojistka typu T Axi´ aln´ı pojistka typu T Axi´ aln´ı pojistka typu T S´ıt’ov´ y nap´ ajec´ı konektor (male) S´ıt’ov´ y nap´ ajec´ı konektor (female) Audio konektor (female) Konektor 20-ti ˇzilov´ y (male) Konektor 20-ti ˇzilov´ y 90◦ (male) Svorkovnice 4 ks Svorkovnice ARK RM 5mm 3 sv. Svorkovnice ARK RM 5mm 2 sv. Diodov´ y m˚ ustkov´ y usmˇerˇ novaˇc Stabiliz´ ator napˇet´ı 5V Stabiliz´ ator napˇet´ı 12V Stabiliz´ ator napˇet´ı −12V V´ ykonov´ y optotriak 600V/8A Pˇresn´ a napˇet’ov´ a reference 5V Pˇresn´ y operaˇcn´ı zesilovaˇc Pˇresn´ y diferenci´ aln´ı zesilovaˇc Pˇresn´ y pˇr´ıstrojov´ y zesilovaˇc 16b A/D pˇrevodn´ık Σ-∆ Mikroprocesor s j´ adrem 8051 Znakov´ y LCD displej 16x2 Schottkyho dioda s UP = 0,25 V Kˇrem´ıkov´ y NPN tranzistor Krystal 2,457 MHz Krystal miniaturn´ı 11,059 MHz Odporov´ y trimr cermetov´ y Odporov´ y trimr cermetov´ y 3 mm LED diody r˚ uzn´ ych barev Mˇeˇr´ıc´ı piny
Sch. znaˇ cka R15, R20 R16, R17, R19 R23 R24 R1, R6, R27, R36 R2, R3, R32, R33, R41, R42, R43, R44 R4, R9, R10, R11, R12, R25, R26, R28, R35 R5 R7, R8 R13, R14 R21, R22 R29, R30 R34 R37 R45, R46 C2, C4, C6, C8 C10, C12, C14 C1, C3, C5, C7, C9, C11, C13, C16, C18, C20, C23, C25, C33, C40 C27, C28 C32, C32 C35, C36 C15 C17, C19, C21, C22, C24, C26, C29, C30, C34, C37 C38 C39 L1, L2
Typ – oznaˇ cen´ı 10k 100R 4K7 290R 1K 3K3
Cena/ks 7 Kˇc 7 Kˇc 7 Kˇc 7 Kˇc 1 Kˇc 1 Kˇc
V´ yrobce – – – – – –
Popis Metalizovan´ y Metalizovan´ y Metalizovan´ y Metalizovan´ y Metalizovan´ y Metalizovan´ y
rezistor rezistor rezistor rezistor rezistor rezistor
±25 ppm ±25 ppm ±25 ppm ±25 ppm 0,6 W 0,6 W
22R
1 Kˇc
–
Metalizovan´ y rezistor 0,6 W
3K9 10K 240R 100R 4K7 470R 2K7 1K8 E1000M/25V E470M/25V CK100N/63V
1 Kˇc 1 Kˇc 1 Kˇc 1 Kˇc 1 Kˇc 1 Kˇc 1 Kˇc 1 Kˇc 7 Kˇc 4 Kˇc 2 Kˇc
– – – – – – – – Jamicon Jamicon –
Metalizovan´ y rezistor 0,6 W Metalizovan´ y rezistor 0,6 W Metalizovan´ y rezistor 0,6 W Metalizovan´ y rezistor 0,6 W Metalizovan´ y rezistor 0,6 W Metalizovan´ y rezistor 0,6 W Metalizovan´ y rezistor 0,6 W Metalizovan´ y rezistor 0,6 W Elektrolytick´ y kondenz´ ator 1 mF Elektrolytick´ y kondenz´ ator 470 µF Keramick´ y kondenz´ ator 100 nF
CK1N CK33P/500V CK27P/500V CT3M3/16V CT1M/16V
1 Kˇc 1 Kˇc 1 Kˇc 4 Kˇc 4 Kˇc
– – – – –
Keramick´ y kondenz´ ator 1 nF Keramick´ y kondenz´ ator 33 pF Keramick´ y kondenz´ ator 27 pF Tantalov´ y kondenz´ ator 3,3 uF Tantalov´ y kondenz´ ator 1 uF
Jamicon – Fastron
Elektrolytick´ y kondenz´ ator 22 µF Tantalov´ y kondenz´ ator 3,3 uF Radi´ aln´ı tlumivka 560 µH
E22M/25V CK4M7 09P-561K
1 Kˇc 4 Kˇc 14 Kˇc
49
C
ˇ REN ˇ ´I LABORATORN´I ME
Mˇeˇr´ıc´ı body M B1 – M B5 jsou urˇceny pro ovˇeˇren´ı napˇet’ov´ ych hodnot mezi jednotliv´ ymi bloky pˇredevˇs´ım analogov´e desky termostatu. S ohledem na vysok´e rozliˇsen´ı A/D pˇrevodn´ıku se jak´ekoliv vyˇsˇs´ı ˇsumov´e ˇc´ıslo ˇci zvlnˇen´ı v´ ystupn´ıho sign´alu jednotliv´ ych zesilovac´ıch blok˚ u ve znaˇcn´e m´ıˇre projev´ı i ve v´ ystupn´ım slovˇe ADC. Mˇeˇren´ım ovˇeˇrujeme kvalitu n´avrhu DPS, tj. vznik zemn´ıc´ıch smyˇcek, odolnost a stabilitu hodnot pˇri skokov´e zmˇenˇe proudov´eho odbˇeru v obvodu, tot´eˇz pˇri skokov´e zmˇenˇe teploty jednotliv´ ych souˇc´astek, ˇsumov´e vlastnosti a rovnˇeˇz u ´roveˇ n pˇr´ıjmu neˇz´adouc´ıch sign´alu ze s´ıtˇe a z okol´ı. Mˇeˇr´ıc´ımi body pak zjiˇst’ujeme s jak´ ymi hodnotami tˇechto parazitn´ıch jev˚ u se pot´ yk´ame. Vyhodnocen´ı v´ ysledk˚ u m˚ uˇze poslouˇzit k dodateˇcn´ ym zmˇen´am filtraˇcn´ıch ˇcl´ank˚ u, pˇr´ıp. zlepˇsen´ı st´ınˇen´ı.
Mˇ eˇ r´ıc´ı pˇ r´ıstroj Osciloskop Digit´ aln´ı multimetr ˇ ıtaˇc C´
Popis Hameg HM205-3 20MHz Storage scope Hewlett Packard 34401A Multimeter Hewlett Packard 5316A Universal counter
Tab. C.1: Mˇ eˇ r´ıc´ı pˇ r´ıstroje
C.1
Mˇ eˇ ren´ı ˇ sumu a zvlnˇ en´ı
Napˇet’ov´e hodnoty ˇsumu ˇs-ˇs byly odeˇc´ıt´any z obrazovky osciloskopu Hameg. Hodnoty byly v nˇekter´ ych pˇr´ıpadech tak mal´e, ˇze uˇz jej zcela urˇcitˇe nemalou m´ırou ovlivˇ novala chyba mˇeˇr´ıc´ı soustavy osciloskopu. Osciloskopick´a mˇeˇren´ı nepatˇr´ı k pˇresn´ ym metod´am mˇeˇren´ı, v´ ysledky proto berme sp´ıˇse jen jako orientaˇcn´ı. Ale pro n´azornost je toto postaˇcuj´ıc´ı. Velikosti zvlnˇen´ı, tedy hodnoty stˇr´ıdav´ ych sloˇzek spoleˇcnˇe se stejnosmˇern´ ymi sloˇzkami byly odeˇc´ıt´any z digit´aln´ıho multimetru. Veˇsker´e mˇeˇren´ı bylo prov´adˇeno pro etalon 0 ◦ C, kter´ y pˇredstavoval el. odpor 99,997 Ω a teplotu −0,0126 ◦ C platinov´eho teplotn´ıho ˇcidla. V´ıce jiˇz tabulka C.2.
Mˇ eˇ r´ıc´ı bod M B1 M B2 M B3 M B4 M B5
VDC [V ] 5,00042 0,91394 −0,91291 0,24616 0,24717
VAC [µV ] 29 26 18 431 20
Um´ıstˇ en´ı Uref napˇet´ı na UR5 napˇet´ı na UIO7− napˇet´ı na Uout napˇet´ı na Uain napˇet´ı na
referenci AD586 (IO5) rezistoru R5 v´ ystupu invertoru OPA177 (IO6) v´ ystupu INA114 (IO8) vstupu AD7705 (IO9)
Tab. C.2: Zvlnˇ en´ı napˇ et´ı na jednotliv´ ych mˇ eˇ r´ıc´ıch bodech Nejvˇetˇs´ı m´ırou ˇsumov´e sloˇzky disponuje mˇeˇr´ıc´ı bod M B4 obr. C.4 (na v´ ystupu IO8) a to pˇribl. 1 µV ˇs-ˇs. Ta byla spoleˇcnˇe s nepatrn´ ym zvlnˇen´ım harmonickou sloˇzkou o frekvenci 50 Hz potlaˇcena filtraˇcn´ımi kapacitory C39 a C40 pˇred vstupem do A/D pˇrevodn´ıku. Sign´ al zpracov´avan´ y pˇrevodn´ıkem pak vykazoval minim´aln´ı zvlnˇen´ı a nepatrn´ y ˇsum (20 µV ˇs-ˇs) obr. C.5. V´ ysledky mˇeˇren´ı osciloskopem jsou pops´any v ˇcasov´ ych z´avislostech C.1 – C.5, kde je ych hodnot ˇsumu nab´ yvaly jednotliv´e mˇeˇr´ıc´ı body analogov´e n´azornˇe vidˇet jak mal´ ych napˇet’ov´ ˇc´asti termostatu.
50
C.2
Mˇ eˇ ren´ı teplotn´ı stability
Jedn´ım z krit´eri´ı pˇresn´eho termostatu je stabilita v´ ystupn´ıho sign´alu v ˇcase a teplotˇe. Prvn´ı krit´erium lze asi jen stˇeˇz´ı nˇejak´ ym zp˚ usobem mˇeˇrit a nezb´ yv´a tedy nic jin´eho neˇz vˇeˇrit u ´daj˚ um od v´ yrobc˚ u souˇc´astek. Kdeˇzto s teplotn´ı stabilitou uˇz to takov´ y probl´em nen´ı. Pro tyto u ´ˇcely byl uˇzit mraz´ıc´ı sprej A-44 od v´ yrobce DUE-CI Electronic s.n.c. Jeho aplikac´ı lze dos´ahnout na povrchu souˇc´astek teploty aˇz −30 ◦ C. Nejvˇetˇs´ı vliv na zmˇenu v´ ystupn´ıho napˇet´ı z IO8 a tedy i na zmˇenu vzork˚ u ∆D mˇely n´asleduj´ıc´ı obvody C.3, z nichˇz k nejpodstatnˇejˇs´ı zmˇenˇe, jak je vidˇet, pˇrispˇel A/D pˇrevodn´ık.
Obvodov´ y element AD586 (IO5) IPA177 (IO6) INA105 (IO7) INA144 (IO8) AD7705 (IO9)
∆D [dek] −19 −21 −28 −44 −1999
∆T [◦ C] −0,034 −0,037 −0,049 −0,078 −3,525
Tab. C.3: Vliv zmˇ eny teploty ∆T ≈ 54 ◦ C na v´ ystupn´ı slovo ADC Rozd´ılem vzork˚ u ∆D je pak m´ınˇen rozd´ıl mezi teplotou pokojovou T0 ≈ 24 ◦ C a teplotou T → −30 ◦ C. Mˇeˇren´ı bylo provedeno pro etalon 100 ◦ C, reprezentuj´ıc´ı el. odpor 136,665 Ω a teplotu 99,811 ◦ C.
51
1mV
5ms
Obr. C.1: MB1 – napˇ et´ı na napˇ et’ov´ e referenci AD586 (IO5)
1mV
Obr. C.2: MB2 dˇ eliˇ cem R5 R6
5ms
1mV
Obr. C.3: MB3 – napˇ et´ı za invertorem OPA177 (IO6)
1mV
5ms
1mV
–
napˇ et´ı za
5ms
Obr. C.4: MB4 – napˇ et´ı na v´ ystupu zesilovaˇ ce INA114 (IO8)
5ms
Obr. C.5: MB5 – napˇ et´ı na vstupu A/D pˇ revodn´ıku AD7705 (IO9)
52
D // // // // // //
´ VYBAVEN´I PRO AT89C4051 PROGRAMOVE
***************************************************************** * * * DIGITALNI TERMOSTAT PRO AT89C4051 * * * ***************************************************************** HEX 11607B BIN 3985B
#include
#include <math.h> sbit sbit sbit sbit sbit sbit sbit sbit sbit sbit sbit sbit sbit sbit sbit
RS = P3^5; E = P3^4; LCD_Pin_4 = P3^3; LCD_Pin_5 = P3^2; LCD_Pin_6 = P3^1; LCD_Pin_7 = P3^0; TL_1 = P1^0; TL_2 = P1^2; TL_3 = P1^1; TL_4 = P3^7; Signal_LED = P1^3; Optotriak = P1^4; ADC_SCLK = P1^5; ADC_DIN = P1^6; ADC_DOUT = P1^7;
// 17 // 18 // 19
/* Atmel 89C4051 fosc = 11.059MHz T=12/fosc=1.085us ...cas jednoho strojoveho cyklu T*256=279us T*65536=71.1ms generator casu 50ms casovac T0 65536 - 46083 = 19453 = 0x4BFD */ #define HODNOTA_TH0 HODNOTA_TL0 INTERVAL_BLIKANI_SIGNAL_LED
0x4B #define 0xFD #define 20
#define INTERVAL_ODECTU_HODNOT_Z_ADC 3425; nasobic_preruseni = 0; unsigned short int nasobic_odectu = 0;
// x*50ms // 13699 odpovida 1s - zjisteno ze simulace (3425=0.25s) unsigned char
/* Deklarace pole znaku pro jeden redek displeje - nesmi byt vetsi nez-li 16 znaku - jeho skutecna velikost je x+1, jelikoz je na konci jeste pridan zakoncovaci znak "\0" - char code ...[] = "1234567890123456" + "\0" */ char char char char char char char
code code code code code code code
text_aktualni[] = text_regulovat[] = text_hystereze[] = text_topeni[] = text_vypnuto[] = text_mimo[] = retezec_dek[]=
"Aktualni teplota"; "Regulovat na"; "Hystereze"; "Pulzni rizeni"; "vypnuto"; "mimo rozsah"; "0123456789";
// Posuv oken a nastavovani +/#define POCET_OBRAZOVEK 4 #define POMALA_RYCHLOST 50 #define VELKA_RYCHLOST 1 #define POCITADLO_POSUVU_MAX 9 unsigned char obrazovka; zmena_nastaveni = 2; unsigned char pocitadlo_posuvu = POCITADLO_POSUVU_MAX; unsigned short int data rychlost_posuvu = POMALA_RYCHLOST;
// // // // //
v ms v ms x odpovida poctu vzorku, ktere projdou pomalu (dalsi prochazeji rychle) cislo aktualni zobrazovane obrazovky unsigned char 1="-" 2="zustava stejne" 3="+"
short int int_aktualni = 0; float float_teplota = 0; unsigned short int int_regulovat = 260; unsigned short int int_hystereze = 10; unsigned short int int_topeni = 5; bit smer_teploty_topeni; bit aktivni_topeni; /* Ovladani LCD displeje */ // Pevne zpozdeni v 1s void Delay_1s () { unsigned char cas=20; unsigned short int n; unsigned short int i; for (i=0;i<100;i++) { n=(115)*cas; while (n!=0) n--; } }
// 20 * 100ms
// Zpozdeni v ms void Delay_ms ( unsigned char cas) {
53
unsigned short int n; n=(115)*cas; while (n!=0) n--; } // Pevne zpozdeni 50us void Delay_50us () { unsigned char n; n=6; while (n!=0) n--; } // Posli 4 bity void Posli4bity ( unsigned char LCD_Data_4b) { LCD_Pin_7 = LCD_Data_4b/8; LCD_Pin_6 = (LCD_Data_4b%8)/4; LCD_Pin_5 = (LCD_Data_4b%4)/2; LCD_Pin_4 = LCD_Data_4b%2; E=1; Delay_50us(); E=0; } // Posli na port void PosliSpol ( unsigned char LCD_Data) { Posli4bity(LCD_Data/16); Posli4bity(LCD_Data%16); }
// horni 4 bity // dolni 4 bity
// Posli data na displej void PosliData ( unsigned char LCD_Data) { RS=1; PosliSpol(LCD_Data); Delay_50us(); Delay_50us(); } // Posli instrukci na displej void PosliInstrukci ( unsigned char LCD_Data) { RS=0; PosliSpol(LCD_Data); Delay_ms(2); } void PosliRetezec ( char retezec[]) { unsigned char i; for (i=0;i<16;i++) { if (retezec[i]==’\0’) break; PosliData (retezec[i]); } }
// delka pole znaku na radek displeje
void Posli_na_ADC (char znak) { unsigned char pointer = 128; unsigned char i; for (i=0;i<8;i++) { ADC_SCLK=0; if (znak & pointer) ADC_DIN=1; else ADC_DIN=0; pointer=pointer>>1; ADC_SCLK=1; } } unsigned short int Cti_z_ADC () { unsigned short int slovo=0; unsigned char i; Posli_na_ADC (0x38); for (i=0;i<16;i++) { ADC_SCLK=0; ADC_SCLK=1; if (ADC_DOUT==1) slovo=slovo+1; slovo=slovo<<1; } if (ADC_DOUT==1) slovo=slovo+1; return slovo; } /* Ovladani ... */ char Tlacitko (bit TL) { bit stav=0; if (TL==0) { Delay_ms(rychlost_posuvu); if (TL==0) { Delay_ms(rychlost_posuvu);
54
if (TL==0) { Delay_ms(rychlost_posuvu); if (TL==0) stav=1; } } } return stav; } void ZmenaTextu (unsigned char pozice) { unsigned short int abs_int_aktualni; PosliInstrukci (1); switch (pozice) { case ’1’: { abs_int_aktualni=abs(int_aktualni); PosliRetezec (text_aktualni); if ( (int_aktualni <= -40) || (int_aktualni >= 1000) ) { PosliInstrukci (194); PosliRetezec (text_mimo); } else { PosliInstrukci (201); if (int_aktualni >= 0) PosliData (’ ’); else PosliData (’-’); if ((retezec_dek[(abs_int_aktualni/100)])==’0’) PosliData(’ ’); else PosliData(retezec_dek[(abs_int_aktualni/100)]); PosliData PosliData PosliData PosliData PosliData
(retezec_dek[((abs_int_aktualni%100)/10)]); (’,’); (retezec_dek[(abs_int_aktualni%10)]); (0x00); (’C’);
// 1.uzivatelsky znak "stupneC"
} break; } case ’2’: { PosliRetezec (text_regulovat); PosliInstrukci (202);
// Skok na 10.znak 2.radek
if ((zmena_nastaveni==1) && (int_regulovat!=1)) int_regulovat--; else if ((zmena_nastaveni==3) && (int_regulovat!=999)) int_regulovat++; zmena_nastaveni=2; if ((retezec_dek[(int_regulovat/100)])==’0’) PosliData(’ ’); else PosliData(retezec_dek[(int_regulovat/100)]); PosliData (retezec_dek[((int_regulovat%100)/10)]); PosliData (’,’); PosliData (retezec_dek[(int_regulovat%10)]); PosliData (0x00); PosliData (’C’);
// 1.uzivatelsky znak "stupneC"
if (!smer_teploty_topeni && (int_aktualni= (int_regulovat-int_hystereze+1) ) smer_teploty_topeni=0; break; } case ’3’: { PosliRetezec (text_hystereze); PosliInstrukci (202);
// Skok na 10.znak 2.radek
if (zmena_nastaveni==1 && int_hystereze!=1) int_hystereze--; else if (zmena_nastaveni==3 && int_hystereze!=99) int_hystereze++; zmena_nastaveni=2; PosliData PosliData PosliData PosliData PosliData PosliData break;
(’-’); (retezec_dek[((int_hystereze)/10)]); (’,’); (retezec_dek[(int_hystereze%10)]); (0x00); (’C’);
// 1.uzivatelsky znak "stupneC"
} case ’4’: { PosliRetezec (text_topeni); PosliInstrukci (201);
// Skok na 9.znak 2.radek
if (zmena_nastaveni==1 && int_topeni!=0) int_topeni--; else if (zmena_nastaveni==3 && int_topeni!=99) int_topeni++; zmena_nastaveni=2; if ( int_topeni==0 ) PosliRetezec(text_vypnuto); else { PosliData (’ ’); PosliData (’-’); PosliData (retezec_dek[(int_topeni/10)]); PosliData (’,’); PosliData (retezec_dek[(int_topeni%10)]); PosliData (0x00); PosliData (’C’); } break;
// 1.uzivatelsky znak "stupneC"
55
} } } /* Casovac - vnitrni preruseni */ void Signal(void) interrupt 1 using 1 { // pro krystal 11.0592MHz je volana kazdych 14.06ms /* Vysledkem nasledujiciho kodu je pro Signal_LED: - kratke bliknuti pro teplotu, ktera je nad hysterezni smyckou - dlouhe bliknuti pro teplotu, ktera je pod hysterezni smyckou - setrvaly svit pro teplotu uvnitr hysterezni smycky se zapnutym topenim - setrvaly ne-svit pro teplotu uvnitr hysterezni smycky s vypnutym topenim pro INTERVAL_BLIKANI_SIGNAL_LED=nasobic_preruseni=20 plati perioda 1s (20*50ms) => strida 19/20 (19*50ms) a 1/20 (1*50ms) */ if (nasobic_preruseni) { // probehne 1x za 50ms if ( int_aktualni < (int_regulovat-int_hystereze) ) { Signal_LED=0; // teplota je pod hysterezi - svitime 19/20 } else if ( int_aktualni > int_regulovat ) Signal_LED=1; // teplota je nad hysterezi - nesvitime 19/20 else { if (aktivni_topeni) Signal_LED=0; // Signal_LED = 0; // LED sviti else if (!aktivni_topeni) Signal_LED=1; // Signal_LED = 1; // LED nesviti } if (aktivni_topeni) { if ( int_aktualni >= (int_regulovat-int_topeni) ) Optotriak=0; // impulsni rizeni else Optotriak = 1; } } if (!nasobic_preruseni) { // probehne 1x za 20*50ms if ( (int_aktualni < (int_regulovat-int_hystereze)) ) Signal_LED=1; // teplota je pod hysterezi - nesvitime 1/20 else if ( int_aktualni > int_regulovat ) Signal_LED=0; // teplota je nad hysterezi - svitime 1/20 else { if (aktivni_topeni) Signal_LED=0; // Signal_LED = 0; // LED sviti else if (!aktivni_topeni) Signal_LED=1; // Signal_LED = 1; // LED nesviti } if (aktivni_topeni) { if ( int_aktualni >= (int_regulovat-int_topeni) ) Optotriak=1; // impulsni rizeni else Optotriak = 1; } nasobic_preruseni=INTERVAL_BLIKANI_SIGNAL_LED; } TH0 = HODNOTA_TH0; // hodnota od ktere citac T0 cita nahoru k 65536... TL0 = HODNOTA_TL0; // ...a je rozdelena na hornich 8b a dolnich 8b nasobic_preruseni--; } void ZjistiTeplotu () { // prevod z deg ADC na R float_teplota = 0.0000000009*Cti_z_ADC()*Cti_z_ADC() + 0.0005596*Cti_z_ADC() + 98.2185; // if (Cti_z_ADC() > 53718) float_teplota = float_teplota + ((Cti_z_ADC()-53718)*Cti_z_ADC()*Cti_z_ADC()*0.000000000000052
);
// linearizace - R na T float_teplota = 131.59033899196 * (sqrt(float_teplota+561.14562770565) - 25.712752239028) +(0.00194115*float_teplota*float_teplota-0.3884*float_teplota+19.4235); if(obrazovka==’1’) ZmenaTextu(obrazovka); } void main () { /* Pocatecni nulovani */ P1=0x00; P3=0x00; Signal_LED = 1; Delay_ms(20);
// nesviti // po zapnuti napajeni
/* Inicializace ADC */ ADC_SCLK=1; ADC_DIN=1; ADC_DOUT=1; Posli_na_ADC Posli_na_ADC Posli_na_ADC Posli_na_ADC
(0x20); (0x04); (0x10); (0x45);
// // // //
pristup do hodinoveho registru takt vnejsiho oscilatoru 2,49MHz pristup do setup registru kompletni kalibrace, unipolarni orientace, zesileni = 1
/* Inicializace LCD Je nutne aby se nejprve definoval prenos jako 4-bitovy. A jelikoz nam chybi 4 dolni bity (piny nemame pripojeny) neni mozne poslat kompletni instrukci inicializace (4-bit mod, font 5x7 a dvouradkovy displej) ale jen informaci, o tom, ze se jedna o 4-bitovy prenos. Je tedy nutne a pro kompletni inicializaci instrukci poslat 2x, kde krom 4bitoveho prenosu nastavime i font a velikost displeje. Deje se tak uz ve 4-bitovem rezimu, kde jiz mame k dispozi i dolni 4-mi bity. Pri zapnuti napajeni nastavaji problemy s casovou prodlevou po niz nasleduje prvni instrukce. Pokud displej promeska 1.instrukci dochazi ke zmatkum na vystupu (tabulka znaku se diky 4-bitovemu prenosu posouva z anglicke do japonske). Vyrobci doporucuji resit tento problem
56
dostatecnou casovou prodlevou pred vlastni inicializaci. Ale muj kus si s timto problemem sam neporadil - i s velkymi prodlevami nebyl spravny vysledek zobrazeni 100procentni. Laborovani s timto problemem me dovedlo az k myslence dvojite inicializace 4-bitove sbernice. A az teprve toto reseni podavalo uspokojive vysledeky. */ // Prvotni inicializace poprve PosliInstrukci (32); PosliInstrukci (40); PosliInstrukci (8); Delay_ms(20);
// 8-bitova inicializace - 4-bit mod // 4-bitova inicializace - 4-bit mod, font 5x7 a dvouradkovy dispej // vypnuti displeje
// Prvotni inicializace podruhe PosliInstrukci (32); PosliInstrukci (40); PosliInstrukci (8);
// 8-bitova inicializace - 4-bit mod // 4-bitova inicializace - 4-bit mod, font 5x7 a dvouradkovy dispej // vypnuti displeje
// Dalsi inicializace PosliInstrukci (1); PosliInstrukci (6); PosliInstrukci (12);
// vymazani displeje // posuv kurzoru vpravo, text se neposouva // zapnout dispej, vypnout kurzor
/* Zapis do pameti CGRAM Nasledujicim kodem naprogramovat uP pouze jednou, pak jej lze vynechat. Jedna se o zapis jednoho uzivatelskeho znaku do pameti CGRAM. Znak je ulozen trvale vymazat jej lze prepisem novych hodnot na stejne adrese. */ // 1.uzivatelsky znak "stupneC" PosliInstrukci (64); PosliData (6); //00000110b PosliData (9); //00001001b PosliData (9); //00001001b PosliData (6); //00000110b PosliData (0); //00000000b PosliData (0); //00000000b PosliData (0); //00000000b PosliData (0); //00000000b
// prejdi na adresu 000 v CGRAM
/* Ostatni inicializace */ TL_1=1; TL_2=1; TL_3=1; TL_4=1; TMOD = 0x01; TR0 = 1; ET0 = 1; EA = 1;
// Pro tlacitka nastavena "meka" log.1
// // // //
16 bitovy citac spust casovac povol preruseni od casovace povol globalne vsechna preruseni
/* Datova cast */ // 1.obrazovka - aktualni teplota obrazovka=’1’; smer_teploty_topeni=1; aktivni_topeni = 1; Optotriak = 1; while (1) { // Reakce tlacitek na sepnuti if (Tlacitko (TL_2==1)) { do { if (pocitadlo_posuvu!=0) { rychlost_posuvu=POMALA_RYCHLOST; pocitadlo_posuvu--; } else rychlost_posuvu=VELKA_RYCHLOST; zmena_nastaveni=1; ZmenaTextu(obrazovka); } while (Tlacitko (TL_2==1)); pocitadlo_posuvu=POCITADLO_POSUVU_MAX; rychlost_posuvu=POMALA_RYCHLOST; } else if (Tlacitko (TL_4==1)) { do { if (pocitadlo_posuvu!=0) { rychlost_posuvu=POMALA_RYCHLOST; pocitadlo_posuvu--; } else rychlost_posuvu=VELKA_RYCHLOST; zmena_nastaveni=3; ZmenaTextu(obrazovka); } while (Tlacitko (TL_4==1)); pocitadlo_posuvu=POCITADLO_POSUVU_MAX; rychlost_posuvu=POMALA_RYCHLOST; } else if (Tlacitko (TL_1==1)) {
57
obrazovka--; if (obrazovka==’0’) obrazovka=retezec_dek[POCET_OBRAZOVEK]; ZmenaTextu(obrazovka); Delay_ms(100); } else if (Tlacitko (TL_3==1)) { obrazovka++; if (obrazovka==retezec_dek[(POCET_OBRAZOVEK+1)]) obrazovka=’1’; ZmenaTextu(obrazovka); Delay_ms(100); } // Odecitani teploty if (!nasobic_odectu) { ZjistiTeplotu (); int_aktualni = (int)(float_teplota*10); if (smer_teploty_topeni) { if ( int_aktualni < int_regulovat) aktivni_topeni = 1; else { aktivni_topeni = 0; Optotriak = 0; smer_teploty_topeni = 0; } } else if (!smer_teploty_topeni){ if ( int_aktualni >= (int_regulovat-int_hystereze+1) ) aktivni_topeni = 0; else { aktivni_topeni = 1; Optotriak = 1; //aktivni_topeni smer_teploty_topeni = 1; } } nasobic_odectu=INTERVAL_ODECTU_HODNOT_Z_ADC; } nasobic_odectu--; } }
58
//+1
E
´ POZNAMKY
Tato pr´ace je vys´azena pomoc´ı typografick´eho syst´emu LATEX a veˇsker´e vektorov´e charakteristiky jsou kresleny pomoci grafick´e n´astavby METAPOST. Sch´emata jsou kreslena v programu EAGLE Layout Editor v. 4.13 (CadSoft), desky ploˇsn´ ych spoj˚ u v progamu Protel for Windows v. 1.1 (Protel Technology Pty Ltd – Altium). Pokud nen´ı uvedeno jinak, DPS jsou v mˇeˇr´ıtku 1:1. Jako kompil´ator/debugger programovac´ıho jazyka C byl pouˇzit Raisonance RKit 6.1 Development Suite, Ride 51 (Raisonance S.A.). Matematick´e v´ ypoˇcty byly ˇreˇseny pomoc´ı matematick´eho softwaru MATLAB 6.2 (The MathWorks) s asistenc´ı vˇedeck´eho kalkul´atoru TI-89 (Texas Instruments) Vˇsechny pouˇzit´e ceny jsou pˇrevzaty z mezin´arodn´ıho internetov´eho obchodu Transfer Multisort Elektronik Sp. z o.o. (http://www.tme.pl/) a internetov´eho obchodu GM Elektronic spol. s.r.o (http://www.gme.cz/) a vztahuj´ı k datu 15. dubna 2006.
59