Greenhouse Monitoring with Arduino
In today’s greenhouses, many parameter measurements are required to monitor and control for the good quality and productivity of plants.
Project description
Code
Source Code - Green House Monitoring
c_cpp
1#include<LiquidCrystal.h> 2#include<dht.h> 3 4#define dht_dpin A1 5#define LUX A0 6LiquidCrystal lcd(2,3,4,5,6,7); 7 8dht DHT; 9 10#define light 10 11#define fan 8 12#define spray 11 13#define motor 12 14#define soil 9 15 16int temperature, humidity, temp,Temp; 17int check; 18int test,test1,test2,test3; 19float volt,lux,value; 20 21byte degree[8] = 22 { 23 0b00011, 24 0b00011, 25 0b00000, 26 0b00000, 27 0b00000, 28 0b00000, 29 0b00000, 30 0b00000 31 }; 32 33void setup() 34{ 35 Serial.begin(9600); 36 lcd.begin(16,2); 37 38 pinMode(soil, INPUT); 39 pinMode(light, OUTPUT); 40 pinMode(fan, OUTPUT); 41 pinMode(spray, OUTPUT); 42 pinMode(motor, OUTPUT); 43 44 lcd.createChar(1, degree); 45 lcd.setCursor(0,0); 46 lcd.print("Green House "); 47 lcd.setCursor(0,1); 48 lcd.print(" Monitering"); 49 delay(2000); 50 lcd.clear(); 51 lcd.setCursor(0,0); 52 lcd.print("By Saddam Khan"); 53 lcd.setCursor(0,1); 54 lcd.print("ENGINEERS GARAGE"); 55 delay(2000); 56 lcd.clear(); 57} 58 59void loop() 60{ 61 /*-----Light Intensity------*/ 62 63 DHT.read11(dht_dpin); 64 lcd.clear(); 65 lcd.setCursor(0,0); 66 lcd.print(" humidity="); 67 lcd.print(humidity=DHT.humidity); 68 lcd.print(" % "); 69// lcd.clear(); 70 lcd.setCursor(0,1); 71 lcd.print("temperature="); 72 lcd.print(temperature=DHT.temperature); 73 lcd.write(1); 74 lcd.print("C "); 75 delay(2000); 76 lcd.clear(); 77 78 value=analogRead(LUX); 79 volt=(value/1023.0)*5; 80 lux=((2500/volt)-500)/3.3; 81 delay(10); 82 83 if(lux<100) 84 { 85 digitalWrite(light, HIGH); 86 Serial.println("AT+CMGF=1");\\ 87 Serial.println("AT+CMGS=\\"9784398922\\""); 88 Serial.println("LOW LIGHT "); 89 Serial.println("LIGHT TURNED ON"); 90 Serial.print("Light Intensity: "); 91 Serial.print(lux); 92 Serial.println(" LUX"); 93 Serial.print("Temperature: "); 94 Serial.print(temperature); 95 Serial.println(" Degree Celsius"); 96 Serial.print("Humidity: "); 97 Serial.print(humidity); 98 Serial.println(" %"); 99 Serial.write(26); 100 lcd.clear(); 101 lcd.setCursor(0,0); 102 lcd.print("Low light "); 103 lcd.print(lux); 104 lcd.print(" LUX"); 105 lcd.setCursor(0,1); 106 lcd.print("Lights turned ON"); 107 check=1; 108 test=1; 109 delay(2000); 110 } 111 else 112 { 113 if(check==1) 114 { 115 116 Serial.println("AT+CMGF=1");\\ 117 Serial.println("AT+CMGS=\\"9784398922\\""); 118 Serial.print("LIGHT TURNED OFF"); 119 Serial.print("Light Intensity: "); 120 Serial.print(lux); 121 Serial.println(" LUX"); 122 Serial.print("Temperature: "); 123 Serial.print(temperature); 124 Serial.println(" degree Celsius"); 125 Serial.print("Humidity: "); 126 Serial.print(humidity); 127 Serial.println(" %"); 128 Serial.write(26); 129 check=0; 130 lcd.clear(); 131 lcd.setCursor(0,0); 132 lcd.print("light int: "); 133 lcd.print(lux); 134 lcd.print(" LUX"); 135 lcd.setCursor(0,1); 136 lcd.print("Lights turned OFF"); 137 } 138 digitalWrite(light, LOW); 139 test=0; 140 delay(2000); 141 } 142 143 144 145 if(temperature > 40) 146 { 147 digitalWrite(fan, HIGH); 148 Serial.println("AT+CMGF=1");\\ 149 Serial.println("AT+CMGS=\\"9784398922\\""); 150 Serial.println("TEMPERATURE INCREASES FROM CRITICAL LEVEL"); 151 Serial.println("FAN TURNED ON"); 152 Serial.print("Light Intensity: "); 153 Serial.print(lux); 154 Serial.println(" LUX"); 155 Serial.print("Temperature: "); 156 Serial.print(temperature); 157 Serial.println(" degree Celsius"); 158 Serial.print("Humidity: "); 159 Serial.print(humidity); 160 Serial.println(" %"); 161 162 Serial.write(26); 163 lcd.clear(); 164 lcd.setCursor(0,0); 165 lcd.print("Temp increases "); 166 lcd.setCursor(0,1); 167 lcd.print("Fan Turned ON "); 168 delay(2000); 169 lcd.clear(); 170 lcd.setCursor(0,0); 171 lcd.print("Temperature"); 172 lcd.setCursor(0,1); 173 lcd.print(temperature); 174 lcd.write(1); 175 lcd.print("C"); 176 check=2; 177 test2=1; 178 delay(2000); 179 } 180 else 181 { 182 if(check==2) 183 { 184 Serial.println("AT+CMGF=1");\\ 185 Serial.println("AT+CMGS=\\"9784398922\\""); 186 Serial.println("FAN TURNED OFF"); 187 Serial.print("Light Intensity: "); 188 Serial.print(lux); 189 Serial.println(" LUX"); 190 Serial.print("Temperature: "); 191 Serial.print(temperature); 192 Serial.println(" degree Celsius"); 193 Serial.print("Humidity: "); 194 Serial.print(humidity); 195 Serial.println(" %"); 196 197 Serial.write(26); 198 check=0; 199 test1=0; 200 } 201 digitalWrite(fan, LOW); 202 delay(1000); 203 } 204 205 if(humidity < 30) 206 { 207 digitalWrite(spray, HIGH); 208 digitalWrite(13, HIGH); 209 Serial.println("AT+CMGF=1");\\ 210 Serial.println("AT+CMGS=\\"9784398922\\""); 211 Serial.println("HUNIDITY INCREASES FROM DEFINED LEVEL "); 212 Serial.println("SPRAY TURNED ON"); 213 Serial.print("Light Intensity: "); 214 Serial.print(lux); 215 Serial.println(" LUX"); 216 Serial.print("Temperature: "); 217 Serial.print(temperature); 218 Serial.println(" degree Celsius"); 219 Serial.print("Humidity: "); 220 Serial.print(humidity); 221 Serial.println(" %"); 222 223 Serial.write(26); 224 lcd.clear(); 225 lcd.setCursor(0,0); 226 lcd.print("Humidity increas"); 227 lcd.setCursor(0,1); 228 lcd.print("Spray Turned ON "); 229 delay(2000); 230 lcd.clear(); 231 lcd.setCursor(0,0); 232 lcd.print("Humidity"); 233 lcd.setCursor(0,1); 234 lcd.print(humidity); 235 lcd.print(" %"); 236 check=3; 237 test2=1; 238 delay(2000); 239 } 240 else 241 { 242 if(check==3) 243 { 244 Serial.println("AT+CMGF=1");\\ 245 Serial.println("AT+CMGS=\\"9784398922\\""); 246 Serial.println("SPRAY TURNED OFF"); 247 Serial.print("Light Intensity: "); 248 Serial.print(lux); 249 Serial.println(" LUX"); 250 Serial.print("Temperature: "); 251 Serial.print(temperature); 252 Serial.println(" degree Celsius"); 253 Serial.print("Humidity: "); 254 Serial.print(humidity); 255 Serial.println(" %"); 256 Serial.write(26); 257 check=0; 258 } 259 digitalWrite(13, LOW); 260 digitalWrite(spray, LOW); 261 test2=0; 262 delay(2000); 263 } 264 265 if(digitalRead(soil)==1) 266 { 267 digitalWrite(motor, HIGH); 268 Serial.println("AT+CMGF=1");\\ 269 Serial.println("AT+CMGS=\\"9784398922\\""); 270 Serial.println("WATER REQUIRED "); 271 Serial.println("MOTOR TURNED ON "); 272 Serial.print("Light Intensity: "); 273 Serial.print(lux); 274 Serial.println(" LUX"); 275 Serial.print("Temperature: "); 276 Serial.print(temperature); 277 Serial.println(" degree Celsius"); 278 Serial.print("Humidity: "); 279 Serial.print(humidity); 280 Serial.println(" %"); 281 Serial.write(26); 282 check=4; 283 test3=1; 284 lcd.clear(); 285 lcd.setCursor(0,0); 286 lcd.print("Water Required "); 287 lcd.setCursor(0,1); 288 lcd.print("Motor turned ON"); 289 delay(2000); 290 } 291 292 else 293 { 294 if(check==4) 295 { 296 Serial.println("AT+CMGF=1");\\ 297 Serial.println("AT+CMGS=\\"9784398922\\""); 298 Serial.println("WATER REQUIRED "); 299 Serial.println("MOTOR TURNED OFF "); 300 Serial.print("Light Intensity: "); 301 Serial.print(lux); 302 Serial.println(" LUX"); 303 Serial.print("Temperature: "); 304 Serial.print(temperature); 305 Serial.println(" degree Celsius"); 306 Serial.print("Humidity: "); 307 Serial.print(humidity); 308 Serial.println(" %"); 309 Serial.write(26); 310 check=0; 311 } 312 digitalWrite(motor, LOW); 313 test3=0; 314 } 315 delay(100); 316} 317
Downloadable files
Green House Monitoring
Green House Monitoring

Green House Monitoring
Green House Monitoring

Comments
Only logged in users can leave comments