Sistem de Monitorizare Si Control de la Distanta a Unei Linii de Productie Industriala

Titlul complet al temei

Sistem de monitorizare și control de la distanță a unei linii de producție industrială

Proiect de diplomă

Declarație de onestitate academică

Prin prezenta declar că lucrarea cu titlul “Titlul complet al proiectului”, prezentată în cadrul Facultății de Electronică, Telecomunicații și Tehnologia Informației a Universității “Politehnica” din București ca cerință parțială pentru obținerea titlului de Inginer/ Master în domeniul domeniul**, programul de studii program*** este scrisă de mine și nu a mai fost prezentată niciodată la o facultate sau instituție de învățământ superior din țară sau străinătate.

Declar că toate sursele utilizate, inclusiv cele de pe Internet, sunt indicate în lucrare, ca referințe bibliografice. Fragmentele de text din alte surse, reproduse exact, chiar și în traducere proprie din altă limbă, sunt scrise între ghilimele și fac referință la sursă. Reformularea în cuvinte proprii a textelor scrise de către alți autori face referință la sursă. Înțeleg că plagiatul constituie infracțiune și se sancționează conform legilor în vigoare.

Declar că toate rezultatele simulărilor, experimentelor și măsurătorilor pe care le prezint ca fiind făcute de mine, precum și metodele prin care au fost obținute, sunt reale și provin din respectivele simulări, experimente și măsurători. Înțeleg că falsificarea datelor și rezultatelor constituie fraudă și se sancționează conform regulamentelor în vigoare.

Cuprins

Introducere

Capitolul I: Prezentare generală a microcontrolerelor,

respectiv a microcontrolerului folosit

Capitolul I.1: Introducere în microcontrolere

I.1.1: Scurt istoric

I.1.2: Microcontrolere contra microprocesoare

Capitolul I.2: Descrierea microcontrolerului folosit

I.2.1: Caracteristici generale ale lui Atmega328P

I.2.2: Schema bloc a microcontrolerului Atmega328P

Capitolul I.3: Placa de test Arduino cu microcontroler

I.3.1: Caracteristici generale ale lui Arduino UNO Smd

Capitolul II: Prezentarea sistemului de achiziție de date și transmiterea lor pe un mediu interactiv de pe Internet

Capitolul II.1: Achiziția de date cu ajutorul senzorilor

II.1.2: Definiția senzorilor și clasificarea lor

II.1.3: Caracteristicile senzorilor

II.1.4: Senzori analogici și digitali folosiți în lucrare

Capitolul II.2: Transmiterea datelor

II.2.1: Protocoalele folosite la transmitere

II.2.2: Conexiunea Shield PoEthernet-priza de internet

Capitolul III: Proiecarea stucturii hardware a sistemului de monitorizare și control

Capitolul III.1: Prezentarea generală

Capitolul III.2: Prezentarea structurii hardware executată în cadrul acestei lucrări

Capitolul III.3: Descrierea modulului de funcționare

Capitolul IV: Realizarea aplicației software

Capitolul IV.1: Prezentarea mediului de programare

Capitolul IV.2: Organigrama aplicației software

Capitolul IV.3: Descrierea aplicației software

Concluzii

Lista acronimelor utilizate:

µC=Micro-controler;

µP=Micro-procesor;

AC=Alternatig Current(curent alternativ);

Al2O3=Oxid de Aluminiu;

ALU=Arithmetic Logic Unit(Unitatea aritmetică și logică);

Au=Aur;

CH4=Metan;

CO=Monoxid de Carbon;

Cr=Crom;

DC=Direct Current(curent continuu);

DHCP=Dynamic Host Configuration Protocol

DNS=Domain Name System

DVR=Digital Video Recorder

EEPROM=Electrically erasable Programmagle Read-Only Memory

FTP=File Transfer Protocol(Protocol pentru transferul de fișiere);

GND=Ground(Legare la masă);

GNL=Gaz natural lichefiat;

GPIO= General-purpose input/output(Port Generic de Intrare/Ieșire);

GPL=Gaz petrolier lichefiat;

H2=Hidrogen molecular;

HTML=HyperText Markup Language

I2C=Inter-Integrated Circuit( Interfață serie);

ICSP= In Circuit Serial Programming

IEEE=Institute of Electrical and Electronics Engineers(Institutul Inginerilor Electrotehnici și Electroniști);

IP=Internet Protocol

IR=Unde infraroșu;

ISO=International Organization of Standardization(Organizația Națională de Standardizare);

JFET= Junction gate field-effect transistor(Tranzistor cu jocțiune pe poartă cu efect de câmp);

LED=Light emitting diode(diodă emițătoare de lumină);

LPG= Liquefied Petroleum Gas (Gaz petrolier lichefiat);

MAC=Media Access Control

MIPS=Million Intructions per Seconds(milioane de instrucțiuni per secundă);

Mn=Mangan;

Ni=Nichel;

Ni-Cr=Aliaj Nichel Crom;

NTC=Negative Temperature Coefficient(Coeficient de temperatura negativ);

OSI=Open System Interconnection(Interconectarea sistemelor deschise);

PIR=Passive Infrared Sensor(Senzor pasiv cu intraroșu);

POS=Point of Sale

PPM=Parts per million( părți per milion);

Pt=Platină;

PVR=Personal Video Recorder

PWM=Pulse-width Modulation(Modulator de puls electric);

RH=Relative Humidity(Umiditate relativă);

RISC=Reduced Instruction Set Computing( set redus de instrucțiuni);

RJ-45=Registred Jack-45

SAD=Sistem de achiziție de date ;

SD-Secured Digital

SMTP=Simple Mail Transfer Protocol(Protocol simpu de transfer al corespondenței);

SnO2=Bioxid de Staniu;

SPI=Serial Peripheral Interface (Interfață Serială);

SRAM=Static Random Acess Memory

TCP=Transmission Control Protocol(Protocol de control al transmisiei);

UART= Universal Asynchronous Receiver/Transmitter

UCP=Unitate centrală de prelucrare;

UDP=User Datagram Protocol(Protocolul datagramelor utilizator);

USART=Universal Synchronous Receiver/Transmitter

USB=Universal Serial Bus(Magistrală serială universală);

UTP=Unshilded Twisted Pair(Cablu torsadat neecranat);

WDR=Watchdog Timer Reset

WDT=Watchdog Timer(

IDE

Lista figurilor:

Fig.I.1:Microcontroler contra Microprocesor

Fig.I.2:Schema bloc a microcontrolerului Atmega328P

Fig.I.3:Schema bloc a nucleului AVR

Fig.I.4:Arduino UNO smd vedere din față

Fig.II.1:Senzor de temperatură și umiditate cu conexiune Grove

Fig.II.2:Imagine cu partea sensibilă a senzorului

Fig.II.3:a) diagrama ferestrei vazută de sus și b) secțiune transversală a elementului

Fig.II.4:Partea internă a senzorului

Fig.II.5:Trecerea undelor de lunină prin două tipuri de lentile

Fig.II.6:Condensarea luminii într-o lentilă Fresnel

Fig.II.7:Perceperea radiației de către elementul sensibil al circuitului

Fig.II.8:Lentila Fresnel din material plastic

Fig.II.9:Detectarea persoanei care trece prin câmpul de acțiune al PIR-ului

Fig.II.10:Elementele principale ale senzorului

Fig.II.11:Recepția semnalului

Fig.II.12:Procesarea semnalului

Fig.II.13:Exemplu când obiectul nu poate fi detectat

Fig.II.14:Senzorul PIR cu conectare Grove

Fig.II.15:Circuitul integrat BISS0001 al detectorului Pir

Fig.II.16:Forma de undă pentru semnal re-declanșabil

Fig.II.17:Forma de undă pentru semnal ne-declanșabil

Fig.II.18:Schema bloc internă

Fig.II.19:Structura și configurația circuitul de măsură de bază

Fig.II.20:Configurațiile senzorului de gaz

Fig.II.21:Caracteristicile de sensibilitate ale MQ-5

Fig.II.22:Dependența tipică MQ-5 de temperatură și umiditate

Fig.II.23:Structura internă a senzorului semiconducor (SnO2) pentru gaze

Fig.II.24:Schema culorilor pentru mufarea cablului UTP

Fig.II.25:Shield-ul PoEthernet

Fig. III.1: Schema bloc a unui sistem de monitorizare și control al unei linii de producție industrială

Fig.III.2: Releu cu conectare Grove

Fig.III.3: Schema bloc a releului

Lista tabelelor:

Tabel I.1:Specificații tehnice ale lui Arduino UNO

Tabel II.1. Descrierea pinilor

Tabelul II.2.Evaluări maxime absolute

Introducere

Evoluția sistemelor de achiziție de date și distribuție de date, denumite pe scurt sisteme de achiziție de date (SAD), este strâns legată de dezvoltarea tehnicii în general și a industriei în special. Aceste sisteme rezultă prin conectarea unui număr variabil de senzori( senzori împreună cu circuitele electronice aferente) la o unitate centrală de procesare și comandă, care interfațează cu operatorul uman. Dependent de natura procesului industrial deservit, sistemul de senzori acoperă o arie geometrică mai mult sau mai puțin extinsă , fapt ce impune probleme specifice de solutionat : pe de o parte , problema transmiterii la distanță a informației achiziționate , iar pe de altă parte, este necesară stabilirea unui echilibru optim între cantitatea de informație procesată local (lângă senzor) și informția vehiculată și prelucrată în unitatea de centrală de prelucrare și comandă.

Sistemele de achiziție de date industriale au rolul principal de a achiziționa date din procese cu scopul reglării, la valori precise, a anumitor parametrii ai acestora, dar și la detectarea unor niveluri ridicate a parametrilor și introducerea alarmelor atunci cand valorile proceselor trec peste pragul stabilit pentru anumiti parametrii.

După o prelucrare numerică adecvată, semnalele achiziționate pot fi utilizate pentru comanda unor procese fizice respectiv la memorarea, transmiterea și redarea informaților astfel obținute.

