Achiziția si transmiterea datelor cu kitul de senzori Crossbow [306317]

1 Introducere

1.1 Conceptul de bază din spatele kitului de rețea wireless pentru senzori fără fir

O rețea de senzori fără fir Crossbow se învârte în jurul unui concept de calcul cunoscut sub numele de tehnologie Mote (cunoscută și sub denumirea de rețea de detectare a rețelei wireless).

[anonimizat]. [anonimizat] ([anonimizat], utilizează o placă senzor MTS400 care furnizează senzori pentru: temperatură, umiditate, [anonimizat], accelerație în axa X, Accelerația axei Y).

Aceste computere mici trimit date fără fir înapoi la o stație de bază care este atașată la o gazdă a calculatorului. Un mote poate transmite date la o distanță între aproximativ 3 și 60 de metri. [anonimizat].

[anonimizat], [anonimizat].

[anonimizat], [anonimizat]-uri.

Modul prin care acestea formează o [anonimizat]. [anonimizat], [anonimizat], [anonimizat], pentru a [anonimizat] a acționa ca intermediari.[1][26]

1.2 Aplicatii tipice

1.2.1Aplicatii militare

Armata americană a fost prima care a manifestat interes pentru tehnologia Mote. Acesta a fost în mod special interesat de capacitatea acestor dispozitive de senzori de a [anonimizat] a [anonimizat].

[anonimizat] o [anonimizat], creând astfel o rețea care poate monitoriza o zonă îndepărtată și semnaland unde se detectează mișcarea.

[anonimizat], deoarece au un consum foarte redus de putere.

[anonimizat]-hopping, mote-urile comunică între ele până când ajung la un nod de colectare care are suficientă putere pentru a crea o legătură radio care poate transmite mai mulți kilometri spre o stație de bază.

Această metodă aduce avantaje semnificative în comparație cu metoda utilizată în trecut prin care o zonă era umplută cu mine de teren. Abordarea "mote" [anonimizat]. [anonimizat] a [anonimizat].

Într-[anonimizat] 35 [anonimizat] 1 milion de persoane (în special copiii). În timp ce tehnologia mote lasă în urmă doar niște resturi inofensive . [2]

1.2.2 Aplicatii industriale

Calitatea transportului:

Oferă date privind condițiile de mediu in care a fost expus un produs in timpul transportului .

Locația produsului:

Oferă locația unui produs în timpul transportului sau localizarea eficientă a unui produs în depozite mari.

Detectarea emisiilor nedorite:

Oferă semnale de avertizare în cazul emisiilor nedorite provenite de la un recipient care poate depozita materiale periculoase.[26]

1.2.3 Aplicatii civile

Monitorizare inteligenta:

Monitorizează nivelurile de consum (energie, apă etc.) într-un cartier, fără a fi nevoie ca o echipă să verifice fizic fiecare consumator individual, toate datele fiind trimise de la mote-uri fără fir, utilizând rețele ad-hoc și multi-hopping, nod care comunică prin legătura radio cu stațiile de bază corespunzătoare ale furnizorilor.

Parcare:

Informeaza un șofer cu privire la disponibilitatea locurilor de parcare în oraș.

Avertizari rutiere

Oferă șoferului avertizări cu privire la: condițiile meteorologice de pe șosea, blocajele de trafic sau accidentele auto care s-au întâmplat înainte.

Iluminat:

Luminile stradale își adaptează iluminatul în funcție de condițiile de mediu.[26]

1.3 O scurtă privire asupra istoriei companiei Crossbow

Compania Crossbow a fost fondată în 1995 de către Mike A. Horton, cu sediul în Milpitas, California, SUA.

Primele lor produse au fost senzori inerțiali pentru Administrația Federală a Aviației, folosind tehnologia dezvoltată la Universitatea din California, Berkeley susținută de A. Richard Newton.

În anul 2003, Crossbow a fost primul sistem de referință pentru atitudine și poziți certificată FAA (AHRS).

În 2005, companii precum Cisco, Intel și Grupul Paladin Capital au investit în Crossbow.

Alte produse notabile Crossbow includ:

inclinometru digital

giroscop vertical

Ghidare INS / GPS, unitate de navigație și control

unitățile de expunere a mediului de urmărire și expediere

Crossbow a fost una dintre primele companii care produc mote-uri. Primul model era cunoscut ca MICA și rulează pe sistemul de operare TinyOS. În urma au fost MICA2 mote, MICAz motes (cele care sunt utilizate în acest proiect), precum și IMOTE2 proiectat de Intel.

Crossbow a oferit de asemenea o platformă software pentru programarea acestor motes-uri numite (MoteWorks).

Pentru aceste mote-uri, Crossbow a primit premiul "Best of Sensors Expo Gold 2006", precum și "Premiul BP Helios".

În 2008, compania dezvoltă un sistem de senzori fără fir numit eKo Pro utilizat în agricultură pentru a furniza rapoarte utile privind bunăstarea culturilor.

În 2011, Crossbow este achiziționat pentru o valoare de aproximativ 32 de milioane de dolari de către Moog Inc.[3]

2. Crossbow Wireless Sensor Network Hardware

2.1 Perspectiva asupra modului în care componentele se leagă împreună

Setul wireless de senzori wireless Crossbow, folosit în acest proiect, este alcătuit din următoarele componente hardware:

două placi de interfață USB MIB520CA

patru mote MPR2600 (MICAz)

trei placi senzor MTS420 / 400CC

Fiecare componentă va fi explicată mai detaliat în următoarele subcapitole, dar pentru moment este esențial să prezentăm modul în care toate aceste componente hardware intră în conexiune pentru a forma o rețea de senzori fără fir.

