SlideShare a Scribd company logo
1 of 7
Download to read offline
Textul si imaginile din acest document sunt licentiate
Attribution-NonCommercial-NoDerivs
CC BY-NC-ND
Codul sursa din acest document este licentiat
Public-Domain
Esti liber sa distribui acest document prin orice mijloace consideri (email, publicare pe website / blog, printare,
sau orice alt mijloc), atat timp cat nu aduci nici un fel de modificari acestuia. Codul sursa din acest document
poate fi utilizat in orice fel de scop, de natura comerciala sau nu, fara nici un fel de limitari.
Arduino si senzorul SHT11
Senzorul SHT11 ofera posibilitatea de a masura temperatura si umiditatea din mediul
inconjurator cu o precizie ridicata. Se conecteaza la placa Arduino prin intermediul a 2 pini digitali.
Consumul senzorului este foarte redus, rezolutia temperaturii masurata de catre senzor este de 0.01 º C
si 0.03 % pentru umiditatea relativa. In cel mai rau caz temperatura poate avea o acuratete de ± 2 º C si
± 3.5 % pentru umiditate.
Senzorul se alimenteaza cu o tensiune cuprinsa intre 2.4 si 5.5V, comunica printr-un protocol
serial (Two-Wire Serial) si iesirea digitala este deja calibrata din fabrica.
In prima parte a tutorialului, vei conecta senzorul la placa Arduino si vei afisa 3 valori distincte
in terminal. In cea de-a doua parte, vei invata cum se poate calcula indicele de confort termic in functie
de temperatura si umiditate.
Vei avea nevoie de urmatoarele componente:
• O placa Arduino Uno.
• Un senzor de temperatura si umiditate SHT11.
• 4 fire pentru conexiuni.
http://www.robofun.ro/forum
Cum conectez senzorul ?
Senzorul se conecteaza foarte simplu la placa Arduino. Foloseste tabelul din continuare.
Arduino 5V SHT11 VCC
Arduino GND SHT11 GND
Arduino pin digital 10 SHT11 pin DAT
Arduino pin digital 11 SHT11 pin SCK
Dupa ce ai realizat conexiunile senzorului cu placa Arduino, vei obtine urmatoarea imagine.
Libraria senzorului.
Senzorul SHT11 are o librarie special scrisa pentru el. Libraria se poate descarca de aici:
https://github.com/practicalarduino/SHT1x
Descarca libraria (butonul Download ZIP) si copiaz-o in fisierul libraries din directorul
Arduino. Restarteaza mediul Arduino si continua cu programele de mai jos.
Primul program.
Mai jos este listat sketch-ul. Il copiezi (copy/paste) direct in mediul de programare Arduino si il
http://www.robofun.ro/forum
incarci in placa Arduino UNO. Sketch-ul afiseaza in Serial Monitor 3 valori distincte: temperatura in
grade Celsius, in grade Fahrenheit si procentul de umiditate relativa.
Dupa ce ai incarcat sketch-ul in placa Arduino, deschide Serial Monitor ca sa poti vizualiza
valorile de temperatura si umiditate. Valorile vor aparea la fiecare 2 secunde, ca in imaginea de mai jos.
Codul sursa.
#include <SHT1x.h>
#define dataPin 10
#define clockPin 11
SHT1x sht1x(dataPin, clockPin);
float temp_c;
float temp_f;
float humidity;
void setup()
{
Serial.begin(9600);
// dump first reading
temp_c = sht1x.readTemperatureC();
http://www.robofun.ro/forum
temp_f = sht1x.readTemperatureF();
humidity = sht1x.readHumidity();
}
void loop()
{
// Read values from the sensor
temp_c = sht1x.readTemperatureC();
temp_f = sht1x.readTemperatureF();
humidity = sht1x.readHumidity();
Serial.print("Temperatura: ");
Serial.print(temp_c, 2);
Serial.print("C / ");
Serial.print(temp_f, 2);
Serial.print("F. Umiditate: ");
Serial.print(humidity);
Serial.println(" %");
delay(2000);
}
Al doilea program.
Indicele de confort termic iti arata cat de sufocanta este vremea si este dat de o formula care
contine doua variabile: temperatura si umiditatea. Cand valoarea indicelui este sub 65, atunci aerul este
placut si usor de respirat dar cand indicele sare peste pragul de 80, atunci apare o stare de disconfort,
aerul fiind irespirabil.
Acest lucru se intampla atunci cand temperatura este ridicata si umiditatea din aer este mare.
Din cauza nivelului mare de umiditate din aer, evaporarea la nivelul pielii este ingreunata si astfel
temperatura corpului scade mult mai greu (sau nu mai scade deloc).
In sketch-ul listat mai jos s-a utilizat urmatoarea formula pentru a determina indicele de confort
termic:
indice = (temp_c * 1.8 + 32) – (0.55 – 0.0055 * humidity) * ((temp_c * 1.8 + 32) – 58)
unde:
temp_c reprezinta temperatura exprimata in grade Celsius iar humidity reprezinta umiditatea
relativa exprimata in procente.
Dupa ce ai incarcat sketch-ul in placa Arduino, deschide Serial Monitor si urmareste valorile de
temperatura, umiditate si indicele de confort termic. Vei obtine urmatoarea imagine.
http://www.robofun.ro/forum
Codul sursa.
#include <SHT1x.h>
#define dataPin 10
#define clockPin 11
SHT1x sht1x(dataPin, clockPin);
float temp_c;
float temp_f;
float humidity;
int indice;
void setup()
{
Serial.begin(9600);
// dump first reading
temp_c = sht1x.readTemperatureC();
temp_f = sht1x.readTemperatureF();
humidity = sht1x.readHumidity();
}
void loop()
{
http://www.robofun.ro/forum
// Read values from the sensor
temp_c = sht1x.readTemperatureC();
temp_f = sht1x.readTemperatureF();
humidity = sht1x.readHumidity();
indice = (temp_c * 1.8 + 32) - (0.55 - 0.0055 * humidity) *
((temp_c * 1.8 + 32) - 58);
// Print the values to the serial port
Serial.print("Temperatura: ");
Serial.print(temp_c, 2);
Serial.print("C / ");
Serial.print(temp_f, 2);
Serial.print("F. Umiditate: ");
Serial.print(humidity);
Serial.print(" %");
Serial.print(" Indice de confort termic: ");
Serial.println(indice);
delay(2000);
}
http://www.robofun.ro/forum

