Go Down

Topic: Ayuda Con Webclient (Read 571 times) previous topic - next topic

MaxMega

Hola gente les comento , estoy armando la alarma para mi casa y tengo un pequeño problema, mas que problema consulta sobre un code ...
Tengo Ard Mega 2560 y Ethernet Shield Wiznet ..
El arduino es de solo entradas , de sensores , 3 sensores para ser mas exacto , pero yo quiero que cuando detecte una entrada (sensor) llame a la web http://ip.com/blabla ...
por cada sensor espicifico , osea entrada 1 llamar  http://ip.com/blabla  , entrada 2 llamar  http://ip.com/blabla2 , entrada3  http://ip.com/blabla3.. pero la tengo liada con el code , la verdad que soy bastante nuevo en el tema pero me voy defendiendo , espero que alguna me pueda dar una mano, saludos y desde ya gracias!

curro92

Hola,
no entiendo muy bien qué quieres decir cuando hablas de "llamar a una web". ¿Qué quieres que suceda en la web cuando un sensor detecta algo?

MaxMega

en realidad no sucede nada en la web , al entrar a la web , http://ip/1
modificaria una variable , en si lo que necesito es que entre a una direccion por cada sensor . al entrar me modifica la variable y soy feliz.

Sergegsx

creo que esto es lo que buscas...

Code: [Select]

//Stand alone Ethernet unit arduino sketch
//Author: Sergio E. (based on the work done by: Trystan Lea - openenergymonitor.org GPL)

//Libraries
#include <SPI.h>
#include <Ethernet.h>

//Server IP address
byte server[] = { 188,121,46,128 };       // servidor godaddy

//Setup a client
Client client(server, 80);

byte ip[] = { 192,168,1,69 };
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte gateway[] = { 192, 168, 1, 1 };   //your router's IP address

void setup()
{
  //Start ethernet, usb serial and xbee serial.
Ethernet.begin(mac, ip, gateway);     //, subnet);//  Ethernet.begin(mac, ip);
Serial.begin(9600);
   Serial.println(" -------------------- Iniciando Arduino ------------------------");
}

void loop()
{
statusdebug = digitalRead(inputPindebug);
}

      digitalWrite(statusled, HIGH);   // set the LED on
//Output to serial
Serial.print(apparentPower);
Serial.print('\t');
Serial.print(realPower);
Serial.print('\t');
Serial.print(Vrms);
Serial.print('\t');
Serial.print(Irms);
Serial.print('\t');
Serial.print(powerFactor);
Serial.print('\t');
Serial.print(freq/1000);  //sergio
Serial.print('\t');
Serial.print(statusservidor);
Serial.print("\t");
Serial.println(statusdebug);

    Serial.print("GET http://blablablacom/blablbla/emon.php?P=");
    Serial.print(apparentPower);
    Serial.print("&R=");
    Serial.print(realPower);
    Serial.print("&V=");
    Serial.print(Vrms);
    Serial.print("&I=");
    Serial.print(Irms);
    Serial.print("&X=");
    Serial.print(powerFactor);
    Serial.print("&F=");
    Serial.print(freq/1000);
    Serial.print("&S=");
    Serial.print(statusservidor);
    Serial.print("&D=");
    Serial.println(statusdebug);


  //Send the data -----------------------------------------------------------------------
  if (client.connect()) {   
client.print("GET http://balblabla.com/blabla/emon.php?P="); //   client.print("GET /xampp/post.pl?P=");
    client.print(apparentPower);
    client.print("&R=");
    client.print(realPower);
    client.print("&V=");
    client.print(Vrms);
    client.print("&I=");
    client.print(Irms);
    client.print("&X=");
    client.print(powerFactor);
    client.print("&F=");
    client.print(freq/1000);
    client.print("&S=");
    client.print(statusservidor);
    //Not sure if this line stops it working...?
    //client.println(" HTTP/1.1");
    client.println();
    client.stop();
       //   Serial.println("Data Send.");
    delay(8000);  // tarda 2 segundos en subir los datos al servidor. añadimos delay de 8 segundos para tener registro cada 10 segundos
  }
  else {
    Serial.println(" ***************** Failed to connect to client ***************** ");
    delay(5000);
  }
  //-------------------------------- end of send data ---------------------------------------
    digitalWrite(statusled, LOW);    // set the LED off
} // fin del void loop()



por supuesto este codigo no compila directamente ya que he eliminado todo lo relacionado con mi programa. pero puedes ver lo que a ti te interesa de ocmo llamar a una dirección y pasarle parametros para que cambien variables o las guarde en mysql q es lo que hace mi php

MaxMega

gracias sergio este fin de semana lo voy a chekear todo el code . estamos en contacto.

Go Up