Componentele hardware minime necesare pentru a realiza o rețea sunt:

o stație de bază, numită gateway, care este conectată la o gazdă a calculatorului

un mote cu o placă de senzori atașată la ea

Un gateway este asamblat prin conectarea conectorului de expansiune cu 51 de pini al MPR2600 (MICAz) la conectorul I / O de 51 pini al plăcii de interfață USB MIB520CA.

MIB520CA este furnizat cu alimentare de la cablul USB, iar mote-ul este alimentat de la baterii. În timp ce conectați cele două, este obligatoriu ca ambele să fie deconectate de la orice sursă de alimentare. După aceea, configurarea va fi conectată la o gazdă cu software-ul de programare necesar, prin intermediul cablului USB, și programat cu programul dorit de gateway TinyOS; este de dorit ca mote-ul să nu fie alimentat prin alte mijloace decât placa de interfață USB. Pentru ca mufa MPR2600 să primească date de la o placă de senzori și apoi să o trimită la gateway trebuie programată urmând aceiași pași folosiți pentru a programa un gateway.[4]

Fig.1 MPR2600 MICAz mote (albastru) & MIB520CA Placă de interfață USB (verde)

Fig.2 Panoul de senzori MTS420 / 400CC (verde) atașat la mica MPR2600 MICAz .

2.2 Placa de interfață USB MIB520CA

MIB520CA comunică cu motele, din familia IRIS și MICA, prin intermediul conectorului I / O de 51 pini și oferă:

interfață USB folosită pentru programarea moteurilor.

interfață USB utilizată pentru transferul de date prin care un mote, conectat la un MIB520CA, poate funcționa ca o stație de bază (gateway) pentru toate celelalte mote-uri.

Fig.3

Placa de interfață USB oferă două porturi separate: cea cu cifra inferioară (de exemplu, COM4) se ocupă de programarea mote în timp ce portul cu cifra superioară (de exemplu, COM5) se ocupă de comunicarea de date prin USB).

MIB520CA este prevăzut cu un procesor Atmega16L, folosit pentru a programa fiecare mote. Aplicația este transferată prin portul USB către procesor, care apoi programează in consecintă fiecare mote.

Butonul "RESET" este utilizat pentru a reseta interfața USB și procesoarele mote, precum și software-ul de monitorizare care rulează pe gazdă (de exemplu, un PC).

Conectorul J3 JTAG face o conexiune la un Atmel JTAG pentru a efectua depanarea în circuit.

Alimentarea pentru placa de interfață USB este furnizată de magistrala USB a gazdei.[5]

2.3 MPR2600 (MICAz) mote

Acestea sunt module care conțin un mic calculator, cu consum redus de energie, cu costuri reduse, care permit crearea rețelelor de senzori fără fir dotate cu capabilități XMesh.

Capacitatea XMesh a unui mote este acordată printr-o aplicație care permite mote-urilor să creeze rețele de senzori fără fir într-o manieră ad-hoc cu date multi-hopping între ele. (aceasta va fi discutată mai detaliat într-un capitol …)

MPR2600 face parte din familia MICA și este denumită MICAz mote.

Principalele părți ale mote-ului MICAz sunt compuse din:

Radioul CC2420 DSSS cu antena de ½ inci (0.03048 metri).

Atmel ATmega128L cu microprocesor de putere mică, cu logger flash.

Conector de expansiune cu 51 de pini.

Fig.4,5[6]

Capabilitatile modulului MPR2600 includ:

Banda de frecvențe variază de la 2.405 GHz (canalul 11) la 2.480 GHz (canalul 26), bandă radio ISM (industrială, științifică și medicală), fiecare separată de 5 MHz.

Puterea RF de la -25 dBm la 0 dBm (Vezi Fig.6A și Fig.6B).

Gama exterioară de maximum 75 m până la 100 m.

Domeniu interior de maximum 20 m până la 30 m.

Rată de transmisie de 250 kbps (TX).

Securitatea hardware AES-128.

Conectorul de extensie cu 51 de pini este compatibil cu intrările analogice, interfețele digitale I / O și UART, precum și interfețele I2C și SPI.

Microprocesorul ATmega128L este programat prin intermediul software-ului MoteWorks, atunci când mote-ul este montat pe o placă de interfață USB sau prin OTAP.

Modelul MPR2600 include, de asemenea, un Flash Logger, folosit pentru stocarea datelor și a măsurătorilor, utilizat și de caracteristica OTAP.

Modelul radio folosit de MPR2600 este un transmițător RF IEEE 802.15.4 care utilizează radioul DSSS de la Chipcon CC2420.

Acest modul este conceput în special pentru aplicații de joasă tensiune și joasă putere și este în concordanță cu reglementările din întreaga lume: FCC CFR47 Partea 15 (SUA), ETSI EN 300 328 și EN 300 440 clasa 2 (Europa) și ARIB STD-T66 Japonia).

Puterea RF poate fi setată cu ajutorul software-ului MoteWorks, utilizând puterea RF mai mică poate fi benefică prin reducerea interferențelor produse și de asemenea, prin reducerea consumului de energie.[7]

Fig.6A Consumul de curent în ceea ce privește puterea RF[6]

Fig.6B Consumul de curent în relație cu puterea RF[6]

Micaz mote este alimentat între 2,7 și 3,6 V și este proiectat să găzduiască două baterii alcaline AA, dar poate fi utilizată orice combinație de baterii (AAA, C, D etc.) atâta timp cât este îndeplinită plaja specificată mai sus.[7]

