Innholdsfortegnelse:
- Trinn 1: Komponenter
- Trinn 2: TILKOBLINGER
- Trinn 3: KODING
- Trinn 4: UTGANG
- Trinn 5: Graf
- Trinn 6: Her er en video av Breif -forklaring
Video: Bevegelsesdetektor som bruker Thingsai.io Iot Cloud Platform: 6 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
I denne opplæringen skal jeg forklare om bevegelsesdeteksjon ved å bruke en PIR -sensor og Esp32 sammen med en IOT -skyplattform Thingai.io
Trinn 1: Komponenter
MASKINKOMPONENTER;
1.esp32 Development Board
2. PIR -sensor
3. Jumper Wires
PROGRAMVARE:
1. Arduino IDE
2. Thingsai.io -konto
Trinn 2: TILKOBLINGER
Tilkoblingene er stille enkle.
PIR PINS ------------ ESP32 PINS
VCC ------------------- 3V3 på esp32
GND ------------------ GND på esp32
UT ------------------- D22 på esp32
Trinn 3: KODING
Lim inn denne koden i din Arduino IDE med litt oppdatering, bevegelsessensoren gir utgangen feilfritt.
#inkludere
#inkludere
#inkludere
int count = 0, i, m, j, k;
int t, t1, t2, t3;
int pin = 22;
/////////////////////////////////////////////////////////' ////////////////////////////
const char* host = "api.thingsai.io"; // ELLER vert = 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 å konvertere tidsstempel
const int httpPort = 80;
const int httpsPort = 443;
const char* server = "api.thingsai.io"; // Server -URL
røye tidsstempel [10];
WiFiMulti WiFiMulti;
// Bruk WiFiClient -klassen til å opprette TCP -tilkoblinger
WiFiClient -klient;
///////////////////////////// ////////////////////////////////////
int GiveMeTimestamp ()
{
usignert lang tidsavbrudd = millis ();
// WiFiClient -klient;
mens (client.available () == 0)
{
hvis (millis () - timeout> 50000)
{
client.stop ();
retur 0;
}
}
mens (client.available ())
{
String line = client.readStringUntil ('\ r'); // indexOf () er en funksjon for å søke etter smthng, den returnerer -1 hvis den ikke blir funnet
int pos = line.indexOf ("\" tidsstempel / ""); // søk etter "\" tidsstempel / "" fra begynnelsen av svaret, og kopier alle dataene etter det, det vil være ditt tidsstempel
hvis (pos> = 0)
{
int j = 0;
for (j = 0; j <10; j ++)
{
tidsstempel [j] = linje [pos + 12 + j];
}
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////
ugyldig oppsett ()
{
Serial.begin (115200);
forsinkelse (10);
pinMode (pin, INPUT);
// Vi starter med å koble til et WiFi -nettverk
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 tilkoblet");
Serial.println ("IP -adresse:");
Serial.println (WiFi.localIP ());
forsinkelse (500);
}
hulrom ()
{
int analogValue = analogRead (outputpin);
{
////////////////////////////// ///////////////////////
{
bool isDetected = digitalRead (pin);
hvis (isDetected) {
Serial.println ("Tilstedeværelse oppdaget");
}
forsinkelse (500);
}
Serial.print ("koble til");
Serial.println (vert); // definert oppside:- host = devapi2.thethingscloud.com eller 139.59.26.117
/////////////////////////////////////// /////////////////
Serial.println ("inne få tidsstempel / n");
hvis (! client.connect (time_server, {
komme tilbake; //*-*-*-*-*-*-*-*-*-*
}
client.println ("GET/api/tidsstempel HTTP/1.1"); // Hva denne delen gjør, skjønte jeg ikke
client.println ("Vert: baas.thethingscloud.com");
client.println ("Cache-Control: no-cache");
client.println ("Postman-Token: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
client.println ();
GiveMeTimestamp (); // det vil ringe funksjonen som vil få tidsstempelresponsen fra serveren
Serial.println ("tidsstempel mottatt");
Serial.println (tidsstempel);
Serial.println ("inside ThingsCloudPost");
String PostValue = "{" device_id / ": 61121695839, \" slave_id / ": 2";
PostValue = PostValue + ", \" dts / ":" + tidsstempel;
PostValue = PostValue +", \" data / ": {" PIR / ":" +pin +"}" +"}";
Serial.println (PostValue);
/ * opprett en forekomst av WiFiClientSecure */
WiFiClientSecure -klient;
Serial.println ("Koble til server via port 443");
if (! client.connect (server, 443)) {
Serial.println ("Tilkoblingen mislyktes!");
} annet {
Serial.println ("Koblet til server!");
/ * opprett HTTP -forespørsel */
client.println ( POST/devices/deviceData
client.println ("Vert: api.thingsai.io");
//client.println("Connection: close ");
client.println ("Innholdstype: applikasjon/json");
client.println ("cache-control: no-cache");
client.println ( Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PTYX9J5YyJ9J5WyQs9y5y9y9y9c9y9c9y9c9p5x9y9c9y9c9p5c9p5g9c5p5g5b5bc5p5bc5p6c5p6p6p6p6p6p6p6p6p6p5g59c5pfb59c5g5b5b5b059b5b5b5b5b5b5b5b059b5b5b5b5b059b5b5b5b5b5b05fb05fb05b05b05b057b5b5b5b5b5b05fb05d05
client.print ("Content-Length:");
client.println (PostValue.length ());
client.println ();
client.println (PostValue);
/////////////////////////////////// server ////////////////////
Serial.print ("Venter på svar");
mens (! client.available ()) {
forsinkelse (50); //
Serial.print (".");
}
/ * hvis data er tilgjengelig, motta og skriv ut til Terminal */
while (client.available ()) {
char c = client.read ();
Serial.write (c);
}
/ * hvis serveren koblet fra, stopp klienten */
hvis (! client.connected ()) {
Serial.println ();
Serial.println ("Server frakoblet"); javascript:;
client.stop ();
}
}
Serial.println ("//////////////////////// END ///////////////////// ");
forsinkelse (3000);
}
}
Trinn 4: UTGANG
Dette er stolpediagramrepresentasjonen av verdiene som er lest fra sensoren i thingsai, io cloud -plattformen,
Trinn 5: Graf
Dette er den grafiske fremstillingen av verdiene fra sensoren. Fra grafen ovenfor kan vi analysere anvendelsen av sensoren. Takk skal du ha
Anbefalt:
Bevegelsesdetektor som bruker NodeMCU: 5 trinn
Bevegelsesdetektor ved hjelp av NodeMCU: I dette prosjektet kan du ved å bare bruke en bevegelsessensor oppdage tilstedeværelsen av mennesker eller dyr. Og ved plattformen kalt thingsio kan du overvåke dato og klokkeslett da tilstedeværelsen ble oppdaget
Slik bruker du Mac Terminal og hvordan du bruker viktige funksjoner: 4 trinn
Slik bruker du Mac Terminal og hvordan du bruker viktige funksjoner: Vi viser deg hvordan du åpner MAC Terminal. Vi viser deg også noen få funksjoner i terminalen, for eksempel ifconfig, endring av kataloger, tilgang til filer og arp. Ifconfig lar deg sjekke IP -adressen din og MAC -annonsen din
Bevegelsesdetektor aktivert servantskapslampe: 6 trinn
Motion Detector Activated Vanity Light: Jeg kjøpte en infrarød bevegelsesdetektorenhet på eBay for $ 1,50 og bestemte meg for å bruke den godt. Jeg kunne ha laget mitt eget bevegelsesdetektortavle, men for 1,50 dollar (som inkluderer 2 trimpotter for å justere følsomheten og slå av timeren) ville det ikke
LDR som bruker Thingsai Cloud: 13 trinn
LDR ved hjelp av Thingsai Cloud: HEY ….. i dag skal vi lære om å måle lysintensiteten og legge ut verdiene i THINGSAI IOT -skyplattformen ved å bruke ESP32. Kravene for å gjøre dette prosjektet er 1. ESP32 Development Board (jeg har brukt ESP32 DEVKIT V1) 2. LD
Hvordan lage en autonom basketballball som bruker en IRobot Lag som base: 7 trinn (med bilder)
Slik lager du en autonom basketballball som bruker en IRobot Lag som base: Dette er min oppføring for iRobot Create -utfordringen. Den vanskeligste delen av hele denne prosessen for meg var å bestemme hva roboten skulle gjøre. Jeg ønsket å demonstrere de kule funksjonene i Create, samtidig som jeg la til litt robo -teft. Alle mine