Prin intermediul acestui proiect, utilizatorul poate obține informații esențiale despre condițiile de mediu din jurul său, ceea ce poate fi util în diverse aplicații, cum ar fi monitorizarea vremii, controlul climatului în interiorul unei încăperi sau monitorizarea nivelului de radiație UV pentru protecția sănătății.
Proiectul combină mai multe componente hardware și software pentru a crea un sistem funcțional și versatil de monitorizare a mediului.
Această schemă bloc arată modul în care aceste module interacționează între ele pentru a colecta date de la senzori și a le afișa pe un afișaj LCD.
1.Hardware:
2.Software:
Interacțiunea dintre modulele hardware și software este următoarea: Arduino inițializează și configurează senzorii și afișajul LCD. Apoi, Arduino preia datele de la senzori în mod regulat și le afișează pe afișajul LCD. Astfel, utilizatorul poate vedea în timp real informațiile despre temperatura, umiditatea, presiunea atmosferică și nivelul de radiație UV în mediul ambiental.
Această schemă bloc și descrierea asociată oferă o viziune generală asupra modului în care modulele hardware și software ale proiectului interacționează între ele pentru a crea un sistem de monitorizare a mediului ambiental funcțional și eficient.
Schema electrica a circuitului:
Rezultate ale simularii: Simulare1: Linia 1:
Linia 2:
Simulare1: Linia 1:
Linia 2:
Pentru acest poiect am folosit Arduino IDE pentru a programa pe Arduino UNO intrucat este o aplicație ușor de utilizat și gratuită, care oferă o serie de funcționalități utile pentru dezvoltarea proiectelor pe platforma Arduino.
Librarii:
Listarea algoritmului:
#include <Wire.h> #include <LiquidCrystal_I2C.h> #include <dht.h> #include <Adafruit_BMP085.h>
#define dht_apin A0 #define UV_SENSOR_PIN A1
LiquidCrystal_I2C lcd(0x3F, 16, 2); Adafruit_BMP085 bmp; dht DHT;
void setup() {
lcd.init(); lcd.clear(); lcd.backlight(); bmp.begin();
}
void loop() {
DHT.read11(dht_apin); float temperature = DHT.temperature; float humidity = DHT.humidity; float pressure = bmp.readPressure() / 100.0; int uvValue = analogRead(UV_SENSOR_PIN); lcd.clear(); lcd.setCursor(0, 0); lcd.print("T:"); lcd.print((int)temperature); lcd.print("C");
lcd.setCursor(6, 0); lcd.print("H:"); lcd.print((int)humidity); lcd.print("%"); lcd.setCursor(0, 1); lcd.print("P:"); lcd.print(pressure); lcd.print("hPa"); lcd.setCursor(12, 0); lcd.print("UV:"); lcd.print(uvValue); delay(5000);
}
Detaliere a algoritmului:
Initializarea:
Citirea datelor:
Afișarea datelor pe LCD:
Pauză și repetare:
1.Afișarea temperaturii: Pe afișajul LCD, veți putea vedea temperatura ambientală în grade Celsius. Valorile ar trebui să fie precise și să se actualizeze la intervale de 5 secunde.
2.Afișarea umidității: Pe afișajul LCD, veți putea vedea nivelul de umiditate ambientală exprimat în procente (%). Valorile ar trebui să fie precise și să se actualizeze împreună cu temperatura.
3.Afișarea presiunii atmosferice: Pe afișajul LCD, veți putea vedea presiunea atmosferică exprimată în hectopascale (hPa). Valorile ar trebui să fie precise și să se actualizeze împreună cu temperatura și umiditatea.
4.Afișarea nivelului de radiație UV: Pe afișajul LCD, veți putea vedea nivelul de radiație UV citit de senzorul UV. Valorile ar trebui să reflecte nivelul de radiație UV la care senzorul este expus. Este important să rețineți că pentru o măsurare corectă a radiației UV, senzorul trebuie să fie expus la sursa de radiație UV.
Sistemul dezvoltat oferă o monitorizare în timp real a parametrilor climatici și a nivelului de radiație UV. Utilizatorul poate vizualiza aceste informații pe afișajul LCD, ceea ce îi permite să obțină o perspectivă asupra condițiilor de mediu. Aceasta poate fi utilă în diverse domenii, cum ar fi agricultura, monitorizarea mediului sau aplicații de siguranță.
Proiectul are o valoare practică semnificativă în monitorizarea și înțelegerea condițiilor de mediu. Permite utilizatorilor să obțină date relevante despre temperatură, umiditate, presiune atmosferică și nivelul de radiație UV, ajutându-i să ia decizii informate în diverse domenii de activitate.
Posibile îmbunătățiri: