Vysoke´Ucˇenítechnicke´V Brneˇ
Total Page:16
File Type:pdf, Size:1020Kb
VYSOKE´ UCˇ ENI´ TECHNICKE´ V BRNEˇ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMACˇ NI´CH TECHNOLOGII´ U´ STAV INTELIGENTNI´CH SYSTE´ MU˚ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS BEZDRA´TOVA´ SENZOROVA´ SI´Tˇ SESTAVENA´ Z KOMPONENT ARDUINO DIPLOMOVA´ PRA´ CE MASTER’S THESIS AUTOR PRA´ CE Bc. JAKUB Sˇ PLI´CHAL AUTHOR BRNO 2012 VYSOKE´ UCˇ ENI´ TECHNICKE´ V BRNEˇ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMACˇ NI´CH TECHNOLOGII´ U´ STAV INTELIGENTNI´CH SYSTE´ MU˚ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS BEZDRA´TOVA´ SENZOROVA´ SI´Tˇ SESTAVENA´ Z KOMPONENT ARDUINO WIRELESS SENSOR NETWORK WITH ARDUINO COMPONENTS DIPLOMOVA´ PRA´ CE MASTER’S THESIS AUTOR PRA´ CE Bc. JAKUB Sˇ PLI´CHAL AUTHOR VEDOUCI´ PRA´ CE Ing. JAN SAMEK, Ph.D. SUPERVISOR BRNO 2012 Abstrakt Diplomova´pra´ce se zaby´va´vytvorˇenı´m bezdra´tove´senzorove´sı´teˇsestavene´z komponent Arduino. Pra´ce obsahuje sezna´menı´s platformou Arduino a jejı´mi mozˇnostmi v kombinaci s bezdra´tovy´mi moduly XBee. Du˚lezˇitou cˇa´stı´pra´ce je na´vrh bezdra´tove´sı´teˇz teˇchto komponent a aplikace pro zobrazenı´nameˇrˇeny´ch hodnot ze senzorovy´ch uzlu˚. Cı´lem pra´ce je vytvorˇenı´senzorove´sı´teˇs dyna- mickou topologiı´a prozkouma´nı´jejı´ho chova´nı´v rea´lne´m prostrˇedı´a vytvorˇenı´aplikace pro ulozˇenı´ a zobrazenı´nameˇrˇeny´ch dat z jednotlivy´ch senzorovy´ch uzlu˚. Abstract This thesis deals with the creation of wireless sensor networks consisting of components Arduino. The work includes introduction to the Arduino platform and its capabilities in combination with the wireless XBee modules. The important part is design a wireless network from these components and applications for the display of measured values from sensor nodes. The goal is to create sensor networks with a dynamic topology and examine its behavior in real environment and the creation of applications for saving and displaying measured data from individual sensor nodes. Klı´cˇova´slova Arduino, XBee, senzory, DigiMesh, WSN, Qt. Keywords Arduino, XBee, sensors, DigiMesh, WSN, Qt. Citace Jakub Sˇplı´chal: Bezdra´tova´senzorova´sı´t’ sestavena´z komponent Arduino, diplomova´pra´ce, Brno, FIT VUT v Brneˇ, 2012 Bezdra´tova´senzorova´sı´t’ sestavena´z komponent Arduino Prohla´sˇenı´ Prohlasˇuji, zˇe jsem tuto diplomovou pra´ci vypracoval samostatneˇ pod vedenı´m pana Ing. Jana Samka, Ph.D. ....................... Jakub Sˇplı´chal 20. kveˇtna 2012 Podeˇkova´nı´ Chteˇl bych podeˇkovat vedoucı´mu te´to pra´ce Ing. Janu Samkovi, Ph.D. za jeho odbornou pomoc prˇi vytva´rˇenı´te´to pra´ce. © Jakub Sˇplı´chal, 2012. Tato pra´ce vznikla jako sˇkolnı´dı´lo na Vysoke´m ucˇenı´technicke´m v Brneˇ, Fakulteˇinformacˇnı´ch technologiı´. Pra´ce je chra´neˇna autorsky´m za´konem a jejı´uzˇitı´bez udeˇlenı´opra´vneˇnı´autorem je neza´konne´, s vy´jimkou za´konem definovany´ch prˇı´padu˚. Obsah 1 U´ vod 3 1.1 Cı´l a struktura pra´ce..................................3 2 Za´kladnı´teorie a pojmy5 2.1 Arduino........................................5 2.1.1 Druhy desek Arduino.............................6 2.1.2 Prˇı´davne´desky pro Arduino.........................9 2.1.3 Vy´voj.................................... 11 2.2 XBee......................................... 12 2.2.1 Se´rie XBee modulu˚.............................. 13 2.2.2 Druhy ante´n XBee modulu˚.......................... 14 2.2.3 DigiMesh................................... 16 2.2.4 Programova´nı´modulu˚XBee......................... 18 2.2.5 Rozdı´ly DigiMesh a ZigBee......................... 19 2.3 Senzory a dalsˇı´pouzˇity´hardware........................... 20 2.3.1 DS18B20................................... 20 2.3.2 RHT03.................................... 22 2.3.3 XBee Explorer USB............................. 23 2.3.4 FTDI Basic.................................. 23 3 Na´vrh a pouzˇite´technologie 25 3.1 Senzorova´sı´t..................................... 25 3.1.1 Uzel se senzorem DS18B20......................... 27 3.1.2 Uzel se senzorem RHT03.......................... 27 3.1.3 XBee a rezˇim spa´nku............................. 28 3.1.4 Arduino a u´spora energie........................... 28 3.2 Na´vrh aplikace.................................... 29 3.2.1 Implementacˇnı´technologie......................... 30 3.2.2 Qt framework................................. 31 3.2.3 Se´riovy´port.................................. 31 3.3 Databa´ze....................................... 32 3.4 Komunikacˇnı´protokol................................ 34 3.5 Zobrazenı´nameˇrˇeny´ch dat.............................. 34 3.5.1 Grafy..................................... 34 3.5.2 Tabulky.................................... 36 1 4 Implementace 37 4.1 Implementace bezdra´tove´sı´teˇ............................. 37 4.1.1 Vy´chozı´uzel................................. 37 4.1.2 Odesla´nı´hodnoty ze senzorove´ho uzlu.................... 38 4.1.3 Uspa´nı´senzorove´bezdra´tove´sı´teˇ...................... 39 4.1.4 Spa´nek mikrokontrole´ru ATmega...................... 39 4.1.5 Uzel se senzorem DS18B20......................... 40 4.1.6 Uzel se senzorem RHT03.......................... 41 4.2 Testova´nı´sı´teˇ..................................... 42 4.3 Aplikace........................................ 44 4.3.1 Databa´ze................................... 45 4.3.2 Spra´va uzlu˚a senzoru˚............................ 45 4.3.3 Nastavenı´se´riove´ho portu.......................... 45 4.3.4 TCP server.................................. 46 4.3.5 Zobrazenı´nameˇrˇeny´ch hodnot........................ 46 5 Mozˇnosti rozsˇı´rˇenı´ 48 5.1 Bezdra´tova´sı´t’..................................... 48 5.2 Aplikace........................................ 48 6 Za´veˇr a zhodnocenı´ 49 A Obsah CD 53 B Zdrojove´ko´dy 54 C Obra´zky 55 2 Kapitola 1 U´ vod S bezdra´tovy´mi sı´teˇmi se v dnesˇnı´dobeˇsetka´va´me sta´le cˇasteˇji. S rozsˇı´rˇeneˇjsˇı´sı´tı´, se kterou se mu˚zˇeme setkat, je sı´t’WiFi. Nalezneme ji ve sˇkola´ch, kancela´rˇsky´ch budova´ch nebo doma´cnostech. Sı´t’WiFi nejcˇasteˇji slouzˇı´k prˇipojenı´osobnı´ch pocˇı´tacˇu˚, notebooku˚, mobilnı´ch telefonu˚a dalsˇı´rˇady zarˇı´zenı´k sı´ti Internet. Dnesˇnı´doba ale take´vyzˇaduje sı´teˇ, ktere´slouzˇı´pro spojenı´nı´zkovy´konovy´ch zarˇı´zenı´v sı´tı´ch PAN1 na male´vzda´lenosti naprˇı´klad jako sı´teˇzalozˇene´na specifikaci ZigBee. ZigBee je urcˇeno pro vytva´rˇenı´maly´ch, spolehlivy´ch, energeticky nena´rocˇny´ch a v neposlednı´rˇadeˇcenoveˇ dostupny´ch digita´lnı´ch ra´diovy´ch modulu˚. Vyuzˇitı´teˇchto ZigBee bezdra´tovy´ch modulu˚mu˚zˇeme najı´t v da´lkovy´ch ovladacˇı´ch osveˇtlenı´, elektromeˇrech, spotrˇebicˇı´ch a v mnoha jiny´ch zarˇı´zenı´ch. Jednou z mozˇnostı´vyuzˇitı´teˇchto sı´tı´je spojenı´s meˇrˇenı´m fyzika´lnı´ch velicˇin za pomocı´sen- zoru˚. Na dnesˇnı´m trhu mu˚zˇeme najı´t velke´mnozˇstvı´senzoru˚pro meˇrˇenı´teplot, vlhkosti vzduchu, znecˇisˇteˇnı´ vzduchu, osveˇtlenı´, vibracı´, radiace, spotrˇeby paliv a dalsˇı´. Tı´mto spojenı´m vznikajı´ senzorove´ jednotky, ktere´ vytva´rˇejı´ senzorove´ bezdra´tove´ sı´teˇ. Jejich uplatneˇnı´ je velmi sˇiroke´ naprˇı´klad prˇipozˇa´rech lesa, meˇrˇenı´emisı´na farma´ch, kontrole chemicky´ch nebo mechanicky´ch procesu˚, bezpecˇnosti, kontrole zbozˇı´v logistice, zavlazˇovanı´, meˇrˇenı´spotrˇebyvody a energie. 1.1 Cı´l a struktura pra´ce Cı´lem te´to diplomove´pra´ce je navrhnout a realizovat senzorovou bezdra´tovou sı´t’spolu s aplikacı´ na zobrazova´nı´nameˇrˇeny´ch dat. Samotna´sı´t’ bude sestavena z open source komponent Arduino a bezdra´tovy´ch modulu˚XBee. Arduino poslouzˇı´ke snı´ma´nı´hodnot ze senzoru˚a za pomocı´bez- dra´tovy´ch modulu˚XBee se jednotlive´Arduino spojı´do jedine´bezdra´tove´sı´teˇ. Takto vytvorˇena´sı´t’ bude zalozˇena na mesh topologii. Sı´t’s touto topologiı´ma´zabezpecˇenu automatickou konfiguraci struktury sı´teˇ, spolehlive´smeˇrova´nı´mezi jednotlivy´mi uzly a automaticky´prˇı´stup novy´ch uzlu˚do sı´teˇprostrˇednictvı´m dosavadnı´ch uzlu˚. Jeden z teˇchto uzlu˚bude tzv. vy´chozı´uzel, ktery´prˇeposˇle nameˇrˇene´hodnoty aplikaci v pocˇı´tacˇi. Vy´chozı´uzel bude prˇipojeny´pomocı´USB spojenı´prˇı´mo s pocˇı´tacˇem, ve ktere´m pobeˇzˇı´aplikace. Aplikace na´sledneˇulozˇı´data do loka´lnı´databa´ze a bude take´ spravovat informace o uzlech a pouzˇity´ch senzorech. Ulozˇena´data budou na´sledneˇzobrazova´na pomocı´vytvorˇene´aplikace ve formeˇgrafu˚a tabulek. Na samotne´m zacˇa´tku pra´ce je cˇtena´rˇobezna´men s open source platformou Arduino, s jejı´mi vlastnostmi, rozsˇı´rˇitelnostı´a mozˇnostmi vy´voje. V te´to kapitole je take´uveden popis hardwarovy´ch desek Arduino vyuzˇı´vany´ch v te´to pra´ci a to UNO a FIO. Da´le se veˇnuje bezdra´tovy´m modulu˚m XBee firmy Digi International. V poslednı´cˇa´sti kapitoly je uveden popis senzoru˚a jine´ho pouzˇite´ho hardwaru. Po te´to kapitole je prezentova´n na´vrh senzorove´bezdra´tove´sı´teˇ, jednotlivy´ch senzorovy´ch 1Personal area network 3 uzlu˚, prˇicˇemzˇ je zde take´ probra´n na´vrh aplikace a databa´ze. Kapitola take´ popisuje v mensˇı´ mı´rˇepouzˇite´technologie prˇina´vrhu aplikace. V kapitole4 je probra´na implementace jednotlivy´ch senzorovy´ch uzlu˚a aplikace na ulozˇenı´nameˇrˇeny´ch dat a jejich zobrazenı´. Kapitola take´obsahuje testova´nı´sı´teˇv budoveˇVUT FIT. Jsou zde take´zmı´neˇny proble´my, jezˇse beˇhem vy´voje objevily. V prˇedposlednı´kapitole5 jsou popsa´na navrhovana´rozsˇı´rˇenı´do budoucna, ktera´se ty´kajı´aplikace i samotne´bezdra´tove´sı´teˇ. 4 Kapitola 2 Za´kladnı´teorie a pojmy V te´to kapitole budou uvedeny du˚lezˇite´informace o