European Project Semester at ISEP - EPS@ISEP

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

humidifier:start [2011/05/31 00:42] – created epsg1wikihumidifier:start [2011/05/31 00:59] (current) epsg1wiki
Line 1: Line 1:
-#include <SPI.h> +{{:humidifier:syntaxcorrect.jpg|}}
-#include <Ethernet.h>+
  
-byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0x44, 0x7A };// mac addres of arduino 
-byte ip[] = { 10,0,18,110 }; // ip address of arduino  
  
-byte server[] = { 193,136,63,5 }; //ip address of the server 
-Client client(server, 8080); 
- 
-int analogPin=0; 
-float LHS; //Local humidity sensor 
-int sensor_number=8; 
-int min_value = 100; 
-int water=0; 
-int pump=1; 
-int fan=1; 
-int stand_by=0; 
- 
- 
-void setup() 
-{ 
-  pinMode(2, OUTPUT); //FAN 
-  pinMode(4, OUTPUT); //PUMP 
-  pinMode(7, INPUT); //WLS 1 
-  pinMode(8, INPUT); //WLS 2 
-   
-   
-  // start the Ethernet connection: 
-  Ethernet.begin(mac, ip); 
-  // start the serial library: 
-  Serial.begin(9600); 
-  // give the Ethernet shield a second to initialize: 
-  delay(1000); 
-} 
- 
-float getValue(String reply) 
-{ 
-  String startString = "Humidity Sensor Id: "; 
-  int start = startString.length() ; 
-  int finish = reply.indexOf(" %"); 
-  String roi = reply.substring(start,finish); 
-  start = roi.indexOf(" "); start++; 
-  String result = roi.substring(start); 
-  char arrayOfChars[result.length()]; 
-  result.toCharArray(arrayOfChars, result.length()); 
-  float res = atof(arrayOfChars); 
-  return res; 
-} 
- 
-//Water Level Control: 
-String control_water() 
-{ 
-  String alarm; 
-  boolean WLS1=0; 
-  boolean WLS2=0; 
-  WLS1=digitalRead(7); 
-  WLS2=digitalRead(8); 
-         
- if (WLS1==0) 
- { 
-   alarm="Water level: OK"; 
-   water=1; 
- } 
- else 
- { 
-   if (WLS2==0) 
-   { 
-     alarm="Water level: 1st Water Level Alarm"; 
-     water=1; 
-   } 
-   else 
-   { 
-     alarm="Water Level: WARNING: Fill up the water!"; 
-     water=0; 
-   } 
- } 
- 
-  WLS1=digitalRead(2); 
-  WLS2=digitalRead(7); 
-                
-  return (alarm); 
-                
-} 
-   
-void loop() 
-{ 
-  float LHS=0; 
-  float value=0; 
-  String alarm; 
-  String reply; 
-  String s1= "GET /eps/servlet/GetSensorData?id=C0" ; 
-  String s2= "&value=&date=&submit=Get+Rel+Humidity+Data&client=auto HTTP/1.0" ; 
-  while (1)  
-  { 
-    stand_by=(pump&fan&water); 
-    LHS = analogRead(analogPin)/ 10.23; 
-    min_value = LHS; 
-    
-   if (client.connect())  
-   { 
-    Serial.println("connected"); 
-    // Make a HTTP request: 
-    if (client.available())  
-    { 
-    for (int i=1; i<sensor_number; i++) 
-    { 
-     client.println(s1+i+s2); 
-      reply = client.read(); 
-     if (reply==!("No data available"))  
-     { 
-        value = getValue(reply); 
-       if (min_value > value) min_value = value; 
-     } 
-    } 
-    } 
-    else 
-    { 
-      // if no connection with the server 
-    Serial.println("connection failed"); 
-    value=min_value; 
-    } 
-    //Humidifier Control: 
-          if( value>70 ) 
-          { 
-            client.println("WARNING: Humidity Level Critical High!"); 
-            if(stand_by==0) 
-            { 
-              digitalWrite(2, LOW); // Deactivate FAN 
-              int fan=0; 
-              digitalWrite(4, LOW); //Dectivate Pump 
-              int pump=0; 
-            } 
-          } 
-          if( value>55 ) 
-          { 
-            client.println("Humidity Level is above 55%"); 
-            if(stand_by==0) 
-            { 
-              digitalWrite(2, LOW); // Deactivate FAN 
-              fan=1; 
-              digitalWrite(4, LOW); //Deactivate Pump 
-              pump=1; 
-              client.println("Humidifier OFF"); 
-            } 
-          if( value<40 )  
-          { 
-            client.println("WARNING: Humidity Level Critical Low!"); 
-            if(stand_by==1) 
-            { 
-              digitalWrite(2, HIGH); // Activate FAN 
-              int fan=0; 
-              digitalWrite(4, HIGH); //Activate Pump 
-              int pump=0; 
-          } 
-          if( value<45 ) 
-          { 
-            client.println("Humidity Level Under 45%"); 
-            if(stand_by==1) 
-            { 
-              digitalWrite(2, HIGH); // Activate FAN 
-              int fan=0; 
-              digitalWrite(4, HIGH); //Activate Pump 
-              int pump=0; 
-            } 
-          } 
-            
-     // Water level message   
-       alarm = control_water(); 
-       client.println(alarm);// ??? cliente.write() 
-        
-    }// if available 
-   } // if do connect 
- 
-  // if the server's disconnected, stop the client: 
-  if (!client.connected())  
-  { 
-    Serial.println(); 
-    Serial.println("disconnecting."); 
-    //client.stop(); 
-  } 
-} 
-delay(1000); 
-} 
-} 
QR Code
QR Code humidifier:start (generated for current page)