More Related Content

Viewers also liked

Curs gratuitarduino lectia3-proiectesimple-1
Curs gratuitarduino lectia3-proiectesimple-1Curs gratuitarduino lectia3-proiectesimple-1
Curs gratuitarduino lectia3-proiectesimple-1Iulius Bors
 
Raspberry pi wirelesshotspot
Raspberry pi wirelesshotspotRaspberry pi wirelesshotspot
Raspberry pi wirelesshotspotIulius Bors
 
Arduino yun arduino-wifi-ethernet-linux
Arduino yun arduino-wifi-ethernet-linuxArduino yun arduino-wifi-ethernet-linux
Arduino yun arduino-wifi-ethernet-linuxIulius Bors
 
Programare in prolog_pentru_inteligenta_artificiala
Programare in prolog_pentru_inteligenta_artificialaProgramare in prolog_pentru_inteligenta_artificiala
Programare in prolog_pentru_inteligenta_artificialaIulius Bors
 
Arduino flexsensorbrickbionicfinger
Arduino flexsensorbrickbionicfingerArduino flexsensorbrickbionicfinger
Arduino flexsensorbrickbionicfingerIulius Bors
 
Cum instaleziapachesimysql peraspberrypi
Cum instaleziapachesimysql peraspberrypiCum instaleziapachesimysql peraspberrypi
Cum instaleziapachesimysql peraspberrypiIulius Bors
 