De asemenea, modulul poate fi alimentat prin intermediul conectorului I / O de 51 pini când este montat pe o placă de interfață USB sau printr-o sursă externă de alimentare care satisface domeniul de la 2,7 până la 3,6 V prin conectorul Molex cu 2 pini. (Vezi Fig.5)

În continuare este prezentat consumul de curent pentru Micaz mote în diferite tipuri de operațiuni:

Fig.7[6]

2.4 Placa de senzori MTS420/400CC

MTS420 / 400CC au fost proiectate de UC Berkeley și Intel Research Labs cu scopul de a crea o placă de senzori care să fie eficientă din punct de vedere energetic și care să poată fi utilizată în combinație cu dispozitive care depun eforturi pentru o viață generoasă a bateriei, menținând în același timp performanța.

Această placă de senzori oferă șapte parametri de monitorizare a mediului:

Accelerometru cu 2 axe

Senzor de lumina

Senzor barometric de presiune și temperatură

Senzor de umiditate și temperatură[8]

Fig.8A

Fig.8B

Partea MTS420 a plăcii de senzori se referă la un modul GPS opțional, care este absent în acest proiect (vezi Fig.8B).

2.4.1 Accelerometrul cu 2 axe

Utilizează un senzor ADXL202JE, care oferă măsurători atât pentru accelerațiile pozitive, cât și pentru cele negative, în intervalul de aproximativ ± 2 G (unde 1 G = 9,81 m / s2) pe axa orizontală X și axa verticală Y, care pot fi utile în aplicații în care sunt necesare deplasări, vibrații sau măsurători seismice.

Mai mult decât atât, senzorul măsoară forțele de accelerație, cum ar fi gravitatea, oferind capacitatea senzorului de înclinare a dispozitivului.

Senzorul este compus dintr-o placă de siliciu care asigură astfel un cadru rezistiv împotriva forțelor de accelerație.

Un condensator diferențial, compus din plăci fixe și o placă intermediară conectată la cadrul rezistiv, este utilizat pentru a măsura deformarea acestui cadru rezistiv. Acest lucru se face prin trimiterea de semnale dreptunghiulare care sunt în afara fazei de 180 ° prin plăcile fixe.

Dacă se produce accelerația, placa centrală va fi deflectată în consecință și va schimba capacitatea condensatorului diferențial, astfel încât se va obține un semnal de ieșire rezultat, proporțional cu fenomenul fizic. (Vezi Fig.9A și Fig.9B)[10]

Fig,9A[10]

Fig.9B[10]

2.4.2 Senzorul de lumină

Folosește un senzor TAOS TSL2550 cu o lungime de undă cuprinsă între aproximativ 400-1000 nm, care utilizează două fotodiode: una sensibilă la lumina vizibilă și infraroșu (canalul 0), iar cealaltă fotodiodă este sensibilă în special la lumina infraroșie (canalul 1 ).

Canalul 1 este utilizat pentru a contrabalansa componenta infraroșu de la canalul 0, pentru ca rezultatul ce rezultată să ofere o valoare (în lux) care seamănă cu răspunsul ochiului uman la lumina ambientală.

Acest senzor utilizează de asemenea un convertor A / D integrat, care utilizează o tehnică care anulează efectul de flicker de la lămpile cu curent alternativ, mărind și mai mult afinitatea valorii cu ceea ce percepe ochiul uman.[11]

Fig.10[11]

2.4.3 Senzor de presiune și temperatură barometrică

Folosește un senzor Intersema MS5534, care oferă măsurători pentru presiune, în intervalul de aproximativ 300 până la 110 mbar și o temperatură de la -10 ° C la 60 ° C.

Pentru măsurătorile de presiune, MS5534 este prevăzut cu un senzor piezoresistiv, dar semnalul său de ieșire depinde în mare măsură de temperatura ambiantă și de calibrarea din fabrică a fiecărui modul senzor.

Pentru a contrabalansa aceste efecte, a fost introdus un microcontroler extern, programat cu software de compensare.

Aceasta necesită trei semnale pentru a calcula măsurarea presiunii compensate:

măsurare a presiunii pe 16 biți (D1) de la senzorul piezoresistiv

o măsurătoare de temperatură pe 16 biți (D2) de la un circuit de legătură

un fișier PROM de 64 de biți (împărțit în patru cuvinte 16-biți) care conține șase coeficienți care se raportează la calibrarea din fabrică a senzorului (fiecare modul senzor este calibrat din fabrică la două temperaturi și două presiuni).[12]

Fig.11[12]

2.4.4 Senzor de umiditate și temperature

Folosește un senzor Sensirion SHT11, care oferă măsurători pentru umiditate (%) și temperatură la o temperatură cuprinsă între -40 ° C și 80 ° C.

Senzorul de umiditate necesită un senzor de temperatură, deoarece semnalul de umiditate necesită o compensare dacă temperatura este în afara unui anumit interval de valori.

Pentru măsurarea umidității, se utilizează senzorul RH capacitiv Sensirion SHT11 (umiditate relativă), care este compus din peliculă subțire de polimer între doi electrozi. Pelicula de polimer absoarbe umezeala cu ajutorul unui electrod de metal microporos de protecție. Pe măsură ce absoarbe umezeala, constanta dielectrică a condensatorului se modifică în mod corespunzător, asigurând astfel o valoare relativă a umidității ambientale.

Pentru măsurarea temperaturii, se utilizează un senzor de temperatură de bandgap, care măsoară tensiunea înainte a unei diode de siliciu care depinde de temperatură.[13]

Fig.12[14]

3. Software-ul de rețea pentru senzori fără fir de tip Crossbow

3.1 Prezentare generală

