hello guys
how to add 2sek delay between changes on relays ??
I have already delay on temperature changes to changes relay state , but need 2 sek delay for switching relays
#include <OneWire.h>
#include <DallasTemperature.h>
// 2 pin sensor ds18b20
#define ONE_WIRE_BUS 2
// tworzymy obiekt
OneWire oneWire(ONE_WIRE_BUS);
// cd. konfiguracji biblioteki
DallasTemperature sensors(&oneWire);
const int relay1 = 3; // przekaznik relay1 podpiety do pinu nr. 1
const int relay2 = 4; // analogicznie jak wyżej...
const int relay3 = 5;
const int relay4 = 6;
const int relay5 = 7;
int i;
float temp;
void setup(void)
{
for(i=relay1;i<relay5+1;i++){
pinMode(i,OUTPUT); // ustaw piny od 1 do 5 jak wyjścia
}
for(i=relay1;i<relay5+1;i++){
digitalWrite(i,HIGH); // wyłącz wszystkie przy starcie
}
// start serial port
Serial.begin(9600);
Serial.println("Dallas Temperature");
// uruchom biblioteke
sensors.begin();
}
void loop(void)
{
Serial.println(temp);
sensors.requestTemperatures(); // Send the command to get temperatures
temp = sensors.getTempCByIndex(0);
if(temp < 15.0){
digitalWrite(relay1,HIGH); // wylacz wszystko
digitalWrite(relay2,HIGH);
digitalWrite(relay3,HIGH);
digitalWrite(relay4,HIGH);
digitalWrite(relay5,HIGH);
}else if(temp >= 15.0 && temp < 26.0){
digitalWrite(relay1,LOW); // zalacz tylko przezkaznik nr 1
digitalWrite(relay2,HIGH);
digitalWrite(relay3,HIGH);
digitalWrite(relay4,HIGH);
digitalWrite(relay5,HIGH);
}else if(temp >= 26.0 && temp < 28.5){
digitalWrite(relay1,HIGH); // zalacz tylko przezkaznik nr 2
digitalWrite(relay2,LOW);
digitalWrite(relay3,HIGH);
digitalWrite(relay4,HIGH);
digitalWrite(relay5,HIGH);
}else if(temp >= 28.5 && temp < 30.5){
digitalWrite(relay1,HIGH); // zalacz tylko przezkaznik nr 3
digitalWrite(relay2,HIGH);
digitalWrite(relay3,LOW);
digitalWrite(relay4,HIGH);
digitalWrite(relay5,HIGH);
}else if(temp >= 30.5 && temp < 33.0){
digitalWrite(relay1,HIGH); // zalacz tylko przezkaznik nr 4
digitalWrite(relay2,HIGH);
digitalWrite(relay3,HIGH);
digitalWrite(relay4,LOW);
digitalWrite(relay5,HIGH);
}else if(temp >= 33.0){
digitalWrite(relay1,HIGH); // zalacz tylko przezkaznik nr 5
digitalWrite(relay2,HIGH);
digitalWrite(relay3,HIGH);
digitalWrite(relay4,HIGH);
digitalWrite(relay5,LOW);
}
delay(1000*30); // odczekaj 1000ms * 30 = 30 sek
}