Isi kandungan:
- Bekalan
- Langkah 1: Tentukan Senario Anda
- Langkah 2: (Pengenalan) Tetapkan Pencetus - Pelbagai Pengguna
- Langkah 3: (Pengenalan) Tetapkan Pencetus - Pengguna Terhad
- Langkah 4: (Persediaan) - IFTTT
- Langkah 5: (Persediaan) Peranti IOT * pilihan *
- Langkah 6: (Persediaan) IFTTT Webhook Api * Pengguna Berpengalaman *
- Langkah 7: (Persediaan) IFTTT Webhook Api * Untuk Pemula Dengan Foto *
- Langkah 8: (Kod) Memprogram ESP32
- Langkah 9: (Kod) Muat naik Kod ke ESP32
- Langkah 10: (Kod) Muat naik Kod ke ESP32 * pilihan *
- Langkah 11: Letakkan ESP dan Kalibrasi
- Langkah 12: Tahniah! Anda Sudah Selesai
Video: Sensor Kehadiran: 12 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:08
Wearables biasanya merupakan peranti yang didayakan BLE. Adalah biasa bagi mereka untuk secara berkala mengiklankan beberapa data di sepanjang alamat MACnya. Kami menggunakan ESP untuk mengimbas data ini dan mencetuskan peristiwa melalui internet apabila ia menemui alamat MAC tertentu. Pelaksanaan khusus ini adalah untuk satu pengguna pada palam pintar yang disambungkan ke lampu. Tetapi ia juga dapat digunakan dengan satu set perangkat berdaftar dengan semua jenis peranti berkemampuan IOT.
Bekalan
- ESP32
- (pilihan) TECKIN WiFi Wall Plug S10
- Peranti yang diaktifkan BLE dalam bentuk apa pun
Langkah 1: Tentukan Senario Anda
Untuk pencetus, anda boleh menggunakan sebahagian besar pakaian moden. Ini boleh menjadi Apple Watch, band fit, telefon atau bahkan DIY yang anda pakai berdasarkan ESP32.
Mungkin salah satu langkah yang paling penting. Anda harus berfikir lebih awal dalam 3 perkara:
1. Yang boleh dipakai atau peranti yang akan menjadi pencetus sensor jarak.
2. Apa yang akan mencetuskan sensor (ini dilakukan melalui IFTTT).
3. Semasa sensor akan mencetuskan
Untuk contoh ini, saya akan menggunakan Apple Watch saya untuk mencetuskan plag pintar untuk menyalakan lampu semasa saya duduk di meja saya.
Dalam tutorial ini kita akan melihat plug pintar oleh TECKIN. Anda boleh mendapatkannya di amazon dengan harga yang berpatutan. Ia juga sesuai dengan Alexa dan google Home. Nilai yang hebat!
Langkah 2: (Pengenalan) Tetapkan Pencetus - Pelbagai Pengguna
Sekiranya anda ingin mengkonfigurasi supaya berfungsi dengan baik, mana-mana orang yang mempunyai peranti berkemampuan BLE cukup dekat dengan sensor anda, kemudian langkau langkah seterusnya. Ini cukup berguna, adalah tetapan yang saya gunakan secara peribadi. Perlu diingat bahawa sensor ini dapat digodam dengan mudah atau dieksploitasi untuk mencetuskannya sehingga saya tidak akan banyak mempercayai dari sudut keselamatan; hanya untuk yang praktikal (iaitu, saya tidak mahu ia dicetuskan oleh PC saya kerana akan selalu berada di sebelah sensor).
Langkah 3: (Pengenalan) Tetapkan Pencetus - Pengguna Terhad
Langkah ini sangat berbeza pada persediaan anda. Untuk menghadkan peranti mana yang dapat memicu sensor, anda mempunyai banyak laluan untuk dibatasi:
- Alamat MAC BLE (setara dengan alamat IP pada rangkaian wifi. Sebabnya ia tidak menjamin keselamatan kerana bukan alamat MAC sebenar modul. Pada peranti iOS ia berubah setiap kali anda menghidupkan semula bluetooth, tidak begitu menyenangkan)
- Kod Pengilang (pilihan yang lebih baik, tetapi tidak ada cara untuk menghadkan peranti tertentu dari pengeluar / model yang sama)
- Nama, UIDD Perkhidmatan (jarang tetapi pilihan terbaik, kebanyakan boleh pakai DIY atau mungkin aplikasi android)
Beberapa Nota:
1. Sekiranya ia adalah peranti iOS:
- Anda mempunyai kebaikan dan keburukan yang penting. Pro, mereka menghantar tahap kekuatan di mana ia adalah data pengiklanan. Itu berguna pada tahap penentukuran, anda akan mendapati bahawa menggunakan Apple Watch sangat berguna kerana ia disiarkan pada 24db, iPhone dan kebanyakan peranti menghantar pada 12db.
CON, anda mesti mencari jalan penyelesaian. Alamat MAC yang diiklankan (kaedah pengenalan utama) berubah setiap kali isyarat bluetooth dimulakan semula, yang bermaksud anda mesti memuat naik kod setiap kali… tidak menyenangkan. Anda boleh menggunakan data pengeluar yang mungkin berbeza antara model. Ini bermaksud bahawa anda dapat menghadkan sehingga dapat merasakan "semua iPhone 8".
2. Sekiranya ia adalah peranti Android:
- Saya secara peribadi tidak mempunyai peranti android. Tetapi mungkin ada banyak aplikasi yang dapat memperbaiki alamat MAC atau bahkan menambahkan nama yang diperibadikan (jika itu adalah cara yang anda mahu pergi). Pada peranti iOS terdapat aplikasi "nrf connect" yang dapat melakukannya. Tetapi tidak berterusan, yang bermaksud jika anda mengunci skrin atau menukar aplikasi.. konfigurasi akan mati dalam beberapa saat.
3. ESP32 yang lain. (pertaruhan terbaik anda)
- Kod ringkas seperti ini boleh dilaksanakan dalam peranti seperti ini; jalur pintar berkuasa esp32. Kod sebenarnya adalah contoh dari perpustakaan ESP BLE BLE_IBeacon.ino. Saya belum banyak menguji sejak band pintar saya dalam penghantaran, mungkin akan menghantar kemas kini tidak lama lagi.
Langkah 4: (Persediaan) - IFTTT
Baiklah, jadi pada peringkat ini anda mungkin harus mengambil semua keperluan aliran kerja anda. Anda mempunyai alat pemicu, anda mempunyai tempat untuk meletakkan ESP dengan sambungan tanpa wayar ke internet dan anda mempunyai tindakan yang boleh dilakukan oleh IFTTT secara automatik.
IFTTT berkuasa; sama ada hanya untuk menghantar pemberitahuan sederhana ke peranti anda, anda mahu tweet dihantar atau menyalakan bola lampu dengan palam pintar. Dalam tutorial ini kita akan melaksanakan yang terakhir dengan palam pintar TECKIN yang serasi dengan IFTTT. Sama ada cara, muat turun aplikasi IFTTT atau pergi ke laman web IFTTT.com dan buat akaun.
Itu sahaja buat masa ini!
Sekiranya anda hanya ingin menghantar pemberitahuan atau perkara lain daripada palam Smart Life, anda boleh melangkau langkah seterusnya.
Langkah 5: (Persediaan) Peranti IOT * pilihan *
Muat turun aplikasi "Smart Life" dari PlayStore (android) atau AppStore (iOS). Arahan agak lurus ke hadapan, walaupun prosesnya agak sukar. Saya dapati pada tahap pengimbasan (ketika butang biru berkedip) ia berhenti pada suatu ketika, kemudian saya menekannya secara manual untuk menghidupkan dan mematikan beberapa kali. Itu membantu saya. Bagaimanapun; penyediaan palam ini tidak berbeza dengan aplikasi kami, jadi jika anda sudah memilikinya dan menyambungkannya ke aplikasi anda, anda harus bersedia.
AMBIL PERHATIAN: Anda perlu menghidupkan dan mematikan suis dari aplikasi sebelum anda meneruskan langkah ini. Ini bermakna anda telah mengkonfigurasi plag pintar dengan betul.
Aplikasi IFTTT harus diselaraskan dengan aplikasi "Smart Life" dengan lancar, mungkin meminta pengesahan semasa membuat acara pada langkah seterusnya.
Langkah 6: (Persediaan) IFTTT Webhook Api * Pengguna Berpengalaman *
Sekiranya anda belum menggunakannya sebelum aplikasi IFTTT dan tidak begitu selesa dengan beberapa istilah teknikal, lompat langkah ini untuk Panduan Terperinci (dengan foto) pada langkah seterusnya.
1. Buat acara baru.
2. Tetapkan "ini" menjadi api webhook. Tuliskan nama yang anda tetapkan untuk acara tersebut.
3. Tetapkan "itu" ke tingkah laku yang anda mahukan. Untuk kehidupan pintar mencari palam pintar dan pilih 'hidupkan'.
4. Pilih palam pintar anda dan tekan selesai.
5. Di skrin utama cari kad 'webhooks'. Selepas anda menekannya, tekan "dapatkan lebih banyak" di bahagian bawah.
6. Tekan dokumentasi. Ini akan menunjukkan kunci api anda bersama dengan pembangun & penguji URL.
7. Gunakan pembina URL dengan nama yang anda tulis di # 2. Salin dan tuliskan.
8. Ulangi jika anda mahu tingkah laku dicetuskan apabila sensor kehadiran tidak lagi aktif. Dalam kes kami ulangi # 3 tetapi pilih 'matikan'. Juga, di # 2 namanya juga mesti berbeza kali ini.
Sekiranya anda selesai melangkau langkah seterusnya.
Langkah 7: (Persediaan) IFTTT Webhook Api * Untuk Pemula Dengan Foto *
Panduan terperinci * panduan foto harus serupa dengan android dan di web *
IFTTT adalah aliran kerja yang mudah, jika "ini berlaku" maka "itu berlaku". Anda mesti membuat yang baru, 1. pada aplikasi tekan "dapatkan lebih banyak" dan senarai akan dipaparkan.
2. Tepat di bawah bar carian bertuliskan "buat applet anda sendiri dari awal", tekan tanda Plus.
3. Tekan tanda tambah "ini"
Dalam kes kami "ini" akan menjadi panggilan api melalui internet. Panggilan api adalah merujuk kepada URL, seperti ketika anda menaip carian google dan urlnya adalah google.com/(rentetan watak panjang). Untuk membuat api: (setelah menekan "ini")
4. Cari "webhooks"
5. Pilih satu-satunya pilihan
6. Namakan acara anda (dalam contoh ini kita akan menggunakan "Sit"). Tuliskan nama ini, sangat penting.
7. Tekan Buat Pencetus
Okey! kita lebih dekat, Sekarang ke bahagian "itu". Untuk tutorial ini kita akan menetapkan "itu" untuk menghidupkan palam Pintar. Tetapi anda boleh memilih apa sahaja dari IFTTT. Cara yang baik untuk menguji penyediaan adalah memilih "pemberitahuan" yang akan mengirim pemberitahuan ke telefon anda setiap kali sensor terpicu (atau api dipanggil, bahkan dari penyemak imbas web: berguna untuk ujian!)
8. Tekan tanda tambah "itu"
9. Cari "Kehidupan Pintar" (atau "pemberitahuan")
10. Tekan 'hidupkan' (anda perlu mengulangi langkah ini untuk membuat acara lain untuk dimatikan semasa anda pergi)
11. Sekiranya anda mempunyai kedua-dua aplikasi dan palam yang dikonfigurasikan dengan betul, anda mesti melihat palam anda di drop down 'peranti / kumpulan mana.
12. Pilih Buat Tindakan dan kemudian selesaikan.
Sekarang anda harus melihat acara itu bersambung. Sekarang kita perlu mendapatkan URL api. Untuk ini:
13. Pergi ke Skrin Utama IFTTT
14. Cari kad Webhooks
15. Pilih "Dapatkan Lebih Banyak"
16. Ketik pada butang Dokumentasi. Anda mesti melihat halaman web dengan kunci anda.
17. Di tempat letak "{event}" isikan nama acara anda (ingat Titik 6)
18. Pergi ke bahagian bawah halaman dan ketuk "Uji Ini"
Yang mesti anda lihat ialah sepanduk hijau "peristiwa telah dicetuskan" dan anda harus melihat adakah ia berjaya atau tidak. Dalam kes kami, palam harus dihidupkan. Atau anda akan melihat pemberitahuan sekiranya anda memutuskan untuk mengikuti jalan tersebut. Mungkin memerlukan sedikit masa, tetapi tidak lebih dari satu minit untuk melihat apakah anda berjaya. Ingat, ini mungkin peka huruf besar kecil.
19. Akhirnya. Salin url tempat anda mengganti nama acara anda (pada 17) dan simpan di tempat yang selamat. Anda akan memerlukannya tidak lama lagi.
20. Ulangi 1-12. Pada jam 6 kita akan menggunakan "Stand" kali ini. Pada 10 pilih 'matikan' sebagai gantinya.
21. Ulangi 13-18 jika anda mahu, tetapi anda boleh menghilangkan url yang anda salin pada 19, tetapi sekarang ubah tempat di mana anda menulis "Duduk" dan ganti dengan "Berdiri". Anda boleh mengujinya di penyemak imbas web. Ia harus mengatakan 'Tahniah! Anda telah melepaskan acara Stand '. Maka palamnya mesti dimatikan.
Langkah 8: (Kod) Memprogram ESP32
Anda boleh melangkau langkah ini jika anda selesa memuat naik lakaran dari Arduino IDE ke Papan ESP32 anda. Ingatlah untuk menetapkan partition 2mb untuk aplikasi sekurang-kurangnya kerana berat lakaran sedikit melebihi had biasa 1.2mb.
Terdapat banyak tutorial hebat di luar sana, berikut adalah beberapa yang saya cadangkan:
circuitdigest.com/microcontroller-projects…
Tetapi tetap saja, agar anda tidak tersesat, saya akan membahagikan beberapa perkara penting.
- ESP32 bukan papan Arduino namun masih boleh diprogramkan oleh Arduino IDE. Dengan kod Arduino ringkas. Tetapi, anda masih perlu mengkonfigurasi IDE untuk berfungsi dengan ESP32.
- Anda perlu memasang beberapa perpustakaan melalui 'Pengurus papan tambahan' mengikut pilihan. Ini adalah URL yang harus anda tampal:
- (pilihan, boleh membantu) Pada Alat-> Urus Perpustakaan… -> (cari perpustakaan esp BLE)
- di Tools, anda semestinya mempunyai senarai panjang peranti ESP, saya cadangkan modul dev ESP32
- (PENTING) Pilih (tiada aplikasi Ota 2mb / 2mb spifs) di pengurus partition. Langkah ini penting kerana aplikasi menjadi cukup berat kerana produk menggunakan kedua-dua sambungan wifi / http dan juga pengimbas BLE.
Sekiranya anda melakukan semuanya dengan betul, anda seharusnya dapat memprogramkan ESP32. Sekarang proses melakukannya serupa dengan arduino di beberapa papan. Pasangkannya, pilih papan pemadan, port USB dan anda selesai. Tetapi, dalam banyak kes lain, anda mesti meneruskannya
Langkah 9: (Kod) Muat naik Kod ke ESP32
Ok, jika anda berada di sini, ini bermakna anda berjaya memuat naik lakaran ke papan ESP32, lebih baik lakaran blink.ino.
Sekarang, berikut adalah kod utama yang dilampirkan, anda juga boleh mencarinya di repo GitHub. Anda mesti mengganti yang berikut:
SSID - Nama wifi anda
PSK - Kata Laluan wifi anda
sit - URL dengan "Duduk" dari api IFTTT yang anda tulis sebelumnya
stand - URL dengan "Stand" Dari api IFTTT yang anda tulis sebelumnya
Sekarang bawa alat pencetus anda ke papan dan kemudian muat naik kodnya. Kemudian buka Monitor Serial (baud 115200) setelah berjaya memuatkan kodnya.
Sekiranya anda merancang untuk menggunakan ini dengan sebarang jenis peranti yang diaktifkan BLE, lompat langkah seterusnya.
CATATAN: jika anda mendapat mesej ralat memori kerana tetapan lalai hanya meninggalkan 1mB memori (daripada 4mB sekarang) untuk kod mentah ESP. Ia meninggalkan sebahagian daripada beberapa perkara sebagai pilihan untuk memprogram di udara. Saya biasanya melakukan perkara berikut:
- di Tools, anda sekarang mesti mempunyai senarai panjang peranti ESP, saya cadangkan modul dev ESP32-Pilih 'no Ota 2mb app / 2mb spifs' di partition manager.
Ini memberi saya ruang memori berganda, yang diperlukan untuk aplikasi ini.
Langkah 10: (Kod) Muat naik Kod ke ESP32 * pilihan *
Inilah bahagian sukar yang disebutkan di Langkah "Tetapkan pencetus". Monitor akan mengeluarkan alamat MAC (akan terlihat seperti ##: ##: ##: ##: ## di mana # adalah nombor atau huruf dari a hingga f), Kod pengeluar dan RSSI (nombor negatif). Di sini anda perlu bermain-main sedikit untuk mencari mana peranti anda. Saya biasanya meletakkannya di sebelah papan supaya saya dapat melihat dengan jelas nombor paling kecil. Saya hapus centang kotak 'autoscroll' supaya saya dapat menyalin nilainya.
- Sekiranya ia adalah Alamat Mac isikan 'myDevice' dengannya. Kemudian baris komen # 96 dan baris komen # 95
- Sekiranya itu Nama isikan 'myDevice' dengannya. Kemudian bariskan komen # 97 dan baris komen # 95
- Sekiranya ini adalah MaufactureData anda tidak bernasib baik buat masa ini, saya masih mengembangkan bahagian itu.
Untuk menambahkan sokongan untuk peranti Mei, anda seharusnya dapat menyalin pernyataan konditian sama ada di # 96 atau # 97 dan meletakkannya di sebelah satu sama lain dalam sintaks ini:
jika ((syarat1) || (syarat2) || (syarat3)) {
Tambahkan lebih banyak pemboleh ubah (myDevice1, myDevice2, myDevice3) dengan sewajarnya.
Langkah 11: Letakkan ESP dan Kalibrasi
Ini adalah bahagian terpenting dalam persediaan. Menjalani proses ini dengan teliti akan menjadi perbezaan di mana ia berfungsi seperti sihir atau hanya memberi anda sakit kepala yang kuat.
Pada ketika ini, kod yang anda muat naik berfungsi dengan parameter yang telah saya uji sendiri dan gunakan setiap hari dengan telefon di meja saya; itu tidak bermaksud ia akan berfungsi untuk anda juga. Oleh itu, anda perlu melakukan penentukuran sendiri.
1. Letakkan Papan ESP32 di lokasi TETAP terakhirnya. Sekiranya anda bergerak kerana sebab tertentu kedudukan ESP32 anda, anda mungkin harus melakukannya sekali lagi. Ini akan memastikan anda mendapat pengalaman yang baik secara keseluruhan.
1. (tambahan) ingat bahawa anda perlu dapat menyambung ke komputer anda semasa melakukan ini. Sekiranya anda tidak dapat melakukannya kerana anda menggunakan desktop, anda perlu melakukan percubaan dan kesilapan dengan mengingat bahawa setiap percubaan mesti hampir sama dalam kedudukan, pencetus peranti dan faktor lain yang mungkin perlu dikira.
2. Buka Serial Monitor dengan kod berjalan.
Kod secara lalai akan menghantar melalui Monitor Serial RSSI (Tanda kekuatan isyarat yang diterima) dari setiap peranti bluetooth yang dijumpai (atau hanya perangkat yang sesuai dengan parameter anda). Main sedikit dengan alat tindakan utama anda (alat pencetus). Anda harus menentukan berapa had yang ingin anda gunakan. Dengan berhati-hati menyesuaikan konfigurasi ini
3. Apabila anda menentukan ambang, gantikannya di sini:
- dekat_thrsh
- far_thrsh
4. Muat naik semula kod, uji dan ulangi sehingga anda mendapat prestasi yang optimum.
Beberapa perkara yang perlu dipertimbangkan:
1. Anda mahukan perbezaan sekitar 20db antara ambang. Sekiranya Near_thrsh diatur ke 50 maka diinginkan far_thrsh adalah 70 atau lebih. Sekiranya perbezaannya terlalu pendek, maka anda mungkin menjumpai beberapa jarak atau tempat di mana papan pemicu dihidupkan dan dimatikan tanpa henti. Menambah perbezaan ini akan memastikan anda mengelakkan tingkah laku yang tidak diingini ini. Saya mendapati secara automatik bahawa margin 20db cukup baik.
2. Pada senario ujian kalibrasi kehidupan sebenar sebanyak mungkin, ini akan membantu menentukan prestasi terbaik.
3. Belajar kelas di baris 82 kod; di sinilah semua logik dilakukan. Kodnya juga dikomen dengan baik. Jangan ragu untuk bertanya di GitHub!
Langkah 12: Tahniah! Anda Sudah Selesai
Beritahu saya di dalam komen sebarang cadangan atau jika anda mengalami masalah. Ingatlah untuk memeriksa GitHub jika masalah anda telah diselesaikan!
Disyorkan:
Pengesan Kehadiran Tempat Tidur Zigbee: 8 Langkah
Zigbee Bed Presence Detector: Untuk beberapa waktu sekarang saya sedang mencari kaedah untuk mengesan ketika kita sedang tidur. Ini untuk menggunakan maklumat ini ke Homeassistant. Dengan maklumat ini saya dapat membuat automasi untuk mematikan lampu pada waktu malam atau misalnya mengaktifkan sistem penggera di
Robot Kehadiran Maya: 15 Langkah
Robot Kehadiran Maya: Robot mudah alih ini berinteraksi dengan persekitaran fizikalnya, dengan mewakili " kehadiran maya " orang yang mengawalnya dari jauh. Ia dapat diakses oleh siapa saja, di mana saja di dunia, untuk membuang makanan dan bermain dengan anda. Kerja yang dia
Sistem Kehadiran Jari Jari dan RFID Menggunakan Pangkalan Data Raspberry Pi dan MySQL: 5 Langkah
Sistem Kehadiran Cap Jari dan RFID Menggunakan Raspberry Pi dan MySQL Pangkalan Data: Video Projek Ini
Menggunakan Sensor Cap Jari untuk Kehadiran Waktu dalam Kombinasi Dengan Penyelesaian XAMP: 6 Langkah (dengan Gambar)
Menggunakan Sensor Jari Jari untuk Kehadiran Waktu dalam Kombinasi Dengan Penyelesaian XAMP: Untuk projek sekolah, kami mencari jalan penyelesaian mengenai cara mengesan kehadiran pelajar. Sebilangan besar pelajar kami datang lewat. Ini adalah pekerjaan yang membosankan untuk memeriksa kehadiran mereka. Sebaliknya, terdapat banyak perbincangan kerana pelajar sering mengatakan
Sensor Kehadiran Tempat Tidur Dengan SONOFF: 8 Langkah (dengan Gambar)
Sensor Kehadiran Tempat Tidur Dengan SONOFF: Selamat datang ke tutorial ini! Prasyarat Cara ini menghendaki anda mempunyai pengetahuan mengenai sonoff dan tasmota. Sekiranya anda tidak pernah menukar sonoff dengan tasmota, anda harus terlebih dahulu belajar melakukannya dan hanya anda yang akan dapat membinanya. Sekiranya anda tidak tahu sonof