Arduino indicatoare cp-usiram
Arduino indicatoare cp-usiramArduino indicatoare cp-usiram
Arduino indicatoare cp-usiramIulius Bors
 
Curs gratuitarduino lectia15-seismografcuexcel
Curs gratuitarduino lectia15-seismografcuexcelCurs gratuitarduino lectia15-seismografcuexcel
Curs gratuitarduino lectia15-seismografcuexcelIulius Bors
 
Raspberry piuln2803
Raspberry piuln2803Raspberry piuln2803
Raspberry piuln2803Iulius Bors
 
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...Iulius Bors
 
Raspberry pi timelapse
Raspberry pi timelapseRaspberry pi timelapse
Raspberry pi timelapseIulius Bors
 
Asamblare statie meteo
Asamblare statie meteoAsamblare statie meteo
Asamblare statie meteoIulius Bors
 
Arduino matriceled8x8
Arduino matriceled8x8Arduino matriceled8x8
Arduino matriceled8x8Iulius Bors
 
Curs gratuitarduino lectia2-senzorianalogici
Curs gratuitarduino lectia2-senzorianalogiciCurs gratuitarduino lectia2-senzorianalogici
Curs gratuitarduino lectia2-senzorianalogiciIulius Bors
 
Arduino shield wifi-monitorizarelocuinta
Arduino shield wifi-monitorizarelocuintaArduino shield wifi-monitorizarelocuinta
Arduino shield wifi-monitorizarelocuintaIulius Bors
 
Curs gratuitarduino lectia1-arduinoblink
Curs gratuitarduino lectia1-arduinoblinkCurs gratuitarduino lectia1-arduinoblink
Curs gratuitarduino lectia1-arduinoblinkIulius Bors
 
Curs gratuitarduino lectia10-lcd-uri
Curs gratuitarduino lectia10-lcd-uriCurs gratuitarduino lectia10-lcd-uri
Curs gratuitarduino lectia10-lcd-uriIulius Bors
 
Arduino releemodio2
Arduino releemodio2Arduino releemodio2
Arduino releemodio2Iulius Bors
 
Arduino wifi shield-drivermotoarel298
Arduino wifi shield-drivermotoarel298Arduino wifi shield-drivermotoarel298
Arduino wifi shield-drivermotoarel298Iulius Bors
 

Viewers also liked (20)

Curs gratuitarduino lectia3-proiectesimple-1
Curs gratuitarduino lectia3-proiectesimple-1Curs gratuitarduino lectia3-proiectesimple-1
Curs gratuitarduino lectia3-proiectesimple-1
 
Arduino mod-gps
Arduino mod-gpsArduino mod-gps
Arduino mod-gps
 
Raspberry pi wirelesshotspot
Raspberry pi wirelesshotspotRaspberry pi wirelesshotspot
Raspberry pi wirelesshotspot
 
Arduino yun arduino-wifi-ethernet-linux
Arduino yun arduino-wifi-ethernet-linuxArduino yun arduino-wifi-ethernet-linux
Arduino yun arduino-wifi-ethernet-linux
 
Programare in prolog_pentru_inteligenta_artificiala
Programare in prolog_pentru_inteligenta_artificialaProgramare in prolog_pentru_inteligenta_artificiala
Programare in prolog_pentru_inteligenta_artificiala
 
Arduino flexsensorbrickbionicfinger
Arduino flexsensorbrickbionicfingerArduino flexsensorbrickbionicfinger
Arduino flexsensorbrickbionicfinger
 
Cum instaleziapachesimysql peraspberrypi
Cum instaleziapachesimysql peraspberrypiCum instaleziapachesimysql peraspberrypi
Cum instaleziapachesimysql peraspberrypi
 
Arduino indicatoare cp-usiram
Arduino indicatoare cp-usiramArduino indicatoare cp-usiram
Arduino indicatoare cp-usiram
 
Curs gratuitarduino lectia15-seismografcuexcel
Curs gratuitarduino lectia15-seismografcuexcelCurs gratuitarduino lectia15-seismografcuexcel
Curs gratuitarduino lectia15-seismografcuexcel
 