Platforma software utilizată pentru crearea, gestionarea și vizualizarea unei rețele de senzori wireless Crossbow este numită MoteWorks.

Pachetele software MoteWorks pot fi împărțite în trei categorii:

 Mote Tier: se referă la aplicațiile XSensor și / sau XMesh folosite prin intermediul sistemului de operare TinyOS, pentru a crea o rețea funcțională de senzori fără fir.

 Server Tier (Xserve): se referă la software-ul care se ocupă de interpretarea și tamponarea datelor provenite de la rețeaua senzorilor fără fir și leagă motele de clienți

 Nivelul clientului: se referă la aplicațiile software care oferă o interfață grafică pentru crearea, gestionarea și monitorizarea rețelei senzorilor fără fir. Aceste aplicații includ:

 -MoteConfig

- MoteView

Fig.13[15]

3.2 XMesh

Reprezintă software-ul responsabil pentru algoritmii de rețea necesari care permit mote-urilor să formeze o rețea de senzori fără fir.

Un exemplu emblematic, care utilizează caracteristicile XMesh, este prezentat în Capitolul 1.2.1 Aplicații militare, în care se utilizează o aplicație de detecție a mișcării pentru mișcarea inamicului, folosind rețelele mote, înlocuind abordarea minieră primitivă.

O rețea XMesh oferă o rețea de senzori fără fir cu următoarele caracteristici:

Convenabilitate: oferă rețele ad-hoc care se auto-generează.

Interval: se referă la protocolul de rutare multi-hop, care permite unui mote să transmită datele sale gateway-ului într-o manieră indirectă, printr-o serie de mote învecinate.

Consum redus de energie: este mai eficient, din punct de vedere energetic.

Comunicare bidirecțională: upstreaming (de la mote spre gateway) și downstreaming (de la gateway către motes, acest lucru permite ca un lot să fie programat de la distanță prin intermediul serviciului OTAP).

Scalabilitate: acestea pot fi introduse într-o rețea de senzori fără fir angajată (până la un maxim de aproximativ 100 de noduri), producând o creștere minimă a cheltuielilor generale.

Fiabilitate: consultați opțiunea de livrare garantată, diagnosticarea sănătății și sincronizarea timpului .

O rețea XMesh constă din următoarele componente:

RFD-uri (dispozitive funcționale reduse) sau puncte finale: sunt mote care nu oferă multi-hopping pentru alte mote.

FFD (dispozitive cu funcții complete) sau routere sunt: motes care pot acționa ca intermediari într-o arhitectură multi-hop.

Gateway-uri: adună date de la motes și le trimite gazdei.

Există trei topologii de rețea folosite de XMesh:

Stea: în care toate motele senzorilor sunt puncte finale (Fig.15 A)

Mesh: folosește un sistem multi-hop, unde toate motele de senzori sunt routere (Fig.15 B)

Hibrid cu ochiuri în stea: este compus atât din routere, cât și din obiectivele finale (Fig.15 C)

Fig.15A[15] Fig.15B[15]

Fig.15B

Fig.15C[15]

Funcții avansate furnizate de XMesh:

TrueMesh: permite ca motele să investigheze în mod constant pentru rute mai eficiente .

Diagnostice de sănătate: consultă pachetele de sănătate trimise de fiecare senzor care conțin informații referitoare la: tensiunea bateriei, traficul de date și puterea semnalului radio.

Trei opțiuni de mod de alimentare:

Putere ridicată:

 permite funcția TrueMesh să funcționeze

 fiecare nod este un router

 sunt întotdeauna alimentate

 caracterizată de Lățimea de bandă ridicată și de latență redusă

Putere scăzută (pentru aplicații care nu necesită transmisie de mare viteză):

 permite funcția TrueMesh să funcționeze

 fiecare nod este un router

 Mote-urile sunt în modul de repaus (regim de putere redusă) și se trezesc periodic

 caracterizată de lățime de bandă redusă și de latență ridicată

Putere redusă la putere

 Folosit numai în cazul punctelor finale

Caracteristici de sincronizare de timp: se utilizează în aplicații speciale în care diferite mote-uri dobândesc date care sunt legate între ele și trebuie transmise cu același "Time Stamp" pentru alte calcule care sunt semnificative pentru aplicația specificată.

Caracteristica OTAP: oferă posibilitatea ca un senzor să fie programat de la distanță de la gateway. Se bazează pe caracteristica downstreaming a aplicației XMesh și prin intermediul software-ului MoteConfig prin intermediul căruia este posibil să programați un mote, de la distanță prin internet.

Două opțiuni pentru calitatea serviciului (QoS):

Cea mai bună calitate a serviciului: este necesară numai recunoașterea nivelului de legătură; senzorii mote-ului se vor angaja în mai multe încercări de a transmite date către legătura vecină. Succesul mediu al acestei opțiuni este aproximativ de peste 90%, conform unui studiu în care 48 de mote-uri au fost folosite timp de 72 de ore folosind această opțiune QoS (vezi Fig.16).

Livrare garantată: unde se utilizează recunoașterea între capătul de unde au provenit datele si gateway.

Fig.16[15]

TrueMesh este de departe cea mai semnificativă caracteristică oferită de XMesh și se realizează prin intermediul a două operații care rulează simultan:

Ascultarea traficului radio: gateway-ul construiește o masă de top 40 de mote-uri învecinate în funcție de calitatea legăturii radio.

Selecția părintească: fiecare mote trimite pachetele Rte (traseu) către întreaga rețea periodic la aproximativ 36 de secunde. Aceste pachete conțin informațiile necesare, solicitate de un senzor pentru a lua decizia de a alege părintele său.

Un interval de timp între două transmisii de pachete Rte din același punct, 36 de secunde, se numește RUI (Interval de actualizare a rutei).

Gateway-ul nu are nevoie de un părinte, dar furnizează informații vitale pentru alte mote senzorilor (va fi discutată mai jos).

Aceste două operații, menționate mai sus, se leagă împreună atunci când un mote primește pachete Rte de la alte mote-uri care sunt prezente în aria invecinată. Apoi va compara datele fiecărui pachet Rte și va lua decizia cea mai eficientă.

N.B. Un mote poate aspira să fie părinte la un alt mote, cu condiția:

nu a fost descendentul său în ultimele trei RUI-uri (acest lucru evită buclele)

nu este un mote cu putere redusă

Selecția părintească se face după 8 RUI-uri, însă până la acel punct va fi utilizată o soluție temporară mai puțin eficientă. Decizia mamă se bazează pe următoarele date prezente într-un pachet Rte:

ID-ul părintelui: specifică ID-ul initial al părintelui sau în cazul în care o nu a intrat încă în rețea, valoarea actuală va fi 0xFFFF

Cost: specifică numărul de transmisii necesare pentru ca un lot să trimită un pachet la gateway .

Estimarea calității primilor 5 vecini

Valoarea estimată a calității este calculată după cum urmează:

QE = LC + NC

LC = 65535 / (SE * RE)

Fig.16B [27]

Unde:

QE: estimarea calității

LC: Cost de legătură

NC: Costurile vecinilor se referă la costul de legătură al părintelui

RE: Estimare primire, se referă la calitatea de recepție radio a legăturii cu un anumit vecin

SE: Trimitere estimativă, se referă la calitatea transmiterii radio a legăturii la un anumit vecin, obținut din pachetul RE de Rte trimis de vecinul subliniat

Valoarea maximă pentru calitatea legăturii este de 4 și se obține dacă SE și RE au ambele 255.[15]

3.3 MoteConfig

Reprezintă pachetul software care oferă o interfață grafică (GUI), grafică Windows care permite:

Instalarea (locală și la distanță) a aplicațiilor care sunt deja compilate.

Configurarea parametrilor mote:

Mote ID

ID-ul grupului: mote-urile comunică între ele numai dacă se află în același grup

Canal de radiofrecvență: canalul 11 (2.405 GHz) până la canalul 26 (2.480 GHz) în pași de 5 MHz

Putere radio Frecvență: 0, -1, -3, -5, -7, -10, -15, -25 dBm

Instalarea funcției OTAP într-un mote.

Pentru a instala mai întâi aplicații, componentele trebuie conectate conform descrierii din capitolul 2.1.

Apoi se poate accesa software-ul MoteConfig, unde primul pas este selectarea butonului "Interface board" din "Settings", acolo va fi specificată placa de interfață USB utilizată și portul serial USB responsabil pentru programare (vezi Fig.17).[16]

Fig.17

Apoi utilizatorul trebuie să aleagă dacă programarea se va face folosind:

Programarea locală Xserve: se face direct, pe gazda (de ex. PC-ul) la care este conectată placa de interfață USB (această opțiune este selectată în mod implicit).

Remote Xserve: programarea se face indirect, prin intermediul unei conexiuni de rețea cu gazda pe care este conectată placa de interfață USB. Pentru a utiliza această opțiune, trebuie să selectați butonul "Remote Xserve Connection" din "Setări", să bifați consola Use Xserve și să specificați adresa IP a gazdei (a se vedea Fig.18).[16]

Fig.18

În continuare trebuie să alegeți, cu ajutorul butoanelor de pe ecranul principal (vezi Fig.19), dacă se va folosi programarea:

Local: se utilizează numai dacă mote-ul este atașat la o placă de interfață USB.

De la distanță: angajat numai dacă mote-ul a fost programat în prealabil cu caracteristica OTAP. Această opțiune nu impune ca mote-ul să fie atașat la o placă de interfață USB, programarea se va face de la distanță prin caracteristica downstreaming furnizată de gateway.

Funcțiile de programare de la distanță Xserve oferă libertate completă pentru configurarea rețelei de senzori fără fir,în timp cum dorim, eliminând în același timp constrângerile de distanță cu respectiva rețea .

Apoi, cele două opțiuni de programare sunt explorate în continuare:

Dacă este aleasă opțiunea de programare locală:

trebuie să alegeți aplicația compilată, să setați parametrii de configurare a mote-ului și, opțional, să selectați caracteristica OTAP și apoi să apăsați butonul Program. Dacă procesul are succes, mesajul " Uploading SUCCESSFUL!” va apărea la ieșire (vezi Fig.19).

La programarea unui gateway este obligatoriu ca Mote ID să fie 0 și că nu este selectată instalarea funcției OTAP.

Dacă este aleasă opțiunea de programare la distanță, trebuie urmați pașii următori:

1. Selectați aplicația compilată.

2. Căutați mote-ul care are instalat funcția OTAP, va apărea cu verde pe ecran.

3. Pregătiți mote-ul pentru instalare, proces care poate dura până la aproximativ un minut.

4. Selectați interogarea, programați sau reporniți. În exemplul de mai jos, a fost apăsat butonul "Program", mote-ul va apărea intru-un patrățel roz.

5. Când programarea este completă, acestea vor apărea cu un patrațel auriu.

6. Eliberați mote-ul pentru a rula aplicația apăsând butonul "Rebootare", în timpul acestui proces mote-urile vor apărea cu un pătrățel galben și atunci când vor fi eliberate vor fi decorate cu verde (vezi Fig. 20).[16]

Fig.20

3.4 MoteView

