Actualizaciones de las valvulas, el sensor de ph y la bomba de agua
This commit is contained in:
parent
d97cb1f9b0
commit
d89bf5b0a6
|
@ -0,0 +1,224 @@
|
|||
#include <RTClib.h>
|
||||
#include <Wire.h>
|
||||
|
||||
float calibration_value = 21.34;
|
||||
int phval = 0;
|
||||
unsigned long int avgval;
|
||||
int buffer_arr[10], temp;
|
||||
int relePin1 = 2;
|
||||
int relePin2 = 3;
|
||||
RTC_DS3231 rtc;
|
||||
bool inicio_bombeo = true;
|
||||
bool fin_bombeo = true;
|
||||
|
||||
void setup()
|
||||
{
|
||||
Serial.begin(9600);
|
||||
}
|
||||
void loop() {
|
||||
for (int i = 0; i < 10; i++)
|
||||
{
|
||||
buffer_arr[i] = analogRead(A0);
|
||||
delay(30);
|
||||
}
|
||||
for (int i = 0; i < 9; i++)
|
||||
{
|
||||
for (int j = i + 1; j < 10; j++)
|
||||
{
|
||||
if (buffer_arr[i] > buffer_arr[j])
|
||||
{
|
||||
temp = buffer_arr[i];
|
||||
buffer_arr[i] = buffer_arr[j];
|
||||
buffer_arr[j] = temp;
|
||||
}
|
||||
}
|
||||
}
|
||||
avgval = 0;
|
||||
for (int i = 2; i < 8; i++)
|
||||
avgval += buffer_arr[i];
|
||||
float volt = (float)avgval * 5.0 / 1024 / 6;
|
||||
float ph_act = -5.70 * volt + calibration_value;
|
||||
if (ph_act >= 6.50){
|
||||
digitalWrite (relePin1, HIGH);
|
||||
}else {
|
||||
digitalWrite (relePin1, LOW);
|
||||
DateTime horario = rtc.now();
|
||||
|
||||
//Riego de las 00:00
|
||||
if (relePin1, LOW && horario.hour() == 0 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("00:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 0 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("00:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de las 06:00
|
||||
if (relePin1, LOW && horario.hour() == 6 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("06:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 6 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("06:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de 08:00
|
||||
if (relePin1, LOW && horario.hour() == 8 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("08:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 8 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("08:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de 10:00
|
||||
if (relePin1, LOW && horario.hour() == 10 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("10:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 10 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("10:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de 11:00
|
||||
if (relePin1, LOW && horario.hour() == 11 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("11:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 11 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("11:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de 12:00
|
||||
if (relePin1, LOW && horario.hour() == 12 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("12:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 12 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("12:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de 13:00
|
||||
if (relePin1, LOW && horario.hour() == 13 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("13:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 13 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("13:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de 14:00
|
||||
if (relePin1, LOW && horario.hour() == 14 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("14:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 14 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("14:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de 15:00
|
||||
if (relePin1, LOW && horario.hour() == 15 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("15:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 15 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("15:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de 17:00
|
||||
if (relePin1, LOW && horario.hour() == 17 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("17:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 17 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("17:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
|
||||
//Riego de 20:00
|
||||
if (relePin1, LOW && horario.hour() == 20 && horario.minute() == 0){
|
||||
if (inicio_bombeo = true){
|
||||
digitalWrite (relePin2, HIGH);
|
||||
Serial.println("20:00 ON");
|
||||
inicio_bombeo = false;
|
||||
}
|
||||
}
|
||||
if (relePin1, LOW && horario.hour() == 20 && horario.minute() == 5){
|
||||
if (fin_bombeo = true){
|
||||
digitalWrite (relePin2, LOW);
|
||||
Serial.println("20:05 OFF");
|
||||
fin_bombeo = false;
|
||||
}
|
||||
}
|
||||
delay(1000);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue