PROIECTAREA ȘI IMPLEMENTAREA UNUI DETECTOR DE GAZ CU NOTIFICARE TELEFONICĂ COORDONATOR ȘTIINȚIFIC ș.l. dr. ing. POSZET OTTO ABSOLVENT ȘIMON GABRIEL… [305557]

UNIVERSITATEA DIN ORADEA

FACULTATEA DE INGINERIE ELECTRICĂ ȘI

TEHNOLOGIA INFORMAȚIEI

SPECIALIZAREA CALCULATOARE

FORMA DE ÎNVĂȚĂMÂNT IF

LUCRARE DE DIPLOMĂ

COORDONATOR ȘTIINȚIFIC

ș.l. dr. ing. POSZET OTTO

ABSOLVENT: [anonimizat]

2016

UNIVERSITATEA DIN ORADEA

FACULTATEA DE INGINERIE ELECTRICĂ ȘI

TEHNOLOGIA INFORMAȚIEI

SPECIALIZAREA CALCULATOARE

FORMA DE ÎNVĂȚĂMÂNT IF

PROIECTAREA ȘI IMPLEMENTAREA UNUI DETECTOR DE GAZ CU NOTIFICARE TELEFONICĂ

COORDONATOR ȘTIINȚIFIC

ș.l. dr. ing. POSZET OTTO

ABSOLVENT: [anonimizat]

2016

UNIVERSITATEA DIN ORADEA

FACULTATEA DE INGINERIE ELECTRICĂ ȘI TEHNOLOGIA INFORMAȚIEI

DEPARTAMENTUL CALCULATOARE ȘI TEHNOLOGIA INFORMAȚIEI

TEMA PROIECTULUI DE DIPLOMĂ

Proiectul de finalizare a studiilor a student: [anonimizat]

1). Tema proiectului de finalizare a studiilor:

Proiectarea și implementarea unui detector de gaz cu notificare telefonică

2). Termenul pentru predarea proiectului 5.07.2016

3). Elemente inițiale pentru elaborarea proiectului de finalizare a [anonimizat], [anonimizat] 16×2 caractere

4). Conținutul proiectului de finalizare a studiilor

Introducere

Capitolul I. Echipamente utilizate

Capitolul II. Implemetarea hardware

Capitolul III. Implementare software

Capitolul IV. Mod de utilizare

Concluzii

Bibliografie

Anexe

5). Material grafic: prezentare Power Point

6). Locul de documentare pentru elaborarea proiectului: [anonimizat], internet

7). Data emiterii temei 1.10.2015 Coordonator științific

ș.l. dr. ing. POSZET OTTO

CUPRINS

Introducere

Lucrarea de față are ca scop realizarea unui detector de gaz care să ne avertizeze atât vizual cât și acustic în cazul unei detecții și închiderea circuitul de gaz pentru prevenirea unor accidente.

Proiectul a [anonimizat] o mai bună înțelegere a proiectelor realizate. [anonimizat]. În cazul unei detecții aplicația transmite un mesaj prin bluetooth către telefonul mobil al utilizatorului.

[anonimizat], în care am implementat un mod prin care utilizatorul poate trimite date către Arduino. În aplicație este realizat și un mod de siguranță prin care utilizatorul este avertizat în cazul în care intervine o problemă asupra detectorului de gaz. [anonimizat] o electrovalvă care va închide circuitul de gaz până în momentul în care utilizatorul va transmite un mesaj de reinițializare a programului.

Există de asemenea avertizare acustică în cazul unei detecții dar și în cazul în care ceva nu rulează corespunzător sau în momentul în care utilizatorul pornește aplicația.

[anonimizat] o baterie. Această baterie se va încărca în momentul în care folosim alimentarea de la rețeaua electrică și are scopul de a menține energia electrică necesară funcționării astfel încât aplicația să ruleze în cazul unei întreruperi de energie.

CAPITOLUL I

Echipamente utilizate

I.1 Arduino

Arduino este o companie lansată in 2005, care produce plăcuțe de dezvoltare cât și software-ul destinat programării acesteia, care ne permite să realizăm aproape orice proiect.

Numele de Arduino provine la un bar din Italia, Ivrea, unde fondatorii obișnuiau să se întâlnească. Plăcuța Arduino și modulele aferente fiind disponibile comercial preasamblate sau sub formă de kituri pentru asamblare ulterioară. Evoluția acestora fiind una impresionantă de la 300.000 de plăcuțe Arduino pe la mijlocul anului 2011, la peste 700.000 în anul 2013.

Având la baza un microcontroler și fiind o platformă simplu de folosit, poate fi considerată minicalculator căreia putem să îi controlăm intrările si ieșirile, capabil de a interacționa cu mediul exterior, datorită faptului ca în jurul lui există un sistem bine dezvoltat, având la dispoziție o multitudine de dispozitive și senzori cu care acesta poate crea o legătura. Fiind un sistem extrem de popular, are o varietate mare de componente cu care se poate asocia în vederea culegerii de informații.

Cu ajutorul plăcii de dezvoltare Arduino și cu componenetle necesare putem interacționa în zona transferului de date prin internet cu ajutorul plăcilor de rețea Ethernet având posibilitatea de a se conecta la rețele WIFI sau dispozitive GSM pentru Arduino sau module bluetooth. La fel de multe posibilități avem chiar dacă interacționăm cu mediu exterior prin senzori de umiditate, senzori de gaz, senzori de foc sau senzori de lumină. Putem dezvolta aplicații chiar și în zona mecanică unde există motoare de curent continuu, motoare servo sau motoare pas cu pas. Afișarea informațiilor este realizată prin intermediul ecranelor LCD, începând de la cele mai simple cum ar fi ecrane LCD text cu 16 caractere, până la ecrane grafice LCD.

La nivel comercial există mai multe tipuri de Arduino disponibile pentru utilizatori, dintre acestea putem aminti: Arduino MEGA, Arduino DECIMILA, Arduino DUEMILANOVE, Arduino MINI, Arduino NANO sau chiar Arduino BLUETOOTH. Cele mai noi produse fiind Arduino UNO si Arduino MEGA 2560.

Aceste tipuri diferă prin dimensiunea plăcii, tipul portului prin care se conectează la un calculator și prin numărul de pinii în care putem conecta diferite module pentru realizarea proiectelor.

Modelul de placă pe care l-am ales în realizarea aplicației mele este Arduino UNO R3.

Figura I.1 Placa de dezvoltare Arduino

Arduino UNO R3 este o placă de dezvoltare care are la bază un microprocesor AVR Atmel de 8 biți, un oscilator cu cuarț de 16MHz și un regulator de tensiune.

ATMEGA328PU este un microprocesor de 8 biți, un circuit integrat cu o performanță de până la 20 MIPS la o frecvență de 20MHz, având o memorie flash de 32Kiloocteți care permite scrierea și ștergerea programului din celulele de memorie, 2Kiloocteți memorie SRAM și 1Kilooctet memorie EEPROM.

Microprocesorul este destul de utilizat in proiecte și sisteme autonome având un consum redus de energie și un cost redus. Atmega328 permite conectarea dispozitivelor prin intermediul celor 14 pini digitali (dintre care 6 pini PWM), care pot fi setați ca intrare sau ieșire, toți situați pe partea superioară a plăcii, de asemenea mai cuprinde 6 pini pentru intrări analogice în care putem conecta senzori care ne indică o valoare exactă a nivelului măsurabil (de exemplu nivelul de gaz) și pini de alimentare care au la ieșire 3.3v respectiv 5v.

Pe aproape toate platformele se poate observa că pinul 13 este conectat la un led aflat pe placă, acesta este un martor de test folosit în cazul experimentelor în timpul dezvoltării programelor. Tensiune de lucru a microprocesorului fiind între 1.8 – 5.5V, având un consum de 0.2A în modul activ.

Pinii PWM (Pulse Width Modulation) sunt folosiți pentru a varia tensiunea dată de un dispozitiv electronic și schimbă foarte rapid tensiunea dată dispozitivului, din starea pornit în starea oprit și invers. În cazul practic cu ajutorul pinilor PWM vom putea modifica rotațiile pe minut a unui motor electric.

Microprocesorul Atmega328 vine de la producătorul preinstalat cu un bootloader care permite scrierea programelor în memoria flash a cipului fără a fi nevoie de programator extern. Acest bootloader este un program mic care ocupă ultimii 2 Kiloocteți ai memoriei flash, care semnalizează microcontrolerului să intre în bootloading, care în final va prelua datele de la programator și le va scrie în restul memoriei.

Programarea plăcuțelor se face prin conexiune serială, astfel încât plăcuța Arduino se conectează la calculator printr-un port USB, având integrat pe placă cip de conversie USB-serial.

Microcontrolerul folosește următoarele protocoale de comunicații: Serial (TX, RX), SPI (SS, MOSI, MISO, SCK), I2C(SDA SCL). În toate aceste comunicații transferul de date se face bit cu bit.

Figura I.2 Platforma Arduino IDE

Programele Arduino se încarcă în microprocesor cu ajutorul Arduino IDE , un program oferit gratuit de Arduino care permite scrierea pas cu pas a programelor ce urmează a fi încărcate în Arduino.

Arduino IDE fiind un mediu de dezvoltare ce oferă o combinație între limbalul de programare C si C++, având bazele proiectului Processing. Este un mediu de dezvoltare cu o interfață simplă, care poate fi ințeles și de persoanele care nu sunt familiarizate cu aceast mediu de programare.

Programele scrise în Arduino IDE se numesc sketch.Programele putând fi compilate și încărcate în microprocesor cu un singur click. Pentru ca un program să poată fi incărcat în microprocesor mai întai trebuie din meniul Tools trebuie să alegem modelul plăcii pe care o utilizăm și portul aferent plăcii pe care facem scrierea programului.

Figura I.3 Structura unui program în Arduino

Un program tipic în Arduino este format din două funcții care sunt compilate și legate de un program main. Aceste două funcții trebuie să se regăsească în orice program.Funcția setup se rulează o singură dată în momentul în care alimentăm sau dorim o resetare a plăcii.

În această secțiune se pune cod de inițializare, în care definim variabilele cu care vom opera pe parcursul programului. Funcția loop rulează în ciclu în mod repetat (de la care vine și denumirea), în această secțiune vom scrie partea principală a programului care se va execută în mod repetat până la resetarea plăcii, moment în care programul va fi reinițializat.

I.2 Modul Bluetooth HC-05

Figura I.4 Modul bluetooth HC-05

Bluetooth HC-05 este un modul compatibil cu Arduino, care ajută la conectarea wireless a dispozitivelor. Comunicațiile bluetooth au luat naștere în 1994 când compania Ericsson Mobile Communication a decis crearea unei interfețe radio cu cost redus și de mică putere.

Sistemul bluetooth este cel mai potrivit în cazul comunicațiilor pe distanțe scurte. Specificațiile bluetooth sunt capabile de a stabili conexiuni radio de până la 10 metri sau în cazuri speciale ajungând să stabilească conexiuni de până la 100 metri, fiind utilizate pentru transmisii de date sau vocale de până la 720 kbps pe canal. Datorită transferului mare al datelor, specificațiile bluetooth reprezintă una dintre cele mai avansate tehnologii de comunicare, care practic sunt acoperite de standardul IEEE 802.15.1.

Conexiunile bluetooth se încadrează într-o gamă de frecvențe de la 2.4 GHz la 2.48 GHz, utilizând salturi de frecvență a semnalului duplex de până la 1600 de salturi pe secundă. La frecvențele de 1MHz semnalul execută 79 de salturi pentru o bună protecție la interferențe. Construcția modulelor bluetooth este încapsulată într-un singur cip CMOS, în acest fel reducându-se consumul de energie și dimensiunile, necesare pentru implementarea în dispozitivele mobile.

Pentru comunicațiile vocale sunt utilizate până la trei canale vocale sincrone, fiecare canal suportând în mod sincron până la 64 kb/s. Comunicațiile de date sunt realizate de un singur canal asincron care suportă până la 723.2 kbps în sens direct în conexiune asimetrică sau 433.9 kbps în conexiune simetrică. Deoarece scopului unei rețele bluetooth este de a interconecta cât mai multe dispozitive, protocolul de sincronizare se bazează pe structura de tip master-slave. Fiecare master poate stabili o conexiune cu încă 7 dispozitive, dar numai o conexiune poate fi activă la un moment dat, iar celelalte conexiuni fiind într-un mod semi-activ.

Principalele moduri în care se poate folosi conexiunea bluetooth:

Una dintre cele mai populare aplicații fiind controlul wireless între telefonul mobil și căști la carkit-ul mașinii

La fel de populare fiind si comunicațiile wireless între dispozitivele de intrare și ieșire a unui calculator, mouse sau tastatura

Tehnologia bluetooth fiind folosită și în controlul wireless al consolei de jocuri

Comunicare wireless între calculatoare într-un spațiu limitat ca lungime, fiind necesară o lungime de bandă mică

Conexiunea bluetooth fiind folosită în echipamente medicale și receptoare GPS

Datorită faptului că semnalele radio pot fi ușor interceptate, sistemul bluetooth are incorporat câteva proceduri de securitate pentru prevenirea receptorilor nedoriți. Metodele de securizare bluetooth sunt de 3 feluri:

O rutină pentru autentificare

O metodă de securitate fiind cifrarea fluxului informațional

Generarea unei chei de sesiune, care poate fi schimbată pe parcursul unei conexiuni stabilite

În cazul conectării prin bluetooth a unui telefon mobil, un laptop, descoperirea dispozitivelor se va face în felul următor, telefonul mobil are posibilitatea de a lua rolul unui modem folosind profilul Dial-Up Networking și va fi într-o permanentă căutare a dispozitivelor care doresc să-l utilizeze. În vederea unei conexiuni, laptop-ul va utiliza o aplicație cu legătură bluetooth dial-up. Pentru ca laptop-ul să vadă ce dispozitive se află în jurul lui inițiază o procedură Inquiry pentru a verifica ce dispozitive sunt în zona. În această situație laptop-ul va trimite o serie de pachete de interogare(Inquiry), iar telefonul va răspunde cu un pachet FHS în care sunt toate datele de care are nevoie pentru crearea unei conexiuni.

Modulul Bluetooth permite o conectare serială cu alte dispozitive. Modul de conectare în circuit se face cu ajutorul celor 6 pini situați în partea inferioară a acestuia.

Pinul Key intră in setup mode dacă e HIGH înainte să îl alimentăm

Pinul VCC și GND permite alimentarea modului cu o tensiune de 5v

Pinul TXD permite transmiterea datelor

Pinul RXD permite recepționarea datelor

Pinul STATE ne indică dacă este conectat modulul

În partea superioară a modului se află antena prin care sunt transmise datele.

Figura I.5 schema pinilor bluetooth HC-05

Pe placă se află 2 leduri, unul indică dacă modulul este alimentat cu 5v tensiune continuă, iar al doilea led va funcționa intermintent în cazul în care așteaptă să fie conectat la un telefon mobil.

I.3 Senzor de gaz MQ-2

Senzorul de gaz MQ-2 este un dispozitiv capabil să identifice gazele inflamabile din aer. Pot fi folosiți în echipamente de detectare a gazelor din întreaga lume, în domeniul sănătății, aparate de măsură sau sisteme de control. Aplicațiile uzuale ale senzorilor includ alarme în locuințe sau la nivel comercial, sisteme de control a calității aerului, verificarea alcoolului în respirație sau chiar și în automobile.

Figura I.6 Senzor MQ-2

Senzorii în general sunt de 2 feluri, activi si pasivi. Senzorul de gaz MQ-2 este un senzor activ datorită faptului că acesta are nevoie de alimentare cu energie electrică pentru că nu au proprietatea de a-și mări sau micșora rezistența în funcție de un stimul extern aplicat.

Senzorii de gaz sunt formați dintr-un semiconductor din metal-oxid obținut printr-un procedeu de imprimare cu ajutorul unui ecran de mătase de peliculă groasă. Acesta include un strat chimic care este format dintr-o pastă preparată din pulbere de metal-oxid, aditivi anorganici și lianți organici. Pasta este depusă pe un suport de alumină care conține electrolizi din metal și un rezistor de încălzire, urmând ca pe urmă să fie introdusă într-un cuptor termic sau cu raze infraroșii.

Măsurarea concentrației de gaze din aer este posibilă datorită oxidului de staniu care este cel mai utilizat material în construcția senzorilor de gaz. Proprietatea senzorilor de a detecta un anume tip de gaz se face prin adăugare de catalizatori și promotori.

Principiul de funcționare a unui senzor de gas se bazează pe următoarele elemente, cum ar fi elementul detector, acesta fiind un cip, o bază pentru cipul detector și un capac prin care se face detecția de gaz. Elementul folosit pentru detectarea gazului conține materiale sensibile la un anumit tip de gaz și un element de încălzire a materialului sensibil. Sistemul de încălzire este setat la temperatura de lucru deoarece anumite tipuri de senzori lucrează la o temperatură cuprinsă între 150 și 600 grade Celsius.

Senzorii de gaz sunt clasificați după tipul de gaz pe care aceștia pot să îl detecteze, în funcție de tipul de gaz pe care îl detectează, elementul sensibil va utiliza diferite materiale, cum ar fi dioxidul de staniu(SnO2) fiind unul dintre cel mai utilizat material semiconductor sensibil la gaze, oxid de wolfram(WO3) etc.

Analiza aerului de către detectorul de gaz se face prin absorție pe suprafața cristalului primind o sarcină negativă numai atunci când un cristal de oxid este încălzit la o anumită temperatură. Rezistența electrică a substanței modificându-se chiar și în cazul unei concentrații scăzute de gaz. Electronii donatori de pe suprafața cristalului sunt transferați la oxigenul absorbit. Rezistența electrică a unui senzor este dată de o barieră de potențial, care are rolul de a întrerupe trecerea unui curent între doi electrozi.

Răspunsul senzorului în cazul detectării de gaz se face pe suprafața materialului oxidic, care imobilizează un electron din banda de conducție. În cazul unui gaz reducător în aer, acesta se combină cu oxigenul absorbit, iar fiecare atom de oxigen ce părăsește suprafața senzorului va elibera un electron în banda de conducție a semiconductorului, în acest caz mărindu-i conductivitatea.

Senzorul de gaz MQ-2 este capabil de a detecta gaze precum hidrogen, gaz metan, gaz butan, fum, propan, alcool și dioxid de carbon. Temperatura de funcționare a acestui senzor fiind cuprinsă -20 și 50 grade Celsius.

În circuitul de mai jos se pot observa componentele aflate pe plăcuța modului dar și traseul acestuia, pentru o mai buna înțelegere a principiului de funcționare.

Figura I.7 Circuitul de funcționare a senzorului de gaz

Senzorul de gaz este prevăzut cu 4 pini care asigură interfațarea cu alte componete ale unui circuit. Pinul 1 și 4 sunt folosiți pentru alimentaea modului. Senzorul de gaz trebuie alimentat dintr-o sursă de tensiune stabilizată sau cu ajutorul unui regulator de tensiune (LM7805), acesta având nevoie de o tensiune de funcționare de 5v, iar curentul necesar funcționării lui fiind 150 mA. Pinul 2 reprezintă ieșirea digitală (pin DO), care ne indică printr-un semnal logic eventualele scurgeri de gaze fără a putea măsura valoarea acestuia. Senzorul dispune de un comparator, cu ajutorul căruia putem citi date analogice în timp real și putem observa dacă concentrația de gaz a depășit o anumită valoare. Aceste semnale fiind trimise prin pinul 3 (pin AO) al modului.

În circuitul senzorului se află un potențiometru cu care putem regla sau calibra sensibilitatea senzorului pentru a putea avea niște rezultate cât mai precise. În modul sunt prezente două leduri, unul ne indică dacă senzorul este alimentat și funcționează iar al doilea led simulează ieșirea digitală, acesta va funcționa doar dacă pe ieșirea digitală vom avea 1 logic.

Senzorul de gaz are o dimensiune de 33 mm x 14 mm (lungine x lățime), perfect pentru integrarea în majoritatea proiectelor, atât fixe cât și portabile.

I.4 LCD Alfanumeric 16×2

