9. UMIDITA' TEMPERATURA GAS SU SCHERMO LCD

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
=Cristian82=
00lunedì 27 novembre 2017 17:57
Uniamo insieme alcuni lavori fatti in precedenza per ottenere uno Sketch avanzato in cui sono presenti due sensori ed uno schermo lcd sul quale visualizzare le informazioni.

IL PRESENTE SKETCH PREVEDE L'UTILIZZO DI DUE SENSORI ED UNO SCHERMO LCD

- DHT11
- GAS SENSOR
- SCHERMO LCD 20X4

[IMG]https://lh3.googleusercontent.com/yqjfXtq3s2ysECVcOg-Es3g0zuI9Eo0A1Fb1a1nnq8uV4ToWxQFmRJdc5vPJNsg8m-WzYTT6ki28bhvPg9NFaI9KoeWy5yJuDx8SaeyoYcx_Q2QV7Xd0qaS4-Wsp31dm-CcREUPRIVqvh5VWxxb4V7ar9eiTTlT8_1z_3AZFUi7GcdzNKiSvyhtcREpLAkXhvJgEd8zpE6GqsEsYjkfGSQCtdQ8SzmmqyGB7BqhbH2oMmpq_0fQOHl1GswnxAsEMAhnREyzc6faFS7JvIz6javH9G3mHtOnZuPHD86iOnmfinUPCucj6kPPWA177EU_BFm-Bie2ck6fkzZjd5xFm36ixmGOQmkow9i4HmYaWMkKz48j7-Wp3onZuidtzwsWblA3YDLylrHz6kJZg_VvoahyLUy7TP_167JwCHKbZDiAlaV4xyZlR3tCjjhPx5HGsodfLXuGEXWF2l-Xt80Ab1KpOlsrJCgn8AAOopqGIzm-2ic1EZdBeDw5BdkneAxG_MgtyRgXvM02oqRLMkzW01ih02ZxwlhNK_qwHmsmYydmRRmmhedh4sTjw7nNLSBemkPhqPdlWxfu9jC4v2HVntQTjvq6iVgQoCR7bSJEQ1qk=w494-h658-no[/IMG]

ECCO LO SKETCH
#include
#include "DHT.h"
#include
#include
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // Set the LCD I2C address
#define DHTPIN 8
#define ledt 10
#define ledh 12
#define ledg 11
#define led1 5
#define sensor A2
int segnale;
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
lcd.begin(20,4);
Serial.println ("Temperatura, Umdità e qualità dell'aria");
Serial.println ("____________________________________");
Serial.println (" ");
lcd.setCursor(1,0);
lcd.print("Pappafava.it");
for(int i = 0; i< 3; i++)
{
lcd.backlight();
delay(250);
lcd.noBacklight();
delay(250);
}
lcd.backlight(); // finish with backlight on
}
void loop() {
float t = dht.readTemperature();
int h = dht.readHumidity();
segnale=analogRead(sensor);
Serial.println (" ");
Serial.print("Temperatura ");
Serial.print(t);
Serial.print(" °C");
lcd.setCursor(1,1);
lcd.print("Temperatura ");
lcd.print(t);
lcd.print(" C");
if(t<16.5 || t>21)
{
Serial.println(" Temperatura non confortevole");
digitalWrite(ledt, LOW);
}
else
{
Serial.println(" Temperatura confortevole");
digitalWrite(ledt, HIGH);
}
delay(1000);
Serial.print("Umidità ");
Serial.print(h);
Serial.print(" %");
lcd.setCursor(1,2);
lcd.print("Umidita' ");
lcd.print(h);
lcd.print(" %");
if(h>45 && h<68)
{
Serial.println(" L'umidità relativa è buona");
digitalWrite(ledh, HIGH);
}
else
{
Serial.println(" L'umidità relativa non è ottimale");
digitalWrite(ledh, LOW);
}
delay(1000);
Serial.print("Qualità ");
Serial.print(segnale);
Serial.print(" ppm");
lcd.setCursor(1,3);
lcd.print("Qualita' ");
lcd.print(segnale);
lcd.print(" ppm");
if(segnale<450)
{
Serial.println(" La qualità dell'aria è buona");
digitalWrite(ledg, HIGH);
}
else
{
Serial.println(" La qualità dell'aria stà peggiorando, aprire la finestra per 1 minuto");
digitalWrite(ledg, LOW);
}
Serial.println ("____________________________________");
delay(3000);
}



LIBRERIE NECESSARIE:
- DHT11
- LCD I2C
Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 09:06.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com