Ir al contenido principal









codigo arduino ide para nodemcu con dht11

/*  ----------------------------------------------------------------
    www.prometec.net

    Leyendo la temperatura y humedad con un sensor DHT11
    y subir los valores a un sercidor mediante WiFi con el esp8266.
  --------------------------------------------------------------------
*/

#include
#include

DHT11 dht11(D4);

const char* ssid     = "xxxxxxxxx";
const char* password = "xxxxxxxxxxxx";

const char* host = "xxxxxxxxx.ddns.net";

void setup()
{
  Serial.begin(9600);
  // We start by connecting to a WiFi network

  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);

  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
}

void loop()
{
  int err;
  float temperatura, humedad;
  if ((err = dht11.read(humedad, temperatura)) == 0)
  {
    Serial.print("Temperatura: ");
    Serial.print(temperatura);
    Serial.print(" Humedad: ");
    Serial.print(humedad);
    Serial.println();
  }
  else
  {
    Serial.println();
    Serial.print("Error Num :");
    Serial.print(err);
    Serial.println();
  }


  Serial.print("connecting to ");
  Serial.println(host);

  // Use WiFiClient class to create TCP connections
  WiFiClient client;
  const int httpPort = 80;
  if (!client.connect(host, httpPort)) {
    Serial.println("connection failed");
    return;
  }

  // We now create a URL for the request
  String url = "/enviardatos.php";
  String key = "?pass=";
  String dato1 = "&Temperatura=";
  String dato2 = "&Humedad=";

  Serial.print("Requesting URL: ");
  Serial.println(url);

  // This will send the request to the server
  client.print(String("GET ") + url + key + dato1 + temperatura + dato2 + humedad + " HTTP/1.1\r\n" +
               "Host: " + host + "\r\n" +
               "Connection: close\r\n\r\n");
  unsigned long timeout = millis();
  while (client.available() == 0) {
    if (millis() - timeout > 5000) {
      Serial.println(">>> Client Timeout !");
      client.stop();
      return;
    }
  }

  // Read all the lines of the reply from server and print them to Serial
  while (client.available()) {
    String line = client.readStringUntil('\r');
    Serial.print(line);
  }

  Serial.println();
  Serial.println("closing connection");

  delay(60000);
}

Comentarios

Entradas populares de este blog

Distancia focal, Factor de Multiplicación y Números "f"

Distancia Focal. Convencionalmente se dice que una distancia focal de 50mm equivale al ángulo de la visión humana. Una distancia focal mayor, es decir, un teleobjetivo, produce un ángulo de visión menor y, en consecuencia, los objetos parecen más cercanos. Con una distancia focal menor a 50mm, el ángulo de visión es mayor y los objetivos parecen más lejanos. Pero esto sólo es cierto para las cámaras de carrete que tienen un formato estándar de 35mm, (es lo que mide la diagonal del negativo). El sensor de las cámaras réflex es normalmente más pequeño que el negativo de 35mm de una cámara de película, por lo que la imagen que forma el objetivo cubre un área menor. Esto hace que el ángulo sea más pequeño y que la distancia focal aumente. Factor de Multiplicación. Los fabricantes de cámaras digitales indican un factor de multiplicación para sus modelos réflex cuyo sensor es más pequeño que el negativo de 35mm. Para saber cuál es la distancia focal real que va a tener una cámara digital co...

Shield L293D

Account Abstraction (ERC-4337): Simplificando el Control y Uso de Cuentas en Ethereum

 Ethereum es una de las redes más poderosas del ecosistema blockchain, pero con toda esa potencia viene una complejidad que puede resultar abrumadora para muchos usuarios. Account Abstraction (ERC-4337) es la propuesta que busca cambiar ese panorama, haciendo que el control y uso de las cuentas sea más fácil y flexible, sin perder la esencia descentralizada de Ethereum. ¿Qué es Account Abstraction (AA)? Para entenderlo mejor, imagina que manejar una cuenta de Ethereum hoy en día es como conducir un coche manual: necesitas ocuparte de todo, desde el embrague hasta el cambio de marchas. Con ERC-4337 , esa conducción se automatiza, facilitando la experiencia tanto para quienes están empezando en el mundo de las criptomonedas como para los expertos más veteranos. Account Abstraction propone separar las funciones de verificación y ejecución de transacciones en Ethereum. Actualmente, existen dos tipos de cuentas: Externally Owned Accounts (EOA): Controladas por una clave privada (como...