Display-urile sunt cele mai folosite dispozitive de afișare a unui conținut sau de a prezenta informații utilizatorului. Cele mai multe dispozitive folosesc display de tip LCD (Liquid Qrystal Display). Aceste LCD-uri sunt de două tipuri:

LCD alfanumeric

LCD grafic

Modelul pe care l-am folosit în realizarea proiectului este de tip alfanumeric, modelul 16×02.

Prin construcție, afișarea caracterelor pe display poate fi:

Cu lumină pe fundal (pentru o mai buna vedere pe timp de noapte)

Figura I.8 LCD 16×02 cu lumină pe fundal

Fără lumină de fundal

Figura I.9 LCD 16×02 fără lumină pe fundal

Afișajele LCD sunt de mai multe dimensiuni, cele mai des denumite fiind după numărul de linii și numărul de coloane. Spre exemplu modelul de display folosit de mine, LCD 16×02, 16 reprezintă numărul de caractere permise pe un rând, iar 02 reprezintă numărul de rânduri pe care pot fi reprezentate caractere. De asemenea există LCD 20×04 are 4 rânduri a câte 20 caractere pe rând.

Ca procesul de afișare a caracterelor să fie cât mai simplu, pe lângă display este implementat și un microcontroler LCD care face legătura între codul scris și afișarea pe display. Majoritatea display-urilor alfanumerice dispun de controler-ul Hitachi 44780, pe display având înscripționat HD44780 , un controller ieftin și ușor de găsit. Conectarea în circuit a acestuia este posibilă datorită celor 16 pini, sau 14 pini în cazul display-urilor fără lumină de fundal.

Modelul de display pe care l-am utilizat în această aplicație este compus din 16 pini iar semnificația acestuia se poate observa în figura de mai jos:

Figura I.10 Semnificația pinilor display-ului 16×02

Display-urile alfanumerice suportă 2 moduri de transfer a datelor

Transfer pe 8 biți: Prima dată se setează caracterul ce urmează a fi afișat pe magistrala de 8 biți, apoi se setează modul RS=1 (modul caracter), iar pe urmă trimitem un impuls spre pinul Enable (E). La acest transfer se utilizează toți cei 8 biți (D0 – D7) ai microcontroler-ului aflat pe display

Transfer pe 4 biți: În acest transfer se vor utiliza doar 4 biți (D4 – D7), pe urmă vom seta modul RS = 1(modul caracter), apoi se va trimite un impuls spre pinul Enable

Figura I.11 Modul de conectare în circuit display-ului

În momentul în care dorim să afișăm caractere pe display, acestea se duc prima dată spre memoria microcontroler-ului iar pe urmă sunt trimise spre afișare. Memoria controler-ului LCD conține 3 blocuri de memorie:

DDRAM (Display Data RAM)

CGROM (Character Generator ROM)

CGRAM (Character Generator RAM)

Memoria DDRAM este folosită pentru stocarea caracterelor ce urmează a fi afișate pe ecran. Această memorie poate deține până la 80 de caractere dintre care doar 16 caractere pot fi vizibile. Pentru a putea afișa toate cele 80 de caractere trebuie să configurăm ecranul să incrementeze automat caractere de la stânga la dreapta. Toate caracterele trimise pe liniile D4 – D7 se vor afișa de la stânga la dreapta începând de la adresa de start. În cazul în care se trimit mai multe caractere, acestea se pot afișa dacă vom folosi comanda SHIFT care va muta fereastra vizibilă spre celelalte zone de memorie. Conținutul acestei memorii se pierde la doconectarea alimentării.

Figura I.12 Modul de operare al memorie DDRAM

În memoria CGROM este stocat un set de caractere care pot fi afișate în momentul în care dorim afișarea lor. Această zonă de memorie este alocată fiecărui caracter și conține toate variantele pe care le poate afișa microcontroler-ul. Practic în momentul în care utlizatorul dorește afișarea unui caracter, acesta nu se crează ci este luat din memoria CGROM.

Figura II.13 Setul de caractere stocat în CGROM

Memoria CGRAM este responsabilă cu modul de afișare a caracterelor pe display. Acestea este sub formă matriceală de tipul 8×5 a unui singur caracter. Fiecare caracter are nevoie de 64 octeți dintre care doar primii 5 biți sunt utlizați.

Figura II.14 Modul de afișare a caracterelor

I.5 Buzzer

Buzzer-ul este un mic difuzor folosit de majoritatea aparaturilor pentru redarea sunetelor de avertizare, sunetelor de alarmă sau sunetele care reprezintă o notificare. Buzzer-ul poate fi de tip mecanic, piezoelectric, electromagnetic sau electromecanic. Acesta emite sunet de frecvență înaltă, plaja de frecvență cuprinsă între 4000 Hz și 20000 Hz. Frecvența reprezintă numărul de unde care oscilează într-o perioadă de timp. Urechea umană este capabilă să recepționeze sunete cuprinse între 20Hz și 20000 Hz.

Acestea pot emite sunete pe baza unui generator de ton sau fără utilizarea unui generator de ton. La buzzer-ul care utilizează generator de ton e suficient să alimentăm buzzer-ul cu o tensiune de alimentare cuprinsă între 3 și 7 volți, tensiune continuă. În cazul buzzer-ului care nu utilizează generator de ton, o avem avantajul față de cele ce utilizează generator de ton, că utilizatorul poate să aleagă tonul emis prin cod sursă scris în memoria microcontroler-ului. Acestea pot sa funcționeze o tensiune de alimentare alternativă care au la bază o bobină cu care se face generarea de sunet.

Modelul de buzzer pe care îl folosesc în aplicație este un buzzer piezoelectric. Principiul de funcționare a unui buzzer piezoelectric constă în acumularea de sarcini electrice asupra unui cristal de cuarț și anumite produse ceramice ce reacționează la presiune. Curentul de lucru a acestui buzzer fiind de 40mA.

Figura I.15 Buzzer

Nivelul acustic este de 85 dB, montarea în circuit se face cu ajutorul celor 2 pini care se introduc prin placă. Buzzer-ul este o componentă mică ca dimensiune având un diametru de 12 mm și o înălțime de 7.5 mm. Acesta poate opera într-un mediu cu temperatură cuprinsă între -20 și 70 grade Celsius.

CAPITOLUL II. Implementare hardware

II.1 Schema circuit

Implementarea hardware reprezintă aplicarea practică a părții software, și este alcătuită dintr-un număr de componente care conectate într-un circuit pot îndeplini anumite cerințe ale utilizatorului. Orice proiect care va conține o partea software, acesta trebuie în mod implicit să conțină și partea hardware care face posibilă rularea softului.

