Агуулгын хүснэгт:

Thingsai.io Iot Cloud Platform ашиглан хөдөлгөөн илрүүлэгч: 6 алхам
Thingsai.io Iot Cloud Platform ашиглан хөдөлгөөн илрүүлэгч: 6 алхам

Видео: Thingsai.io Iot Cloud Platform ашиглан хөдөлгөөн илрүүлэгч: 6 алхам

Видео: Thingsai.io Iot Cloud Platform ашиглан хөдөлгөөн илрүүлэгч: 6 алхам
Видео: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Арванхоёрдугаар сар
Anonim
Thingsai.io Iot Cloud Platform ашиглан хөдөлгөөн илрүүлэгч
Thingsai.io Iot Cloud Platform ашиглан хөдөлгөөн илрүүлэгч

Энэхүү гарын авлагад би PIR мэдрэгч, Esp32 ашиглан IOT үүл платформ Thingai.io ашиглан хөдөлгөөнийг илрүүлэх талаар тайлбарлах болно.

Алхам 1: бүрэлдэхүүн хэсгүүд

Бүрэлдэхүүн хэсгүүд
Бүрэлдэхүүн хэсгүүд
Бүрэлдэхүүн хэсгүүд
Бүрэлдэхүүн хэсгүүд

Тоног төхөөрөмжийн бүрэлдэхүүн хэсгүүд;

1.esp32 Хөгжлийн зөвлөл

2. PIR мэдрэгч

3. Холбогч утас

ПРОГРАММ:

1. Arduino IDE

2. Thingsai.io данс

Алхам 2: ХОЛБОО

ХОЛБОО
ХОЛБОО

Холболтууд нь маш энгийн.

PIR PINS ------------ ESP32 PINS

Vp3-esp32 дээрх 3V3

GND ------------------ GND esp32 дээр

OUT ------------------- D22 esp32 дээр

Алхам 3: Кодлох

Энэ кодыг Arduino IDE дээрээ шинэчилж оруулаарай, таны Motion мэдрэгч нь гаралтыг өөгүй өгөх болно.

#оруулах

#оруулах

#оруулах

int count = 0, i, m, j, k;

int t, t1, t2, t3;

int pin = 22;

/////////////////////////////////////////// CLOUD -ийн бүх мэдэгдэл ////// //////////////////////////

const char* хост = "api.thingsai.io"; // OR хост = devapi2.thethingscloud.com

const char* post_url = "/devices/deviceData"; // OR/api/v2/thingscloud2/_table/data_ac

const char* time_server = "baas.thethingscloud.com"; // энэ бол цагийн тэмдгийг хөрвүүлэх явдал юм

const int httpPort = 80;

const int httpsPort = 443;

const char* server = "api.thingsai.io"; // Серверийн URL

цаг хугацааны тэмдэг [10];

WiFiMulti WiFiMulti;

// TCP холболт үүсгэхийн тулд WiFiClient класс ашиглана уу

WiFiClient үйлчлүүлэгч;

////////////////////////////////////////// TIMESTAMP CALCULATION функц //////// /////////////////////////////////

int GiveMeTimestamp ()

