Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Spectrino: Solusi Sentuh Bebas TinyML & IoT dengan Arduino Nano & ESP8266

Komponen dan Perlengkapan

Alat dan Mesin yang Diperlukan

Aplikasi dan Layanan Online

Tentang Proyek Ini

Ringkasan

Pandemi telah memperkenalkan keterbatasan pada interaksi sosial: jarak. Mempertimbangkan faktor risiko ini, negara-negara di seluruh dunia telah berada dalam tingkat karantina yang bervariasi, dan banyak pusat perbelanjaan telah harus tutup karena penurunan jumlah konsumen yang signifikan. Hal ini telah mengakibatkan tingkat pengangguran yang sangat, sangat tinggi di kalangan karyawan pusat perbelanjaan, serta tantangan ekonomi yang serupa bagi pemilik bisnis.

Ini telah menyebabkan tingkat kehilangan pekerjaan berpendapatan rendah (kurang dari $40.000 pendapatan tahunan) pada 2 Juli 2020 di AS akibat COVID-19. Akomodasi dan Layanan Makanan, serta Perdagangan Eceran dan Hibur secara kolektif mencakup sekitar 4.000.000 dari pekerjaan yang diestimasi hilang.

Tantangan ekonomi yang dihadapi berbagai industri, di mana Makanan, Konsumen, dan Perdagangan Eceran muncul di 6 industri teratas dengan jumlah karyawan yang dipecat paling banyak (mencapai estimasi 20.000+ pekerja). Asumsi “Internasional” untuk mencakup semua area non-AS yang dipertimbangkan dalam penelitian ini, total jumlah pengangguran global mencapai estimasi 103.000+ pekerja.

Komplikasi

Mempertimbangkan data yang diberikan, tim telah menentukan tantangan utama adalah ada ketidakpastian risiko, terkait kepadatan populasi di berbagai toko, untuk pusat perbelanjaan yang masih buka. Selain itu, meskipun penggunaan masker wajah dan menghindari sentuhan wajib di banyak tempat, masih ada pelanggaran. Hal ini membuatnya lebih sulit bagi petugas pusat perbelanjaan dan pemilik bisnis, yang tidak mampu bekerja dari jarak jauh, untuk menavigasi workspace normal baru ini dengan aman. Ini menimbulkan pertanyaan: bagaimana kita dapat menjamin dengan tingkat kepastian yang layak bahwa, pada titik waktu mana pun, toko tertentu di pusat perbelanjaan aman untuk dimasuk?

Kita semua sekarang melawan pandemi COVID-19 yang meluas. Dan juga, sekarang kita berada dalam situasi di mana kita harus menyesuaikan diri dengan kondisi yang meluas dengan lebih banyak langkah keselamatan. Sementara kehidupan kembali ke normal dengan lebih banyak langkah keselamatan untuk menghindari infeksi virus, menambahkan keselamatan di tempat umum dan area ramai juga meluas di kota. Tapi ada banyak situasi di mana kita harus melanggar langkah keselamatan dan berinteraksi dengan elemen yang tidak aman untuk memenuhi yang membutuhkan. Di sini, proyek ini menangani pencegahan penyebaran COVID-19 melalui interaksi sentuhan atau sentuhan.

Solusi yang Dikembangkan dalam Membuat Prototyp Ini

Pengaturan (Persyaratan Proyek)

Hardware yang Diperlukan:

1) Arduino33 BLE sense

Arduino Nano 33 BLE Sense adalah evolusi dari Arduino Nano tradisional, tetapi dengan prosesor yang jauh lebih kuat, nRF52840 dari Nordic Semiconductors, CPU ARM® Cortex™-M4 32-bit yang berjalan pada 64 MHz. Ini akan memungkinkan Anda membuat program yang lebih besar daripada dengan Arduino Uno (memori program 1MB, 32 kali lebih besar), dan dengan banyak lebih banyak variabel (RAM 128 kali lebih besar). Prosesor utama termasuk fitur luar biasa lainnya seperti Bluetooth® pairing via NFC dan mode konsumsi daya ultra rendah.

Kecerdasan Buatan Terpadu

Fitur utama papan ini, selain pilihan sensor yang mengesankan, adalah kemampuan untuk menjalankan aplikasi Edge Computing (AI) padanya menggunakan TinyML. Anda dapat membuat model pembelajaran mesin menggunakan TensorFlow™ Lite dan mengunggahnya ke papan Anda menggunakan Arduino IDE.

2) ESP8266 ESP-01

ESP8266 ESP-01 adalah modul Wi-Fi yang memungkinkan mikrokontroler mengakses jaringan Wi-Fi. Modul ini adalah SOC (System On a Chip) yang terkontain yang tidak perlu mikrokontroler untuk memanipulasi input dan output seperti yang Anda lakukan biasanya dengan Arduino, misalnya, karena ESP-01 bertindak sebagai komputer kecil. Bergantung pada versi ESP8266, mungkin untuk memiliki hingga 9 GPIO (General Purpose Input Output). Jadi, kita dapat memberi mikrokontroler akses internet seperti yang dilakukan shield Wi-Fi untuk Arduino, atau kita dapat dengan mudah memprogram ESP8266 untuk tidak hanya memiliki akses ke jaringan Wi-Fi, tetapi juga bertindak sebagai mikrokontroler. Ini membuat ESP8266 sangat serbaguna.

3) Arducam Mini 2MP plus

ArduCAM-2MP-Plus adalah versi yang dioptimalkan dari ArduCAM shield Rev.C, dan adalah kamera SPI 2MP high definition, yang mengurangi kompleksitas antarmuka kontrol kamera. Ini mengintegrasikan sensor citra CMOS 2MP OV2640, dan menyediakan ukuran mini, serta antarmuka perangkat keras yang mudah digunakan dan library kode open source.

4) Arduino MKR WiFi 1010:

Arduino MKR WiFi 1010 adalah titik masuk termudah untuk desain aplikasi IoT dasar dan pico-jaringan. Bahkan Anda sedang mencari membangun jaringan sensor yang terhubung ke router kantor atau rumah Anda, atau jika Anda ingin membuat perangkat BLE yang mengirim data ke ponsel, MKR WiFi 1010 adalah solusi satu pintu untuk banyak skenario aplikasi IoT dasar.

Prosesor utama papan ini adalah Arm® Cortex®-M0 32-bit SAMD21 dengan konsumsi daya rendah, seperti papan lain dalam keluarga Arduino MKR. Konektivitas WiFi dan Bluetooth® dilakukan dengan modul dari u-blox, NINA-W10, chipset konsumsi daya rendah yang beroperasi pada rentang 2,4GHz. Di atasnya, komunikasi aman dijamin melalui chip kripto Microchip® ECC508. Selain itu, Anda dapat menemukan pengisi baterai, dan LED RGB yang dapat diarahkan di papan.

Alat Lunak:

1) Arduino Web Editor

Arduino Create adalah platform online terpadu yang memungkinkan Makers dan Pengembang Profesional untuk menulis kode, mengakses konten, mengonfigurasi papan, dan berbagi proyek. Pergi dari ide ke proyek IoT selesai lebih cepat dari sebelumnya. Dengan Arduino Create Anda dapat menggunakan IDE online, menghubungkan banyak perangkat dengan Arduino IoT Cloud, menjelajahi koleksi proyek di Arduino Project Hub, dan terhubung secara jarak jauh ke papan Anda dengan Arduino Device Manager. Sebagai tambahan Anda dapat berbagi ciptaan Anda, bersama dengan panduan langkah demi langkah, skematika, referensi, dan menerima umpan balik dari orang lain.

2) Edge Impulse Studio:

Tren untuk menjalankan ML pada mikrokontroler terkadang disebut Embedded ML atau Tiny ML. TinyML memiliki potensi untuk menciptakan perangkat kecil yang dapat membuat keputusan cerdas tanpa perlu mengirim data ke cloud — bagus dari segi efisiensi dan privasi. Bahkan model pembelajaran mendalam yang kuat (berdasarkan jaringan saraf buatan) kini mencapai mikrokontroler. Sepanjang tahun terakhir, kemajuan besar telah dilakukan dalam membuat model pembelajaran mendalam lebih kecil, lebih cepat, dan dapat dijalankan pada perangkat keras tertanam melalui proyek seperti TensorFlow Lite for Microcontrollers, uTensor dan Arm’s CMSIS-NN; tetapi membangun kumpulan data berkualitas, mengekstrak fitur yang tepat, melatih dan menerapkan model ini masih bisa rumit.

Menggunakan Edge Impulse Anda sekarang dapat dengan cepat mengumpulkan data sensor dunia nyata, melatih model ML pada data ini di cloud, dan kemudian menerapkan model kembali ke perangkat Arduino Anda. Dari sana Anda dapat mengintegrasikan model ke sketsa Arduino Anda dengan satu panggilan fungsi. Sensor Anda menjadi jauh lebih cerdas, mampu memahami peristiwa kompleks di dunia nyata. Contoh bawaan memungkinkan Anda mengumpulkan data dari accelerometer dan mikrofon, tetapi mudah untuk mengintegrasikan sensor lain dengan beberapa baris kode.

3) ThingSpeak:

ThingSpeak™ adalah layanan analitik IoT yang memungkinkan Anda mengagregasi, memvisualisasikan, dan menganalisis aliran data langsung di cloud. ThingSpeak menyediakan visualisasi instan dari data yang diposting oleh perangkat Anda ke ThingSpeak. Dengan kemampuan untuk mengeksekusi kode MATLAB® di ThingSpeak, Anda dapat melakukan analisis online dan memproses data saat tiba. ThingSpeak sering digunakan untuk prototyping dan sistem konsep bukti IoT yang memerlukan analitik.