Pe scurt , un sistem de achizitie de date trebuie să poată executa trei funcții fundamentale:

-convertirea fenomenului fizic într-un semnal măsurabil;

-măsurarea semnalelor generate de senzori în scopul extragerii informației;

-analizarea datelor și prezentarea lor într-o formă utilizabilă;

Capitolul Ι: Prezentarea generală a microcontrolerelor , respectiv a microcontrolerului folosit

Capitolul I.1: Introducere în Microcontrolere

În general un controler („controller ” este un termen de origine anglo-saxonă, cu un domeniu de cuprindere foarte mare ) reprezintă o structură electronică destinată controlului unui proces sau , mai general, unei interacțiuni cu mediul exterior, fără a fi necesară intervenția umană. Primele controlere au fost realizate în tehnologii pur analogice, folosind componente electronice discrete și/sau componente electromecanice (de exemplu relee). Cele care fac apel la tehnica numerică modernă au fost realizate inițial pe baza logicii cablate (cu circuite integrate numerice standard) și a unei electronici analogice uneori complexe , motiv pentru care „străluceau” prin dimensiuni mari, consum energetic pe măsură și, nu de puține ori, o fiabilitate care lasă de dorit.

Pe măsură ce procesul de miniaturizare a continuat, a fost posibil ca majoritatea componentelor necesare realizării unei astfel de structuri să fie încorporate (integrate) la nivelul unui singur microcircuit (cip). Astfel că un microcontroler ar putea fi descris ca fiind și o soluție a problemei controlului cu ajutorul unui singur circuit.

O definiție , cu sens larg de cuprindere , ar fi aceea că „un microcontroler este un microcircuit care încorporează o unitate centrală (UCP) și o memorie împreună cu resurse care-i permit interacțiunea cu mediul exterior”.

Microcontrolerele au apărut o dată cu dezvoltarea circuitelor integrate când s-a făcut posibilă înmagazinarea a sute de mii de tranzistoare intr-un singur cip. Astfel au început să se construiască microprocesoare , iar prin adăugarea unor memorii externe, aunor dispozitive de intrare /ieșire etc, s-au constituit primele calculatoare. Astăzi , utilizarea microcontrolerelor s-a extins la un nivel foarte înalt. Într-o casă modernă, microcontrolerele sunt pretutindeni, de la mașina de spălat , la cuptorul cu microunde etc.

Deși la început microcontrolerele au fost denumite microcomputere,un microcontroler diferă de un calculator în câteva moduri importante, marea diferență constă în faptul că un microcontroler este construit a fi un computer într-un singur cip. Memoria externă, perifericele și alte lucruri necesare unui computer pentru a fi funcțional sunt integrate în acest cip, tocmai de aceea au consum mai redus și pot executa aplicații complexe de achiziție , monitorizare și control în timp real.

I.1: Scurt istoric

”In anul 1969, o echipa de ingineri japonezi propun companiei INTEL, construirea după proiectele proprii a unei structuri de circuit integrat a cărei funcționare să fie determinată de un program memorat în el, lucru ce ar fi condus la o configurație mult mai simplă, dar aceasta ar fi presupus mult mai multă memorie decât ar fi presupus proiectul propus de inginerii nipunea cu mediul exterior”.

Microcontrolerele au apărut o dată cu dezvoltarea circuitelor integrate când s-a făcut posibilă înmagazinarea a sute de mii de tranzistoare intr-un singur cip. Astfel au început să se construiască microprocesoare , iar prin adăugarea unor memorii externe, aunor dispozitive de intrare /ieșire etc, s-au constituit primele calculatoare. Astăzi , utilizarea microcontrolerelor s-a extins la un nivel foarte înalt. Într-o casă modernă, microcontrolerele sunt pretutindeni, de la mașina de spălat , la cuptorul cu microunde etc.

Deși la început microcontrolerele au fost denumite microcomputere,un microcontroler diferă de un calculator în câteva moduri importante, marea diferență constă în faptul că un microcontroler este construit a fi un computer într-un singur cip. Memoria externă, perifericele și alte lucruri necesare unui computer pentru a fi funcțional sunt integrate în acest cip, tocmai de aceea au consum mai redus și pot executa aplicații complexe de achiziție , monitorizare și control în timp real.

I.1: Scurt istoric

”In anul 1969, o echipa de ingineri japonezi propun companiei INTEL, construirea după proiectele proprii a unei structuri de circuit integrat a cărei funcționare să fie determinată de un program memorat în el, lucru ce ar fi condus la o configurație mult mai simplă, dar aceasta ar fi presupus mult mai multă memorie decât ar fi presupus proiectul propus de inginerii niponi. După un timp, cu toate că inginerii de la INTEL au cautat să gasească o soluție mai simplă, ideea s-a menținut, ba mai mult s-a pus în aplicare și astfel a luat naștere primul microcontroler, INTEL reușind să scoată un produs din prima sa concepție, obtinând totodată și drepturile de a vinde acest produs.

Astfel în timpul acelui an, apare pe piață un microprocesor numit 4004, fiind primul microprocesor de 4 biți cu viteza 6000 operații pe secundă. La scurt timp dupa aceea, compania americană CTC propune companiilor INTEL și Texas Instruments să conceapă un microprocesor pe 8 biți pentru folosință cu terminale. Cu toate că CTC a renunțat la această idee până la sfârșit, INTEL și Texas Instruments au continuat să lucreze la microprocesor și în aprilie 1972 a apărut pe piață primul microprocesor de 8 biți sub numele de 8008 capabil să adreseze 64Kb de memorie și avea 45 de instrucțiuni și viteza de 300.000 de operații pe secundă. Acel microprocesor a fost predecesorul tuturor microprocesoarelor de astăzi. INTEL a continuat dezvoltările  pâna în aprilie 1974 și au lansat pe piață microprocesorul de 8 biți sub numele de 8080 ce putea adresa 64Kb de memorie și avea 75 de instrucțiuni, iar prețul începuse de la 360$.

Apare deja concurența astfel că, o altă companie americană Motorola, lansează pe piață un microprocesor de 8 biți 6800, și pe lângă microprocesorul propriu-zis, Motorola a fost prima companie care a facut și alte periferice cum ar fi 6820 și 6850. La acel timp, multe companii cum ar fi MOS Technology au recunoscut marea importanță a microprocesoarelor și au început propriile lor dezvoltări, continuând să lucreze intensiv la dezvoltarea acestora, așa că, la expozitia WESCON din Statele Unite din 1975 a avut loc un eveniment critic în istoria microprocesoarelor, MOS Technology anuntând că produce microprocesoarele 6501 și 6502 (6502 este un microcontroler pe 8 biți cu 56 de instrucțiuni și o capabilitate de adresare directă de 64Kb de memorie) la prețul de 25$ bucata, pe care cumparatorii le puteau cumpara imediat. Prețul scăzut a avut un impact senzațional și astfel ca un raspuns la concurență, atât INTEL cât și Motorola au scăzut prețurile lor în prima zi a expoziției pâna la 69.95$ pe microprocesor. Datorită costului scăzut, 6502 devine foarte popular, și este instalat în computere ca :KIM-1, Apple I, Apple II, Atari, Comodore, Acorn, Oric, Galeb, Orao, Ultra și multe altele. În 1976 Zilog anunță apariția lui Z80, un microprocesor mai puternic decât cele apărute pâna acum, care putea adresa direct 64Kb de memorie, avea 176 instrucțiuni, o singură sursă, și viteza de lucru mult mai mare. Z80 a reprezentat o relevație în acest domeniu, toată lumea facând conversia de la 8080 la Z80 și din acest moment Z80 devine cel mai de succes microcontroler de 8 biți a acelui timp, fiind inima a multor computere ca : Spectrum, Partner, TRS703, Z-3 și Galaxi. În 1976, INTEL iese pe piață cu o versiune îmbunătățită de microprocesor pe 8 biți numit 8085, dar tot Z80 era mai bun, astfel încât INTEL pierde monopolul pieții. În ciuda apariției pe piața a mai multor tipuri de microprocesoare (6809,2650,SC/MP Mostek, NEC, SHARP și SGS etc.), un fapt era deja hotărât: nu mai erau de făcut îmbunătățiri importante ca să-i determine pe producători să se reorienteze spre ceva mai "nou", așa că 6502 și Z80 împreună cu 6800 au ramas ca cei mai reprezentativi ai microprocesoarelor de 8 biți a acelui timp.”[1]

I.1.2: Microcontrolere contra microprocesoare

Un microcontroller reprezintă un circuit care încorporează un microprocesor și alte dispozitive periferice într-un singur chip punându-se accent pe un cost redus de producție și consum redus de energie electrică. Marea diferență dintre un microcontroller (µC) și un microprocesor (µP) reprezintă faptul că un microcontroler integrează memoria de program, memoria de date și alte interfețe de intrare-ieșire sau periferice. Din cauza înglobării unui număr mare de periferice in circuit și a costului redus de producție, un microcontroler operează la viteze reduse, frecvența sa de ceas fiind de obicei de zeci sau sute de MHz, cu un ordin de mărime mai mică decat cea a unui microprocesor actual. Chiar daca are ascest inconvenient , microcontrollerele se pretează la o gamă variata de aplicații fiind folosite atat în mediul industrial cît și în produse de larg consum, de la sisteme din industria aerospațială până la telefoane mobile, cuptoare cu microunde, jucarii, etc.

Fig.I.1:Microcontroler contra Microprocesor

Capitolul I.2: Descrierea microcontrolerului folosit

Microcontrolerul Atmega328P este un microcontroler pe un singur cip realizat de Atmel și face parte din seria megaAVR. El se bazează pe o arhitectură RISC pe 8 biți care combină memoria flash reprogramabilă ISP de 32KB care conține:

1024B memorie EEPROM;

2KB memorie SRAM;