Primul pas pentru realizarea aplicației a fost crearea circuitului într-un simulator pentru a putea verifica și testa funcționalitatea circuitului fără a există posibilitatea de avariere a componentelor. De asemenea cu ajutorul unui simulator putem să ajustăm parametri unui circuit și ne oferă posibilitatea de a interacționa cu o mulțime de instrumente de măsura de care nu dispunem în momentul în care dorim să implementăm fizic acel circuit.

Pentru simularea circuitului am folosit versiunea demo a programului Proteus. Acesta nu se găsește în varianta gratuită, ci doar dacă este cumpărat. Cu ajutorul acestui program se poate testa circuitul din punct de vedere funcțional, în momentul când creem un proiect în Proteus, avem posibilitatea de a ne crea traseul pe placă, iar în cazul în care folosim microcontroler ce trebuie programat avem posibilitatea de a simula încărcarea codului sursă în memoria microcontroler-ului. În situația în care dorim să simulăm diferite circuite și nu dispunem de acele componente în librăria programului, Proteus permite importarea unor noi librării pe care le putem utiliza în realizarea proiectelor.

Circuitul detectorului de gaz (figura II.1) constă în conectarea simultană a modulelor la microprocesorul Atmega328. În conectarea senzorului de gaz cu Arduino se folosește pinul de ieșire analogică a senzorului care este conectat la pinul de intrare A4 analogică a plăcii, și pinul de ieșire digitală a senzorului cu pinul 7 al plăcii Arduino, pin definit ca și intrare digitală, și prin care este trimis semnalul de detecție.

Modulul bluetooth este conectat la placa de dezvoltare prin pinii 9 și 10 (pinul 9 folosit pentru trimitere date spre Arduino, iar pinul 10 folosit pentru recepționarea datelor), pini care sunt folosiți în comunicarea serială cu modulul bluetooth.

Figura II.1 Schema hardware a detectorului de gaz

Conectarea ecranului în circuit se face prin cei 4 pini de date (D4 – D7) deoarece de face transfer de date pe 4 biți și nu e nevoie de 8 pini, și se mai folosește pinul 4 pentru a indica că se trimit caractere și pinul 6 care validează printr-un impuls caracterele trimise. În pinul 3 (pinul VEE) al ecranului se conectează un potențiometru de 10KOhm la 5v și GND care servește la reglarea luminozității ecranului. Montarea unui potențiometru de valoare mai mare sau mai mică va influența luminozitatea ecranului astfel încât acesta nu va putea atinge punctul minim sau maxim de luminozitate.

Buzzer-ul este conectat în circuit la pinul 13 al plăcii Arduino, pinul 13 fiind definit ca și ieșire de semnal. Pe lângă atenționarea vizuală primită din partea ecranului, am adăugat câteva led-uri care semnalizează următoarele evenimente:

Led-ul albastru este conectat la pinul de ieșire microcontroler-ului care trimite semnal spre electrovalvă. Alimentarea led-ului este dimensionată cu un rezistor a cărui valoare este calculată cu formula Legii lui Ohm, știind că tensiunea este 5v, iar intensitatea curentului prin led este de 25 mA.

I =U/R – Legea lui Ohm

I = 0.025 A

U (led)= 2v

R= U/I = 3/0,025 = 120 Ohm

Din acest calcul reiese că pentru un led care are nevoie de 2v pentru funcționare, alimentarea acestuia realizându-se la 5v atunci avem nevoie de o rezistor de 120 Ohm pentru a funcționa la o tensiune de lucru necesară led-ului.

Led-ul galben ne indică faptul că aplicația este pregătită pentru eventuale detecții.

Am ales să folosesc led-uri ca și martor de semnal deoarece au autonomie ridicată și un consum scăzut de energie.

Modul de verificare a funcționării corecte a electrovalvei l-am implementat prin intermediul unui fir care trimite un semnal de 5v de la electrovalvă spre pinul 8 al plăcii Arduino. Datorită faptului că electrovalva va funcționa cu o tensiune de alimentare de 5v, microcontroler-ului va sesiza imediat dacă acea tensiune de 5v nu va fi primită în cazul unei deconectări. În cazul în care se va folosi o tensiune mai mare de 5v pentru alimentarea electrovalvei, semnalul trimis spre pinul 8 va putea fi dimensionat astfel încât placa Arduino să primească o tensiune maximă de 5v.

Semnalul transmis spre electrovalvă are o tensiune de 5v care va intra în baza unui tranzistor NPN (BC547) care va crea conducție între colectorul și emitorul tranzistorului care are rolul de a închide circuitul releului care va acționa electrovalva. Tranzistorul are rol de protecție a microprocesorului datorită faptului că releul este construit dintr-o bobina care atunci când deschide circuitul va trimite un impuls spre microprocesor căreia îi poate fi afectată funcționarea. Tranzistorul are rolul și de a acționa releul la o tensiune mai mare de 5v care să fie suficientă pentru a putea închide circuitul în releu. Releul folosit în aplicație poate fi folosit în tensiuni de până la 250V și o intensitate maximă de 8A, iar bobina releului acceptă o tensiune de lucru de maxim 12v.

Pentru ca toate componentele să funcționeze la tensiune de lucru optimă, fără să existe situații în care trebuie să schimbăm sau să încărcăm acumulatori, am implementat o sursă de alimentare care furnizează componentelor tensiunea de lucru dar care în același timp încarcă un acumulator. Rolul acumulatorul este de a asigura funcționarea aplicației în situațiile în care sunt întreruperi de energie electrică.

Energia electrică este conservată într-un acumulator plumb-acid 6v 5Ah. Acest tip de acumulatori au avantajul că pot conserva o cantitate mare de energie pe o perioadă îndelungată de timp. Aceștia necesită o atenție mare la încărcare deoarece există risc de explozie în cazul în care încărcarea se face forțat la o tensiune mult prea mare. Tensiunea aplicată la bornele acumulatorului în timpul unei încărcări nu trebuie să depășească 2v peste tensiunea de lucru a acumulatorului. Astfel la un acumulator de 6v tensiunea maximă aplicată la bornele acestuia nu trebuie să fie mai mare de 8v. Intensitatea curentului în timpul unei încărcări fără să existe riscul unor accidente trebuie să fie de 10% din capacitatea totală a acumulatorului, în acest caz un acumulator de 5A se va încărca cu o intensitate de 500mA timp de 10 ore. În urma testelor efectuate asupra autonomiei de funcționare a acumulatorul, detectorul de gaz poate să funcționeze fără energie electrică aproximativ 40 de ore în condițiile în care acumulatorul este încărcat la momentul decuplării alimentării de la rețea.

II.2 Sursa de alimentare

Funcționarea normală și corectă oricărui aparat electronic necesită alimentarea acestuia de la surse de tensiune la care variațiile de alimentarea să nu depășească anumite limite, dependente de performatele aparatului. Principala sursă de energie electrică folosită la alimentarea aparaturii electronice o constituie rețeaua de curent alternativ. Conversia energiei de curent alternativ în energie de curent continuu se realizează cu sisteme de redresare.

Pentru realizarea circuitului de alimentarea a detectorului de gaz am folosit redresarea în punte. Schema de redresare în punte folosește 4 diode montate astfel încât să formeze un pătrat. Tensiunea alternativă se aplică pe o diagonală iar tensiunea redresată pe cealaltă diagonală. Montajul de redresare în punte de folosește destul de des la redresoarele cu diode semiconductoare. Aceasta are avantajul față de montajul cu redresarea ambelor alternanțe că diodele sunt supuse unei tensiuni inverse de două ori mai mici deoarece în cursul funcționării ele apar legate în serie două câte două.

Sursa de alimentare constituie un element important în realizarea unei aplicații care să ofere siguranță și stabilitate.

Toate componente aplicației sunt alimentate la o tensiune de 5v, astfel încât placa Arduino nu furnizează tensiune de alimentare, fiind folosită doar pentru prelucrarea semnalelor.

Circuitul sursei de alimentate a fost simulat cu ajutorul unui program gratuit Livewire, un program util celor ce doresc să studieze în profunzime principiul de funcționare a circuitelor electrice, acest program permite crearea traseul unui circuit pentru a-l putea aplica pe placă. Programul Livewire oferă o altă viziune asupra circuitelor electrice astfel încât putem observa sensul curentului în circuit, iar în acest fel ne putem da seama foarte ușor de eventuale greșeli de proiectare.

Figura II.2 Sursă de alimentare

Sursa de alimentare este alcătuită dintr-un transformator care furnizează o putere aparentă de 10 VA și o tensiune de 12V, un regulator LM350 cu care utilizatorul poate să își regleze tensiunea de lucru și un tranzistor care servește la încărcarea acumulatorului. Regulatorul de tensiune LM350 poate să furnizeze o tensiune reglabilă între 1.2v și 33v la o intensitate de curent de până la 3A. În componența circuitului se află o diodă Zenner folosită pentru limitarea tensiunii de alimentare a baterie, un potențiometru și un led care indică faptul că acumulatorul s-a încărcat.

În procesul de stabilizare a tensiunii de alimentarea am folosit stabilizarea serie. Aceasta constă în plasarea elementului regulator în serie cu rezistența de sarcină. În acest caz elementul regulator se comportă ca o rezistență variabilă ca cărei mărime este controlată de tensiunea de ieșire V0 prin bornele 2 și 3. Când tensiunea de intrare Vi crește, tensiunea V0 de ieșire tinde să urmărească creșterea, și acționează asupra elementului regulator care își mărește rezistența intre bornele 1 și 2. În acest mod creșterea tensiunii la intrare va fi compensată de căderea de tensiune ce se înregistrează între bornele 1 și 2, și ca atare tensiunea de ieșire va reveni la valoarea anterioară.

Figura II.3 Stabilizator de tensiune

Când tensiune la baterie este sub 7.5v, atunci curentul de la regulator va trece spre acumulator, în acest caz dioda Zenner nu va crea conducție deoarece tot curentul va fi absorbit de acumulator. În momentul în care tensiunea la bornele acumulatorului va depăși 7.5v, încărcarea bateriei se va opri deoarece dioda Zenner primește suficientă tensiune pentru a permite curentului să treacă prin ea. În acest fel baza tranzistorului va primi suficient curent pentru a crea conducție între colector și emitor astfel încât curentul din regulator va trece prin tranzistor direct la masă, astfel încât led-ul roșu va semnala că acumulatorul este încărcat.

În circuitul sursei de alimentare este montat un potențiometru cu care putem să ajustăm tensiunea și intensitatea curentului în momentul încărcării, pentru a efectua o încărcare mai rapidă. Pentru a nu solicita acumulatorul, am dimensionat intensitatea curentului prin circuitul de încărcare a bateriei la 150 mA, deoarece acesta este proiectat pentru a funcționa în permanență cu energie de la rețeaua electrică. În cazul în care dorim să încărcăm acumulatorul într-un timp scurt trebuie să avem mare atenție ca intensitatea curentului ce străbate acumulatorul să nu depășească limitele impuse de producătorul acumulatorului. Atenție sporită trebuie să acordăm și regulatorului deoarece în cazul în care acumulatorul se încarcă la o intensitate de curent mai mare de 150mA, acesta tinde să se încălzească fiind nevoie de atașarea unui radiatorul pentru a asigura temperatura de lucru a regulatorului. În caz contrar acesta riscă să intre în protecție termică sau defectarea acestuia.

II.3 Implementarea traseul de circuit pe placă

Pentru ca aplicația să primească un alt aspect iar firele acesteia să fie mai ușor de recunoscut, am decis să implementez circuitul pe o placă de textolit care este acoperită de cupru doar pe o singura față. Dimensiunea plăcii pe care am folosit-o este de 150 mm x 200 mm.

Primul pas a fost să creez circuitul în Livewire, un program care permite și simularea circuitelor, și să mă asigur că toate traseele sunt executate corect.

Figura II.4 Circuitul în Livewire

Pe urmă circuitul generat de program a fost printat pe foaie lucioasă subțire având o densitate de 135 mg. Printarea fiind făcută în modul de lucru a programului fără să mai introduc contur în circuit.

Figura II.5 Traseu printat pe foie luciosă

După printarea traseului se ia foaia și se lipește de placa de textolit pe partea pe care se află cuprul. Pentru a se face lipire traseului pe placă, atât foia cât și placa se încălzesc uniform timp de 7 – 8 minute. Ca exemplu pentru încălzirea foaiei și a plăcii am folosit un fier de călcat.

În momentul când placa este foarte bine încălzită și călcată, acesta se pune în apă până se dezlipește toată hârtia, astfel încât pe placă rămane doar traseul.

Figura II.6 Dezlipirea hârtiei de pe placă

Din cauză că fiind prea nerăbdător nu am încălzit suficient placa, traseul avea unele zone unde nu s-a imprimat corect circuitul iar la dizolvarea în acid riscam să întrerup traseul. Ca și soluție de dezvoltare am desenat manual tot traseul cu lac, acesta nefiind afectat de acid.

Figura II.7 Desenare manuală a traseului

După desenarea traseului am continuat cu introducerea plăcii în clorură ferică. Este un acid folosit pentru corodarea cuprului de pe placă. Clorura ferică este toxică fiind interzisă utilizarea fără mânuși de protecție. Placa a fost ținută timp de 15 minute în acid pentru a se putea elimina orice urmă de cupru care la rândul său ar putea să creeze câmp electromagnetic datorită tensiunii ce îl străbate.

Figura II.8 Introducerea plăcii în acid

Figura II.9 După 13 minute în clorură ferică

În final placa se spală de acid și pe urmă se curăță de lac cu diluant sau acetonă, fiind gata de utilizare. Ultimul pas constă în găurirea plăcii în locurile unde se introduc componentele. Procesul unei asemenea plăci durează aproximativ o oră în condițiile în care am desenat traseul manual.

Figura II.10 Îndepărtarea acidului de pe placă

Figura II.11 Varianta fără găuri a plăcii

CAPITOLUL III

Implementare software

III.1 Schema logică

Figura III.1 Schema bloc a programului

Schemele logice reprezintă notații grafice formate din blocuri legate între ele prin săgeți. O schemă logică descrie grafic pașii unui algoritm și specifică prelucrările care se execută asupra datelor.

În această schemă este prezentat modul de creare a programului pentru această aplicație. Programul este structurat în mai multe blocuri de decizie, în care se cere intervenția utilizatorului.

În prima etapă a programului se execută o inițializare prin care utilizatorul este atenționat că aplicația este pregătită de funcționare. Înainte ca programul să ia datele de la senzor și să le transmită spre utilizator am implementat o verificare a electrovalvei, astfel încât utilizatorul va ști dacă aceasta este conectată sau nu funcționează în parametri normali.

În blocul de decizie ”ev offline” se verifică dacă electrovalva are o problemă sau nu este conectată, pe ramura ”DA” se va merge dacă electrovalva prezintă o problemă, iar pe ramura ”NU” daca electrovalva funcționează normal. Dacă programul va merge pe ramura ”NU” se programul va fi pregătit să facă citirea valorilor trimise de la senzor. Dacă programul va merge pe ramura ”DA”, se va trece automat într-un alt bloc în care utilizatorului i se afișează mesajul ”EV OFFLINE”, care din nou este urmat de un bloc de decizie în care se cere intervenția utilizatorului care trebuie să transmită caracterul ”k”, în acest fel se transmite mesajul că electrovalva s-a conectat și că programul poate să treacă la următorii pași. Dacă mesajul nu este transmis programul va rămâne în blocul în care afișează mesajul ”EV OFFLINE”.

Detectarea gazului se face cu un alt bloc de decizie, în care decizia este luată de către senzorul de gaz. Dacă acesta detectează gas, programul va merge pe ramura ”DA” care pe urmă va trece într-un alt bloc în care va acționa asupra instalației de gaz și va transmite utilizatorului atât semnal luminos dar și acustic că s-a detectat gas. În situația în care nu este detectat gaz programul revine la blocul anterior în care va citi valorile de gaz primite de la senzor.

Reinițializarea programului se face cu alt bloc de decizie prin care se cere intervenția utilizatorul pentru transmiterea caracterului ”r” care face ca programul să treacă în primul bloc în care se face inițializarea programului. Comanda aceasta se realizează în momentul în care utilizatorul a făcut în prealabil o verificare a instalației de gaz, sau îndepărtează cauza care a dus la declanșarea sistemului de închiderea a conductei principale de alimentare cu gaz a unei încăperi.

III.2 Prezentare program

Programul acestei aplicații a fost scris și compilat în mediul de dezvoltare oferit de compania Arduino, Arduino IDE. Programul se execută de sus în jos cu ajutorul funcțiilor și a comenzilor. La începutul programului am asignat fiecare pini pe placa, astfel încât aceștia să fie configurați ca intrări și ieșiri, fiecare având rolul sau în circuit.

Detectarea gazului

În secvența de cod de mai jos este prezentat modul în care se face detecția, avertizarea acustică și afișarea mesajului atât pe ecran cât și transmiterea prin bluetooth a mesajului de avertizare.

Figura III.2 Detectarea și afișarea gazului

Variabila gasStatus citește semnalul digital primit de la senzorul de gaz. În momentul când senzorul de gaz este activ dar nu a găsit o anumită concentrație de gaz în aer, acesta trimite trimite o tensiune de 5v până în momentul când are loc o detecție. În momentul detecției senzorul trimite un semnal logic 0v spre microcontroler iar acesta va trimite o tensiune de 5v spre ledPin.

Avertizarea acustică

Funcția playTone se execută în buclă odată la 400 ms timp de 200ms, aceasta conține numele pinului spre care se trimite semnalul, și are rolul de a ne avertiza acustic atât la pornirea aplicației cât și în cazul unei detecții. Generarea sunetului făcându-se cu ajutorul variabilei tone care cuprinde 3 valori:

13 reprezintă pinul către care se trimite semnalul

2500 reprezintă frecvența sunetului emisă

200 reprezintă durata de generare a sunetului

Figura III.3 Funcția playTone

Afișarea mesajelor pe display

Afișarea pe ecran a mesajului de avertizare se face prin intermediul funcției gasDetect care este apelată în buclă urmat de un efect luminos în care lumina ecranului se stinge și se aprinde doar în cazul în care senzorul detectează gaz. In figura III.4 este prezentată structura funcției gasDetect.

Figura III.4 Funcția gasDetect

În această secvență de cod se inițializează ecranul pe numere de rânduri și coloane. Pe urmă lcd.clear șterge eventualele caractere de pe ecran pentru a nu se suprascrie cu caracterele ce urmează a fi afișare. Lcd.cursor setează cursorul să afișeze un anumit mesaj pe rândul pe care dorim să afișăm mesajul. Luminozitatea ecranul va fi intermitentă doar în situația în care senzorul va trimite un semnal logic 0v. După ce sistemul va închide alimentarea cu gaz, pe ecran se va afișa doar mesajul fără să mai fie lumină intermitentă.

Verificarea electrovalvei

Verificarea electrovalvei se face cu ajutorul funcției checkValve care este apelată în buclă din simplul motiv că, dacă intervine o problemă a electrovalvei, notificarea o primim indiferent de etapa la care se află programul.

Figura III.5 Funcția de verificare a electrovalvei

Verificarea electrovalvei este făcută cu ajutorul variabilei ev_status care citește un semnal digital trimis de la electrovalvă spre microcontroler. Semnalul transmis de la electrovalvă este o tensiune de 5v. În cazul în care semnalul trimis este 0v sau electrovalva nu este conectată la microprocesor atunci se îndeplinește condiția ev_Status == LOW, și se execută afișarea pe ecranul telefonului prin semnal bluetooth, afișarea pe ecranul montat în circuit dar și avertizarea sonoră.

În figura III.6 este reprezentată bucla while cu care putem transmite comenzi microcontroler-ului atât timp cât ev_status == 0, practic electrovalva nu funcționează. Datorită acelui while doar în această funcție putem trimite caracterul ”k”, prin care transmitem microcontroler-ului că electrovalva este funcțională.

Figura III.6 Transmiterea de comenzi în cadrul funcție checkValve

Ca și măsuri de siguranța privind utilizatorul am implementat o comandă care va activa închiderea circuitului în cazul în care electrovalva va semnala erori. În momentul în care s-a trimis comanda de confirmare că s-a remediat orice problemă, electrovalva se va dezactiva pentru a fi pregătită de a reacționa în cazul unor detecții.

