VYSOKÉ UýENÍ TECHNICKÉ V BRNċ BRNO UNIVERSITY OF TECHNOLOGY
FAKULTA ELEKTROTECHNIKY A KOMUNIKAýNÍCH TECHNOLOGIÍ ÚSTAV RADIOELEKTRONIKY FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION DEPARTMENT OF RADIO ELECTRONICS
BAROMETRICKÝ VÝŠKOMċR PRO RC MODELY LETADEL BAROMETRIC ALTITUDE METER FOR RC PLANE MODELS
BAKALÁěSKÁ PRÁCE BACHELO‘S THESIS
AUTOR PRÁCE
MARTIN DUJÍýEK
AUTHOR
VEDOUCÍ PRÁCE SUPERVISOR
BRNO 2012
Ing. JAN PROKOPEC, Ph.D.
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta elektrotechniky a komunikačních technologií Ústav radioelektroniky
Bakalářská práce bakalářský studijní obor Elektronika a sdělovací technika Student: Ročník:
Martin Dujíček 3
ID: 125408 Akademický rok: 2011/2012
NÁZEV TÉMATU:
Barometrický výškoměr pro RC modely letadel POKYNY PRO VYPRACOVÁNÍ: Prostudujte možnosti realizace výškoměru pro RC modely letadel pomocí barometrických snímačů. Navrhněte koncepci zařízení pro záznam letové hladiny RC modelu. Při návrhu minimalizujte rozměry zařízení a proudový odběr. Data se budou ukládat v letadle a stahovat do PC po ukončení letu. Připravte software pro zařízení a koncept software pro komunikaci s PC pro stahování údajů o letu. Realizujte navržené zařízení, vytvořte software pro komunikaci s PC. Experimentálně ověřte funkci zařízení a sestavte podrobnou dokumentaci. DOPORUČENÁ LITERATURA: [1] BURKHARD, M. C pro mikrokontroléry. Praha: BEN - technická literatura, 2003. [2] FRÝZA, T., FEDRA, Z., ŠEBESTA, J. Mikroprocesorová technika. Počítačová cvičení. Elektronické skriptum. Brno: FEKT VUT v Brně, 2009. Termín zadání:
6.2.2012
Termín odevzdání:
25.5.2012
Vedoucí práce: Ing. Jan Prokopec, Ph.D. Konzultanti bakalářské práce:
prof. Dr. Ing. Zbyněk Raida Předseda oborové rady
UPOZORNĚNÍ: Autor bakalářské práce nesmí při vytváření bakalářské práce porušit autorská práva třetích osob, zejména nesmí zasahovat nedovoleným způsobem do cizích autorských práv osobnostních a musí si být plně vědom následků porušení ustanovení § 11 a následujících autorského zákona č. 121/2000 Sb., včetně možných trestněprávních důsledků vyplývajících z ustanovení části druhé, hlavy VI. díl 4 Trestního zákoníku č.40/2009 Sb.
ABSTRAKT Cílem této práce je návrh barometrického výškomČru urþeného pro RC modely letadel. BČhem letu je zaznamenávána hodnota ze snímacího prvku do pamČti. Po ukonþení letu a po pĜipojení zaĜízení k poþítaþi je možné data pĜeþíst nebo smazat. PĜijatá data je dále možné zpracovat napĜíklad do grafické podoby.
KLÍýOVÁ SLOVA Tlak, výška, výškomČr, RC model
ABSTRACT The aim of this thesis is to design barometric altimeter for RC plane models. During the flight the value from sensing element is stored in memory. After the flight and connect to computer it is possible to read or erase data from memory. Received data si possible to proces for example to graph.
KEYWORDS Pressure, altitude, altimeter, RC model
DUJÍýEK, M. Barometrický výškomČr pro RC modely letadel. Brno: Vysoké uþení technické v BrnČ, Fakulta elektrotechniky a komunikaþních technologií, 2012. 38 s. Vedoucí semestrální práce Ing. Jan Prokopec, Ph.D.
PROHLÁŠENÍ Prohlašuji, že svou bakaláĜskou práci na téma Barometrický výškomČr pro RC modely letadel jsem vypracoval samostatnČ pod vedením vedoucího semestrální práce a s použitím odborné literatury a dalších informaþních zdrojĤ, které jsou všechny citovány v práci a uvedeny v seznamu literatury na konci práce. Jako autor uvedené bakaláĜské práce dále prohlašuji, že v souvislosti s vytvoĜením této bakaláĜské práce jsem neporušil autorská práva tĜetích osob, zejména jsem nezasáhl nedovoleným zpĤsobem do cizích autorských práv osobnostních a/nebo majetkových a jsem si plnČ vČdom následkĤ porušení ustanovení § 11 a následujících zákona þ. 121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o zmČnČ nČkterých zákonĤ (autorský zákon), ve znČní pozdČjších pĜedpisĤ, vþetnČ možných trestnČprávních dĤsledkĤ vyplývajících z ustanovení þásti druhé, hlavy VI. díl 4 Trestního zákoníku þ. 40/2009 Sb. V BrnČ dne ..............................
.................................... (podpis autora)
PODċKOVÁNÍ DČkuji vedoucímu semestrální práce Ing. Janu Prokopcovi, Ph.D. za úþinnou metodickou, pedagogickou a odbornou pomoc a další cenné rady pĜi zpracování mé bakaláĜské práce.
V BrnČ dne ..............................
.................................... (podpis autora)
OBSAH Seznam obrázkĤ
viii
Seznam tabulek
ix
Úvod
10
1
11
2
MČĜení výšky 1.1
ZpĤsoby mČĜení výšky............................................................................ 11
1.2
Barometrické mČĜení výšky .................................................................... 11
1.2.1
Zemská atmosféra ............................................................................... 11
1.2.2
Atmosférický tlak ............................................................................... 11
1.2.3
Urþení výšky ....................................................................................... 12
Návrh výškomČru 2.1
Tlakový senzor........................................................................................ 14
2.1.1
Integrované senzory tlaku Freescale................................................... 14
2.1.2
Použitý tlakový senzor........................................................................ 15
2.2
A/D pĜevodník ........................................................................................ 16
2.2.1
Rozlišení A/D pĜevodníku .................................................................. 16
2.2.2
Použitý A/D pĜevodník ....................................................................... 18
2.2.3
Komunikace s pĜevodníkem ADS1100 .............................................. 18
2.3
Externí datová pamČĢ.............................................................................. 19
2.3.1
Velikost datové pamČti ....................................................................... 19
2.3.2
Požitá externí pamČĢ ........................................................................... 20
2.3.3
Zápis do pamČti 24LC512................................................................... 20
2.3.4
ýtení z pamČti 24LC512 ..................................................................... 21
2.4 2.4.1 2.5 3
14
Mikrokontrolér........................................................................................ 21 Režim snížené spotĜeby ...................................................................... 22 Obvodové zapojení ................................................................................. 23
softwarová þást 3.1 3.1.1
24
ěídící program mikrokontroléru ............................................................. 24 MČĜení ................................................................................................. 25
vi
3.1.2
Komunikace s PC................................................................................ 27
3.2
Program na stranČ poþítaþe ..................................................................... 29
ZávČr
32
Literatura
33
Seznam pĜíloh
34
4
vii
SEZNAM OBRÁZKģ Obrázek 1.1:
Závislost atmosférického tlaku na výšce podle (1.1), kde je výchozí výškou hladina moĜe. .......................................................................... 12
Obrázek 2.1:
Blokové schéma zapojení navrhovaného výškomČru. ........................ 14
Obrázek 2.2:
Ilustraþní obrázek tlakového senzoru MPXH6115A6U, [6]. ............. 15
Obrázek 2.3:
Blokové schéma vnitĜního zapojení tlakového senzoru, [5]............... 16
Obrázek 2.4:
ZnázornČní úpravy signálu z tlakového senzoru................................. 17
Obrázek 2.5:
PrĤbČh na lince SDA pĜi zápisu do konfiguraþního registru ................. ADS1100 ............................................................................................ 19
Obrázek 2.6:
PrĤbČh na lince SDA pĜi þtení datového registru ADS1100 .............. 19
Obrázek 2.7:
Zjednodušené vyobrazení pamČti 24LC512, [10]............................... 20
Obrázek 2.8:
PrĤbČh na lince SDA bČhem zápisu dvou bytĤ................................... 21
Obrázek 2.9:
PrĤbČh na lince SDA bČhem þtení sekvence bytĤ. ............................. 21
Obrázek 3.1:
Vývojový diagram, hlavní program.................................................... 24
Obrázek 3.2:
Vývojový diagram, hlavní program, mČĜící þást. ............................... 25
Obrázek 3.3:
Vývojový diagram, obsluha pĜerušení od þasovaþe/þítaþe 1 .............. 26
Obrázek 3.4:
Vývojový diagram, hlavní program, komunikaþní þást...................... 28
Obrázek 3.5:
Vývojový diagram, obsluha pĜerušení pĜi dokonþení pĜíjmu pomocí USART ............................................................................................... 28
Obrázek 3.6:
Vývojový diagram, pĜíjem dat z výškomČru ...................................... 30
Obrázek 3.7:
PĜíklad grafického zobrazení záznamu ............................................... 31
viii
SEZNAM TABULEK Tabulka 2.1:
Tabulka typických hodnot vlastnosti þidla MPXH6115A6U, [5]. ..... 15
Tabulka 2.2:
Konfiguraþní registr pĜevodníku ADS1100........................................ 19
Tabulka 3.1:
Struktura vnitĜní datové pamČti mikrokontroléru ............................... 26
Tabulka 3.2:
ZnázornČní ukládání namČĜených hodnot do pamČti.......................... 27
ix
ÚVOD Cílem této práce je návrh výškomČru pro RC modely letadel. VýškomČr využívá mČĜení barometrického tlaku, který je na výšce závislý a následný pĜepoþet rozdílu tlaku vĤþi referenþní hodnotČ na výšku, pomocí barometrické rovnice. Jako referenþní hodnota se používá hodnota barometrického tlaku v místČ zaþátku mČĜení (v místČ startu). Další hodnoty jsou získávány každou pĤl sekundu. Barometrický výškomČr je urþen pro RC modely letadla. PĜi návrhu zaĜízení je proto nutné detailnČ prostudovat pĜepokládaný rozsah mČĜené výšky. Maximální výška, které model dosáhne, se pĜedpokládá, že nepĜesáhne 2000 metrĤ nad moĜem. Tomuto rozsahu bude zaĜízení pĜizpĤsobeno. PĜi návrhu zaĜízení bude kladen dĤraz na minimální rozmČry zaĜízení, aby bylo možné jeho umístČní uvnitĜ modelu. Minimalizována bude také jeho spotĜeba, aby nedocházelo k pĜílišnému negativnímu ovlivnČní délky doby možného letu. Napájení bude zajištČno akumulátory v letadle. BČhem letu budou výškomČrem zaznamenávány údaje do pamČti. PamČĢ bude mít dostateþnou kapacitu pro záznam i nČkolik hodin. NamČĜená data bude po pĜipojení k poþítaþi možné vyþíst a dále zpracovat. Uživatel se tak dozví, jaký byl výškový profil letu s jeho RC modelem, jaké maximální výšky dosáhl, atd. Díky tomu mĤže napĜíklad i zlepšovat svou techniku letu a vést si statistiku svých výkonĤ.
10
1
MċěENÍ VÝŠKY
1.1 ZpĤsoby mČĜení výšky ZpĤsobĤ mČĜení výšky je nČkolik. Každý má své výhody i nevýhody a každý se hodí v rĤzných pĜípadech. Následující zpĤsoby jsou pĜevzaty z [1]. Jeden ze zpĤsobĤ urþování výšky je založen na principu vyslání urþitého signálu k povrchu a podle doby, kdy je zaznamenán odraz, je urþena výška. Jedná se tedy o princip radaru, když je použit signál radiový, sonaru pro signál zvukový. Použit mĤže být i laserový paprsek. Tento zpĤsob mČĜení je velmi pĜesný, ale pro výškomČr v letadle se nehodí. Letadlo bČhem letu þasto mČní svou polohu vĤþi zemi a nebylo by možné zajistit, aby byl signál vždy vyslán a pĜijat kolmo k povrchu. Dalším ze zpĤsobĤ mČĜení výšky je pomocí systému GPS. Tento zpĤsob je ale pro urþování výšek nepĜesný. V letecké dopravČ se požívá barometrické urþování výšek. Využívá zmČny atmosférického tlaku s výškou. Tento zpĤsob bude využit u výškomČru, jehož návrhem se tato práce zabývá.
1.2 Barometrické mČĜení výšky 1.2.1 Zemská atmosféra Zemská atmosféra je vzdušným obalem naší planety, který je tvoĜen bohatou smČsí plynĤ. Nejvíce je zde zastoupen dusík, který tvoĜí 78% celkového objemu a dále kyslík (21%). Zbylé 1% tvoĜí nejen ostatní plyny (argon, oxid uhliþitý, atd.), ale také pevné þástice (prach, pyly, ..) a vodní páry. Hmotnost atmosféry pĜedstavuje jen pouze jednu miliontinu hmoty ZemČ. Atmosféra má nejvČtší význam jako ochranný obal a izolaþní vrstva. ZabraĖuje vniku nebezpeþného sluneþního a kosmického záĜení a také svou tepelnou setrvaþností brání pĜílišným výkyvĤm teploty [2]. NejdĤležitČjší vlastností atmosféry pro tuto práci je závislost atmosférického tlaku na zmČnČ výšky.
1.2.2 Atmosférický tlak Atmosférický tlak je zpĤsoben tíhou vzduchového sloupce nad urþitou plochou. Situaci komplikuje fakt, že je vzduch stlaþitelný, nemá s rostoucí výškou stejnou hustotu a s rostoucí výškou vzduch Ĝídne. Tlak se s rostoucí výškou tedy nemČní lineárnČ, ale exponenciálnČ klesá. Tuto závislost popisuje barometrická rovnice (1.1), [2], [3].
11
§ − g a ⋅ M ⋅ (h − ha ) · ¸¸ , P = Pa ⋅ exp¨¨ R ⋅ Ta ¹ ©
(1.1)
kde P [Pa] je tlak ve výšce h [m], Pa [Pa] tlak ve výchozí výšce ha [m], ga [m.s-2] tíhové zrychlení ve výchozí výšce, Ta [K] teplota ve výchozí výšce. Konstanta M je molární hmotnost vzduchu 0,02897 kg.mol-1 a R univ. plynová konstanta 8,31451 J.K-1.mol-1. Graficky je tato závislost uvedena na Obrázek 1.1. Pro výpoþet byla použita, jako výchozí výška, hladina moĜe ha = 0 m, kde jsou pro tlak, teplotu a tíhové zrychlení dosazeny hodnoty podle mezinárodní standardní atmosféry, [1]. Tedy Pa = 101,325 kPa, Ta = 288,15 K a ga = 9,8066 m.s-2. Závislost atmosférického tlaku na výšce 110 100 90
tlak P[kPa]
80 70 60 50 40 30 0
1000
Obrázek 1.1:
2000
3000
4000 výška h[m]
5000
6000
7000
8000
Závislost atmosférického tlaku na výšce podle (1.1), kde je výchozí výškou hladina moĜe.
1.2.3 Urþení výšky Po úpravČ barometrické rovnice (1.1) se dostane vztah pro vyjádĜení výšky (1.2):
§
·
(h − ha ) = ∆h = − R ⋅ Ta ⋅ ln¨¨ P ¸¸ . M ⋅ ga
(1.2)
© Pa ¹
Kde ǻh [m] je vzdálenost od výchozí hladiny ha.
12
Pro zpracování zmČĜeného tlaku na výšku, by bylo nutné implementovat do pomČrnČ jednoduchého mikrokontroléru výpoþet pĜirozeného logaritmu. S výhodou se mĤže využít toho, že k zobrazení namČĜených dat dojde až po pĜipojení k poþítaþi. Nemusí být tedy tento pĜepoþet realizován ve výškomČru, ale výpoþet mĤže provést až poþítaþ v rámci zpracování namČĜených dat.
13
2
NÁVRH VÝŠKOMċRU
Celé zaĜízení se skládá z nČkolika blokĤ, jak naznaþuje blokové schéma na Obrázek 2.1. Každý z blokĤ bude rozebrán v následujících kapitolách.
Obrázek 2.1:
Blokové schéma zapojení navrhovaného výškomČru.
2.1 Tlakový senzor Jak již bylo dĜíve zmínČno, bude se tato práce zabývat návrhem barometrického výškomČru. K urþování výšky je využito zmČny tlaku s výškou. Tlak, resp. jeho zmČna v prĤbČhu letu, bude mČĜen pomocí tlakového senzoru. Na základČ doporuþení a hlavnČ díky dostupnosti bude použit tlakový senzor od firmy Freescale.
2.1.1 Integrované senzory tlaku Freescale Následující odstavce jsou pĜevzaty z [4]. V dnešní dobČ integrované senzory tlaku pĜedstavují komplexní systém. Obsahují nejen snímací prvek, který je citlivý na tlak, ale také výstupní obvody a elektroniku, která se stará o zpracování namČĜeného signálu senzorovou þástí. Takto upravený signál dále poskytují na svém výstupu v definované lineární analogové, nebo digitální podobČ. Navíc se vnitĜní elektronika mĤže postarat o kompenzaci nechtČných vnČjších vlivĤ, v tomto pĜípadČ nejþastČji o kompenzaci vlivu teploty. Senzory tlaku mají uplatnČní tam, kde se pracuje s plyny, kapalinami, pneumatickými systémy. NapĜ. ve zdravotnictví, mČĜení a regulace, domácí spotĜebiþe, automobily,…a právČ i jako barometry nebo výškomČry. Podle zpĤsobu mČĜení se tyto senzory dají rozdČlit na tĜi skupiny. Jedna skupina pro mČĜení absolutního tlaku, které mČĜí tlak oproti referenci blízké vakuu. Takovýto senzor s vhodným rozsahem je použit k mČĜení atmosférického tlaku. Další skupinou
14
jsou diferenþní (rozdílové) senzory tlaku. Ty mČĜí rozdíl tlakĤ dvou prostĜedí, nezávisle na okolí. A tĜetí skupinou jsou manometrické senzory tlaku, které jsou obdobou diferenþních a mČĜí rozdílový tlak oproti okolnímu atmosférickému tlaku. Dalším kritériem pro dČlení tlakových senzorĤ mĤže být struktura a princip fungování snímacích prvkĤ. V každém pĜípadČ se využívá mechanické deformace nČjakého prvku, zpĤsobené rozdílem tlaku dvou prostĜedí. Tento prvek tímto mČní své elektrické vlastnosti. NapĜíklad zmČna kapacity, kdy se pĤsobícím tlakem k sobČ pĜibližují (oddalují) elektrody kondenzátoru. ZmČna odporu tenzometrĤ (odporové cesty) zapojených do mĤstku, které mČní svĤj odpor, když mČní svĤj rozmČr prĤhybem membrány díky pĤsobícímu tlaku. Nebo piezoelektrický jev, kdy tlak zpĤsobí vznik elektrického napČtí.
2.1.2 Použitý tlakový senzor Tlakový senzor pro tuto aplikaci byl vybrán na základČ dostupnosti a vhodných parametrĤ, jako je rozsah mČĜitelných tlakĤ, napájení, atd. od firmy Freescale, konkrétnČ MPXH6115A6U, na Obrázek 2.2. Podle kritérií uvedených výše, tento senzor patĜí ke skupinČ mČĜící absolutní tlak a je založen na principu zmČny odporu tenzometrĤ, zapojených v mĤstku. Obrázek 2.3 znázorĖuje vnitĜní blokové zapojení integrovaného obvodu na þipu senzoru. DĤležité vlastnosti zvoleného tlakového senzoru jsou uvedeny v Tabulka 2.1. PĜedpokládané napájecí napČtí je 5V, teplota okolí 25°C. Rozsah mČĜitelného tlaku 15 - 115 kPa Napájecí napČtí 5 V Napájecí proud 6 mA Citlivost 45,0 mV/kPa Doba reakce na zmČnu 1 ms Pracovní teplota -40 - 120 °C Tabulka 2.1:
Tabulka typických hodnot vlastnosti þidla MPXH6115A6U, [5].
Obrázek 2.2:
Ilustraþní obrázek tlakového senzoru MPXH6115A6U, [6].
Rozsah mČĜitelného tlaku daného senzoru je 15 kPa až 115 kPa. To po pĜepoþtu podle vztahu (1.2) vzhledem k referenþní výšce 0 m odpovídající hladinČ moĜe, odpovídá výškám od 1067 m pod úrovní hladiny moĜe až do 16109 m nad moĜskou hladinou. Tento rozsah je více než dostaþující.
15
Obrázek 2.3:
Blokové schéma vnitĜního zapojení tlakového senzoru, [5].
Výstupem tlakového senzoru je analogová hodnota napČtí UOUT. Jeho velikost, pro urþitou hodnotu zmČĜeného tlaku, je dána následující rovnicí (2.1), [5]. U OUT = U S ⋅ (0,009 ⋅ P − 0,095) ,
(2.1)
kde UOUT [V] je výstupní hodnota napČtí, US [V] napájecí napČtí a P [kPa] zmČĜená hodnota tlaku. Další zpracování této hodnoty bude realizováno þíslicovČ. Bude tedy nutné tuto analogovou hodnotu pĜevést do digitální podoby.
2.2 A/D pĜevodník Dalším blokem v zaĜízení je AD pĜevodník, aby bylo možné namČĜené hodnoty zpracovat þíslicovČ. Bitové rozlišení pĜevodníku se musí urþit takové, aby výškomČr zaznamenával výšku s pĜesností alespoĖ na celé metry a pro vnitĜní zpracování alespoĖ na pĤl metru, aby nedocházelo k pĜílišným nepĜesnostem.
2.2.1 Rozlišení A/D pĜevodníku ZmČna tlaku pĜipadající na 1 metr je v našich podmínkách podle (1.1), ve výšce asi 300 m.n.m, 11,6 Pa. Citlivost senzoru je 45mV/kPa. To znamená, že zmČna napČtí na výstupu tlakového senzoru je 522 µV na jeden metr výšky. Na pĤl metru potom polovina, tj. 261 µV, pro jednoduchost 250 µV. V pĜípadČ referenþního napČtí pĜevodníku 5V je potĜebný poþet hladin: poþ .hladin =
U REF 5 = = 20000 . ∆U 0,5m 250 ⋅ 10 −6
16
(2.2)
Bitové rozlišení pĜevodníku bude potom potĜeba minimálnČ: 2 n = 20000 log 2 n = log 20000 . n ⋅ log 2 = log 20000 log 20000 = 14,3 ≈ 15bitĤ n= log 2
(2.3)
PotĜebné bitové rozlišení A/D pĜevodníku je možné snížit, vezmou-li se v úvahu podmínky, ve kterých bude zaĜízení pracovat. Atmosférický tlak se v našich podmínkách pohybuje v rozmezí 98 kPa až 105 kPa, tyto hodnoty jsou založeny na základČ statistik mČĜení amatérské meteorologické stanice v BrnČ [7]. Dalším pĜedpokladem mĤže být, že výška, ve které se bude model pohybovat nepĜesáhne 2 km. V této výšce tlak dosahuje hodnoty asi 77,3 kPa (podle (1.1)), pĜi 98 kPa na hladinČ moĜe). VýškomČr tedy musí být schopen mČĜit tlak v rozmezí 77,3 kPa až 105 kPa. Tomu na výstupu tlakového senzoru odpovídá, podle (2.1), rozsah napČtí 3,003 V až 4,250 V. To pĜedstavuje z celkového 5 V mČĜitelného intervalu pouze jednu þtvrtinu. Vhodnou úpravou výstupního signálu senzoru mĤže dojít k lepšímu využití mČĜících schopností A/D pĜevodníku. Tuto úpravu by mohl zajistit diferenþní zesilovaþ, jak je znázornČno na Obrázek 2.4. Signál z výstupu tlakového senzoru je pĜiveden na kladnou svorku zesilovaþe. PĜivedením referenþního napČtí 3 V na záporný vstup zesilovaþe dojde k posunutí signálu o tyto 3 V „níže.“ Když se takto upravený signál navíc þtyĜikrát zesílí, bude využito celého 5 V rozsahu A/D pĜevodníku.
Obrázek 2.4:
ZnázornČní úpravy signálu z tlakového senzoru
Namísto dalšího samostatného bloku diferenþního zesilovaþe je využit A/D pĜevodník s diferenþním vstupem a programovatelným zesilovaþem. Díky tomu se potĜebné úpravy signálu obejdou bez rozšiĜování výsledného zapojení o další samostatné bloky. Díky této úpravČ signálu pĜed A/D pĜevodem, tj. þtyĜnásobné zesílení, staþí þtvrtinový poþet napČĢových hladin pĜevodníku a tedy o 2 bity nižší rozlišení, tj. 13 bitĤ, pro stejnou rozlišovací schopnost.
17
Hodnota LSB (nejnižší bit) výsledku odpovídá hodnotČ napČtí : LSB ≈
5 = 610,4 µV . 213
ZmČna napČtí, která odpovídá zmČnČ výšky o jeden metr, je po zesílení 2088 µV. ZmČnČ napČtí o 610,4 µV potom odpovídá výška asi 30 cm. S touto rozlišovací schopností je výškomČr teoreticky schopen mČĜit. Použitý mikrokontrolér sice obsahuje AD pĜevodník, ale pouze s 10-bitovým rozlišením. To je bohužel pro tuto aplikaci nedostaþující a musí být použita další externí souþástka.
2.2.2 Použitý A/D pĜevodník Ve výškomČru je použit A/D pĜevodník ADS1100 od firmy Texas Instruments, následující odstavce jsou pĜevzaty z [8]. PĜevodník obsahuje diferenþní vstup, zesilovaþ s programovatelným zesílením 1, 2, 4, nebo 8 a rozlišení až 16 bitĤ v závislosti na rychlosti pĜevodu. Jako referenci využívá napájecí napČtí. Komunikace s ním je zajištČna pomocí sbČrnice I2C, která je popsána v [9]. Výstupní þíslo NOUT, výsledek pĜevodu, je dáno vztahem:
N OUT = −1 ⋅ N MIN ⋅ PGA ⋅
U IN + − U IN − , U CC
(2.4)
kde NMIN je maximální záporný výsledek pĜevodu. Ten závisí na zvoleném bitovém rozlišení. PGA je nastavené zesílení programovatelného zesilovaþe, UIN+ [V] je analogová hodnota na kladné vstupní svorce, UIN- [V] je hodnota napČtí na záporné vstupní svorce a UCC [V] napájecí napČtí, které zároveĖ tvoĜí referenþní hodnotu. Vstupní napČtí na kladné vstupní svorce, které je tvoĜeno výstupem z tlakového senzoru se po úpravČ (2.4) dá vyjádĜit jako:
U IN + =
− N OUT ⋅ U CC + U IN − . N MIN ⋅ PGA
(2.5)
A/D pĜevodník je použit v režimu, kdy má rozlišení 14 bitĤ. V našem pĜípadČ je využita pouze polovina celkového rozsahu, jen jeho kladná þást, tedy potĜebných 13 bitĤ. Tomu odpovídá rychlost pĜevodĤ 32 SPS a maximální záporná hodnota rozsahu NMIN je -8192, [8]. Za UCC se mĤže dosadit napájecí napČtí 5 V. Na zápornou vstupní svorku je pĜivedeno z referenþního zdroje napČtí 3 V a zesílení PGA je nastaveno na 4. Tím je dosaženo úpravy signálu, jak je naznaþeno v pĜedchozí kapitole a na Obrázek 2.4.
2.2.3 Komunikace s pĜevodníkem ADS1100 Nastavení režimu a požadovaných hodnot se provede zápisem do konfiguraþního registru pĜevodníku, ten je spolu z pĜíslušnými hodnotami znázornČn v Tabulka 2.2.
18
bit jméno hodnota Tabulka 2.2:
7 ST/BSY x
6 0 0
5 0 0
4 SC 0
3 DR1 0
2 DR0 1
1 PGA1 1
0 PGA0 0
Konfiguraþní registr pĜevodníku ADS1100
Bitem SC je nastaven tzv. kontinuální režim, kdy pĜevodník provádí jeden pĜevod za druhým. Bit ST/BSY nemá v tomto režimu žádný význam. DR1:0 je nastavena rychlost pĜevodĤ 32 SPS a rozlišení 14 bitĤ. PGA1:0 nastavuje zesílení na 4. PrĤbČh komunikace na lince SDA sbČrnice I2C pĜi zápisu do konfiguraþního registru, je znázornČna na Obrázek 2.5. Po startovací podmínce „START“ následuje adresa pĜevodníku „1001000“ a bit W „0“ urþující zápis. PĜevodník potvrdí že pĜijal pokyn od Ĝídícího obvodu bitem „ACK.“ Jako další je vyslán obsah pro zápis do registru, potvrzený od pĜevodníku a komunikaci ukonþuje „STOP“ ukonþovací podmínka.
Obrázek 2.5:
PrĤbČh na lince SDA pĜi zápisu do konfiguraþního registru ADS1100.
Další registr, který pĜevodník obsahuje, je datový registr, kde se ukládá výsledek pĜevodu. Z tohoto registru je umožnČno pouze þtení. Komunikace pĜi þtení je velmi podobná jako pĜi zápisu a je znázornČna na Obrázek 2.6. Adresa pĜevodníku je doplnČna o bit R „1“ pro þtení. PĜeþtením dvou blokĤ se dostane obsah datového registru, nejprve vyšší potom nižší byte. PĜeþtením dalšího datového bloku by se dostal obsah konfiguraþního registru. Komunikace je opČt ukonþena ukonþovací podmínkou „STOP.“
Obrázek 2.6:
PrĤbČh na lince SDA pĜi þtení datového registru ADS1100.
2.3 Externí datová pamČĢ 2.3.1 Velikost datové pamČti Data zaznamenaná bČhem letu bude potĜeba ukládat do nČjakého pamČĢového prostoru, aby mohla být po ukonþení letu a po pĜipojení k poþítaþi zpracována. Údaje budou ukládány každou pĤl sekundu a velikostí budou odpovídat datovému registru
19
A/D pĜevodníku, tedy 16 bitĤ (2 Byty). Hodinový záznam (3600 s) bude mít velikost 14400 B. Velice pravdČpodobné je, že nebude možné vždy po hodinČ data stáhnout. Let mĤže trvat i déle nebo uživatel nemá v tu chvíli k dispozici poþítaþ. PamČĢ tedy musí „pojmout“ vČtší objem dat. PamČĢ, která je souþástí mikroprocesoru není na tento úþel vhodná, pro svou malou kapacitu. Musí být tedy vybrána externí pamČĢ. Zvolená pamČĢ má kapacitu 64 kB (65536 B). Do pamČti bude možné uložit záznam odpovídající asi 4,5 hodinám.
2.3.2 Požitá externí pamČĢ Použitá pamČĢ je od firmy Microchip, konkrétnČ 24LC512 [10]. Jedná se o pamČĢ typu EEPROM o kapacitČ 64 kB, se strukturou 64k x 8. Komunikace s ní je zajištČna opČt prostĜednictvím sériové sbČrnice I2C. Na Obrázek 2.7 je vyobrazeno zjednodušenČ osmi-pinové pouzdro, ve kterém je pamČĢ umístČna. Význam jednotlivých pinĤ je následující. A0, A1, A2 tvoĜí spodní tĜi bity sedmibitové adresy, pomocí které se bude k této konkrétní souþástce pĜistupovat, pĜi komunikaci pomocí I2C. Vcc a Vss (ground) tvoĜí napájení. WP (write protect) umožĖuje zakázat zápis do pamČti. Tento pin musí být pĜipojen bućto k pinu Vcc pro zákaz, nebo k Vss pro povolení zápisu. ýtení není nijak ovlivnČno. SCL a SDA slouží pro sériovou komunikaci I2C.
Obrázek 2.7:
Zjednodušené vyobrazení pamČti 24LC512, [10].
2.3.3 Zápis do pamČti 24LC512 Zápis do pamČti mĤže probíhat po jednom bytu, nebo po posloupnosti až 128 bytĤ. V tomhle konkrétním pĜípadČ bude zápis probíhat vždy po dvou bytech, které odpovídají vyššímu a nižšímu bytu ukládané hodnoty, odpovídající získané hodnotČ z A/D pĜevodníku. PrĤbČh komunikace po lince SDA, pĜi zápisu dat, je naznaþen na Obrázek 2.8. Komunikace zaþíná startovací podmínkou, následuje sedmi bitová adresa zaĜízení. K ní je pĜidán bit R/ W nastaven pro zápis (log. 0) a potvrzovací signál od pamČti ACK. Poté se neadresuje místo v pamČti, na které se bude zapisovat. Nejprve vyšší byte, opČt ACK a nižší byte, ACK. Pak pĜichází samotná ukládaná data, datový vyšší byte, ACK nižší byte, ACK a nakonec ukonþovací podmínka.
20
Obrázek 2.8:
PrĤbČh na lince SDA bČhem zápisu dvou bytĤ.
2.3.4 ýtení z pamČti 24LC512 ýtení hodnot z pamČti probíhá sekvenþnČ. První kroky postupu þtení probíhají podobnČ jako v pĜípadČ zápisu. Po nižším bytu adresy jen nenásledují data pro zapsání, ale zaþíná další startovací podmínka. Za ní je vyslána adresa pamČti s bitem R/ W nastaveným pro þtení, (log. 1). Dále už je možné þíst data po bytech, která se nachází od zadané adresy a dál. Adresování vysílaných dat je zajištČno vnitĜní logikou pamČti. Každý takto pĜijatý byte je potvrzen signálem ACK tentokrát od Ĝídícího zaĜízení (mikrokontrolér). PĜi pĜeþtení posledního bytu mikrokontorlér nepotvrzuje a generuje ukonþovací podmínku. PrĤbČh komunikace je znázornČn na Obrázek 2.9.
Obrázek 2.9:
PrĤbČh na lince SDA bČhem þtení sekvence bytĤ.
2.4 Mikrokontrolér Veškerá þinnost výškomČru a práce s daty z pĜevodníku je Ĝízena mikrokontrolérem. Díky již získaným zkušenostem s mikrokontroléry AVR od firmy Atmel, byl vybrán osmi-bitový mikrokontrolér z Ĝady megaAVR. KonkrétnČ ATmega32U4 [11]. Tato konkrétní souþástka byla vybrána, protože obsahuje potĜebné vnitĜní periferie pro sériovou komunikaci I2C (u AVR pojmenovaná TWI), potĜebné pro pĜipojení A/D pĜevodníku a externí pamČti. Jeden z hlavních dĤvodĤ výbČru mikrokontroléru ATmega32U4 je také to, že
21
obsahuje obvody potĜebné pro komunikaci pomocí universální sériové sbČrnice, USB, pĜes kterou je možné nahrát uživatelský program. Není tedy potĜeba žádný programátor. Nahrání programu se provádí pomocí programu FLIP [12], který je dostupný na stránkách výrobce [13]. V þásti programové pamČti je od výrobce nahrán tzv. bootloader, který se postará o vložení uživatelského programu. PĤvodním zámČrem bylo využití USB rozhraní i pro stahování namČĜených dat do poþíaþe. To se bohužel nepodaĜilo realizovat. Pro pĜenos dat je nakonec využita jednotka USART, ze které jsou signály TTL pĜevedeny pomocí pĜevodníku MAX232 [14] na sériový port RS-232 poþítaþe. NaštČstí není potĜeba pĜenášet pĜíliš mnoho dat a tak výraznČ nižší pĜenosová rychlost tohoto Ĝešení tolik nevadí. ýást základních parametrĤ použitého mikrokontroléru ATmega32U4 je uvedena v následujícím seznamu: •
32 8-bitových všeobecných registrĤ
•
26 vstupnČ/výstupních pinĤ
•
32 kB programové pamČti Flash
•
2,5 kB datové pamČti SRAM
•
1 kB datové pamČti EEPROM
•
Sériová rozhraní USART, SPI, TWI (I2C)
•
USB rozhraní, low-speed i full-speed
•
4 þasovaþe/þítaþe, jeden 8-bitový, dva 16-bitové a jeden „rychlý“ 10-bitový s PLL (smyþka fázového závČsu) pro USB
•
NČkolik druhĤ úsporných režimĤ
Parametry uvedené výše tvoĜí jen þást informací o použitém mikrokontroléru a jsou pĜevzaty z jeho dokumentace [11].
2.4.1 Režim snížené spotĜeby Mikrokontrolér je jediný prvek, u kterého se dá upravit spotĜeba energie. Ostatní souþástky toto buć vĤbec neumožĖují (tlakový senzor) nebo se o to starají samy (A/D pĜevodník, externí pamČĢ). ATmega32U4 podporuje nČkolik rĤzných úsporných módĤ, [11]. V této aplikaci bude využit tzv. idle mód. PĜi jeho aktivování dochází k zastavení systémových hodin a nejsou provádČny žádné instrukce. Periférie procesoru ovšem zĤstávají aktivní. To bude nutné kvĤli zajištČní chodu programu, který využívá jejich pĜerušení. Z þinnosti je ovšem možné vyĜadit ty periférie, které nejsou potĜeba a tím zase o nČco pĜispČt ke snížení odbČru. Pro pĜechod do toho režimu slouží instrukce SLEEP. Nastavení se provádí v registru SMCR (sleep mode control register), zapsáním do bitĤ SM2:0 hodnotu 000. Povolení pĜechodu do úsporného režimu se provede zapsání 1 do bitu SE tamtéž. Periférie, které nejsou potĜeba pro chod výškomČru jsou vypnuty pomocí pĜíslušných bitĤ v registrech PRR0 a PRR1 (power reduction register). Jsou to þasovaþ/þítaþ 0, 2, 3 a 4, SPI, A/D pĜevodník, USB. Dále je možné vypnout komparátor
22
a zabudovaný ladící systém JTAG v registrech, které slouží pro práci s tČmito komponentami.
2.5 Obvodové zapojení Schéma kompletního obvodového zapojení je uvedeno v pĜíloze této práce. Je vytvoĜeno z jednotlivých funkþních blokĤ, zapojených podle pĜíslušné dokumentace uvedené výrobcem. K napájení výškomČru je využito akumulátorĤ v letadle. Jejich napČtí musí být minimálnČ 6 V, pĜivedené na konektor JP1. Komponenty výškomČru využívají k napájení 5 V, které zajišĢuje stabilizátor napČtí LP2980_5. Na konektoru JP2 jsou vyvedeny signály jednotky USART, pro pĜipojení k poþítaþi a port B mikrokontroléru, pro testovací úþely. Deska plošných spojĤ je oboustranná. Její rozmČry jsou 78 x 35 mm. Souþástky jsou umístČny jen na její horní stranČ.
23
3
SOFTWAROVÁ ýÁST
3.1 ěídící program mikrokontroléru O Ĝízení þinnosti celého zaĜízení a o komunikaci mezi jednotlivými komponentami výškomČru se stará Ĝídící program mikrokontroléru. Ten je rozebrán v následujících odstavcích. Hlavní program, který je naznaþen ve vývojovém diagramu na Obrázek 3.1, zaþíná nastavením používaných periferií pro komunikaci mezi jednotlivými bloky výškomČru. AD pĜevodník je uveden do pĜíslušného režimu. V dalším kroku jsou vypnuty nepoužívané periférie, jako vnitĜní AD pĜevodníky, komparátor, atd. To má svĤj podíl na snížení spotĜeby energie. NáslednČ je zjištČno, kolik je již v pamČti uloženo záznamĤ a najde se konec posledního z nich, aby se nový záznam mohl zaþít ukládat za nČj, nebo aby se zjistilo, kolik dat bude vysláno do poþítaþe. V tomto okamžiku se hlavní program dČlí na dvČ vČtve. Jedna obstarává pĜípad, že je výškomČr právČ pĜipojen k poþítaþi a bude se oþekávat pokyn k vyslání dat nebo smazání pamČti. Druhá vČtev zaþne mČĜit a ukládat nový záznam.
Obrázek 3.1:
Vývojový diagram, hlavní program.
24
3.1.1 MČĜení V pĜípadČ, že není poþítaþ pĜipojen, zaþne se s mČĜením nového záznamu. ýást hlavního programu, která zaþne mČĜení je znázornČna na Obrázek 3.2. Nejprve je nastaven þasovaþ/þítaþ 1, jehož pĜerušení, které se generuje každou 1/32 sekundy. Ten Ĝídí jednotlivé fáze mČĜení. Povolení pĜerušení od þasovaþe 1 spolu s globálním povolením se provede v dalším kroku. Pro identifikaci jednotlivých záznamĤ uložených v externí datové pamČti slouží informace, kde zaþínají. Tyto informace tvoĜí adresy jejich zaþátku a jsou spolu s poþtem uložených záznamĤ uchovány ve vnitĜní datové pamČti E2PROM mikrokontroléru. Program poté pĜechází do nekoneþné smyþky, ve které vyþkává na pĜerušení þasovaþe. V této smyþce je vždy po návratu obsluhy pĜerušení aktivován jeden z režimĤ snížené spotĜeby, konkrétnČ „idle mode.“ V tomto režimu je zastaveno jádro procesoru a nejsou vykonávány žádné instrukce. Periférie zĤstávají aktivní a pĜípadné pĜerušení, v tomto pĜípadČ od þasovaþe 1, uvádí procesor opČt do aktivního stavu. Po provedení obsluhy pĜerušení dojde opČt k „uspání.“
Obrázek 3.2:
Vývojový diagram, hlavní program, mČĜící þást.
Struktura vnitĜní pamČti E2PROM je naznaþena v Tabulka 3.1. Je zde vyþlenČna jedna 8 bitová hodnota pro poþet záznamĤ: „ee_pocet“ a pole „ee_adr_zacatky[]“ 16 bitových hodnot pro adresy zaþátkĤ poĜízených záznamĤ. Poþet záznamĤ, který mĤže být uložen, je 8 bitovou hodnotou „ee_pocet“ omezen na 255.
25
ee_pocet
M
n 0 ee_adr_zacatky[n] adr. záznam 1 Tabulka 3.1:
1 2 adr. záznam 2 adr. záznam 3
… …
254 …
Struktura vnitĜní datové pamČti mikrokontroléru.
Samotná obsluha pĜerušení þasovaþe/þítaþe 1 je naznaþena v diagramu na Obrázek 3.3. Zde dochází k samotnému získávání hodnot z A/D pĜevodníku a jejich prvotní zpracování. Poþet pĜerušení, který je þasovaþem/þítaþem vyvoláno za sekundu je 32. To odpovídá rychlosti 32 SPS, se kterou pracuje A/D pĜevodník. PĜi každém pĜerušení je tedy ideálnČ k dispozici nová pĜevedená hodnota.
Obrázek 3.3:
Vývojový diagram, obsluha pĜerušení od þasovaþe/þítaþe 1.
ZmČĜený záznam se vždy skládá z první hodnoty, která odpovídá zmČĜenému tlaku ve výchozím bodČ, kde bylo zaĜízení zapnuto. K tomuto údaji jsou poté vztaženy
26
všechny další hodnoty záznamu a odpovídá výšce 0 m. Výchozí hodnota je získána prĤmČrem hodnot, získaných bČhem první sekundy mČĜení. PĜedpokládá se, že je zaĜízení po tuto dobu v klidu. Další hodnoty záznamu jsou ukládány jednou za pĤl sekundy. Ty jsou získány z prĤmČru þtyĜ hodnot, které jsou z A/D pĜevodníku pĜeþteny bČhem 1/8 sekundy. Za tuto krátkou dobu je zmČna tlaku zpĤsobená pohybem zaĜízení považována za lineární.
obsah 0xFF 0xFF 0xFF
…
adr. 65535 …
Každá takto získaná hodnota je uložena do pamČti. Protože má jeden adresovatelný prvek pamČti pouze 8 bitĤ, je ukládaná hodnota, která je pĜedstavována 16 bity, rozdČlena na vyšší a nižší byte. ZpĤsob ukládání je znázornČn v Tabulka 3.2. Nejprve je na nižší adrese uložen vyšší byte „H“ a následnČ nižší byte „L.“
…
2k+1 L ĸ adr. konec dat hodnota k 2k H
…
2n+1 L hodnota n 2n H ĸ adr. záznam M 5 4 3 2 1 0 Tabulka 3.2:
L H L hodnota 1 H L hodnota 0 H ĸ adr. záznam 1 hodnota 2
ZnázornČní ukládání namČĜených hodnot do pamČti.
Každý záznam je odlišen adresou své první hodnoty. Ta je uložena hned pĜi spuštČní mČĜení, jak je naznaþeno na zaþátku této kapitoly. MČĜení mĤže být tedy ukonþeno kdykoliv a to vypnutím napájení. PĜi dalším mČĜení je nalezen údaj, že je uloženo „M“ mČĜení, pĜeþte se adresa zaþátku posledního z nich. Proþítáním pamČti od této adresy je nalezen konec dat. Ten je na poslední adrese, kde je hodnota v pamČti rĤzná od 0xFF.
3.1.2 Komunikace s PC Když je poþítaþ po zapnutí pĜístroje pĜipojen, je vykonána druhá vČtev hlavního programu, jak je uvedeno výše. V tomto pĜípadČ není provádČno žádné mČĜení. Pouze se povolí pĜerušení od periférie USART, které se vyvolá po dokonþení pĜíjmu pokynu od poþítaþe. Procesor poté pĜechází do úsporného módu, Obrázek 3.4. V tomto stavu setrvává do doby, než je z poþítaþe vyslán po sériové lince pokyn v podobČ 8 bitové hodnoty. V tom okamžiku je vyvoláno pĜerušení, v jehož obsluze
27
dojde k vykonání další þinnosti, podle obsahu pĜijatého pokynu. Obsluhu pĜerušení znázorĖuje Obrázek 3.5. Pokud je pĜijat pokyn reprezentovaný hodnotou 0xF0, dojde k vymazání obsahu externí datové pamČti a vynuluje se údaj o poþtu záznamĤ ve vnitĜní pamČti. Po pĜijetí hodnoty 0xAA je oþekáváno vyslání záznamĤ, na které je pĜipraven program v poþítaþi.
Obrázek 3.4:
Vývojový diagram, hlavní program, komunikaþní þást.
Obrázek 3.5:
Vývojový diagram, obsluha pĜerušení pĜi dokonþení pĜíjmu pomocí USART.
28
Nejprve je vyslán poþet uložených záznamĤ. Pokud je tento údaj nulový, tak obsluha konþí. V opaþném pĜípadČ, kdy je v pamČti uložen alespoĖ jeden záznam dojde k jeho vyslání. PĜed samotným odesláním namČĜených hodnot jsou vyslány adresy zaþátkĤ jednotlivých záznamĤ, nutné pro jejich rozlišení a údaj o tom, kolik bude vysláno hodnot z pamČti. Nakonec jsou z pamČti vyslána samotná namČĜená data. Po pĜedání všech dat vyþkává zaĜízení na pĜípadný další pokyn, dokud není vypnuto.
3.2 Program na stranČ poþítaþe Pro komunikaci mezi výškomČrem a poþítaþem je využito sériového portu. Program tedy musí být schopen tento port využívat. Dále program musí zajistit zpracování pĜijatých dat, jejich pĜepoþet na tlak a poté na výšku. Nakonec tato vypoþtená data vykreslit graficky. Jako ideální bylo pro všechny tyto úþely vybráno programové prostĜedí MATLAB [15]. To zajistí všechny zmínČné operace. V tomto prostĜedí je nachystáno nČkolik skriptĤ a funkcí, které se postarají o pĜíslušné operace. Ty, které jsou pro uživatele dĤležité, jsou: •
prijem_data.m
•
smaz_data.m
•
uloz_data.m
•
vykresli_grafy.m
První z jmenovaných, „prijem_data.m,“ je naznaþen v diagramu na Obrázek 3.6. Ten odpovídá þinností svému protČjšku ve výškomČru. PĜi spuštČní tohoto skriptu se pĜedpokládá, že výškomČr je již k poþítaþi pĜipojen a oþekává pĜíkaz. PĜíkaz v tomto pĜípadČ má podobu odeslaného jednoho bytu s hodnotou 0xAA. Na ten výškomČr reaguje tak, jak je popsáno v pĜedchozí kapitole a skript postupnČ pĜijímá data. PĜijaté hodnoty mají podobu vektoru „data,“ vektoru oznaþující zaþátky jednotlivých záznamĤ „pozice_zacatku“ ve vektoru „data.“ Po dokonþení pĜíjmu je proveden pĜepoþet pĜijatých záznamĤ, odpovídajících þíslu z A/D pĜevodníku, na hodnotu tlaku podle rovnice (2.5). Tyto hodnoty tlaku jsou v zápČtí pĜevedeny na údaj o výšce podle barometrické rovnice (1.2). Výchozí hodnotou tlaku je vždy první hodnota záznamu. Výsledný záznam má potom podobu matice „zaznam.“ Další skript, „smaz_data.m,“ obstarává smazání dat ve výškomČru. PĜi jeho spuštČní dochází pouze k odeslání pokynu pĜes sériový port. Jako v pĜedchozím pĜípadČ se pĜedpokládá, že je výškomČr pĜipojen. V pĜípadČ „uloz_data.m“ se jedna o funkci. Jejím parametrem je jméno souboru do kterého dojde k uložení záznamu. Jeho naþtení je provedeno pĜíkazem „load“. Poslední z jmenovaných, „vykresli_grafy.m,“ zobrazí namČĜené záznamy graficky. PĜíklad jednoho prĤbČhu je na Obrázek 3.7.
29
Obrázek 3.6:
Vývojový diagram, pĜíjem dat z výškomČru.
30
Obrázek 3.7:
PĜíklad grafického zobrazení záznamu.
31
4
ZÁVċR
V této práci je navrhnuto možné Ĝešení koncepce barometrického výškomČru pro RC modely letadel. Byly vybrány dílþí bloky a konkrétní integrované obvody, pomocí nichž jsou realizovány. DĤraz je kladen na minimální rozmČry výsledného zaĜízení. Vybrány byly souþástky výhradnČ pro povrchovou montáž, SMD. Konkrétní použité souþástky jsou: tlakové þidlo MPXH6115A6U pro snímání barometrického tlaku. Analogová hodnota napČtí na jeho výstupu je pĜevedena A/D pĜevodníkem ADS1100. ěízení jednotlivých blokĤ, práci s daty a komunikaci s PC zajistí mikrokontrolér ATmega32U4. Data jsou zaznamenána každou pĤl sekundu a ukládána do pamČti EEPROM 24LC512 o kapacitČ 64 kB, která vystaþí na záznam þtyĜi a pĤl hodiny. Provoz výškomČru je pĜedpokládán do výšky asi 2000 m. V tomto rozmezí se hodnota výstupního napČtí tlakového þidla mČní jen v úzkém rozmezí. Byla by tedy využita jen malá þást mČĜitelného rozsahu AD pĜevodníku. Signál je proto upraven tak, aby byl využit rozsah co možná nejvíce. Je k tomu využit diferenþní vstup pĜevodníku s programovatelným zesilovaþem. Citlivost s jakou je možné výšku zaznamenat se pohybuje kolem 30 cm. Komunikaci mezi jednotlivými bloky zajišĢuje mikrokontrolér ATmega32U4. Ke komunikaci je využita sbČrnice I2C. Do pamČti lze zaznamenat více mČĜení. PĜi dalším spuštČní a zapoþatém mČĜení je zajištČno ukládání záznamĤ za sebe. Rozlišeny jsou pomocí adres svých zaþátkĤ, které jsou uloženy také. VýškomČr s poþítaþem komunikuje pomocí sériového portu RS-232. Na stranČ výškomČru je k tomu využita jednotka UART mikrokontroléru. PĜevod potĜebných úrovní obstarává obvod MAX232. O pĜijetí a zpracování dat v poþítaþi se starají skripty vytvoĜené v prostĜedí MATLAB. Dochází zde k pĜepoþtu hodnot z A/D pĜevodníku na tlak a poté na výšku. NamČĜené záznamy lze zobrazit v grafické podobČ a ukládat, pro další pozdČjší zpracování.
32
LITERATURA [1] Wikipedie. ýlánek o výškomČrech [online]. [cit. 12.listopadu 2011]. Dostupné z: http://cs.wikipedia.org/wiki/výškomČr. [2] DVOěÁK, P. Uþebnice pilota: Letecká meteorologie. vydání první. Cheb: SvČt kĜídel, 2003, s. 105-166. ISBN 80-85280-89-2. [3] VAN BRAMER, S.E. Pressure vs Altitude relatioships [online]. 1998 [cit. 15.Ĝíjna 2011]. Dostupné z: http://science.widener.edu/~svanbram/chem332/pdf/press_alt.pdf. [4] VOJÁýEK, A. Princip a struktura integrovaných senzorĤ tlaku Freescale. [online]. [cit. 15.Ĝijna 2011]. Dostupné z: http://www.hw.cz/teorie-praxe/art1941-princip-strukturaintegrovanych-senzoru-tlaku-freescale.html. [5] FREESCALE SEMICONDUCTOR. Dokumentace MPXH6115A6U [online]. [cit. 15.Ĝijna 2011]. Dostupné z: http://cache.freescale.com/files/sensors/doc/data_sheet/MPXA6115A.pdf. [6] Farnell. Stránky distributora elektronických souþástek [online]. [cit. 12.listopadu 2011]. Dostupné z: http://cz.farnell.com/freescale-semiconductor/mpxh6115a6u/ic-sensor-abspress-16-7psi/dp/1457169. [7] Meteorologická stanice Brno-Židenice: Stránky vČnované amatérské meteorologii. [online]. [cit. 14.února 2012]. Dostupné z: http://www.meteo.jankovic.cz/rekordy-stanice/. [8] Texas Instruments. Dokumentace ADS1100 [online]. USA [cit. 14.února 2012]. Dostupné z: http://www.farnell.com/datasheets/1389981.pdf. [9] FRÝZA, T. Mikroprocesorová technika a embeded systémy. PĜednášky (ver. 2011-12-09). Elektronické skriptum. Brno: FEKT VUT v BrnČ, 2011. [10] MICROCHIP TECHNOLOGY. Dok. 24LC512 [online]. USA [cit. 12.listopadu 2011]. ISBN 978-1-60932-073-7. Dostupné z: http://www.farnell.com/datasheets/11037.pdf. [11] ATMEL CORPORATION. Dokumentace ATmega32U4 [online]. [cit. 12.listopadu 2011]. Dostupné z: http://www.atmel.com/dyn/resources/prod_documents/doc7766.pdf. [12] ATMEL CORPORATION. Dokumentace FLIP [online]. [cit. 15.bĜezna 2012]. Dostupné z: http://www.atmel.com/Images/doc7769.pdf. [13] ATMEL CORPORATION. Program FLIP [online]. [cit. 15.bĜezna 2012]. Dostupné z: http://www.atmel.com/tools/FLIP.aspx. [14] MAXIM. Dokumentace MAX232 [online]. USA [cit. 15.bĜezna 2012]. Dostupné z: http://www.hw.cz/data_ic/max232.pdf. [15] MathWorks. Dokumentace prostĜedí MATLAB [online]. [cit. 15.bĜezna 2012]. Dostupné z: http://www.mathworks.com/help/techdoc/matlab_product_page.html.
33
SEZNAM PěÍLOH A Návrh zaĜízení
35
A.1
Obvodové zapojení ................................................................................. 35
A.2
Deska plošného spoje – top .................................................................... 37
A.3
Deska plošného spoje – bottom .............................................................. 37
B Seznam souþástek
38
34
A NÁVRH ZAěÍZENÍ A.1 Obvodové zapojení
35
36
A.2 Deska plošného spoje – top
RozmČr desky 78 x 35 [mm], mČĜítko M1:1
A.3 Deska plošného spoje – bottom
RozmČr desky 78 x 35 [mm], mČĜítko M1:1
37
B
SEZNAM SOUýÁSTEK
Oznaþení CADC CIN CLDO CMEGA CMEM CSO CSS CUCAP CVBUS CXTAL1 CXTAL2 IO2 IO3 IO4 JP1 JP2 JP3 Q1 REF1 RHWB RRST RSCL RSDA RSO RUSB1 RUSB2 SENSOR U1 X1
Hodnota 4u7 10u/16V 4u7 100n 100n 47p 100n 1u 10u/16V 22p 22p ADS1100 24LC512 ATMEGA32U4-AU NAPAJENI KONEKTOR HWB 8MHz LM4040_3 4k7 220R 4k7 4k7 51k 22R 22R MPXH6115A6U LP2980-5.0 MINI-USB
Pouzdro 0805 B 0805 1206 1206 0805 1206 0805 1206 0805 0805 SOT-23-6 SOIC8-N_MC TQFP44 1x2 1x11 2x2 SOT23 1206 1206 1206 1206 0805 1206 1206 SSOP8 SOT-23-5
38
Popis Keramický kond. Tantalový kond. Keramický kond. Keramický kond. Keramický kond. Keramický kond. Keramický kond. Keramický kond. Keramický kond. Keramický kond. Keramický kond. AD pĜevodník EEPROM Mikrokontrolér Konektor Konektor Konektor Krystal NapČĢová reference 3V Rezistor Rezistor Rezistor Rezistor Rezistor Rezistor Rezistor Tlkový senzor LDO stabilizátor 5V Konektor