Innehållsförteckning:
- Steg 1: Skapa och logga in på THINGSIO -plattformen
- Steg 2: Skapa nytt projekt
- Steg 3: Skapa en ny enhet
- Steg 4: Definiera enhetsparameter
- Steg 5: Uppdatera enheten
- Steg 6: Kodning
- Steg 7: Val av styrelse och komport
- Steg 8: Kretsanslutningar
- Steg 9: Kompilera och ladda upp
- Steg 10: Seriell bildskärm
- Steg 11: Avläsningar
- Steg 12: Grafisk representation
- Steg 13:
Video: LDR med Thingsai Cloud: 13 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
HEJ … idag lär vi oss att mäta ljusintensiteten och lägga upp värdena i molnplattformen THINGSAI IOT med hjälp av ESP32.
Kraven för att göra detta projekt är
1. ESP32 Development Board (jag har använt ESP32 DEVKIT V1)
2. LDR -sensor
3. Bygeltrådar
4. Konto i THINGSAI IOT PLATFORM
Steg 1: Skapa och logga in på THINGSIO -plattformen
Logga in på THINGS AI -kontot. Om du är ny registrerar du dig på kontot genom att trycka på knappen Registrera och fyll i alla uppgifter. Ditt konto kommer att skapas och därefter kommer du att kunna arbeta på molnplattformen och skapa ditt anpassade projekt
Steg 2: Skapa nytt projekt
Efter att ha loggat in på kontot, för att skapa ett projekt, klicka bara på det nya projektet och ge sedan projektnamnet.
Steg 3: Skapa en ny enhet
När du har skapat projektet är nästa sak du behöver göra att skapa en ny enhet. Ge enhetsnamnet och ange enhets -ID antingen manuellt eller systemgenererat.
Steg 4: Definiera enhetsparameter
Ge enhetsparametern och välj sedan typ av parameter
Steg 5: Uppdatera enheten
Välj parametern och uppdatera sedan enheten
Steg 6: Kodning
Från provkoderna väljer du koden för esp32 kopiera den och klistrar in den i arduino IDE och gör nödvändiga ändringar enligt kravet. Jag har gett koden nedan
#inkludera #inkludera
#omfatta
int count = 0, i, m, j, k;
int t; int outputpin = A0; // ds18b20
int sensorvärde;
/////////////////////////////////////////////////////// ////////////////////////////
const char* host = "api.thingsai.io"; // ELLER
värd = devapi2.thethingscloud.com
const char* post_url = "/devices/deviceData"; // ELLER/api/v2/thingscloud2/_table/data_ac
const char* time_server = "baas.thethingscloud.com"; // detta är att konvertera tidsstämpel
const int httpPort = 80;
const int httpsPort = 443;
const char* server = "api.thingsai.io"; // Server -URL
rödstämpel [10];
WiFiMulti WiFiMulti;
// Använd WiFiClient -klass för att skapa TCP -anslutningar
WiFiClient -klient;
////////////////////////// //////////////////////////////////////// int GiveMeTimestamp () {unsigned long timeout = millis (); // WiFiClient -klient;
medan (client.available () == 0)
{
if (millis () - timeout> 50000)
{
client.stop (); returnera 0;
}
}
medan (client.available ())
{
String line = client.readStringUntil ('\ r'); // indexOf () är en funktion för att söka efter smthng, den returnerar -1 om den inte hittas
int pos = line.indexOf ("\" tidsstämpel / ""); // sök efter "\" tidsstämpel / "" från början av svaret och kopiera all data efter det, det blir din tidsstämpel
om (pos> = 0)
{
int j = 0;
för (j = 0; j <10; j ++)
{
tidsstämpel [j] = rad [pos + 12 + j];
}
}
}
} ////////////////////////////////////////////////////////////////////////////////////////////////////////
void setup ()
{
Serial.begin (115200);
fördröjning (10);
// Vi börjar med att ansluta till ett WiFi -nätverk
WiFiMulti.addAP ("wifi", "pswrd");
Serial.println ();
Serial.println ();
Serial.print ("Vänta på WiFi …");
medan (WiFiMulti.run ()! = WL_CONNECTED)
{
Serial.print (".");
fördröjning (500);
}
Serial.println ("");
Serial.println ("WiFi ansluten");
Serial.println ("IP -adress:"); Serial.println (WiFi.localIP ());
fördröjning (500);
}
void loop ()
{
int analogValue = analogRead (outputpin);
{///////////////// ////////////////////////
sensorvärde = analogRead (A0); // läs analog ingångsstift 0
sensorvärde = sensorvärde/100;
Serial.print (sensorvärde, DEC); // skriver ut värdet läst
Serial.print ("\ n"); // skriver ut ett mellanslag mellan siffrorna
fördröjning (1000); // vänta 100 ms på nästa läsning
Serial.print ("ansluta till"); Serial.println (värd); // definierad uppåt:- host = devapi2.thethingscloud.com eller 139.59.26.117
///////////////////////////////////// /////////////////
Serial.println ("inside get timestamp / n");
if (! client.connect (time_server, { lämna tillbaka; //*-*-*-*-*-*-*-*-*-*}
client.println ("GET/api/tidsstämpel HTTP/1.1"); // Vad gör den här delen, jag fick inte client.println ("Host: baas.thethingscloud.com");
client.println ("Cache-Control: no-cache");
client.println ("Postman-Token: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
client.println ();
GiveMeTimestamp (); // det kallar funktionen som kommer att få tidsstämpelns svar från servern Serial.println ("tidsstämpel mottagen");
Serial.println (tidsstämpel);
Serial.println ("inside ThingsCloudPost");
String PostValue = "{" device_id / ": 61121695844, \" slave_id / ": 2";
PostValue = PostValue + ", \" dts / ":" + tidsstämpel;
PostValue = PostValue +", \" data / ": {" INTENSITY / ":" +\ sensorvalue +"}" +"}";
Serial.println (PostValue);
/ * skapa en instans av WiFiClientSecure */ WiFiClientSecure -klient;
Serial.println ("Anslut till servern via port 443");
if (! client.connect (server, 443))
{
Serial.println ("Anslutningen misslyckades!");
}
annan
{Serial.println ("Ansluten till servern!"); / * skapa HTTP -begäran */
client.println ( POST/devices/deviceData
client.println ("Värd: api.thingsai.io"); //client.println("Connection: close "); cl
ient.println ("Innehållstyp: applikation/json");
client.println ("cache-control: no-cache");
client.println ("Auktorisation: BearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC9PN5" client.print ("Content-Length:");
client.println (PostValue.length ());
client.println ();
client.println (PostValue); ///////////////////////////////////// server ////////////////////
Serial.print ("Väntar på svar");
medan (! client.available ()) {
fördröjning (50); //
Serial.print (".");
} / * om data finns tillgänglig, ta sedan emot och skriv ut till terminal * /
medan (client.available ())
{
char c = client.read ();
Serial.write (c);
}
/ * om servern kopplades bort, stoppa klienten */
om (! client.connected ())
{
Serial.println ();
Serial.println ("Server bortkopplad");
client.stop ();
}
} Serial.println ("//////////////////////// END //////////////////// /");
fördröjning (3000); }}
Steg 7: Val av styrelse och komport
Välj kort från verktyget och välj sedan komporten
Steg 8: Kretsanslutningar
Kodningen görs och gör sedan följande anslutningar enligt nedan
ANSLUTNINGAR:
GND för esp32 till GND för LDR -sensorn
3V3 0f esp32 till Lcc: s Vcc
VP för esp32 till A0 i LDR
Steg 9: Kompilera och ladda upp
kompilera och ladda upp koden till esp32 och läs sedan avläsningarna från den seriella bildskärmen. Det skulle visa ett resultat något liknande detta
Steg 10: Seriell bildskärm
Värdena erhålls på den seriella bildskärmen och sedan skickas de till THINGSAI IOT Cloud -plattformen.
Steg 11: Avläsningar
Detta visar värdena som erhållits från esp32 -kortet.
Steg 12: Grafisk representation
Detta är den grafiska representationen av de erhållna värdena. Det är slutet på handledningen. Hoppas du har förstått. Tack
Rekommenderad:
DINO -SPEL MED LDR: 5 steg
DINO GAME USING LDR: Dinosaur Game, även känt som T-Rex Game och Dino Runner, är ett inbyggt webbläsarspel i webbläsaren Google Chrome. Spelet skapades av Sebastien Gabriel 2014 och kan nås genom att trycka på mellanslagstangenten när det är offline på Google Chrome.A L
Hemmautomation med NodeMCU Touch Sensor LDR Temperaturkontrollrelä: 16 steg
Hemmautomation med NodeMCU Touch Sensor LDR Temperaturkontrollrelä: I mina tidigare NodeMCU -projekt har jag styrt två hushållsapparater från Blynk App. Jag fick många kommentarer och meddelanden för att uppgradera projektet med manuell kontroll och lägga till fler funktioner. Så jag har designat denna Smart Home Extension Box.I denna IoT
Darkness Sensor Circuit on Breadboard + Ljussensor med LDR: 6 steg
Mörkhetssensorkrets på brödbräda + Ljuddetektor med LDR: I denna handledning lär jag dig hur du gör ett enkelt ljus & Darkness Detector Circuit med en transistor & en LDR. Denna krets kan användas för att automatiskt släcka lampor eller apparater genom att lägga till ett relä vid utgången Du kan också rep
Rörelsedetektor med Thingsai.io Iot Cloud Platform: 6 steg
Rörelsedetektor med Thingsai.io Iot Cloud Platform: I den här självstudien kommer jag att förklara rörelsedetektering med hjälp av en PIR -sensor och Esp32 tillsammans med en IOT -molnplattform Thingai.io
Övervakning av vattenkvalitet med MKR1000 och ARTIK Cloud: 13 steg (med bilder)
Övervakning av vattenkvalitet med MKR1000 och ARTIK Cloud: Introduktion Huvudsyftet med detta projekt är att använda MKR1000 och Samsung ARTIK Cloud för att övervaka pH och temperaturnivåer i simbassänger. alkalinitet a