|     Inicio    |   |         |  |   FOROS      |  |      |      
   Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL
  Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino
  AutoIt (Programación) Visual Basic Script (VBS) FireBase (BD autoactualizable) NodeMCU como Arduino
  Teleco - Emisora de A.M. Visual Basic Cosas de Windows Webs interesantes
Translate:
Búsqueda en este sitio:


.

Tutorial del Internet de las Cosas y Bluetooth con el ESP8266
Juan Antonio Villalpando

Volver al índice del tutorial

____________________________

315.- ESP8266 D1 R2. Cliente de un servidor web instalado en el ordenador.

- Vamos a instalar un pequeñísimo servidor web en nuestro ordenador.

- Este servidor tendrá una página web llamada dato.htm su contenido será la frase: Hola amigo.

- El Wemos entrará en esa página web y mostrará en el Monitor Serie esa frase.

- [Más adelante cuando veamos las pantalla LCD, mostrará la frase en la pantalla LCD]

_____________________________________________________________
1.- Instalación de un Servidor web en nuestro ordenador.

- Vamos a esta página:

7B.- Vamos a instalar un pequeño servidor web mediante un archivo de 146 kB.

- Bajamos el archivo: shttp3.exe

- Lo ejecutamos, se creará en nuestro ordenador la siguiente carpeta: C:\shttps

- Entramos en esa carpeta y ejecutamos http.exe

- Vamos a C:\shttps\www y creamos un archivo llamado: dato.htm con este contenido: Hola amigo.

- Si ahora vamos a un navegador web y escribimos la IP del ordenador, por ejemplo: 192.168.1.2/dato.htm

- Saldrá esa frase.

_____________________________________________________________
2.- El ESP8266 actúa como cliente y lee la página dato.htm del Servidor del ordenador.

- Ahora la tarjeta del ESP8266 entrará en el servidor web del ordenador, leerá el archivo dato.htm y mostrará su contenido en el Monitor Serie.

- En este caso asignaremos a nuestra tarjeta una IP estática.

- Tanto el servidor web del ordenador como nuestra tarjeta con el ESP8266 deben estar en la misma red local.

cliente.ino

// Juan Antonio Villalpando
// kio4.com
// Cliente web.

#include <ESP8266WiFi.h>

const char* ssid = "Nombre_de_tu_red_WiFi";
const char* password = "Clave_WiFi";
const char* host = "192.168.1.2"; // IP o dominio del servidor web.

void setup()
{
    Serial.begin(115200);
    delay(10);

  // Conecta a la red wifi.
  Serial.println();
  Serial.print("Conectando con ");
  Serial.println(ssid);
 
  WiFi.begin(ssid, password);
 
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("Conectado con WiFi.");

  // Esta es tu IP
  Serial.print("Esta es tu IP: ");
  Serial.print(WiFi.localIP());
}

void loop()
{
    delay(5000);

    Serial.print("Conectando con ");
    Serial.println(host);

    // Clase cliente
    WiFiClient client;
    const int httpPort = 80;
    if (!client.connect(host, httpPort)) {
        Serial.println("Fallo en la conexión.");
        return;
    }

    // Linea de petición
    String url = "/dato.htm";


    Serial.println(url);

    // Esto es lo que se enviará al servidor.
    client.print(String("GET ") + url + " 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(">>> Rebasado 5 segundos.");
            client.stop();
            return;
        }
    }

    // Lee todas las líneas que ha enviado el servidor.
    while(client.available()) {
        String lineas = client.readStringUntil('\r');
        Serial.print(lineas);
    }

    Serial.println();
    Serial.println("Conexión cerrada.");
}

____________________________________
- Comentarios.

- El host es la IP del servidor web (no el de la tarjeta), por ejemplo 192.168.1.48

- En caso que sea un nombre de dominio lo pondremos de esta forma: kio4.com

- En url pondremos la página donde se encuentra el dato.

____________________________________
- Obtener la fecha y la hora. PHP.

- Si dispones de un servidor web con PHP, puedes subir este código para obtener la hora.

- Mediante PHP

<?php
date_default_timezone_set('America/Bogota');
echo date('d/m/Y/H/i/s', time());
?>

- Puedes poner la zona horaria que te interese:

http://php.net/manual/es/timezones.europe.php

http://php.net/manual/es/timezones.america.php

- Otra manera de obtener fecha y hora es subiendo un archivo PHP con este contenido:

<?php
$timestamp = time();
$datum = date("d/m/Y/H/i/s",$timestamp);
echo "$datum";
?>

- También podemos dejar el archivo anterior

<?php
$datos = $_GET;
$contenido = $datos['contenido'];

date_default_timezone_set($contenido);
echo date('d/m/Y/H/i/s', time());

?>

- Y pedir la hora de la forma siguiente:

http://kio4.com/appinventor/php/fecha.php?contenido=America/Bogota

- En nuestro caso terminaría en Europe/Madrid.

_____________________________________________________________
3.- Propuesta.

- Además de que salga en el Monitor Serie, que salga en la pantalla LCD, consulta el tutorial 340.

_______________________________

- Mi correo:
juana1991@yahoo.com
- KIO4.COM - Política de cookies. Textos e imágenes propiedad del autor:
© Juan A. Villalpando
No se permite la copia de información ni imágenes.
Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación y realizan análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. Acepto    Más información