Anda dapat mengirim data dari perangkat apa pun yang terhubung internet langsung ke ThingSpeak menggunakan Rest API atau MQTT. Selain itu, integrasi cloud-ke-cloud dengan The Things Network, Senet, gateway Libelium Meshlium, dan Particle.io memungkinkan data sensor mencapai ThingSpeak melalui LoRaWAN® dan koneksi seluler 4G/3G.

Memulai dengan Implementasi:

Proyek 1: Sistem Lift Sentuh Bebas menggunakan model Speech Recognition TinyML pada Arduino BLE 33 Sense

Saat bepergian, kita menggunakan lift beberapa kali sehari! Switch yang sering digunakan terkontaminasi oleh semua orang yang telah menyentuh lift sebelumnya. Jadi, saya memutuskan untuk menciptakan solusi sentuh bebas untuk lift yang menggunakan perintah suara dan tanpa penggunaan IoT atau jaringan Wi-Fi, itu bekerja sama dan melakukan tindakan. Solusi sistem lift sentuh bebas telah diterapkan yang menggunakan kontrol gerakan atau sensor ultrasonik untuk melakukan operasi tetapi masalah yang dihadapi pada sensor ini adalah mereka perlu diaktifkan dari jarak dekat dan oleh karena itu risiko sentuhan meningkat. Juga, sensor ini sangat sensitif dan diaktifkan bahkan jika objek kecil datang di jalan dan mengaktifkannya. Sesuai dengan itu, saya mencoba untuk menciptakan solusi yang lebih akurat menggunakan deteksi suara pada Arduino 33 BLE sense. Model ini menerima dua perintah, baik "up" atau "down" dan sesuai mengirim data ke servo untuk menekan tombol yang sesuai pada switch. Ide mengirim data ke servo untuk mengaktifkan switch adalah karena sebagian besar masyarakat memiliki sistem switch dan tampilan yang telah dibuat sebelumnya dan oleh karena itu tidak mengganggu sistem yang sudah ada, ini dibuat untuk menambahkan sistem perangkat keras eksternal untuk mengontrol fungsi.

Logika inti yang digunakan untuk melakukan fungsi ini adalah:

Melatih Model untuk menafsirkan perintah "up" dan "down" di Edge Impulse Studio

a) Mengumpulkan Data Mentah dengan Kumpulan Data Pelatihan dan Pengujian. Di sini, saya telah mengumpulkan data 1:30 menit dengan durasi masing-masing data "up" dan "down" selama 2 detik.

b) Membuat Impulse berdasarkan Parameter yang Diperlukan: Saya telah menetapkan ukuran peningkatan jendela menjadi 300ms dan pelatihan berdasarkan Jaringan Saraf Keras yang didedikasikan untuk data mikrofon dan accelerometer.

c) Konversi Data Mentah menjadi Data yang Diproses. Tepat di bawah Data Mentah, kita dapat melihat fitur data mentah dan data yang diproses terlihat sebagai hasil DSP berdasarkan koefisien cepstral.

d) Melatih Data Masukan untuk Menghasilkan Fitur yang Diproses. Saya telah merekam data dengan frekuensi rendah dan tinggi berdasarkan data yang sama untuk melatih impulse lebih baik dan membuat pengenalan suara yang akurat melatihnya berdasarkan semua jenis suara. Di sini, kita mendapatkan keluaran Fitur dalam kurva "S" dengan diferensiasi sentral pada sumbu x, y dan z.

e) Akhirnya, Mendesain Arsitektur Jaringan Saraf di Edge Impulse Neural Network Classifier dan melatih Jaringan.

Di sini, Arsitektur Jaringan Saraf yang dirancang untuk input data adalah sebagai berikut:

Model berperforma cukup baik dengan Akurasi Rata-rata 91,2% dan kerugian 0,29. Model dilatih selama 100 siklus pelatihan(epoch). Matriks kebingungan terlihat cukup jelas dan akurat dengan sebagian besar data sisa cocok dengan kelas yang diberi label masing-masing.

Setelah model dilatih, saya menguji model dengan Data Uji dan data langsung dan model mendapatkan akurasi 75% berdasarkan 20 detik data uji

Akhirnya, setelah model dilatih dan mendapatkan akurasi yang layak dengan logika, saya menerapkan model sebagai Library Arduino dan menerapkannya pada Arduino 33 BLE sense.

Setelah Skrip siap, saya mulai mengeditnya di Arduino Web Editor untuk kemudahan kustomisasi dan keluaran skrip akhir yang dapat diterapkan pada Arduino 33 BLE Sense adalah sebagai berikut:

Anda dapat melihat file main.ino di platform Arduino Web Editor di sini:

Main-script.ino - Arduino Web Editor

Main-script.ino - Github

Menerapkan ke Arduino 33 BLE Sense

Saat ini, satu-satunya papan Arduino dengan mikrofon bawaan adalah Arduino Nano 33 BLE Sense, jadi itulah yang akan kita gunakan untuk bagian ini. Jika Anda menggunakan papan Arduino yang berbeda dan melampirkan mikrofon Anda sendiri, Anda perlu mengimplementasikan

Saat ini, satu-satunya papan Arduino dengan mikrofon bawaan adalah Arduino Nano 33 BLE Sense, jadi itulah yang akan kita gunakan untuk bagian ini.

Arduino Nano 33 BLE Sense juga memiliki LED bawaan, yang digunakan untuk menunjukkan bahwa kata telah dikenali dan juga mengontrol servo untuk melakukan fungsi

Ini adalah cuplikan kode fitur mikro dalam model

Logika bekerja sebagai berikut untuk respons terhadap Perintah:

// Jika kita mendengar perintah, nyalakan LED yang sesuai dan nyalakan servo yang sesuai
if (found_command[0] == 'up') {
last_command_time = current_time;
digitalWrite(LEDG, LOW); // Hijau untuk up, menyala LED dengan perintah LOW
servo_7.write(0); // Memutar servo ke 0derajat untuk menekan tombol lift ketika mengatakan "up"
delay(100);
digitalWrite(LEDG, HIGH); // Mematikan LED setelah memflash perintah
servo_7.write(180); // servo kembali ke posisi aslinya yaitu 180derajat
}
// Jika kita mendengar perintah, nyalakan LED yang sesuai dan nyalakan servo yang sesuai
if (found_command[0] == 'down') {
last_command_time = current_time;
digitalWrite(LEDG, LOW); // Hijau untuk up, menyala LED dengan perintah LOW
servo_7.write(0); // Memutar servo ke 0derajat untuk menekan tombol lift ketika mengatakan "down"
delay(100);
digitalWrite(LEDG, HIGH); // Mematikan LED setelah memflash perintah
servo_7.write(180); // servo kembali ke posisi aslinya yaitu 180derajat
}

Respons perintah kedua sama seperti di atas tetapi memutar servo ketika perintah "down" didengar.

Setelah melatih data, kita mendapatkan keluaran dataset tflite yang telah dilatih sebagai berikut:

Di sini, kita menggunakan mikrofon bawaan pada Arduino Nano 33 BLE Sense dan model menggunakan rata-rata ~24-28Kb dari 256kb memori flash pada papan Arduino Nano. Model ini relatif ringan dibandingkan model pengenalan citra dan dapat memproses informasi dengan tingkat yang jauh lebih tinggi.

Logika dalam model pengenalan suara adalah sebagai berikut:

Di atas adalah data dalam library model yang telah dilatih. Fungsi utama termasuk dalam file Tensorflow.

Diagram Rangkaian untuk proyek:

Arduino Nano 33 BLE Sense menggunakan mikrofon bawaan untuk mengumpulkan data mentah. Karena Inferensi pada Arduino memakan waktu, saya telah menambahkan penundaan 100 milidetik untuk memproses data dengan akurat. Oleh karena itu antara dua sampel perekaman, LED biru bawaan berkedip menunjukkan respons untuk didengar/katakan antara dua flash LED.

Ini adalah simulasi Arduino 33 BLE Sense yang menunjukkan berkedipnya LED antara dua interval input Mikrofon yang berhasil

Berdasarkan input perintah, servo berputar sesuai

Sekarang ada alternatif lain untuk sistem otomatisasi lift sentuh bebas seperti menggunakan sensor ultrasonik atau sensor gerakan tetapi keduanya memiliki kelemahan masing-masing oleh karena itu saya memutuskan untuk membuat sistem otomatisasi lift yang dikontrol suara

Kelemahan yang dihadapi di Sensor Ultrasonik: Sensor Ultrasonik sangat sensitif terhadap gerakan. Jika objek yang bergerak di jalan masuk ke rentang Sensor Ultrasonik, sensor ini akan teraktifkan. Sensor Ultrasonik juga tidak cukup akurat, terkadang ini memproses informasi yang salah.

Kelemahan di Sensor yang dikontrol Gerakan: Sensor ini lebih akurat daripada Sensor Ultrasonik tetapi mereka perlu diaktifkan dari jarak dekat. Ini meningkatkan risiko sentuhan antara tangan dan panel lift.

Namun panel lift yang dikontrol suara lebih akurat dari kedua solusi di atas dan dapat diaktifkan dari jarak yang lebih jauh daripada ultrasonik dan sensor gerakan.

Proyek 2: Sistem Intercom Pintar menggunakan pengenalan wajah dan TinyML:

CDC memperbarui situsnya dan mengeluarkan berita mengatakan bahwa kontak tidak langsung dari permukaan yang terkontaminasi dengan koronavirus baru—dikenal sebagai transmisi fomit—adalah cara potensial untuk terinfeksi koronavirus baru.

