Aruduino trädgårdsskötsel (5 / 8 steg)
Steg 5: Arduino kod
Här är koden som jag använde:
#define aref_voltage 3.3
Ljussensor
int photocellPin = 0;
int photocellReading;
Temperatursensor
int tempPin = 1;
int tempReading;
int tempReadingF;
Fukt-sensor
int moistPin = 2;
int moistReading;
Magnetventil
int waterValvePin = 9;
void setup(void) {
Serial.BEGIN(57600);
analogReference(EXTERNAL);
}
void loop(void) {
analoga värden
photocellReading = analogRead(photocellPin);
moistReading = analogRead(moistPin);
tempReading = analogRead(tempPin);
Digital utgång
pinMode (waterValvePin, produktionen);
digitalWrite (waterValvePin, låg);
Beräkna temperatur
flyta spänning = tempReading * aref_voltage / 1024;
flyta temperatureC = (spänning - 0,5) * 100;
flyta temperatureF = (temperatureC * 9 / 5) + 32;
tempReadingF = temperatureF;
Om marken är torr vatten i 10 sekunder
om (moistReading < 600)
{
digitalWrite (waterValvePin, hög);
Delay(10000);
digitalWrite (waterValvePin, låg);
}
Ladda upp sensordata
String stringOne = sträng ("http://api.thingspeak.com/update?key=XXXXXXXXXXXXXXXXXX & Fält2 =") + photocellReading + sträng ("& field3 =") + moistReading + sträng ("& Fält1 =") + tempReadingF;
Serial.println(stringOne);
Delay(3600000);
}