23 de ieșiri/intrări de uz general;

32 de registre de lucru de uz general;

3 temporizatoare/numărătoare flexibile cu modul de comparare;

Întreruperi interne și externe;

Un port USART serial programabil;

Un port serial SPI;

Un timer watchdog programabil cu un oscilator intern;

5 moduri de economisire a energiei selectabile.

Poate funcționa în intervalul 1.8-5.5V.

Executând instrucțiuni complicate într-un singur ciclu de ceas, microcontrolerul ajunge să realizeze transmiterea de date cu un debit care se apropie de 1MIPS/MHz , echilibând consumul de energie și viteza de procesare.

I.2.1: Caracteristici generale ale lui Atmega328P

Atmega328P prezintă următoarele caracteristici:

Memorie flash de 32Kbytes ;

32 de pini;

Frecvența maximă de operare 20MHz;

Procesor AVR pe 8 biți;

23 de pini intrare/ieșire;

24 de intreruperi externe;

2 porturi SPI;

1 port de interconectare I2C;

1 port UART;

1 comparator analogic;

Senzor de temperatură;

Memorie SRAM de 2Kbytes;

Memorie EEPROM de 1024Kbytes;

Temperatura de folosire între -40°C și 85°C;

Vcc:1.8-5.5V;

3 temporizatoare;

6 pini pentru PWM;

1 oscilator RC calibrat;

1 watchdog;

I.2.2: Schema bloc a microcontrolerului Atmega328P

În cele ce urmează vom prezenta schema bloc a microcontrolerului folosit, și vom descrie funcționarea celor mai importante blocuri compomente:

Fig.I.2:Schema bloc a microcontrolerului Atmega328P

Nucleul AVR

Funcția principală a nucleului AVR este de a asigura executarea corectă a programului. Prin urmare, nucleul trebuie să poată accesa memorii, să efectueze calcule, să controleze perifericele, și să trateze întreruperile.

Fig.I.3:Schema bloc a nucleului AVR

În scopul de a maximiza performanța și paralelismul, AVR folosește o arhitectură HARVARD, cu memorii și magistrale separate pentru program și date. Instrucțiunile de memoria de program sunt executate pe un singur nivel pipeline. În timp ce o instrucțiune se execută, urmatoarea instrucțiune este adusă în memoria de program. Acest concept permite intrucțiunilor să fie executate în fiecare ciclu de ceas.

Fișierul de Registre cel mai repede accesat conține 32 de registre de lucru de uz general (de câte 8 biți fiecare) cu timpul de acces de un singur ciclu de tact.

ALU suportă operații aritmetice și logice între regiștrii sau între un registru și o constantă. După o operație aritmetică, Registrul de Stare (Status Register) este actualizat pentru a primi informații despre rezultatul operației.

Spațiul de memorie de program flash este împarțit în două secțiuni : secțiunea Boot Program și secțiunea Application Program. Instrucțiunea SMP scrisă în secțiunea de memorie flash de aplicație trebuie să se afle și în secțiunea de memorie de bootare .

ALU(Unitatea aritmetică și logică)

ALU funcționează în legătură directă cu toate celelalte 32 de registre de uz general. În cadrul unui singur ciclu de ceas. Aceasta execută operații aritmetice și logice între regiștrii sau între un registru și o constantă. Operațiile realizate de către ALU se împart în 3 categorii : aritmetice, logice și operații pe biți.

Registrul de stare(Register status)

Registrul de stare conține informații despre rezultatul instrucțiunii aritmetice cel mai recent executată. Aceste informații sunt folosite pentru a modifica fluxul de program , în scopul de a efectua operații condiționate. Starea registrului este întotdeauna actualizată după toate operațiile executate în ALU.

Memoriile AVR

Arhitectura AVR are 2 spații de memorie principale, memoria de date și spațiul de memorie de program, însă Atmega328P are și o memorie EEPROM pentru stocarea de date. Toate aceste spații de memorie sunt liniare și regulate.

Memoria EEPROM

Memoria EEPROM a microcontrolerului Atmega328P conține 1024 Kbytes de date. Este organizată ca un spațiu de date separate, în care doar un bit poate fi citit și scris. Ea are o durată de cel puțin 100.000 de cicluri de scriere/citire.

Watchdog timer(WDT)

Atmega328P are un timer watchdog îmbunătățit . WDT este un timer de numărare a ciclurilor realizate de oscilatorul de 128kHz de pe cip. El oferă o întrerupere sau un reset de sistem atunci când contorul ajunge la o valoare de time-out dată. În modul normal de funcționare , este necesar ca sistemul să folosească un WDR-Watchdog Timer Reset pentru a reporni contorul înainte de atingerea valorii de time-out. Dacă sistemul nu repornește controul, va fi emisă o întrerupere sau o resetare a sistemului.

Capitolul I.3: Placa de test Arduino cu microcontroler

I.3.1: Caracteristici generale ale lui Arduino UNO Smd

ARDUINO UNO este o placa de dezvoltare bazată pe microcontrolerul ATmega328 . El are 14 intrări digitale / pini de ieșire (din care 6 pot fi utilizate ca ieșiri PWM), 6 intrări analogice, un oscilator cu quarț de 16 MHz, o conexiune USB, o mufă de alimentare, o mufă ICSP și un buton de resetare. ARDUINO UNO conține tot ceea ce este necesar pentru a sprijini microcontrolerul pentru ca acesta să funcționeze; pur și simplu conectați la un computer printr-un cablu USB, alimentator AC-la-DC sau baterie pentru a incepe să vă realizați proiectele.

Specificații tehnice:

Tabel I.1:Specificații tehnice ale lui Arduino UNO

Fig.I.3:Arduino UNO smd vedere din față

Alimentare

ARDUINO UNO poate fi alimentat prin intermediul conexiunii USB sau cu o sursa de alimentare externă. Sursa de alimentare este selectată automat.

Alimentarea externă (non-USB) poate veni fie de la un adaptor AC-DC sau de la o baterie. Adaptorul poate fi conectat printr-un conector de 2.1mm cu centru-pozitiv. Conectare de la o baterie poate fi realizată legând la GND și V’in capetele de la conectorii de alimentare.

Placa de dezvoltare poate opera pe o sursă externă de 6-20 volti. Daca este alimentată la mai puțin de 7V, există posibilitatea, ca pinul de 5V să furnizeze mai puțin de 5 volti și placa să devină instabilă. Dacă se alementează cu mai mult de 12V, regulatorul de tensiune se poate supra-încalzi acest lucru ducând la deteriorarea plăcii. Intervalul de tensiune recomandat de către producator este de 7-12 volti.

Pinii de tensiune și de alimentare sunt următorii:

Pinul VIN. Este tensiunea de intrare de pe placa de dezvoltare atunci când este utilizată o sursă de alimentare externă. Putem introduce tensiuni de alimentare prin intermediul acestui pin, dar dacă tensiunea de alimetare se face prin intermediul conectorului de alimentare externă, se poate accesa prin acest pin.

Pinul 5V. Este un regulator de tensiune utilizat pentru alimentarea microcontroler-ului și a altor componente de pe placa de dezvoltare Arduino, fie furnizat de către USB sau de la altă sursă de tensiune de 5V.

Pinul 3,3V. Reprezintă o alimentare de 3,3 V generați de către regulatorul de tensiune de pe placă. Curentul maxim generat este de 50 mA.

Pinul GND. Pin de împămantare.

Memoria

ATmega328 are 32 KB (cu 0,5 KB utilizate pentru bootloader). Ea are, de asemenea, 2 KB SRAM si 1 KB de EEPROM.

Capitolul II: Prezentarea sistemului de achiziție de date și transmiterea lor pe un mediu interactiv de pe Internet

Capitolul II.1: Achiziția de date cu ajutorul senzorilor

Preluarea de către om a informațiilor din lumea înconjurătoare s-a bazat pe cele cinci organe de simț. Prin originea latină a cuvantului, senzorii ne conduc la semnificația de a o percepe, a simți și a distinge prin intermediul simțurilor umane: vederea (senzori optici), mirosul ( senzori de gaze și umiditate) , auzul ( senzori acustici și de presiune), pipăitul ( senzori termici și de presiune), gustul ( senzori de compoziții chimice).

În prezent, omul nu se mai bazează numai pe propriile sale organe de simț, domeniul funcțiilor sale senzoriale fiind în continuă creștere datorită dezvoltării diferitelor tipuri de senzori, destinați măsurării și analizării diverselor fenomene.

Pentr-u a putea detecta și masura mărimile fizice variabile (cum ar fi temperatura, presiunea, deplasarea, debitul, etc), se folosesc senzori care convertesc mărimea fizică detectată într-un semnal electric pe care îl transmit fie unui circuit de adaptare, fie direct placii de achizitie de date.

II.1.2: Definiția senzorilor și clasificarea lor

Dicționarele tehnice din prima parte a anilor 1970 nu cuprindeau cuvantul „senzor”. Acest termen a apărut o dată cu dezvoltarea microelectronicii , împreună cu alte noțiuni de mare impact, cum ar fi cele de „microprocesor”, „microcontroller”, „actuator” , adăugând o noțiune nouă unei terminologii tehnice având o anumită redundanță.

Asfel, o mare parte din elementele tehnice senzitive sunt încadrate în categoria de traductor. ”Traductorul este un dispozitiv (element) tehnic care transformă valorile unei mărimi fizico-chimice în valori (corespunzătoare) ale altei mărimi fizice, în scopul măsurării ei sau/și reglării mersului procesului tehnic, biologic etc. în care este implicată mărimea respectivă. Traductoarele sunt frecvent denumite „traductoare de măsură”. Ele intră direct în contact cu mediul (procesul) unde este participantă ca parametru mărimea de măsurat sau/și reglat. În funcție de mărimea fizico-chimică în cauză traductoarele sunt diferite ca principiu de funcționare, după cum urmează:

Termorezistențe (electrice)

Potențiometre de poziție (de nivel)

