Indholdsfortegnelse:
- Trin 1: Komponenter
- Trin 2: TILSLUTNINGER
- Trin 3: KODING
- Trin 4: OUTPUT
- Trin 5: Graf
- Trin 6: Her er en video af Breif -forklaring
Video: Bevægelsesdetektor ved hjælp af Thingsai.io Iot Cloud Platform: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
I denne vejledning vil jeg forklare om bevægelsesdetektering ved hjælp af en PIR -sensor og Esp32 sammen med en IOT -cloudplatform Thingai.io
Trin 1: Komponenter
HARDWARE -KOMPONENTER;
1.esp32 Development Board
2. PIR -sensor
3. Jumper Wires
SOFTWARE:
1. Arduino IDE
2. Thingsai.io -konto
Trin 2: TILSLUTNINGER
Forbindelserne er stille enkle.
PIR PINS ------------ ESP32 PINS
VCC ------------------- 3V3 på esp32
GND ------------------ GND på esp32
UD ------------------- D22 på esp32
Trin 3: KODING
Indsæt denne kode i din Arduino IDE med en vis opdatering, din bevægelsessensor vil give output fejlfrit.
#omfatte
#omfatte
#omfatte
int count = 0, i, m, j, k;
int t, t1, t2, t3;
int pin = 22;
//////////////////////////////////////////////////' ////////////////////////////
const char* host = "api.thingsai.io"; // ELLER vært = devapi2.thethingscloud.com
const char* post_url = "/devices/deviceData"; // ELLER/api/v2/thingscloud2/_table/data_ac
const char* time_server = "baas.thethingscloud.com"; // dette er at konvertere tidsstempel
const int httpPort = 80;
const int httpsPort = 443;
const char* server = "api.thingsai.io"; // Server -URL
kulstempel [10];
WiFiMulti WiFiMulti;
// Brug WiFiClient -klasse til at oprette TCP -forbindelser
WiFiClient -klient;
////////////////////////////////////////////// TIMESTAMP BEREGNING //////////////////////////////////////
int GiveMeTimestamp ()
{
usigneret lang timeout = millis ();
// WiFiClient -klient;
mens (client.available () == 0)
{
hvis (millis () - timeout> 50000)
{
client.stop ();
returnere 0;
}
}
mens (client.available ())
{
String line = client.readStringUntil ('\ r'); // indexOf () er en funktion til at søge efter smthng, den returnerer -1, hvis den ikke findes
int pos = line.indexOf ("\" tidsstempel / ""); // søg efter "\" tidsstempel / "" fra svarets begyndelse fik og kopier alle data efter det, det er dit tidsstempel
hvis (pos> = 0)
{
int j = 0;
for (j = 0; j <10; j ++)
{
tidsstempel [j] = linje [pos + 12 + j];
}
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////
ugyldig opsætning ()
{
Serial.begin (115200);
forsinkelse (10);
pinMode (pin, INPUT);
// Vi starter med at oprette forbindelse til et WiFi -netværk
WiFiMulti.addAP ("wifi_name", "Wifi_password");
Serial.println ();
Serial.println ();
Serial.print ("Vent på WiFi …");
mens (WiFiMulti.run ()! = WL_CONNECTED) {
Serial.print (".");
forsinkelse (500);
}
Serial.println ("");
Serial.println ("WiFi tilsluttet");
Serial.println ("IP -adresse:");
Serial.println (WiFi.localIP ());
forsinkelse (500);
}
hulrum ()
{
int analogValue = analogRead (outputpin);
{
//////////////////////////////////////////// SEND FORESPØRGSELEN OG MODTAG SVARET //// //////////////////////
{
bool isDetected = digitalRead (pin);
hvis (isDetected) {
Serial.println ("Tilstedeværelse registreret");
}
forsinkelse (500);
}
Serial.print ("forbindelse til");
Serial.println (vært); // defineret upside:- host = devapi2.thethingscloud.com eller 139.59.26.117
///////////////////////////////////////////// TIMESTAMP CODE SNIPPET //////////// /////////////////
Serial.println ("inde få tidsstempel / n");
hvis (! client.connect (time_server, {
Vend tilbage; //*-*-*-*-*-*-*-*-*-*
}
client.println ("GET/api/tidsstempel HTTP/1.1"); // Hvad denne del laver, forstod jeg ikke
client.println ("Host: baas.thethingscloud.com");
client.println ("Cache-kontrol: ingen cache");
client.println ("Postbud-Token: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
client.println ();
GiveMeTimestamp (); // den kalder den funktion, der får tidsstempelresponsen fra serveren
Serial.println ("tidsstempel modtaget");
Serial.println (tidsstempel);
Serial.println ("inde i ThingsCloudPost");
String PostValue = "{" device_id / ": 61121695839, \" slave_id / ": 2";
PostValue = PostValue + ", \" dts / ":" + tidsstempel;
PostValue = PostValue +", \" data / ": {" PIR / ":" +pin +"}" +"}";
Serial.println (PostValue);
/ * opret en forekomst af WiFiClientSecure */
WiFiClientSecure klient;
Serial.println ("Opret forbindelse til server via port 443");
hvis (! client.connect (server, 443)) {
Serial.println ("Forbindelsen mislykkedes!");
} andet {
Serial.println ("Tilsluttet server!");
/ * opret HTTP -anmodning */
client.println ( POST/devices/deviceData
client.println ("Host: api.thingsai.io");
//client.println("Forbindelse: luk ");
client.println ("Indholdstype: applikation/json");
client.println ("cache-control: no-cache");
client.println ( Autorisation: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PTYX9J7J5JyJ9y7y9y7y9y7y9j5yj9y9j9yyyyyyyyyyyyyyyyyyyyyyyyYNQC9pJ9y9c9py9c9p5g9c9p5g9c9p5g9c9p5c5p5g59c5g5c5p5g59c5g59c5g59c5g59c5g59c5g59c5p5p5g59T05g5q2pQTgNz
client.print ("Indholdslængde:");
client.println (PostValue.length ());
client.println ();
client.println (PostValue);
//////////////////////////////////////// PLACERING af data på skyen er udført, og få nu svarformularen cloud server //////////////////////
Serial.print ("Venter på svar");
mens (! client.available ()) {
forsinkelse (50); //
Serial.print (".");
}
/ * hvis data er tilgængelige, derefter modtage og udskrive til Terminal */
mens (client.available ()) {
char c = client.read ();
Serial.write (c);
}
/ * hvis serveren blev afbrudt, stop klienten */
hvis (! client.connected ()) {
Serial.println ();
Serial.println ("Server afbrudt"); javascript:;
client.stop ();
}
}
Serial.println ("//////////////////////// END ///////////////////// ");
forsinkelse (3000);
}
}
Trin 4: OUTPUT
Dette er søjlediagramrepræsentationen af de værdier, der læses fra sensoren i tingene, io cloud -platformen,
Trin 5: Graf
Dette er den grafiske fremstilling af værdierne fra sensoren. Fra ovenstående graf kan vi analysere anvendelsen af sensoren. Tak skal du have
Anbefalede:
DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin
DIY || Sådan laver du en edderkoprobot, der kan styres ved hjælp af smartphone Brug af Arduino Uno: Mens du laver en edderkoprobot, kan man lære så mange ting om robotik. Ligesom at lave robotter er underholdende såvel som udfordrende. I denne video vil vi vise dig, hvordan du laver en Spider -robot, som vi kan betjene ved hjælp af vores smartphone (Androi
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: 4 trin
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: Hej, jeg er Rithik. Vi kommer til at lave en internetstyret LED ved hjælp af din telefon. Vi kommer til at bruge software som Arduino IDE og Blynk.Det er enkelt, og hvis det lykkedes dig, kan du styre så mange elektroniske komponenter, du ønskerTing We Need: Hardware:
Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)
Sådan laver du en drone ved hjælp af Arduino UNO | Lav en Quadcopter ved hjælp af mikrokontroller: Introduktion Besøg min Youtube -kanal En Drone er en meget dyr gadget (produkt) at købe. I dette indlæg vil jeg diskutere, hvordan jeg gør det billigt ?? Og hvordan kan du lave din egen sådan til en billig pris … Nå i Indien alle materialer (motorer, ESC'er
RF 433MHZ radiostyring ved hjælp af HT12D HT12E - Lav en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: 5 trin
RF 433MHZ radiostyring ved hjælp af HT12D HT12E | Oprettelse af en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: I denne instruktør vil jeg vise dig, hvordan du laver en RADIO -fjernbetjening ved hjælp af 433mhz sendermodtagermodul med HT12E -kode & HT12D -dekoder IC.I denne instruktive kan du sende og modtage data ved hjælp af meget meget billige KOMPONENTER SOM: HT
Bevægelsesdetektor aktiveret forfængelighed lys: 6 trin
Motion Detector Activated Vanity Light: Jeg købte en infrarød bevægelsesdetektorenhed på eBay for $ 1,50 og besluttede at bruge den godt. Jeg kunne have lavet mit eget bevægelsessensorbræt, men til $ 1,50 (som inkluderer 2 trimpotter til justering af følsomheden og slukningstimeren) ville det ikke