//de library van de tempratuur en vochtisheid sensor er bij pakken. //moet je instaleren via linker tabje moet boeken en dan dht11 op te zoeke n in het zoek veld en daarna de dht11 extensie te installeren #include #include #include #include #include #include // LDR = 12, geeft gaan dat het variable LDR terugwijst naar 12. #define LDR 17 //tegen DHT11 library zeggen dat we het variabel TLV(Temparatuur LuchtVochtigheid) willen geven en dat het de informatie van pin 18 kan halen. DHT11 TLV(18); WiFiMulti wifiMulti; HTTPClient http; void setup() { //hoeveel bits er per seconden worden gestuurd naar de pc, moet je ook instellen in arduino IDE anders krijg je gibberish terug in je serial monitor. Serial.begin(9600); pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); digitalWrite(6, HIGH); //print het hardware ID van de esp32S3 Serial.print("mac adress:"); Serial.println(WiFi.macAddress()); //verbinden met wifi WiFi.mode(WIFI_STA); wifiMulti.addAP("ObsidianAmstelveen", "drijversstraatmaastricht"); wifiMulti.addAP("iotroam", "BcgrFpX3kl"); //een loop zodat het script wacht tot de esp32s3 verbind met het internet while (wifiMulti.run() != WL_CONNECTED) { } //print het ip adress van de esp32s3 naar de console Serial.println(WiFi.localIP()); //gebruikt deze website om posts requests naar toe te sturen http.begin("http://hva-onto.nl/api/ti/map/measurements/add?api-key=efffc47610ea6282a3416f71b51b3a"); //lampje aan om aan te geven dat esp32S3 is verbonden met internet digitalWrite(4, HIGH); } void loop() { digitalWrite(5, LOW); //int geeft aan dat het een geheeld nummer moet zijn, als je float gebruikt kan het ook nog decimalen hebben // eerste 2 zijn van DHT om data van af te lezen en op te slaan in het variabel //laatste is om de lichtsensor analoog af te lezen en op te slaan in een variabel float Luchtvochtigheid = TLV.readHumidity(); float Temparatuur = TLV.readTemperature(); float Lichtsterkte = analogRead(LDR); //hier worden alle variabelen in de serial monitor uitgespuugt, en websites kunnen ook de Serial.print lezen. Serial.println("----------"); Serial.print("Temparatuur celcius: "); Serial.println(Temparatuur); Serial.print("vochtigheid: "); Serial.println(Luchtvochtigheid); Serial.print("LDR reading: "); Serial.println(Lichtsterkte); //voeg een header toe aan de post request http.addHeader("Content-Type", "application/x-www-form-urlencoded"); //de data stoppen in een variabel voor de post request String httpRequestData = "type=temperature&value=" + String(Temparatuur); //stuur de post request naar de server toe int httpResponseCode = http.POST(httpRequestData); //print de response code naar Serial.print("HTTP Response code:"); Serial.println(httpResponseCode); //wacht x aanal miliseconden digitalWrite(5, HIGH); delay(400); }