Termoelemente voltaice sau „termocuple”

Celule galvanice (electrozi) de măsură (de ex. pentru măsurarea pH/acidității)

Electrozi de măsură a conductivității mediilor

Bandă tensometrică extensibilă (cu rezistență el. variabilă la alungire)

Piezoelectric traductor (cuarț cristal)

Tahogenerator (generator de tens. alternativa la rotire: utilizat la măs. turației)

Senzor Hall(emitiv de tens. electr. în vecinătate de material feromagn.)

Traductor inductiv (prin variație de permeabilitate)

Traductor capacitiv

sesizor de poziție unghiular (electric)”[2] .

În unele domenii , în special în sfera dispozitivelor electro-optice, se utilizează termenul de detector( detector în infraroșu, fotodetector etc.).

Traductoarele introduse intr-un fluid sunt denumite, uneori , probe. O categorie largă o constituie sistemele terminate în ”-metru”: de exemplu, ”accelerometru” pentru măsurarea accelerației , ”tahomentru” pentru măsurarea vitezei unghiulare.

Denumirea senzorului provine din cuvîntul latin ”sensus”, care semnifică simț și înainte de a fi adoptat pentru sisteme tehnice actuale , a fost și este utilizat pentru a înlocui capacitățile organelor de simț ale oamenilor și ale organismelor vii, de a culege și prelucra informații din mediul înconjurător și a le transmite creierului. În acest scop, mărimile fizice care sunt mărimi neelectrice, sunt convertite în semnale electrice, pe care creierul le poate prelua și interpreta și pe baza cărora coordonează acțiunile mușchilor. Modelul din biologie îl intâlnim , în mare măsură și în sistemele electronice actuale.

Senzorul este un dispozitiv electronic care măsoară o cantitate fizică (masă, presiune, temperatură, umiditate, etc) și o transformă într-un semnal care poate fi citit de către o persoană printr-un instrument adecvat sau poate fi prelucrat cu ajutrul unor instrumente speciale prelucrării semnalelor date de către senzor.

În automatizare, informația calitativă/cantitativă măsurabilă livrată de catre senzori, după o eventuală amplificare și prelucrare a semnalului dat de către ei , servește la controlul și reglarea sistemelor tehnice automate.

”Astfel, senzorii au funcția de a converti un stimul într-un semnal măsurabil, cuprinzând atât traductorul, care transformă mărimea de intrare în semnal electric util, cât și circuite pentru adaptarea și conversia semnalelor, și eventual pentru prelucrarea și evaluarea informațiilor. Stimulii pot fi mecanici, termici, electromagnetici, acustici sau chimici la origine, în timp ce semnalul măsurabil este tipic de natură electrică, deși pot fi folosite semnale pneumatice, hidraulice, optice sau bioelectrici.”[3]

Clasificarea sezorilor

În tabelul de mai jos sunt prezentate principalele tipuri de senzori clasificați după obiectivul măsurării.

Senzori de accelerație:

Accelerometre seismice(bune pentru măsurarea frecvențelor care nu depășesc 40% din frecvența proprie a traductorului);

Accelerometre piezoelectrice(sensibilitate ridicată, compacte și robuste, au o frecvență proprie de cca. 100kHz);

Accelerometre cu inducție

Senzori de forță , torsiune și presiune

Traductori tensometrici( se pretează la măsurători statice și dinamice);

Dinamometre

Traductori piezoelectrici

Traductori piezorezistivi

Doze piezoelectrice (se pretează la măsurarea cu precizie ridicată a forțelor dinamice );

Senzori tactili(compacți, prezintă un domeniu dinamic larg de măsurare);

Senzori ultrasonici de presiune(buni pentru măsurarea forțelor de valori mici);

Senzori de debit:

Debimetre cu ajutaj ;

Debimetre cu elice ;

Tubul Pitot( de obicei este folosit ca senzor de măsurare a vitezei de curgere , pentru calculul vitezelor în domeniul aviatic);

Plăci cu orificii (cele mai ieftine, dar domeniu limitat);

Tuburi Venturi(precise în domenii largi);

Rotametre: cu corp articulat, cu corp liber, cu corp ghidat(bune pentru măsurarea debitelor în contracurent);

Debimetre ultrasonice (bune pentru măsurarea debitelor foarte mari);

Debimetre electromagnetice.

Senzori de temperatură:

Termocupluri(sunt cei mai ieftini și versatili, acoperind un domeniu de temperaturi cuprins între -200°C și 1200°C).

Termometre :bimetalic spiral, cu lamelă bimetalică, cu tijă;

Pirometre de radiație

Termistori (semiconductori)- au o sensibilitate ridicată și un domeniu de până la 100°C, compacți dar au răspuns neliniar(exponențial);

Termodiode și termotranzistori(ideali pentru măsurătorile nepretențioase);

Detector de temperatură tip resistență(mai stabil pe perioade lungi de timp decât termocuplul , are răspuns liniar pe un domeniu mai larg);

Detector de temperatură în infraroșu (senzor de tip non contact care are rezoluția limitată de lungimea de undă);

Termograf în infraroșu(măsoară distribuția de temperatură) ;

Senzori de proximitate( de apropiere ):

De tip inductanță, curent turbionar, fotoelectric , capacitate, etc( sunt robuști , de tip non contact , mobili);

Senzorii mai pot fi clasificați ca fiind de două feluri: pasivi sau activi.

În cazul senzorilor pasivi puterea necesară pentru producerea semnalului de ieșire este furnizată de fenomenul fizic analizat (ex. termometru), în timp ce senzorii activi sunt alimentați de la o sursă de energie (ex. timbrele tensometrice).

De asemenea ,senzorii mai pot fi clasificați ca analogi sau digitali, în funcție de tipul semnalului de ieșire.

Senzorii analogi produc un semnal continuu care este proporțional cu parametrul analizat; de obicei semnalul este digitizat ulterior, înainte de a fi trimis mai departe la controlerul digital. În multe cazuri semnalul de ieșire este digitalizat prin adăugarea unui convertor analog‐digital în unitatea de detecție.

Senzorii digitali produc un semnal digital, care poate fi trimis direct la controlerul digital.

În cazurile în care este necesar un număr mai mare de senzori este mai economic să se utilizeze senzori analogi (mai ieftini decât cei digitali) împreună cu un convertor analog-digital cu mai multe canale.

II.1.3: Caracteristicile senzorilor

Caracteristicile principale ale senzorilor pot fi definite prin următorii parametrii:

domeniul de utilizare,

rezoluția (sensibilitatea – cel mai mic increment măsurabil al stimulului),

frecvența maximă a stimulului ce poate fi detectat (selectivitatea),

acuratețea (eroarea de măsurare raportată, în procente, la întreaga scală),

liniaritatea,

precizia,

dimensiunile și masa senzorului,

temperatura de operare și condițiile de mediu, durata de viață (în ore sau număr de cicluri de operare),

stabilitatea pe termen lung,

costul.

Majoritatea acestor caracteristici sunt precizate în fișele de fabricație ale senzorilor.

Sensibilitatea

Sensibilitatea unui senzor este definită ca fiind panta curbei caracteristicii de ieșire sau, intrarea minimă a parametrilor fizici care va creea o variație a ieșirii.

La unii senzori, sensibilitatea este definită ca parametrul de intrare cerut pentru a produce o standardizare a schimbării ieșirii. La altele, ea este definită ca tensiunea de ieșire dată pentru schimbarea parametrului de intrare.

Rezoluția

Rezoluția reprezintă detecția celui mai mic parametru de intrare care poate fi detectat din semnalul de ieșire. Rezoluția poate fi exprimată proporțional cu semnalul citit, fie în valori absolute.

Acuratețea

Acuratețea este dată de diferența dintre valoarea actuală și valoarea indicată la ieșirea senzorului. Acuratețea poate fi exprimată ca un procent sau în valori absolute.

Liniaritatea

Se definește ca “masură” în care legatura între marimea fizică de intrare și semnalul electric de ieșire poate fi exprimat printr-o funcție liniară.

Precizia

Se definește ca toleranța cu care o mărime poate fi repetată (adică “abilitatea” dispozitivului de a da aceeași valoare de ieșire pentru aceeași valoare de intrare).

Alegerea senzorilor și a traductoarelor trebuie făcută ținând cont de proprietatea de monitorizare, de domeniul în care variază aceasta, de dimensiunile ce trebuie respectate sau de geometria sistemului, de condiții speciale de mediu sau de lucru, de tipul mărimii de ieșire și nu în ultimul rând de cost.

Astfel pot fi identificați senzori de proximitate, traductoare de tip Hall, traductoare de deplasare și viteză, senzori și traductoare de forță, senzori de temperatură, senzori de umiditate, senzori pentru gaze, senzori de curent, switch-uri optice, senzori de presiune, cititoare de coduri de bare etc.

II.1.4: Senzori analogici și digitali folosiți în lucrare

În lucrarea de față, am utilizat mai multe tipuri de senzori pentru achiziția datelor din hala unei fabrici. Aceștia preiau stimulii din mediul în care sunt amplasați, transfomă mărimea de intrare în semnal electric, daca este nevoie, semnalul este amplificat pentru o mai bună prelucrare a lui, iar apoi aceste semnale sunt transmise nucleului principal ( microcontrolerului) care preia aceste semnale, le procesează, iar dacă este necesar( atunci când intervine o alarmă în procesele realizate în hală) acesta acționează prin comanda unor procese fizice, respectiv prin oprirea distribuirii energiei electrice în hală.

În continuare , se va prezenta în detaliu fiecare senzor folosit pentru achiziția de date din hala respectivă. Aceștia sunt: Senzor de temperatură și umiditate cu conexiune Grove , senzor PIR cu conexiune Grove , senzor de gaz cu conexiune Grove.

Senzor temperatură și umiditate cu conexiune Grove

Acesta este un senzor multifuncțional digital care oferă informații de temperatură și umiditate relativă, în același timp. Se utilizează un senzor DHT11 care poate satisface nevoile de măsurare de uz general. Acesta oferă măsurări de încredere atunci când starea de umiditate a mediului este cuprinsă în intervalul 20% RH și 90% RH și condiții de temperatură între 0°C și 50°C, acoperind nevoile din cele mai multe aplicații casnice și de zi cu zi, care nu conțin condiții extreme. Acest senzor de temperatură și umiditate oferă o ieșire digitală pre-calibrată. Elementul unic al senzorului capacitiv masoară umiditatea relativă și temperatura printr-un termistor cu coeficient negativ de temperatură(NTC-negative temperature coefficient).

Specificații:

Tensiunea de lucru: 3.3V-5V;

Domeniul de măsurare:

Umididate: 20% RH-90% RH;

Temperatura: 0-50°C

Precizie :

Umiditate: ±5% RH

Temperatura: ±2°C Fig.II.1:Senzor de temperatură și umiditate cu conexiune Grove

Sensibilitate:

Umiditate:±1% RH

Temperatura: 1°C

Este un senzor de temperatură și umiditate digital de cost foarte redus. Acesta folosește un senzor capacitiv de umidite și un termistor pentru a măsura aerul înconjurător, și oferă o ieșire digitală pe pinul de date. Este destul de simplu de utilizat, dar necesită o sincronizare atentă pentru obținerea de date.

Singurul dezavantaj real al acestui senzor este că poate obține date noi o dată la 2 secunde.

Termistorii sunt realizați din amestecuri de oxizi ai pământurilor rare, Mn, Cr, Ni, Co, amestecați cu o pulbere fină de cupru. Nu se pot folosi oxizi de germaniu sau siliciu, care de obicei sunt utilizați la confecționarea dispozitivele semiconductoare (diode, tranzistori, circuite integrate etc.).

În mod normal, rezistența unui termistor scade odată cu creșterea temperaturii. De aceea ei se numesc termistori cu coeficient negativ de temperatură (NTC – negative temperature coefficient). Există și termistori cu coeficient pozitiv de temperatură dar ei sunt folosiți foarte rar.

Dependența dintre rezistență și temperatură este exponențială (deci neliniară) și este dată de relația:

unde RT este rezistența termistorului la temperatura absolută T [K], Ro este rezistența termistorului

la temperature absolută de referință T0[K], iar β reprezintă o constantă caracteristică materialului

termistortului, depinzând de compoziția materialului acestuia și de tehnologia de fabricație.

Termistorii pot fi fabricați la dimensiuni foarte mici și rezistențe mari și au un răspuns rapid la variațiile de temperatură.

Umiditatea relativă (RH) se definește simplu ca raportul presiunii vaporilor de apă , pa, la presiunea vaporilor saturați, ps, la temperatura predominantă a balonului uscat:

RH[%]=100*pa/ps

Senzori capacitivi de umiditate: utilizați pentru determinarea sau măsurarea umidității relative (RH [%]). Principiul de funcționare: elementul sensibil este o peliculă de polimer care absoarbe sau degajă vaporii de apă din/ sau în aerul înconjurător, după cum umiditatea relativă ambiantă crește sau scade. Proprietățile dielectrice ale peliculei de polimer depind de cantitatea de vapori de apă pe care o conține; astfel, capacitatea electrică a senzorului se modifică în funcție de umiditatea aerului ambiant. Circuitele electronice ale aparatului de măsură convertesc valoarea capacității senzorului în valori de umiditate relativă pe tot domeniul de variație (de la 0 până la 100% RH) după o relație de forma:

RHx±ΔRH=(Cx – C0)* RH75 / (C75 – C0)

unde:

RHx – umiditatea relativă de măsurat;

ΔRH – imprecizia măsurării (depinde de temperatura ambiantă);

Cx , C0 , C75 – valoarea capacității proprii senzorului în punctul de măsurare (x), la umiditate 0% RH și la umiditate 75% (repere de calibrare).

Senzorii capacitivi de umiditate se caracterizează prin: precizie ridicată, stabilitate foarte bună în timp, imunitate la praf și la o mare diversitate de agenți chimici.

Domenii de utilizare: aplicații industriale (industria hârtiei, industria alimentară etc), în construcții, în meteorologie și desigur în E.I.V.A.C.

Senzorul PIR(senzor pasiv cu infraroșu) cu conectare Grove

Un alt senzor utilizat în lucrarea de față este un senzor Pir cu conectare Grove.

Un  senzor pasiv cu  infraroșu (senzor PIR) este un dispozitiv electronic care măsoară în unde infraroșii (IR), lumina care radiază de la obiectele aflate în câmpul său vizual. Aparent mișcarea este detectată atunci când un corp cu o anumită temperatură proprie (cum ar fi un om sau un animal) trece prin fața sursei infraroșu cu o altă temperatură (cum ar fi un perete). Acest lucru înseamnă că  senzorul detectează căldura de la trecerea unui obiect prin câmpul de acțiune al senzorului și acel obiect rupe câmpul pe care senzorul l-a determinat ca fiind “normal”. Orice obiect, chiar unul de aceeași temperatură ca și obiectele din jur va semnaliza senzorul PIR dacă corpul se deplasează în câmpul vizual al senzorului.

Toate obiectele din jurul nostru emit energie sub formă de radiații. De obicei, radiațiile infraroșii sunt invizibile pentru ochiul uman, dar pot fi detectate de dispozitive electronice concepute în acest sens.

Este un dispozitiv realizat cu un senzor piroelectric care poate detecta nivelul de radiații infraroșii. Împreună cu piroelectricul , detectorul are și un circuit cu multe condensatoare și rezistoare. Multe modele de senzori folosesc cipul BISS0001, care fără îndoială se pare ca este un cip destul de ieftin și foarte folosit la construirea senzorilor PIR.

Senzorul IR în sine, este găzduit într-o incintă de metal inchisă ermetic pentru a inhiba pătrunderea umidității și a temperaturii în incintă dar și protejarea de zgomote. Pe fața exterioară a incintei se află o fereastră realizată dintr-un material IR-transmisiv (acoperit deobicei cu siliciu), care protejează elementul sensibil. În spatele acestei ferestre se află doi senzori echilibrați.

Fig.II.2:Imagine cu partea sensibilă a senzorului. Sursa[]

a)b)

Fig.II.3 : a) diagrama ferestrei vazută de sus și b) secțiune transversală a elementului.

Sursa []

Puteți vedea mai sus afișată diagrama ferestrei de pe partea exterioară a incintei, adică cele două părți sensibile.

Fig.II.4:Partea internă a senzorului.Sursa[]

Această schemă prezintă partea internă a senzorului. Există de fapt în interior un JFET ( tranzistor cu poartă jocțiune – tranzistor cu efect de câmp). Acestea sunt dispozitive semiconductoare cu trei terminale, care pot fi folosite ca întrerupătoare controlate electronic sau rezistențe controlate de tensiune.

Lentilele

Senzorii PIR sunt destul de generali și în cea mai mare parte pot varia în funcție de preț și sensibilitate . În diagrama de mai sus, se observă că lentila este doar o bucată de plastic , ceea ce înseamnă că zona de detectie se află pe cele două dreptunghiuri. Deobicei se dorește să avem doar o zonă de detecție , care să fie mult mai mare. Pentru a face aceast lucru , vom folosi un obiectiv simplu cum ar fi cele folosite într-un aparat de fotografiat: el condensează o suprafață mare intr-una mică. Senzorii PIR folosesc lentile Fresnel.

Fig.II.5:Trecerea undelor de lunină prin două tipuri de lentile. Sursa[]

Lentila Fresnel condensează lumina, oferind o gamă mai largă de IR la senzor.

Fig.II.6:Condensarea luminii într-o lentilă Fresnel. Sursa[]

Fig.II.7:Perceperea radiației de către elementul sensibil al circuitului.Sursa[]

Deci acum avem o gamă mult mai mare. Cu toate acestea , noi avem doi senzori , și mai important, noi nu dorim să avem două dreptunghiuri foarte mari de detecție , ci mai degrabă mai multe zone mai mici . De aceea , ceea ce trebuie să facem este să împarțim lentila în secțiuni multiple , fiecare secțiune fiind o lentilă Fresnel.

Fig.II.8:Lentila Fresnel din material plastic. Sursa[]

Se pot vedea acele mici sectiuni pe suprafață. Diferitele fațete și sub-lentile se crează o serie de zone de detecție , intercalate între ele.

Detectorul PIR este un detector volumetric, în sensul că supraveghează un anumit volum al unei încăperi. Constructiv, dispozitivul are o mască frontală cu lentile Fresnell, prin care senzorul analizează în funcție de numărul de lentile (12-15), fluxurile infraroșii din încăpere. În momentul în care un corp cald tranzitează un astfel de spot, prioelementul generează un impuls electric care este analizat și procesat de partea electronică a senzorului.

Teoria detecției în infraroșu

Detectoarele PIR primesc energie invizibilă radiată de către obiectele aflate în câmpul lor vizual. Ele sesizează în fapt SCHIMBAREA acestei energii(căldura).

Fig.II.9:Detectarea persoanei care trece prin câmpul de acțiune al PIR-ului.Sursa []

Persoana în mișcare produce o astfel de schimbare în mediu, “schimbare”  care poate fi mai caldă sau mai rece decat mediul curent.

Componentele principale ale unui senzor PIR

Un senzor de mișcare cuprinde 3 componente principale care sunt următoarele :

partea optică;

senzorul propriu-zis;

circuitul de procesare.

Fig.II.10:Elementele principale ale senzorului. Sursa[]

Partea optică a senzorului de mișcare

Partea optică  are rolul de a focaliza energia termică pe senzorul de captură. Pentru partea optică a senzorului de obicei se utilizează oglinda sau lentila Fresnel. Fețele oglinzii sau secțiunii lentilelor definesc zona de acoperire a detectorului.

