ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA ELEKTROTECHNICKÁ KATEDRA MĚŘENÍ
Bakalářské studium 2006 – 2010
BAKALÁŘSKÁ PRÁCE
Miroslav Bambas
Inteligentní číslicový teploměr
Praha 2010
Vedoucí bakalářské práce: Ing. Jan Staněk
CZECH TECHNICAL UNIVERSITY IN PRAGUE FACULTY OF ELECTRICAL ENGINEERING DEPARTMENT OF MEASUREMENT
Bachelor Full-Time Studies 2006 – 2010
BACHELOR THESIS
Miroslav Bambas
Inteligent Digital Thermometer
Prague 2010
The Bachelor Thesis Work Supervisor: Ing. Jan Staněk
Prohlášení Prohlašuji, že jsem předloženou práci vypracoval samostatně a že jsem uvedl veškeré použité informační zdroje v souladu s Metodickým pokynem o dodržování etických principů při přípravě vysokoškolských závěrečných prací. V Praze dne …………………
…………………………. Podpis autora práce
Abstrakt Tato bakalářská práce se zabývá návrhem a realizací číslicového teploměru na univerzální programovatelné desce. Tento teploměr je vyvinut pro firmu FLEA s.r.o. Vytvořený inteligentní teploměr bude jedním z komponentů systému regulace domácího vytápění.
Abstract This bachelor work engages design and realization of digital thermometer on universal programmable PCB. This thermometer is developed for company FLEA s.r.o. This inteligent thermometer will be part of home heating regulator system.
1
ÚVOD ........................................................................................................ 7
2
Vlastní návrh teploměru ............................................................................. 8 2.1
2.1.1
jednovodičová sběrnice dallas ...................................................... 9
2.1.2
I2C ................................................................................................. 9
2.1.3
Princip přenosu ........................................................................... 10
2.1.4
Sběrnice RS 232 ......................................................................... 12
2.1.5
sběrnice RS 485 .......................................................................... 12
2.2 3
Použité sběrnice ................................................................................... 9
napájení - impulzní napájecí zdroj ..................................................... 14
Použité obvody a součástky ..................................................................... 17 3.1
Napájecí obvod - LM2574M -5 ......................................................... 17
3.2
Přijímač/vysílač RS 485 - MAX485 .................................................. 18
3.3
watchdog – max690ACSA ................................................................ 19
3.4
DC/DC - aimtec 0505SZ .................................................................. 21
3.5
Optočlen - 6N137 .............................................................................. 21
3.6
Teplotní čidlo dallas - 18B20 ........................................................... 22
3.7
EEPROM – ATMEL742 ................................................................... 23
3.8
Přepínač ............................................................................................. 23
3.9
LED display ....................................................................................... 24
3.10
Mikroprocesor.................................................................................... 26
3.11
Celkové náklady ................................................................................ 28
4
Zhodnocení ............................................................................................... 31
5
Použité zdroje ........................................................................................... 32
6
Seznam obrázků ....................................................................................... 33
Příloha A.............................................................................................................. I Příloha B ............................................................................................................. II Příloha C ........................................................................................................... IV
1 ÚVOD Instalace technologií do nových nebo již stávajících staveb je perspektivně rostoucím oborem již několik let. Propojením jednotlivých systémů budovy získáme dům, který můžeme nazývat inteligentní. Ten má za úkol nejen zpříjemnit pobyt v něm, ale učinit ho levnější a bezpečnější. Z tohoto výčtu je patrné, že inteligentní dům by neměl pouze řídit audiovizuální techniku, jak se mnoho lidí domnívá, ale má za úkol regulovat a řídit vytápění a klimatizaci, ohřev vody, osvětlení, bezpečnostní a komunikační systémy atd. Nesmíme zapomínat na přípravu domu do budoucnosti, aby případné změny bylo možné provést rychle a bez stavebních prací. Tato bakalářská práce se zabývá vývojem a výrobou univerzálního teploměru, který bude součástí regulace vytápění. Teploměr je určen pro firmu FLEA s.r.o., která se zabývá vývojem, prodejem a instalací v inteligentních budovách.
7
2 VLASTNÍ NÁVRH TEPLOMĚRU Při
návrhu vlastního teploměru jsou kladeny nároky zejména na
velikost plošného spoje. Teploměr se musí vejít do krabičky, a proto má plošný spoj rozměry 85x45mm. Dalším omezením je vlastnoruční pájení. Z těchto důvodů bude teploměr osazen zejména součástkami v provedení SMD a pro rezistory a kondenzátory pouzdra 805, která se lépe čtou a pájí. S vnějším prostředím deska komunikuje přes sběrnici RS485 a informace dokáže uživateli zobrazit na LED display. Vnitřní komunikace s teplotním čidlem probíhá po jednovodičové sběrnici Dallas. S pamětí typu EEPROM komunikuje po I2C. Celá deska je napájena zdrojem stejnosměrného napětí 24V. Proto deska musí obsahovat obvod pro změnu a stabilizaci napájecího napětí na 5V. Také je důležité galvanicky oddělit RS485 od zbytku desky. Zjednodušené blokové schéma na obrázku Obr. 2.1 zobrazuje celkový pohled na teploměr. Splňuje všechny výše uvedené požadavky a rozděluje práci na dílčí části, které jsou popsány dále.
8
Obr. 2.1 Blokové schéma teploměru
2.1 Použité sběrnice V této bakalářské práci je použito několik různých datových sběrnic. Pro EEPROM paměť je to I2C sběrnice, teplotní čidlo má svou vlastní jednovodičovou sběrnici Dallas. Pro naprogramování mikroprocesoru slouží RS 232 a po RS 485 komunikuje deska s centrální jednotkou. Dále teploměr obsahuje dva předem nedefinované vstupy/výstupy. 2.1.1
jednovodičová sběrnice dallas Sběrnice 1Wire, navržená firmou Dallas Semiconductor, umožňuje
připojit několik zařízení k řídící jednotce prostřednictvím pouze dvou vodičů. Sběrnice má jeden řídící obvod (master) a jeden či více ovládaných zařízení (slave). Všechny obvody jsou zapojeny na společnou zem a paralelně na společný datový vodič. Bližší informace jsou v datasheetu [9]. 2.1.2
I2 C Zkratka I2C vznikla ze slovního spojení Internal-Integrated-Circuit Bus.
Jedná se o interní datovou sběrnici, vyvinutou firmou Philips před dvaceti lety. Jedná se především o mikrokontroléry, sériové paměti, inteligentní LCD, audio a video obvody, a/d a d/a převodníky a některé další digitálně řízené obvody.
9
Hlavní výhoda této sběrnice je použití pouze dvou vodičů a to SDA (serial data) a SCL (serial clock). V základní verzi jsou obvody adresovány 7bitově a v rozšířené verzi 10bitově. To umožňuje připojení 128 respektive 1024 čipů s různou adresou na jednu společnou sběrnici. V praxi jsou tato čísla však podstatně nižší, protože adresa čipu většinou nelze určit plnými 7 (10) bity ale třeba jen třemi. Někdy nelze určit vůbec a je pevně stanovena pro daný typ čipu – takový čip tedy může být na jedné větvi sběrnice maximálně jeden. Přenosová rychlost sběrnice je pro většinu aplikací dostatečná i v základní verzi, kde je frekvence hodin 100kHz. Ve vylepšených verzích to může být 400kHz nebo 1MHz, ale ne všechny intergované obvody tuto verzi podporují. Rychlost přenosu pak musí být přizpůsobena pochopitelně "nejpomalejšímu" čipu na sběrnici. Oba vodiče musí být implicitně v logické jedničce a to je zajištěno pull-up rezistory. Jejich odpory mají hodnotu v řádech jednotek kiloohmů. Čím vyšší je komunikační frekvence, tím nižší musí být hodnoty těchto odporů. Pro 100kHz postačuje 4k7.
Obr. 2.2 Možné propojení jednotlivých IO
2.1.3
Princip přenosu Jeden z integrovaných obvodů (většinou mikrokontrolér) je nastaven
jako MASTER a všechny ostatní obvody jsou SLAVE. Obvody se dají zapojit i jako tzv. multi-master, kdy je čipů master několik. Master při jakémkoli přenosu generuje hodinový signál na vodiči SCL. Když jeden čip vysílá, přijímají všechny ostatní a pouze podle adresy určují, zda jsou data určena jim. Čip, který chce vyslat/přijmout data musí nejprve
10
definovat adresu čipu, s kterým chce komunikovat a zda půjde o příjem nebo vysílání - tedy o čtení nebo zápis. To určuje R/W (read/write) bit, který je součástí adresy. (Ze zdroje [5]) Protokol I2C rozeznává několik předem definovaných bloků: x
Stav klidu - Je zajištěn logickými jedničkami na obou vodičích, master tedy negeneruje hodinový signál a neprobíhá žádný přenos. Logické jedničky jsou na obou vodičích zajištěny pull-up rezistory, takže klidový stav nastane i pokud jsou výstupy obvodu master ve stavu vysoké impedance.
x
Start bit - Zahajuje přenos nebo jeho další část. Je vygenerován tak, že se změní úroveň SDA z 1 na 0 zatímco je SCL v logické 1.
x
Stop bit - Ukončuje přenos. Je vygenerován podobně jako start bit. Logická úroveň SDA se změní z 0 na 1 zatímco je SCL v logické 1. Stop bit může být generován pouze po "nepotvrzení přenosu", tedy pouze po přijmutí Ack v logické 1.
x
Přenos dat - Data jsou přenášena po 1B tedy 8 po sobě jdoucích bitů od nejvyššího po nejnižší. Při přenosu dat se může logická úroveň na SDA měnit pouze pokud je SCL v logické 0. Při každém pulzu na SCL je přenesen jeden bit.
x
Potvrzující bit Ack (acknowledge) - Tento bit slouží k potvrzení správného přijmutí dat. Ack bit se odesílá stejným způsobem jako by se odesílal devátý bit dat, ale s tím rozdílem, že ho generuje čip, který přijímal (přijímač) a nikoliv ten, který data odesílal. Pokud přenos proběhne v pořádku, tak odešle logickou 0. Logická 0 potvrzujícího bitu znamená rovněž to, že je přijímač připraven na příjem dalšího bytu, který následuje okamžitě po něm při dalším pulzu na SCL. Pokud přenos selhal odešle logickou 1. Nebo pokud má dojít k ukončení přenosu, tak "neodešle nic". Pull-up rezistor pak zajistí, že bude na SDA logická 1 a Ack bit (v logické 0) odešle vysílač. (Ze zdroje [5])
11
Obr. 2.3 časový průběh signálů SDA a SCL
2.1.4
Sběrnice RS 232 RS 232 je rozhraní pro přenos informací vytvořené původně pro
komunikaci dvou zařízení do vzdálenosti 20 m. Pro větší odolnost proti rušení je informace po propojovacích vodičích přenášena větším napětím, než je standardních 5 V. Přenos informací probíhá asynchronně, pomocí pevně nastavené přenosové rychlosti a synchronizace sestupnou hranou startovacího impulzu. Úroveň Log. L Log. H Nedefinovaný
2.1.5
Vysílač +5V až +15V -5V až -15V
Přijímač +3V až 25V -3V až -25V -3V až +3V
sběrnice RS 485 Sběrnice RS 485 používá pro každý signál jedno „Twistedpair“ (TP)
vedení tj. 2 vodiče smotané kolem sebe. Jedná se o tzv. Differential voltage transmission. Jednoduše řečeno, je-li jeden vodič A, druhý B a signál je neaktivní, je napětí na A záporné a na B kladné. V opačném případě, signál je aktivní, je A kladné a B záporné. Jedná se o rozdíl čili diferenci mezi vodiči A a B. Délka vedení může být až 1200 metrů. RS 485 se používá pro multipoint komunikaci, více zařízení může být připojeno na jedno signálové vedení. Většina RS 485 systémů používá Master/Slave architekturu, kde má každá slave jednotka svojí unikátní adresu a odpovídá pouze na jí určené pakety. Tyto pakety generuje Master (například
12
PC) a periodicky obesílá všechny připojené slave jednotky. RS 485 má 2 provedení single a double TP. Při použití single Twistedpair jsou všechna zařízení připojena na pouze jeden Twistedpair. Všechna zařízení musí mít třístavové budiče (včetně Master). Komunikace probíhá po tomtéž vedení v obou směrech. Je tedy důležité, aby nezačalo vysílat více zařízení najednou, což je softwarová záležitost. Pokud použijeme Double Twistedpair, pak Master nemusí mít třístavový výstup, protože Slave zařízení vysílají do druhého Twistedpairu, určeného pro komunikaci od slave zařízení k masteru. Toto řešení často umožňuje implementovat multipoint řešení v systémech ,které byly původně (jak HW, tak i SW) určeny pro RS 232. Samozřejmá je ovšem nutnost úpravy Master software tak, aby obesílal všechny Slave zařízení dotazovacími pakety. Zřejmé je také zvýšení datové propustnosti při větších objemech dat. 2.1.5.1 Výhody a nevýhody Pro základní zapojení RS 422/485 systému potřebujeme IO budič s diferenciálními výstupy a IO přijímač s diferenciálními vstupy. Do přenosového vedení se indukuje šum a rušení. Protože se však signál přenáší twisted párem vodičů jdoucích stejnou trasou, je napěťová diference (rozdíl napětí mezi A a B) tohoto rušení téměř nulová. Vzhledem k diferenciální funkci vstupního zesilovače RS 422/485 přijímače je toto rušení eliminováno. Platí to také pro přeslechy ze sousedních vodičů, a pro jakékoli jiné zdroje šumů, dokud nejsou překročeny napěťové hranice vstupních obvodů přijímacího IO. Diferenciální vstup také eliminuje rozdíl zemních potenciálů vysílače a přijímače. Tato vlastnost je velmi důležitá pro komunikaci mezi různorodými systémy, kde by jinak vznikaly veliké problémy např. pro různé zdroje napájecího napětí atd.. Použití Twistedpair kabelů a korektní terminace (pro eliminování odrazů) dovoluje rychlost přenosu dat vetší než 10Mbit/s a délky kabelů až 1 Km.
13
Všechny tyto výhody přinášejí i několik nevýhod. Z důvodu vyšší složitosti jsou integrované obvody pro RS 485 poněkud dražší . Vyšší rychlost přenosu dat vyžaduje korektně zapojenou a přizpůsobenou terminaci vedení, což způsobuje problém u zapojení, kde se mění počet připojených zařízení. Poslední nevýhodou je nutnost použití Twistedpair vodičů. (Podle zdroje [3])
2.2 napájení - impulzní napájecí zdroj Důvody pro používání impulzních napájecích zdrojů jsou hlavně významná hmotnostní a objemová úspora, vyšší energetická účinnost a menší problémy s chlazením. Základní princip propustného měniče je na obrázku Obr. 2.4.
Obr. 2.4 Princip propustného měniče
„V části periody Ta je spínač S1 sepnut a S2 rozepnut, v části periody Tb jsou oba spínače v opačné poloze. Na konci intervalu Ta je na induktoru napětí uLa: ݑ ൌ ݑ െ ݑ ൌ ݑ െ ݑ Proud na konci intervalu Ta, tekoucí cívkou L bude: ݅ ൌ
௨ಽಲ ή்ೌ
݅ ൌ
ሺ௨ ି௨ή ሻή்ೌ
݅
Podobně i energie magnetického pole v induktoru na konci intervalu Ta: ܹ ൌ
ͳ ଶ ή ܮή ݅ ൌ ȟܹ ܹ ʹ
kde Wao je energie na počátku intervalu. Během intervalu Tb se indukuje napětí na cívce opačné polarity, doplní se náboj na C a proud i Lb na konci intervalu Tb je: 14
௨ ή்್
݅ ൌ െ
݅
a energie na konci intervalu Tb je: ܹ ൌ ȟܹ ܹ protože v ustáleném stavu platí: ȟܹ ൌ ȟܹ ௨ ି௨
ȟܹ ൌ
௨
ȟܹ ൌ
(2.1) ή ܶ
ή ܶ
(2.2)
Dosadíme-li 2.1 do 2.2 a vypočítáme uo: ݑ ൌ ݑ ்
்ೌ
ೌ ା்್
ൌ ݑ ή ݇
kde k je pracovní činitel spínání spínačů S1 a S2. Protože k ≤ 1, bude u tohoto měniče vždy platit: ݑ ݑ . Roste-li výstupní proud, roste i proud vstupní. Překročí-li se mez kdy akumulace induktoru nestačí krýt odběr, začíná se induktor přesycovat. To má za následek prudký růst proudu což ohrožuje zejména spínač S1. Při snižování výstupního proudu pod min. hodnotu Iomin začíná být proud induktorem během Tb přerušovaný. Z této meze můžeme vypočítat požadovanou minimální hodnotu induktoru Lmin ܫ ൌ
ಽೌ ଶ
ଵ ௨
ൌ ή ଶ
ή ܶ
(2.3)
Ze vztahu 2.3 vypočítáme minimální indukčnost: ܮ
ݑ ήܶ ʹܫ
Praktické zapojení propustného měniče obvykle místo spínače S2 používá speciální rychlou diodu. Podle polarity vstupního napětí a polarity diody se jedná o pozitivní nebo negativní propustný měnič (Buck Convertor). na obrázku Obr. 2.4 je čárkovaně naznačená dioda pro pozitivní propustný
15
měnič. Někdy se toto spojení nazývá zapojení se společnou diodou.“ (Vysoký, 2005, s.198 [4])
16
3 POUŽITÉ OBVODY A SOUČÁSTKY 3.1 Napájecí obvod - LM2574M -5 Jako vhodný napájecí zdroj byl vybrán obvod LM2574M-5.0. Jedná se o monolitický integrovaný obvod, který poskytuje veškeré aktivní funkce pro step down (buck) spínaný regulátor, který je schopen zátěže až 0,5 A. Má pevné výstupní napětí 5V ±4%. Na obrázku Obr. 3.1 je pouzdro M14B s popsanými piny a na obrázku Obr. 3.2 je schéma použité na desce.
Obr. 3.1 Pouzdro LM2574
D10 a D11 jsou ochranné prvky. Transil je polovodičový prvek sloužící k ochraně před napěťovými špičkami. Celý teploměr je napájen 24 V, ale LM2574 zvládá až +40 V, takže postačí transil na 36 V. Induktor L1 má 330 μH, což je doporučená hodnota z katalogu a dioda D12, je rychlá Shottkyho dioda.
Obr. 3.2 Schéma LM2574 s externími prvky
17
Správná činnost napájecího obvodu je indikována LED diodou D8, která v případě připojeného napájení svítí zeleně.
Obr. 3.3 Indikační LED připojeného napájení
3.2 Přijímač/vysílač RS 485 - MAX485 Na Obr. 3.4 MAX485 a ochrané obvody sběrnice RS485 je schéma převodníku na RS 485 pomocí IO MAX485 od firmy Maxim. Kvůli úspoře místa na desce je vybráno pouzdro μMAX a jednotlivé piny jsou popsány níže (Tab. 3.1). 3
RO
4
RE
5
DE
6
DI
7 8 1 2
GND A B Vcc
Receiver Output Pokud je A>B o 200mV je RO v high, opačně je RO v low. Receiver Output Enable. RO je funkční pokud je RE v low, jinak je ve stavu vysoké impedance. Driver Output Enable V high je povolen výstup zařízení. V low se nachází ve stavu vysoké impedance. Driver Input DI v low způsobí, že A je také v low a B je v high, jinak opačně. Zem Neinvertující vstup přijímače a výstup zařízení Invertující vstup přijímače a výstup zařízení Napájení 4,75V ≤ Vcc ≤5,25V Tab. 3.1 Definice pinů MAX485
Max485 a všechny pasivní součástky v schématu (Obr. 3.4) jsou galvanicky oddělené od zbytku desky pomocí optočlenů 6N137 (kapitola 3.5) a také napájení pomocí DC/DC konvertoru AIMTEC 0505SZ (kapitola 3.4). Transil D7 a diody D6, D9 jsou ochranné prvky, které brání překročení povoleného napětí. Rezistory R31, 34 a 35 vytváří odporový dělič. Ten určuje
18
dané logické úrovně. Aby na sběrnici mohlo být zároveň až 30 teploměrů, je zvolen vyšší terminační odpor R34. Tím se sice sníží maximální délka sběrnice, ale pro použití teploměru je to dostačující.
Obr. 3.4 MAX485 a ochrané obvody sběrnice RS485
3.3 watchdog – max690ACSA Všechny mikroprocesory je vhodné chránit proti nedefinovaným stavům programu i proti možnému rušení na sběrnici. Zároveň po připojení napájecího napětí vyžadují mikroprocesory resetovací impuls, díky němuž dochází k inicializaci vnitřních registrů a zabránění nechtěnému běhu programu. Bez resetu by mohla nastat situace, že se procesor pokusí o práci dokonce i v případě, kdy nedošlo k ustálení zdroje nebo hodinového kmitočtu a nastala by zcela nepředvídatelná situace. Pro tento požadavek existuje speciální hardware, který sleduje činnost mikrořadiče. Nejčastěji čítá impulsy posílané procesorem. Pokud nedostane po určitou dobu impuls, resetuje procesor, který se tak dostane do definovaného stavu. Existuje samozřejmě jednoduché a levné řešení. Umožňuje základní výrobu negovaného resetovacího signálu pro daný procesor. Avšak má určitá omezení, především v podobě nepřesných napěťových hladin a časování. Toto řešení je znázorněno na Obr. 3.5. (Podle [1]) 19
Obr. 3.5 Princip jednoduchého watchdogu
Pro aplikaci je zvolen obvod MAX690ACSA. Hlavní předností je dostupnost a přijatelná cena. Pracuje v rozmezí teplot 0–70 °C, což nevadí, protože celá deska je vyrobena na používání v pokojové teplotě a ne v extrémních podmínkách. Dále následuje tabulka (Tab. 3.2) s popisy pinů. Výstupní napájení CMOS RAM. Pokud je Vcc nad prahem 1
VOUT
resetování, Vcc se připojí na VOUT přes P kanál MOSFETu. Když je Vcc pod prahem resetování, tak vyšší z napětí Vcc nebo VBATT se připojí k VOUT.
2
VCC
3
GND
Napájecí napětí +5V. Zem Power Fail Comparator Input. Pokud klesne PFI pod 1,25V,
4
PFI
pak signal PFO jde na LOW. Když se signál nepoužije, připojí se PFI k VCC nebo k GND. Power Fail Output. Zůstává HIGH dokud PFI neklesne pod
5
PFO
6
WDI
1,25V. Watchdog Input. Pokud WDI zůstane v HIGH nebo LOW po dobu delší než 1,6s, vnitřní časovač přeteče a spustí reset. Reset Output. Pokud je reset spuštěn, vyšle puls LOW po dobu
7
RESET
200ms. Zůstává LOW, pokud VCC klesne pod 4,65V a dále 200ms po vrácení napětí nad 4,65V. Vstup záložní baterie. Pokud VCC klesne pod VBATT přepne se
8
VBATT
VBATT k VOUT. Před náhodným přepínáním je zde hystereze 40mV. Tab. 3.2 Popis pinů MAX690
20
Na Obr. 3.6 je znázorněno rozložení pinů v pouzdře SO8. Vlastní obvodové řešení je na obrázku Obr. 3.7. Odpory R12, R13, R17 a R37 jsou pull-up rezistory, které zajišťují definovanou hodnotu v logické jedničce a také určují maximální proud tekoucí otevřeným kolektorem, zároveň ovlivňují spotřebu přístroje. R7 a R16 tvoří odporový dělič. Pokud klesne napájení desky pod přibližnou hranici 7V, signál PFO bude v LOW. Záložní baterie není připojena, protože výpadek napájení se zjistí včas díky signálu PFO. K WDI je připojen časovač mikroprocesoru T1, který zajišťuje resetování vnitřního čítače watchdogu.
Obr. 3.6 Pouzdro MAX690
Obr. 3.7 Připojení watchdogu k mikroprocesoru
3.4 DC/DC - aimtec 0505SZ Pro galvanické oddělení napájení u sběrnice RS 485 slouží převodník DC/DC, který převádí 5V na 5V až do výkonu 1 Wattu.
3.5 Optočlen - 6N137
21
Pro zajištění galvanického oddělení
je použito optoelektrických
vazebních členů (optočlenů). S ohledem na cenu, dostupnost, velikost izolačního napětí a kmitočet jsem zvolil obvod 6N137 (datasheet [10]). Jedná se o optočlen schopný přenést až 10 MB/s. Má vhodný proudový přenosový činitel (CTR) a izolační napětí
2500Vrms. Vnitřní zapojení je vidět na
následujícím obrázku (Obr. 3.8).
Obr. 3.8 Vnitřní zapojení optočlenu
Obr. 3.9 Detail galvanického oddělení RS485
3.6 Teplotní čidlo dallas - 18B20 Vlastní funkci měření teploty provádí číslicový teploměr od firmy Dallas. Je schopný měřit teploty v rozsahu -55 °C až +125 °C s přesností
22
0,5 °C. Každé zařízení má svůj jedinečný sériový kód a komunikuje po jednovodičové sběrnici Dallas. Bližší specifikace komunikace s teploměrem je popsána v datasheetu obvodu [9].
3.7 EEPROM – ATMEL742 K mikroprocesoru je připojena dvoudrátová sériová EEPROM paměť ATMEL742 24C16AN,
která
obsahuje 16 Kb.
Pamět
komunikuje
s mikroprocesorem po sběrnici I2C (kapitola 2.1.2) a může být napájena v rozmezí 1,8 až 5,5V. Pin SDA (serial data) slouží k přenosu dat po sériové lince a pin SCL (serial clock input) přenáší synchronizační signál. Paměť nabízí možnost ochrany proti zápisu WP (write protect), která je nevyužita (Obr. 3.10). Dále je vidět, že identifikační adresa paměti je hardwarově nastavena na 000. Nastavení je provedeno adresovacími piny A0, A1 a A2, které jsou přivedeny na zem. Maximální počet těchto pamětí na jedné sběrnici je 8.
Obr. 3.10 Pouzdro a zapojení paměti na desce
3.8 Přepínač Na desce je osazen DIP spínač s 8 kontakty, který určuje adresu zařízení. Vlastní připojení k mikroprocesoru (Obr. 3.11) je na bráně P2 provedeno přes rezistorovou síť pro nastavení logické úrovně.
23
Obr. 3.11 Připojení přepínače k mikroprocesoru
3.9 LED display Pro
zobrazení
aktuální
teploty
a
stavu
teploměru
slouží
sedmisegmentový dvoumístný LED display se společnou anodou. Na Obr. 3.12 je vidět rozložení jednotlivých segmentů. Existuje několik možných způsobů zapojení. 1. Každý pin přímo připojit k mikroprocesoru. Tato možnost je sice nejjednodušší, ale zabírá příliš mnoho pinů mikroprocesoru. 2. Použít některý ze sériových posuvných registrů, například 74HCT595. Tato varianta se zdá být nejlepší. Uspoří nejvíce pinů mikroprocesoru, avšak použití dalších integrovaných obvodů znamená zvýšení výrobních nákladů a zvětšení desky plošného spoje. 3. Paralelní zapojení obou čísel a přepínání mezi nimi pomocí dvou PNP tranzistorů.
24
Na desce je použita tato varianta (Obr. 3.13). Odpory R52 a R53 určují proud tekoucí do báze PNP tranzistorů. Zbývající odpory slouží k definování proudu tekoucí LED diodami. Vlastní zobrazení bude probíhat střídáním jednotlivých čísel pomocí spínacích tranzistorů.
Obr. 3.12 Popis LED displaye
Obr. 3.13 Zapojení a ovládání LED diplaye
25
3.10 Mikroprocesor Základní částí, která dělá tento teploměr opravdu univerzálním je mikroprocesor. Ze zadání je použit mikroprocesor AT89C51ED2 od firmy Atmel. Jedná se o osmibitový procesor zajišťující provádění uživatelského programu a realizaci řídících algoritmů. Všechny periferie jsou na mikroprocesor připojeny přímo nebo přes sběrnice. Celý teploměr je konstruován pro tento typ mikroprocesoru. Po dokončení návrhu plošného spoje se firma rozhodla pro použití jiného mikroprocesoru se stejnými vlastnostmi, který je však čtyřikrát levnější. Z tohoto důvodu bylo rozhodnuto osazovat teploměry mikrokontroléry 89S52 od stejné firmy, a to
Atmel.
Porovnání jednotlivých vývodů je názorně vidět na Obr. 3.14 a Obr. 3.15 . Z obrázků je patrné, že až na první tři piny jsou zcela shodné, proto nadále nebudou rozdělovány. Podrobnější informace se dají nalézt v katalogových listech výrobce a jsou přiloženy v příloze [11] a [12].
Obr. 3.14 Rozložení pinů AT89C51ED2
26
Obr. 3.15 Rozložení pinů AT89S82
27
Problémy s odlišným způsobem programování jsou vyřešeny jedním zkratovacím odporem R56 (Obr. 3.16), který zaměňuje signál MOSI za signál
Obr. 3.16 Programování mikroprocesoru
PSEN. K bráně P0 je připojen LED display a ovládán pomocí P3.5 a P3.6. Přepínač určující adresu zařízení je na bráně P2. Mikroprocesor pracuje na frekvenci 11,0592MHz, což zajišťuje krystalový oscilátor. K pinům P1.2 a P1.3 je připojena dvojdioda se společnou katodou, která zobrazuje stav teploměru.
3.11 Celkové náklady Neméně důležitá část každého vývoje je spočítat celkové náklady na výrobu výrobku. V Tab. 3.3 je seznam jednotlivých komponentů s množstvím a cenou bez DPH. Díky změně mikroprocesoru je celková cena desky o 100,Kč levnější. Cena je samozřejmě pouze orientační a trochu nadsazená. Dále je zapotřebí přičíst cenu za DPS 70,- Kč, krabičku za 222,- Kč a práci při 28
osazování a kontrole desky 180,- Kč. Celkem 919,- Kč bez DPH. Tato cena je maximální. V praxi se nemusí osadit všechny součástky a velmi často se vynechává osazení LED displaye a přidružených komponentů.
29
Item Number 1 2 3 4 5 6 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Quantity 2 1 3 1 9 1 3 2 1 1 1 1 8 1 1 2 12 1 1 20 1 1 1 1 1 1 3 1 1 1
Value Part Cost Tot Cost 22p 1,00 2,00 4.7nF 1,00 1,00 100nF 1,00 3,00 4.7uF 1,00 1,00 ruzne 1,00 9,00 dvojdioda 2,00 4,00 1N4007 1,00 3,00 transil 4,00 8,00 LEDG 1,00 2,00 schottky 1,00 1,00 LED_seg2 20,00 20,00 konektor6 3,00 3,00 WAGO233 8,00 64,00 330uH 13,50 13,50 npn 1,00 1,00 pnp 1,00 2,00 4K7 0,10 1,20 220 0,10 0,10 15k 0,10 0,10 470 0,10 2,00 prepinac_8 11,00 11,00 89S52 35,00 35,00 MAX690 40,00 40,00 24C16 6,50 6,50 krystal 10,00 10,00 DC/DC 50,00 50,00 6N137 13,00 39,00 MAX485 32,13 32,13 lm2574m 35,00 35,00 D18B20 47,50 47,50 Tab. 3.3 Celkové náklady
30
Part Reference C10 C11 C12 C14 C17 C18 C15 C21 C23 R D16 D6 D13 D10 D7 D11 D8 D12 D15 K1 K L1 Q2 Q3 Q4 R R14 R15 R U2 U3 U4 U5 U6 U9 U10 U11 U13 U12 U15 U17
4 ZHODNOCENÍ Cílem této bakalářské práce byl návrh a realizace inteligentního číslicového teploměru. Schéma zapojení i návrh DPS bylo navrženo v prostředí ORCAD a výsledné soubory jsou přiloženy na CD. Oproti zadání je možno osadit jak mikroprocesor 89C51ED2, tak 89S52. Celý teploměr je odzkoušen a použit při regulaci topení v Poliklinice Tachov (http://www.poltc.cz/). V praxi se teploměr využívá bez LED displaye a informace o teplotě a otevřených či zavřených oknech předává centrální řídící jednotce. Celé zapojení se ukázalo opravdu multifunkční. Po záměně čtečky čipů Dallas za LED display se jednoduše získá zařízení schopné odemykání dveří oprávněným osobám či „píchačky“ příchodu a odchodu do práce. Jediný problém který se objevil je u programování mikroprocesoru. Návrh je založen na předpokladu, že při resetu jsou všechny piny mikroprocesoru ve stavu vysoké impedance. Tudíž signály sloužící k naprogramování jednoho typu mikroprocesoru nebudou ovlivňovat ostatní. Pro 89S52 jsou to signály MOSI, MISO a CLK, které jsou zároveň připojeny k signálům pro 89C51ED2 Rx, Tx, PSEN. Podle typu procesoru se musí tyto signály mechanicky přerušit, jinak se teploměr nedá naprogramovat.
31
5 POUŽITÉ ZDROJE [1]
Hw.cz [online]. 1999 [cit. 2010-05-19]. WatchDog pro mikrořadiče ATMEL. Dostupné z WWW:
.
[2]
VEDRAL, Josef; FISHER, Jan. Elektronické obvody pro měřící techniku. Praha : Vydavatelství ČVUT, 2004. 340 s.
[3]
Hw.cz [online]. 1998 [cit. 2010-05-20]. RS 485 & 422. Dostupné z WWW: .
[4]
VYSOKÝ, Ondřej. Elektronické systémy II. ČVUT v Praze : Česká technika, 2005. Impulzní napájecí zdroje, s. 198.
[5]
Hw.cz [online]. 2000 [cit. 2010-05-20]. Stručný popis sběrnice I2C. Dostupné z WWW: .
[6]
Maxim, MAX485 datasheet
[7]
Maxim, MAX690A-MAX805L datasheet
[8]
Aimtec, AM1S-Z datasheet
[9]
Dallas, DS18B20 datasheet
[10]
Fairchild, 6N137 datasheet
[11]
Atmel, 89C51ED2 datasheet
[12]
Atmel, 89S52 datasheet
[13]
VALEŠ, Miroslav. Inteligentní dům. Brno : ERA, 2006. 123 s. ISBN 80-7366-062-8.
32
6 SEZNAM OBRÁZKŮ Obr. 2.1 Blokové schéma teploměru .................................................................. 9 Obr. 2.2 Možné propojení jednotlivých IO ...................................................... 10 Obr. 2.3 časový průběh signálů SDA a SCL .................................................... 12 Obr. 2.4 Princip propustného měniče ............................................................... 14 Obr. 3.1 Pouzdro LM2574 ............................................................................... 17 Obr. 3.2 Schéma LM2574 s externími prvky ................................................... 17 Obr. 3.3 Indikační LED připojeného napájení ................................................. 18 Obr. 3.4 MAX485 a ochrané obvody sběrnice RS485 ..................................... 19 Obr. 3.5 Princip jednoduchého watchdogu ...................................................... 20 Obr. 3.6 Pouzdro MAX690 .............................................................................. 21 Obr. 3.7 Připojení watchdogu k mikroprocesoru ............................................. 21 Obr. 3.8 Vnitřní zapojení optočlenu ................................................................. 22 Obr. 3.9 Detail galvanického oddělení RS485 ................................................. 22 Obr. 3.10 Pouzdro a zapojení paměti na desce................................................. 23 Obr. 3.11 Připojení přepínače k mikroprocesoru ............................................. 24 Obr. 3.12 Popis LED displaye .......................................................................... 25 Obr. 3.13 Zapojení a ovládání LED diplaye .................................................... 25 Obr. 3.14 Rozložení pinů AT89C51ED2 ......................................................... 26 Obr. 3.15 Rozložení pinů AT89S82 ................................................................. 27 Obr. 3.16 Programování mikroprocesoru ......................................................... 28 Obr. 5.1 Celkový pohled na přední stranu.......................................................... II Obr. 5.2 Rozmístění součástek – přední strana .................................................. II Obr. 5.3 DPS - přední strana .............................................................................. II Obr. 5.4 Celkový pohled na zadní stranu ........................................................... II Obr. 5.5 DPS - zadní strana ................................................................................ II Obr. 5.6 Rozmístění součástek - zadní strana .................................................... II Obr. 5.7 Zapojení celého teploměru ................................................................. III
33
Příloha A CD /bakalarska_prace /Datasheets – katalogové listy k použitým součástkám /Dokument – text práce ve formátu PDF /Hardware – Návrh vlastního hardwaru /Foto – přiložené fotografie
I
Příloha B DPS Tato příloha obsahuje schéma celého zapojení inteligentního teploměru (Obr. 6.7) a pohledy na přední a zadní strany vyrobených DPS.
Obr. 6.1 DPS přední strana
Obr. 6.5 DPS - zadní strana
Obr. 6.3 Rozmístění součástek – přední strana
Obr. 6.6 Rozmístění součástek - zadní strana
II
Obr. 6.2 Celkový pohled na přední stranu
Obr. 6.4 Celkový pohled na zadní stranu
Obr. 6.7 Zapojení celého teploměru
III
Příloha C Obrazová dokumentace
IV
V
VI
VII