Reprezintă pachetul software care oferă o interfață grafică de utilizator (GUI) care permite monitorizarea rețelei de senzori fără fir.

Pentru a vă conecta la rețeaua Mote trebuie să:

1. Selectați butonul "Connect to WSN" de la butonul "File" (vezi fig.21)

2. Selectați modul de funcționare:

Achiziționarea de date : datele sunt furnizate de o rețea mote activă.

Vizualizarea datelor istorice: datele sunt furnizate prin intermediul bazei de date MoteView.

3. Selectați modul de funcționare:

Local: gateway-ul este conectat la gazda locală.

Remote: datele sunt returnate din baza de date MoteView a gazdei la distanța la care este conectat gateway-ul.

Personalizat: similar cu modul de operare "Remote", singura diferență este că baza

de date MoteView la distanță este oglindită pentru gazda locală sau pentru o altă gazdă la distanță.

4. Selectați poarta de acces:

Este aleasă placa de interfață USB corespunzătoare .

Portul serial de comunicare .(vezi Fig.17)

Rata de transfer.

Setări avansate ale serverului: permisiuni privind logarea bazei de date, transmisia fișierelor xml, afișarea și stocarea valorilor senzorilor .

5. Selectați placa de senzori: în acest proiect MTS400.

Odată ce se realizează conexiunea la rețeaua Mote, vizualizarea datelor senzorilor poate începe fie prin utilizarea filelor de afișare a datelor MoteView, fie prin exportul datelor.

Următoarele opțiuni pot fi utilizate pentru a exporta date:

Exportă baza de date la SQL: întreaga bază de date este trimisă la un fișier SQL.

Export tabel la SQL: tabela curentă este trimisă la un fișier SQL.

Exportați tabelul în foaia de calcul: permite alegerea anumitor informații din baza de date în funcție de ID-ul nodului și marcajul de timp și aranjarea valorile într-o manieră specifică .

Exportați tabelul în XML – tabela curentă este trimisă la un fișier XML.

Exportați în format JPEG – salvează un fișier JPEG din fila curentă MoteView.[17]

Datele Moteview de afișare pot fi utilizate:

1. Tab-ul de Date: oferă valorile senzorului rețelei , precum și ID-urile nodurilor, valorile de tensiune și marcajul temporal (vezi Fig.21).

Fig.21

2Tab-ul Charts: se referă la valorile senzorului în funcție de timp, poate suporta trei diagrame cu maxim 24 de mote-uri (vezi Fig.22).

Fig.22

3. Tab-ul Health: oferă informații referitoare la starea de sănătate a rețelei mote prin intermediul datelor primite din pachetele de sănătate (vezi Fig.23):

Fig.23

Id-ul parolei la care se referă parametrii de sănătate.

Health_pkts: se referă la procentul pachetelor de sănătate trimise în legătură cu pachetele de date transmise.

Node_pkts: se referă la procentul de transmisii de pachete (care nu au fost redirecționate), care nu au scăzut, dacă pachetul este retransmis de 8 ori fără primirea unui mesaj de confirmare a nivelului de legătură.

Forwarded: se referă la procentul de transmisii de pachete, pe care le-a angajat ca intermediary, prin intermediul arhitecturii multi-hop. În această configurație experimentală (vezi Fig.24), 1.75% din pachetele trimise sunt de mote-ul 8756. Un procent mare este nedorit, deoarece indică o congestie în rețea.[17]

Fig.24

Dropped: se referă la procentul de transmisii de pachete, care sau pierdut.

Retries: se referă la procentul de retransmitere a pachetelor, care au primit un mesaj de confirmare.

Battery voltage: tensiunea bateriei care este încă disponibilă pentru fiecare mote.

Power Sum: această caracteristică nu este furnizată în această configurație experimentală, deci valorile vor fi în mod constant zero.

Board ID: este un număr alocat fiecărui tip de placă de senzori.

Quality_tx: se referă la calitatea transmisiei de la mote catre părinte.

Quality_rx: se referă la calitatea transmisiei de la părinte către mote-ul de referință.

Costul traseului = 4 * Numărul estimat de transmisie (ETX),unde ETX = numărul de transmisii necesare pentru ca un mote să trimită un pachet la poartă (ia în considerare numărul de hopuri, precum și retransmisiile).

Parent_RSSI (Indicator de intensitate a semnalului recepționat) pentru a converti în dBm utilizăm următoarea formulă:dacă Parent_RSSI <127 atunci Parent_RSSI_dBm este egal cu Parent_RSSI-45 dBm altfel Parent_RSSI_dBm este egal cu Parent_RSSI-256-45 dBm.

Time: se referă la marcajul de timp al pachetului de sănătate.[17]

4. 4.Tab-ul Histogram: oferă o diagramă a apariției (în procente) a valorilor senzorilor într-o rețea mote, poate suporta maxim 24 de mote-uri (vezi Fig.25).

Fig.25

5. Tab-ul Scatterplot: descrie o valoare a tipului de senzor în funcție de o altă valoare a tipului de senzor (vezi Fig.26).

Fig.26

6. Tab-ul Topologie: oferă o hartă de gradient pentru valorile unei măsurători de tip senzor, precum și ierarhia parentală între mote-uri (vezi Fig.27).

Fig.27

MoteView caracteristici suplimentare:

oferă o opțiune "Alertă", din meniul Instrumente, prin care se poate determina afișarea unui dialog de mesaje la un anumit interval de timp în cazul unei valori sau al unui interval de valori (vezi Fig.27).

oferă o opțiune de asistență MDA, din meniul Instrumente, prin care se pot manipula valorile senzorului și se aplică un algoritm de conversie personalizat. (Această opțiune este furnizată numai pentru placile senzorilor MDA100, MDA300, MDA320 sau MDA325, MDA500).[17]