În fața senzorului propriu-zis – în distanța focală – se găsește o cupolă sferică sau cilindrică de lentile mici curbe convexe albe, din material plastic noros, dar este în mod clar în infraroșu transparent. Aceste lentile multiple colectează lumină în infraroșu. Lumina în infraroșu ajunge la senzorul propriu-zis care transformă această energie infraroșie în energie electrică, care poate fi analizată de un circuit de procesare (procesor) și care va diferenția alarmele false de alarmele reale.

Senzorul – convertește energia infraroșie în energie electrică.

Fig.II.11:Recepția semnalului.Sursa[]

Procesarea semnalului

Circuitul de procesare analizează semnalul electric și separă alarmele reale de cele false. Pentru acest lucru:

– semnalul reclamă o “Semnatura” specifică.  Circuitul utilizeaza praguri multiple pentru a măsura relația complexă între amplitudinea semnalului, polaritatea acestuia și durata. Această relație complexă produce o “semnatură” specifică pe care procesorul  o utilizează pentru a determina dacă semnalul ar trebui să activeze o alarmă.

Fig.II.12:Procesarea semnalului. Sursa[]

Modul de funcționare

Metoda lor de funcționare este foarte simplă , fiecare senzor fiind echipat cu un emițător și un receptor. Emițătorul transmite un fascicol de lumină în spectrul infraroșu(cu lungimi de undă în intervalul 880-990nm), fascicol care se propagă în mediu, iar apoi se reflectă de obiectele aflate in perimetrul său. Fascicolul reflectat este captat de componenta detector, urmând apoi ca printr-un calcul matematic , să se estimeze o distanță între senzorul infraroșu și obiectul detectat din mediu. Atât emițătorul cît și receptorul au o rază de acțiune (en. Field of view). În funcție de poziția obiectului în mediu, acesta poate fi detectat sau nu de către senzor. Dacă obiectul este prezent la intersecția razelor de acțiune a emițătorului și a detectorului , radiația reflectată de obiect va fi observata de detector , în caz contrar , obiectul nefiind detecat.

Un exemplu de situație în care un obiect din mediu nu poate fi detectat , este prezentat în figura de mai jos:

Fig.II.13:Exemplu când obiectul nu poate fi detectat.Sursa[]

Intensitatea luminii reflectate de către obiect este invers proporțională cu pătratul distanței pănă la obiectul respectiv.

În realitate însă, obiectele au culori diferite, ele reflectând o mai mare sau o mai mică cantitate de lumină înapoi. Spre exemplu, suprafețele de culoare închisă(negru de exemplu), sunt aproape invizibile pentru detecor, deoarece absoarbe din lumina emisă.

În lucrarea de față am folosit un senzor PIR( cu conectare Grove) care este un senzor digital.

Acest senzor permite detectarea mișcării , de obicei, mișcarea umană în câmpul său vizual. Pur și simplu se conectează la plăcuță și se programează , atunci când cineva se mută in câmpul său vizual, și detectează mișcarea, acesta va transmite HIGH pe pinul SIG. Câmpul de acțiune si timpul de răspuns se pot ajusta cu ajutorul a două potențiometre aflate chiar pe placă. Acestea pot varia de la 0.3s – 25s și pe o distanță maximă de 6 metri. 

Fig.II.14:Senzorul PIR cu conectare Grove.Sursa[]

Specificații

Tensiunea de lucru: 5V;

Curent de lucru( pentru Vcc=3V) : 100µA;

Curent de lucru ( pentruVcc=5V): 150µA;

Domeniul de măsurare(distanța): 0.1-6 m;

Unghi de detecție: 120°.

Distanța de detectare poate fi ajustată prin rotirea potențiometrului de distanță. Cănd se rotește în sensul acelor de ceasornic, distanța de detectare va scădea de la 6 m la câțiva centrimetrii. Și atunci cand se rotește în sensul trigonometric, până la maxim , acesta devine foarte sensibil.

Circuitul integrat(BISS0001) al detectorului de prezență PIR

Fig.II.15:Circuitul integrat BISS0001 al detectorului Pir.Sursa[]

Descrierea pinilor

Tabel II.1. Descrierea pinilor. Sursa[]

Unde : *Tx = durata de timp în care PIN-ul de ieșire (Vo) rămâne high după declanșare.

Ti = în această perioadă de timp, declanșarea este inhibată.

Tx ≈ 24576 xR10 x C6; Ti ≈ 24 x R9 x C7.

Evaluări maxime absolute

Tabelul II.2: Evaluări maxime absolute.Sursa[]

Formă de undă re-declanșabilă

( Unde: VH=0.7Vdd, VL=0.3Vdd)

Fig.II.16:Forma de undă pentru semnal re-declanșabil.Sursa[]

Forma de undă ne-declanșabilă

(Unde : VH=0.7Vdd, VL=0.3Vdd)

Fig.II.17:Forma de undă pentru semnal ne-declanșabil.Sursa[]

Diagrama bloc internă

Fig.II.18:Schema bloc internă.Sursa[]

Tx –lățimea pulsului de control al ieșirii Ti – timpul de control cu declanșare inhibată

Senzorul de gaz MQ5 cu conectare Grove

Caracteristici:

sensibilitate ridicată la GPL, gaz natural, gaz de iluminat

sensibilitate mică la alcool și fum

răspuns rapid

stabilitate și durată de viață mare.

Aplicații:

Sunt utilizate pentru detectarea de scurgeri de gaze în locuințe și industrie, sunt potrivite pentru detectarea de GPL, gaz natural, gaz de iluminat, pentru detectarea fumului de la mașina de gatit și fumului de țigare.

Specificații:

Condițiile standard de lucru

Tabel II.3:Condiții standard de lucru.Sursa[]

Condiții de mediu

Tabel II.4: Condițiile mediului de lucru optim.Sursa[]

Caracteristica de sensibilitate

Tabel II.5: Caracteristica de sensibilitate.Sursa[]

Structura și configurația circuitul de măsură de bază

Tabel II.6: Structura și configurația circuitului de bază.

Fig.II.19:Structura și configurația circuitul de măsură de bază.Sursa[]

Fig.II.20:Configurațiile senzorului de gaz. Sursa []

Structura și configurația senzorului de gaze este prezentată în figura II.20 ( Configuratia 1 sau 2) compus din micro-tub de ceramică de Al2O3, un strat sensibil de dioxid de staniu SnO2, electrozii de măsurare și de încălzire sunt plasați într-o crustă de plastic și o plasă de oțel inoxidabil. Bobina de încălzire oferă un mediu prielnic pentru buna funcționare a componentelor sensibile. Senzorul MQ-5 are 6 pini , 4 pini sunt pentru a aduce semnale și celelalte două sunt folosite pentru a aduce curent de încălzire.

Caracteristica curbei de sensibilitate

Fig.II.21:Caracteristicile de sensibilitate ale MQ-5.Sursa[]

Figura II.21 prezintă caracteristicile tipice ale sensibilității pentru senzorul MQ-5 pentru mai multe gaze. Temperatura: 20℃, Umiditate: 65%, Concentrația de O2 : 21% RL = 20kΩ Ro: rezistența senzorului la 1000ppm de H2 în aer curat. Rs: rezistența senzorului la diferite concentrații de gaze.

Fig.II.22:Dependența tipică MQ-5 de temperatură și umiditate.Sursa[]

Figura.II.22 arată dependența tipică MQ-5 de temperatură și umiditate. Ro: rezistența senzorului la 1000 ppm de H2 în aer, la 33% RH și 20 grade. R: rezistența senzorului la diferite temperaturi și umiditate.

Fig.II.23:Structura internă a senzorului semiconducor (SnO2) pentru gaze.Sursa[]

La unele modele de senzori, capsula este dintr-un material plastic neinflamabil, iar accesul gazului la elementele senzitive se realizează printr-o fantă în partea superioară, fantă care este acoperită cu o rețea (plasă) din oțel pentru a preveni aprinderea gazului.

Rezistența de încălzire aduce senzorul la temperatura optimă de funcționare pentru gazul care trebuie detectat (de obicei intre 200 oC si 400 oC). Materialul sensibil la gaz este bioxidul de staniu (SnO2). Pe suprafața granulelor de SnO2 se absoarbe oxigen din aer care preia electroni mobili din banda de conducție. Bioxidul de staniu, fiind semiconductor de tip "n" cu zona interzisă mare (3,8eV), va fi sărăcit la suprafață de purtători de sarcină mobili și din această cauză rezistența electrică la contactul dintre granule va fi mare. În momentul în care apare un gaz capabil să se combine cu oxigenul absorbit, electronii inițial legați de oxigen sunt eliberați în banda de conducție, rezistența electrică a dispozitivului scăzând mult.

Capitolul II.2: Transmiterea datelor

II.2.1: Protocoalele folosite la transmitere

Într-un domeniu caracterizat de diversitate și de un continuu progres, cum este cel al tehnologiei informației și al telecomunicațiilor,definirea unor standarde de interconectare și transfer de informații a fost o cerință existențială a marilor producatoare de echipamente și software , care trebuiau să colaboreze în cadrul unor sisteme deschise.

Pentru interconectarea diferitelor sisteme de calcul in rețelele de calculatoare se impune respectarea anumitor reguli și convenții , care au ca scop definirea cadrului în care se desfașoară comunicația datelor. Acest set de reguli și convenții stabilit între partenerii de dialog pentru buna desfașurare a comunicației între ei se numește protocol.

Conceptul de protocol pentru comunicații

Proiectanții de rețele de calculatoare au constatat că este mult mai simplu și mai eficient să se realizeze o stratificare pe niveluri ierarhice a comunicației în rețelele de calculatoare și au aplicat acest lucru la definirea modelelor de referință OSI și TCP/IP. Organizarea stratificată face ca nivelul N al unui dispozitiv sa comunice cu același nivel al oricărui alt dispozitiv, resptectand anumite reguli și convenții de comunicare , definite prin termenul de protocol.

