Category Archive: Arduino

4 prese gestite da WEB

Materiale occorrente (Circa 100 Euro)

  1. Scatola supporto per prese (6 posti)
  2. Statola elettrica (15×20)cm
  3. 3 prese
  4. 1 presa schuko
  5. 1 interruttore bipolare
  6. Arduino uno
  7. Arduino relay shield
  8. Arduino ethernet shield
  9. Alimentatore per arduino
  10. Nastro isolante
  11. Cavo elettrico
  12. Cavo USB
  13. Cavo Ethernet
  14. Presa di corrente 220Volt

In questo Link è possibile scaricare lo sketch arduino comprensivo della libreria WebDuino MioOutPutWeb_V06

Di seguito le foto del montaggio

 

 

 

Termostato con Arduino

Lista dei Materiali

Quantità Descrizione Proprietà
1 Arduino Leonardo (Rev3b) tipo Arduino Leonardo (Rev3)
1 Header 2 variant -jst-2-pth-no_silk; package jst-2-pth-ns
1 LCD screen tipo Character; pins 16
1 Red (633nm) LED colore Red (633nm); package 1206 [SMD]
1 220Ω Resistor resistenza 220Ω; tolerance ±5%; package 0805 [SMD]
1 Trimmer Potentiometer tipo Trimmer Potentiometer; track Linear; maximum resistance 10kΩ; size Trimmer – 12mm; package THT
1 10kΩ Resistor resistenza 10kΩ; tolerance ±5%; package 1206 [SMD]
1 Humidity and Temperature Sensor RHT03 output signal Digital Signal; power supply 3.3-5.5V DC; sensing element Polymer humidity capacitor
1 POT variant -rv16af-20; package pot_alpha_rv16af-20
1 RELAY-2 variant g5q; package relay-g5v

Circuito elettrico

 

Codice Arduino

#include <LiquidCrystal.h>
#include <DHT.h>
#define DHTPIN 13
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

int regulatorPin = A0;
int regulatorValue = 0;
int relePin = 10;
String stato = "OFF";

void setup() {
  Serial.begin(9600);
  dht.begin();
  lcd.begin(16, 2);
  pinMode(relePin, OUTPUT);
  digitalWrite(relePin, LOW);
}

void loop() {
  delay(2000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  String umidita = "H2O: ";
  String temperatura = "Tem: ";
  
  regulatorValue = analogRead(regulatorPin);
  regulatorValue = map(regulatorValue, 0, 1023, 15, 26);
  if (t<regulatorValue) {
    digitalWrite(relePin, HIGH);
    stato = " ON";
  }
  else {
    digitalWrite(relePin, LOW);
    stato = "OFF";
  }

  umidita = umidita + int(h);
  umidita = umidita + "% S=";
  umidita = umidita + stato;  

  temperatura = temperatura + int(t);
  temperatura = temperatura + "C T=";
  temperatura = temperatura + regulatorValue;
  temperatura = temperatura + "C";
  
  if (isnan(h) || isnan(t)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  Serial.print(temperatura);
  Serial.print("\n");
  Serial.println(umidita);

  lcd.setCursor(0, 0);
  lcd.print(temperatura);
  lcd.setCursor(0, 1);
  lcd.print(umidita);  
}