4. Aplicații LabVIEW Mote

4.1 Prezentare generală:

LabVIEW este o platformă virtuală de instrumentație, dezvoltată de National Instruments, care utilizează un limbaj de programare grafic (G) care oferă:

achiziționarea,prelucrarea și vizualizarea datelor

controlul și automatizarea instrumentației

O aplicație LabVIEW este alcătuită din blocuri de funcții distincte care comunică date între ele, prin fire trase. În cazul firelor paralele, datele pot fi transmise simultan.

După cum sa menționat mai sus, LabVIEW este o platformă virtuală de instrumentație și, în consecință, oferă o gamă largă de drivere pentru instrumente, care includ dispozitivele Crossbow XMesh Wireless Sensor Network.[18]

Pentru moment, vor fi prezentate numai componentele vitale necesare pentru oaplicația LabVIEW Crossbow XMesh Wireless Sensor Network cu care va funcționa:

Create steam.vi (Fig.28): creează o conexiune la gateway-ul rețelei Mote

Fig.28

Gateway VISA (Virtual Instrument Software Architecture) Resource este portul serial responsabil cu comunicarea.[19]

Start stream.vi (Fig.29): începe să achiziționeze date de la gateway.

Fig.29

Structura While loop (Fig.30).

Fig.30

Get node list.vi (Fig.31): returnează ID-urile mote-urilor prezente în rețea:

Fig.31

Read.vi (Fig.32): citește valorile senzorului din plăcile MTS.

Fig.32

Case structure (Fig.33):if-else, condiția este determinată pe baza faptului că există cel puțin un mote în rețea.

Fig.33

Dacă condiția de mai sus este adevărată, elementele din interiorul lui structurei sunt folosite pentru a manipula datele recepționate, altfel nu există nici o manipulare a datelor, nici modul în care fluxul de ieșire și firele de eroare trebuie să ajungă la următorul icon Crossbow vi.[19]

Stop steam.vi (Fig.34): oprește achiziția datelor și termină conexiunea cu gateway-ul.

Fig.34

Clear stream.vi (Fig.35): șterge fluxului de date..

Fig.35

Error handler.vi (Fig.36): codurile de eroare sunt convertite într-un format care poate fi citit de om.

Fig.36

4.2 Achiziția de date

Aplicația specificată în titlu este construită pe baza structurilor descriese mai sus in capitolul 4.1 .

Aceasta aplicatie are rolul de a recunoaște fiecare nod din rețea si de a prelua datele de la fiecare placă de senzori (umiditate , temperatura si luminozitate ),dacă nu apar erori in rețea datele pot fi vizulalizate local atât numeric cât si in timp pe grafice de vizualizare separate cat si cumulate cele trei semnale pe același grafic.(Vezi fig.37)

Dacă in rețea sunt erori și nodurile nu pot fi gasite aplicația transmite mesajul de eroare trecând structura ‘’case’’ in modul “False”.

Dacă datele au fost achizitionate cu succes , rolul aplicatiei este acela de a genera un fisier cu extensia .XML, despre care o sa dicutăm in următorul subcapitol.

Diagrama bloc:

Fig.37

Panoul frontal:

Fig.38

4.3 Site PHP: Monitorizare în timp real

Cererea specificată în titlu este utilizată prin intermediul a trei părți:

1. Generarea fișierelor XML care salvează date din aplicația LabVIEW de achizitie a datelor cum ar fi:

datele senzorilor

numărul de mote-uri din rețeaua fără fir

dacă a apărut sau nu o eroare în aplicație

2. crearea unui fișier PHP care citește și gestionează datele dintr-un fișier XML

3. lansarea serverului web Apache

În prima parte:

Generarea fișierului XML de date senzor (vezi Fig.40) se realizează prin intermediul unei funcții FormatVin String LabVIEW (vezi Fig.39) într-o structură For Loop care este incrementată până la numărul returnat din funcția Array Size, aceasta semnalează numărul de rânduri din matricea Time Stamp (acest număr este echivalent cu numărul ID-ului fiecarui mote)[20][21]

La fiecare iterație, funcția Format în String creează un șir bazat pe șirul dorit (în cazul nostru, un format de tip XML specific) și pe intrările respective.

Apoi salvează șirul rezultat în șirul inițial (care a fost inițial gol, specificat în afara Loopului For), acest proces se repetă la fiecare iterație următoare.

Când For Loop-ul ajunge la numărul maxim de iterații, acesta pornește din nou procesul cu un șir inițial care este gol.

Acest șir rezultat este trimis unui fișier Write to XML.vi care trebuie să aibă și o cale de fișier specificată.

Fig.39

Fig.40

Fișierul XML referitor la numărul de mote-uri (vezi Fig.41) este generat prin intermediul unei funcții Concatenate Strings, care obține valoarea referitoare la numărul de ID-uri mote dintr-o variabilă locală a indicatorului Mote ID Array Size (vezi Fig. .40).

Fig.41

Apoi, construiește șirul de tip XML și îl trimite la fișierul Write to XML.vi.[21]

În a doua parte:

Crearea unei pagini web responsabilă cu monitorizarea în timp real a sistemului se face prin intermediul codului PHP care poate fi găsit în Anexa 2 . În acest capitol vor fi descrise numai elementele esențiale ale fiecărei părți.

Un site PHP este la fel ca orice alt site HTML, singura diferență fiind extensia ".php" care semnalează unui server că este necesar să utilizeze un interpretor PHP pentru a interpreta anumite scripturi.

Prima parte este compusă din cod HTML referitor la designul site-ului, cum ar fi imaginea de fundal, formatul tabelelor, culoarea textului, culoarea link-ului, titlul, precum și textul care descrie utilitatea site-ului.(Vezi Fig.42)[22]

În a doua-a parte se prezintă scriptul HTML prin intermediul căruia sunt citite fișierele "date XML luate de la senzori , atunci scriptul folosește o buclă pentru care utilizează fiecare iterație pentru a crea un șir în care ID-ul nodului și valorile corespunzătoare luminozitații ,umiditații,temperaturii sunt afișate.(Vezi Fig.42)[23]

Fig.42

În partea a treia se prezintă scriptul PHP prin intermediul căruia site-ul este actualizat automat la fiecare 10 secunde, permițând o monitorizare în timp real a datelor achiziționate de la placuțele de senzori.[24]

Lansarea serverului web Apache este realizată prin intermediul software-ului XAMPP (Cross-Platform, Apache, MySQL, PHP și Perl) prin simpla apăsare a butonului de acțiune Apache Start de pe panoul de control XAMPP (Vezi Fig.43). Apoi, site-ul poate fi afișat prin accesarea gazdei locale sau prin accesarea a unui alt computer prin accesarea adresei IP a gazdei aplicației.[25]

Fig.43

5. Concluzii

Tehnologia Mote a provocat cu adevărat o revoluție care cuprinde un vast domeniu de muncă și de cercetare.

Din anii 1990, când această tehnologie a fost inițial dezvoltată de Universitatea din California, Berkeley , a fost întâmpinată cu un interes imens și a fost destinată să se îmbunătățească exponențial cu trecerea timpului , aducând mote-urile la performanțe superioare față de alte dispozitive, în același timp devenind din ce în ce mai reduse din punct de vedere al dimensiunilor , dar în același timp s-a urmarit reducerea semnificativă a consumului de energie dar si al prețului.

Este dificil să se prevadă ce va fii în viitoru pentru această tehnologie, dar conceptul de bază din spatele lor va rămâne cel mai probabil același: arhitectura de bază, sistemul de operare TinyOS (deja a devenit un standard pentru mote cu versiuni actualizate fiind lansate aproape în fiecare an , începând cu anul 1999) și aplicațiile cu senzori vor folosi aceleași concepte-cheie , dar din nou, nu se poate ce are în vedere viitorul.[27]

Acronime

OTAP – Over The Air Programming

QoS – Quality of Service

RSSI – Received Signal Strength Indicator

RUI – Route Update Interval

BIBLIOGRAFIE

[1]https://www.moog.com/news/corporate-press-releases/2011/moog-acquires-crossbow-technologies-inc.html

[2] http://computer.howstuffworks.com/mote3.htm

[3] http://www.moog-crossbow.com/

[4] http://willow.co.uk/MICAz_OEM_Edition_Datasheet.pdf

[5] http://www.memsic.com/wireless-sensor-networks/MIB520

[6] Crossbow MPR-MIB Users Manual Revision A, June 2007 PN: 7430-0021-08

[7] http://www.memsic.com/userfiles/files/User-Manuals/moteview-users-manual.pdf

[8] https://www.memsic.com/userfiles/files/Datasheets/WSN/mts400_420_datasheet-t.pdf

[9]http://www.memsic.com/userfiles/files/User-Manuals/moteworks-getting-started-guide.pdf

[10] https://www.alldatasheet.com/datasheet-pdf/pdf/48923/AD/ADXL202JE.html?

[11] https://upverter.com/datasheet/57011d7e45248fad7bad9be4e94bd6ea20b8d575.pdf

[12] http://www.te.com/commerce/DocumentDelivery/DDEController?Action=showdoc&DocId=Data+Sheet%7FMS5534C%7FB%7Fpdf%7FEnglish%7FENG_DS_MS5534C_B.pdf%7FCAT-BLPS0032

[13] https://cdn.sparkfun.com/datasheets/Sensors/Pressure/Sensirion_Humidity_SHT1x_Datasheet_V5.pdf

[14] http://www.apiste-global.com/faq/pau/detail/id=2502

[15] https://doc.informatik.uni-goettingen.de/wiki/images/3/3b/XMesh_Users_Manual_7430-0108-01_C.pdf

[16]https://www.yumpu.com/en/document/view/18712322/moteconfig-users-manual-crossbow-technology

[17]https://doc.informatik.unigoettingen.de/wiki/images/7/7b/MoteView_Users_Manual_7430-0008-05_A.pdf

[18] http://journals.sagepub.com/doi/abs/10.1016/j.jala.2006.07.012

[19] http://search.ni.com/nisearch/app/main/p/bot/no/ap/global/lang/ro/pg/1/q/crossbow/

[20] https://www.w3schools.com/xml/xml_whatis.asp

[21] https://www.w3schools.com/php/php_xml_simplexml_get.asp

[22] http://www.w3schools.com/html/html_tables.asp

[23] https://html.com/attributes/body-text/

[24] http://php.net/manual/en/tutorial.firstpage.php

[25] https://blog.udemy.com/xampp-tutorial/?siteID=eyzsD2QGsYg-djII2gKKXzXYvcs4lDG6_w&LSNPUBID=eyzsD2QGsYg

[26] Crossbow Technology. (2008). MICAz: Wireless Measurement System. Product Datasheet.

[27] Akkaș, M. A., & Sokullu, R. (2017). An IoT-based greenhouse monitoring system with Micaz motes. n Procedia Computer Science. https://doi.org/10.1016/j.procs.2017.08.300

ANEXE

anexa1

Fig.44

ANEXA2

Similar Posts