Definiția protocolului conform standardului ISO 7498(modelul OSI ) este urmatoarea : Protocolul este un set de reguli și convenții care stabilesc modul de transmisie a informației prin structurile de interconectare ale rețelei și formatul mesajelor schimbate între entitățile pereche ale unui nivel. Un protocol de comunicație trebuie să realizeze următoarele funcții:

Să furnizeze mijloace de identificare a începutului și sfârșitului fiecărui element de protocol(cadru, mesaj, etc. )

Să inițializeze si să interpreteze elemente de protocol care comportă anumite comenzi , cum ar fi: interogarea și inițializarea stațiilor terminale

Să permită identificarea adreselor logice ale extremităților legăturii

Să detecteze și, în anumite cazuri, să corecteze erorile de transmisie conform unor proceduri speciale (retransmisii)

Să asigure ordinea corectă a blocurilor de date receptionate

Să permită stațiilor terminale controlul fluxului de date.

Elementele definitorii ale unui protocol sunt:

Sintaxa-cuprinde formatul mesajelor de interschimb și modul de codificare a datelor;

Semantica- include procedurile de control pentru detectarea si corecția erorilor;

Sincronizarea- selectează viteza de transfer a informației și stabilește succesiunea

datelor transmise.

Pachetul de protocoale TCP/IP

TCP/IP este un set de protocoale creat pentru a permite calculatoarelor care cooperează să impartă resursele în rețea. A fost creat de un grup de cercetători centrat în jurul rețelei ARPAnet. Cu siguranță , ARPAnet este cea mai cunoscută rețea de TCP/IP. Încă din iunie 1987, cel putin 130 de intreprinderi creau produse care aveau ca suport TCP/IP , pe care le utilizau mii de rețele de diverse tipuri.

Internet-ul este o colecție de rețele , incluzând ARP Anet , NSFnet, rețelele regionale cum ar fi Nysernet, rețele locale ale numeroaselor universități și instituții de cercetare, rețele militare și alte tipuri de rețele . Termenul de Internet se aplică întregului set de rețele enumerate anterior. Toate aceste rețele sunt interconectate. Utilizatorii pot trimite mesaje de la un calculator aflat intr-o retea la un calculator aflat în oricare altă rețea, excepție făcând acele rețele care sunt securizate sau au anumite permisiuni de acces.

Oficial vorbind, documentele referitoare la protocoalele pentru Internet sunt simple standarde adoptate de comunitatea de Internet pentru propriul uz. Până în prezent, protocolul folosit în Internet s-a standardizat, iar el se numește TCP/IP, simbolizând acronimul expresiei Transmission Control Protocol/ Internet Protocol.

Ceea ce s-a mai produs în TCP/IP dupa 1980 au fost doar adăugări , care continuă și astazi să apară. Este , deci, un protocol încă în dezvoltare , dar baza lui nu a mai fost schimbată. TCP și IP sunt numai două dintre protocoalele setului Internet, care are peste 50 de astfel de protocoale, dar acestea două sunt cele considerate ca fiind principale. Fiecare dintre protocoalele familiei TCP/IP asigură transferul datelor pe rețea într-un format diferit și cu opțiuni diferite (cum este de exemplu, verificarea erorilor). În funcție de necesitățile aplicației , se poate utiliza unul sau altul din protocoalele familiei TCP/IP pentru transmiterea informațiilor pe Internet.

TCP/IP reprezintă o mulțime ierarhizată de protocoale. Unele protocoale ale familiei oferă servicii de tip low level aplicațiilor care rulează pe calculator. Dintre aceastea fac parte IP, TCP, UDP, UTP etc. Altele sunt protocoale destinate unui anumit scop, de exemplu TELNET , FTP, SMTP etc.

TCP/IP este un set de protocoale dispuse pe nivele , care presupune că exită o cale de comunicare între două calculatoare. TCP se asigură de faptul ca o comanda ajunge la celălalt capăt al conexiunii , supraveghează ceea ce a transmis și retransmite ceea ce nu a ajuns la destinație.

Alocarea dinamică a adreselor IP

La rețele cu mai multe calculatoare , peste 50, alocarea static nu mai este o soluție deoarece administrarea rețelei se îngreunează excesiv.

O metodă eficientă este alocarea dinamică, la pornirea calculatorului, a tuturor adreselor IP de care acesta are nevoie pentru a funcționa în rețea. De această problemă se ocupă protocolul DHCP (Dynamic Host Configuration Protocol) și serverul DHCP. Există două moduri de alocare dinamică a adreselor în care se poate ține sau nu cont de adresele MAC ale adaptoarelor de rețea. În primul caz alocarea se face pe baza unui tabel de corespondență între adresele MAC și adresele IP cu care trebuie setate computerele din rețea. Acest mod se asigură un grad sporit de securitate al rețelei deoarece un computer care nu are adresa MAC a adaptorului de rețea cuprinsă în tabela de alocare nu va fi configurat cu adresele IP corespunzătoare. Al doilea mod atribuie adresa IP a hostului și celelalte adrese IP oricărui calculator conectat la rețea, ignorând adresele MAC, în limita spațiului de adrese disponibil. Această metodă este folosită atunci când securitatea rețelei este asigurată prin alte metode sau este mai puțin importantă. Pentru a funcționa alocarea dinamică este necesar ca în rețea să existe un server DHCP. Acesta poate fi un computer distinct, de preferință, dar poate fi și un computer al unui utilizator care rulează aplicația server. În ambele situații serverul DHCP trebuie să fie pornit pe toată durata cât este solicitat accesul la rețea.

DHCP (prescurtat de la Dynamic Host Configuration Protocol) este un protocol de rețea de calculatoare folosite de gazde (clienți DHCP) care atribuie adrese IP și alte informații de configurare de rețea importante în mod dinamic.

Dynamic Host Configuration Protocol automatizează alocarea parametrilor de rețea la dispozitive de către unul sau mai multe fault-tolerant servere DHCP. Chiar și în rețele mici, DHCP este folositor, deoarece simplifica adăugarea unor noi echipamente în rețea.

Când un client configurat (un computer sau orice alt dispozitiv de rețea) se conectează la rețea, clientul DHCP trimite o  interogare în ce privește informația necesară la serverul DHCP. Serverul DHCP gestionează o rezervă de adrese IP și informații despre configurarea parametrilor clientului, ca gateway-ul implicit, numele domeniului, serverul DNS, alte servere ca serverul de timp, ș.a.m.d. La primirea unei cereri valide, serverul atribuie calculatorului o adresă de IP, un contract de leasing (perioada de validitate a alocării respective), precum și alți parametri de configurare de IP, cum ar fi masca de subrețea și gateway-ul implicit . Interogarea este de obicei inițiată imediat după boot, și trebuie să fie completată, înainte ca clientul să poată iniția comunicarea IP cu alte gazde.

II.2.2: Conexiunea Shield PoEthernet-priza de internet

Realizarea conexiunii între shield-ul PoEthernet și priza de internet se face cu ajutorul unui cablu UTP. Cablul UTP conține 4 perechi de fire răsucite și neecranate, în total 8 fire, protejate de un înveliș de plastic. Perechile de fire sunt colorate pentru a permite identificarea ușoară la ambele capete ale cablului. Fiecare pereche conține un fir de o anumită culoare și un fir de aceeași culoare dar cu o dungă albă, răsucită în lungul firului. Schema culorilor este standardizată de standardul 568B al Asociației pentru Industria Electronică și de Telecomunicații. În tabelul următor este arătată această schemă a culorilor :

Fig.II.24:Schema culorilor pentru mufarea cablului UTP.Sursa[]

Conectorii și jack-urile cablului UTP sunt RJ45; RJ vine de la Registered Jack iar 45 desemnează schema de numerotare a pinilor. Conectorul se atașează pe capătul cablului iar jack-ul este piesa în care se introduce conectorul. Jack-ul este montat pe echipamentele de rețea: adaptoare, hub-uri, routere, etc.

Specificațiile IEEE pentru Ethernet 10BaseT cer să se folosească două perechi de fire, una din ele să fie conectată la pinii 1 și 2 iar a doua la pinii 3 și 6. Pinii 4 și 5 sunt săriți, la ei conectându-se celelalte fire din perechile nefolosite.

Shield Ethernet pentru Arduino cu POE și SD Card

Shield-ul Ethernet permite conectarea instantanee la internet a proiectelor realizate pe Arduino. Un cip Ethernet Wiz5100 integrat care controlează până la patru conexiuni TCP și UDP, doar trebuie pus pe un Arduino pentru a crea propriile dispozitive de rețea. Se verifică cu ușurință starea conexiunii cu ajutorul unor leduri luminoase. Shiled-ul dă nu numai accesul placuței Arduino la Internet prin intermediul Bibliotecii Ethernet , dar deasemenea permite proiectului alimentarea de la linia de Ethernet. Modul de conectare PoEthernet se poate face , înafara conectării prin conectorul RJ-45, prin cei 4 pini de pe placută pozitionați în colțul simetric amplasării conectorului RJ-45.

Ultima versiune a shield-ului adaugă un slot de card de memorie micro-SD, care poate fi utilizat pentru a permite stocarea de date care pot fi folosite pe internet. Pe lângă acest slot, a mai fost adăugat un buton de reset , care reseteaza cipul Wiz5100 dar si placuța Arduino.

Arduino comunică atât cu cipul Wiz5100 dar și cu slotul de card printr-o magistrală SPI(Serial Peripheral Interface).

Wiz5100 are toate caracteristicile , este un cip integrat care are activă o bandă de 10/100 Mb proiectat pentru aplicații embedded în care sunt necesare ușurința de integrare, stabilitatea, performanța, zona și controlul costurilor de sistem. .W5100 a fost conceput pentru a facilita punerea în aplicare ușor a conectării la Internet fără sistem de operare.

W5100 este foarte potrivit pentru multe aplicații embedded, printre care:

Dispozitive” Home Network”: PVR-urilor, Adaptoare Digital Media

Serial-la-Ethernet: Controale de acces, display cu LED-uri, relee de acces fără fir, etc

Paralel-la-Ethernet: POS / Mini imprimante, copiatoare

USB-to-Ethernet: Dispozitive de stocare, imprimante de rețea

GPIO-to-Ethernet: Senzori de rețea folosiți în casă

Sisteme de securitate: DVR-uri, camere de rețea

Fabrica de construcții și Automatizări

Echipamente de monitorizare medicală

Servere Embedded

Fig.II.25: Shield-ul PoEthernet.Sursa[]

Capitolul III: Proiectarea stucturii hardware a sistemului de monitorizare și control

Capitolul III.1: Prezentarea generală

Proiectarea structurii hardware a unui sistem de monitorizare și control de la distanță a unei linii de producție industrială se bazează pe existența unei scheme cu următoarele blocuri:

Mediu Internet

Placa PoEthernet

Unitatea de comandă și control

Senori

Actuator(releu).

Fig. III.1: Schema bloc a unui sistem de monitorizare și control al unei linii de producție industrială

Practic, această schemă bloc este împarțită în 3 elemente cheie:

Partea de transmisie prin cablu UTP.

Este formată din mediul Internet și placa PoEthernet și are ca scop transmiterea de date de la placă la un server denumit Thingspeak. Astfel, atunci când placa primește date de la Unitatea de comandă și control , aceasta le transmite către serverul Thingspeak iar acesta le afișează pe o pagină proprie HTML sub forma unor grafice.

Unitatea de comandă și control

Reprezintă ”creierul” întregului sistem și care are principalul scop colectarea informațiilor de la senzori,crearea unei decizii și transmiterea comenzilor la actuator(releu) dar și transmiterea datelor de la senzori către placa PoEthernet. Blocul cu senzori are rolul de a oferi Unității de comandă și control informații despre starea mediului ( temperatura, umiditatea, detecția de gaz, detecția mișcării).

Blocul actuatorului este elementul final al unui astfel de sistem. Acesta primește comandă de la Unitatea de comandă și control atunci când se detectează nivelul temeperaturii/umidității peste un anumit prag impus de mine , sau detecția de gaz în incintă. Pe baza acestei comenzi, actuatorul, în cazul meu, oprește funcționarea liniei de producție prin întreruperea curentului.

În figura de mai jos avem prezentat un astfel de actuator(releu):

Fig.III.2: Releu cu conectare Grove .Sursa []

Schema bloc este următoarea :

Fig.III.3: Schema bloc a releului .Sursa []

Când este setat pe HIGH , LED-ul se va aprinde și releul se va închide permițînd curentului să treacă. Curentul maxin de utilizare este de 250V cu 10A.

Capitolul III.2: Prezentarea structurii hardware executată în cadrul acestei lucrări

În lucrarea de față, structura hardware realizată este compusă din următoarele blocuri componente:

Placa PoEthernet

Placa de test cu microcontroler și shield-ul folosit pentru conectarea senzorilor

Senzorii

Releul(actuator).

Fig. III.4: Schema bloc a structurii hardware realizate

În figura urmatoare avem prezentat modul de conectare al elementelor pe shieldul atașat placii de testare (se poate vedea în format mai mare in anexa ):

Fig III.5: Schema electrica a shieldului folosit

S-a folosit o conectare Grove deoarece este mai ușor de realizat conexiunea și arată mult mai bine din punct de vedere estetic.

În figura urmatoare este prezentată o imagine de ansablu a structurii realizate:

Fig III.5: Structura hardware realizată

Capitolul III.3: Descrierea modulului de funcționare

Întreg proiectul se bazează pe o plăcuță Arduino UNO versiunea smd pe care este conectat un shield care face trecerea de la conectarea pe pini( conectarea propriu-zisă în pinii de pe plăcuță) la conectarea cu mufe Grove. Am folosit aceasta conectare pentru că este foarte ușor de realizat, are un cost mai redus, dar arată bine și estetic. Prin această placa sunt conectați senzorii utilizați, iar peste aceasta se conectează o placă PoEthernet care face conexiunea proiectului la un server pentru afișarea datelor preluate de către senzori. Această placă se conectează ușor peste pinii shield-ului Grove.

Conectarea elementelor utilizate la microcontroler:

Senzorul PIR conectat pe pinul digital D3 de pe plăcuța Grove-setat ca port de intrare;

Senzorul de gaz MQ-5 conectat pe pinul analog A2 de pe plăcuța Grove-setat ca port de intrare;

Senzorul de temperatură și uniditate conectat pe pinul analog A0 de pe plăcuța Grove-setat ca pin de intrare ;

Releul este conectat pe pinul digital D2 de pe plăcuța Grove- setat ca pin ca ieșire, iar pentru a simula cât mai precis întreruperea sau deschiderea circuitului de curent în hală, am conectat la ieșirea releului un LED care se aprinde atunci când este curent pe linia de producție și se stinge atunci când se intrerupe alimentarea liniei de producție.

Modul de lucru este următorul:

Primul lucru care are loc atunci când programul începe să ruleze este să afișeze pe monitorul serial un POST (Power On Self Test). Acest test constă in verificarea funcționării placii si a elementelor de pe aceasta: astfel ledurile de pe placa de test si de pe shield se aprind alternativ și in felul acesta utilizatorul se asigură de faptul ca are conexiunile facute bine, și elementele functioneaza corect.

Starea inițială o reprezintă un mediu în care nu există mișcare, temperatura și umiditatea sunt la valori normale, detectorul de gaz are un nivel care se încadrează intervalului propice pentru funcționarea liniei de producție, iar releul este activ(adică permite trecerea curentului electric).

Atunci când senzorul de temperatură și umiditate sau senzorul de gaz detectează valori mai mari decât un anumit nivel impus, aceștia trimit semnal către plăcuța Arduino, acesta prelucrează semnalul și semnalează o alarmă care duce la închiderea circuitului de curent prin linia de producție,activând releul care , în cazul de față nu mai alimentează LED-ul. Activarea sau dezactivarea releului se poate recunoaște după sunetul specific pe care il scoate acesta prin acționarea mecanică.

Revenirea la starea inițială are loc numai după ce nivelurile detectate (cele care au dus la activarea alarmei) scad sub acel nivel impus denumit prag. Astfel programul se întoarce la modul de verificare a parametrilor mediului ambiant in hala de producție , executându-se astfel o buclă infinită.

Cu ajutorul shield-ului PoEthernet toate aceste date sunt uploadate pe un server denumit www. thingspeak.com și sunt reînoite la fiecare 2 secunde.

Toate elementele de pe placa de test se pot observa în figura următoare, unde putem distinge conectările senzorilor și shield-urile folosite .

Fig III.6: Imagine de ansamblu a placii de test cu componentele utilizate

Capitolul IV: Realizarea aplicației software

Realizarea aplicației software din cadrul acestui proiect a fost executată cu ajutorul mediului integrat de dezvoltare Arduino IDE. Plăcuța vine integrată cu un bootloader care vă permite să încărcați noul cod fără a avea nevoie de un programator hardware extern. Acesta comunică folosind protocolul STK500.

Capitolul IV.1: Prezentarea mediului de programare

Un mediu de dezvoltare (en: Integrated Development Environment) este un set de programe care ajută programatorul în scrierea programelor. Un mediu de dezvoltare combină toți pașii necesari creării unui program (editarea codului sursă, compilarea, depanarea, testarea, generarea de documentație) într-un singur soft care, de regulă, oferă o interfață grafică prietenoasă.

Mediul de dezvoltare integrat Arduino (IDE ) este o aplicație ”cross-platform” scrisă în Java. Acesta este conceput pentru a introduce în arta  programarii nou-veniții nefamiliarizați cu dezvoltarea de software . Mediul de dezvoltare Arduino include un editor de cod cu o serie de caracteristici, cum ar fi evidențierea sintaxei , indentarea automată , și este , de asemenea, capabil de compilarea și încărcarea programelor în placa de dezvoltare cu un singur clic . Un program sau cod scris pentru Arduino este numit ” schiță ” (sketch) .

Interfața este multiplatformă, putând rula în Windows©, Mac OS X© și Linux. Programul poate fi obținut atât ca executabil specific platformei de lucru pe care o aveți dar și sub formă de cod sursă pe care il puteți compila conform condițiilor specifice pe care le aveți.

După instalare interfața principală a programului arată ca în captura de ecran de mai jos:

Fig.IV.1: Interfața principală a programului

1.Zona meniu:

 Verifică programul pentru erori;

 Incarcă programul în placa de dezvoltare;

 Crează un nou proiect nou;

 Deschide un proiect existent;

 Salvează proiectul curent;

 Monitorizare serială – acest buton este folosit pentru comunicarea prin portul serial cu calculatorul.

2.Zona program :

Această parte din aplicație este folosită pentru scrierea și editatrea programelor. Cu ajutorul iconiței din dreapta sus (sub forma de sageata orientata în jos) poți redenumi/crea fisiere noi.

Fig.IV.2:Zona de program a aplicației.

3.Zona compilator:

În această zonă vor aparea eventualele erori de compilare.

Fig.IV.3: Zona compilator

Anatomia unui program Arduino

Orice program Arduino are doua sectiuni. Sectiunea ”setup”, care este rulată doar o singură dată, atunci când placa este alimentată(sau este apăsat butonul ”Reset”), și secțiunea ”loop”, care este rulată în ciclu, atâta timp cât este alimentată placa.

void setup() {

//codul scris aici ruleaza o singura data

}

void loop() {

//codul scris aici ruleaza tot timpul

}

Astfel, in rutina "setup" vom pune de obicei cod de inițializare , iar în rutina ”loop” vom scrie partea principală a programului nostru.

Capitolul IV.2: Organigrama aplicației software

DA

NU DA

NU

Similar Posts