Sistem inteligent de acces într-un complex de clădiri [307219]
Universitatea “Politehnica” [anonimizat]-un complex de clădiri
Proiect de diplomă
prezentată ca cerință parțială pentru obținerea titlului de
Inginer în domeniul Electronică și Telecomunicații
programul de studii Electronică Aplicată
Conducător științific Absolvent
Ș.L. Dr. Ing. Rodica CONSTANTINESCU Manolica GÎRGEL
Anul 2016
Listă de figuri
Figura 2.1 Placa de dezvoltare Arduino UNO
Figura 2.2 Shield-ul Ethernet Arduino
Figura 2.3 [anonimizat]522
Figura 3.1. Componentele plăcii de dezvoltare Arduino
Figura 4.1 Shield-ul Ethernet Arduino
Figura 4.2 Chip-ul WIZnet W5100
Figura 5.1.a Câmpul magnetic în jurul unui dolenoid parcurs de curent
Figura 5.1.b Câmpul magnetic în jurul unui conductor parcurs de curent
Figura 5.2: Distributia spațiala a liniilor de camp magnetic in jurul unei bobine cilindrice plate
Figura 5.3 Intensitatea câmpului magnetic H în funcție de distanța x de la centrul bobinei
Figura 5.4: Intensitatea câmpului magnetic H pentru o antenă la o distanță x specificată în care raza antenei R este variabilă I=1A, N=1.
Figura 5.5 Definirea inductanței L
Figura 5.6: Definiția inductanței mutuale prin cuplarea a doua bobine prin intermediul câmpului magnetic.
Figura 5.7 Graficul inductanței mutuale dintre antena unui tag și antena cititorului în funcțtie de distanța x dintre cele două antene pentru diferite diametre ale antenei cititorului.
Figura 5.8: Secțiune transversala a anetenelor cititorului si tagului. Antena tagului este inclinată cu unghiul față de antena cititorului.
Figura 5.9 Zona de interogare a [anonimizat] 5.10: Propagarea undelor emise și a celor reflectate la transponder
Figura 5.11: [anonimizat] 5.12 Expresia densității radiației S si a puterii de recepție P a unei antene
Figura 6.1 Structura unui sistem RFID
Figura 6.2 [anonimizat] (a) [anonimizat], (b) [anonimizat], (c) [anonimizat]-pasive.
Figura 6.3: Benzile de frecvență folosite în identificarea prin radiofrecvență.
Figura 6.4: Tag-uri disc
Figura 6.5: Tag-uri din sticlă
Figura 6.6: Tag-uri inteligente
Figura 6.7: Tag-uri sub formă de carduri inteligente
Figura 6.8: Tag-uri sub formă de carcase de plastic
Listă de tabele
Listă de acronime
Capitolul 1. Introducere
O pagina de descriere despre sistemul ales
Capitolul 2. Arhitectura sistemului de acces
2.1 Placa de dezvoltare Arduino UNO
Placa de dezvoltare Arduino Uno dispune de un microprocesor ATmega328P și conține 14 pini digitali de intrare / ieșire (din care 6 pot fi utilizate ca ieșiri PWM), 6 [anonimizat] 16 MHz, o [anonimizat], un antet ICSP și un buton de resetare.
[anonimizat].
Figura 2.1 Placa de dezvoltare Arduino UNO
2.2 [anonimizat] a conecta placa Arduino la internet. [anonimizat] W5100. Acest chip ofera posibilitatea utilizării atat protocolului TCP cât și UDP. [anonimizat] până la patru conexiuni socket simulatane.
Figura 2.2 Shield-ul Ethernet Arduino
2.2.1 Micro SD Card Reader
Shield-ul Ethernet Arduino conține un slot micro-SD, ce poate fi utilizat atunci când se integrează librăria SD. Această librărie permite citirea și scrierea pe un card SD. Biblioteca suporta sisteme de fișiere FAT16 și FAT32 pe carduri SD standard și carduri SDHC.
Comunicarea între microcontroler și cardul SD utilizează interfața SPI, ce folosește pinii digitali 11, 12 și 13 (pe cele mai multe placi de Arduino) sau 50, 51 și 52 (Arduino Mega). In plus, trebuie utilizat un pin pentru a selecta cardul SD. Acesta poate fi PIN-ul hardware SS – pin-ul 10 (pe cele mai multe placi de Arduino), pin-ul 53 (pe Mega) – sau un alt pin specificat în apelul SD.begin ().
2.3 Sistem de identificare RFID
Identificarea prin Radio Frecvență (RFID – Radio Frequency Identification) sau proximitate,
este o tehnologie nouă de achiziționare automată a datelor, dar care câștigă din ce în ce mai multă popularitate.
Pentru a putea citi informațiile stocate pe cartelele de acces s-a folosit modulul RFID-RC522. Comunicarea între placa de dezvoltare Arduino UNO și modulul RFID-RC522 se realizează prin interfața SPI. De asemenea, transferul de date dintre modulul RFID-RC522 si etichete se realizează printr-un câmp electromagnetic de 13.56 MHz.
Figura 2.3 Modulul RFID-RC522
2.4 Interfața grafică utilizator
Interfața grafică utilizator este construită pe un suport web pentru a oferi mobilitate administratorului de sistem și pentru a putea fi accesată de oriunde și de pe orice terminal (PC sau mobil). Limbajele de programare folosite pentru realizarea interfeței sunt PHP, MySQL, Javascript, HTML și CSS. Interacțiunea cu utilizatorul se face prin intermediul interfeței grafice(front-end) iar pentru manipularea si stocarea informațiilor sunt folosite tehnologiile back-end (PHP, MySQL).
Framework-ul javascript numit AngularJS folosit pentru crearea interfeței grafice ofera utilizatorului o experiență plăcută de interacțiune cu platforma dar pe de alta parte și rapiditate (informațiile încărcate constau doar in texte din baza de date) spre deosebire de un site obișnuit ce presupune încărcarea succesiva a paginilor.
In acest tip de aplicație partea de back-end joaca rolul de API REST (Transfer reprezentațional de stări) în care sunt apelate anumite căi care la rândul lor returnează un vector de date, un obiect sau o variabilă de tip bool (în cazul login-ului).
Figura 2.4 Arhitectură aplicație
Capitolul 3. Placa de dezvoltare Arduino UNO
Figura 3.1. Componentele plăcii de dezvoltare Arduino
3.1 Alimentarea plăcii
Arduino Uno poate fi alimentat fie prin conectarea la calculator prin intermediul unui cablu USB, fie prin intermediul unei surse de putere externă.
Puterea externă poate fi reprezentată fie de o baterie, fie de la un adaptor AC-DC ce se conectează în mufa de alimentare a plăcii. Pinii de la baterie pot fi introduși la contectorul de alimentare în pinii GND și Vin.
Placa poate funcționa cu o sursă externă de la 6 la 20 de volți. În cazul în care este alimentată cu mai puțin de 7V, pin-ul de 5V poate furniza mai puțin de cinci volți, iar placa poate deveni instabilă. În cazul în care este alimentată cu mai mult de 12V, regulatorul de tensiune se poate supraîncălzi și deteriora placa. Intervalul de alimentare recomandat este de 7 până la 12 volți.
Pinii de alimentare sunt următorii:
– Vin. Tensiunea de intrare a plăcii Arduino Uno atunci când se folosește o sursă de alimentare externă. Tensiunea poate fi furnizată prin acest pin, sau, în cazul în care placa este alimentată prin mufa de alimentare, aceasta poate fi accesată prin acest PIN.
– pin-ul de 5V. Acest pin furnizează o tensiune stabilă de 5V cu ajutorul stabilizatorului de pe placă. Placa poate fi alimentată cu energie, fie de la mufa de alimentare DC (7 – 12V), prin conectorul USB (5V), sau prin pin-ul VIN al plăcii (7-12V).
– pin-ul 3V3. O tensiune de 3,3 volți este generată de stabilizatorul de pe placă. Consumul maxim de curent este de 50 mA.
-GND – pin-ul folosit pentru împământarea la sol.
– IOREF. Acest pin furnizează tensiune de referință cu care operează microcontroler-ul.
3.2 Memoria
ATmega328 are o memorie Flash de 32 KB dintre care 0.5 KB este ocupată de către bootloader. De asemenea, prezintă și 2 KB de memorie SRAM si 1 KB de memorie EEPROM. Cea din urmă poate fi citită și scrisă folosind librăria EEPROM.
3.3 Intrările și ieșirile plăcii de dezvoltare Arduino UNO
Fiecare dintre cei 14 pini digitali ai plăcii de dezvoltare Arduino UNO poate fi utilizat ca intrare sau ieșire, folosind funcțiile pinMode (), digitalWrite () și digitalRead (). Acestea funcționează la 5 volți. Fiecare pin poate furniza sau poate primi o intensitate de 20 mA pentru a funcționa în parametrii normali și fiecare are o rezistență internă de pull-up (aceasta este deconectată implicit) de 20-50k ohm. Intensitatea maximă ce nu trebuie depașită de niciun pin I/O pentru a preveni deteriorarea microcontroler-ului este de 40mA.
În plus, unii pini au funcții speciale:
pinii seriali 0 (RX) și 1 (TX). Aceștia sunt folosiți pentru a primi (RX) și transmite date seriale (TX) TTL.
pinii pentru întreruperile externe: 2 și 3. Acești pini pot fi configurați pentru a declanșa o întrerupere pentru o valoare mică, o creștere sau scădere, sau o modificare a valorii.
pinii pentru PWM: 3, 5, 6, 9, 10 și 11. Furnizarea o ieșire PWM pe 8 biți folosind funcția analogWrite ().
SPI: 10 (SS), 11 (Mosi), 12 (MISO), 13 (SCK). Acești pini suportă comunicare folosind interfața SPI folosind librpria SPI.
LED: 13. Există un built-in LED-uri acționat de pinul digital 13. Atunci când pin-ul are valoarea HIGH, LED-ul este aprins, iar atunci când PIN-ul are valoarea LOW, este oprit.
TWI: pin-ul A4 sau SDA și pin-ul A5 sau pin-ul SCL. Acești pini ofera suport de comunicare TWI folosind librăria Wire.
Placa de dezvoltare Arduino UNO are 6 intrări analogice, etichetate de la A0 la A5, fiecare oferind 10 biți de rezoluție (adică 1024 valori diferite). În mod implicit aceștia măsoară de la 0 până la 5 volți, deși este posibil ca limita de sus să se schimbe folosind pin-ul AREF și funcția analogReference ().
Există o serie de alte pini de pe placa:
AREF. Tensiunea de referință pentru intrări analogice. Folosit cu analogReference ().
pin-ul de reset. Atunci când acest pin are valoarea LOW se resetează microcontroler-ul.
3.4 Interfețe pentru transferul de date
Placa de dezvoltare Arduino UNO are mai multe facilități prin care comunică cu un computer, altă placă Arduino UNO sau alte microcontrolere. Microcontroler-ul ATmega328 oferă interfața serială UART TTL (5V) ce este disponibilă pe pinii digitali 0 (RX) și 1 (TX). Firmware-ul 16U2 al ATmega16U2 utilizează driverele USB COM standard, și nu este necesar un drive extern. Cu toate acestea, pe Windows, este necesar un fișier .inf. Software-ul Arduino (IDE) include un serial monitor care permite transferul unor date text să fie trimise la și de la placă. LED-urile RX și TX de pe placă clipesc atunci când datele sunt transmise prin intermediul cip-ului USB-to-serial și la conexiunea USB computer (dar nu și pentru comunicația serială pe pinii 0 și 1).
ATmega328 oferă, de asemenea, interfețele I2C (TWI) și comunicarea SPI. Software-ul Arduino (IDE) include o librărie Wire pentru a simplifica utilizarea magistralei I2C.
Capitolul 4. Shield Ethernet Arduino
4.1 Introducere
Shield-ul Ethernet Arduino conecteaza placa de dezvoltare Arduino la internet. Acesta conține un conector RJ-45 la care se leagă cablul Ethernet, un slot pentru carduri micro-SD, un chip W5100, un controler pentru reset și LED-uri ce ajută la afișarea anumitor informații. Butonul de reset al shield-ului resetează atât chip-ul W5100 cât și placa de dezvoltare Arduino.
Alimentarea shield-ului se realizează cu ajutorul modulului Power over Ethernet (PoE) ce ajută la extragererea puterii dintr-un cablu Ethernet torsadat. Modulul PoE nu este o componentă a shield-ului, ci este o componentă separată ce poate fi adaugată acestuia.
Figura 4.1 Shield-ul Ethernet Arduino
Comunicarea Shield-ului cu cip-ul W5100 și cu card-ul SD se realizează utilizând magistrala SPI. Această magistrală corespunde pinilor 10,11,12 și 13 pentru Arduino UNO și pinilor 50, 51 și 52 pentru Arduino Mega. Pentru ambele plăci de dezvoltare pinul 10 este folosit pentru a selecta chip-ul W5100, iar pinul 4 este folosit pentru a selecta card-ul SD. Din acest motiv acești pini nu pot fi folosiți ca și pini generali I/O.
LED-urile prezente pe shield au urmatoarea semnficație:
-PWR- indică faptul că placa Arduino și shield-ul sunt alimentate
-LINK- indică prezența unei conexiuni și licăre atunci când shield-ul transmite sau primește date
-FULLD – indică dacă conexiunea este full duplex
-100M – indică prezența unei conexiuni de 100 Mb/s
-RX- acest LED este aprins atunci când shield-ul primește date
-TX- acest LED este aprins atunci când shield-ul transmite date
-COLL- acest LED se aprinde atunci când este detectată o coliziune
4.2 Chip-ul W5100
Shield-ul Ethernet Arduino permite conectarea plăcii de dezvoltare Arduino la internet. Acesta este bazat pe chip-ul Ethernet WIZnet W5100, care oferă o stivă de rețea capabilă atât transferurile de date ce folosesc TCP, UDP, IP-Raw sau MAC-Raw.
WIZnet W5100 este un chip folosit pentru aplicații embeded care necesită o integrare ușoară, performanță și stabilitate. Pentru a putea fi integrat cu ușurință acesta conține trei interfețe diferite pentru accesarea memoriei: magistrala directa, magistrala indirecta și SPI.
Figura 4.2 Chip-ul WIZnet W5100
TCP este metoda de comunicare bazată pe o conexiune care se va stabili în avans și va livra datele prin intermediul utilizării adresei IP și numărul portului sistemului. Există două metode prin care se poate stabili conexiunea. Una dintre acestea este modul server (pasiv deschis), care așteaptă stabilirea conexiunii. Cea de-a doua metodă este reprezentată de modul CLIENT (activ deschis), care trimite cererea de conectare la un server.
UDP se folosește pentru transmisia și prelucrarea datelor ce nu au stabilită incă o conexiune cu server-ul. Prin urmare, mesajul UDP poate fi pierdut, suprapus sau inversat. Deoarece unele pachete de date pot ajunge mai rapid, iar destinatarul nu le poate procesa pe toate în același timp este necesar ca utilizatorul aplicației să garanteze fiabilitatea transmisiei de date.
W5100 este controlat cu ajutorul unui set de instrucțiuni care este trimis de la un host, de obicei denumit SPI Master. SPI Master comunică cu W5100 prin magistrala SPI care este compusă din patru linii de semnal: Slave Select (/ SS), Serial Clock (SCLK), MOSI (Master Out Slave In), MISO (Master In Slave Out).
Protocolul SPI definește patru moduri de funcționare (modul 0, 1, 2, 3). Fiecare diferă în funcție de polaritatea și faza SCLK – modul în care polaritatea și faza controlează fluxul de date de pe magistrala SPI.
4.3 Card-ul MicroSD
Card-ul MicroSD este un card bazat pe memoria flash. Transmisia de date se realizează utilizând interfața cu 8 pini: clock, command, 4 x Data și 2 x power lines.
––de completat
Capitolul 5. Principii fizice de funcționare ale sistemelor RFID
5.1 Introducere :
Sistemele RFID sunt folosite pentru a identifica automat obiecte cu ajutorul transmisiei prin radio frecvență.
RFID este folosit in special in mediile cu ulei, praf sau umezeală ce se întâlnesc in procesele industriale. Cititoarele RFID nu conțin părti in mișcare, iar astfel întreținerea acestora este redusă determinând de asemenea funcționarea pe perioade lungi fără a fi necesară întreținerea.
Tag-urile RFID sunt preferate in aplicațiile unde este necesar un grad ridicat de securitate, deoarece acestea nu se pot copia. De asemenea, alte avantaje ale tag-urilor sunt viteza rapidă de citire ( de ordinul zecilor de milisecunde) si rezistența la temperaturi ridicate (operează in intervalul -40 GRADE C, 200 GRADE C).
Aproape toate sistemele RFID funcționează pe principiul cuplajului inductiv. In acest capitol se va descrie studierea preponderenta a câmpului magnetic din punct de vedere al utilizării acestuia la sistemele RFID. Sistemele RFID care functioneaza la frecvente ultra inalte UHF funcționeaza pe principiul cuplajului radiativ. De aceea, in acest capitol se va studia si campul electromagnetic.
5.2 Câmpul magnetic
In jurul unui conductor parcurs de curent electric exista câmp magnetic. Pentru a reprezenta grafic intensitatea si direcția unui câmp magnetic se utilizează liniile de câmp magnetic. Aceste linii reprezintă linii concentrice cu axul conductorului.
Figura 5.1.a Câmpul magnetic în jurul unui dolenoid parcurs de curent
Figura 5.1.b Câmpul magnetic în jurul unui conductor parcurs de curent
De-a lungul fiecarui cerc intensitatea câmpului magnetic este constantă. Există câmp magnetic și în interiorul conductorului, dar în acest caz doar o parte din curentul total din conductor este îmbrațișat in liniile de camp magnetic.
Dispozitivele de citire/scriere din sistemele RFID cu cuplaj inductiv folosesc bobine cilindrice ca și antene magnetice pentru a crea un câmp magnetic variabil.
Figura 5.2: Distributia spațiala a liniilor de camp magnetic in jurul unei bobine cilindrice plate
Daca se măsoară intensitatea câmpului magnetic la distanța x față de centrul bobine, se poate observa faptul că intensitatea câmpului magnetic H scade pe măsură ce crește distanța x față de centrul bobinei. De asemenea, cu ajutorul unor măsurări mai precise se observă că intensitatea câmpului magnetic raportată la raza bobinei (sau la suprafața acesteia) rămâne constantă pe o anumită distanță după care începe să scadă rapid conform celor prezentate în Fig.1.4.
, unde:
N este numarul de spire
R este raza bobinei
I este curentul prin bobină
x este distanța de la centrul bobinei
Aceasta ecuație este valabilă atunci când înălțimea bobinei, d, este mult mai mică decât raza bobinei (d<<R), iar x<. Astfel în centrul bobinei intensitatea câmpului magnetic este egală cu:
H=
În cazul unei bobine plate dreptunghiulare ce are dimensiunile a*b, intensitatea câmpului magnetic H pentru un punct aflat la distanța x față de centrul bobinei este:
Figura 5.3 Intensitatea câmpului magnetic H în funcție de distanța x de la centrul bobinei
În figura 1.4 este reprezentată intensitatea câmpului magnetic calculată pentru trei antene diferite atunci când distanța de la centrul antenei la punctul de masură variază de la 0 la 10 m. Antenele folosite in sistemele RFID au de obicei un format dreptunghiular. Antenele reprezentate in grafic au același număr de înfășurări N, același curent prin înfășurări, dar au raze R diferite. Astfel razele bobinelor sunt R1=55cm, R2=7,5cm și R3= 1cm. Din rezultatele obținute rezultă că pe o distanță mică (x R) de la centrul bobinei, intensitatea câmpului magnetic este aproximativ constantă, iar apoi scade rapid. Se poate observa că la distanță mică de centrul bobinei (x=0) bobina cu cel mai mic diametru are cel mai mare câmp magnetic dar la distanță mare de centrul bobinei cele care au diametrul mare au o intensitate a câmpului magnetic mai mare.Această observație este foarte importantă la proiectarea antenelor pentru sistemele RFID cu cuplaj inductiv.
Determinarea intensității maxime a câmpului magnetic pentru o bobină cilindrică plată se face măsurând la o distanță x specificată de centrul bobinei intensitatea câmpului magnetic. Aceste măsurători se efectuează pentru bobine cu raze R diferite la care numărul de înfășurări și valoarea curentului sunt menținute constante. Asftfel, intensitate maximă a câmpului magnetic se va obține dintr-un raport x/R ceea ce însemnă că pentru un anumit domeniu de lucru al unui sistem RFID o anumită dimensiune a antenei este optimă. În Fig.1.5 este prezentată variația intensității câmpului magnetic dacă raza R a bobinei este variabilă.
Figura 5.4: Intensitatea câmpului magnetic H pentru o antenă la o distanță x specificată în care raza antenei R este variabilă I=1A, N=1.
Raza optimă a unei bobine pentru diferite domenii de lucru a sistemului RFID se afla prin calculul maximului funcției H(R).
Maximul funcției se poate derivă din funcția H(R) în funcție de R și anume:
H’ (R) = H(R) =
Dacă se egalează această ecuație cu 0, obținem valoarea lui R unde intensitatea câmpului magnetic este maximă adică: =x și : = – x . De aici rezultă faptul că raza optimă a unei antene este aproximativ dublă față de domeniul de lucru.
Anularea ecuației in cel de-al doilea punct este mereu negativă deoarece câmpul magnetic se propagă în ambele direcții ale bobinei ( acest lucru se poate observa și din forma liniilor de câmp în Figura 1.3.). Daca se dorește stabilirea cu precizie a unui domeniu de lucru este necesară cunoașterea intensității minime a câmpului magnetic Hmin pentru care tag-ul funcționează corespunzător . Pericolul apare atunci când raza antenei este suficient de mare deoarece intensitatea câmpului magnetic H devine prea mică pentru a putea alimenta tag-ul chiar dacă acesta este situat în centrul antenei la x=0.
Un conductor indiferent de forma va genera un câmp magnetic in jurul lui, deci un flux magnetic. Se presupune ca avem o bobină cu N spire care au o suprafață A de același fel și care sunt străbătute de același curent I. Fluxul total al unei bobine Ψ este alcătuit de bluclele care sunt strabătute de curent, cu același flux Φ .
Inductanța L este o marime caracteristică a conductoarelor și reprezintă raportul dintre fluxul total Ψ ce intră prin suprafață și curentul I prin conductorul care realizează bobina.
Figura 5.5 Definirea inductanței L
Inductanța unei bobine circulare se poate calcula folosind formula anterioara, dar presupunând că diametrul d al conductorului din care este facută bobina este mult mai mic decât diametrul bobinei (d<<D):
Interconectarea dintre două bucle conductoare cu suprafețe diferite , se realizează prin intermediul fluxului magnetic. Fluxul poartă denumirea de flux de cuplaj.
Mărimea fluxului de cuplaj se calculează în funcție de dimensiunile geometrice ale celor două bucle conductoare, de așezarea unei bucle față de cealaltă și de caracteristicile magnetice ale mediului prin care se propagă acel flux.
Identic se poate defini și inductanța mutuală pentru bucla 2 față de bucla 1. Astfel aceasta este egala cu fluxul parțial prin bucla 2, raportat la curentul prin bucla 1, I1.
În același mod se poate calcula și inductanța mutuală M12. În acest caz se consideră bucla 2 care este traversată de curentul și care va genera un flux prin bucla 1. Inductanța mutuală arată legatura a două circuite prin intermediul câmpului magnetic. (vezi Fig. 1.8)
Figura 5.6: Definiția inductanței mutuale prin cuplarea a doua bobine prin intermediul câmpului magnetic.
Sistemele RFID cu cuplaj inductiv funcționează după conceptul de cuplare a circuitelor electrice prin intermediul câmpului magentic.
În urmatoarea figură este reprezentată inductanța mutuală dintre antena unui tag si antena cititorului, cu diferite diametre.
Figura 5.7 Graficul inductanței mutuale dintre antena unui tag și antena cititorului în funcțtie de distanța x dintre cele două antene pentru diferite diametre ale antenei cititorului.
Exemplul de mai sus se referă la un tag ce are urmatoarele caracteristici: raza antenei este R=3,5 cm, numarul de spire este egal cu N=1, iar dimensiunile razelor antenei cititorului sunt M1: R= 55cm, M2:R=7,5cm, M3: R=1cm. Graficul inductanței mutuale M este asemanator cu cel al intensității câmpului magnetic H la distanța x de centrul unei bobine circulare. Expresia inductanței mutuale este :
5.3. Zona de interogare a cititorului
Toate relațiile efectuate anterior sunt realizate pe un câmp magnetic omogen în lungul axei x, pentru care liniile de câmp sunt paralele cu axa x. Fig. 1.10 ne prezintă valabilitatea că antenele cititorului și tagului sunt poziționate ambele în lungul axei x.
Figura 5.8: Secțiune transversala a anetenelor cititorului si tagului. Antena tagului este inclinată cu unghiul față de antena cititorului.
Atunci cand tagul x este rotit sau deplasat față de cititor nu se mai indeplinește condiția de câmp omogen. Astfel, în cazul în care această antena este rotită cu un unghi față de direcția x, se utilizeaza relația generală pentru tensiunea indusă:
Ecuația de mai sus este valabilă dacă câmpul magnetic este perpendicular pe suprafața bobinei. În cazul în care unghiul valoarea tensiunii induse devine egală cu zero.
Cu ajutorul curbării liniilor de câmp magnetic din jurul unei bobine, vor fi diferite unghiuri θ de înclinare a liniilor de câmp față de suprafața antenei tagului.Acest fenomen duce la o zonă de interogare caracteristică în jurul antenei cititorului (Fig. 1.11, zona gri).
Figura 5.9 Zona de interogare a antenei cititorului pentru poziții variate ale tag-ului
5.4 Antena cititorului RFID
Din punct de vedere fizic, toate conductoarele strabătute de curent sau alimentate cu tensiune la borne prezintă radiații de unde electromagnetice. Astfel utilizarea antenelor pentru emisia și recepția undelor electromagnetice sau a direcției undelor recepționate a fost esențială pentru toate echipamentele de unde radio. O antenă are o comportare precisă și extrem de bine definită matematic.
Figura 5.10: Propagarea undelor emise și a celor reflectate la transponder
Impedanța complexă de intrare Z este una din cele mai importante proprietăți ale unei antene și este formată dintr-o reactanță complexă , o rezistență de pierderi și o rezistență de radiație .
Rezistența efectivă Rv (de pierderi) pastrează majoritatea pierderilor datorate rezistențelelor ohmice care fac parte din conductoarele antenei. În figura 1.13 se prezintă schema antenei echivalente electrice. Puterea primită de la borne este transformată cu ajutorul rezistenței efective în căldură (Q). Există si o rezistență de radiație Rr care reprezintă de fapt tot o rezistență efectivă (Ω), in schimb puterea transformată de aceasta va fi egală cu puterea emisă a antenei în spațiu (sub formă de unde electromagnetice). Valoarea reactanței complexe tinde către 0 la frecvența de lucru a antenei. De asemenea daca o antenă nu are pierderi, atunci:
Figura 5.11: Anena cuplată cu un tag într-un circuit echivalent
Un parametru important folosit pentru a calcula puterea primita de către o antena este apertura, sau apertura de împrăștiere. Astfel apertura descrie cat de multă putere este captată dintr-o unda plană dată. Fie = apertura efectivă a undei ce poate fi o arie perpendiculară pe direcția de propagare a undei și S = densitatea de radiație. Atunci, din cei doi parametrii va rezulta puterea care va fi absorbită și transpusă spre impedanța terminal():
Figura 5.12 Expresia densității radiației S si a puterii de recepție P a unei antene
O antenă are apertură efectivă dar și o apertură de împraștiere de unde sunt reflectate undele electromagnetice.
Din figura 1.14 putem înțelege mai exact acest fenomen: antena recepționează un câmp electromagnetic cu densitatea de radiație S, se introduce o tensiune la bornele ei, iar din acestea rezultă un curent I prin impedanța antenei și prin impedanța terminală . Curentul I se poate afla din tensiunea indusă și din impedanțele conectate în serie conform expresiei :
Puterea recepționata transferată la impedanța :
Dacă se înlocuiește curentul I se obține:
De asemenea, se știe faptul că apertura efectivă, , este raportul dintre puterea recepționată de către antenă și densitatea radiației S:
În cazul în care antena face transfer de putere, și , iar relația de mai sus devine:
Din figura 5.12 observăm curentul I care pătrunde prin rezistența de radiatie Rr a antenei. Antena va emite o putere prin care nu se deosebește dacă curentul I este donat recepției undei electromagnetice sau pentru alimentarea de la tag.
Capitolul 6. Sisteme de acces cu identificare prin radiofrecvență (RFID)
6.1 Generalități
Identificarea prin Radio Frecvență (RFID – Radio Frequency Identification) sau proximitate,
este o tehnologie nouă de achiziționare automată a datelor, dar care câștigă din ce în ce mai multă popularitate.
Sistemele de identificare RFID sunt asemănătoare din punct de vedere funcțional cu tehnologia unui cod de bare. Sistemele cu cod de bare folosesc un cititor cu ajutorul căruia interpretează etichetele specifice lipite de obiecte, în schimb RFID are nevoie de un cititor și de tag-uri speciale sau cartele integrate in obiecte. Dacă comparăm cele două tehnologii, codul de bare folosește reflecția unui fascicul luminos asupra etichetelor ce au tipărite codul de bare, pe când RFID utilizează câmpul de radio frecvență. Folosind acest câmp de radio frecvență nu este nevoie ca obiectul care se detectează cu ajutorul cititorului să aibă o poziție fixă .Astfel obiectul poate fi citit direct fară a fi nevoie de contact direct cu echipamentul de citire.
Aplicațiile ce utilizează tehnologia RFID (de proximitate) sunt asemănătoare cu cele ale codului de bare. Printre cele mai complexe aplicații în care aceste sisteme se pot folosi sunt acelea care pot sa interfereze cu senzori externi pentru a face măsurările unor parametri specifici sau cele folosite în sisteme GPS (Global Positioning Satellite system) pentru urmărirea prin satelit a poziției unor obiecte.
Tehnologia RFID este utilizată intr-o largă varietate de aplicații întâlnite în viața de zi cu zi :
– Sisteme de acces
– Sisteme de taxare automată, cum ar fi cele întâlnite la intrările pe poduri, tunele, autostrazi;
– Dispozitive de urmărire a animalelor de companie
– Urmărirea vehicolelor;
6.2 Componentele unui sistem RFID
Un sistem RFID are cateva componente de baza: un cititor cu o antenă, un tag si un calculator.
Figura 6.1 Structura unui sistem RFID
În general, sistemele RFID sunt compuse din trei componente:
Un cititor
Un tag
Un sistem cu ajutorul căruia se proceseaza datele. Acesta poate fi reprezentat de un microcontroler sau un computer PC
6.2.1 Cititorul RFID
Cititorul RFID (reader sau scanner) este un dispozitiv format din componente electronice ce transmit un câmp de radiofrecvență, într-o zonă bine determinată și asteaptă raspunsul generat de tag-urile care traversează câmpul respectiv. Informațiile conținute în etichetă se transmit cu ajutorul energiei primite de la cititor, pe care o reutilizează în transmiterea identificării sale unice sau a altor informații ce se doresc a fi memorate.
Din punct de vedere al mobilității aplicațiilor în care acestea sunt folosite, cititoarele RFID pot fi fixe sau portabile. Cele fixe au avantajul distanței de citire destul de mari (de ordinea zecilor de metri), pe când cele portabile funcționează pentru distanțe mai mici de citire cuprinse între 1m și 4m (conectare Wireless, Bluetooth sau RS 232).
În prezent, cititoarele RFID se găsesc cu diferite forme, poziționări și dimensiuni. De obicei, acestea se întâlnesc în aproape orice aplicație în care informația utilă este reprezentată de coordonatele unor obiecte ce suntă deplasate și prezintă tag-uri cuplate. Ele pot fi montate in casă, în interiorul diferitelor obiecte sau spații: în podele, în dreptul unei uși, pe mașinării din industrie sau pe dispozitive PDA.
De exemplu cititoarele RFID se pot monta la intrarea intr-o parcare. Astfel, atunci când o mașină va pătrunde în acea parcare, într-o bază de date se va stoca automat ora de intrare, și chiar și numărul autovehiculului dacă se dorește acest lucru. La plecare, se vor procesa datele stocate, iar conducatorul auto va achita o taxa în funcție de cât timp s-a scurs de la intrarea în acea parcare.
O aspect important al cititoarelor îl reprezintă funcționarea acestora în sistem „stand-alone” având porturi I/O externe de comandă. Acestea pot fi echipate și cu o interfață suplimentară (RS 232, RS 485, USB, Ethernet), pentru a le permite să transmită datele primite către un alt sistem (PC-uri, sistem de control robot, Ethernet prin Wired/Wireless).
6.2.2 Antena RFID
Antenele RFID colectează energia transmisă de către cititor și o direcționează către tag pentru a-l activa. Astfel, cu cât suprafața antenei este mai mare, cu atât aceasta va fi capabila sa direcționeze o cantitate mai mare de energie.
Nu există o antenă general potrivită pentru fiecare aplicație. Astfel specificațiile antenei sunt diferite în funcție de cerințele aplicației în care aceasta se va folosi. În aceste condiții unele tag-uri pot fi oprimizate pentru o anumită lărgime de bandă, în timp ce altele pot fi reglate sa funcționeze la capacități maxime atunci când sunt atașate unor materiale ce nu sunt agreate în mod normal în comunicațiile wireless (anumite lichide sau metale).Antenele pot fi construite dintr-o varietate de materiale. Acestea pot fi printate, gravate sau chiar ștanțate cu substanță conductoare.
Unul dintre aspectele ce influențează performanțe sistemelor RFID îl reprezintă alegerea numărului antenelor folosite. Tag-urile ce conțin o singură antenă sunt mai de neîncredere decât cele ce folosesc multiple antene. Atunci când este folosită o singură antenă, pentru anumite poziții ale tag-ului pot apărea așa numitele “zone moarte”, sau zone în care semnalele recepționate nu sunt suficient de puternice pentru a furniza chip-ului energia necesara comunicării cu cititorul.
6.2.3 Tag-ul RFID (Eticheta de radiofrecvență)
Transponderul este purtătorul de date reale al unui sistem RFID. Acesta este alcătuit dintr-un element de cuplare și un microchip electronic. De obicei transponderul nu are propria tensiune de alimentare (baterie), astfel dacă acesta nu se regăsește în zona de interogare a unui cititor, este complet pasiv.Transponderul este activat doar atunci când se află în zona de interogare a unui cititor.Puterea necesară pentru activarea transponderul este furnizată prin unitatea de cuplare (fără contact).
Transponderul este alcătuit dintr-un element de cuplare (antenă) și un circuit integrat, ce sunt dimensionate conform mediului în care urmează să fie utilizate. Eticheta poate avea o formă flexibilă astfel încât să ocupe cât mai puțin spațiu (de ex. pentru pasapoartele biometrice) sau poate fi încapsulată într-o fiola de sticlă (cele folosite pentru marcarea animalelor).
Etichetelor RFID sunt foarte variate, putând fi utilizate în aplicații performante, prezentând în acest scop abilități de RW/WR sau chiar specificații extra cum ar fi: memorie și sursă proprie de alimentare. Fiecare tag RFID poate fi identificat după un numărunic. Celelalte date de intrare sunt adaptate după aplicația software în care este folosit respectivul sistem.
În mediile speciale se utilizează etichete care sunt adaptate condițiilor impuse de acele medii și care suportă: temperaturi extreme într-un cuptor, umiditate, medii chimice sau mecanic agresive. Din aceste trăsături se observă avantajele clare ale folosirii sistemelor RFID față de sistemele ce folosesc etichete cu coduri de bare.
Informațiile ce se pot stoca într-o etichetă sunt foarte variate. Astfel se poate înregistra un numar de serie, un istoric de service sau istoricul temperaturilor prin care a trecut. De obicei, nu există limite referitoare la informațiile atribuite unei etichete. Acest lucru este determinat de obicei doar de complexitatea software-ului de prelucrare a informațiilor.
Figura 6.2 Tipuri de cititoare RFID, Comunicare între (a) cititor și tag-ul pasiv, (b) și cititor tag-ul activ, (c) cititor și tag-ul semi-pasive.
Din punct de vedere al sursei de alimentare există 3 tipuri de tag-uri de radio-frecvență:
Tag-uri pasive – sunt alimentate direct de la semnalul generat al cititorului RFID și nu au o sursă de alimentare proprie. De obicei, tipul acesta de tag-uri este alimentat printr-o antenă situată pe eticheta cititorului. Circuitul integrat al etichetei este alimentat de câmpul magnetic care produce un potențial de tensiune mică și care emite un semnal de întoarcere pentru cititor cu datele de informații modulate și apoi codificate. Aceste tipuri pasive sunt de dimensiuni mici, cântăresc puțin, iar ca și cost sunt mai econome spre deosebire de cele active, durata de viață fiind nelimitată. Un dezavantaj principal este raza de acțiune care este una redusă la citire. Puterea semnalului se reduce automat proporțional cu distanța la care se efectuează citirea (~aprox. a 6-a);
Tag-uri semi-active – sunt condiționate de existența unor baterii mici și sunt utilizate în alimentarea circuitelor integrate. Aceste etichete funcționeaza prin tehnica backscatter. La aceste tipuri de etichete diferă raza de scanare, fiind mai mare decat la etichetele pasive și cu o capacitate de monitorizare intrari chiar dacă acestea nu sunt prezente în zona unui câmp de radiofrecvență.
Tag-uri active au în component lor o baterie cu ajutorul căreia transmit semnal spre o antenă a cititorului. Acestea emit semnale fie pentru un interval prestabilit sau fie doar în momentul în care sunt interogate de respectivul cititor. În fiecare caz, bateria distribuie puterea pentru transimisii in radiofrecvență, nu pentru transmisii cu cuplaj inductiv sau capacitiv. Acest lucru duce la reducerea energiei necesare generate de cititor conducând astfel la raze de citire mai mari (acest lucru reprezintă un mare avantaj). Ca și dezavantaje întâlnim durata de viață mai scurta a etichetei cauzată de baterie și prețul mai ridicat decat al tag-urilor pasive. Din aceast motiv, etichetele active se utilizează doar în anumite aplicații specifice, în care este necesară raza de folosire mai mare sau o putere foarte redusa a cititorului.
În funcție de informația înregistrată, tag-urile pot fi :
– tag-uri de citire : acestea pot fi programate o singură dată, dar pot fi citite de fiecare dată atunci când sunt activate;
– tag-uri de citire – scriere : aceste etichete pot fi programate și citite de fiecare dată atunci când este necesar.
Tag-urile ce pot fi numai citite conțin un cod unic programat ce nu poate fi modificat.. Etichetele care sunt folosite numai pentru citire sunt foarte utile în identificarea unui obiect, de exemplu numărul de inmatriculare al unei mașini. Acest element conferă acestor tag-uri un nivel ridicat de securitate. Un sistem ce utilizează astfel de tag-uri necesită o compensare a procesării și stocării informației prin calculatoare și programe adecvate.
Tag-urile de citire-scriere conțin o memorie ce stochează date ce pot fi modificate prin operații normale. Exemple de astfel de tag-uri sunt cartelele de telefon sau cărțile de credit bancar. Aceste tag-uri sunt mai scumpe decât celelalte tipuri. Deși au un pret initial mai ridicat decât celelalte tipuri, acestea pot fi reutilizate de multe ori prin modificarea corespunzatoare a conținutului memoriei. Astfel, pe termen lung, etichetele cu rescriere reprezinta o alternativă eficientă din punct de vedere economic.
6.2.4 Frecvența de funcționare a tag-urilor
Sistemele RFID pot avea diferite frecvențe radio de operare, acestea împărțindu-se în patru categorii :
Frecvență joasă ( LF- low frequency) = 120 – 140 KHz
Frecvență înaltă (HF – high frequency) = 13,56 MHz
Frecvență ultra înaltă (Ultra High Frequency -UHF) = 860 – 960 MHz
Microunde (Microwaves) = 2,45 GHz
Figura 6.3: Benzile de frecvență folosite în identificarea prin radiofrecvență.
Tag-uri de frecvență joasă – banda lor de frecvențe operează la 120 – 140 KHz. Etichetele care fac parte din această categorie sunt de obicei pasive și folosesc cuplaj inductiv. Acestea sunt utilizate în general în aplicații ce necesită o distanță mică de citire și costuri reduse. Distanța de citire variază între 0,1m și 1m, dar în majoritatea cazurilor se folosesc pentru distanțe de citire de sub 0,5m. Etichetele de joasă frecvență nu se pot folosi în cazul citirilor simultane.Un avantaj major al acestor etichete este faptul ca pot penetra materiale precum apa, țesuturi sau metale. În general sunt utilizate pentru controlul accesului, identificarea animalelor și urmărirea produselor pe liniile de fabricație.
Tag-uri de frecvență înaltă – banda lor de frecvențe operează la 13.56 MHz. Etichetele ce opereaza în aceasta bandă sunt în general pasive si funcționeaza prin cuplaj inductiv. Un avantaj al acestora este puterea de a pătrunde prin materiale cum ar fi : apa, metale sau țesuturi , dar și viteza mai mare de transfer a datelor comparativ cu cea a etichetelor de frecvență joasă. Distanța la care aceste etichete pot citi este cuprinsă intre 0,1m si 1m. Etichetele de frecvență înaltă sunt folosite în general pentru monitorizarea poziției autovehiculelor cu ajutorul sateliților (GPS) sau pentru controlul bagajelor la aeroport.
Tag-uri de frecvență ultra înaltă – Tipurile de etichetele UHF care pot fi pasive sau active operează utilizând diferite frecvențe : de obicei cele active utilizează frecvența de 433 MHz, iar etichetele pasive operează in general între 860 – 960 MHz. În general etichetele pasive UHF nu dau foarte mult randament dacă sunt folosite în zona metalelor și a apei. Distanța de citire variază intre 1m și 10m. Dacă etichetele UHF sunt poziționate către direcția de citire a antenei, atunci capătă o viteză destul de mare de transfer a datelor și pot face un transport mare de informații într-un interval de timp scurt. Versiunea acestor tag-uri acceptă citiri simultane de pana la 1500 de etichete pe secunda, in condiții ideale. Aparent, în practică, valorile sunt cu mult mai mici.
Tag-uri cu microunde – Aceste etichete opereaza la frecvența de 2.45 GHz (sau 5.8 GHz) și pot fi active sau pasive. Caracteristicile acestora sunt similare cu etichetele de frecvență ultra înaltă, însă au viteze mai mari de transfer a datelor, fapt ce permite identificarea vehiculelor in mișcare cu viteze de peste 100km/h. Dezavantajul acestor etichete este eficiența scazută in preajma lichidelor sau a metalelor, comparativ cu etichetele ce funcționează la frecvențe mai joase. Etichetele cu microunde pot fi mai mici comparativ cu etichetele de frecvență joasă, frecvență inaltă si frecvență ultra înaltă, și sunt folosite pentru colectarea automată de taxe pe autostrazi și poduri, precum și pentru urmarirea și managementul containerelor, trenurilor sau a vehiculelor comerciale.
Frecvențe mai putin utilizate pentru identificarea prin radiofrecventa sunt 5-7 MHz, 433 Mhz si
5.2-5.8 GHz. (vezi figura. 6.3)
6.2.5 Tipuri de construcție a tag-urilor
În practică se întalnesc mai multe tipuri de tag-uri:
-Discuri: Discul este un format comun de construcție a tag-urilor.Eticheta este modelată sub forma unui suport rotund de plastic PVC sau ABS. Un avantaj al realizaării sub această formă este disponibilitatea de a se fixa pe diferite obiecte.
Figura 6.4: Tag-uri disc
-Carcase de sticlă: Tag-urile construite din carcase de sticlă sunt utilizate pentru a ajuta la identificarea animalelor. Aceste etichete sunt introduce în corpul animal prin injectarea în piele.
Figura 6.5: Tag-uri din sticlă
-Etichete inteligente: Termenul de etichetă inteligentă se refera la un tag ce are ca support o hârtie subțire. Tag-urile de acest format au bobina tag-ului aplicată pe o folie de plastic de doar 0.1mm grosime prin imprimare. Tag-urile sunt furnizate sub formă de autocolante, sunt subțiri și îndeajuns de flexibile pentru a fi lipite pe diverse obiecte.
Figura 6.6: Tag-uri inteligente
-Carduri Inteligente: Formatul ID-1 este familiar cardurilor de credit și cardurilor de telefon (85.6 x 54 x 0.76 mm). Pe langa acest format mai exista si carduri rigide și mai groase fabricate prin injectarea de material plastic ABS (85.6 x 54 x 1.9 mm). Un avantaj al acestor formate pentru sisteme RFID cuplate inductiv este suprafața mare a bobinei, care mărește distanța de citire a cardurilor inteligente.
Figura 6.7: Tag-uri sub formă de carduri inteligente
-Carcase de plastic: Tag-urile sunt încapsulate într-o carcasă de plastic rezistent, iar propagarea undelor de radiofrecvență nu este afectată. Acest tip de încapsulare este folosit preponderant în cazul tag-urilor active, permițând și încapsularea altor componente precum baterii sau senzori.
Figura 6.8: Tag-uri sub formă de carcase de plastic
Capitolul 7. Interfața grafică utilizator
7.1 Server web
Un server web este un program care utilizează HTTP (Hypertext Transfer Protocol) pentru a transmite fișierele care formează pagini Web către utilizatori, ca răspuns la cererile lor care sunt transmise de către clienții HTTP ale computerele utilizate pentru vizualizarea paginii Web.
Acest proces este un exemplu al modelului client / server. Toate computerele care găzduiesc site-uri web trebuie să aibă programe de server web. Cele mai utilizate servere Web includ Apache (serverul Web cel mai instalat pe scară largă), Microsoft Information Server Internet (IIS) și nginx de la NGNIX. Alte servere Web utilizate includ server-ul Novell NetWare, Google Web Server (GWS) și familia de servere Domino IBM.
De regulă servere-le web fac parte dintr-un pachet mai mare de internet și programe legate de intranet ce deservesc e-mail-ul, descărcarea de cereri pentru File Transfer Protocol (FTP) , și construirea și publicarea de pagini web. Atunci când se alege un server Web trebuie să se ia in considerare abilitatea acestuia de a fi compatibil cu sistemul de operare și cu alte servere, precum și caracteristicile legate de securitate.
Termenul "server Web" se poate referi la partea hardware, la partea software, sau la ambele părți ce lucrează împreună.
Pe partea de hardware, un server web este un computer care stochează fișierele componente ale unui site web (documente de exemplu HTML, imagini, stiluri CSS și fișiere JavaScript) și le transmite dispozitivului final. Acesta este conectat la Internet și poat fi accesat prin intermediul unui domeniu cum ar fi de exemplu mozilla.org.
Pe partea de software, un server Web include mai multe părți care controlează modul în care utilizatorii Web accesează fișierele găzduite, acest lucru fiind format din cel puțin un server HTTP. Un server HTTP este o bucată de software care este capabil să citeasca URL-uri (adrese web) și HTTP (protocolul utilizat de browser pentru a vizualiza pagini web).
La nivelul cel mai de bază, de fiecare data când un browser are nevoie de un fișier găzduit pe un server web, browser-ul cere fișierul prin HTTP. Atunci când cererea ajunge pe server-ul web corect (hardware), serverul HTTP (software) trimite documentul solicitat înapoi, de asemenea, prin HTTP.
Figura 7.1. Comunicarea Browser – Server Web
7.2 Structura unei pagini web
Un site web este o colecție de pagini web, ce includ conținut multimedia, identificat în mod obișnuit cu un nume de domeniu, și publicat pe cel puțin un server web.
O pagină web este un document creat cu ajutorul limbajului de marcare HTML și (opțional) limbaje de programare cum ar fi PHP, ASP ș.a. fiind accesibil vizitatorilor prin intermediul protocolului HTTP, care transferă informația de la server la browser. Pagina web are această denumire deoarece, afișată pe un monitor, se aseamănă cu o pagină de ziar: de obicei paginile web au o lățime care se încadrează în întregime pe ecran. Totuși, dimensiunile unei pagini web pot varia. Astfel aceasta poati fi chiar mai lungă decât înălțimea ecranului și poate fi accesată cu ajutorul funcției de scroll a mouse-ului.
Un site alcătuit din mai multe pagini are de obicei o pagină inițială sau principală numită homepage, de la care pleacă legături către paginile interioare, secundare. Structurile și schemele de "navigare" din interiorul site-urilor web sunt foarte diferite, în funcție de scopurile, dorințele și posibilitățile ofertantului de informații. De obicei această homepage este chiar pagina de start a site-ului, pe care ofertantul de informații în web o face cunoscută la public drept punct de plecare pentru întregul site web al său.
Un site web poate fi vizualizat pe orice dispozitiv conectat la Internet capabil să afișeze informații prin intermediul protocolului HTTP (unele telefoane mobile, PC-uri, tablete, etc.). Acest lucru reprezintă un avantaj, deoarece aplicațiile noi pun din ce în ce mai mult accentul pe mobilitate.
Toate site-urile accesibile publicului constituie în mod colectiv World Wide Web, in timp ce site-urile private sunt, de obicei, o parte dintr-un intranet.
7.3 Limbaje de programare front-end
7.3.1 HTML
HTML-ul este un limbaj de calculator conceput pentru a permite crearea de site-uri web. Aceste site-uri pot fi apoi vizualizate folosind orice dispozitiv conectat la Internet. Un avantaj al acestuia îl reprezintă gradul de complexitate mai redus, fiind relativ ușor de învățat conținând elemente de bază. Acesta este în curs de revizuire în mod constant și de evoluție pentru a răspunde cerințelor utilizatorilor sub îndrumarea W3C, organizația însărcinată cu proiectarea și menținerea integrității limbajului.
HTML este definit ca HyperText Markup Language. HyperText este o metodă de deplasare prin conținutul unei pagini web – făcând click pe un text numit hyperlink se navighează la pagina următoare. Termenul hyper înseamnă defapt faptul că pagina web nu este liniară – adică, se poate accesa orice lucru de pe Internet, făcând click pe link-uri – nu există nici o ordine anume de a accesa conținutul. Termenul “Markup” se referă la efectul tag-urilor asupra conținutului ce este delimitat de către acestea. Termenul “Language” se referă la faptul că acest limbaj de programare are un cod de cuvinte și o sintaxă specifică, la fel ca orice limbă.
7.3.2 CSS
CSS (Cascading Style Sheets) este un standard pentru formatarea elementelor unui document HTML. De exemplu, acesta formatează fonturi, culori, margini, linii, înălțimi, lățimi, imagini de fundal și multe alte elemente prin intermediul stilurilor. Stilurile se pot atașa elementelor HTML prin intermediul unor fișiere externe sau în cadrul documentului, prin elementul <style> și/sau atributul style. Într-o pagină Web, elementul style este plasat între instrucțiunea TITLE și instrucțiunea BODY. CSS se poate utiliza și pentru formatarea elementelor XHTML și XML.
CSS are mai multe avantaje:
-controlul mai multor documente printr-o singura pagina de stil
-layout-ul este controlat mai precis
-se poate aplica un aspect diferit pentru diferite tipuri media
-poseda numeroase tehnici avansate și sofisticate de procesare a elementelor paginilor web.
7.3.3 Javascript
JavaScript (JS) este un limbaj de programare orientat obiect bazat pe conceptul prototipurilor. În general acesta este folosit pentru introducerea unor funcționalități în paginile web, codul Javascript din aceste pagini fiind rulat de către browser. Limbajul este binecunoscut pentru folosirea sa în construirea site-urilor web, dar este folosit și pentru acesul la obiecte încastrate (embedded objects) în alte aplicații. A fost dezvoltat inițial de către Brendan Eich de la Netscape Communications Corporation sub numele de Mocha, apoi LiveScript, și denumit în final JavaScript.
În ciuda numelui și a unor similarități în sintaxă, între JavaScript și limbajul Java nu există nicio legătură. Ca și Java, JavaScript are o sintaxă apropiată de cea a limbajului C.
Programatorii web pot îngloba în paginile HTML script-uri pentru diverse activități cum ar fi verificarea datelor introduse de utilizatori sau crearea de meniuri și alte efecte animate.
Browserele rețin în memorie o reprezentare a unei pagini web sub forma unui arbore de obiecte și pun la dispoziție aceste obiecte script-urilor JavaScript, care le pot citi și manipula. Arborele de obiecte poartă numele de Document Object Model sau DOM. Există un standard W3C pentru DOM-ul pe care trebuie să îl pună la dispoziție un browser, ceea ce oferă premiza scrierii de script-uri portabile, care să funcționeze pe toate browserele. În practică, însă, standardul W3C pentru DOM este incomplet implementat. Deși tendința browserelor este de a se alinia standardului W3C, unele din acestea încă prezintă incompatibilități majore, cum este cazul Internet Explorer.
O tehnică de construire a paginilor web tot mai întâlnită în ultimul timp este AJAX, abreviere de la „Asynchronous JavaScript and XML”. Această tehnică constă în executarea de cereri HTTP în fundal, fără a reîncărca toată pagina web, și actualizarea numai anumitor porțiuni ale paginii prin manipularea DOM-ului paginii. Tehnica AJAX permite construirea unor interfețe web cu timp de răspuns mic, întrucît operația (costisitoare ca timp) de încărcare a unei pagini HTML complete este în mare parte eliminată.
AngularJS este un framework JavaScript open-source folosit în cadrul aplicațiilor web dezvoltat de către Google și de către o comunitate de persoane și corporații pentru a aborda provocări întâmpinate în dezvoltarea de aplicații cu o singură pagină. Framework-ul AngularJS funcționează prin citirea prima dată a paginii HTML, care are încorporate atribute suplimentare personalizate. Angular interpretează aceste atribute ca directive pentru a lega de intrare sau de ieșire unele părți ale paginii unui model care este reprezentat de variabilele JavaScript standard. Valorile acestor variabile JavaScript pot fi setate manual în cadrul codului, sau preluate cu ajutorul resurselor JSON.
7.4 Limbaje de programare back-end
7.4.1. PHP
PHP este un limbaj de programare al cărui nume provine din limba engleză și este un acronim recursiv : Php: Hypertext Preprocessor.Inițial acesta a fost folosit pentru a produce pagini web dinamice, iar mai târziu acesta a devenit folosit pe scară largă în dezvoltarea paginilor și aplicațiilor web.
Limbajul PHP se folosește în principal înglobat în codul HTML, dar începând de la versiunea 4.3.0 se poate folosi și în mod „linie de comandă” (CLI), permițând crearea de aplicații independente. Este unul din cele mai importante limbaje de programare web open-source și server-side, existând versiuni disponibile pentru majoritatea web serverelor și pentru toate sistemele de operare. Conform statisticilor acesta este instalat pe 20 de milioane de site-uri web și pe 1 milion de servere web.
Inițial, limbajul a fost dezvoltat de inventatorul său, Rasmus Lerdorf. Odată cu creșterea numărului de utilizatori, dezvoltarea a fost preluată de o nouă entitate, numită The PHP Group (Grupul PHP).
Ceea ce deosebește PHP de JavaScript este faptul că codul este executat pe server, generând HTML-ul care este apoi trimis către client. Clientul va primi rezultatele rulării acelui script, dar nu poate vizualiza și codul folosit pentru crearea script-ului. Vă puteți configura chiar serverul web pentru a procesa toate fișierele HTML cu PHP, și apoi există într-adevăr nici o cale pe care utilizatorii pot spune ce ai în mânecă.
7.4.2 Mysql
MySQL este un sistem de gestiune a bazelor de date relaționale. În prezent este cel mai popular SGBD open-source, fiind o componentă cheie a stivei LAMP (Linux, Apache, MySQL, PHP).
Deși este folosit foarte des împreună cu limbajul de programare PHP, MySQL permite construirea de aplicații în orice limbaj major. Astfel, în acest sens există diverse scheme API disponibile pentru MySQL ce permit scrierea aplicațiilor în diverse limbaje de programare folosite pentru accesarea bazelor de date MySQL, cum ar fi: C, C++, C#, Java, Perl, PHP, Python, FreeBasic, etc. Fiecare dintre acestea folosește un tip specific API.
Licența GNU GPL nu permite încorporarea MySQL în softuri comerciale; cei care doresc să facă acest lucru pot achiziționa, contra cost, o licență comercială de la compania producătoare, MySQL AB.
Pentru a administra bazele de date MySQL se poate folosi modul linie de comandă sau, prin descărcare de pe internet, o interfață grafică: MySQL Administrator și MySQL Query Browser. Un alt instrument de management al acestor baze de date este aplicația gratuită, scrisă în PHP, phpMyAdmin.
Capitolul 8. Realizare practică
7.1 Implementare Hardware
Implementarea hardware a fost realizată folosind ca mod de legatură a componentelor sistemului un breadboard cu 30. Pentru conectarea modulelor de ETHERNET si SD-CARD READER s-a folosit un shield Ethernet stock.
In figura de mai jos se poate observa modul de conectare al componentelor sistemului. Pe placuța breadboard sunt prezente 3 LED-uri:
STANGA – LED Conexiune internet
CENTRU – LED Acces permis
DREAPTA – LED Acces respins
Programarea microcontrollerului a fost realizată prin intermediul mediului de dezvoltare Arduino folosind limbajul C++. Programul încărcat în microcontroller are rolul de a accesa regulat un ENDPOINT (punct de legatură pe serverul web) pentru a obține o listă cu codurile care au acces în punctul respectiv. Codurile sunt apoi scrise în fișierul access.txt care este stocat pe cardul micro-sd..
In realizarea aplicației, a fost utilizată o mare parte a pinilor analogici prezenți pe placa Arduino UNO.
Tabelul conexiunii pinilor la perifericul corespunzător este:
In realizarea unei aplicații de o asemenea anvergură este recomandată folosirea unei placuțe Arduino cu mai mulți pini (Arduino MEGA) și mai multă memorie internă. Codul încărcat pentru aplicația de față ocupă 71% din memoria dinamică și 95% din spațiul de stocare fapt ce nu permite adăugarea de funcționalități suplimentare majore in construcție.
Întrucaât sistemul actualizează codurile din baza de date locală, pentru verificarea unui card nu este necesară conexiunea la internet, această conexiune fiind necesară doar pentru actualizarea codurilor si transmiterea status-ului de sistem activ/inactiv.
Componenta software a implementării harware foloseste un set de librării pentru comunicarea cu dispozitivele periferice ale sistemului:
SPI.h – Librărie Serial Peripheral Interface
SDFat.h – Librărie utilizată la scrierea/citirea card-ului SD
ETHERNET.h – Librărie utilizată pentru instanțierea plăcii de rețea
HTTPCLIENT.h – Librărie utilizată la citirea codurilor de pe serverul web
MFRC522 – Librărie utilizată pentru citirea codurilor de la placuța RFID
La pornirea sistemului, acesta va inițializa toate componentele periferice și va verifica existența conexiunii la internet, iar dacă conexiunea este prezentă, un led de pe placuță se va aprinde și lista de coduri va fi actualizată.
Programul intră apoi in funcția loop() unde va ramane blocat pana la trecerea unui card RFID peste cititorul de carduri. În momentul trecerii unui card RFID peste cititor, sistemul va deschide fișierul access.txt și va căuta secvența de cifre corespunzătoare a cardului citit in fișier. Daca această secvență este prezentă în fișier atunci LED-ul verde ce reprezintă accesul permis se va aprinde iar daca nu, se va aprinde LED-ul roșu.
De scris despre functiile software.
Print screen cu ledurile aprinse pe stari/ PERMIS / RESPINS
Print screen cu fisierele prezente pe SD CARD
7.2 Implementare Software
Interfața web a fost realizată utilizând limbajele de programare HTML, CSS, JAVASCRIPT pentru front-end și PHP și MYSQL pentru back-end.
Pentru o dinamicitate crescută, la realizarea părții front-end (interacțiunea cu utilizatorul) s-a folosit framework-ul Javascript Angular Material dezvoltat de Google. Platforma permite încărcarea informațiilor aplicatiei succesiv pe măsură ce website-ul este navigat. Așadar, la schimbarea stării (Acasa, Utilizatori, Locații, Status) se va apela server-ul doar pentru un obiect ce conține toate informațiile ce trebuiesc afișate pe pagina respectivă. Template-ul de afisare al informațiilor este încărcat o singură dată, la inițializarea aplicației deci viteza de încărcare a aplicației este ridicată.
Designul “Material” creat de Google oferă un aspect plăcut și ușor de interacționat pentru utilizator. Toate elementele prezente in website(Meniu lateral, Icon-uri, Popup, Input-uri) urmăresc design-ul Google.
Așadar, întrucât toată logica de procesare a informațiilor este transferată către front-end (Javascript), back-end-ul (PHP&MySQL) poartă rolul de așa numitul API REST ceea ce pe scurt înseamnă aplicație ce furnizează un obiect de informații pe baza unei rute accesate(endpoint).
Spre exemplu: La apelarea paginii “utilizatori” se trimite un request catre back-end pentru a returna un obiect conținând toți utilizatorii iar la primirea răspunsului, obiectul este aplicat peste template-ul deja existent astfel încât informația cerută de la server este minimă pentru a micșora timpul de încărcare.
Un astfel de proces ar fi cel din figura de mai jos:
Aplicația este construită modular astfel încât dacă se dorește adaugăarea sau eliminarea de module, acest lucru să fie realizat cu ușurință prin eliminarea directorului respectiv din proiect. Fișierul api.php are rolul de a servi continut pentru interfața de administrare pe de o parte iar pe de cealaltă parte de a servi codurile de acces dispozitivelor care le solicită.
Mai jos se poate vedea schema detaliata a unei cereri către back-end:
Baza de date a fost proiectată folosind serverul de tip MySQL datorită disponibilității sale crescute dar și conține un număr limitat de tabele pentru a nu aglomera serverul ne-necesar. Legăturile între tabele sunt realizate prin cheile secundare:
Pagina “Acasă”
Pagina “Listă Utlilizatori”
Pop-up “Adauga utilizator”
Pagina “Locatii disponibile”
Pagina “Status sistem”
Concluzii
Bibliografie
[1] Design and implementation of intelligent home using GSM, OMAR TALAL ALGOIARE, Septembrie 2004
[2] RFID Quick Start Guide: Arduino
[3] https://media.blackhat.com/us-13/US-13-Brown-RFID-Hacking-Live-Free-or-RFID-Hard-Slides.pdf Accesat la 23.04.2016
[4] Ilie FINIȘ, Daniel SIMION, Study of RFID System in Healthcare
[5] http://www.mantech.co.za/datasheets/products/A000047.pdf
[6]
[7]
[8]
[9]
[10]
Anexa 1. Cod sursă aplicație software
Anexa 2. Cod sursă aplicație hardware
2 pagini
Anexa 3. Imagini implementare hardware
2-3 pagini
Anexa 4. Interfața grafica utilizator
3 pagini
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Sistem inteligent de acces într-un complex de clădiri [307219] (ID: 307219)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
