Proiect la Bazele Sistemelor de Achizitii de Date
Introducere
Scurta prezentare
Proiectul consta in creearea unei mini-statii meteo care sa furnizeze date despre prinicipalele caracteristicii alea aerului si anume: temperatura si umiditatea. Pentru realizarea obiectivului am utilizat placa de dezvoltare Arduino Uno R3 cu microcontroler-ul ATMEGA328P, senzorul de precizie DHT22 care preia date atat despre umiditate cat si despre temperatura si un LCD 16×2 pentru afisarea datelor.
Figura 1- Placa de dezvoltare Arduino Uno R3.
Printre materialele necesare se numara si cablurile de conexiune impreuna cu un potentiometru necesar pentru reglarea intensitatii luminoase a LCD-ului.
Codul sursa necesar realizarii proiectul a fost scris utilizand scheletul deja existent pus la dispozitie gratuit de un site de specialitate. [https://github.com/RobTillaart/Arduino/blob/master/libraries/DHTlib/examples/dht22_test/dht22_test.ino]. De asemenea, au mai fost folosite si doua librarii:
LiquidCrystal.h pentru LCD, disponibila gratuit in versiunea 1.6.3 a software-ului Arduino IDE.
dht.h pentru senzorul DHT22, creata de Ben Adams disponibila gratuit pentru descarcare in
depozitul on-line GitHub. [https://github.com/ringerc/Arduino-DHT22/archive/master.zip].
Celelalte surse si informatii ultilizare au fost puse la dispozitie de site-ul de specialitate RoboFun.
Pentru compilarea codului si incarcarea acestuia in memoria microcontrolerului s-a folosit pachetul software open source pus la dispozitie de compania Arduino (versiunea 1.6.3).
Limbajul de programare prin care poate fi controlata platforma Arduino se numeste Processing.
Este un limbaj orientat pe obiect, care are la baza limbajul Java. A fost folosit pentru prima oara in anul 2001 de catre Casey Reas si Benjamin Fry.
Figura 2 – Captura de ecran a software-ului Arduino 1.6.3
Capitolul 1 – Notiuni generale sisteme achizitii de date
Prin „achizitie de date” se intelege, in modul cel mai general, procesul de obtinere a datelor de la o alta sursa, de obicei una exterioara a sistemului.
Exista o multitudine de situatii in care informatia, provenita de la mai multe puncte simultan, trebuie memorata, transmisa sau prelucrata in vederea folosirii sale ulterioare ca date de control. Aceasta prelucrare a informatii poate porni de la operatii simple de comparare, pana la prelucrari matematice complicate (integrari, calcule de transformate Fourier, etc.). In urma, nu cu mult timp, datele erau prelucrate sub forma analogica, insa in ziua de astazi, sistemele devenind mult mai rapide si mai complexe, se impune prelucrarea lor intr-o forma digitala, lucru de ce poate fi realizat de exemplu de un computer, care reuseste sa sa citeasca si sa prelucreze informatia mult mai rapid fata de un operator. Aceasta evolutie ne-a ajutat sa atingem un atribut absolut necesar al sistemelor de achizitie: controlul in timp real a informatie. Un proces fizic poate fi controlat prin extragerea informatiilor despre desfasurarea procesului cu ajutorul traductoarelor. Circuitele de conditionare convertesc semnalul obtinut la iesirea traductoarelor intr-un semnal electric cu parametri diferiti (curent, tensiune, etc.). Pentru controlul numeric al procesului fizic se impune realizarea conversiei semnalelor analogice în semnale numerice acceptate de sistemul de prelucrare numerică. Semnalele numerice se obțin prin prelevarea la momente de timp date, a valorilor semnalelor analogice și conversia acestor valori sub formă numerică prin intermediul convertoarelor anolog digitale, CAD. Semnalele electrice obținute sunt folosite pentru comanda elementelor de execuție și de control (dispozitive de afișare numerică și alfanumerică, relee, electrovalve etc.). Pentru comanda cu semnale analogice a unor elemente de execuție și de control (motoare, înregistratoare etc.) este necesară conversia semnalelor numerice în semnale analogice prin intermediul sistemelor de distribuție de date, SDD.
Achiziția de date este întâlnită în foarte multe din domeniile de activitate din zilele noastre:
– în industrie: în cadrul calculatoarelor de proces care supraveghează și reglează instalații tehnologice;
– în cercetarea științifică: pentru măsurarea și prelucrarea unui spectru extrem de larg de mărimi electrice și neelectrice;
– în comunicații: pentru supravegherea și măsurarea linilor de comunicație, ba chiar și în viața de toate zilele;
– în calculatoare de bord ce echipează multe din automobilele moderne.
Structura unui sistem de achizitie de date
În sensul cel mai restrâns, un sistem de achiziție de date trebuie să poată executa trei funcții fundamentale:
– convertirea fenomenului fizic într-un semnal care poate fi măsurat;
– măsurarea semnalelor generate de senzori în scopul extragerii informației;
– analizarea datelor și prezentarea lor într-o formă utilizabilă;
Cele mai multe dintre sistemele moderne de achiziție de date utilizează un calculator personal pe post de controler. Deci ținând cont și de cele enunțate mai sus, structura tipică a unui sistem de achiziție de date ce are la bază un PC este următoarea:
-senzorii au traductori care convertesc fenomenul fizic într-un semnal electric ce poate fi măsurat;
-circuite de adaptare a semnalului pentru izolarea, convertirea și/sau amplificarea semnalului provenit de la traductor;
-un subsistem de achiziție de date (care poate include multiplexoare și convertoare analog – digitale);
-un sistem de calcul;
Figura 3 – Structura tipică a unui sistem de achiziție de date
Cele mai comune componente ale unui sistem de achizitie de date sunt:
senzorii
circuitele de conditionare a semnalului
filtrele anti-aliasing
circuitele de esantionare si retinere
multiplexorul (MUX)
convertorul analog digital (CAD)
memoriilor RAM/ROM
convertorul digital analogic (CDA)
interfata
software-ul pentru achitia datelor
sistemul de calcul.
Capitolul 2 – Descrierea placa
Arduino Uno R3 este o platforma de procesare open-source, bazata pe microcontroler-ul ATmega328 produs de compania ATMEL. Platforma, desi de dimensiuni mici 6.8cm/5.3cm, dispune de 16 pini digitali, dintre care 6 pot fi utilizati ca iesiri PWM, 6 pini analogici, un oscilator cu quartz de 16 MHz, un port microUSB, o mufa ICDP, un jack de alimentare si un buton de resetare manuala. Pentru functionare, placa se conecteaza la un calculator printr-un cablu USB sau poate fi alimentat printr-un alimentator extern sau o baterie.
Figura 4 – Prezentarea principalelor componente ale placii Arduino Uno
Principalele caracteristicii ale placi Arduino Uno R3:
Figura 5 – Partea frontala si partea din spate a placii Arduino Uno
Fiecare dintre cei 14 de pini digitali ai platformei Arduino Uno poate fi utilizat atât ca intrare, cât și ca ieșire, cu ajutorul funcțiile pinMode(), digitalWrite() și digitalRead(). Pinii operează la o tensiune de 5V, fiecare putând furniza sau recepționa o intensitate de maximum 40 mA.
Anumiți pini au funcții specializate:
Serial: 0 (RX) și 1 (TX). Folosiți pentru a recepționa (RX) și transmite (TX) semnale TTL
folosind interfata serială a microcontrolerului ATmega328.
PWM: 3, 5, 6, 9, 10 si 11 . Furnizează ieșire PWM pe 8 biți cu ajutorul funcției
analogWrite().
LED: 13. Există un LED integrat conectat la pinul digital 13. Când pinul este setat la valoarea
HIGH, LED-ul este aprins, iar când valoarea devine LOW, acesta este stins.
AREF. Tensiune de referință pentru intrările analogice. Folosit împreună cu
analogReference().
SPI: pe antetul ICSP. Acești pini suportă comunicare SPI folosind biblioteca SPI. Pinii SPI sunt
disponibili doar pe conectorul ICSP.
Buton pentru resetare manuala;
Capitolul 3 – Descriere senzori
Pentru realizarea proiectului, pe langa platforma Arduino Uno, s-a mai folosit senzorul DHT22, utilizat cu pentru a prelua informatii despre doua marimi, atat despre temperatura cat si despre umiditate, iar ca si modalitate de afisare a informatiei sa utilizat un LCD.
Senzorul de temperatura si umiditate DHT22
Senzorul DHT22 este un dispozitiv digital format dintr-un termistor (pentru măsurarea temperaturii) și un senzor capacitiv pentru determinarea umidității.
Principalele caracteristici ale senzorului DHT22:
Figura 6 – Senzorul DHT22
Senzorul dispune de 4 pini de comunicare cu platforma Arduino. Pinul 1 (VCC) este utilizat pentru alimentarea senzorului. Acesta se conecteaza la unul din porturile de alimentare al platformei Arduino(3.3V sau 5V). Pinul 2 este de date, si se conecteaza la una din intrarile digitale ale placii. Pinul 3 (NULL) impreuna cu pinul 4 (GND) se conecteaza la portul GND al platformei.
Figura 7 – Schema de conectare a senzorului DHT22
LCD 16×2
Figura 8 – LCD 16×2
LCD-ul poate sa afiseze 32 de caractere pe 2 randuri. Culoarea caracterelor este neagra, iar background-ul este de culoare verde. Luminozitatea background-ului se poate modifica cu ajutorul potentiomentrului de 10k.
Figura 9 – Schema de conectare a LCD-ului 16×2
Capitolul 4 – Determinari experimetale
Determinarea experimentala presupune masurarea temperaturii si a umiditatii pe timpul unei zile, la intervale de o ora. Datele au fost stocate intru-un tabel. In urma prelucrarii datelor a fost intocmit un grafic care arata variatia celor doua marimi in functie de ora.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Proiect la Bazele Sistemelor de Achizitii de Date (ID: 150183)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
