1. // nodeMCU Amica V2 Module mit ESP8266 12E - WiFiWebClient+DHT22+LDR
  2. // Board: NodeMCU 1.0 (ESP12E Module) - 2019-12-13 22:43
  3.  
  4. #include <ESP8266WiFi.h>
  5. #include "DHT.h"
  6. #define ssid "mrge-ap-bu46"
  7. #define password ""
  8. #define host "10.50.20.xx"
  9. #define httpPort 80
  10.  
  11. #define DHTPIN D5
  12. #define DHTTYPE DHT22
  13. DHT dht(DHTPIN, DHTTYPE);
  14.  
  15. void setup() {
  16. Serial.begin(115200); Serial.println("\nWiFiWebClient-1+DHT22+LDR");
  17. WiFi.mode(WIFI_STA); pinMode(D0,OUTPUT); digitalWrite(D0,LOW);
  18. WiFi.begin(ssid, password);
  19. Serial.println("Verbinde mit " + String(ssid));
  20. while (WiFi.status() != WL_CONNECTED) {
  21. Serial.print("."); delay(500);
  22. }
  23. Serial.println("\nWiFi verbunden mit " + String(ssid));
  24. Serial.println("IP address: " + WiFi.localIP().toString());
  25. dht.begin();
  26. }
  27.  
  28. void loop() {
  29. digitalWrite(D0,HIGH);
  30. delay(5000);
  31. digitalWrite(D0,LOW);
  32. int ldr = analogRead(A0);
  33. float h = dht.readHumidity();
  34. float t = dht.readTemperature();
  35. if (isnan(h) || isnan(t)) { // falls ein Messwert nicht ...
  36. Serial.println("Problem beim Lesen eines der Messwerte");
  37. return;
  38. }
  39.  
  40. Serial.println("\nVerbinde mit " + String(host));
  41. WiFiClient client; // Verbindung zum Webserver
  42. if (!client.connect(host, httpPort)) {
  43. Serial.println("connection failed");
  44. return;
  45. }
  46. Serial.println("WiFi verbunden per " + String(ssid) +
  47. " mit " + String(host));
  48. String pfad = "/test.php";
  49.  
  50. String mw1 = String(h);
  51. String mw2 = String(t);
  52. String mw3 = String(ldr);
  53. String query = "?mw1=" + mw1;
  54. query+= "&mw2=" + mw2;
  55. query+= "&mw3=" + mw3;
  56.  
  57. Serial.println("http://" + String(host) + pfad + query);
  58.  
  59. // Anfrage an Webserver
  60. client.print(String("GET ") + pfad + query + " HTTP/1.1\r\n" +
  61. "Host: " + host + "\r\n" +
  62. "Connection: close\r\n\r\n");
  63.  
  64. while (client.available() == 0) {} // Warte auf Anwort des Webservers
  65.  
  66. while (client.available()) { // Lies die Anwort des Webservers
  67. Serial.println(client.readStringUntil('\n'));
  68. }
  69. client.stop();
  70. Serial.println("\nClosing connection");
  71. }
  72.