2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
Danes je IoT v trendu in veliko naprav ima podatke za nalaganje v oblak in analizo podatkov. Majhni senzorji posodabljajo podatke v oblaku in na njem deluje aktuator na drugem koncu. Razložil bom enega od primerov IoT.
V tem članku bom prikazal in vodil objavo podatkov v Thingspeak z uporabo ESP8266.
1. korak: Potrebna komponenta
ESP8266ESP8266 v Indiji-
ESP8266 v Združenem kraljestvu -
ESP8266 v ZDA -
MLX90614MLX90614 v Indiji-
MLX90614 v Veliki Britaniji -
MLX90614 v ZDA -
BreadBoard
BreadBoard v Indiji-
BreadBoard v ZDA- https://amzn.to/2MW0Opb BreadBoard v Združenem kraljestvu-
2. korak: Koda
#include #include #include
Niz apiKey = "7CDCTE2767Z8AUIL"; // Vnesite ključ API za pisanje iz ThingSpeak
const char *ssid = "skrit"; // zamenjajte s ključem wifi ssid in wpa2
const char *pass = "qwerty12"; const char* server = "api.thingspeak.com";
Odjemalec WiFiClient;
Adafruit_MLX90614 mlx = Adafruit_MLX90614 ();
int objTemp;
int ambTemp;
void setup ()
{Serial.begin (115200); zamuda (10); Serial.println ("Povezovanje z"); Serial.println (ssid); WiFi.begin (ssid, pass); while (WiFi.status ()! = WL_CONNECTED) {zamuda (500); Serial.print ("."); } Serial.println (""); Serial.println ("WiFi povezan"); mlx.begin (); Wire.begin (D1, D2); } void loop () {
if (client.connect (strežnik, 80)) // "184.106.153.149" ali api.thingspeak.com
{objTemp = mlx.readObjectTempC (); ambTemp = mlx.readObjectTempC (); Niz postStr = apiKey; postStr += "& polje1 ="; postStr += niz (objTemp); postStr += "\ r / n / r / n";
client.print ("POST /posodobi HTTP /1.1 / n");
client.print ("Gostitelj: api.thingspeak.com / n"); client.print ("Povezava: zaprta / n"); client.print ("X-THINGSPEAKAPIKEY:"+apiKey+"\ n"); client.print ("Vrsta vsebine: aplikacija/x-www-form-urlencoded / n"); client.print ("Content-Length:"); client.print (postStr.length ()); client.print ("\ n / n"); client.print (postStr);
Serial.print ("Ambient ="); Serial.print (ambTemp);
Serial.print ("*C / tObject ="); Serial.print (objTemp); Serial.println ("*C");
}
client.stop (); zamuda (2000); }