Citirea valorilor analogice

Afișarea valorii senzorului este posibilă datorită funcției valueSensor, funcție prin care se face citirea semnalului analogic trimis pe ieșirea analogică a senzorului MQ-2. Funcția valueSensor este apelată în funcția loop a programului astfel încât concentrația de gaz va fi afișată pe toată durata execuției programului.

Figura III.7 Funția valueSensor

Capitolul IV

Mod de utilizare

Modul de utilizare este important în folosirea oricărui aparat, deoarece putem preveni defectarea acestora. Pentru a putea utiliza toate opțiunile detectorului de gaz este nevoie de un telefon dotat cu bluetooth și de o aplicație „bluetooth terminal” care se găsește în google play.

Modul de utilizare a senzorului de gaz constă în câțiva pași simpli de urmat. Primul lucru care trebuie făcut pentru a asigura funcționarea acestuia este să conectăm acumulatorul și să îl alimentăm la rețeaua electrică a locuinței. După alimentare se va aprinde un led galben și se va auzi un sunet intermitent care indică faptul că aplicația este pregătită de funcționare. În acest moment aplicația funcționează doar că nu putem primi notificări pe telefon. Pentru a putea recepționa notificările trebuie să ne conectăm prin bluetooth la aplicație în felul următor. Se activează bluetooth, pe urmă se deschide aplicația „bluetooth terminal”, iar din meniul aplicației se selectează opțiunea „connect a device”. În acest moment se va deschide o fereastră în care putem vedea numele modulului bluetooth, acesta fiind „HC-05”.

În momentul în care dorim să creem conexiunea, ni se va cere o parolă de acces, aceasta este setată de către modul „0000”.

După ce am realizat conexiunea aplicația va afișa primul mesaj trimis de către modului bluetooth, acesta fiind „SYSTEM ON”, iar pe ecran va fi afișat același mesaj și valoarea detectată în acel moment. În cazul în care electrovalva nu este conectată, atât pe telefon cât și pe ecran se va afișa mesajul „EV Offline” împreună cu un sunet de avertizare, moment în care utilizatorul trebuie să trimită caracterul „k” care în prealabil verifică montajul să fie totul conectat. Alt caracter nu va avea nici nu efect dacă va fi introdus. După ce am trimis tasta care indică faptul că eroarea sa remediat utilizatorul va primi mesajul „EV Connected”.

În momentul în care s-a făcut o detecție, se va afișa mesajul „GAS DETECT” atât pe ecran cât și pe aplicația telefonului, urmat de un sunet de avertizare, moment în care un led albastru ne indică faptul că sistemul de protecție împotriva scurgerilor de gaze este activat.

Pentru reinițializarea programului se va trimite de pe aplicația telefonul caracterul „r”, moment în care programul se reia de la început.

Sursa de alimentare are un led roșu care atunci când luminozitatea acestuia este mică, acumulatorul se încarcă, iar dacă luminozitatea led-ul este mărită acumulatorul este încărcat.

Concluzii

Pe parcursul acestei lucrări au fost prezentate cele mai importante elemente necesare dezvoltării unei aplicații bazate pe un mediu de programare Arduino. Aplicația are rolul de a oferi protecție în cazul scurgerilor de gaz ce pot apărea într-o încăpere Am ales să creez această aplicație cu ajutorul plăcii de dezvoltare Arduino datorită compatibilității acesteia cu majoritatea modulelor, și pentru că limbajul de programare este ușor de înțeles.

În capitolul I sunt prezentate echipamentele care alcătuiesc proiectul, specificațiile echipamentelor precum și modul lor de funcționare. În acest capitol este prezentat mediul de programare folosit precum și importanța acestuia în realizarea diferitelor aplicații.

Capitolul II conține schema circuitului, conectarea fizică a plăcii Arduino cu componentele cu care comunică. Tot în acest capitol este prezentată sursa de alimentare care are rolul de a asigura tensiunea de lucru fiecărei componente, precum și principiul de funcționare și de încărcare a acumulatorului. În componența acestui capitol este inclus și modul de imprimare a circuitului pe placă cu textolit. Aici este prezentată pas cu pas procedura de imprimare a circuitul pe placă, acesta fiind un mod accesibil și ușor de realizat în cazul în care se dorește ca proiectele realizate să aibă un alt aspect și o durată de viața prelungită.

Capitolul III este structurat în două subcapitole. În primul subcapitol este prezentă schema bloc a programul care face posibilă conectarea la nivel logic a componentelor utilizate precum și o scurtă descriere a acesteia în care se explică fiecare etapă de executare a programului. În al doilea subcapitol este prezentat codul sursă aparținând fiecărei componente în parte.

Consider că realizarea acestei aplicații reprezintă un punct comun în vederea acumulării de cunoștințe noi sau a dezvoltării pe plan profesional, deoarece realizarea acestei aplicații necesită cunoștințe atât din domeniul programării, domeniul electronicii aplicate cât și a procesului de manufacturare.

Posibile viitoare dezvoltări ale aplicației

În momentul de față detectorul de gaz este un mic proiect a cărui sarcină este detectarea, atenționarea prin intermediul telefonului și a unei conexiuni bluetooh și acționarea împotriva scurgerilor de gaze. Acesta având ca scop utilizarea în medii închise. Senzorul de gaz este proiectat pentru detectarea gazelor precum hidrogen, gaz metan, propan, alcool și dioxid de carbon.

Ca și posibile dezvoltări viitoare, detectorul de gaz poate fi modificat astfel încât acesta să fie capabil să recunoască mai multe tipuri de gaze cum ar fi etanol, gaz natural sau monoxid de carbon. Se poate acționa asupra modului de transmitere a informației către utilizator. În acest fel se poate implementa transmiterea datelor prin wireless, sau prin sms direct către numărul de telefon al utilizatorului.

Momentan aplicația este folosită doar pentru detecția gazelor, aceasta având posibilitatea de a i se atașa mai muți senzori de mai multe tipuri (lumină, umiditate sau mișcare) astfel încât aplicația devine o minicentrală pentru o casă sigură și inteligentă. Modulul MQ-2 poate fi folosit în detectarea vaporilor de alcool din aer, astfel încât montat într-un automobil, acesta poate detecta dacă șoferul a consumat băuturi alcoolice.

Detectorul de gaz poate fi dezvoltat astfel încât să poată fi utilizat la nivel industrial pentru măsurarea nivelului de dioxid de carbon în incinta unei hale de producție.

ANEXE

Mai jos este prezentat codul sursă al acestei aplicații

Figura 1 Circuitul senzorului de gaz

Figura 2 Transformatorul folosit pentru alimentare

Figura 3 Acumulatorul plumb-acid

Figura 4 Intensitatea curentului când circuitul este alimentat la rețea

Figura 5 Intensitatea curentului când circuitul este alimentat de acumulator

Similar Posts