Raspberry piuln2803
Raspberry piuln2803Raspberry piuln2803
Raspberry piuln2803
 
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
 
Raspberry pi timelapse
Raspberry pi timelapseRaspberry pi timelapse
Raspberry pi timelapse
 
Asamblare statie meteo
Asamblare statie meteoAsamblare statie meteo
Asamblare statie meteo
 
Arduino matriceled8x8
Arduino matriceled8x8Arduino matriceled8x8
Arduino matriceled8x8
 
Curs gratuitarduino lectia2-senzorianalogici
Curs gratuitarduino lectia2-senzorianalogiciCurs gratuitarduino lectia2-senzorianalogici
Curs gratuitarduino lectia2-senzorianalogici
 
Arduino shield wifi-monitorizarelocuinta
Arduino shield wifi-monitorizarelocuintaArduino shield wifi-monitorizarelocuinta
Arduino shield wifi-monitorizarelocuinta
 
Curs gratuitarduino lectia1-arduinoblink
Curs gratuitarduino lectia1-arduinoblinkCurs gratuitarduino lectia1-arduinoblink
Curs gratuitarduino lectia1-arduinoblink
 
Curs gratuitarduino lectia10-lcd-uri
Curs gratuitarduino lectia10-lcd-uriCurs gratuitarduino lectia10-lcd-uri
Curs gratuitarduino lectia10-lcd-uri
 
Arduino releemodio2
Arduino releemodio2Arduino releemodio2
Arduino releemodio2
 
Arduino wifi shield-drivermotoarel298
Arduino wifi shield-drivermotoarel298Arduino wifi shield-drivermotoarel298
Arduino wifi shield-drivermotoarel298
 

Similar to Arduino sht11

Arduino comparatorul intern
Arduino comparatorul internArduino comparatorul intern
Arduino comparatorul internIulius Bors
 
Curs gratuitarduino lectia4-modalitati decomunicare
Curs gratuitarduino lectia4-modalitati decomunicareCurs gratuitarduino lectia4-modalitati decomunicare
Curs gratuitarduino lectia4-modalitati decomunicareIulius Bors
 
Arduino alcoolmetru
Arduino alcoolmetruArduino alcoolmetru
Arduino alcoolmetruIulius Bors
 
Set prizecomandatedinarduino
Set prizecomandatedinarduinoSet prizecomandatedinarduino
Set prizecomandatedinarduinoIulius Bors
 
Curs gratuitarduino lectia5-accelerometre
Curs gratuitarduino lectia5-accelerometreCurs gratuitarduino lectia5-accelerometre
Curs gratuitarduino lectia5-accelerometreIulius Bors
 
Conector bluetoothmatesilver arduino-pc
Conector bluetoothmatesilver arduino-pcConector bluetoothmatesilver arduino-pc
Conector bluetoothmatesilver arduino-pcIulius Bors
 
Arduino toraspberrypi firmata
Arduino toraspberrypi firmataArduino toraspberrypi firmata
Arduino toraspberrypi firmataIulius Bors
 
Raspberry pi firmata - arduino
Raspberry pi   firmata - arduinoRaspberry pi   firmata - arduino
Raspberry pi firmata - arduinoIulius Bors
 
Arduino comunicatie i2c
Arduino comunicatie i2cArduino comunicatie i2c
Arduino comunicatie i2cIulius Bors
 
Arduino protocolul 1 wire
Arduino   protocolul 1 wireArduino   protocolul 1 wire
Arduino protocolul 1 wireIulius Bors
 
Arduino capacitive sensor-robofun
Arduino capacitive sensor-robofunArduino capacitive sensor-robofun
Arduino capacitive sensor-robofunIulius Bors
 

Similar to Arduino sht11 (12)

Arduino comparatorul intern
Arduino comparatorul internArduino comparatorul intern
Arduino comparatorul intern
 
