Strana: 2
Strana: 3
ZADÁNÍ ZÁVĚREČNÉ PRÁCE (na místo tohoto listu vložte originál nebo kopii vašeho zadání)
Strana: 4
Strana: 5
LICENČNÍ SMLOUVA (na místo tohoto listu vložte licenční smlouvu)
Strana: 6
Strana: 7
ABSTRAKT Tato diplomová práce se zabývá návrhem úprav osobní digitální váhy se čtyřmi tenzometrickými senzory, umožňující její využití jako venkovní úlové váhy s dálkovým přenosem dat pomocí GSM. V první části jsou probrány principy vážení hmotnosti pomocí tenzometrických snímačů. Ve druhé části je popsán návrh řešení hardwaru váhy s mikrokontrolérem PIC16F877. Poslední část je zaměřena na návrh programového vybavení pro mikrokontrolér.
ABSTRACT This diploma thesis is concerned on the scheme of personal digital scale adjustment. The scale is equipped with four strain-gauge sensors which enable its usage as an outdoor telemetric hive scale with the data remote transfer through GSM. The first part is focused on principles of weighting through the use of strain-gauge sensors whereas the second part contains the description of solution for the scale hardware with microcontroller PIC16F877. The last part provides the proposal of software for the microcontroller.
KLÍČOVÁ SLOVA Telemetrická PIC16F877.
úlová
váha,
tenzometrický
snímač,
tenzometrický
KEYWORDS Telemetric hive scale, strain-gauge senzor, strain-bridge, PIC16F877A.
můstek,
Strana: 8
Strana: 9
PODĚKOVÁNÍ Děkuji vedoucímu mé diplomové práce Ing. Miroslavu Holému za odbornou pomoc a rady, kterými přispěl k její realizaci.
Strana: 10
OBSAH
Strana: 11
OBSAH 1 2
Úvod.............................................................................................................................13 Měření hmotnosti - teoretická část...............................................................................15 2.1 Tenzometry ..........................................................................................................15 2.1.1 Kovové tenzometry......................................................................................15 2.1.2 Polovodičové tenzometry ............................................................................18 2.2 Senzory hmotnosti ...............................................................................................20 2.2.1 Princip funkce a rozdělení ...........................................................................20 2.2.2 Pružné deformační členy .............................................................................20 2.2.3 Typy pružných členů ...................................................................................21 2.3 Měřící obvody pro odporové tenzometry ............................................................25 2.3.1 Stejnosměrné můstky...................................................................................25 2.3.2 Střídavé můstky ...........................................................................................28 3 Návrh hardwaru ...........................................................................................................31 3.1 Návrh elektroniky váhy .......................................................................................31 3.2 Mikrořadič PIC 16F877 .......................................................................................32 3.3 Napájecí část ........................................................................................................34 3.4 Měřící část............................................................................................................34 3.4.1 Osobní digitální váha ...................................................................................34 3.4.2 Měřící obvody..............................................................................................35 3.5 Přenos po GSM síti ..............................................................................................36 3.5.1 Výběr GSM zařízení ....................................................................................36 3.5.2 Komunikační rozhraní pro mobilní telefon ................................................37 4 Popis komunikace s mobilním telefonem....................................................................41 4.1 Přehled AT příkazů:............................................................................................42 4.2 PDU formát pro SMS ..........................................................................................44 4.2.1 Příjem SMS zpráv........................................................................................45 4.2.2 Odesílání SMS zpráv ...................................................................................47 5 Návrh programového vybavení ...................................................................................51 5.1 Hlavní tělo programu ...........................................................................................51 5.2 Inicializační část ..................................................................................................52 5.3 Obsluha přerušení ................................................................................................54 5.4 A/D převod – vážení ............................................................................................55 5.5 Příjem SMS zprávy..............................................................................................56 5.6 Odeslání SMS zprávy .........................................................................................57 6 Přehled finanční nákladů .............................................................................................59 7 Závěr ............................................................................................................................61 8 Seznam použité literatury ............................................................................................63 9 Seznam příloh ..............................................................................................................65 10 Příloha A. ................................................................................................................67 11 Příloha B. ................................................................................................................69 12 Příloha C. ................................................................................................................71
Strana: 12
OBSAH
Úvod
Strana: 13
1 ÚVOD Tato diplomová práce se zabývá návrhem úprav osobní digitální váhy, aby ji bylo možné použít jako venkovní úlovou váhu. V moderním včelařství je nezbytné sledovat váhu úlů. V době snůšky udává váha množství přínosu za den a úbytku za noc. Podle celkových výsledků lze usoudit, kdy je vhodné provést odebrání a vytočení medu. Vážením se také nechají zjistit možnosti pastvy pro včely v dané lokalitě a podle toho operativně přemisťovat jednotlivé úly do míst s větším výnosem. Na jaře a v létě se vážení provádí dvakrát denně vždy ráno a večer. V současné době jsou na trhu pouze analogové váhy, u kterých se musí odečet a zápis dat provádět ručně. Z toho vyplývá, že by včelař musel ke každému stanovišti s úly docházet dvakrát denně provádět měření, což by bylo časově náročné. Tento problém řeší navrhovaná úlová váha. Ta v žádanou hodinu provede měření a odešle změřenou hodnotu ke včelaři. Pro přenos je využito SMS zpráv v mobilní síti GSM. Výhodou tohoto přenosu je jeho nezávislost na vzdálenosti váhy od uživatele, nevýhodou pak mohou být finanční náklady za SMS zprávy. Z důvodu finanční náročnosti jsou místo profesionálních tenzometrických snímačů, jejichž cena se pohybuje v řádech tisíců, použity tenzometrické snímače z obyčejné digitální osobní váhy, jejíž cena nepřekročí tisíc korun. Váha bude sloužit jako orientační měřidlo.
Včelí úl
Měřící jednotka s mikroprocesorem Váha
RS 232
GSM
Mobilní telefon u váhy.
Obr. 1 Schéma přenosu dat.
Mobilní telefon Příjemce dat.
Strana: 14
Úvod
Měření hmotnosti - teoretická část
Strana: 15
2 MĚŘENÍ HMOTNOSTI - TEORETICKÁ ČÁST 2.1 Tenzometry Tenzometry jsou základním stavebním prvkem používaným při konstrukci snímačů hmotnosti. Využívají změny odporu vodiče, ke které dochází při jeho deformaci. Dle materiálu, konstrukčního tvaru a způsobu upevnění na měřený obvod lze odporové tenzometry rozdělit tak, jak je znázorněno na obr. 3. Při psaní této kapitoly bylo čerpáno z lit.[2] a [7] . volné drátkové lepené Kovové
fóliové vakuově nanesené vrstvové naprašované lepené
Tenzometry monokrystalické
difundované do SI substrátu
Polovodičové drátkové Obr. 2 Rozdělení tenzometrů.
2.1.1
Kovové tenzometry
Změna odporu kovového tenzometru se vypočítá ze vztahu pro změnu odporu vodiče o délce l a ploše průřezu S : l R= ρ (1) s Výpočtem totálního diferenciálu dR a jeho úpravou pro konečné relativní změny odporu ∆R/R dostáváme : ∆R ∆l ∆S ∆ρ = − + R l S ρ
(2)
Strana: 16
Měření hmotnosti - teoretická část
Změna plochy průřezu ∆S je dle zákonů teorie pružnosti závislá na délkové deformaci, tak že platí: ∆S ∆l ∆l ∆l = −2 µ + µ + ...... = −2 µ S l l l 2
(3)
Kde µ je Poissonova konstanta (poměr relativní deformace εt, způsobené tahovou sílou v ose a odpovídající příčné deformaci εr ). První dva členy ze vztahu pro ∆R/R odpovídají geometrickým změnám vodiče, člen ∆ρ/ρ je důsledek mikrostrukturálních změn materiálu. Při použití odporových tenzometrů je nutné zaručit, aby nedošlo k nereverzibilním mikrostrukturálním změnám, které by vedly k znehodnocení senzoru. Na základě uvedených vztahů platí:
∆R R = 1 + 2µ + ∆l l
∆ρ
ρ
∆l l
= 1 + 2 µ + πeE
(4)
Kde πe je piezoresistentní činitel a E je Youngův modul pružnosti. Obecně je závislost relativní změny odporu na relativní deformaci ∆l/l = ε vyjádřena polynomem. ∆R = C1ε + C 2ε 2 + C 3ε 3 + ....... R 0, 0
(5)
Kde R0,0 je hodnota odporu senzoru při nulové deformaci a počáteční teplotě(zpravidla ϑ 0 = 25ºC) a C1, C2, C3, …jsou konstanty. Měřenou (vstupní) veličinou je relativní deformace ε, výstupní veličinou je ∆R/R, takže je převodní charakteristika tenzometru definována vztahem:
∆R d R 0,0 Kε , 0 = = C1 + 2C 2 ε + 3C 3ε 2 = C1 + 2C 2 ε dε
(6)
Veličina Kε,0 je označována jako součinitel deformační citlivosti nebo tenzometrická konstanta a je především dána vlastnostmi materiálu. U kovových materiálů se může K ε,0 měnit v oblasti malých deformací kolem ε = -3 10 v závislosti na typu materiálu od 6,5 pro slitinu Pt Ir (5/95) až po - 10 pro nikl. Pro tenzometrické odporové senzory jsou vhodné materiály vykazující minimální mikrostrukturální změny. Pak člen πeE je blízký nule, Ke,0 = K nezávisí na ε a je dána pouze Poissonovým poměrem µ, jehož hodnota se pohybuje pro materiály splňující mechanické požadavky pro konstrukci tenzometrů v rozmezí 0,2 až 0,5. Odporové tenzometrické senzory jsou tedy vyráběny z kovových slitin s hodnotou K ε,0 blízkou 2 a vybírají se dále i s ohledem na minimální teplotní součinitel odporu. Téměř vždy jde o následující slitiny:
Měření hmotnosti - teoretická část -
Strana: 17
konstantan (57% Cu, 43% Ni) Κ =2,05 karma (73%Ni, 20% Cr, resp. Fe + Al) K = 2,1 nichrome V (80% Ni, 20% Cr) K = 2,2 platina - wolfram (92%Pt, 8%W) K = 4
Drátkové tenzometry s volnou (nenalepenou) mřížkou se užívají výhradně pro konstrukci senzorů tlaku nebo síly. Na dvou nebo více bodech na povrchu pružného členu jsou vetknuty kolíčky z tvrdého izolačního materiálu, nejčastěji ze safíru. Mezi kolíčky je s mechanickým předpětím upevněno několik závitů tenzometrického drátku. Analogicky lze za tepla navinout drátek na povrch tlustostěnné trubky sloužící jako pružný člen pro měření velkých tlaků. Výhodou je odstranění problémů se zkreslením přenosu deformace z objektu na senzor, jak je k tomu u lepených , zejména u drátkových tenzometrů. Nejpoužívanějšími kovovými tenzory jsou v současné době lepené foliové. Vyrábí se v různých tvarech a skupinách přizpůsobených dané aplikaci. Fotolitografickou technikou z kovových folií o minimální tloušťce jen 5µm. Tato folie je upevněna na nosných izolačních vrstvách z polyamidu nebo fenolových filmů vyztužených sklem. Po nalepení velmi dobře kopírují měřenou deformaci, lze je zatěžovat značnými proudovými hustotami (až 100A/mm2, při dobrém odvodu tepla). Maximální měřená deformace je 0,5%, životnost 107 pracovních cyklů, deformace ± 0,15%, tenzometrická konstanta v rozmezí 2 až 4. Jejich klidový odpor R je nejčastěji100, 120, 350, 700 nebo 1000 Ω.
Obr. 3 Běžné provedení foliového tenzometru. Při měření je nutné správně natočit tenzometr do daného směru působení. Pokud je potřeba měřit sílu či deformaci působící ve více směrech, využívají se dnes tenzometry obsahující již více meandrů natočených do různých směrů obr. 5.
Obr. 4 Různá provedení fóliových tenzometrů.
Strana: 18
Měření hmotnosti - teoretická část
Naprašované kovové tenzometry se užívají téměř výlučně pro konstrukci senzorů tlaku. Na pružném členu senzoru tlaku, kterým je nejčastěji membrána, se naprašováním ve vakuu vytvoří nejdříve dielektrická a pak kovová vrstva. Poté následuje nanesení fotocitlivé masky, expozice požadovaným obrazcem senzoru a odstranění neexponovaných částí kovové vrstvy. Jejich vlastnosti jsou podobné jako u fóliových tenzometrů, mají ale lepší časovou a teplotní stálost.
2.1.2
Polovodičové tenzometry
Princip funkce je založen na piezorezistivním jevu, tj. na změně elektrického odporu v závislosti na deformaci polovodičového krystalu (monokrystal křemíku nebo germania). Polovodiče mají schopnost měnit vodivost v širokém rozmezí 6 až 8 řádů. Ke změně může dojít vlivem vnějších fyzikálních vlivů jevů jako je tlak, tah, teplota nebo světlo. Podle struktury materiálu se polovodičové tenzometry dělí na : - monokrystalické, ty se dále dělí na klasické lepené a na difundované do Si substrátu - polykrystalické - naprašované Hlavním parametrem, na kterém závisí vlastnosti polovodičových tenzometrů, je piezorezistence. Vyjadřuje vazbu mezi relativní změnou měrného odporu ∆ρ a napětím σ a je popsána následujícím vztahem: ∆ρ
ρ
= π i ⋅σ
(7)
Závislost charakteristik na poměrném přetvoření vyjadřuje součinitel deformační citlivosti k. Hodnota k je dána velikostí součinitele piezorezistence a je v rozpětí hodnot 45 až 200. Součinitel deformační citlivosti je dán následujícím vztahem: k=
∆R = 1 + 2µ + π i ⋅ E R ⋅ε
(8)
Z rovnic (7) a (8) lze získat integrací funkční vztah pro polovodičový tenzometr, tzv. poměrnou odporovou změnu (9). ∆R
ε
1 ∆R ⋅ ∫ ∆R = ∫ k (ε )dε ⇒ = C1 ⋅ ε + C 2 ⋅ ε 2 R 0 R 0
kde:
C1 je lineární koeficient deformační rovnice C2 je kvadratický koeficient deformační rovnice ε je poměrná deformace k je součinitel deformační citlivosti
(9)
Měření hmotnosti - teoretická část
Strana: 19
Obr. 5 Závislost změny odporu polovodičového tenzometru ∆R/R na poměrné deformaci ε. Závislost ∆R/R je tedy podle (9) parabolická a její charakter závisí na druhu příměsi. - přidáním akceptoru: součinitel deformační citlivosti k je kladný a závislost ∆R/R(ε) monotónně rostoucí = P-typ snímače. - Přidáním donoru: součinitel deformační citlivosti k je záporný a závislost ∆R/R(ε) monotónně klesající = N- typ snímače. Polovodičové tenzometry mají vysokou citlivost, až 60 x větší než kovové tenzometry. Díky tomu je možné konstruovat snímače malých rozměrů s velmi vysokou tuhostí jejich měrných členů. Tím lze dosáhnout i širokého frekvenčního rozsahu měření. Od statických hodnot až do hodnot řádů několika kilohertzů. Mají minimální hysterezi, počet cyklů při opakovaném namáhání je větší než 107. Malá šířka tenzometru umožňuje vyrábět malé a lehké snímače. Nevýhodou je velká odchylka od lineární charakteristiky a značná teplotní a světelná závislost. Polovodičové tenzometry se vyrábí z křemíkového materiálu, z důvodu zanedbatelné mechanické a krystalografické hystereze a použitelnosti pro širší rozsah teplot. Vyrábí se buď řezáním, broušením či leptáním monokrystalu nebo planárně difúzní technologií na křemíkový substrát. Aktivní délka polovodičových pásků mezi zlatými vývody je 2 mm až 10 mm, šířka 0,2 mm až 0,4 mm a tloušťka 0,01 mm až 0,03 mm. Ohmický odpor je nejčastěji 120 Ω nebo 350 Ω. Nároky na tmel slepující polovodičové tenzometry s měřeným objektem jsou vyšší než u odporových tenzometrů.
Obr. 6 Nejčastěji používané tvary polovodičových tenzometrů.
Strana: 20
Měření hmotnosti - teoretická část
2.2 Senzory hmotnosti 2.2.1
Princip funkce a rozdělení
Princip měření hmotnosti spočívá ve využití fyzikálních účinků časově proměnné síly F(t) vyvolávající zrychlení a hmotnosti m. Pro senzory statických sil, včetně vážení, se v naprosté většině případů užívá jejich obecných deformačních účinků na objekt vhodného tvaru a složení. Principem většiny převážné většiny senzorů síly a tíhy je převod síla deformace - fyzikální účinky deformace. Senzory síly lze rozdělit podle schématu na obr. 7.
Převod ε na : Náboj (piezoelektrické) Přímý (intrinsický)
Magnetické vlastnosti (L,Ф) Optické vlastnosti (OVS)
Převod F ε
druh deformace ε :
tah, tlak Pružný člen
smyk krut ohyb
Tvar členu :
Vetknutý nosník
Válec
Pružný rám
Obr. 7 Rozdělení senzorů síly podle principu funkce.
2.2.2
Pružné deformační členy
Jsou klíčovým elementem senzorů síly a převádějí deformace vyvolané silou na hodnoty měřitelné senzory mechanického napětí, kterými jsou výhradně odporové tenzometry. Jelikož jde o první členy (“čidla“) převodního řetězce, je značně obtížné korigovat zde vznikající chyby. Materiály pro pružné členy musí mít minimální teplotní roztažnost a teplotní koeficient Youngova modulu pružnosti, dobrou teplotní vodivost,
Měření hmotnosti - teoretická část
Strana: 21
malou hysterezi, jemnozrnnou homogenní strukturu, malé účinky tečení a dobrou odolnost vůči korozi. Typickým materiálem pro pružné členy je pružinová antikorozní ocel X5CriNiCuNb 1744. Geometrie pružných členů je podřízena těmto zásadám: - směrovost - co největší poměr poddajnosti ve směru síly k poddajnosti ve směru rušivých sil, příp.momentů. - převod měřené síly na deformace opačných znamének tak, aby bylo možné použít čtyř aktivních tenzometrů. - transformace měřené deformace na hodnoty v rozsahu linearity použitých tenzometrů. - ochrana proti přetížení - nejvyšší hodnota deformace nemá přesahovat 10 % až 30 % meze pružnosti použitého materiálu.
2.2.3
Typy pružných členů
Vetknutý nosník obr. 8. je používán pro nejmenší síly, zpravidla do desítek kN. Deformace ε, způsobená silou F ve vzdálenosti L od středu nalepeného tenzometru je určena ohybovým momentem Mo a průřezovým modulem v ohybu Wo. Roste lineárně od místa působení síly k místu vetknutí nosníku, jak určují vztahy 10 a 11.
ε=
σ E
=
Mo F ⋅L = WoE WoE
hb 2 Wo = 6
(10)
(11)
Obr. 8 Vetknutý nosník s tenzometry
Čtveřice tenzometrů se umísťuje ve vzdálenosti přibližně 1/7 L od místa vetknutí, aby se vyloučily parazitní deformace vyvolané na spoji nosník - základna. Místo působení síly musí být fixováno a přesnost měření je i pak ovlivněna posouváním efektivní
Strana: 22
Měření hmotnosti - teoretická část
vzdálenosti L při průhybu nosníku . Vychýlení nosníku z hodnoty o 1º při poloviční zátěži a o 2º při plné zátěži způsobí chybu nelinearitou asi 0,023 %. Jiná častěji užívaná možnost je měření smykového napětí τ, které má maximum v neutrální ose nosníku (zde je ohybové napětí σB nulové) a je nezávislé na místě působení síly. Tenzometry konečných rozměrů umístěné poblíž neutrální osy měří ve skutečnosti superpozici ohybového a smykového napětí. Nosník s profilem I minimalizuje příspěvek σB tak, že tenzometry umístěné pod úhlem 45º k ose měří pouze τ.
Obr. 9 Vetknutý nosník I profilu.
U pružného členu typu S jsou fóliové tenzometry hermeticky uzavřeny uvnitř otvorů a jsou tak chráněny vůči vnějším vlivům. Tento prostor je uzavřen plochým víkem.Tlaková nebo tahová síla se aplikuje uprostřed vnějších ramen písmene S a rozměry senzoru s rozsahem do 50kN nepřekračují 100 mm.
Obr. 10 Pružný člen typu S.
Měření hmotnosti - teoretická část
Strana: 23
Obr. 11 Pružný člen pro větší zatížení.
Pružné členy na obr.10. a 11. jsou vhodné pro větší síly. V obou případech jde o princip dvojitého nosníku. Tlakový člen s kruhovými otvory je jednodušeji vyrobitelný, má však větší nelinearitu. Alternativně je možné umístit tenzometry na povrch jeho horní části. Pružný člen se smykovým namáháním obr. 12. je vhodný pro síly od 10 kN až do 1 MN. Jeho předností je velmi dobrá směrovost, kompaktní konstrukce, vysoká tuhost a snadná ochrana proti přetížení dorazem. Ta dává možnost umístit v sérii dva členy s rozsahy např. v poměru 1:10. Na obr.12. je znázorněna typická konstrukce, která převádí měřenou sílu na smykové napětí, měřené čtveřicí aktivních foliových tenzometrů. Ty jsou umístěny v otvorech pod úhlem 45º.
Obr. 12 Pružný člen pro velké síly ve smyku s dorazem.
Sloupcové (tyčové) pružné členy s namáháním na tlak, jsou vhodné pro síly nad 10 kN, patří mezi nejrozšířenější a jsou odvozeny ze základního uspořádání na obr.13. Tenzometry tvoří plný můstek, avšak dvojice R1,R3 měří příčnou deformaci, která je v poměru Poissonovy konstanty menší, tak že se nedosahuje citlivosti ideálního plného můstku a pro výstupní napětí platí vztah 12.
Strana: 24
Měření hmotnosti - teoretická část
Obr. 13 Pružný sloupcový člen. u D = U ⋅ K U ⋅ K ε , 0 ⋅ 2ε (1 + µ ) = U ⋅ K ε , 0
ε (1 + µ ) 2
(12)
Kompenzace teplotní dilatace je velmi dobrá, teplotní koeficient Youngova modulu pružnosti E se kompenzuje teplotně závislým odporem v sérii se zdrojem U (nutné pro přesnosti lepší než 0,3%). Senzor síly s dutým válcem obr. 14. má velký ohybový moment. Tenzometry nalepené uvnitř, snímají εP a ε, jsou dobře chráněny.
Obr. 14 Senzor síly s dutým válcem.
Navrhují se pro měření sil v rozmezí 50 – 5.109 N a jsou užívány v zařízeních pro vážení velkých objektů (vagóny, vážící plošiny, sila, jeřáby atd.). Pružný rám - paralelogram obr. 15. Tuhost členu je ve všech směrech, kromě vyznačeného šipkou, velmi značná a může být proto použit jako element vícesložkových senzorů síly. Senzory tohoto typu jsou vhodné pro měření sil až do 50 MN. S přesností 0,1% a rozlišovací schopností asi 0,02% . Vhodné jsou zejména uzavřené pružné členy naplněné olejem (hydraulický princip). Výstupní veličinou je tlak oleje, hydraulickým sčítacím členem lze vyhodnotit součet sil působících v několika místech objektu. Pro menší síly se používá pneumatická obdoba tohoto principu. Pomocí opačně působícího
Měření hmotnosti - teoretická část
Strana: 25
tlaku se pružný člen udržuje téměř v nedeformovaném stavu. Senzory tohoto typu se uplatňují v průmyslových pneumatických vážících systémech.
Obr. 15 Pružný rám – paralelogram.
2.3 Měřící obvody pro odporové tenzometry Rozlišovací schopnost senzorů mechanického napětí odpovídá hodnotám deformace 1 µstrain (ε = 10-6). Při tenzometrických konstantách K = 2, napájecím napětí můstku řádově jednotky V a odporech tenzometrů kolem 100 Ω, je výstupní napětí můstkového měřícího obvodu na úrovni zlomků až jednotek µV. Navíc měřené změny odporu jsou řádově µΩ, takže na měřící obvod jsou kladeny mimořádné nároky. Musí být vyloučen vliv odporu přívodů a přepínačů měřících míst. Zdrojem rušení jsou termoelektrická napětí vznikající na styku materiál senzoru – přívod k měřícímu obvodu. Paradoxně však je možné připojit tenzometr termočlánkovými vodiči a měřit tak teplotu v místě tenzometru. Informaci o měřené deformaci lze oddělit komutací zdroje proudu ve čtyřvodičovém měřícím obvodu. Výběr vhodného měřicího obvodu je závislý na počtu aktivních tenzometrů, nutné délce přívodů a dynamice měřeného jevu. Vliv přívodů lze dokonale potlačit čtyřvodičovým vedením, dva vodiče slouží pro přívod měřícího proudu a dva pro připojení voltmetru s velkým vstupním odporem. Vliv termoelektrické napětí se vylučuje výpočtem rozdílu údajů získaných při komutaci polarity napájecího zdroje.
2.3.1
Stejnosměrné můstky
Stejnosměrné můstkové obvody patří mezi nejrozšířenější ve standardních aplikacích, zejména v optimální situaci čtyř aktivních tenzometrů (plný můstek) a není nutné používat stálých odporů na doplnění můstkové konfigurace jako u polovičních a čtvrtinových můstků. Zapojení plného můstku doplněného pomocnými odpory RK,RS1,RS2,RP1,RP2 je na obr. 16.
Měření hmotnosti - teoretická část
Strana: 26
R2
R1
UD
RS1 ε
RK
R3 Rp1
ε
U
R4
I
RS2 ε
ε
Rp2
Obr. 16 Plný tenzometrický můstek.
∆R ∆R2 ∆R4 ∆R3 ⋅ (1 − N ) ⋅ P U D = U ⋅ K U ⋅ 1 − + − R2 R4 R3 R1
(13)
Za předpokladu, že byl můstek v rovnováze, tj. ∆Ri = 0, i = 1, 2, 3, 4, platí 14.
R1 R2 = =a R2 R4
(14)
Člen Kυ je tzv. můstková konstanta, člen P respektuje vliv odporů přívodů od můstkového zdroje a člen N nelinearitu. Nelinearita se spočítá ze vztahu 15.
(δR2 + δR 4)(δR2 − aδR4 ) − (δR1 − δR3 )(δR1 + aδR3 ) 1 + δR2 + a (1 + δR4 ) 1 + δR1 + a(1 + δR3 ) N= δR1 − δR2 + δR4 − δR3
Kde:
R ∆Ri P = 1 + ∑ V δRi = RD Ri ,
(15)
−1
,
Ku =
R2 R3 (R1 + R3 )(R2 + R4 )
ΣRV = je odpor přívodů ke zdroji U, RD je odpor mezi uzly napájecí diagonály při odpojeném zdroji a indikátoru. Analýza nelinearity by měla zahrnovat také nepřesnosti, které vznikají uvažováním konečných hodnot ∆l a ∆R . Korekci lze provést zavedením pojmu efektivní deformace εe pro kterou platí vztahy 16.
Měření hmotnosti - teoretická část
ε=
∆l dl dε = l , l ,
ε e = ∫ dε = ∫
dl l
Strana: 27 (16)
Efektivní deformace tenzometru vyvolávající prodloužení z lo na lo + ∆l se vypočítá integrací:
εe =
lo + ∆l
∫
lo
dl ∆l = ln1 + = ln(1 + ε ) l lo
(17)
Vztah mezi veličinami ε a εe lze aproximovat následující řadou: 1 2
1 6
ε = e εe − 1 = ε e + ε e2 + ε e3 + .....
(18)
Upřesnění vyžaduje také základní tenzometrická rovnice pro kovové tenzometry. Za předpokladu, že objem drátku V se při deformaci nemění, je jeho odpor I2. Prodloužením o ∆l se odpor změní na hodnotou. Ro + ∆R =
ρ (lo + ∆l )2 V
(19)
Základní tenzometrická rovnice se pak změní na tvar 19. . ∆R ∆l ∆l = 2 + = 2ε + ε 2 = 2ε = e 2εe − 1 Ro lo lo 2
(20)
Výhody plného můstku: - Anulování činitele nelinearity N, při zapojení do můstku tak, aby protilehlé senzory byly podrobeny deformaci stejného a sousedící opačného znaménka. - Čtyřnásobná citlivost ve srovnání se čtvrtinovým můstkem, platí vztah 21. UD =U
-
-
1 ∆R 4 P = UK ε , 0 εP 4 R
(21)
Nulová chyba vlivem teploty, pokud jsou všechny tenzometry identické a umístěné na povrchu o stejné teplotě. Minimální chyba vlivem odporu přívodu, je možné ji zanedbat, pokud je plný můstek vytvořen přímo na pružném členu s minimální délkou spojů mezi rameny mostu. Vliv odporů přívodu od zdroje k plnému můstku lze vyloučit při napájením z proudového zdroje I. Současně se potlačí nelinearita, jak vyplývá ze vztahu (22) pro UD naprázdno.
Měření hmotnosti - teoretická část
Strana: 28
∆R ∆R2 ∆R4 ∆R3 R2 R3 K 1 = U D = IK 1 1 − + − R2 R4 R3 R1 + R2 + R3 + R4 R1 ,
(22)
Výhody proudového napájení vedly ke konstrukci měřících obvodů se dvěma identickými generátory proudu obr. 17.
Obr. 17 Měřící obvod se dvěma symetrickými zdroji proudu.
Jsou realizovány spolu s rozdílovým zesilovačem a dvouvodičovým převodníkem jako monolitický integrovaný obvod (např. XTR101). Zapojení je možné použít pouze pro poloviční nebo čtvrtinový můstek.
2.3.2 Střídavé můstky Nestálost nuly u stejnosměrných zesilovačů a termoelektrická napětí omezují možnosti stejnosměrných můstků. Oba problémy je možné odstranit pomocí střídavého napájení. Střídavé napájení vyvolává účinky parazitních impedancí vedení i vlastních tenzometrů. Při praktických realizacích plného můstku převládá účinek kapacit přívodů. U neúplných můstků může být situace podstatně složitější, protože parazitní impedance přívodů působí paralelně s tenzometrem. Vliv impedance je možné minimalizovat využitím necitlivosti synchronních demodulátorů na kvadraturní složku signálu, protože pro malé odchylky od rovnováhy je imaginární složka fázoru UD (jω) úměrná právě účinku parazitních kapacit. Šestivodičové zapojení obr. 18. je dalším možným vhodným zapojením pro plný můstek. Kapacity CV a odpory RV všech přívodů jsou reprezentovány prvky se soustředěnými parametry a předpokládá se, že všech šest vodičů má stejné elektrické parametry. Skutečné napájecí napětí můstku je monitorováno středním párem vodičů. Srovnáváno se žádanou hodnotou URef a takto vzniklé chybové napětí je použito v regulátoru Reg. pro kompenzaci úbytku napětí na přívodech od generátoru U k můstku. Střídavé můstky nejsou vhodné pro měření rychle se měnících mechanických napětí x(t). Výstupní napětí můstku má tvar amplitudové modulace s nosnou frekvencí určenou napájecím napětím můstku a obálkou odpovídající měřenému napětí x(t). Jak známo, získání x(t) amplitudovou demodulací vyžaduje, aby kmitočet nosné byl podstatně vyšší než nejvyšší významný kmitočet ve spektru x(t). Avšak při zvýšeném kmitočtu napájecího napětí můstku se výrazněji uplatňují parazitní impedance. Kmitočet napájecího napětí se volí řádově několik kHz a tak, aby nebyl harmonickou rušivých napětí (např. síťového
Měření hmotnosti - teoretická část
Strana: 29
kmitočtu 50Hz). Pro náročná dynamická měření se používají stejnosměrné můstky, nebo v případě jednotlivých senzorů proudové napájení a měření střídavé složky spádu napětí senzoru.
RV/2
(12x) U
UG
RM/2
Cv
˜
RM/2 R→∞ UR
ε
Cv
UR
˜
URef
Reg
A=1
ε
R→∞
ε
UD
ε
můstek
Cv
vedení
A
UD
Č měřící obvody
Obr. 18 Šestivodičové zapojení střídavého můstku .
µP
Strana: 30
Měření hmotnosti - teoretická část
Návrh hardwaru
Strana: 31
3 NÁVRH HARDWARU 3.1 Návrh elektroniky váhy Vlastní elektronika váhy se skládá ze čtyř hlavních celků. Základní blokové schéma je znázorněno a obrázku 19. Schéma celého zapojení včetně návrhu desky plošného spoje je uvedeno v přílohách. Hlavní částí zařízení je mikrokontrolér PIC16F877, ten se stará o komunikaci s mobilním telefonem a o vlastní měření. Jeho popis se nachází v následující kapitole 3.2. Druhým blokem je napájecí část. Ta se skládá z olověného akumulátoru, stabilizátoru a filtrace napětí. Popis napájecí části je v kapitole 3.3. Třetí blok osahuje tenzometrické můstky a zesilovače signálu. Tato část je popsána v kapitole 3.4. Čtvrtým blokem je komunikační rozhraní s mobilním telefonem a je popsáno v kapitole 3.5. Dále je zapojení doplněno o indikační LED a tlačítka OK a RESET pro přímou komunikaci s uživatelem.
Obr. 19 Blokové schéma měřící jednotky.
Strana: 32
Návrh hardwaru
3.2 Mikrořadič PIC 16F877 Základní parametry: - výrobce firma Microchip - jednoduchý výkonný kontrolér s architekturou RISC - pouze 35 jednoslovných instrukcí - všechny instrukce mimo instrukcí pro větvení trvají jeden pracovní cyklus - instrukce větvení dva cykly - pracovní rychlost až 20 MHz - 8K x 14 bitů programové paměti FLASH - 368 bytů paměti RAM pro data - 256 bytů paměti EEPROM - 15 zdrojů vnitřních nebo vnějších zdrojů přerušení - 8 úrovňový zásobník STACK pro návratové adresy přerušení a podprogramů - přímé, nepřímé a relativní adresování - ochrana programového kódu - plně statický návrh - RESET při zapnutí napájení (Power – On Reset – POR) - prodleva při zapnutí napájení (Power Up Timer – PWRT), o kterou je prodloužen RESET a prodleva pro start oscilátoru po zapnutí napájení (Oscillator Start-up Timer OST) - detekce poklesu napájecího napětí pro RESET (BOR – Brown – out Reset) - Watchdog Timer (WDT) s vlastním RC oscilátorem na čipu pro zvýšení spolehlivosti funkce - ochranné pojistky proti čtení programového kódu - instrukce SLEEP pro programové uvedení mikrokontroléru do stavu úspory napájení - volba režimu použitého oscilátoru při programování obvodu - programování sériovou dvouvodičovou linkou až v koncové aplikace - ladění programu přímo v obvodovém zapojení (In-Circuit Debugging) pomocí dvou vývodů - nízký příkon, vysoká rychlost, technologie CMOS FLASH/EEPROM - pouze jednoduché napájení +5V při programování - široký rozsah napájecího napětí: +2,0V až +5,5V - proud 25mA směrem ven i dovnitř - teplotní rozsahy : COMMERCIAL, INDUSTRIAL a AUTOMOTIVE nízká spotřeba: < 2 mA při 5V a 4 MHz 20 µA při 3V a 32 kHz < 1 µA ve stavu SLEEP Technické vlastnosti obvodu: - 33 I/O vývodů, které mohou být nastaveny jako vstupně/výstupních nebo se speciální funkcí: o „CAPTURE“ vstup, „COMPARE“ výstup „PWM“ výstup režim CAPTURE má rozlišení 16 bitů (200 ns) režim COMPARE má rozlišení 16 bitů (200ns) režim PWM má rozlišení 1 bit až 10 bitů 8 bitové rozlišení dává s krystalem 20 MHz maximální frekvenci na -
Návrh hardwaru -
-
Strana: 33
výstupu 80kHz a 10 bitové rozlišení 20kHz. TMR0: 8bitový časovač/čítač s 8bitovým programovatelným předděličem TMR1: 16bitový časovač/čítač- obsah TMR1 může být zvyšován i ve stavu SLEEP, pokud se použije vnější hodinový signál na vývodu T1CKI nebo krystal na vývody T1OSI a T1OSO TMR2: 8bitový časovač/ čítač s 8bitovým registrem (časová základna pro PWM) a předděličem i „děličem po“ 10 bitový A/D převodník s 8kanálovým multiplexovaným vstupem, doba převodu se pohybuje v řádu desítek až stovek µs na kanál Komparátor a komparátor napěťové reference Synchronní sériový port (SSP) se dvěma režimy: 3vodičový SPI I2CTM /ACCES.bus kompatibilní Sériový komunikační kanál (USART/SCI) s možností detekce 9bitové adresy Paralelní SLAVE port (PSP): 8bitová šířka dat s externími signály RD, WR, CS Režim SLEEP Provedení pouzder procesoru PIC 16F877A Firma Microchip vyrábí tento typ procesoru v provedeních PDIP 40, PLCC 40, TQFP 44 a QFN 44 Při návrhu byl použit procesor v pouzdře PDIP 40 obr. 19.
Obr. 20 Pouzdro PDIP procesoru PIC16F877.
V zapojení jsou použity dva hodinové krystaly, primární Q1 s frekvencí 20MHz, který taktuje jádro procesoru a sekundární Q2 s frekvencí 32,768KHz, který slouží jako zdroj nezávislého hodinového signálu. Krystal Q2 bude použit jako zdroj hodinové signálu v době, kdy se procesor nachází v režimu SLEEP a primární oscilátor je vypnut.
Strana: 34
Návrh hardwaru
3.3 Napájecí část Celá aplikace je napájena z olověného akumulátoru 12V/ 8.0 Ah. Pro stabilizaci napájecího napětí byl vybrán nízkoúbytkový stabilizátor LF50. Při nulovém zatížení má stabilizátor vlastní spotřebu cca 50µA při zatížení 500µA. Aby bylo dosaženo co nejnižší spotřeby v době, kdy není zařízení v aktivním stavu je přímo napájen pouze mikrořadič a m.t. Napájení všech periférií je zapojeno přes spínací kontakt jazýčkového relé a tím je dosaženo minimální spotřeby zařízení v klidovém stavu. Průběh odběru proudu zařízení v jednotlivých fázích činnosti je na obrázku 21. Po prvním spuštění se spotřeba pohybuje kolem 14mA. Při připojení meřících můstků a napěťového přizpůsobení pro mobilní telefon stoupne odběr na cca 63mA. Největší odběr vykazuje mobilní telefon při přihlašování do GSM sítě a při odesílaní SMS zprávy. Spotřeba krátkodobě vzroste až na 270mA. Tento údaj je závislý na síle signálu, v době měření dosahoval 90%. Nejnižší spotřebu zařízení vykazuje v době nečinnosti, když se mikrořadič nachází v režimu SLEEP s vypnutým telefonem a to cca 8,3 mA. Akumulátor by měl vydržet bez dobíjení přibližně 20 dnů.
300 260,5
270 250
250
250
200 Odběr [mA]
250 Odesílání SMS
Připojeno napájení periferií
150 100
INICIALIZACE PIC
65
64
50 15 0
14
63
13
Spuštění m.t.
95
94
90
Připojeno napájení periferií + m.t.
Režim SLEEP m.t. vypnut
8,2 8,3 8,1 8,2
0
Obr. 21 Odběr zařízení.
3.4 Měřící část 3.4.1
Osobní digitální váha Osobní digitální váha, která byla při návrhu použita má následující parametry: Výrobce TGM Maximální zatížení 150Kg Rozměry 320x320x35 [mm]
Uvnitř váhy je v každém rohu umístěn jeden tenzometrický snímač hmotnosti obr.22.
Návrh hardwaru
Strana: 35
Obr. 22 Tenzometrický snímač hmotnosti.
Ze snímače jsou vyvedeny vždy tři vodiče, bílý střední vodič je společný, černý a červený jsou krajní vodiče vyvedené z tenzometrů. Na snímačích není žádné typové označení. Měřením bylo zjištěno, že se jedná o odporové tenzometry s jmenovitou hodnotou odporu 1 KΩ. Konstrukce z profilovaného plastu se snímači bude zachována a zabudována do podstavce úlu. Celková změřená hmotnost je součtem hmotností z jednotlivých snímačů.
3.4.2
Měřící obvody
Původní deska s elektronikou osazená ve váze, je pro další využití nevhodná. Jedná se o jednoúčelové zařízení a součástky ze kterých se skládá jsou bez jakéhokoliv označení. Z tohoto důvodu byla odstraněna a bylo navrženo nové zapojení. Zapojení vychází z požadavků vzniklých použitím tenzometrických odporových snímačů v můstkovém zapojení. Vzhledem k typu snímačů a jednodušší konstrukci bylo vybráno řešení se stejnosměrným napájením můstku. Pokud bychom chtěli použít střídavé napájení můstku, bylo by nutné zabývat se ještě návrhem zdroje střídavého napětí. Jelikož snímač obsahuje pouze dva tenzometry, je můstek doplněn o odpor R3 a odporový dvacetipěti otáčkový trimr P1, kterým se nastavuje vyvážení můstku. Při napájecím napětí 5V dojde při zatížení 10 N k rozvážení o 0,1 mV. Varianta se stejnosměrným napájením je relativně jednodušší a vychází z katalogového zapojení, které je publikováno v [4]. Základní součástkou je přístrojový operační zesilovač AD620AN. Na jeho vstupy je přes RC filtr přivedeno napětí z odporového můstku. Zesílení operačního zesilovače určuje velikost proměnného odporu P3 zapojeného mezi piny 1 a 8. Velikost zesílení popř. velikost odporu je dána vztahem (23). G=
49,4kΩ 49,4kΩ + 1 , RG = RG G −1
(23)
Zesílený signál je superponován na konstantní referenční napětí přivedené na pin 5. Velikost tohoto napětí se nastavuje pomocí trimrového potenciometru P2. Následně je impedančně odděleno operačním zesilovačem LM358. Minimální hodnota výstupního napětí je 0,65V. Takto upravený signál je přiveden na vstupy A/D převodníku mikrokontroléru. Schéma zapojení je na obr. 23.
Strana: 36
Návrh hardwaru
Obr. 23 Schéma zapojení jedné měřící větve. PIC 16F877 obsahuje jeden desetibitový integrační A/D převodník, který je možné připojit na piny 2 až 10, což jsou porty A a E. Při vhodném nastavení je možné použít jiné referenční napětí, než je napájecí. Vývody RA2 a RA3 pak slouží jako vstupní reference pro spodní a horní mez napětí, čímž lze rozsah převodníku soustředit do malého intervalu, tímto opatřením vzroste relativní chyba. Vstupní napětí je nejprve zachyceno na interní kondenzátor a poté zpracováno. Doba nabíjení závisí hlavně na impedanci měřeného signálu a teplotě. Pokud není teplota vyšší než 50ºC a impedance nepřesahuje 10KΩ stačí k plnému nabití kondenzátoru 20 mikrosekund. Poté může začít samotný převod. Časování převodu je řízeno interně, dá se však předem nastavit. Po jeho skončení se automaticky nastaví příznak (ADCON,GO), nebo může být vyvoláno přerušení. Převod probíhá na pozadí, neovlivňuje běh programu během převodu. Parametry, které ovlivňují funkci A/D převodníku se nastavují v registrech ADCON0, ADCON1. Výsledná hodnota měření se ukládá do registrů ADRESL a ADRESH.
3.5 Přenos po GSM síti 3.5.1
Výběr GSM zařízení
Při výběru GSM zařízení byl brán ohled především na způsob komunikace s mikrokontrolérem. V současné době nabízí moderní mobilní technika pro přenos dat různá bezdrátová komunikační rozhraní jako je bluetooth, infraport či wi-fi. Výrobci implementují do svých výrobků i různé druhy sběrnic. Pro svoji jednoduchost byla vybrána komunikace po RS232. GSM zařízení musí být vybaveno hardwarovým modemem, musí podporovat funkci ovládání pomocí AT příkazů a umožňovat práci s SMS pomocí těchto příkazů. Přehled některých telefonů, které splňují uvedené požadavky je v následující tabulce.
Návrh hardwaru Výrobce ERICSSON ERICSSON ERICSSON ERICSSON ERICSSON ERICSSON ERICSSON ERICSSON SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS ALCATEL
Typové označení GF768 SH888 T10s A1018s T28s R310s A2628s T65 C10 C35 C45 M50 C55 501
Strana: 37
Komunikační parametry 9600/8/N/1 9600/8/N/1 9600/8/N/1 9600/8/N/1 9600/8/N/1 9600/8/N/1 9600/8/N/1 9600/8/N/1 19200/8/N/1 19200/8/N/1 19200/8/N/1 19200/8/N/1 19200/8/N/1 19200/8/N/1
V případě, že by nebyl k dispozice mobilní telefon s těmito parametry, je možné použít GSM datový modul, nebo GSM terminál. GSM datový modul je jednoduše řečeno „mobilní telefon bez krytu, displaye a klávesnice“. Jedná se vlastně o upravenou základní desku mobilní telefonu. Je primárně určen k zabudování na desku plošného spoje, připojen je přes 40 - pinový SMD konektor. Je nutné připojit adaptér na SIM kartu a anténu. Komunikace probíhá přes sériové rozhraní v.110. Nejjednodušším zástupcem je například modul Siemens TC35i . GSM terminál je již kompletní zařízení ve vlastním krytu, komunikuje přes rozhraní RS232. Obsahuje integrovaný adaptér na SIM kartu a anténu. Typickým zástupcem je Siemens TC35i – Terminál.
3.5.2
Komunikační rozhraní pro mobilní telefon
Jako komunikační zařízení byl vybrán pro zkušební vzorek pro svoji dostupnost mobilní telefon Siemens C35i. Komunikace mezi mikroprocesorem a mobilním telefonem probíhá po sériové lince RS 232. Jedná se o duplexní, znakově orientované, asynchronní sériové rozhraní. Komunikace probíhá po třech vodičích, RX – příjem dat, TX- vysílání dat a zem GND. Nejsou využity vodiče pro řízení datového toku. Komunikace má parametry : - přenosová rychlost 19200 Bd - počet přenášených bitů 8 - bez parity - 1 stop bit
Strana: 38
Návrh hardwaru Byte Td
log1 log 0 Start bit D0
D1
D2
D3 D4
D5
D6
D7
Stop bit
Obr. 24Formát jednoho bytu. Na obrázku 25. je zobrazen konektor mobilního telefonu Siemens C35 jednotlivé piny mají následující význam: 1. GND. 2. Vstup pro nastavení nabíjecího režimu. 3. Vstup pro nabíjení baterie. 4. Výstup z baterie. 5. Výstup dat (Tx). 6. Vstup dat (Rx). 7. Konektor pro připojení příslušenství. 8. Konektor pro připojení příslušenství 9. GND pro externí mikrofon. 10. Vstup pro externí mikrofon. 11. Výstup externího reproduktoru. 12. GND pro externí reprodukor.
Obr. 25 Datový konektor Siemens C35 pohled ze spodu. Jelikož mikrořadič pracuje s jinými logickými úrovněmi než mobilní telefon, je nutné provést napěťové přizpůsobení. Na lince TX od procesoru je napětí sníženo odporem a zenerovou diodou obr. 26.
Obr. 26 Napěťové přizpůsobeni TX linky.
Návrh hardwaru
Strana: 39
Vstup sériové linky je v procesoru osazen Schmittovým klopným obvodem. Tento klopný obvod překlápí při napětí 1 V pro Log 0 a 4 V pro Log 1, jelikož mobilní telefon pracuje s logickými úrovněmi 0 V a 2,3 V, bylo nutné zvýšit napětí potřebné k překlopení pomocí tranzistorů viz. obr. 27. Při Log. 1 z mobilního telefonu se otevře tranzistor T1 a uzemní bázi tranzistoru T2 a na kolektoru T2 je logická úroveň Log 1. Při Log 0 na bázi T1 je otevřen tranzistor T2 a na jeho kolektoru je Log. 0.
Obr. 27 Napěťové přizpůsobení Rx linky. Aby bylo možné spustit mikrokontrolérem mobilní telefon, bylo nutné přidat do zapojení tranzistor T3, obr. 28. ten je ovládán přes procesor (PIN 23) a má za úkol přivést na pin 3 (nabíjení) mobilního telefonu log 1. Při uzemnění pinů 3 a 7 na mobilním telefonu pak dojde k jeho spuštění. Vypínání není nutné řešit hardwarově, vypnutí se provede pomocí AT příkazu.
Obr. 28 Spouštění mobilního telefonu.
Strana: 40
Návrh hardwaru
Popis komunikace s mobilním telefonem
Strana: 41
4 POPIS KOMUNIKACE S MOBILNÍM TELEFONEM Vlastní komunikace mezi mikroprocesorem a mobilním telefonem probíhá pomocí tzv. AT (Attention) příkazů. Ty byly původně vyvinuty pro ovládání telefonních modemů a později byly převzaty pro ovládání mobilních telefonů ve verzi GMS 07.07 a GSM 07.05. Každý výrobce mobilního telefonu implementuje do svého výrobku jen určitou část příkazů ze sady AT. Některé telefony vůbec nepodporují AT příkazy. U těchto telefonů probíhá komunikace v binárním režimu. Což znamená, že modem musí být emulován softwarově. AT příkazy jsou ve formátu ASCII odesílány po lince TX do mobilního telefonu. Telefon na ně pak po lince RX opět ve formátu ASCII odpovídá, nebo vykoná zadaný povel. AT příkazů je nepřeberné množství a je možné, rozdělit je do skupin podle následující tabulky. Typ AT příkazu Standartní AT příkazy V.25
Popis AT příkazu Základní sada AT příkazů definovaná pro modemy podle ITU-T.
Příklad: ATA ATD
AT příkazy pro FAX
Jsou užívány pro FAX aplikace
AT příkazy GSM 07.07
Rozšíření základních AT příkazů pro použití v GSM. Podle definice ETSI.
AT+FRM AT+FTM AT+CCLK AT+CSQ
AT příkazy GSM 07.05 pro SMS
AT příkazy GSM 07.07 pro GPRS AT příkazy GSM 11.14 pro SIM Toolkit aplikace Speciální rozšiřující AT příkazy pro mobilní telefony Siemens
Rozšířené AT příkazy pracující s AT+CMMS SMS. Pokud tyto příkazy mob. tel. AT+CMGD nepodporuje nelze realizovat ovládání pomocí SMS. AT příkazy pro mobilní telefony AT+CGAT podporující GPRS ATD*98# AT příkazy pro mobilní telefony AT^SSAT podporující SIM Toolkit AT^SSTGI Speciální příkazy Siemens pro AT^SNFM vypnutí mobilního telefonu, mute AT^SPIC mikrofonu atd.
Příkaz vždy začíná uvozujícím slovem AT a dále následuje samostatný povel. AT příkaz je vždy zakončen znakem enter, při komunikaci s mikroprocesorem jej představuje znak 0DH, při komunikaci s PC znak
. Pro správnost zapojení lze s výhodou využít standartně nastavenou vlastnost mobilního telefonu, kterou je tzv. echo. To znamená, že telefon přeposílá přijaté znaky zpět. Seznam všech příkazů je uveden v [6].
Strana: 42
Popis komunikace s mobilním telefonem
Mobilní telefon může odeslat následující odpovědi: OK - vše v pořádku, odpověď na konkrétní dotaz RING - takto hlásí příchozí hovor NO CARRIER - není dostupná síť ERROR - chyba NO DIALTONE - telefon nemá vyzváněcí tón při volání BUSSY - obsazeno CONNECTED - připojeno
4.1
Přehled AT příkazů: AT – Základní příkaz pro otestování komunikace. Syntaxe: AT Odpovědi: OK, ERROR ATA – Vyzvednutí příchozího hovoru. Syntaxe: ATA Odpověď: ERROR pokud žádný hovor nepřichází OK hovor přichází ATH - Zavěsí při právě probíhajícím hovoru. Syntaxe: ATH Odpověď: OK ERROR – žádný hovor neprobíhá ATD – Vytočení telefonního čísla. Syntaxe: ATD723507100; Odpověď: OK AT+CPBS – Výběr pozice telefonního seznamu v mobilním telefonu, se kterým se bude pracovat. Syntaxe: AT+CPBS=”ME” paměť telefonu AT+CPBS=”SM” paměť SIM- karty Odpověď: OK AT + CPBR - Provede vyčtení čísel z vybraného seznamu z definovaných pozic. Syntaxe: AT+CBR = 1,2 Odpověď: +CPBR: 1,”723507100”,129,”PETR” +CPBR: 1,”723705120”,129,”LENKA” Výběr seznamu se provádí předcházejícím příkazem AT+CBS, počet vypisovaných čísel lze upravit změnou parametrů příkazu. AT+CPMS – Výběr paměti pro práci s SMS. Syntaxe: AT+CPMS =”SM” práce se SIM AT+CPMS =”ME” práce s mobilním telefonem Odpověď: OK
Popis komunikace s mobilním telefonem
Strana: 43
AT+CMGL – Vyčte SMS zprávy, číslo na konci příkazu udává typ zpráv. 0 – přijaté, nepřečtené 1 – přijaté , přečtené 2 – uložené, neodeslané zprávy 3 – uložené odeslané 4 – všechny zprávy Syntaxe: AT+CMGL=1 Odpověď : Viz níže SMS v PDU formátu. AT+CMGD – Smazání SMS. Číslo v příkazu udává pozici SMS zprávy, která má být smazána. Syntaxe: AT+ CMGL = 0 Odpověď. OK ERROR pokud SMS se zadanou pozicí neexistuje AT+CMSS – Odešle SMS zprávu uloženou v SMS seznamu. Číslo v příkazu udává pozici zprávy v seznamu. Pomocí příkazu CPMS se musí nejdříve definovat paměť, se kterou se bude pracovat. SMS musí být uložena i s telefonním číslem tzn. v seznamu odeslaných zpráv. Syntaxe: AT+CMSS= 1 + CMSS: 200 Odpověď:OK AT+CMGS - Odeslání SMS v PDU formátu. Parametrem příkazu je délka PDU rámce. Odesílaní zpráv pomocí PDU bude podrobně popsáno v následující kapitole. AT+CLIP – Zapne zobrazování telefonního číslo příchozího hovoru. Syntaxe: AT+CLIP =1 AT+CLIP =0 vypne zobrazování. Odpověď mobilního telefonu při příchozím hovoru : RING +CLIP: “+420723507100”, 145,,,,0 ATE – Vypíná a zapíná echo mobilního telefonu. Syntaxe: ATE0 Vypne echo. ATE1 Spustí echo. AT+CCLK – Stáhne aktuální čas a datum zobrazený na displeji mobilního telefonu. Syntaxe: AT+CCLK? Odpověď: +CCLK: “12/03/07, 12:27:08” OK AT + COPS? – Zjistí jméno aktuálního mobilního operátora. Syntaxe: AT+COPS? Odpověď: +COPS: 0,0,"CZ O2" OK
Strana: 44
Popis komunikace s mobilním telefonem
AT+CBC – Zjistí stávající stav baterie. Syntaxe: AT+CBC OK Odpověď: +CBC:0,100 AT+CSQ – Zjistí sílu signálu. Syntaxe: AT+CSQ Odpověď:+CSQ: 60,50 OK AT+CLCC – Informace o právě probíhajícím volání. Syntaxe: AT+CLCC Odpověď: 1,0,3,0,0,“+420723507100“,145 0 – volá se z mobilního telefonu 3 – indikuje vyzváněcí tón 145 – znamená, že je číslo v mezinárodním formátu AT^SMSO – Vypnutí mobilního telefonu: Syntaxe: AT^SMSO Odpověď: OK
4.2
PDU formát pro SMS
Krátké textové zprávy SMS (Short Message Service) jsou další z možností využití sítě GSM. Tato služby byla původně vyvinuta jako vedlejší a nepředpokládalo se její masové využití. Délka přenášeného textu může být až 160 ascii znaků v jedné zprávě. Pro kódování SMS při přenosu z telefonu nebo do telefonu, se používá PDU (protocol description unit) formát. Princip kódování spočívá v převedení textu zprávy na sedmi bitové kódování, tím se zpráva zkrátí na délku 140 znaků. SMS zprávy lze využít pro přenos dat a ovládání v jednoduchých časově nenáročných aplikacích. Zprávy SMS mohou být uloženy v závislosti na typu telefonního přístroje v několika paměťových prostorech (SM,ME,MT). Operace, které se zprávami můžeme provádět, lze rozdělit do třech kategorií: čtení zpráv a jejich mazání, zapisování zpráv a jejich odesílání do sítě a ukládání zpráv po přijetí. Každé ze tří skupin operací lze přiřadit paměťový prostor, se kterým se pak pracuje. Pro správu tohoto přiřazení slouží AT příkaz AT+CPMS. Tento příkaz můžeme využít ve třech různých formách pro testování, čtení a zápis. Při testování (AT+CPMS= ?) je možné zjisti jaké možnosti daný mobilní telefon nabízí. Pro použitý Siemens C35 vypadá odpověď následovně : Syntaxe: AT+CPMS? Odpověď: +CPMS: "SM", 1,10, "SM", 1,10, "SM", 1,10
Číselné údaje znamenají počet využitých a celkový počet míst v jednotlivých paměťových prostorech. V této odpovědi je využito jedno paměťové místo z deseti možných a všechny operace jsou směrovány na SIM kartu, protože telefon nedisponuje vnitřní pamětí pro SMS zprávy. Jednotlivé zprávy jsou uloženy na pozicích od 1 do 10. Každá nová příchozí SMS je uložena na nejnižší možnou pozici. Při smazání zprávy na nižší pozici, než je poslední obsazená, dojde k posunu všech následujících zpráv.
Popis komunikace s mobilním telefonem
Strana: 45
4.2.1 Příjem SMS zpráv Příjem zpráv probíhá podle protokolu SMS_DELIVER. Výpis zpráv z mobilního telefonu se provede příkazem AT+CMGL. Syntaxe: AT+CMGL = 1 Odpověď: +CMGL:1,1,,23
0791246020099990240C912470320517000000703011318480400441F45B0D OK +CMGL: v odpovědi označuje typ příkazu první 1 - počet zpráv druhá 1 - jedná se o zprávu přijatou a přečtenou číslice 23 - udává počet byte v samotné zprávě Vlastní zprávu tvoří řetězec: 0791246020099990240C912470320517000000703011318480400441F45B0D Význam jednotlivých znaků je vysvětlen v následující tabulce:
Řetězec lze rozdělit na jednotlivé části : Význam
Části dat 07 91
SMSC informace (číslo SMS centra) 246020099990
První oktet SMS DELIVER PDU
Telefonní číslo odesílatele
24
0C
91
247032051700 PID (protokol SMS
Význam znaků Udává v (HEX) délku SMSC informace. Formát čísla SMS centra: 91 – mezinárodní formát 81 – národní formát Telefonní číslo SMS centra. Jednotlivé dvojice číslic jsou navzájem vyměněny (swap) Při lichém počtu číslic se doplňuje znakem “F“. Číslo SMS centra po dekódování 420602909909.
Délka telefonního čísla (247032051700) v HEXa. Udává počet znaků. Doplňující znak ”F“ se nepočítá. Formát čísla 91 - mezinárodní formát 81 - národní formát Tel. číslo odesílatele. Zde uvedené je 0420723507100. Jednotlivé dvojice čísel jsou navzájem vyměněny (swap) 00h – obyčejná SMS
Strana: 46
Popis komunikace s mobilním telefonem
zprávy)
00
DCS (kódovací schéma SMS)
00
PID (protokol SMS zprávy) UDL (počet znaků ve vlastní SMS před jejím zakódováním) Samotný text SMS zprávy.
04
41F45B0D
01h – telex 02h – fax (skupina 3) 00h – 7 bitová výchozí abeceda F6h – 8 bitové datové kódování Informace o doručení do SMS centra. Jednotlivé dvojice čísel jsou navzájem vyměněné . Jejich význam zleva: rok, měsíc,den, hodina, minuta, sekunda a časová zóna. Počet znaků v následující zprávě před jejím zakódováním Tento řetězec obsahuje vlastní data.
Vlastní text je obsažen v řetězci 41F45B0D postup dekódování je následující: - Nejprve se řetězec rozdělí na jednotlivé znaky a ty se převedou z šestnáctkové soustavy do binární. PDU v hexa formátu PDU v binárním tvaru
41 010000001
F4 11110100
5B 01011011
0D 00001101
Od prvního znaku se oddělí bit na nejvyšší pozici. Od druhého znaku se oddělí první dva nejvyšší bity a na nejnižší bit se připojí nejvyšší bit z prvního znaku. - Od třetího znaku se oddělí první tři bity a na nejnižší pozice se připojí bity odebrané z předchozího znaku. - Od čtvrtého znaku se oddělí čtyři nejvyšší bity a na nejnižší pozicí se připojí bity odebrané z předchozího znaku. Celý postup je graficky znázorněn na obrázku 29. -
0 1000001 1000001
11 110100 1101000
010 11011
11101111
00001101
1101010
Obr. 29 Dekódování SMS.
Posledním krokem je převod z binárního tvaru do desítkové soustavy a přiřazení znaku podle ascii tabulky.
Popis komunikace s mobilním telefonem Text v binárním tvaru Text v desítkové soustavě ASCII text
100001 65 A
1101000 104 h
1101111 111 o
Strana: 47 1101010 106 j
4.2.2 Odesílání SMS zpráv Odesílání zpráv SMS se řídí podle protokolu SMS-SUBMIT. Samotná textová zpráva musí být doplněna ještě řadou doprovodných údajů, jejich význam je vysvětlen v následující tabulce . Význam
Části dat 00
SMSC informace (číslo SMS centra)
07 91
246020099990
SMS DELIVER PDU (stavové informace zprávy)
11
00
0C Telefonní číslo příjemce
91
247032051700 PID (protokol SMS zprávy) DCS (kódovací
Význam znaků Pokud je na začátku 00 je použito nastavení SMS centra z mobilního telefonu Udává v (HEX) délku SMSC informace.
00
Formát čísla SMS centra: 91 – mezinárodní formát 81 – národní formát Telefonní číslo SMS centra. Jednotlivé dvojice číslic jsou navzájem vyměněny (swap) Při lichém počtu číslic se doplňuje znakem “F“. Číslo SMS centra po dekódování 420602909909. PDU typ (SMS-SUBMIT) TP-MTI, TPRD, TP-VPF, TP-SRR, TP-UDHI a TPRP. Referenční číslo zprávy poslané z telefonu do SMS centra (01 – 255) přiřadí telefon. Délka telefonního čísla (247032051700) v HEXA. Udává počet znaků. Doplňující znak ”F“ se nepočítá. Formát čísla 91 - mezinárodní formát 81 – národní formát Tel. číslo příjemce. Zde uvedené je 0420723507100. Jednotlivé dvojice čísel jsou navzájem vyměněny (swap) 00h – obyčejná SMS 01h – telex 02h – fax (skupina 3) Např.:
Strana: 48
Popis komunikace s mobilním telefonem
schéma SMS)
00
Délka platnosti zprávy Samotný text SMS zprávy.
AA 41F45B0D
00h – 7 bitová výchozí abeceda F6h – 8 bitové datové kódování Udává čas platnosti SMS zprávy „AA“ znamená čtyři dny. Tento řetězec obsahuje vlastní zprávu „Ahoj“
Kódování textu SMS zprávy probíhá v opačném pořadí než při dekódování. Nejprve se znakům přiřadí ASCII hodnota binárním tvaru. Kódovaný text ASCII hodnota desítkově ASCII hodnota binárně
A 65 0100001
h 104 01101000
o 111 01101111
j 106 01101010
Jelikož je vždy na nejvyšším bitu log. 0 je cílem kódování tuto nadbytečnost odstranit a využít všech 8 bitů. Postup převodu je následující : - Na nejvyšší místo prvního znaku se přenese nejnižší bit z druhého znaku. - Provede se rotace doprava o dvě místa u druhého znaku. - Na vzniklé volné bity se přenese dvojice nejnižších bitů ze třetího znaku. - Provede se rotace doprava o tři místa u třetího znaku. - Na vzniklé volné bity se přenese trojice nejnižších bitů ze čtvrtého znaku. Celý postup kódování je znázorněn na obrázku 30.
0 1000001
01000001
0 110100 0
11110100
0 11011 11
01011011
01101 0 10
00001101
Obr. 30 Kódování SMS.
PDU v binárním tvaru PDU v hexa formátu
010000001 41
11110100 F4
01011011 5B
00001101 0D
Při posílání SMS se nejprve pošle příkaz AT+CMGS = X , kde X je počet oktetů odeslaného PDU bez informací a čísla SMS centra. V následujícím příkladu se posílá SMS s textem „Ahoj“ na číslo +420723507100 Syntaxe: AT+CMGS = 18 Odpověď: >
Popis komunikace s mobilním telefonem
Strana: 49
Nyní je možné odeslat vlastní SMS v PDU formátu. Syntaxe: 079124602009999011000C912470320517000000AA41F45B0D Odpověď: +CMGS: 170 OK Telefon přiřadil SMS číslo 170 a odeslal ji.
Strana: 50
Popis komunikace s mobilním telefonem
Návrh programového vybavení
Strana: 51
5 NÁVRH PROGRAMOVÉHO VYBAVENÍ Programové vybavení aplikace je navrženo v jazyce C. Pro vývoj bylo použito vývojové prostředí SourceBoostIDE ver. 5.7. Aplikace byla průběžně testována na nepájivém kontaktním poli. Pro programování kontroléru byl používán programátor Presto od firmy ASIX.
5.1 Hlavní tělo programu V hlavním těle programu dojde k nastavení registrů potřebných pro správnou funkci mikrořadiče a k načtení dat z telefonu - podprogram inicializace. Ostatní podprogramy jsou volány z obsluhy přerušení po probuzení ze stavu SLEEP. Po probuzení se provede obsluha hodin a kontrola s požadovaným časem pro měření. Je-li dosaženo času pro měření je nastavena proměnná alarm, která je testována před přechodem do režimu SLEEP. Pokud nastane čas odesílání dat, je zavolán podprogram, který provede vlastní A/D převod a výpočet hmotnosti – blok vážení. Pak následuje spuštění mobilního telefonu a odeslání SMS zprávy s naměřeným údajem – blok odeslání dat. Při každém měření je provedena kontrola napětí akumulátoru a při poklesu pod 11,7V je odeslána varovná SMS. Po provedení všech operací je opět mikrořadič uspán. Start (Připojení napájení,RESET) Inicializační část
Režim SLEEP Probuzení z režimu SLEEP
Nastal čas pro vážení ?
-
+ A/D převod -vážení Spuštění m.t. A/D převod - napětí akumulátoru Odeslání dat Vypnutí m.t.
Obr. 31 Vývojový diagram hlavní části programu.
Strana: 52
Návrh programového vybavení
5.2 Inicializační část Na obrázku 32. je znázorněn vývojový diagram inicializační části programu. Po spuštění proběhne počáteční nastavení registrů potřebných pro sériovou komunikaci. Pak se spustí mobilní telefon, provede se test komunikace pomoci příkazu “AT“. Pokud telefon odpoví ”OK“ pokračuje se v normálním běhu programu, jinak dojde k signalizaci chyby pomocí LED. Běh programu se zacyklí a opakovaně se testuje komunikace až do doby, než je úspěšná. Nyní se čeká, až uživatel nastaví správný čas na mobilním telefonu a stiskne tlačítko OK. Poté dojde k přečtení času a nastavovací SMS z mobilního telefonu ta musí být ve formátu SET0812, kde číslice udávají dvojici časů měření. Všechny údaje jsou zpracovány a uloženy. Nyní je mobilní telefon vypnut a procesor přechází do režimu SLEEP. V této části se pracuje s registry TXSTA, SPBRG, RCSTA, INTCON, STATUS, PIE1, PIR1, TMR1H,TMR1L. Pro nastavení sériového portu slouží registry TXSTA, což je řídící a příznakový registr pro vysílaní, pro příjem má obdobnou funkci registr RCSTA. Do registru TXSTA je uložena hodnota 00100100b, tím je nastaven generátor rychlosti přenosu na vysokou rychlost a povoleno vysílání. Do registru SPBRG je uložena hodnota 64, tato hodnota udává rychlost přenosu dat, v závislosti na taktovací frekvenci viz tab. 10-4 v. [3]. Do registru RCSTA je uložena hodnota 10010000b, tím je povolen sériový port na pinech RC7-RX a RC6-TX . Pro správnou funkci přerušení od TMR1 je nutné provést následující operace. V registru OPTION-REG se nastaví bit PSA do log. 1, tím se předdělič připojí k WDT. Do systémového řídícího registru T1CON se zapíše hodnota 00001111b, tím je povolen modul časovače TMR1, zdrojem hodinového signálu je sekundární oscilátor, externí signál se nesynchronizuje s vnitřním instrukčním cyklem a je povolen oscilátor pro modul časovače TIMER1. Po spuštění dojde k plnění registrů TMR1H a TMR1L, když dojde k přetečení těchto registrů, vyvolá se přerušení. Aby k přerušení docházelo každou vteřinu, naplní se registr TMR1H hodnotou 128, což v součtu obou registrů dává hodnotu 32768, to je polovina celkové kapacity. Takže do přetečení zbývá vykonat dalších 32768 cyklů, kterých odpovídá době jedné vteřiny. V dalším kroku se vynuluje příznakový registr PIR1. Povolí se přerušení od TMR1 v registru PIE1 nastavením bitu TMR1IE do log.1. A nakonec se povolí přerušení v registru INTCON nastavením bitů GIE a PEIE.
Návrh programového vybavení Start inicializační části Nastavení registrů potřebných pro komunikaci. Povolení přerušení od sériové linky. Spuštění m.t
-
Signalizace chyby komunikace s M.T
Test komunikace
+ Signalizace úspěšné komunikace s m.t. (LED svítí)
Časová prodleva
Stisk tl.OK
+ Přečtení času a časů pro měření.(příjem SMS)
Signalizace chyby nastavení.(LED bliká, 500ms) Signalizace chyby
-
Vyhodnocení získaných hodnot
+ Signalizace úspěšného nastavení časů.(LED bliká po 10s)
Vypnutí M.T.
Nastaveni TMR1H a povolení přerušení od TMR1
Konec inicializační části
Obr. 32 Vývojový diagram inicializační části programu.
Strana: 53
Strana: 54
Návrh programového vybavení
5.3 Obsluha přerušení Obsluha přerušení probíhá v programu ve funkci void interrupt (void). Tato funkce je zavolána, pokud je během běhu programu vyvoláno přerušení. Zdroj přerušení signalizuje jeden ze stavových bitu registru PIR1. Přerušení může v nastat ve dvou případech. Každou sekundu, když dojde k přetečení registru TMR1 po probuzení z režimu SLEEP a při příchodu dat po sériové lince. Pokud je vyvoláno přerušení, zjistí se jeho zdroj a poté se vykoná příslušný podprogram. Vývojový diagram je znázorněn na obr.33. Start přerušení
Přerušení od TMR1
-
+ PIR1 = 0
Obsluha hodin
Naplnění tmr1h
Přerušení od sériového portu
+ PIR1 = 0
Zpracování přijatých dat
Konec obsluhy přerušení
přerušení Obr. 33 Vývojový diagram obsluhy přerušen.í
Návrh programového vybavení
Strana: 55
5.4 A/D převod – vážení Modul A/D převodníku je spojen se čtyřmi registry: ADCON0, ADCON1, ADRESL a ADRESH. Registr ADCON1 provádí nastavení a přiřazení jednotlivých vývodu k převodníku. Registr je nastaven na hodnotu 10000010b, což znamená, že výsledek měření bude uložen v bytech ADRESH:ADRESL a bude zarovnán vpravo, šest nejvýznamnějších bitů v registru ADRESH je rovno nule. Prvních pět bitů z portu A je nadefinováno jako analogové. Referenční napětí UREF+ a UREF- je přivedeno přímo z napájecího napětí mikrořadiče, tedy 0 a 5V. Registr ADCON0 řídí funkci modulu A/D převodníku a je nastavován až při volání funkce int mereni (char pin),tato funkce vrací výsledek měření a jako vstupní parametr má číslo pinu, na kterém se bude měřit (0=AN0…7=AN7). Při prvním vážení je nastaven na hodnotu 10001001b, což znamená, že hodinový signál A/D převodníku je získán z FOSC/32, měřit se bude na vstupu RA1/AN1 a je spuštěno napájení převodníku. Při změně v tomto registru je nutné vyčkat přibližně 20 µs, tento údaj je závislý na teplotě a je vypočítán na straně 114. v [3]. Vývojový diagram celého podprogramu měření je znázorněn na obr. 34.
Start vážení
Nastavení ADCON1 Nastavení ADCON0 Výběr pinu.
Počet měření = 0
Prodleva 20 µs
+
Je počet měření 64?
-
Spuštění převodu (ADCON0,GO = 1)
Výsledek / 64 (Výsledek >>6)
Konec vážení
Konec převodu ADCON0,GO = 0?
-
Počet měření + 1
+ Výsledek =ADRESH*256 + ADRESL
Obr. 34 Vývojový diagram obsluhy přerušení.
Strana: 56
Návrh programového vybavení
Vlastní převod je spuštěn po nastavení bitu GO v registru ADCON0 na log. 1. Ukončení je signalizováno vynulováním tohoto bitu. Měření se vždy provede 64 x a výsledek se zprůměrňuje. Postupně se takto změří všechny čtyři kanály a hodnoty se sečtou. Tento součet se vynásobí koeficientem, který je závislý na nastaveném zesílení operačních zesilovačů a odečte se od něj hodnota referenčního napětí nastavená P2. Nakonec se výsledek pomocí funkce void prevod (int) rozdělí na stovky, desítky, jednotky a desetiny kilogramů. Z těchto hodnot je při odesílání změřených údajů vytvořena textová zpráva.
5.5 Příjem SMS zprávy Čtení SMS zpráv je potřebné při počáteční inicializaci, když se z SMS uložené v mobilním telefonu načítají časy pro měření a odesílání hmotnosti. Před vlastním čtením SMS je nutné zaslat výzvu mobilnímu telefonu, ve které jsou obsaženy informace o zprávě, o kterou máme zájem. Při příjmu SMS, která obsahuje 7 textových znaků, telefon odešle řetězec o celkové délce 95 znaků (včetně znaků pro odřádkování). Protože jsou pro další využití důležité pouze znaky na pozicích 50-61 (číslo odesílatele) a 80-96 (text nastavovací SMS) jsou před odesláním požadavku nejprve nastaveny „zarážky“, mezi kterými chceme příchozí znaky ukládat pro další zpracování. Vývojový diagram příjmu SMS a její dekódování je na obrázku 35. Pomocí příkazu posliAT("AT+CMGL=1"); zažádáme mobilní telefon o SMS zprávu uloženou na prvním místě v přečtených zprávách. Funkce void posliAT (const char *text ) odešle libovolný AT příkaz mobilnímu telefonu. Příkaz je parametrem funkce, za každým příkazem je odeslán ukončovací znak 0x0D. Start příjmu SMS
Start dekódování PDU
Nastavení zarážek, pro tel. číslo (50-61) pro text SMS (80-96)
Převod dvojic znaků PDU na číselnou hodnotu v hexa. (ZNAKYPDUtoHEXA)
Žádost o SMS AT+CMGL=1
i=1;
Získání dat z obsluhy přerušení telcislo – tel.číslo
Dekódování PDU
znak1 = textPDU<>1
znak1 = textPDU[i]<>1)| (textSMS3[i-1]>>8-i);
i == 7 ?
Konec příjmu SMS
-
+ Konec dekódování PDU
Obr. 35 Vývojový diagram příjmu a dekódování SMS.
i++;
Návrh programového vybavení
Strana: 57
Nyní dojde k vyvolání přerušení od sériové linky, protože telefon začne odesílat zprávu. Pokud požadovaná SMS nebude nalezena, telefon odpoví ERROR, je-li dotaz v pořádku a požadovaná SMS je nalezena, začne se při příchodu nového znaku zvyšovat počítadlo znaků přijatých sériovou linkou. Je-li dosaženo pozice, na které se nachází potřebné informace, jsou data uložena do příslušných proměnných. Mobilní číslo se uloží bez dalších úprav, text zprávy musí být dekódován podle postupu, který je popsán v kapitole 4.2.1.
5.6 Odeslání SMS zprávy Odesílaná zprava má následující tvar: „Zvazeno: 120,5 Kg“. Číslo udávající hmotnost se mění podle aktuální hodnoty. Prvním krokem před odesláním SMS je převedení textu zprávy do PDU formátu. Teoretický postup je uveden v kapitole 4.2.2. Řetězec nekódované zprávy je uložen v proměnné textSMS. Algoritmus převodu je naznačen na obr. 36. Řetězec se nejprve převede z osmi bitového na sedmi bitové kódování. Následuje rozdělení na dvojice textových znaků v šestnáctkové soustavě. Výsledek je uložen v proměnné textSMS2. Start kódování SMS i=0;
textSMS2[i]=textSMS[0]>>i | (textSMS[i+1]<<7-i);
i == 6 ?
i++;
+ i=0;
textSMS2[7+i]=textSMS[8+i]>>i | (textSMS[9+i]<<7-i);
i == 6 ?
i++;
+ Převod do šestnáctkové soustavy Konec dekódování PDU
Obr. 36 Vývojový diagram kódování SMS.
Při odesílání SMS s výsledkem měření se používá zkrácený formát doprovodných
Strana: 58
Návrh programového vybavení
údajů. Odesílaný řetězec neobsahuje číslo a informace SMS centra, ty telefon automaticky přiřadí podle údajů nastavených operátorem na SIM kartě. Před odesíláním se nejprve spustí telefon. Pak se odešle AT příkaz posliAT("AT+CMGF=0"); tímto příkazem se určí, že odesílaná SMS bude v PDU formátu. Nyní se odešle příkaz posliAT("AT+CMGS=32"); kde číslo 32 udává počet oktetů PDU rámce. Pokud je vše v pořádku, telefon odpoví > a čeká na vlastní řetězec SMS zprávy. Ten je složen ze zkrácených servisních informací, čísla příjemce, které je uloženo v proměnné telcislo. Následuje údaj o platnosti zprávy a nakonec text samotné SMS v PDU formátu. Jako poslední se odesílá zakončovaní znak 0x1A. vývojový diagram odesílání SMS je na obr. 37. Start odesílání SMS Výběr paměti AT+CMGF=0 Počet oktetů AT+CMGS=32 časová prodleva Odeslání řetězce PDU
Konec odesílání SMS
Obr. 37 Vývojový diagram odeslání SMS.
Přehled finanční nákladů
Strana: 59
6 PŘEHLED FINANČNÍ NÁKLADŮ V následující tabulce je uveden rozpis součástek, které jsou obsaženy na desce plošného spoje. Typ
Rezistory
Kondenzátory
Diody
Trimry
I.O.
Tranzistory Krystaly Relé Konektor Tlačítka
Název: R1-R3, R8-R10 R19-R25 R4,R6,R16 R5
Hodnota: 1 KΩ
Ks. 13
Poznámka: 0,6W, vel. 0207
Cena: 13 Kč
330 Ω 3,3 KΩ
3 1
0,6W, vel. 0207 0,6W, vel. 0207
3 Kč 1 Kč
R7,R12 R17,R18
240 Ω 10 KΩ
2 2
0,6W, vel. 0207 0,6W, vel. 0207
2 Kč 2 Kč
C1,C2 C3-C17 C18,C19 C20 D1
22 pF 100 nF 33 pF 22 uF 3V0
2 14 2 1 1
keramický keramický keramický elektrolytický 16V zenerova dioda 0,5W
2 Kč 42 Kč 2 Kč 1,50 Kč 1 Kč
LED1 P1,P4,P7,P10
zelená 2 KΩ
1 4
5 mm, 10 mA cermetový 25 otáček
4 Kč 106 Kč
P2,P6,P8,P11 P3,P5,P9,P12 P13
5 KΩ 500 Ω 25 KΩ
4 4 1
cermetový 25 otáček cermetový 25 otáček ležatý 5x10 mm
106 Kč 106 Kč 8 Kč
IC1 IO1-IO4 OZ1,OZ1
PIC16F877 AD620AN LM 358
1 4 2
PIC16F877A-I/P přístrojový O.Z. 2 x O.Z.
150 Kč 440 Kč 8 Kč
U1 T1-T3
LF50CV BC546A
1 3
TO220 TO92
30 Kč 3 Kč
T4 Q1 Q2 REL K1 TL1,TL2
BC557 32,768 KHz 20 MHz RELSIAO5D500 ARK500/2 P-B1720B
1 1 1 1 1 2
TO92 3x8 HC-49U jazýčkové relé svorkovnice
1 Kč 5 Kč 10 Kč 22 Kč 5 Kč 3 Kč 1076,5Kč
Cena celkem
Všechny součástky jsou běžně k dostání ve firmě GM electronic [8]. Uvedené ceny jsou maloobchodní s DPH.
Přehled finanční nákladů
Strana: 60
Do celkové ceny je nutné ještě připočítat náklady spojené s pořízením ostatních komponent a zatím neurčené náklady na výrobu podstavce, do kterého bude váha umístěna. Návrh podstavce je uveden v příloze C. Akumulátor Digitální váha Konektor k m.t. Plošný spoj
12V/8Ah Konektor S35 jednovrstvý
300 Kč 600 Kč 100 Kč 50 Kč
Ostatní materiál
Vodiče, atd.
200 Kč
Siemens C35
300 Kč
Při použití tohoto zařízení hrají nemalou roli také finanční náklady spojené s jeho provozem. Jelikož se předpokládá, že váha nebude v provozu celý rok, ale jen od jara, kdy začíná snůška, až do podzimních měsíců, kdy snůška končí. Bylo by tedy zbytečné používat v mobilním telefonu kartu s paušálním poplatkem, který by bylo nutné platit celoročně. Jako výhodné se tedy jeví použít předplacenou telefonní SIM kartu od některého z operátorů. V následující tabulce je provedeno cenové srovnání předplacených karet od mobilních operátorů dostupných u nás. Operátor O2 O2 T-Mobile
Název služby TXT FUN TwistProSMS
Vodafone
Divoká karta
Cena SIM Cena za jednu SMS 95Kč (s kreditem 50Kč) 2 Kč 95Kč (s kreditem 50Kč) 2 Kč 99Kč (s kreditem 10Kč + 1,90Kč 100Kč při prvním dobití) 200Kč 2,40Kč
Závěr
Strana: 61
7 ZÁVĚR V diplomové práci jsem nejprve provedl teoretický rozbor problematiky vážení pomocí tenzometrických snímačů. Navrhl jsem schéma zapojení pro mikrokontrolér PIC16F877. V návrhu jsou použity čtyři stejnosměrně napájené poloviční tenzometrické můstky. Zesílení signálu obstarávají přístrojové operační zesilovače AD620AN. Sestavil jsem kompletní programové vybavení pro mikrokontrolér a celé zapojení jsem prakticky ověřil na nepájivém kontaktním poli. Pro přenos dat byl použit mobilní telefon SIEMENS C35. Z hotového schématu jsem navrhl předlohu jednostranného plošného spoje. Podle této předlohy bude vyroben funkční vzorek zařízení, které bude v brzké době nasazen do provozu. Ačkoliv se na první pohled může zdát, že navrhované zařízení je využitelné pouze ve včelařství, myslím si, že opak je pravdou. Své uplatnění najde všude tam, kde je potřeba měřit a dálkově sledovat nějakou fyzikální veličinu. Například hmotnost zásobníků krmiv nebo hnojiv. Při menší úpravě zapojení a úpravě programu by bylo možné dálkově sledovat a měřit teplotu, výšku hladiny, průtok, či hlásit nepovolený vstup do objektu. V dalším vývoji by bylo vhodné navrhnout alternativní zdroj energie pro dobíjení akumulátoru, tím by mohl být solární panel. Zařízení by se tak stalo nezávislé a mohlo by pracovat bez lidského zásahu téměř nepřetržitě. Věřím, že moje diplomová práce bude užitečným zdrojem informací při řešení dalších úloh z této oblasti. A navržené zařízení bude spolehlivě plnit svoji funkci.
Strana: 62
Závěr
Seznam použité literatury
Strana: 63
8 SEZNAM POUŽITÉ LITERATURY [1] PEROUTKA, Oldřich. Mikrokontrolér PIC16F87X a důležité rozdíly mezi řadou PIC16F87X a PIC 16F87XA. 1.vyd. Praha: Nakladatelství BEN-technická literatura, 2005, 256s, ISB 80-7300-139-X. [2] DAĎO S, KREIDL M. Senzory a měřící obvody, ČVUT Praha 1999, ISBN 80-0300563-9. [3] Microchip, Datasheet PIC16F877 [online]. c2006, [cit.1.května 2007]. Dostupný z WWW: [4] Analog Devices, Datasheet AD620 Low Drift, Low Power Instrumentation Amp with Set Gains of 1 to 10000 [online]. c1995-2007, [cit.1.května 2007]. Dostupný z WWW: [5] Hankovec, David. GSM Alarm DHS003 [online]. [cit.1.května 2007]. Dostupný z WWW: <2007http://www.dhservis.cz/dalsi_1/dhs003.htm> [6] Manual Reference AT Command Set for the SIEMENS Mobile Phones S35i, C35i, M35i [online]. [cit.1.května 2007] dostupný z WWW: < http://www.dhservis.cz/docs_soubory/at_pro_c35i-gsm_07.07_a_07.05.pdf> [7] Vojáček, Antonín. Polovodičové tenzometry - princip, provedení, použití, historie [online]. [cit.1.května 2007]. Dostupný z WWW:
[8] GM electronic. Katalog součástek pro elektroniku 2007.[online]. [cit.5.května 2007]. Dostupný z WWW:
Strana: 64
Seznam použité literatury
Seznam příloh
9 SEZNAM PŘÍLOH Tištěné přílohy: -
Příloha A: Schéma zapojení. Příloha B: Obrazec plošného spoje a osazovací obrazec DPS . Příloha C: Návrh umístění váhy do podstavce úlu.
Přílohy v elektronické podobě: CD-ROM disk obsahuje: - text diplomové práce v elektronické podobě - okomentovaný zdrojový kód programu v jazyce C - schéma zapojení a deska plošného spoje v el. podobě
Strana: 65
Strana: 66
Seznam příloh
Příloha A.
10 PŘÍLOHA A.
Obr. I. Schéma zapojení.
Strana: 67
Strana: 68
Příloha A.
Příloha B.
11 PŘÍLOHA B.
Obr. II. Obrazec plošného spoje ze spodní strany .
Obr. III. Osazovací obrazec DPS.
Strana: 69
Strana: 70
Příloha B.
Příloha C.
Strana: 71
12 PŘÍLOHA C.
Obr. IV. Návrh umístění váhy do podstavce úlu. • •
Díly z polypropylenu svařeny popř. slepeny. Zadní stěna odnímatelná, přišroubovaná na rám pod váhou.
Strana: 72
Příloha C.