Vincent
| Inviato il: 01/07/2017 07:24:55
|
e per quello sto sviluppando un server separato sul pc impostato a priorita da 1 a 10 cioe stacca prima 10 poi 9 fino a che basta solo il solare o comunque non piu di X da batteria poi in esubero riattiva tutto
#include <ESP8266WebServer.h>
#include <dummy.h>
#include <ESP8266WiFi.h>
#include <DHT.h>
//#include "DHT.h"
#define DHTPIN D3
//////////////////////
// WiFi Definitions //
//////////////////////la passwordwi wi
//dht DHT;
//const int DHT22_PIN =4;
const char WiFiAPPSK[] = "password";
//#define DHTTYPE DHT22 // DHT 22
//DHT dht(DHTPIN, DHTTYPE);
/////////////////////
// Pin Definitions //
/////////////////////
//const int LED_PIN = D5; // Thing's onboard, green LED
//const int ANALOG_PIN = A0; // The only analog pin on the Thing
//const int DIGITAL_PIN = 12; // Digital pin to be read
#include <DHT.h>
#include "DHT.h"
#define DHTPIN D3
//////////////////////
// WiFi Definitions //
//////////////////////la passwordwi wi
//dht DHT;
//const int DHT22_PIN =4;
//const char WiFiAPPSK[] = "password";
#define DHTTYPE DHT22 // DHT 22
DHT dht(DHTPIN, DHTTYPE);
/////////////////////
// DHT Sensor
// Initialize DHT sensor.
// Temporary variables
const int lavaggio = D5;
const int riscalda = D6;
const int scarico = D7;
const int pulsante = D8;
const int sapone = D1;
long orologio1 = 0;
long orologio2 = 0;
int intervallo = 60;
bool escludisensore = false;
#define SER_SIZE 256 //dimensione massima del buffer
static uint8_t bufferRegolatore[SER_SIZE + 1] = ""; //buffer che conterrà i byte letti dalla seriale.
int serind; //indice per il buffer.
String output;
char carattere;
String stringa;
String programma;
int tempset;
WiFiServer server(80);
void setup()
{
tempset=50;
// initHardware();
setupWiFi();
server.begin();
dht.begin();
// serial.begin(9600)
Serial.begin(9600);
intervallo = 60;
//dht.begin();
pinMode(lavaggio, OUTPUT);
pinMode(riscalda, OUTPUT);
pinMode(scarico, OUTPUT);
pinMode(pulsante,INPUT);
pinMode(sapone, OUTPUT);
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println("");
Serial.print("ESP8266 avviato, Gestione Lavastoviglie…..");
orologio1 = 0;
delay(10);
programma = "1";
escludisensore = false;
}
void loop()
{
//Serial.println(temp());
// QPIRI();
// Leggi_in();
// Datiout();
Serial.println("-Av-");
if (programma == "1")
Lavastoviglie();
if (programma == "2")
Lavastoviglie_p2();
if (programma == "3")
Lavastoviglie_p3();
if (programma == "4")
Lavastoviglie_p4();
if (programma == "5")
rigenerazione();
if (temp() >tempset){
Serial.println("-Spegnomento resistenza-");
digitalWrite(riscalda, 1);
}
Serial.println("-Ex-");
int vpul;
vpul=digitalRead(pulsante);
if (vpul== HIGH){
orologio2=orologio2 + 1;
Serial.println("-Pulsante premuto") ;
if ((orologio2 > 3 )and (stringa == "avvia")){
orologio2=0;
stringa = "pausa";
Serial.println("-pausa-------") ;
delay(1000);
}
if ((orologio2 > 3 )and (stringa != "avvia")){
stringa = "avvia";
orologio2=0;
Serial.println("-Avvio ciclo") ;
delay(1000);
}
delay(900);
}
if (vpul== LOW){
orologio2=0;
Serial.println("-Reset pull") ;
}
// Check if a client has connected
WiFiClient client = server.available();
if (!client) {
return;
}
// Read the first line of the request
String req = client.readStringUntil('\r');
Serial.println(req);
client.flush();
// Match the request
int val = -1; // We'll use 'val' to keep track of both the
// request type (read/set) and value if set.
if (req.indexOf("/pausa") != -1)
stringa = "pausa"; // Will write LED low
else if (req.indexOf("/reset") != -1)
stringa = "reset"; // Will write LED high
else if (req.indexOf("/avvia") != -1)
stringa = "avvia"; // Will print pin reads
else if (req.indexOf("/stop") != -1)
stringa = "stop";// Will print pin reads
if (req.indexOf("/p1") != -1)
programma = "1"; // Will write LED low
if (req.indexOf("/p2") != -1)
programma = "2"; // Will write LED low
if (req.indexOf("/p3") != -1)
programma = "3"; // Will write LED low
if (req.indexOf("/p4") != -1)
programma = "4"; // Will write LED low
if (req.indexOf("/p5") != -1)
programma = "5"; // Will write LED low
if (req.indexOf("/sapone") != -1)
digitalWrite(sapone, 0);
if (req.indexOf("/riscalda") != -1)
digitalWrite(riscalda, 0);
if (req.indexOf("/lavaggio") != -1)
digitalWrite(lavaggio, 0);
if (req.indexOf("/scarico") != -1)
digitalWrite(scarico, 0);
if (req.indexOf("/t50") != -1){
tempset=50;
escludisensore=false;}
if (req.indexOf("/t65") != -1){
tempset=65;
escludisensore=false;}
if (req.indexOf("/t75") != -1){
tempset=75;
escludisensore=false;}
//escludisensore
if (req.indexOf("/escludisensore") != -1){
escludisensore=true;
tempset=temp();
}
// Otherwise request will be invalid. We'll say as much in HTML
// Set GPIO5 according to the request
//if (val >= 0)
// digitalWrite(LED_PIN, val);
//client.flush();
// Prepare the response. Start with the common header:
String s = "HTTP/1.1 200 OK\r\n";
s += "Content-Type: text/html\r\n\r\n";
s += "<!DOCTYPE HTML>\r\n<html>\r\n";
//s +="<script> function SendData(){ xmlhttpPost(""/avvio"")""}""</script>";
// If we're setting the LED, print out a message saying we did
//if (val >= 0)
//{
// s += "LED is now ";
// s += (val) ? "on" : "off";
//}
//else if (val == -2)
//{ // If we're reading pins, print out those values:
// s += "Analog Pin = ";
// s += String(analogRead(ANALOG_PIN));
// s += ""; // Go to the next line.
// s += "Digital Pin 12 = ";
//s += String(digitalRead(DIGITAL_PIN));
// }
// else
// {
// s += "Invalid Request. Try /led/1, /led/0, or /read.";
// }
// QPIRI();
Serial.println("Current:" + orologio1);
s +="Programma:" ;
s += programma;
s += "Orologio:" ;
s += orologio1;
s += " Minuti:" ;
int minuti = orologio1 / 60;
s += minuti;
s += " Temperatura:" ;
if (temp()>100){
s += "Errore sensore"; }
else {
s += temp();}
s += "";
if (escludisensore==true){
s += "ATTENZIONE SENSORE TEMPERATURA ESCLUSO!!!";
}
s += " Temperatura settata:" ;
s += tempset;
s += "";
int tempo = 0 ;
if (programma =="1")
tempo=140;
if (programma =="2")
tempo=240;
if (programma =="3")
tempo=240;
if (programma =="4")
tempo=360;
if (programma =="5")
tempo=10;
tempo= tempo - minuti;
s += " Minuti rimanenti:" ;
s +=tempo;
s += " ";
// s += "<a href='/on'>on</a> " ;
s += "<a href=""/p1"">Programma1</a> 140 Min." ;
s += "<a href=""/p2"">Programma2</a> 170 Min." ;
s += "<a href=""/p3"">Freddo</a> 170 Min." ;
s += "<a href=""/p4"">Impulsi</a> 200 Min." ;
s += "";
s += "<a href=""/p5"">Rigenerazione</a> 10 Min." ;
s += "";
s += "<a href=""/t50"">Temp 50</a> " ;
s += "<a href=""/t65"">temp 65</a> " ;
s += "<a href=""/t75"">temp 75</a> " ;
s += "<a href=""/escludisensore"">Escludi Sendore Temperatura</a> " ;
//escludisensore
s += "<a href=""/avvia"">AVVIA</a> " ;
s += "<a href=""/pausa"">PAUSA</a> " ;
s += "<a href=""/stop"">STOP</a> " ;
s += "<a href=""/reset"">RIAVVIA</a> " ;
// s += "<input type=""Button"" id=""Button1"" onclick=""SendData()"" name=""AVVIA"" value=""AVVIA"" style=""position:absolute;left:30px;top:45px;width:96px;height:35px;z-index:6;"">";
//s += "<input type=""Button"" id=""Button1"" onclick=""location.href=""192.168.1.1/stop"" name="""" value=""STOP"" style=""position:absolute;left:30px;top:90px;width:96px;height:35px;z-index:6;"">";
//s += "<input type=""Button"" id=""Button1"" onclick=""location.href=""192.168.1.1/reset"" name="""" value=""RESET"" style=""position:absolute;left:30px;top:135px;width:96px;height:35px;z-index:6;"">";
//s += "<input type=""Button"" id=""Button1"" onclick=""location.href=""192.168.1.1/pausa"" name="""" value=""PAUSA"" style=""position:absolute;left:30px;top:180px;width:96px;height:35px;z-index:6;"">";
s += "Stato:" + stringa;
s += "";
s += "Orologio:" + orologio1;
s += "</html>\n";
//------------------------------------
//------------------------------------
//s += temp() ;
//s += float(t);
// Serial.print temp();
//Serial.println(temp());
// Send the response to the client
client.print(s);
// The client will actually be disconnected
// when the function returns and 'client' object is detroyed
}
void setupWiFi()
{
WiFi.mode(WIFI_AP);
// Do a little work to get a unique-ish name. Append the
// last two bytes of the MAC (HEX'd) to "Thing-":
uint8_t mac[WL_MAC_ADDR_LENGTH];
WiFi.softAPmacAddress(mac);
String macID = String(mac[WL_MAC_ADDR_LENGTH - 2], HEX) +
String(mac[WL_MAC_ADDR_LENGTH - 1], HEX);
macID.toUpperCase();
String AP_NameString = "ServLavast"; // + macID;
char AP_NameChar[AP_NameString.length() + 1];
memset(AP_NameChar, 0, AP_NameString.length() + 1);
for (int i = 0; i < AP_NameString.length(); i++)
AP_NameChar[i] = AP_NameString.charAt(i);
// IPAddress Ip(192, 168, 1, 1);
// IPAddress NMask(255, 255, 255, 0);
IPAddress apIP(192, 168, 1, 1);
WiFi.softAPConfig(apIP, apIP, IPAddress(255, 255, 255, 0)); // subnet FF FF FF 00
WiFi.softAP(AP_NameChar, WiFiAPPSK);
}
void initHardware()
{
// Serial.begin(115200);
// Don't need to set ANALOG_PIN as input,
// that's all it can be.
}
void Lavastoviglie(){
if (stringa == "stop"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println(" Stop");
orologio1=0;
intervallo = 60;
}
if (stringa == "pausa"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
}
if (stringa == "reset"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
orologio1=0;
intervallo = 60;
stringa = "avvia";
}
if (stringa == "avvia") {
orologio1 = orologio1 + 1;
Serial.println(orologio1 );
//Serial.print( char(13) );
if (orologio1 < 14) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println(" <30");
}
if ((orologio1 > 20) and (orologio1<1800)){
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" >30");
}
if ((orologio1 > 1800) and (orologio1 < 1830)) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 0);
Serial.println(" >1800 <1830");
}
if ((orologio1 > 1830) and (orologio1 < 7200)) {
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 0);
if (temp() >tempset){
Serial.println("-Spegnomento resistenza-");
digitalWrite(riscalda, 1);
}
if ((orologio1 > 4200) and (orologio1 < 5200)) {
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
}
if ((orologio1 > 6300) and (orologio1 < 6500)) {
digitalWrite(riscalda, 1);
}
}
if (orologio1 > 7270) {
digitalWrite(scarico, 0);
digitalWrite(lavaggio, 1);
digitalWrite(riscalda, 1);
}
if ((orologio1 > 7300)and(orologio1 < 7350)) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
// stringa = "stop";
}
if ((orologio1 > 7350)and(orologio1 < 8250)) {
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 0);
if (temp() >tempset){
Serial.println("-Spegnomento resistenza-");
digitalWrite(riscalda, 1);
}
digitalWrite(sapone, 1);
// stringa = "stop";
}
if (orologio1 > 8250) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
// stringa = "stop";
}
if (orologio1 > 8300) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
stringa = "stop";
}
delay(1000);}
}
void Lavastoviglie_p2(){
if (stringa == "stop"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println(" Stop");
intervallo = 60;
orologio1=0;
}
if (stringa == "pausa"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
}
if (stringa == "reset"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
orologio1=0;
intervallo = 60;
stringa = "avvia";
}
if (stringa == "avvia") {
orologio1 = orologio1 + 1;
Serial.println(orologio1 );
//Serial.print( char(13) );
if (orologio1 < 14) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println(" <30");
}
if ((orologio1 > 20) and (orologio1<1800)){
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" >30");
}
if ((orologio1 > 1800) and (orologio1 < 1830)) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 0);
Serial.println(" >1800 <1830");
}
if ((orologio1 > 1830) and (orologio1 < 10200)) {
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 0);
if (temp() >tempset){
Serial.println("-Spegnomento resistenza-");
digitalWrite(riscalda, 1);
}
//900 sono 15 min
if ((orologio1 > 4000) and (orologio1 < 4800)) {
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
}
if ((orologio1 > 5800) and (orologio1 < 6800)) {
digitalWrite(riscalda, 1);
}
if ((orologio1 > 7800) and (orologio1 < 8800)) {
digitalWrite(riscalda, 1);
}
if ((orologio1 > 10000) and (orologio1 < 8800)) {
digitalWrite(riscalda, 1);
}
}
if (orologio1 > 10270) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
}
if ((orologio1 > 10300)and(orologio1 < 11300)) {
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 0);
digitalWrite(sapone, 1);
if (temp() >tempset){
Serial.println("-Spegnomento resistenza-");
digitalWrite(riscalda, 1);
}
//stringa = "stop";
}
if ((orologio1 > 11300)and(orologio1 < 11350)) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
//stringa = "stop";
}
if (orologio1 > 11350) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
stringa = "stop";
}
delay(1000);}
}
void Lavastoviglie_p3(){
if (stringa == "stop"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println(" Stop");
orologio1=0;
intervallo = 60;
}
if (stringa == "pausa"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
}
if (stringa == "reset"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
orologio1=0;
intervallo = 60;
stringa = "avvia";
}
if (stringa == "avvia") {
orologio1 = orologio1 + 1;
Serial.println(orologio1 );
//Serial.print( char(13) );
if (orologio1 < 14) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println(" <30");
}
if ((orologio1 > 20) and (orologio1<1800)){
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" >30");
}
if ((orologio1 > 1800) and (orologio1 < 1830)) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 0);
Serial.println(" >1800 <1830");
}
if ((orologio1 > 1830) and (orologio1 < 10200)) {
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
//digitalWrite(riscalda, 0);
//900 sono 15 min
if ((orologio1 > 4000) and (orologio1 < 4800)) {
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
}
if ((orologio1 > 5800) and (orologio1 < 6800)) {
digitalWrite(riscalda, 1);
}
if ((orologio1 > 7800) and (orologio1 < 8800)) {
digitalWrite(riscalda, 1);
}
if ((orologio1 > 10000) and (orologio1 < 8800)) {
digitalWrite(riscalda, 1);
}
}
if (orologio1 > 10270) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
}
if ((orologio1 > 10300)and(orologio1 < 11100)) {
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 0);
if (temp() >tempset){
Serial.println("-Spegnomento resistenza-");
digitalWrite(riscalda, 1);
}
digitalWrite(sapone, 1);
//stringa = "stop";
}
if ((orologio1 > 11100)and(orologio1 < 11150)) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
//stringa = "stop";
}
if (orologio1 > 11150) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
stringa = "stop";
}
delay(1000);}
}
//---------------- programma impulsi
void Lavastoviglie_p4(){
if (stringa == "stop"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println(" Stop");
orologio1=0;
intervallo = 60;
}
if (stringa == "pausa"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
}
if (stringa == "reset"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
orologio1=0;
intervallo = 60;
stringa = "avvia";
}
if (stringa == "avvia") {
orologio1 = orologio1 + 1;
Serial.println(orologio1 );
//Serial.print( char(13) );
if (orologio1 < 14) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println(" <30");
}
if ((orologio1 > 20) and (orologio1<1800)){
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" >30");
}
if ((orologio1 > 120) and (orologio1<1000)){
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 0);
if (temp() >tempset){
Serial.println("-Spegnomento resistenza-");
digitalWrite(riscalda, 1);
}
Serial.println(" >30");
}
if ((orologio1 > 240) and (orologio1<280)){
digitalWrite(lavaggio, 1);
//digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" >30");
}
if ((orologio1 > 1800) and (orologio1 < 1830)) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 0);
Serial.println(" >1800 <1830");
}
if ((orologio1 > 1830) and (orologio1 < 10200)) {
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 0);
if (temp() >tempset){
Serial.println("-Spegnomento resistenza-");
digitalWrite(riscalda, 1);
}
//900 sono 15 min
if ((orologio1 > 2000 + intervallo ) and (orologio1 < 2030 + intervallo )and(orologio1 < 5030)) {
digitalWrite(lavaggio, 1);
intervallo = intervallo + 100;
Serial.println("attesa impulso ");
}
if (orologio1 > 2900) {
digitalWrite(sapone, 1);
Serial.println("rigen ");
}
if ((orologio1 > 4000) and (orologio1 < 4800)) {
digitalWrite(riscalda, 1);
}
if ((orologio1 > 5800) and (orologio1 < 6800)) {
digitalWrite(riscalda, 1);
}
if ((orologio1 > 7800) and (orologio1 < 8800)) {
digitalWrite(riscalda, 1);
}
if ((orologio1 > 10000) and (orologio1 < 8800)) {
digitalWrite(riscalda, 1);
}
}
if (orologio1 > 10270) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
stringa = "stop";
}
if (orologio1 > 10300) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
stringa = "stop";
}
}
delay(1000);}
void rigenerazione(){
if (stringa == "stop"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
Serial.println(" Stop");
orologio1=0;
intervallo = 60;
}
if (stringa == "pausa"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
}
if (stringa == "reset"){
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
Serial.println(" InPausa");
orologio1=0;
intervallo = 60;
stringa = "avvia";
}
if (stringa == "avvia") {
orologio1 = orologio1 + 1;
Serial.println(orologio1 );
//Serial.print( char(13) );
if (orologio1 < 14) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 0);
Serial.println(" <30");
}
if (orologio1 > 20){
digitalWrite(lavaggio, 0);
digitalWrite(scarico, 1);
digitalWrite(sapone, 0);
Serial.println(" >30");
}
if ((orologio1 > 600)) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 0);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 0);
Serial.println(" rigenerazione end");
}
if (orologio1 > 650) {
digitalWrite(lavaggio, 1);
digitalWrite(scarico, 1);
digitalWrite(riscalda, 1);
digitalWrite(sapone, 1);
stringa = "stop";
}
delay(1000);
}
}
int temp() {
// Wait a few seconds between measurements.
delay(1000);
// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
float h = dht.readHumidity();
// Read temperature as Celsius (the default)
float t = dht.readTemperature();
// Read temperature as Fahrenheit (isFahrenheit = true)
float f = dht.readTemperature(true);
// Check if any reads failed and exit early (to try again).
if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println("Failed to read from DHT sensor!");
// return ("Failed to read from DHT sensor!");
}
// Compute heat index in Fahrenheit (the default)
float hif = dht.computeHeatIndex(f, h);
// Compute heat index in Celsius (isFahreheit = false)
float hic = dht.computeHeatIndex(t, h, false);
int Temp;
/* Temp +=("Humidity: ");
Temp +=(h);
Temp +=(" %\t");
Temp +=("Temperature: ");
Temp +=(t);
Temp +=(" *C ");
Temp +=(f);
Temp +=(" *F\t");
Temp +=("Heat index: ");
Temp +=(hic);
Temp +=(" *C ");
Temp +=(hif);
Temp +=(" *F");*/
if (t > 30)
Serial.println("temperatura maggiore di 30!");
Temp =(t);
return Temp;
}
--------------- SuperSolar http://forum.saturnoprezzi.com/
|