Curs gratuitarduino lectia4-modalitati decomunicare
Curs gratuitarduino lectia4-modalitati decomunicareCurs gratuitarduino lectia4-modalitati decomunicare
Curs gratuitarduino lectia4-modalitati decomunicare
 
Arduino alcoolmetru
Arduino alcoolmetruArduino alcoolmetru
Arduino alcoolmetru
 
Set prizecomandatedinarduino
Set prizecomandatedinarduinoSet prizecomandatedinarduino
Set prizecomandatedinarduino
 
Curs gratuitarduino lectia5-accelerometre
Curs gratuitarduino lectia5-accelerometreCurs gratuitarduino lectia5-accelerometre
Curs gratuitarduino lectia5-accelerometre
 
Conector bluetoothmatesilver arduino-pc
Conector bluetoothmatesilver arduino-pcConector bluetoothmatesilver arduino-pc
Conector bluetoothmatesilver arduino-pc
 
Aiesec University 2012-arduino
Aiesec University 2012-arduinoAiesec University 2012-arduino
Aiesec University 2012-arduino
 
Arduino toraspberrypi firmata
Arduino toraspberrypi firmataArduino toraspberrypi firmata
Arduino toraspberrypi firmata
 
Raspberry pi firmata - arduino
Raspberry pi   firmata - arduinoRaspberry pi   firmata - arduino
Raspberry pi firmata - arduino
 
Arduino comunicatie i2c
Arduino comunicatie i2cArduino comunicatie i2c
Arduino comunicatie i2c
 
Arduino protocolul 1 wire
Arduino   protocolul 1 wireArduino   protocolul 1 wire
Arduino protocolul 1 wire
 
Arduino capacitive sensor-robofun
Arduino capacitive sensor-robofunArduino capacitive sensor-robofun
Arduino capacitive sensor-robofun
 

