Autor: Andra-Amalia Dragne
Dispozitivul realizat a pornit de la ideea verificarii nivelului de poluare cu CO2 din locul unde acesta este amplasat, iar, pentru o mai buna cunoastere a particularitatilor calitatii aerului, in special, din interior, au fost adaugate functionalitatile suplimentare de afisare pentru temperatura si umiditate.
La placuta Arduino sunt conectati cei doi senzori, cel de umiditate si temperatura si cel pentru detectarea nivelului de gaz, iar rezultatele preluate de la acestea sunt afisate pe ecranul LCD. Schema bloc este urmatoarea:
Piesele utilizate in cadrul proiectului sunt urmatoarele:
Piese |
---|
Placuta Arduino NANO |
Senzor de temperatura si umiditate DHT11 |
Senzor de gaz MQ-135 |
LCD 16 x 2 I2C |
Fire jumper |
Fire mama-tata |
Breadboard |
Atat placuta Arduino, cat si cei doi senzori, au fost plasati pe breadboard, iar LCD-ul, in afara placii. Conexiunile dintre fiecare senzor si LCD, respectiv, Arduino, realizandu-se in conformitate cu specificatiile fiecaruia, care pot fi gasite la urmatoarele adrese:
Senzor MQ-135
Senzor DHT11
LCD 16x2 I2C
Datele preluate de la cei doi senzori sunt ulterior afisate pe ecranul LCD-ului. Schema electrica astfel obtinuta este:
Mediul de dezvoltare utilizat a fost IDE-ul propus de Arduino.
Am utilizat urmatoarele biblioteci:
LiquidCrystal_I2C.h si Wire.h - pentru conectarea la display si afisarea rezultatelor pe acesta, utilizand functii predefinite
DHT.h - pentru a putea prelua datele de la senzorul de temperatura si umiditate si pentru a putea folosi functiile incluse in biblioteca
Programul contine doua functii relevante pentru proiect, care sunt ulterior apelate in functia de loop.
Prima este cea in care evaluez datele primite de la senzorul de gaz, in urma careia determin daca nivelul de CO2 din amplasamentul curent este specific mediului sau daca acesta reprezinta un potential risc pentru cei din jur. Intervalele au fost stabilite in urma analizei datelor din studiile de specialitate, unul dintre acestea regasindu-se la adresa urmatoare.
In ceea ce priveste functia in care preiau si afisez datele de la senzorul DHT11, codul a fost preluat si adaptat din exemplul oferit in cadrul librariei (DHTtester), intrucat aceste date nu au mai fost prelucrate sau interpretate, ci doar afisate ca atare.
Prezentarea video se gaseste la adresa urmatoare:
Demo Air Pollution Detector
Rezultatele obtinute, in urma testarii dispozitivului in mediul interior, sunt:
A fost primul meu proiect de acest tip, in care am imbinat partea de hardware cu cea de software. Astfel, am dobandit cunostinte despre componente pe care cel mult le utilizasem in forma digitala, in programe cum ar fi Tinkercad, insa experienta in sine de realizare a proiectului mi-a oferit oportunitatea de a aprofunda aceasta parte si, simultan, de a ma familiariza si cu anumite concepte simple de hardware.
Problemele intalnite au fost calibrarea senzorului de gaz, deoarece acestuia trebuie sa i se aplice o tensiune de 5V in prealabil pentru incalzire, si faptul ca breadboard-ul nu realizeaza intotdeauna conexiunile intre Arduino si celalalte piese, facand anumite testari deficitare. La finalul proiectului, ansamblul este functional, asa cum se poate vedea si in sectiunea de Rezultate obtinute, iar rezultatele sunt cele scontate, raportate la mediul de testare.
Arhiva ce contine atat codul sursa, schemele bloc si cea electrica, cat si imaginile corespunzatoare rezultatelor finale, se regaseste aici
Pe langa link-urile mentionate in sectiunile anterioare, am utilizat resurse si de la urmatoarele adrese:
Resurse hardware:
Robofun
ArduShop
Resurse software:
Resurse din cadrul cursului de PM
Draw.io
Tinkercad
Librarie LCD
Librarie senzor DHT