Paso 5: Código de Arduino
Aquí está el código que he usado:
#define aref_voltage 3.3
Sensor de luz
int photocellPin = 0;
int photocellReading;
Sensor de temperatura
int tempPin = 1;
int tempReading;
int tempReadingF;
Sensor de humedad
int moistPin = 2;
int moistReading;
Solenoide de
int waterValvePin = 9;
void setup(void) {}
Serial.Begin(57600);
analogReference(EXTERNAL);
}
void loop(void) {}
Lectura analógica
photocellReading = analogRead(photocellPin);
moistReading = analogRead(moistPin);
tempReading = analogRead(tempPin);
salida digital
pinMode (waterValvePin, salida);
digitalWrite (waterValvePin, bajo);
Calcular la temperatura
voltaje del flotador = tempReading * aref_voltage / 1024;
Float temperatureC = (voltaje - 0.5) * 100;
Float temperatureF = (temperatureC * 9 / 5) + 32;
tempReadingF = temperatureF;
Si el suelo es seco agua de 10 segundos
Si (moistReading < 600)
{
digitalWrite (waterValvePin, HIGH);
Delay(10000);
digitalWrite (waterValvePin, bajo);
}
subir datos del sensor
Cadena stringOne = String ("http://api.thingspeak.com/update?key=XXXXXXXXXXXXXXXXXX & Campo2 =") + photocellReading + cadena ("& field3 =") + moistReading + String ("& Campo1 =") + tempReadingF;
Serial.println(stringOne);
Delay(3600000);
}