Add Soile_Moisture_Sensor_Arduino_MEGA-16_Sensors.ino
This commit is contained in:
@@ -0,0 +1,239 @@
|
||||
// For Mega you can add al of the commands and uncomment. For nano you will need to comment
|
||||
// out some of the script.
|
||||
|
||||
//// pump digital pins, 16 digital pins but grove only seems to have the
|
||||
//// split mapped diferent on the split cables. So only using 8.
|
||||
//const int pumpPin0 = 0;
|
||||
//const int pumpPin1 = 1;
|
||||
//const int pumpPin2 = 2;
|
||||
//const int pumpPin3 = 3;
|
||||
//const int pumpPin4 = 4;
|
||||
//const int pumpPin5 = 5;
|
||||
//const int pumpPin6 = 6;
|
||||
//const int pumpPin7 = 7;
|
||||
|
||||
// soil moisture analog pins, 16 analog pins but grove only seems to have the
|
||||
// split mapped diferent on the split cables. So only using 8.
|
||||
const int soilSensorA0 = A0;
|
||||
const int soilSensorA1 = A2;
|
||||
const int soilSensorA2 = A4;
|
||||
const int soilSensorA3 = A6;
|
||||
const int soilSensorA4 = A8;
|
||||
const int soilSensorA5 = A10;
|
||||
const int soilSensorA6 = A12;
|
||||
const int soilSensorA7 = A14;
|
||||
|
||||
// soil moisture reading that is dry
|
||||
const int dry = 680;
|
||||
// soil moisture reading that is moist
|
||||
const int moist = 680;
|
||||
// print delay
|
||||
const int printDelay = 5000;
|
||||
// per sensor script delay
|
||||
//const int sensorsDelay = 5000;
|
||||
// Serial write speak
|
||||
const int serialWrite = 19200;
|
||||
|
||||
// site number if you have more than one
|
||||
const int siteNumber = 1;
|
||||
// Cycle Delay every 2 hours
|
||||
//const int cycleDelay = 7200000;
|
||||
// water delay
|
||||
//const in waterDelay = 10000;
|
||||
|
||||
void setup() {
|
||||
// pinMode(pumpPin1, OUTPUT);
|
||||
// pinMode(soilSensor0, INPUT);
|
||||
// Serial.begin(serialwrite);
|
||||
// digitalWrite(pumpPin1, HIGH);
|
||||
// delay(sensordelay);
|
||||
// pinMode(pumpPin1, OUTPUT);
|
||||
// pinMode(soilSensor1, INPUT);
|
||||
// Serial.begin(serialwrite);
|
||||
// digitalWrite(pumpPin2, HIGH);
|
||||
// delay(sensordelay);
|
||||
// pinMode(pumpPin2, OUTPUT);
|
||||
// pinMode(soilSensor2, INPUT);
|
||||
// Serial.begin(serialwrite);
|
||||
// digitalWrite(pumpPin3, HIGH);
|
||||
// delay(sensordelay);
|
||||
// pinMode(pumpPin3, OUTPUT);
|
||||
// pinMode(soilSensor3, INPUT);
|
||||
// Serial.begin(serialwrite);
|
||||
// digitalWrite(pumpPin4, HIGH);
|
||||
// delay(sensordelay);
|
||||
// pinMode(pumpPin4, OUTPUT);
|
||||
// pinMode(soilSensor4, INPUT);
|
||||
// Serial.begin(serialwrite);
|
||||
// digitalWrite(pumpPin5, HIGH);
|
||||
// delay(sensordelay);
|
||||
// pinMode(pumpPin5, OUTPUT);
|
||||
// pinMode(soilSensor5, INPUT);
|
||||
// Serial.begin(serialwrite);
|
||||
// digitalWrite(pumpPin6, HIGH);
|
||||
// delay(sensordelay);
|
||||
// pinMode(pumpPin6, OUTPUT);
|
||||
// pinMode(soilSensor6, INPUT);
|
||||
// Serial.begin(serialwrite);
|
||||
// digitalWrite(pumpPin6, HIGH);
|
||||
// delay(sensordelay);
|
||||
// pinMode(pumpPin7, OUTPUT);
|
||||
// pinMode(soilSensor7, INPUT);
|
||||
// Serial.begin(serialwrite);
|
||||
// digitalWrite(pumpPin7, HIGH);
|
||||
// delay(sensordelay);
|
||||
Serial.begin(serialWrite);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
|
||||
// Delay to allow any reboots to happen
|
||||
delay(120000);
|
||||
|
||||
Serial.println("Sensing Moisture on Zone " + String(siteNumber) + "!");
|
||||
delay(printDelay);
|
||||
|
||||
// Moisture Sensor A0
|
||||
int moisture0 = analogRead(soilSensorA0);
|
||||
Serial.println("Pot 1: " + String(moisture0));
|
||||
delay(5000);
|
||||
|
||||
if (moisture0 >= dry) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 1 is dry");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
if (moisture0 <= moist) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 1 is moist");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
// Moisture Sensor A2
|
||||
int moisture1 = analogRead(soilSensorA1);
|
||||
Serial.println("Pot 2: " + String(moisture1));
|
||||
delay(5000);
|
||||
|
||||
if (moisture1 >= dry) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 2 is dry");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
if (moisture1 <= moist) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 2 is moist");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
// Moisture Sensor A4
|
||||
int moisture2 = analogRead(soilSensorA2);
|
||||
Serial.println("Pot 3: " + String(moisture2));
|
||||
delay(5000);
|
||||
|
||||
if (moisture2 >= dry) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 3 is dry");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
if (moisture2 <= moist) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 3 is moist");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
// Moisture Sensor A6
|
||||
int moisture3 = analogRead(soilSensorA3);
|
||||
Serial.println("Pot 4: " + String(moisture3));
|
||||
delay(5000);
|
||||
|
||||
if (moisture3 >= dry) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 4 is dry");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
if (moisture3 <= moist) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 4 is moist");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
// Moisture Sensor A8
|
||||
int moisture4 = analogRead(soilSensorA4);
|
||||
Serial.println("Pot 5: " + String(moisture4));
|
||||
delay(5000);
|
||||
|
||||
if (moisture4 >= dry) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 5 is dry");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
if (moisture4 <= moist) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 5 is moist");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
// Moisture Sensor A10
|
||||
int moisture5 = analogRead(soilSensorA5);
|
||||
Serial.println("Pot 6: " + String(moisture5));
|
||||
delay(5000);
|
||||
|
||||
if (moisture5 >= dry) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 6 is dry");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
if (moisture5 <= moist) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 6 is moist");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
// Moisture Sensor A11
|
||||
int moisture6 = analogRead(soilSensorA6);
|
||||
Serial.println("Pot 7: " + String(moisture6));
|
||||
delay(5000);
|
||||
|
||||
if (moisture6 >= dry) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 7 is dry");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
if (moisture6 <= moist) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 7 is moist");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
// Moisture Sensor A12
|
||||
int moisture7 = analogRead(soilSensorA7);
|
||||
Serial.println("Pot 8: " + String(moisture7));
|
||||
delay(5000);
|
||||
|
||||
if (moisture7 >= dry) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 8 is dry");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
if (moisture7 <= moist) {
|
||||
// the soil is too dry, water!
|
||||
Serial.println("Pot 8 is moist");
|
||||
delay(5000);
|
||||
}
|
||||
|
||||
Serial.println("Done Sensing Moisture!");
|
||||
delay(5000);
|
||||
|
||||
Serial.println("Next moisture check is in a couple hrs!");
|
||||
delay(printDelay);
|
||||
|
||||
delay(3600000);
|
||||
}
|
||||
Reference in New Issue
Block a user