miércoles, 21 de mayo de 2014

Laboratorio 9

Mostrar en una página web los datos capturados en el Arduino desde dos potenciómetros, un LDR, y un switch Reed.

Lista de los Elementos utilizados:


-Un Arduino

-Una Protoboard
-Dos Potenciómetros
-Un resistor dependiente de la luz ( LDR )
-Un reed switch
-Dos resistencias


Diagrama del montaje en la protoboard:















Diagrama esquematico el circuito:

















Fotos del Montaje:




























vídeo Funcionamiento:


Código fuente arduino:


  1. #include <SPI.h>
  2. #include <Ethernet.h>
  3. #define fotocelda A3  
  4. #define lumino A2      
  5. #define LM01 A0        // Potenciometro 1
  6. #define pot A1        // potenciometro 2
  7. byte mac[] = {
  8.   0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; //Dirección mac
  9. IPAddress ip(192,168,1,14);
  10. EthernetServer server(80);
  11. void setup() {
  12.   Serial.begin(9600);
  13.   pinMode(fotocelda, INPUT);
  14.   pinMode(LM01, INPUT);
  15.   pinMode(pot, INPUT);
  16.    while (!Serial) {
  17.     ; // Esperar al que puerto serial se conecte.
  18.   }
  19.   // iniciar la conexión Ethernet y el servidor:
  20.   Ethernet.begin(mac, ip);
  21.   server.begin();
  22.   Serial.print("server is at ");
  23.   Serial.println(Ethernet.localIP());
  24. }
  25. void loop() {
  26.   EthernetClient client = server.available();
  27.   if (client) {
  28.     Serial.println("new client");
  29.    
  30.     boolean currentLineIsBlank = true;
  31.     while (client.connected()) {
  32.       if (client.available()) {
  33.         char c = client.read();
  34.         Serial.write(c);
  35.      
  36.         if (c == '\n' && currentLineIsBlank) {
  37.           // enviar un encabezado de respuesta HTTP estándar
  38.           client.println("HTTP/1.1 200 OK");
  39.           client.println("Content-Type: text/html");
  40.           client.println("Connection: close");  
  41.    client.println("Refresh: 2");  
  42.           client.println();
  43.           client.println("<!DOCTYPE HTML>");
  44.           client.println("<html>");
  45.      
  46.             int valorL = analogRead(fotocelda);
  47.             int luminosidad =  map(valorL, 0, 1023, 0, 100);
  48.             client.print("Reed");
  49.             client.print(" es: ");
  50.             client.print(luminosidad);
  51.             client.println("<br />");
  52.            
  53.             int valorLuz = analogRead(lumino);
  54.             int luz =  map(valorLuz, 0, 1023, 0, 100);
  55.             client.print("Luz");
  56.             client.print(" es ");
  57.             client.print(luz);
  58.             client.println("<br />");
  59.      
  60.             int valorT1 = analogRead(LM01);
  61.             int TEMP1 =  map(valorT1, 0, 1023, 0, 100);
  62.             client.print("Potenciometro 1");
  63.             client.print(" es: ");
  64.             client.print(TEMP1);
  65.             client.println("<br />");  
  66.             int valorT2 = analogRead(pot);
  67.             int TEMP2 =  map(valorT2, 0, 1023, 0, 100);
  68.             client.print("Potenciometro 2");
  69.             client.print(" es ");
  70.             client.print(TEMP2);
  71.             client.println("<br />");              
  72.          
  73.           client.println("</html>");
  74.           break;
  75.         }
  76.         if (c == '\n') {
  77.           /
  78.           currentLineIsBlank = true;
  79.         }
  80.         else if (c != '\r') {
  81.           currentLineIsBlank = false;
  82.         }
  83.       }
  84.     }
  85.     delay(1);
  86.     client.stop();
  87.     Serial.println("client disonnected");
  88.   }
  89. }

No hay comentarios:

Publicar un comentario