Utilizarea platformei Arduino [609235]
Utilizarea platformei Arduino
pentru m ăsurarea
temperaturii
Student: [anonimizat]: ELA 4.1
Facultatea de Automatică Calculatoare și Electronică – Craiova
REZUMAT
În lucrare se propune măsurarea la o stație meteo a temperaturii
și umidității, utilizând 3 mijloace: utilizând Arduino Uno, un modul LCD
și un senzor digital inteligent (tip DHT11), utilizând Arduino Uno, un
modul LCD, cu doi senzori analogici, unul pentru măsurarea
temperaturii (LM35DH) și umidității (HIH-3602- A), utilizând Arduino
Mega, cu LCD și un senzor digital inteligent (tip DHT11). Cu ajutorul
acestor senzori se poate face conversia liniara temperatură-tensiune.
Arduino UNO este o platformă de procesare open-source, bazată pe
software și hardware flexibil și simplu de folosit. Constă într-o
platformă de mici dimensiuni (6,8 cm / 5,3 cm) construită în jurul unui
microcontroler și este capabilă de a prelua date din mediul înconjurător
printr-o serie de senzori și de a efectuă acțiuni asupra mediului prin
intermediul luminilor, motoarelor, servomotoare, și alte tipuri de
dispozitive mecanice. DHT11 este un senzor digital de temperatură și
umiditate, care are încorporat un senzor de umiditate capacitiv și un
termistor, pentru a măsura aerul din jur și dă un semnal digital pe pinul
de date.
Acesta măsoară umiditatea relativă analizând vaporii de apă prin
măsurarea rezistenței electrice dintre doi electrozi. Pin-ul VCC al DHT11
a fost conectat la pin-ul de pe placa Arduino de 5V, pin-ul GND al
DHT11 a fost conectat la pin-ul GND de pe placa Arduino, pin-ul DATA al
DHT11 a fost conectat la pin-ul digital 4 al plăcii Arduino.
CUVINTE CHEIE: microcontroler, senzor, temperatură, umiditate.
1.INTRODUCERE
Această lucrare urmărește facilitarea măsurăriitemperaturiiși a
umidității, în cadrul unei stații meteorologice, cu ajutorul unor senzori
foarte sensibili și, totodată, robuști, dar și prin folosirea unor plăci de
dezvoltare Arduino UNO și MEGA. Microcontrolerele constituie în
această perioadă un domeniu deosebit de dinamic. Acestea se impun
din ce în ce mai mult în aplicațiile industriale. Acestea pot fi găsite în
componența oricărui tip de echipamente electrice. Orice aparat care
măsoară, stochează, comandă, calculează sau afișează informații este o
potențială gazdă pentru un microcontroler. Datorită dimensiunilor
reduse a componentelor, utilizarea acestora în practică este facilitată,
spațiul de acționare a acestora nereprezentând o problemă, și totodată,
împreună cu dimensiunile reduse intervine reducerea costurilor de
fabricare a acestora, fiind o industrie în continua dezvoltare, și cu o
accesibilitate a prețurilor acceptabilă, și o varietate mare de produse
[1,2].
2. ELEMENTE COMPONENTE
Măsurarea realizată în continuare, se bazează pe senzorii
analizați, citirile fiind eventual efectuate de către placa Arduino, și
transmise către un LCD pentru afișarea măsurătorilor. Placa Arduino
UNO Arduino UNO (fig.1) este o platformă de procesare open-source,
bazată pe software și hardware flexibil și simplu de folosit. Constă dintr-
o platformă de mici dimensiuni (6,8 cm / 5,3 cm) construită în jurul unui
microcontroler și este capabilă de a prelua date din mediul înconjurător
printr-o serie de senzori și de a efectuă acțiuni asupra mediului prin
intermediul luminilor, motoarelor, servomotoare, și alte tipuri de
dispozitive mecanice [1,2].
Figura 1:
Arduino Uno Programele Arduino pot fi scrise în orice limbaj de
programare cu un compilator capabil să producă un cod mașină binar.
Atmel oferă un mediu de dezvoltare pentru microcontrolerele sale, AVR
Studio și mai nou, Atmel Studio. Proiectul Arduino oferă un mediu
integrat de dezvoltare (IDE), care este o aplicație cross-platform, scrisă
în Java.
Acesta își are originile în mediul de dezvoltare pentru limbajul de
programare Processing și în proiectul Wiring.
Este proiectat pentru a introduce programarea în lumea artiștilor și a
celor nefamiliarizați cu dezvoltarea software. Include un editor de cod cu
funcții ca evidențierea sintaxelor, potrivirea acoladelor și spațierea
automată și oferă mecanisme simple cu un singur click, pentru a compila
și a încărca programele în plăcuța Arduino. Un program scris în IDE
pentru Arduino se numește sketch. Senzor de temperatura LM35DH
(fig.2) este un senzor de temperatura analogic care are următoarele
caracteristici [3]: H D – 4 9 – S T U D , „ 4 9 d e a n i d e î n v ă ț ă m â n
t s u p e r i o r h u n e d o r e a n ” – Calibrat direct în ˚C (grade Celsius);
– Factor de scară liniar +10.0 mV/˚C; – Funcționează de la 4->30 V; –
Scurgerea de curent este < 60 µA
Figura 2: Senzorul LM35DH utilizat la experimentări.
Seria LM35 este un circuit integrat de precizie de măsurare a
temperaturii, cu o tensiune de ieșire liniară proporțională cu temperatura
în grade Celsius. Senzorul LM35DH are un avantaj față de senzorii de
temperatură calibrați în Kelvin, ca utilizator nu este necesar să se scadă o
tensiune constantă mare de la ieșire pentru a obține o scalare
convenabilă în celsius. Dispozitivul LM35 nu necesită nicio calibrare
externă pentru a furniza caracteristici tipice de acuratețe de ± ¼ °C la
temperatura camerei și ± ¾ °C peste un interval de temperatură între -55
°C și 150 °C. Inferior costul este asigurat prin calibrare la plachetă.
Senzor de umiditate si temperature
DHT11 (fig.3) este un senzor digital de temperatură și umiditate,
care are încorporat un senzor de umiditate capacitiv și un termistor,
pentru a măsura aerul din jur și dă un semnal digital pe pinul de date [4].
Acesta măsoară umiditatea relativă analizând vaporii de apă prin
măsurarea rezistenței electrice dintre doi electrozi.
• Pin-ul VCC al DHT11 a fost conectat la pin-ul de pe placa
Arduino de 5V;
• Pin-ul GND al DHT11 a fost conectat la pin-ul GND de pe placa
Arduino;
• Pin-ul DATA al DHT11 a fost conectat la pin-ul digital 4 al plăcii
Arduino.
Figura 3: Senzorul DHT11 utilizat la experimentări
Fiecare senzor DHT11 este strict calibrat în laborator și este extrem de
precis în calibrarea umidității. Coeficienții de calibrare sunt stocați ca
programe în memoria OTP, care sunt utilizate de procesul de detectare
a semnalului intern al senzorului. Interfața serială cu un singur fir face
integrarea rapidă și ușoară a sistemului. Dimensiuni mici, consum redus
de energie și până la 20 de metri transmisia semnalului, ceea ce îl face
cea mai bună alegere pentru diverse aplicații, inclusiv pentru cele mai
exigente. Componenta este un pachet cu 4 pini pentru un singur rând.
Este foarte convenabil ca și conectare și pachetele speciale pot fi
furnizate în funcție de solicitarea utilizatorilor.
Liquid Crystal Display
Ecranul LCD utilizat este dedicat afișării textului. Poate afișa un
text format din 32 de caractere, câte 16 pe fiecare dintre cele două
rânduri disponibile. Fiecare caracter este de fapt o matrice de 5×8
puncte. Ecranul se poate monta direct pe placa Arduino Uno sau Mega,
după cum se vede în figura 4.
Figura 4: Shield-ul LCD conectat la Arduino Uno utilizat la
experimentări.
LCD-urile nu emit lumină directă, ci folosesc o lumină de fundal sau un
reflector pentru a produce imagini color sau monocrom. Ecranele LCD
sunt disponibile pentru a afișa imagini arbitrare (ca pe un afișaj general
al computerului) sau imagini fixe cu conținut redus de informații, care
pot fi afișate sau ascunse, cum ar fi cuvintele presetate, cifre și afișaje
pe șapte segmente, ca într-un ceas digital. Aceștia utilizează aceeași
tehnologie de bază, cu excepția faptului că imaginile arbitrare sunt
alcătuite dintr-un număr mare de pixeli mici, în timp ce alte afișaje au
elemente mai mari. Ecranele LCD pot fi în mod normal on (pozitiv) sau
pe off (negativ), în funcție de aranjamentul polarizatorului. De exemplu,
un LCD cu caractere pozitive cu iluminare din spate va avea inscripții
negre pe un fundal care este culoarea luminii de fundal, iar un LCD
negativ de caractere va avea un fundal negru, literele fiind de aceeași
culoare ca luminile de fundal. Filtrele optice sunt adăugate la alb pe
ecranele albastre pentru a le oferi aspectul lor caracteristic.
Programul Arduino
Pentru a programa dispozitivul Arduino Uno trebuie ca programul
Arduino IDE să recunoască dispozitivul. Aceasta se face din meniul
programului: Tools -> Board ->Arduino Uno. Tot din meniul programului
trebuie să selectăm corect portul USB la care este conectat dispozitivul
Arduino Uno (Tools->Port). După ce am setat programul să recunoască
dispozitivul, urmează programarea dispozitivului. Limbajul de
programare este asemănător C++. Modelul de bază al unui program în
Arduino este prezentat mai jos
#include <dht.h>
#define dht_apin A0 // Analog Pin sensor is
connected to
dht DHT;
void setup(){
Serial.begin(9600);
delay(500);//Delay to let system boot
Serial.println("DHT11 Humidity & temperature
Sensor\n\n" );
delay(1000);//Wait before accessing Sensor
}//end "setup()"
void loop(){
//Start of Program
DHT.read11(dht_apin);
Serial.print("Current humidity = " );
Serial.print(DHT.humidity);
Serial.print("% ");
Serial.print("temperature = " );
Serial.print(DHT.temperature );
Serial.println("C ");
delay(5000);//Wait 5 seconds before
accessing sensor again.
//Fastest should be once every two seconds.
}// end loop(
3. CONCLUZII
Un microcontroler este un microcircuit programabil care
încorporează o unitate centrală (CPU) și o memorie împreună cu
resurse care-i permit interacțiunea cu mediul exterior.
Sistemele cu microcontroler sunt din ce în ce mai mult folosite în
procesele de control automat, atât datorită costurilor mici pe care le
oferă această tehnologie în momentul de față, cât mai ales înaltei
flexibilități aplicative. Prin utilizarea senzorilor analogici cu ajutorul
unor formule de calcul se pot măsura corect unele mărimi neelectrice
(temperatură și umiditate). Senzorii digitali, care trimit informația în
format binar, permit realizarea unor programe mai mici. În aplicațiile
practice este mult mai ușor să se utilizeze module (Shield) LCD care se
pot conecta direct pe modulele Arduino, comparativ cu display-urile
LCD simple care necesită mai multe conductoare de legătură.
BIBLIOGRAFIE
[1] https://en.wikipedia.org/wiki/Arduino_Uno
[2] https://www.sparkfun.com/products/11061
[3] http://www.ti.com/lit/ds/symlink/lm35.pdf
[4] https://www.mouser.com/ds/2/758/DHT11-Technical-Data-Sheet-
Translated-Version-1143054.pdf
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: Utilizarea platformei Arduino [609235] (ID: 609235)
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.
