BTS Mesure BTS Mesure
ESP01Arduino/ PCESP01/DHT11SQL.phpgraphesLabview

L'ESP01 et l'IDE Arduino

Le support de gauche, avec l'ajout d'un commutateur permet aussi de programmer l'ESP01.

 

 

Ce module nous permet aussi de contourner le pare-feu du lycée pour que Labview puisse se connecter à Internet !

 

 

Voici le programme que nous pouvons téléverser grâce à l'IDE Arduino dans un ESP01.

Ce programme permet aussi bien à un Arduino qu'à un PC d'utiliser l'ESP01 pour envoyer des URLs par Wifi

#include <ESP8266WiFi.h>

const char* ssid     = "tpil";
const char* password = "12345678";

const char* host = "bts2m.free.fr";  // Adresse du serveur 
int value = 0;
String url;

void setup() {
  // put your setup code here, to run once:
  delay(5000);
  Serial.begin(115200);
  delay(2000);
  Serial.println();
  Serial.print("Connexion a ");
  Serial.println(ssid);
  WiFi.mode(WIFI_STA);
  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());
  delay(500);
  Serial.println("url deja remplie : http://bts2m.free.fr/Wifi/");
  Serial.println("Format de transfert des mesures :");
  Serial.println("sql.php?table=1&M1=1.1&M2=2.2&M3=3.3");
  delay(500);
  while (Serial.available()) Serial.read();
}

void loop() {
  // put your main code here, to run repeatedly:
   if (Serial.available() > 0) {
      delay(10);
      url = Serial.readStringUntil('\r');
      Serial.println("Reception");
      Serial.println(url);

        Serial.print("connecting to ");
        Serial.println(host);
        WiFiClient client;
        const int httpPort = 80;
        if (!client.connect(host, httpPort)) {
          Serial.println("connection failed");
          return;}
            // This will send the request to the server
        client.print(String("GET /Wifi/") + 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(">>> Client Timeout !");
            client.stop();
            return;
          }}
        while (client.available()) {
          String line = client.readStringUntil('\r');
          Serial.print(line);}
  delay(500);
  while (Serial.available()) Serial.read();     
    }
  }