Arduino sht11

  • 1. Textul si imaginile din acest document sunt licentiate Attribution-NonCommercial-NoDerivs CC BY-NC-ND Codul sursa din acest document este licentiat Public-Domain Esti liber sa distribui acest document prin orice mijloace consideri (email, publicare pe website / blog, printare, sau orice alt mijloc), atat timp cat nu aduci nici un fel de modificari acestuia. Codul sursa din acest document poate fi utilizat in orice fel de scop, de natura comerciala sau nu, fara nici un fel de limitari.
  • 2. Arduino si senzorul SHT11 Senzorul SHT11 ofera posibilitatea de a masura temperatura si umiditatea din mediul inconjurator cu o precizie ridicata. Se conecteaza la placa Arduino prin intermediul a 2 pini digitali. Consumul senzorului este foarte redus, rezolutia temperaturii masurata de catre senzor este de 0.01 º C si 0.03 % pentru umiditatea relativa. In cel mai rau caz temperatura poate avea o acuratete de ± 2 º C si ± 3.5 % pentru umiditate. Senzorul se alimenteaza cu o tensiune cuprinsa intre 2.4 si 5.5V, comunica printr-un protocol serial (Two-Wire Serial) si iesirea digitala este deja calibrata din fabrica. In prima parte a tutorialului, vei conecta senzorul la placa Arduino si vei afisa 3 valori distincte in terminal. In cea de-a doua parte, vei invata cum se poate calcula indicele de confort termic in functie de temperatura si umiditate. Vei avea nevoie de urmatoarele componente: • O placa Arduino Uno. • Un senzor de temperatura si umiditate SHT11. • 4 fire pentru conexiuni. http://www.robofun.ro/forum
  • 3. Cum conectez senzorul ? Senzorul se conecteaza foarte simplu la placa Arduino. Foloseste tabelul din continuare. Arduino 5V SHT11 VCC Arduino GND SHT11 GND Arduino pin digital 10 SHT11 pin DAT Arduino pin digital 11 SHT11 pin SCK Dupa ce ai realizat conexiunile senzorului cu placa Arduino, vei obtine urmatoarea imagine. Libraria senzorului. Senzorul SHT11 are o librarie special scrisa pentru el. Libraria se poate descarca de aici: https://github.com/practicalarduino/SHT1x Descarca libraria (butonul Download ZIP) si copiaz-o in fisierul libraries din directorul Arduino. Restarteaza mediul Arduino si continua cu programele de mai jos. Primul program. Mai jos este listat sketch-ul. Il copiezi (copy/paste) direct in mediul de programare Arduino si il http://www.robofun.ro/forum
  • 4. incarci in placa Arduino UNO. Sketch-ul afiseaza in Serial Monitor 3 valori distincte: temperatura in grade Celsius, in grade Fahrenheit si procentul de umiditate relativa. Dupa ce ai incarcat sketch-ul in placa Arduino, deschide Serial Monitor ca sa poti vizualiza valorile de temperatura si umiditate. Valorile vor aparea la fiecare 2 secunde, ca in imaginea de mai jos. Codul sursa. #include <SHT1x.h> #define dataPin 10 #define clockPin 11 SHT1x sht1x(dataPin, clockPin); float temp_c; float temp_f; float humidity; void setup() { Serial.begin(9600); // dump first reading temp_c = sht1x.readTemperatureC(); http://www.robofun.ro/forum
  • 5. temp_f = sht1x.readTemperatureF(); humidity = sht1x.readHumidity(); } void loop() { // Read values from the sensor temp_c = sht1x.readTemperatureC(); temp_f = sht1x.readTemperatureF(); humidity = sht1x.readHumidity(); Serial.print("Temperatura: "); Serial.print(temp_c, 2); Serial.print("C / "); Serial.print(temp_f, 2); Serial.print("F. Umiditate: "); Serial.print(humidity); Serial.println(" %"); delay(2000); } Al doilea program. Indicele de confort termic iti arata cat de sufocanta este vremea si este dat de o formula care contine doua variabile: temperatura si umiditatea. Cand valoarea indicelui este sub 65, atunci aerul este placut si usor de respirat dar cand indicele sare peste pragul de 80, atunci apare o stare de disconfort, aerul fiind irespirabil. Acest lucru se intampla atunci cand temperatura este ridicata si umiditatea din aer este mare. Din cauza nivelului mare de umiditate din aer, evaporarea la nivelul pielii este ingreunata si astfel temperatura corpului scade mult mai greu (sau nu mai scade deloc). In sketch-ul listat mai jos s-a utilizat urmatoarea formula pentru a determina indicele de confort termic: indice = (temp_c * 1.8 + 32) – (0.55 – 0.0055 * humidity) * ((temp_c * 1.8 + 32) – 58) unde: temp_c reprezinta temperatura exprimata in grade Celsius iar humidity reprezinta umiditatea relativa exprimata in procente. Dupa ce ai incarcat sketch-ul in placa Arduino, deschide Serial Monitor si urmareste valorile de temperatura, umiditate si indicele de confort termic. Vei obtine urmatoarea imagine. http://www.robofun.ro/forum
  • 6. Codul sursa. #include <SHT1x.h> #define dataPin 10 #define clockPin 11 SHT1x sht1x(dataPin, clockPin); float temp_c; float temp_f; float humidity; int indice; void setup() { Serial.begin(9600); // dump first reading temp_c = sht1x.readTemperatureC(); temp_f = sht1x.readTemperatureF(); humidity = sht1x.readHumidity(); } void loop() { http://www.robofun.ro/forum
  • 7. // Read values from the sensor temp_c = sht1x.readTemperatureC(); temp_f = sht1x.readTemperatureF(); humidity = sht1x.readHumidity(); indice = (temp_c * 1.8 + 32) - (0.55 - 0.0055 * humidity) * ((temp_c * 1.8 + 32) - 58); // Print the values to the serial port Serial.print("Temperatura: "); Serial.print(temp_c, 2); Serial.print("C / "); Serial.print(temp_f, 2); Serial.print("F. Umiditate: "); Serial.print(humidity); Serial.print(" %"); Serial.print(" Indice de confort termic: "); Serial.println(indice); delay(2000); } http://www.robofun.ro/forum