Penelitian menemukan koronavirus baru dapat bertahan hingga tiga hari pada permukaan plastik dan logam dan pada kardus selama 24 jam. Namun, ada banyak hal yang perlu terjadi agar seseorang terinfeksi Covid-19 dari menyentuh permukaan yang terkontaminasi.

Pertama, seseorang harus datang dalam kontak dengan cukup virus untuk sebenarnya menyebabkan infeksi. Misalnya, untuk terinfeksi virus influenza, jutaan salinan virus perlu mencapai wajah seseorang dari permukaan, tetapi hanya beberapa ribu salinan yang dibutuhkan ketika virus langsung masuk ke paru-paru, New York Times melaporkan.

Jika seseorang kebetulan menyentuh permukaan dengan jejak virus yang besar, mereka harus mengambil cukup virus dan kemudian menyentuh mata, hidung, atau mulut—mengapa para ahli kesehatan publik mengatakan sangat penting untuk tidak sering menyentuh permukaan dan menjauhi objek yang terkontaminasi atau objek yang sering disentuh.

Virus COVID-19 menyebar di seluruh Dunia. Bahkan ketika akhirnya mereda, orang akan telah mengembangkan sensitivitas tentang menyentuh hal-hal di umum. Karena sebagian besar intercom diradi untuk memerlukan penekanan tombol untuk melakukan panggilan, saya memutuskan bahwa solusi intercom sentuh bebas diperlukan yang tidak memerlukan orang untuk menyentuh apa pun.

Gambar di atas menunjukkan sistem intercom berbasis pengenalan wajah yang diimplementasikan.

Untuk mengatasi masalah sistem berbasis sentuhan, perlu mengurangi tempat kontak dan sentuhan. Dalam sistem intercom tradisional, mereka terdiri dari sistem berbasis switch, saat ditekan akan memicu bel. Untuk merevitalisasi sistem berbasis sentuhan yang meningkatkan risiko kontaminasi permukaan, saya memutuskan untuk membangun sistem pengenalan wajah sentuh bebas yang diterapkan pada Arduino 33 BLE Sense, berdasarkan tinyML dan Tensorflow Lite.

Dalam sistem intercom pintar ini, saya telah menggunakan algoritma deteksi orang yang diterapkan pada Arduino 33 BLE Sense yang mengidentifikasi orang dan sesuai, memicu bel dengan tampilan LED Matrix yang membaca "Person".

Menuju Implementasi Sistem Intercom Pintar:

Berikut adalah Perangkat Lunak yang digunakan dalam mendesain model ini:

Dalam model deteksi orang ini, saya telah menggunakan model Deteksi Orang Pra-terlatih TensorFlow yang tepat untuk proyek ini. Model pra-terlatih ini terdiri dari tiga kelas di mana kelas ketiga adalah dengan himpunan data yang tidak ditentukan:

"unused",

"person",

"notperson"

Dalam model kita kita memiliki Arducam Mini 2mp plus untuk melakukan intake citra dan data citra ini dengan tingkat fps yang layak dikirim ke Arduino Nano 33 BLE Sense untuk pemrosesan dan klasifikasi. Karena Mikrokontroler mampu menyediakan 256kb RAM, kita mengubah ukuran citra setiap citra menjadi standar 96*96 untuk pemrosesan dan klasifikasi. Jaringan Tensorflow Lite Arduino terdiri dari kerangka pembelajaran mendalam sebagai:

Kerangka pembelajaran mendalam ini digunakan untuk melatih model Deteksi Orang.

Fungsi berikut adalah fungsi paling penting yang didefinisikan saat memproses output pada Mikrokontroler melalui Arduino_detetction_responder.cpp

// Process the inference results.
uint8_t person_score = output->data.uint8[kPersonIndex];
uint8_t no_person_score = output->data.uint8[kNotAPersonIndex];
RespondToDetection(error_reporter, person_score, no_person_score);

Dalam fungsi berikut yang didefinisikan, person_score dan no_person_score telah didefinisikan pada tingkat klasifikasi data.

Logika bekerja dengan cara berikut:

├── Sistem Intercom Otonom
├── Arducam Mini 2mp plus
│ ├── Data visual dikirim ke Arduino
├── Arduino 33 BLE Sense
│ ├── jika person-score > no_person_score
│ │ ├── Aktifkan buzzer
│ │ ├── Tampilkan "Person" pada LED Matrix
│ │ └── ...Ulangi loop

Mematuhi logika di atas, Arducam Mini 2mp plus terus-menerus mengambil data visual dan mengirim data ini ke Arduino 33 BLE Sense untuk memproses dan mengklasifikasikan data yang dikumpulkan. Setelah data mentah dikonversi menjadi data yang diproses, itu kemudian diklasifikasikan sesuai dengan data yang dilatih. Jika orang terdeteksi, Arduino mengirim sinyal ke buzzer untuk mengaktifkan dan MAX7219 untuk menampilkan "person". Dengan cara ini, logika sistem bekerja.

Proyek 3: Otomasi Pengukuran Suhu Orang Berbasis IoT Otonom:

Sensor suhu untuk Arduino adalah elemen dasar ketika kita ingin mengukur suhu suatu proses atau tubuh manusia.

Sensor suhu dengan Arduino harus dalam kontak atau dekat untuk menerima dan mengukur tingkat panas. Itulah cara termometer bekerja.

Perangkat ini sangat banyak digunakan untuk mengukur suhu tubuh orang sakit, karena suhu adalah salah satu faktor pertama yang berubah dalam tubuh manusia, ketika ada kejanggalan atau penyakit.

Salah satu penyakit yang mengubah suhu tubuh manusia adalah COVID 19. Oleh karena itu, kami menyajikan gejala utama:

Demam adalah gejala yang ciri utamanya adalah peningkatan suhu tubuh. Dalam penyakit ini, kita perlu terus memantau gejala ini.

Pasar eceran telah dipukul dengan dampak besar akibat pandemi. Setelah pusat perbelanjaan dan supermarket telah kembali buka, perlu untuk memastikan keselamatan semua pelanggan yang telah memasuki lokasi. Untuk tujuan ini, teknik pemeriksaan suhu manual telah disiapkan. Ini meningkatkan tenaga kerja dan juga risiko kontak antara orang yang memeriksa suhu dan orang yang suhunya diperiksa. Ini ditunjukkan sebagai berikut:

Gambar ini menunjukkan kontak dekat atau jarak sosial yang lebih sedikit yang dipertahankan antara dua orang.

Ada kelemahan kedua yang dihadapi dalam sistem pemeriksaan suhu manual:

Untuk suhu yang telah diperiksa, data perekaman ini tidak disimpan atau tidak disinkronkan dengan perangkat eksternal untuk memantau suhu yang diukur.

Mengpertimbangkan semua kekurangan ini, saya telah datang dengan solusi IoT berbasis Arduino yang diterapkan pada Arduino MKR WiFi 1010. Suhu diukur menggunakan modul suhu Adafruit AMG8833. Setiap kali orang terdeteksi di gerbang, sensor ultrasonik, mengirim informasi ke Arduino MKR WiFi 1010 untuk memberikan perintah ke modul AMG 8833 untuk mengambil data suhu. Modul menangkap data dengan akurat dan data diproyeksikan pada dasbor IoT secara real-time. Jika pembacaan suhu abnormal seseorang terdeteksi, alarm dihidupkan sehingga petugas keamanan dan staf pusat perbelanjaan dapat segera menyelidiki masalah. Data yang dikumpulkan masing-masing diberi stempel waktu dan dapat dilihat pada dasbor ThingSpeak grafik perekaman suhu vs Waktu untuk setiap data.

Demikian pula, dapat juga ditelusuri pada hari-hari dan rentang waktu mana, supermarket atau pusat perbelanjaan menunjukkan pembacaan suhu abnormal dan langkah keamanan lebih lanjut dapat diterapkan sesuai.

Gambar di bawah ini menunjukkan di mana setup dapat disematkan (Area tempat setup dapat dipasang)

Di gerbang pemeriksaan masuk, Sensor Ultrasonik HC-SR04 dapat dipasang yang mendeteksi masuknya orang dan mengirim perintah ke Arduino MKR WiFi 1010 jika orang terdeteksi dalam rentang 20cm. Mikrokontroler Arduino meneruskan perintah yang sama ke modul suhu AMG 8833 untuk membaca suhu orang. Proses lengkap ini memakan waktu dari Sensor Ultrasonik mendeteksi orang, hingga mengirim perintah ke modul suhu untuk mendeteksi suhu. Oleh karena itu, untuk mensinkronkan dengan penundaan, modul suhu dipasang sedikit jauh dari sensor ultrasonik.

Setiap kali orang masuk, gerbang dibuka (Di sini, dalam prototyp, kami menggunakan servo untuk berfungsi sebagai gerbang, tetapi dalam implementasi proyek lebih lanjut, servo akan diganti dengan motor gerbang berat dan dikontrol melalui driver motor, di mana Arduino akan mengirim perintah). Pembacaan suhu orang diambil dan pembacaan ini dikirim ke dasbor IoT ThingSpeak secara real-time melalui Arduino WiFi 1010. Untuk ini, koneksi Wi-Fi aktif diperlukan di lokasi pusat perbelanjaan yang biasanya tersedia dalam sebagian besar kasus. Menurut Penelitian, suhu tubuh orang dengan demam sekitar 38.1C yang sama dengan 104F. Oleh karena itu, jika Modul Suhu mendeteksi suhu di atas ambang ini, servo berputar 180Derajat dan Buzzer menyala untuk memperingatkan orang tentang Orang. Demikian pula, petugas keamanan dan staf pusat perbelanjaan lainnya dapat sampai ke area tepat waktu untuk mengontrol situasi ketika kasus seperti ini terjadi.

Logika bekerja dengan cara berikut:

├── Deteksi Suhu Orang
├── Sensor Ultrasonik HC-Sr04
│ ├── Deteksi Orang
│ │ ├── If( Jarak Orang = 20) ,kirim perintah
├── Arduino
MKR WiFi 1010
│ ├── jika Sensor Ultrasonik Mengirim perintah;
│ │ ├── Buka gerbang - Servo(0)
│ │ ├── Aktifkan AMG8833 untuk mengambil pembacaan
│ │ ├── Kirim Pembacaan ke Dasbor ThingSpeak
│ │ | ├── Jika Suhu > 38.1C
│ │ │ | ├── Tutup gerbang - servo(180)
│ │ │ │ ├── Aktifkan Buzzer
│ │ └── ...Ulangi loop

Dengan cara ini, Logika lengkap Fungsi Pemantau Suhu bekerja.

Diagram Rangkaian untuk Model Suhu adalah sebagai berikut:

Ini adalah Firmware dan setup lengkap yang digunakan dalam proyek

Simulasi ini menunjukkan tipe data yang ditangkap oleh Kamera Termal AMG 8833 dan data ini dikirim ke Arduino MKR WiFi 1010 untuk mentransfer perintah

Simulasi ini menunjukkan jarak yang ditangkap oleh Sensor Ultrasonik dan perintah ini dikirim ke Arduino MKR WiFi untuk mengaktifkan sensor termal AMG 8833

Alih-alih sistem pembukaan pintu berbasis servo, saya akan mengimplementasikan sistem perintah menggunakan driver motor untuk mengotomatisasi sistem pembukaan geser pintu sebagai berikut:

Mengatur Dasbor IoT:

Menggunakan Penyiapan Dasbor ThingSpeak:

ThingSpeak™ adalah layanan analitik IoT yang memungkinkan Anda mengagregasi, memvisualisasikan, dan menganalisis aliran data langsung di cloud. ThingSpeak menyediakan visualisasi instan dari data yang diposting oleh perangkat Anda ke ThingSpeak. Dengan kemampuan untuk mengeksekusi kode MATLAB® di ThingSpeak, Anda dapat melakukan analisis online dan memproses data saat tiba. ThingSpeak sering digunakan untuk prototyping dan sistem konsep bukti IoT yang memerlukan analitik.

Karena ThingSpeak mudah diatur dan digunakan, saya memilih untuk menggunakan dasbor itu. Antarmuka ini memungkinkan pengguna untuk berbagi dasbor dengan departemen keamanan atau staf di pusat perbelanjaan sehingga mereka dapat terus memantau orang yang mengunjungi pusat perbelanjaan, dan demikian pula mengenakan pembatasan pada waktu-waktu tertentu ketika mereka merasa risiko suhu lebih tinggi.

Gambar di atas mewakili serbagunanya dasbor thingspeak dan visualisasi kreatif yang diproyeksikan.

Logika yang digunakan dalam proses pengumpulan data ThingSpeak IoT

Gambar ini menunjukkan pembuatan visualisasi di berbagai channel. Di sini, saya telah membuat Grafik Suhu vs Waktu di bagian visualisasi. Data yang dikumpulkan oleh sensor AMG8833 akan masing-masing dialokasikan stempel waktu dan akan dipetak pada grafik untuk melihat waktu untuk setiap data yang ditangkap.

Data yang dikumpulkan dapat dilihat secara real-time di Dasbor Publik di sini ; ThingSpeak Temperature Dashboard

Demikian pula, plot ini dapat diintegrasikan secara kumulatif ke satu Dasbor yang dibuat terbuka untuk pengunjung pusat perbelanjaan untuk melihat data suhu sebelum memasuki pusat perbelanjaan. Jika pengunjung menemukan pembacaan suhu abnormal pada hari tertentu, mereka dapat memilih untuk tidak pergi ke supermarket atau pusat perbelanjaan pada hari itu untuk aman.

Grafik Integrasi data visualisasi:

<iframe width="450" height="260" style="border: 1px solid #cccccc;" src="https://thingspeak.com/channels/1121969/charts/1?bgcolor=%23ffffff&color=%23d62020&dynamic=true&results=600&timescale=10&type=line"></iframe>

Grafik ini dapat disematkan di satu dasbor dengan pembacaan grafik dari pusat perbelanjaan dan supermarket lain di area tertentu dan oleh karena itu, pengunjung unik dapat memeriksa pusat perbelanjaan mana yang berkinerja lebih baik dari pusat perbelanjaan lain dalam hal keselamatan dan dapat memilih pergi ke pusat perbelanjaan di mana pedoman keselamatan diikuti dan orang yang masuk tidak didiagnosis demam. Ini dapat membantu Pemerintah untuk mendirikan keselamatan dan kepercayaan di kalangan orang bersama dengan pembukaan kembali pusat perbelanjaan dan sektor eceran

Kode dari proyek berikut dapat dilihat di Github atau di Arduino Web editor di sini ; Temperature-Model-code

Logika dalam kode adalah sebagai berikut:

#include <Wire.h>
#include <Adafruit_AMG88xx.h>
#include <Servo.h>
#include ESP32_Servo.h
#include <WiFi.h>
#include <WiFiMulti.h>
Servo servo1;
int trigPin = 9;
int echoPin = 8;
long distance;
long duration;

WiFiMulti WiFiMulti;

const char* ssid = "JioFiber-tcz5n"; // SSID Anda (Nama Wi-Fi Anda) - Ini adalah nama dummy, masukkan SSID Wi-Fi Anda di sini
const char* password = "**********"; //Saya tidak menyebutkan kata sandi di sini, saat menjalankan skrip, Anda dapat menyebutkan kata sandi Anda

const char* host = "api.thingspeak.com/1121969";
String api_key = "8LNG46XKJEJC89FE"; // API Key Anda yang diberikan oleh thingspeak

Adafruit_AMG88xx amg;

Di sini, saya telah menentukan beberapa Library dan Firmware beserta pengaturan yang diperlukan untuk host Wi-Fi dan API-Key untuk dasbor suhu di thingspeak

Ini adalah gambar dari Kode dalam proses:

Bagian selanjutnya dari kode adalah Menyiapkan komponen yang diperlukan sebelum loop sebenarnya dimulai:

Ini adalah prasyarat sebelum looping kode sebenarnya. Saya telah menentukan pin Servo dan Sensor Ultrasonik sambil juga memulai pengujian AMG 8833 untuk melihat apakah itu dapat membaca data atau apakah itu terhubung

void setup()
{
Serial.begin(9600);
servo1.attach(7);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}

{
Connect_to_Wifi();
Serial.println(F("AMG88xx test"));

bool status;

status = amg.begin();
if (!status) {
Serial.println("Could not find a valid AMG88xx sensor, check wiring!");
while (1);
}

Serial.println("-- Thermistor Test --");

Serial.println();

delay(100);
}

Bagian selanjutnya adalah Void Loop di mana fungsi lengkap dilakukan. Di sini, Awalnya saya telah menetapkan gerbang untuk terbuka untuk memungkinkan masuknya setiap orang. AMG 8833 melakukan pengumpulan data dan membaca suhu orang yang masuk. Jika suhu lebih tinggi dari ambang yang diharapkan, gerbang ditutup dan alarm(buzzer) dihidupkan untuk memperingatkan orang dan tidak memungkinkan masuknya orang

void loop() 
ultra();
servo1.write(0);
if(distance <= 20){
Serial.print("Thermistor Temperature = ");
Serial.print(amg.readThermistor());
Serial.println(" *C");

Serial.println();
// call function to send data to Thingspeak
Send_Data();
//delay
delay(50);

if(amg.readThermistor() > 38.1) // jika orang dengan demam terdeteksi, ia tidak diizinkan untuk masuk
servo1.write(180);
digitalWrite(6, HIGH); //Turns on the buzzer to alarm people
}

Bagian terakhir adalah mengirim data ke Dasbor ThingSpeak:

Di sini, karena saya hanya memiliki satu field di channel, semua data akan dikirim ke field itu. Data yang ditangkap, amg.readThermistor() dikirim ke dasbor.

void Send_Data()
{
Serial.println("Prepare to send data");

// Use WiFiClient class to create TCP connections
WiFiClient client;

const int httpPort = 80;

if (!client.connect(host, httpPort)) {
Serial.println("connection failed");
return;
}
else
{
String data_to_send = api_key;
data_to_send += "&field1=";
data_to_send += string(amg.readThermistor());
data_to_send += "\r\n";

client.print("POST /update HTTP/1.1\n");
client.print("Host: api.thingspeak.com\n");
client.print("Connection: close\n");
client.print("X-THINGSPEAKAPIKEY: " + api_key + "\n");
client.print("Content-Type: application/x-www-form-urlencoded\n");
client.print("Content-Length: ");
client.print(data_to_send.length());
client.print("\n\n");
client.print(data_to_send);

delay(200);
}

client.stop();

}

Ini mengakhiri bagian kode dari proyek dan kita beralih ke penjelasan penggunaan dan bagian GO TO MARKET dari proyek

Gambar di atas menunjukkan implementasi metodologi dan model di supermarket dan pusat perbelanjaan.

GO TO MARKET & PRACTICALITY:

Proyek 4: Sistem Antrian Berbasis TinyML & IoT untuk Pemantauan dan Pembentukan Antrian yang diterapkan pada Arduino 33 BLE Sense:

Sama seperti pusat perbelanjaan dan sektor eceran telah buka, manajemen antrian di pusat perbelanjaan dan supermarket telah menjadi masalah besar. Akibat pandemi, membatasi hanya sejumlah orang untuk masuk ke pusat perbelanjaan harus diikuti oleh pusat perbelanjaan untuk memastikan kepatuhan keselamatan. Namun ini dilakukan secara manual yang meningkatkan pekerjaan tenaga kerja. Juga data untuk jumlah orang di dalam pusat perbelanjaan pada titik waktu tertentu tidak tersedia untuk pengunjung pusat perbelanjaan. Jika data ini telah dibuat tersedia untuk pengunjung pusat perbelanjaan, itu akan meningkatkan persentase orang yang mengunjungi pusat perbelanjaan.

Mencoba menjalankan toko atau layanan selama krisis Corona yang berlangsung tentu merupakan tantangan. Melayani pelanggan sambil menjaga mereka dan karyawan tetap aman cukup sulit, tetapi antrian digital dapat membantu banyak dalam hal ini. Teknologi di balik antrian virtual tidak sepenuhnya baru; panggilan untuk jarak sosial hanya menyoroti beberapa manfaat yang ditawarkannya.

Sebagian besar negara telah memperkenalkan upaya hukum untuk mengatasi penyebaran COVID-19. Untuk memastikan kepuasan pelanggan sambil mematuhi peraturan baru, satu hal yang pasti: antrian panjang dan lobi ramai harus hilang. Teknologi antrian digital (juga disebut antrian virtual atau remote) memungkinkan bisnis untuk melayani pelanggan mereka tepat waktu sementara mereka tetap di luar bahaya.

Secara umum, Anda mungkin akan menemukan satu atau lebih dari jenis solusi manajemen antrian berikut di lingkungan eceran tertentu:

Antrian panjang, baik terstruktur atau tidak terstruktur, sering kali menghalangi pelanggan datang langsung untuk masuk ke toko. Selain itu, mereka membatasi produktivitas dan menyebabkan tingkat stres berlebih bagi pelanggan dan staf.

Apakah manajemen antrian yang efektif secara langsung mempengaruhi pengalaman pelanggan?

Ada aspek menarik tentang pengalaman menunggu dalam barisan: Waktu tunggu yang kita indikasikan seringkali tidak sesuai dengan waktu aktual yang kita habiskan dalam barisan. Kami mungkin mengaitkan periode waktu salah untuk menjadi "lebih lama" dari biasanya atau menilai periode lain "lebih singkat" meskipun sebenarnya melebihi waktu tunggu rata-rata. Sebagian besar ini terkait dengan bagaimana kita dapat menghabsi waktu menunggu.

"Waktu yang terisi (berjalan ke klaim bagase) terasa lebih pendek daripada waktu yang tidak terisi (berdiri di karusel). Penelitian tentang antrian telah menunjukkan bahwa, rata-rata, orang menglebih-lebihkan berapa lama mereka telah menunggu dalam barisan sekitar 36 persen."

Alasan utama pelanggan takut untuk mengunjungi supermarket apa pun adalah masalah data yang tidak mencukupi. Pengunjung tidak tahu kepadatan orang di dalam pusat perbelanjaan. Semakin banyak jumlah orang di dalam pusat perbelanjaan, semakin tinggi risiko untuk mengunjungi pusat perbelanjaan. Menghitung secara manual jumlah orang yang masuk dan keluar pusat perbelanjaan dan memperbarui data ini secara real-time tidak mungkin. Juga, pengunjung tidak tahu hari mana dan waktu mana yang paling cocok untuk mengunjungi pusat perbelanjaan. Pengunjung juga tidak tahu waktu tunggu setiap pusat perbelanjaan sehingga ia dapat pergi ke supermarket lain di sekitar jika waktu tunggu di sana lebih pendek. Akibatnya, semuanya ini mengarah pada konversi orang yang lebih sedikit dan demikian pula jumlah orang yang mengunjungi pusat perbelanjaan yang lebih sedikit. Jika pengunjung memiliki akses ke data populasi, mereka memiliki rasa percaya dan mengarah pada peningkatan penjualan pusat perbelanjaan. Oleh karena itu, saya telah datang dengan solusi TinyML dan IoT berbasis Arduino untuk membuat data ini tersedia bagi pengunjung dan juga meningkatkan konversi pengunjung di pusat perbelanjaan dengan mengikuti pedoman keselamatan yang diperlukan.Jika pengunjung memiliki akses ke data populasi, mereka memiliki rasa percaya dan mengarah pada peningkatan penjualan pusat perbelanjaan. Oleh karena itu, saya telah datang dengan solusi TinyML dan IoT berbasis Arduino untuk membuat data ini tersedia bagi pengunjung dan juga meningkatkan konversi pengunjung di pusat perbelanjaan dengan mengikuti pedoman kece

Solusi ini didasarkan pada visusi komputer dan algoritma deteksi orang berdasarkan framework tensorflow.

Ini berfungsi dengan cara berikut:

Solusi ini diterapkan di gerbang pusat perbelanjaan atau supermarket. Arducam mini 2mp terus menangkap data citra dan mengirimnya ke Arduino 33 BLE Sense untuk memproses dan mengklasifikasikan data ini. Jika orang terdeteksi, Arduino menambah jumlah data tersimpan dari jumlah orang di dalam pusat perbelanjaan sebesar 1. Karena orang terdeteksi, motor servo berputar, membuka pintu masuk untuk membiarkan orang masuk. Untuk setiap orang yang diizinkan masuk, data dikirim ke dasbor IoT ThingSpeak yang terbuka bagi pengunjung untuk dilihat.

Ketika jumlah orang meningkat ambang 50(Ambang ini dapat diubah tergantung pada ukuran supermarket), gerbang ditutup dan waktu tunggu 15 menit ditetapkan hingga pelanggan di dalam keluar toko. Waktu tunggu kemudian ditampilkan pada layar matriks LED sehingga pelanggan dalam antrian dapat mengetahui durasi yang harus mereka tunggu.

Orang juga dapat melacak jumlah orang di dalam toko. Jumlah orang yang diizinkan masuk ke toko sekaligus adalah 50 orang.

Unit antrian fisik dari produk ini membantu dalam mendirikan antrian sementara Dasbor IoT membantu dalam memproyeksikan jumlah total pelanggan yang masuk ke toko dan jumlah total pelanggan yang keluar dari toko. Saat ini ini adalah data dasbor yang akan ditampilkan tetapi saya sedang bekerja pada logika untuk menampilkan waktu tunggu yang diperlukan untuk pelanggan untuk masuk ke pusat perbelanjaan. Logikanya cukup sederhana, itu tergantung pada jumlah orang di dalam pusat perbelanjaan. Jumlah total orang yang masuk ke pusat perbelanjaan yang ditampilkan pada dasbor dikurangi jumlah total orang yang keluar dari pusat perbelanjaan yang ditampilkan pada dasbor. Ini akan memberi kita hasil jumlah total orang di dalam toko. Operasi berikutnya adalah jumlah total orang di luar toko dikurangi ambang (batas yang dapat ditampung toko). Jika hasilnya adalah bilangan negatif, waktu tunggu adalah perkalian bilangan negatif dengan negatif dari waktu rata-rata seseorang menghabiskan di dalam toko. Jika hasil dari operasi adalah bilangan positif, waktu tunggu adalah nol.

Menuju Implementasi Sistem Antrian Fisik:

Berikut adalah Perangkat Lunak yang digunakan dalam mendesain model ini:

Dalam model deteksi orang ini, saya telah menggunakan model Deteksi Orang Pra-terlatih TensorFlow yang tepat untuk proyek ini. Model pra-terlatih ini terdiri dari tiga kelas di mana kelas ketiga adalah dengan himpunan data yang tidak ditentukan:

"unused",

"person",

"notperson"

Dalam model kita kita memiliki Arducam Mini 2mp plus untuk melakukan intake citra dan data citra ini dengan tingkat fps yang layak dikirim ke Arduino Nano 33 BLE Sense untuk pemrosesan dan klasifikasi. Karena Mikrokontroler mampu menyediakan 256kb RAM, kita mengubah ukuran citra setiap citra menjadi standar 96*96 untuk pemrosesan dan klasifikasi. Jaringan Tensorflow Lite Arduino terdiri dari kerangka pembelajaran mendalam sebagai:

Kerangka pembelajaran mendalam ini digunakan untuk melatih model Deteksi Orang.

Fungsi berikut adalah fungsi paling penting yang didefinisikan saat memproses output pada Mikrokontroler melalui Arduino_detetction_responder.cpp

// Process the inference results.
uint8_t person_score = output->data.uint8[kPersonIndex];
uint8_t no_person_score = output->data.uint8[kNotAPersonIndex];
RespondToDetection(error_reporter, person_score, no_person_score);

Dalam fungsi berikut yang didefinisikan, person_score dan no_person_score telah didefinisikan pada tingkat klasifikasi data.

menggunakan fungsi yang didefinisikan ini, saya akan menggunakannya untuk memberikan output tertentu berdasarkan kepercayaan dari person-score dan no_person_score.

Logika respons deteksi dari kode bekerja dengan cara berikut:

├── Deteksi Orang dan respons - Masuk
├── Arducam mini 2MP Plus
│ ├── Data Citra dan Video ke Arduino
├── Arduino BLE 33 Sense
│ ├── pemrosesan dan klasifikasi data input
│ │ ├── Jika orang terdeteksi, buka gerbang - servo(180)
│ │ ├── Jika tidak ada orang terdeteksi, tutup gerbang - servo(0)
│ │ ├── Kirim jumlah orang yang masuk ke Dasbor ThingSpeak melalui ESP8266 -01
│ │ | ├── Jika jumlah orang telah melebihi 50
│ │ │ | ├── Tutup gerbang & tunggu 15 menit untuk membiarkan orang di dalam keluar
│ │ │ │ ├── Tampilkan waktu tunggu pada LED Matrix
│ │ └── ...Ulangi loop

├── Deteksi Orang dan respons - Keluar
├── Arducam mini 2MP Plus
│ ├── Data Citra dan Video ke Arduino
├── Arduino BLE 33 Sense
│ ├── pemrosesan dan klasifikasi data input
│ │ ├── Jika orang terdeteksi, buka gerbang - servo(180)
│ │ ├── Jika tidak ada orang terdeteksi, tutup gerbang - servo(0)
│ │ ├── Kirim jumlah orang yang masuk ke Dasbor ThingSpeak melalui ESP8266 -01
│ │ └── ...Ulangi loop

Mematuhi logika yang digunakan dalam model, Arducam mini 2mp plus akan terus menangkap Data Citra dan mengirim data ini ke Arduino 33 BLE Sense untuk memproses dan mengklasifikasikan data. Ukuran model keseluruhan adalah 125KB. Jika orang terdeteksi, Arduino mengirim perintah ke servo untuk berputar ke 180derajat. Jika tidak ada orang terdeteksi, servo diputar ke 0derajat dan gerbang ditutup. Setiap kali orang terdeteksi, jumlah bertambah 1. Jika jumlah melebihi ambang 50, tidak ada orang lagi yang diizinkan masuk dan waktu tunggu 15 menit ditetapkan.

Waktu tunggu ditampilkan dan diperbarui terus-menerus pada layar LED Matrix.

Jumlah ini juga ditampilkan pada Dasbor IoT ThingSpeak melalui ESP8266 01

Melalui Dasbor, seseorang dapat dengan mudah melihat jumlah orang yang ada pada hari tertentu pada titik waktu tertentu.

Di gerbang keluar, logika yang sama diterapkan. Jika orang terdeteksi, gerbang dibuka sementara jika tidak ada orang terdeteksi, gerbang ditutup. Setiap kali orang terdeteksi, jumlah bertambah 1. Jumlah ini ditampilkan pada Dasbor IoT ThingSpeak.

Dengan cara ini seseorang dapat memantau jumlah orang yang masuk dan jumlah orang yang keluar.

Karena dua model untuk masuk dan keluar diterapkan pada dua mikrokontroler yang berbeda, menghitung waktu tunggu rata-rata berdasarkan data dari mikrokontroler yang berbeda cukup sulit, tetapi ini menggunakan fungsi logika sederhana.

x = Jumlah orang yang telah masuk

Y = Jumlah orang yang telah keluar

X - Y = Jumlah orang yang ada di dalam pusat perbelanjaan

Z = Ambang jumlah orang yang diizinkan untuk ada di dalam pusat perbelanjaan