{

гарын үсэг зураагүй урт хугацаа = millis ();

// WiFiClient үйлчлүүлэгч;

while (client.available () == 0)

{

if (millis () - timeout> 50000)

{

client.stop ();

буцаах 0;

}

}

while (client.available ())

{

String мөр = client.readStringUntil ('\ r'); // indexOf () нь smthng хайх функц бөгөөд олдохгүй бол -1 буцаана

int pos = line.indexOf ("\" цагийн тэмдэг / ""); // хариултын эхэн үеэс эхлэн "\" timestamp / "" гэж хайгаад дараа нь бүх өгөгдлийг хуулж авбал энэ нь таны цаг хугацааны тэмдэг болно

хэрэв (pos> = 0)

{

int j = 0;

(j = 0; j <10; j ++)

{

цагийн тэмдэг [j] = мөр [pos + 12 + j];

}

}

}

}

////////////////////////////////////////////////////////////////////////////////////////////////////////

хүчингүй тохиргоо ()

{

Цуваа.begin (115200);

саатал (10);

pinMode (зүү, оролт);

// Бид WiFi сүлжээнд холбогдож эхэлдэг

WiFiMulti.addAP ("wifi_name", "Wifi_password");

Serial.println ();

Serial.println ();

Serial.print ("WiFi хүлээнэ үү …");

байхад (WiFiMulti.run ()! = WL_CONNECTED) {

Serial.print (".");

саатал (500);

}

Serial.println ("");

Serial.println ("WiFi холбогдсон");

Serial.println ("IP хаяг:");

Serial.println (WiFi.localIP ());

саатал (500);

}

хоосон давталт ()

{

int analogValue = analogRead (outputpin);

{

////////////////////////////////////////// Асуулгыг илгээж, хариултыг хүлээн авна уу //// /////////////////////

{

bool isDetected = digitalRead (зүү);

if (isDetected) {

Serial.println ("Байгаа байдлыг илрүүлсэн");

}

саатал (500);

}

Serial.print ("руу холбогдох");

Serial.println (хост); // дээшээ тодорхойлсон:- хост = devapi2.thethingscloud.com эсвэл 139.59.26.117

//////////////////////////////////////////////////// TIMESTAMP CODE SNIPPET /////////// /////////////////

Serial.println ("дотор цаг хугацааны тэмдэг авах / n");

if (! client.connect (time_server, {

буцах; //*-*-*-*-*-*-*-*-*-*-*

}

client.println ("GET/api/timestamp HTTP/1.1"); // Энэ хэсэг юу хийж байна, би ойлгосонгүй

client.println ("Хөтлөгч: baas.thethingscloud.com");

client.println ("Cache-Control: no-cache");

client.println ("Шууданч-Токен: ea3c18c6-09ba-d049-ccf3-369a22a284b8");

client.println ();

GiveMeTimestamp (); // энэ нь серверээс цагийн тэмдгийн хариуг авах функцийг дуудах болно

Serial.println ("цагийн тэмдэг хүлээн авсан");

Serial.println (цагийн тэмдэг);

Serial.println ("ThingsCloudPost дотор");

String PostValue = "{" device_id / ": 61121695839, \" slave_id / ": 2";

PostValue = PostValue + ", \" dts / ":" + цагийн тэмдэг;

PostValue = PostValue +", \" data / ": {" PIR / ":" +pin +"}" +"}";

Serial.println (PostValue);

/ * WiFiClientSecure -ийн жишээ үүсгэх */

WiFiClientSecure үйлчлүүлэгч;

Serial.println ("443 портоор сервер рүү холбогдох");

if (! client.connect (сервер, 443)) {

Serial.println ("Холболт амжилтгүй боллоо!");

} өөр {

Serial.println ("Сервертэй холбогдсон!");

/ * HTTP хүсэлт үүсгэх */

client.println ( POST/devices/deviceData

client.println ("Хөтлөгч: api.thingsai.io");

//client.println("Холболт: хаах ");

client.println ("Агуулгын төрөл: application/json");

client.println ("cache-control: no-cache");

client.println ("Зөвшөөрөл: эзэмшигч eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNT"

client.print ("Агуулга-Урт:");

client.println (PostValue.length ());

client.println ();

client.println (PostValue);

//////////////////////////////////////////////// Үүл дээр өгөгдөл байршуулах ажил дуусч одоо үүлний хариултын маягтыг авна сервер ////////////////////

Serial.print ("Хариу хүлээж байна");

while (! client.available ()) {

саатал (50); //

Serial.print (".");

}

/ * хэрэв өгөгдөл байгаа бол хүлээж аваад Терминал руу хэвлэх */

while (client.available ()) {

char c = client.read ();

Цуваа бичих (c);

}

/ * хэрэв сервер салгагдсан бол үйлчлүүлэгчийг зогсоох */

if (! client.connected ()) {

Serial.println ();

Serial.println ("Сервер салгагдсан"); javascript:;

client.stop ();

}

}

Serial.println ("/////////////////////// ТӨГСГӨЛ ///////////////////// ");

саатал (3000);

}

}

Алхам 4: ГАРАХ

ГАРАХ
ГАРАХ

Энэ бол тессай, io үүл платформ дахь мэдрэгчээс уншсан утгуудын зураасан диаграмм юм.

Алхам 5: График

График
График

Энэ бол мэдрэгчийн утгуудын график дүрслэл юм. Дээрх графикаас бид мэдрэгчийн хэрэглээг шинжлэх боломжтой. Баярлалаа

Зөвлөмж болгож буй: