Ok sono riuscito a far funzionare la ventola col sensore di temperatura, ho seguito lo schema di Brunello e come consigliatomi da Standardoil ho usato un alimentatore separato per arduino.
Se a qualcuno dovesse interessare questo è il codice che ho scritto:
//DHT22
#include <DHT.h>;
DHT dht (8,DHT22);
float Hum;
float Temp;
float Tmax=-100;
float Tmin=100;
int num = 1;
//Gate ventola
const int Gate = 9;
void setup() {
Serial.begin(9600);
dht.begin();
pinMode(Gate, OUTPUT);
}
void loop() {
//lettura sensore
Hum = dht.readHumidity();
Temp= dht.readTemperature();
//accensione e spegnimento ventola
if (Temp >= 27){
digitalWrite(Gate, HIGH);
}
if (Temp <= 25) {
digitalWrite(Gate, LOW);
}
//Definizione Tmax e Tmin
if ( Temp > Tmax ){
Tmax = Temp ;}
if ( Temp < Tmin ){
Tmin = Temp ;}
//comunicazione serial
Serial.print(num);
Serial.print(") Hum: ");
Serial.print(Hum);
Serial.print(" % Temp: ");
Serial.print(Temp);
Serial.println("°C");
num++;
delay (1000);
}
Il delay alla fine lo uso per non avere troppi aggiornamenti sul seriale: per ora non ho lo schermo LCD quindi devo collegare arduino al pc per leggere i valori di temperatura e umidità.
Quando al posto di serial.print userò il comando lcd.print non c'è bisogno di alcun delay giusto?
Comunque grazie a tutti, da solo non credo che sarei riuscito a far funzionare tutto ![]()