let Z-(X-Y) = count {ini adalah jumlah orang (dalam negatif) yang telah melewati batas ambang atau di bawah batas ambang

If "count" is negatif, Waktu tunggu sama dengan count*(negatif dari waktu rata-rata seseorang menghabiskan di dalam pusat perbelanjaan)

if "count" is positif, waktu tunggu adalah nol

In dengan cara ini, algoritma perhitungan waktu antrian rata-rata diterapkan.

Kerja Firmware:

Ini adalah setup lengkap firmware yang dirancang pada Fritzing.

Model ini terdiri dari firmware berikut yang digunakan:

Proyek 5: Deteksi Masker Algoritme

Model Deteksi Masker berdasarkan TinyML:

Dr. Kierstin Kennedy, kepala obat rumah sakit di University of Alabama di Birmingham, berkata, “Masker dapat melindungi terhadap penyakit menular apa pun yang dapat disebarkan oleh titik air. Misalnya, flu, batuk rejan (pertussis), atau pneumonia.”

Menambahkan bahwa penggunaan masker kain memiliki manfaat di luar memperlambat penyebaran COVID-19, dan kontrol sumber dapat mengurangi transmisi banyak infeksi pernapasan yang mudah disebarkan lainnya — jenis yang biasanya membuat orang infeksi bahkan sebelum mereka menunjukkan gejala, seperti influenza.

Sampel ancaman pandemi ini telah diatasi, orang harus mengamati perlindungan yang diizinkan masker untuk memberikan kepada mereka di sekitar mereka.

Setelah tudo, ini tidak harus tentang Anda — ini tentang semua orang yang Anda temui.

Tidak sama sekali jarang untuk menjadi penyebar asymptomatic dari koronavirus baru — yang berarti bahwa bahkan jika Anda tidak memiliki gejala sama sekali, Anda potensial dapat mentransmisikan virus kepada seseorang yang kemudian dapat menjadi sangat sakit atau bahkan mati.

Mematuhi ini, saya memutuskan untuk meningkatkan keharusan penggunaan masker wajah bersama dengan sistem sentuh bebas untuk meningkatkan keselamatan di pusat perbelanjaan dan supermarket. Bersama dengan algoritma deteksi orang, saya memutuskan untuk membuat model deteksi masker wajah kustom yang mendeteksi masker wajah dan menampilkan data ini pada dasbor IoT ThingSpeak untuk meningkatkan kesadaran di kalangan staf pusat perbelanjaan serta pengunjung yang masuk sehingga mereka menyadari tren waktu ketika sebagian besar orang tidak memakai masker. Melalui ini ada peningkatan rasa peringatan dan kesadaran di kalangan orang untuk memakai masker. Sesuai dengan itu, staf toko dapat memantau tren ini dan meningkatkan pembatasan berdasarkan statistik yang didorong data.

Memutuskan Logika dan Kumpulan Data Model:

Ini adalah Logika keseluruhan yang digunakan dalam sebagian besar algoritma deteksi masker wajah. Karena, kita menerapkan model ini pada Arduino 33 BLE Sense, proses penerapan model ini akan bervariasi.

Ada dua langkah yang terlibat dalam konstruksi model untuk Deteksi Masker Wajah.

Kumpulan data yang digunakan dalam pelatihan model ini:

Kumpulan data yang digunakan dalam proses ini terdiri dari 3500 citra tetapi untuk mengurangi ukuran model, dan memberi masukan citra model yang akurat, saya telah menggunakan 813 citra untuk meningkatkan akurasi model dengan mengurangi ukuran massal. Model ini berukuran rata-rata 676K dan menggunakan hampir 440.3K Ram. Karena model ini adalah versi yang dioptimalkan dari model asli, akurasi model adalah 87.47% dibandingkan 98.15% di yang tidak dioptimalkan.

Berikut adalah Perangkat Lunak yang digunakan dalam mendesain model ini:

Menuju mendesain model di EdgeImpulse Studio:

Model pembelajaran mendalam yang kuat (berdasarkan jaringan saraf buatan) kini mencapai mikrokontroler. Sepanjang tahun terakhir kemajuan besar telah dilakukan dalam membuat model pembelajaran mendalam lebih kecil, lebih cepat dan dapat dijalankan pada perangkat keras tertanam melalui proyek seperti TensorFlow Lite for Microcontrollers, uTensor dan Arm’s CMSIS-NN; tetapi membangun kumpulan data berkualitas, mengekstrak fitur yang tepat, melatih dan menerapkan model ini masih bisa rumit.

Menggunakan Edge Impulse Anda sekarang dapat dengan cepat mengumpulkan data sensor dunia nyata, melatih model ML pada data ini di cloud, dan kemudian menerapkan model kembali ke perangkat Arduino Anda. Dari sana Anda dapat mengintegrasikan model ke sketsa Arduino Anda dengan satu panggilan fungsi.

Langkah 1 - Akuisisi Data di Edge Impulse Studio:

Menggunakan kumpulan data 3500 citra, saya menyaring citra ini ke citra yang berkinerja terbaik dan akhirnya memberi masukan 813 citra secara total dalam Data Pelatihan dan 487 citra dalam Data Pengujian. Saya melabeli kelas ini sebagai mask dan no_mask.

Kemudian, saya melanjutkan membuat desain impulse yang paling cocok untuk tipe Model. Untuk akurasi optimal disarankan untuk menggunakan ukuran citra standar yaitu 96*96 dan juga bekerja terbaik pada Arduino 33 BLE Sense. Karena tipe input adalah citra, saya melanjutkan dan memilih "images" dalam blok pemrosesan. Untuk blok transfer learning, tipe yang direkomendasikan untuk pembelajaran citra adalah Transfer Learning (Images) yang merupakan Fine tune a pre-trained image model on your data. with Good performance even with relatively small image datasets.

Langkah selanjutnya adalah menyimpan parameter berdasarkan kedalaman warna. Di sini, saya telah memilih RGB karena dalam kumpulan data yang saya gunakan untuk deteksi masker, warna juga merupakan fitur penting klasifikasi bukan grayscale. Di halaman ini, kita juga dapat melihat fitur mentah dengan fitur yang diproses dari citra

Setelah Generasi Fitur saya mendapatkan grafik klasifikasi atau penjelajah fitur tempat saya dapat melihat kelas berdasarkan klasifikasinya. Titik biru mewakili citra masker dan titik oranye mewakili citra no_mask.

Dalam generasi fitur ini, saya mendapatkan klasifikasi yang cukup baik dengan plot klasifikasi yang jelas.

Akhirnya, Beralih ke Plot Transfer Learning:

Di sini, saya menetapkan jumlah siklus pelatihan/epoch sebagai 30 untuk mendapatkan akurasi tertinggi dengan val_loss minimum. Hal itu terjadi bahwa jika kita melatih model berdasarkan banyak siklus pelatihan, grafik akurasi mulai menurun setelah sejumlah epoch dan val_loss meningkat. Oleh karena itu saya memutuskan untuk membatasi epoch menjadi 30 yang terbukti sempurna. Tingkat pembelajaran diatur ke 0.0005 yang merupakan default dan terbukti paling sesuai. Di sini, saya telah menggunakan model MobileNetV2 0.35 (lapisan akhir: 16 neuron, 0.1 dropout) karena model ini relatif ringan dan akurat.

Akhirnya setelah menyelesaikan 30 epoch dan 10 epoch kinerja model terbaik, saya mendapatkan akurasi menuju 1.00 dan kerugian hampir 0 yaitu 0.0011. Berikut adalah keluaran selama proses pelatihan:

Ini adalah keluaran akhir yang saya terima setelah pelatihan:

Akurasi adalah 92.6% dan kerugian adalah 0.19.

Akhirnya Menggunakan data uji, saya menguji akurasi dan menemukan bahwa 98.15%.

Akhirnya karena saya telah memiliki model siap, saya menerapkannya sebagai Library Arduino dengan firmware untuk Arduino 33 BLE Sense: saya telah memiliki folder zip library siap dan mulai membuat perubahan sesuai kebutuhan kami.

Untuk konfirmasi terakhir, saya mengklasifikasikan data secara langsung untuk memastikan data diklasifikasikan dengan benar. Saya mendapatkan hasil yang sempurna seperti yang diharapkan:

Mengubah kode sesuai output yang diperlukan dalam model:

Di sini adalah cuplikan kode main.ino dari model mask_detection

Saya telah mendefinisikan library Arduino yang diperlukan untuk fungsi model dan berdasarkan framework Tensorflow lite, saya telah merancang model ini.

Ini adalah loop dari beberapa fungsi utama dalam model yang didefinisikan dalam library. Kode main.ino memusatkan fungsi ini dan sesuai mem-loopnya dengan kode sentral.

void loop() {
// Get image from provider.
if (kTfLiteOk != GetImage(error_reporter, kNumCols, kNumRows, kNumChannels,
input->data.uint8)) {
TF_LITE_REPORT_ERROR(error_reporter, "Image capture failed.");
}

// Run the model on this input and make sure it succeeds.
if (kTfLiteOk != interpreter->Invoke()) {
TF_LITE_REPORT_ERROR(error_reporter, "Invoke failed.");
}

TfLiteTensor* output = interpreter->output(0);

// Process the inference results.
uint8_t mask_score = output->data.uint8[kmaskIndex];
uint8_t no_mask_score = output->data.uint8[kno-maskIndex];
RespondToDetection(error_reporter, mask_score, no_mask_score);
}

Data yang diproses dari model ini dapat dilihat di sini : (File ini relatif besar dan bervariasi sesuai ukuran kumpulan data model) Arduino_mask_detect_model_data.h

Untuk memberikan citra, saya akan menggunakan Arducam mini 2mp plus untuk input citra visual. Cuplikan dari file image_provider.h adalah :

#include "image_provider.h"

/*
* The sample requires the following third-party libraries to be installed and
* configured:
*
* Arducam
* -------
* 1. Download https://github.com/ArduCAM/Arduino and copy its `ArduCAM`
* subdirectory into `Arduino/libraries`. Commit #e216049 has been tested
* with this code.
* 2. Edit `Arduino/libraries/ArduCAM/memorysaver.h` and ensure that
* "#define OV2640_MINI_2MP_PLUS" is not commented out. Ensure all other
* defines in the same section are commented out.
*
* JPEGDecoder
* -----------
* 1. Install "JPEGDecoder" 1.8.0 from the Arduino library manager.
* 2. Edit "Arduino/Libraries/JPEGDecoder/src/User_Config.h" and comment out
* "#define LOAD_SD_LIBRARY" and "#define LOAD_SDFAT_LIBRARY".
*/

#if defined(ARDUINO) && !defined(ARDUINO_ARDUINO_NANO33BLE)
#define ARDUINO_EXCLUDE_CODE
#endif // defined(ARDUINO) && !defined(ARDUINO_ARDUINO_NANO33BLE)

#ifndef ARDUINO_EXCLUDE_CODE

// Required by Arducam library
#include <SPI.h>
#include <Wire.h>
#include <memorysaver.h>
// Arducam library
#include <ArduCAM.h>
// JPEGDecoder library
#include <JPEGDecoder.h>

// Checks that the Arducam library has been correctly configured
#if !(defined OV2640_MINI_2MP_PLUS)
#error Please select the hardware platform and camera module in the Arduino/libraries/ArduCAM/memorysaver.h
#endif

Kode Arduino_detection_responder.cpp melakukan inferensi dan memberikan output utama yang diperlukan untuk kode. Di sini, ketika orang dengan masker terdeteksi, kita membuka gerbang dan jika orang tanpa masker terdeteksi, kita menutup gerbang.

// Switch on the green LED when a mask is detected,
// the red when no mask is detected
if (mask_score > no_mask_score) {
digitalWrite(LEDG, LOW);
digitalWrite(LEDR, HIGH);
servo_8.write(0); // this servo moves to 0degrees in order to open the mall door when a person is detected to ensure no touch entry system
count++
} else {
digitalWrite(LEDG, HIGH);
digitalWrite(LEDR, LOW);
servo_8.write(180); // this servo moves to 180degrees when no person is detected
count2++
}

Variabel count dan count2 adalah integer yang bertambah setiap kali masker terdeteksi, atau tidak terdeteksi. Jumlah ini kemudian ditampilkan pada Dasbor IoT ThingSpeak sebagai berikut:

Grafik menampilkan jumlah masker dan tanpa masker seiring waktu. Dasbor thingspeak ini disiapkan dalam kode Arduino seperti yang terlihat di sini:

#include <WiFi.h>
#include <WiFiMulti.h>
WiFiMulti WiFiMulti;
const char* ssid = "Yourssid"; // Your SSID (Name of your WiFi)
const char* password = "Wifipass"; //Your Wifi password
const char* host = "api.thingspeak.com/channels/1118220";
String api_key = "9BRPKINQJJT2WMWP"; // Your API Key provied by thingspeak

Kode lengkap untuk responder dapat dilihat di sini: Arduino_detection_responder.cpp

Kode Github dapat dilihat di sini: Arduino Mask Detetction

Dasbor ThingSpeak dapat dilihat di sini - IoT Dashboard

Proyek 5 - Deteksi Orang di Gang Supermarket dan Sistem Sanitasi Mandiri:

Sama seperti pusat perbelanjaan dan supermarket dan sektor eceran telah buka, risiko kontaminasi virus telah meningkat. Risiko utama yang dihadapi adalah di supermarket dan toko. Toko dapat terkait dengan pakaian, makanan dan bahkan elektronika, virus dapat menempel dan bertahan di permukaan ini untuk waktu yang lama.

Data awal menunjukkan koronavirus baru dapat bertahan di permukaan selama beberapa hari

Koronavirus baru adalah, well, baru — dan masih banyak yang harus dipelajari tentang seberapa mudah virus dapat menyebar melalui permukaan yang terkontaminasi. Namun bukti awal menunjukkan bahwa daya tahan permukaan koronavirus baru mirip dengan SARS, koronavirus terkait yang pertama kali diidentifikasi pada 2002. Bergantung pada permukaan, virus dapat bertahan di permukaan selama beberapa jam hingga beberapa hari.

Koronavirus baru tampak dapat bertahan paling lama pada plastik dan stainless steel — potensial selama tiga hari pada permukaan ini. Ini juga dapat bertahan pada kardus hingga 24 jam.

Tahukan apa artinya ini untuk hal-hal yang Anda sentuh sepanjang hari, termasuk:

Pandemi coronavirus telah menghidupkan kembali teknik berumur puluhan tahun yang dapat mematikan virus dan bakteri: cahaya ultraviolet.

Rumah sakit telah menggunakannya selama tahun-tahun untuk mengurangi penyebaran superbug resistensi obat dan untuk mendisinfeksi suite bedah. Namun sekarang ada minat untuk menggunakan teknologi ini di ruang seperti sekolah, gedung perkantoran, dan restoran untuk membantu mengurangi transmisi coronavirus setelah ruang umum dibuka kembali.

Efek sanitasi cahaya UV telah dilihat dengan coronavirus lain, termasuk yang menyebabkan sindrom pernapasan akut parah (SARS). Studi telah menunjukkan bahwa dapat digunakan terhadap coronavirus lain. Suatu studi menemukan paling sedikit 15 menit paparan UVC menonaktifkan SARS, sehingga virus tidak dapat mereplikasi. Otoritas Transportasi Metropolitania New York mengumumkan penggunaan cahaya UV pada kereta api bawah tanah, bus, pusat teknologi, dan kantor. Akademi Nasional Ilmuwan mengatakan meskipun tidak ada bukti konkret untuk efektivitas UV pada virus yang menyebabkan COVID-19, ini telah bekerja pada virus serupa lain, jadi kemungkinan akan melawan virus ini juga.

Mematuhi informasi yang diberikan, Pusat Perbelanjaan dan Supermarket telah mulai menerapkan solusi berbasis sanitasi UV secara manual. Ini memakan banyak waktu dan juga, data tidak tersedia. Dalam proses manual, seseorang tidak tahu area mana yang lebih banyak terpapar sentuhan manusia atau area mana yang memiliki risiko kontaminasi tertinggi.

Untuk mengotomatisasi proses ini dan untuk memberikan analisis spasial real-time dari data yang dikumpulkan dan tingkat kontaminasi di suatu area.

Kerangka kerja terstruktur sistem ini adalah sebagai berikut:

Model-model ini masing-masing diterapkan di Gang dan Area pusat perbelanjaan dan supermarket dekat Area yang harus disanitasi. Karena model menggunakan algoritma deteksi orang, penempatan model dilakukan sesuai.

Dalam model ini, untuk akumulasi data video, Arducam mini 2MP Plus digunakan. Arducam Mini 2MP Plus terus mengumpulkan data visual dan mengirim data ini ke Arduino Nano 33 BLE Sense untuk pemrosesan dan klasifikasi. Arduino mengklasifikasikan data dan sesuai memproses perintah. Jika orang terdeteksi, jumlah orang bertambah 1 pada deteksi setiap orang di dekat Gang.

Sebuah ambang untuk jumlah orang ditetapkan tergantung pada tingkat kontaminasi berdasarkan tipe objek di area tersebut. Tingkat kontaminasi dan ambang untuk gang makanan, gang pakaian, gang olahraga dan gang Elektronik berbeda.

Sesuai dengan itu mempertimbangkan ambang rata-rata, jika 25 orang terdeteksi, area aman. Jika jumlah meningkat menjadi 50, area menuju kontaminasi dan pengunjung diberikan peringatan. Jika jumlah meningkat menjadi 100, area dideklarasi terkontaminasi dan orang diperingatkan untuk berhati-hati saat menyentuh objek. Terakhir jika ambang batas dilampaui yaitu 150, area secara otonom disanitasi menggunakan Cahaya UV.

Peringatan yang dihasilkan berdasarkan Warna LED. Hijau adalah indikasi untuk aman, biru adalah indikasi untuk peringatan, dan Merah adalah indikasi untuk Peringatan!. Peringatan berbasis LED ini dipasang di masing-masing area secara individual.

Gambar di atas menunjukkan berbagai gang di pusat perbelanjaan tempat sistem dapat dipasang.

Gambar di atas menunjukkan area pemasangan Arducam atau perangkat pengambil data visual serupa untuk mencakup spektrum luas orang yang berjalan melalui gang.

Gambar di atas menunjukkan implementasi demo Cahaya Sanitasi UV di area yang sesuai di gang. Cahaya UV ini mencakup spektrum luas area yang dapat disanitasi bersama-sama.

Implementasi sistem sanitasi otonom.

Berikut adalah Perangkat Lunak yang digunakan dalam mendesain model ini:

Dalam model deteksi orang ini, saya telah menggunakan model Deteksi Orang Pra-terlatih TensorFlow yang tepat untuk proyek ini. Model pra-terlatih ini terdiri dari tiga kelas di mana kelas ketiga adalah dengan himpunan data yang tidak ditentukan:

"unused",

"person",

"notperson"

Dalam model kita kita memiliki Arducam Mini 2mp plus untuk melakukan intake citra dan data citra ini dengan tingkat fps yang layak dikirim ke Arduino Nano 33 BLE Sense untuk pemrosesan dan klasifikasi. Karena Mikrokontroler mampu menyediakan 256kb RAM, kita mengubah ukuran citra setiap citra menjadi standar 96*96 untuk pemrosesan dan klasifikasi. Jaringan Tensorflow Lite Arduino terdiri dari kerangka pembelajaran mendalam sebagai:

Kerangka pembelajaran mendalam ini digunakan untuk melatih model Deteksi Orang.

Fungsi berikut adalah fungsi paling penting yang didefinisikan saat memproses output pada Mikrokontroler melalui Arduino_detetction_responder.cpp

// Process the inference results.
uint8_t person_score = output->data.uint8[kPersonIndex];
uint8_t no_person_score = output->data.uint8[kNotAPersonIndex];
RespondToDetection(error_reporter, person_score, no_person_score);

Dalam fungsi berikut yang didefinisikan, person_score dan no_person_score telah didefinisikan pada tingkat klasifikasi data.

menggunakan fungsi yang didefinisikan ini, saya akan menggunakannya untuk memberikan output tertentu berdasarkan kepercayaan dari person_score dan no_person_score.

Logika respons deteksi dari kode bekerja dengan cara berikut:

├── Deteksi Orang dan sanitasi
├── Arducam mini 2MP Plus
│ ├── Data Citra dan Video ke Arduino
├── Arduino BLE 33 Sense
│ ├── pemrosesan dan klasifikasi data input
│ │ ├── Jika orang terdeteksi, tambahkan jumlah dengan 1
│ │ ├── Jika tidak ada orang terdeteksi, lakukan apa-apa
│ │ ├── Kirim jumlah orang yang masuk ke Dasbor ThingSpeak melalui ESP8266 -01
│ │ | ├── Jika jumlah orang hingga 25
│ │ │ | ├── Indikasikan area aman dengan memflash lampu hijau

│ │ | ├── Jika jumlah orang hingga 50
│ │ │ | ├── Indikasikan orang untuk waspada dengan memflash lampu BIRU

│ │ | ├── Jika jumlah orang hingga 100
│ │ │ | ├── Indikasikan area terkontaminasi dengan memflash lampu MERAH

│ │ | ├── Jika jumlah orang antara 150 hingga 175
│ │ │ | ├── Sanitasi area dengan mengaktifkan cahaya UV

│ │ │ | ├── Atur ulang jumlah orang ke 0 karena area telah disanitasi
│ │ └── ...Ulangi loop

Menurut logika yang digunakan dalam model, Arducam Mini 2MP Plus akan terus menangkap data visual dan mengirim data ini ke Arduino Nano 33 BLE sense untuk diproses dan diklasifikasikan. Ukuran model ini 125Kb. Setelah citra diproses, Arduino mulai mengklasifikasikan data yang ditangkap. Jika orang terdeteksi dalam model, jumlah orang bertambah 1. Jumlah orang ini terus dikirim ke dasbor ThingSpeak melalui modul IoT ESP8266- 01. Jumlah orang memungkinkan staf supermarket dengan data jumlah pengunjung di suatu area pada titik waktu tertentu. Staf dapat membuat keputusan yang didorong data untuk bertindak di suatu area jika jumlah pengunjung sangat tinggi.

Melanjutkan ke output, jika jumlah orang antara 1 hingga 25, Area dinyatakan aman dengan memflash LED hijau. Jika jumlah orang antara 26 hingga 50, pengunjung diberikan peringatan dengan memflash LED BIRU. Jika jumlah antara 51 hingga 100, area dinyatakan terkontaminasi dengan memflash LED MERAH. Ketika jumlah melewati ambang tertentu, di sini diambil sebesar 150, cahaya UV menyala hingga orang ke-165 melewati area. Dengan cara ini Area disanitasi. Demikian pula jumlah orang diatur ulang ke 0 karena area telah disanitasi.

Kerja Firmware:

Model ini terdiri dari firmware berikut yang digunakan:

Code

Otomatisasi Lift menggunakan perintah suara "up" - "down"Arduino

Di bawah adalah file .zip dari Library Arduino

Tidak ada pratinjau (hanya unduhan).

Sanitasi Gang Pusat Perbelanjaan dengan Sistem Deteksi Orang

https://github.com/dhruvsheth-ai/self-sanitisation-person-detetction

Sistem Pemantauan Suhu Berbasis IoT

https://github.com/dhruvsheth-ai/temperature-arduino-iot

Algoritme Deteksi Masker

https://github.com/dhruvsheth-ai/ble-mask-detection-optimised

Intercom Orang Otonom Berbasis TinyML

https://github.com/dhruvsheth-ai/person-autonomous-intercom

Otomatisasi Lift Menggunakan TinyML

https://github.com/dhruvsheth-ai/elevator-Automation-ARDUINO

Sistem Deteksi Orang dan Antrian Masuk Pusat Perbelanjaan

Sistem Antrian berdasarkan deteksi orang TinyML di Masuk dan Keluar Pusat Perbelanjaan terhubung melalui dasbor IoT ThingSpeak untuk pemantauan data langsunghttps://github.com/dhruvsheth-ai/Person-queuing-system-arduino33

Skematika

Spectrino: Solusi Sentuh Bebas TinyML & IoT dengan Arduino Nano & ESP8266Spectrino: Solusi Sentuh Bebas TinyML & IoT dengan Arduino Nano & ESP8266Spectrino: Solusi Sentuh Bebas TinyML & IoT dengan Arduino Nano & ESP8266

Ini adalah Skematika untuk Sistem Deteksi Orang dan Sanitasi Mandiri Gang Pusat Perbelanjaan yang mentransfer data ke Dasbor IoT ThingSpeak

Spectrino: Solusi Sentuh Bebas TinyML & IoT dengan Arduino Nano & ESP8266

Mendeteksi orang yang hadir di pintu dan memicu bel serta menampilkan "person" pada LED Matrix sebagai alternatif

Spectrino: Solusi Sentuh Bebas TinyML & IoT dengan Arduino Nano & ESP8266

Proses manufaktur

  1. Menghubungkan Raspberry Pi 3 ke Sensor DHT11 dan Mengunggah Data ke Cloud ThingsIo.ai
  2. Memilih Protokol Nirkabel yang Tepat untuk Solusi Pelacakan Aset IoT
  3. Membuat Game Pong Klasik pada Arduino UNO dengan Layar OLED – Tutorial Langkah demi Langkah
  4. Pemantau Detak Jantung IoT Real-Time dengan Arduino & MAX30100
  5. Pixie: Jam Tangan NeoPixel Berbasis Arduino – Jam LED DIY yang Elegan
  6. Proyek HMI Nextion Interaktif Menggunakan Arduino Mega dan Sensor
  7. Menilai Kesehatan Tanaman dengan TinyML: Panduan Praktis
  8. Bangun Automata Seluler Real-Time di Arduino dengan Layar OLED 128x64
  9. Sistem Kontrol Kolam Renang Azure IoT: Sensor Cerdas & Pemantauan Jarak Jauh
  10. Meningkatkan Operasi Truk Terbuka dengan Solusi Pelacakan IoT