Daftar Isi:

Detektor Gerakan Menggunakan Thingsai.io Iot Cloud Platform: 6 Langkah
Detektor Gerakan Menggunakan Thingsai.io Iot Cloud Platform: 6 Langkah

Video: Detektor Gerakan Menggunakan Thingsai.io Iot Cloud Platform: 6 Langkah

Video: Detektor Gerakan Menggunakan Thingsai.io Iot Cloud Platform: 6 Langkah
Video: IOT thing Smart Motion Detector with email, light trigger carriots walkthrough 2024, November
Anonim
Detektor Gerakan Menggunakan Thingsai.io Iot Cloud Platform
Detektor Gerakan Menggunakan Thingsai.io Iot Cloud Platform

Dalam tutorial ini saya akan menjelaskan tentang deteksi gerakan dengan menggunakan sensor PIR dan Esp32 bersama dengan platform cloud IOT Thingai.io

Langkah 1: Komponen

Komponen
Komponen
Komponen
Komponen

KOMPONEN PERANGKAT KERAS;

1.esp32 Dewan Pengembangan

2. Sensor PIR

3. Kabel Jumper

PERANGKAT LUNAK:

1. Arduino IDE

2. Akun Thingsai.io

Langkah 2: KONEKSI

KONEKSI
KONEKSI

Koneksinya tenang sederhana.

PIN PIR ------------ PIN ESP32

VCC--------------------3V3 di esp32

GND------------------GND di esp32

KELUAR ------------------- D22 di esp32

Langkah 3: KODE

Rekatkan kode ini ke Arduino IDE Anda dengan beberapa pembaruan, sensor Gerak Anda akan memberikan output dengan sempurna.

#termasuk

#termasuk

#termasuk

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

int t, t1, t2, t3;

int pin = 22;

////////////////////////////////////// SEMUA DEKLARASI untuk CLOUD ////// ////////////////////////////////////

const char* host = "api.thingsai.io"; // ATAU tuan rumah = devapi2.thethingscloud.com

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

const char* time_server = "baas.thethingscloud.com"; //ini untuk mengonversi stempel waktu

const int httpPort = 80;

const int httpsPort = 443;

const char* server = "api.thingsai.io"; // URL server

stempel waktu karakter[10];

WiFiMulti WiFiMulti;

// Gunakan kelas WiFiClient untuk membuat koneksi TCP

Klien WiFiClient;

///////////////////////////////////// TIMESTAMP PERHITUNGAN fungsi ///////// //////////////////////////////////////////

int BeriSayaTimestamp()

{

unsigned long timeout = milis();

// klien WiFiClient;

sementara (client.available() == 0)

{

if (milis() - batas waktu > 50.000)

{

klien.berhenti();

kembali 0;

}

}

sementara (client.available())

{

String baris = client.readStringUntil('\r'); //indexOf() adalah fungsi untuk mencari smthng, ia mengembalikan -1 jika tidak ditemukan

int pos = line.indexOf("\"timestamp\""); //cari "\"timestamp\"" dari awal respons yang didapat dan salin semua data setelah itu, itu akan menjadi stempel waktu Anda

jika (pos >= 0)

{

int j = 0;

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

{

timestamp[j] = baris[pos + 12 + j];

}

}

}

}

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

batalkan pengaturan()

{

Serial.begin(115200);

penundaan (10);

pinMode(pin, INPUT);

// Kita mulai dengan menghubungkan ke jaringan WiFi

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

Serial.println();

Serial.println();

Serial.print("Tunggu WiFi… ");

while(WiFiMulti.run() != WL_CONNECTED) {

Serial.print(".");

penundaan (500);

}

Serial.println("");

Serial.println("WiFi terhubung");

Serial.println("Alamat IP: ");

Serial.println(WiFi.localIP());

penundaan (500);

}

lingkaran kosong()

{

int analogValue = analogRead(pin keluaran);

{

////////////////////////////////////// KIRIM PERTANYAAN DAN TERIMA RESPONNYA//// ///////////////////

{

bool isDetected = digitalRead(pin);

jika(terdeteksi){

Serial.println("Keberadaan terdeteksi");

}

penundaan (500);

}

Serial.print("menghubungkan ke ");

Serial.println(host); //didefinisikan terbalik:- host = devapi2.thethingscloud.com atau 139.59.26.117

/////////////////////////////////// SNIPPET KODE TIMESTAMP /////////// ///////////////////////

Serial.println("di dalam dapatkan stempel waktu\n");

if (!client.connect(time_server, {

kembali; //*-*-*-*-*-*-*-*-*-*

}

client.println("DAPATKAN /api/timestamp HTTP/1.1"); // Apa yang dilakukan bagian ini, aku tidak mengerti

client.println("Host: baas.thethingscloud.com");

client.println("Kontrol Cache: tanpa cache");

client.println("Token Tukang Pos: ea3c18c6-09ba-d049-ccf3-369a22a284b8");

klien.println();

BeriSayaTimestamp(); // itu akan memanggil fungsi yang akan mendapatkan respons stempel waktu dari server

Serial.println("stempel waktu diterima");

Serial.println(stempel waktu);

Serial.println("di dalam ThingsCloudPost");

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

PostValue = PostValue + ", \"dts\":" +timestamp;

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

Serial.println(Nilai Pos);

/* membuat instance WiFiClientSecure */

Klien WiFiClientSecure;

Serial.println("Hubungkan ke server melalui port 443");

if (!klien.koneksi(server, 443)){

Serial.println("Koneksi gagal!");

} lain {

Serial.println("Tersambung ke server!");

/* membuat permintaan HTTP */

client.println( POST /devices/deviceData

client.println("Host: api.thingsai.io");

//client.println("Koneksi: tutup");

client.println("Tipe Konten: aplikasi/json");

client.println("kontrol cache: tanpa cache");

client.println( Otorisasi: Pembawa eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNTkXs9PKylYlWNqC2PNTkXs9PKyl

client.print("Panjang Konten: ");

client.println(PostValue.length());

klien.println();

klien.println(Nilai Pos);

/////////////////////////////////POSTING data ke cloud selesai dan sekarang dapatkan respons formulir cloud server//////////////////

Serial.print("Menunggu jawaban");

while (!klien.available()){

penundaan(50); //

Serial.print(".");

}

/* jika data tersedia maka terima dan cetak ke Terminal */

while (client.available()) {

char c = klien.baca();

Serial.tulis(c);

}

/* jika server terputus, hentikan klien */

if (!klien.terhubung()) {

Serial.println();

Serial.println("Server terputus");javascript:;

klien.berhenti();

}

}

Serial.println("////////////////////// AKHIR //////////////////// ");

penundaan(3000);

}

}

Langkah 4: OUTPUT

KELUARAN
KELUARAN

Ini adalah representasi grafik batang dari nilai yang dibaca dari sensor di platform thingsai, io cloud,

Langkah 5: Grafik

Grafik
Grafik

Ini adalah representasi grafis dari nilai-nilai dari sensor. Dari grafik di atas kita dapat menganalisis penerapan sensor. Terima kasih

Direkomendasikan: