Daftar Isi:
- Langkah 1: Bagian yang Diperlukan
- Langkah 2: Pengkabelan & Perakitan
- Langkah 3: Siapkan MQTT, Node-RED dan IFTTT
- Langkah 4: Program Kalibrasi Kapasitas NodeMCU dan Tempat Sampah
- Langkah 5: Menggunakan Sistem
- Langkah 6: Memahami Aliran
- Langkah 7: Tantangan, Keterbatasan, dan Rencana Masa Depan…
Video: IDC2018IOT GarbageCan-Online: 7 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
pengantar
Semua orang tahu apa yang terjadi ketika kita meninggalkan sampah di tempat sampah terlalu lama tanpa membuangnya. Nah, hal yang paling jelas adalah bahwa tidak ada ruang untuk lebih banyak sampah, tetapi juga mulai bau, dan itu menjadi sangat tidak menyenangkan.
Dengan proyek ini, kami bertujuan untuk membantu Anda memantau tempat sampah Anda di sekitar rumah\ruang kerja\dll, sehingga Anda selalu tahu kapan mereka penuh, dan dapat mengambil tindakan segera dengan membuang sampah.
Sistem akan memberi tahu Anda melalui notifikasi telepon atau peringatan dasbor bahwa Anda harus mengosongkan tempat sampah. Sistem memperhitungkan tingkat kepenuhan tempat sampah, tetapi juga suhu dan kelembaban yang diukur di dalamnya. Kita semua akrab dengan urgensi mengosongkan tong sampah di hari yang panas dan lembab…
Fitur utama
-
Dasbor Pemantauan:
-
Bagian utama:
- Tingkat kepenuhan setiap tong sampah.
- Suhu dan kelembaban setiap tong sampah.
-
Bagian Statistik:
- Tempat sampah paling lengkap.
- Tempat sampah terpanas.
-
-
Sistem Peringatan & Pemberitahuan:
-
Acara berikut didukung:
- Tempat sampah sudah penuh.
- Terjadi kesalahan sensor.
- Peringatan kepenuhan memperhitungkan tingkat kepenuhan tempat sampah, tetapi juga tingkat suhu dan kelembaban tempat sampah.
- Peringatan dapat dikirim melalui pemberitahuan telepon dan peringatan dasbor.
- Setiap saluran peringatan dapat dihidupkan dan dimatikan melalui dasbor.
-
-
Skalabilitas:
- Dengan menggunakan tombol kalibrasi, dimungkinkan untuk menyesuaikan sistem ke tong sampah yang berbeda dengan kapasitas yang bervariasi.
- Dimungkinkan untuk menambahkan lebih banyak tong sampah dengan relatif mudah. Seseorang dapat merakit sistem yang sama pada tong sampah baru, mengatur ID tong sampah dan mengkalibrasinya (menekan tombol). Memiliki lebih dari 3 tong sampah akan membutuhkan perpanjangan Dasbor (tugas mudah untuk dilakukan).
Siapa kita?
Proyek ini dibuat (dengan cinta dan dedikasi!) oleh Rom Cyncynatus dan Daniel Alima - Siswa IDC Herzliya sebagai proyek akhir untuk kursus IoT kami. Kami harap Anda akan menemukan pekerjaan kami berguna, dan menikmati menggunakannya!
Langkah 1: Bagian yang Diperlukan
Untuk membangun sistem, Anda akan mendapatkan komponen dan suku cadang berikut:
- Tempat sampah (sebaiknya dengan penutup): Ini akan digunakan untuk … yah.. Anda tahu apa yang akan kita lakukan dengan yang satu ini, eh?;)
- Breadboard: Untuk menghubungkan semua komponen yang berbeda tanpa menggunakan solder.
- NodeMCU (ESP-8266): Bertugas membaca sensor dan mengirimkan informasi ke cloud.
- Distance IR Sensor - Sharp 0A41SK: Sensor ini akan mengukur jumlah sampah (Fullness level) di dalam kaleng.
- Sensor Suhu & Kelembaban - DHT11: Sensor ini akan mengukur suhu dan kelembaban di dalam tempat sampah.
- Sakelar Sesaat: Akan digunakan untuk mengkalibrasi sensor jarak sesuai dengan ukuran tempat sampah.
- Aluminium Foil: Akan digunakan untuk membentuk detektor status tutup - apakah dibuka atau ditutup.
- Kabel jumper: Dapatkan banyak, dan dengan panjang dan warna yang berbeda. Akan menghubungkan semuanya bersama-sama.
- Lakban: Kita harus menempelkan benda-benda pada tempatnya.
- Kabel Micro-USB: Untuk menghubungkan NodeMCU ke komputer Anda untuk pemrograman, dan kemudian untuk catu daya.
- USB Power Supply (pengisi daya smartphone): Akan memberikan daya ke NodeMCU saat dipasang di tong sampah.
Langkah 2: Pengkabelan & Perakitan
Pengkabelan
Tempatkan NodeMCU di papan tempat memotong roti agar nyaman untuk dipasang nanti ke tempat sampah Anda, dan sambungkan kabel USB ke sana. Kemudian, lihat gambar diagram pengkabelan di atas untuk menghubungkan komponen yang berbeda ke NodeMCU. Pastikan untuk menggunakan kabel panjang untuk sensor dan kabel status sehingga akan lebih mudah untuk menginstal sistem dan menggunakan tempat sampah dengannya.
-
Sensor IR Jarak - Tajam 0A41SK:
- Vin (Merah) Vin
- GND (Hitam) GND
- Vout (Kuning) A0
-
Sensor Suhu & Kelembaban - DHT11:
- Vin (Merah) 3V3
- GND (Hitam) GND
- DATA (Kuning) D4
-
Saklar Sesaat:
- Pin1 D3
- Pin2 GND
-
Kabel status tutup (buka\tutup):
- Kawat1 D2
- Kawat2 GND
perakitan
Merakit sistem di tempat sampah cukup sederhana. Pasang Breadboard ke tempat sampah, sebaiknya dekat dengan tutupnya. Gunakan selotip atau pengikat kabel untuk mengencangkannya ke tempatnya. Kemudian:
- Tempatkan sensor jarak IR di tengah tutupnya (dari sisi dalam!). Pastikan untuk mengamankannya dengan benar, atau Anda akan menemukan pembacaan yang salah!
- Tempatkan sensor suhu & kelembaban di suatu tempat di dalam tong sampah. Amankan dengan pita.
- Tutupi sisi tutup dan ujung tong sampah dengan aluminium foil. Pastikan ada kontak yang baik saat tutupnya ditutup. Ini akan memberi sinyal ke sistem bahwa tong sampah dibuka atau ditutup. Kemudian tempelkan masing-masing kabel status tutup di salah satu aluminium foil, dan kencangkan dengan selotip.
Langkah 3: Siapkan MQTT, Node-RED dan IFTTT
Sebagian besar logika proyek sebenarnya diimplementasikan di cloud. NodeMCU mengirimkan data ke server MQTT, dan Node-RED mengkonsumsinya dan menerapkan logikanya (lebih lanjut tentang arsitektur lebih jauh ke depan). Terakhir, untuk mengirimkan pemberitahuan push (peringatan) ke ponsel cerdas kami, kami menggunakan IFTTT.
Kami akan menggunakan layanan cloud CloudMQTT dan FRED sebagai server MQTT dan Node-RED kami masing-masing, dan kami akan menggunakan IFTTT untuk pemberitahuan push.
- Daftar ke CloudMQTT dengan paket gratis. Catat kredensial Anda ke server MQTT (nama pengguna dan kata sandi).
- Daftar ke IFTTT. Buat applet baru "Pemberitahuan aplikasi IFTTT Webhooks". Gunakan "Pemberitahuan Ponsel" sebagai nama acara WebHookds. Konsultasikan gambar di atas untuk detail seluk beluknya. Catat kunci API pembuat Anda.
- Unduh aplikasi IFTTT ke ponsel Anda dan masuk dengan kredensial Anda. Ini akan memungkinkan Anda untuk mendapatkan pemberitahuan push.
- Daftar ke FRED dengan paket gratis.
- Setelah Anda memiliki instans FRED dan berjalan, impor aliran terlampir ke dalamnya (tombol 3 Bar Impor Dari clipboard). Cukup tempelkan konten setiap file (widgest.json, alerts.json, Statistics.json) dan impor.
- Edit salah satu node MQTT (satu sudah cukup) untuk memperbarui kredensial CloudMQTT Anda.
- Edit simpul IFTTT untuk memperbarui kunci API pembuat IFTTT Anda.
Langkah 4: Program Kalibrasi Kapasitas NodeMCU dan Tempat Sampah
Setelah semuanya terhubung, kita perlu memprogram NodeMCU dengan perangkat lunak (sketsa) yang sesuai sehingga benar-benar dapat menggunakan semua hal yang terhubung dengannya, dan berkomunikasi dengan internet.
- Unduh dan instal Arduino IDE dari sini.
- Instal dan atur jenis papan NodeMCU seperti yang dijelaskan di awal instruksi berikut.
-
Instal pustaka berikut (Sketsa Sertakan Pustaka Kelola Pustaka…):
- Adafruit MQTT Library (oleh Adafruit)
- Pustaka sensor DHT (Oleh Adafruit)
- SharpIR (oleh Giuseppe Masino)
- EEPROMANything - penjelasan di sini.
-
Buka file GarbageCanOnline.ino, dan perbarui yang berikut:
- Kredensial WiFi Anda (WLAN_SSID, WLAN_PASS)
- Kredensial CloudMQTT Anda (MQTT_USERNAME, MQTT_PASSWORD)
- Jika ini adalah tong sampah kedua atau lebih, ganti ID tong sampah (GARBAGECAN_ID)
- Unggah sketsa yang diperbarui ke NodeMCU Anda.
- Buka jendela monitor serial (Ctrl+M) dan pastikan jendela tersebut berhasil memublikasikan data sensor ke CloudMQTT.
- Sekarang, ketika tutupnya ditutup dan tempat sampah kosong, tekan lama tombol kalibrasi untuk mengkalibrasi kapasitas tempat sampah.
- Tempat sampah sudah siap. Anda dapat memutuskan sambungannya dari komputer, dan menghubungkannya di lokasi yang ditentukan menggunakan catu daya USB.
Langkah 5: Menggunakan Sistem
Jika Anda telah mencapai sejauh ini, semuanya harus berjalan dan berjalan. Mari kita lakukan tinjauan singkat tentang berbagai aspek penggunaan sistem.
Kami berasumsi Anda hanya memiliki satu tong sampah yang terhubung, tetapi mudah untuk menambahkan lebih banyak lagi nanti!
Pertama, perhatikan dashboard utama. Anda harus berada di layar beranda, melihat kepenuhan tempat sampah, suhu, dan tingkat kelembaban. Anda dapat mengontrol notifikasi telepon dan peringatan Dasbor menggunakan sakelar di sebelah kiri.
Ketika jumlah sampah di dalam tong sampah berubah, Anda akan melihat pengukur berubah. Hal ini juga berlaku untuk grafik suhu dan kelembaban.
Ketika tingkat kepenuhan mencapai 85% -90% (ambang batas yang tepat tergantung pada suhu dan kelembaban), atau terjadi kesalahan sensor, Anda akan mendapatkan pemberitahuan melalui metode pilihan Anda. Anda akan diberi tahu setiap jam sekali per tong sampah.
Dalam tampilan Statistik, Anda akan dapat melihat tong sampah terlengkap saat ini, dan tong sampah terpanas. Judul yang tidak menarik, jika kita boleh mengatakan…
Langkah 6: Memahami Aliran
Seperti yang mungkin telah Anda perhatikan sekarang, sistem memiliki banyak "bagian yang bergerak". Kami akan mencoba mengklarifikasi bagaimana hal-hal terhubung satu sama lain.
Pertama, kita memiliki tong sampah dengan NodeMCU dan sensornya. Kita dapat memiliki banyak dari ini - hanya "salinan" satu sama lain.
NodeMCU mengukur berbagai sensor yang ditempatkan di tempat sampah, dan menerbitkan data ke server MQTT (protokol MQTT). Anda dapat menganggap server MQTT sebagai pertukaran informasi besar, tempat banyak tong sampah dapat melaporkan informasi mereka.
Entitas lain yang terhubung ke server MQTT adalah Node-RED. Node-RED mendengarkan berbagai pesan yang datang dari tong sampah yang membawa data sensoris, dan menerapkan logikanya di sana. Ia bekerja dengan memanfaatkan "arus" informasi. Setiap kali pesan diterima, berdasarkan jenisnya (topik MQTT), pesan tersebut memasuki rantai operasi tertentu yang pada akhirnya mengaktifkan berbagai fitur sistem (memperbarui dasbor, mengirim peringatan, dll.) Akan sangat tepat untuk mengatakannya bahwa Node-RED adalah "otak" dari sistem. Ia menyadari segala sesuatu yang terjadi di mana-mana, dan dapat mengambil tindakan yang sesuai.
Di dalam Node-RED kami telah membangun 3 aliran informasi utama:
- Widget - Informasi sensorik yang dimasukkan ke dalam Node-RED kemudian ditampilkan di dasbor melalui pengukur dan grafik.
- Peringatan - Informasi sensorik diproses untuk menyimpulkan apakah peringatan harus dipicu (di dasbor atau ke aplikasi ponsel cerdas). Tingkat kepenuhan, dengan suhu & kelembaban diperhitungkan untuk memutuskan untuk memberi tahu pengguna bahwa tong sampah sudah penuh. Juga, kesalahan sensorik dilaporkan oleh aliran yang sama.
- Statistik - Informasi sensorik dikumpulkan untuk menampilkan tong sampah terlengkap dan terpanas.
Agar Node-RED mengirim pemberitahuan push, ia terhubung ke layanan yang disebut IFTTT (dengan protokol HTTP). Ini mengaktifkan acara IFTTT tertentu dengan teks pemberitahuan yang relevan, dan IFTTT mengirimkan pemberitahuan ke ponsel cerdas kami (protokol HTTP & XMPP).
Lihat gambar di atas untuk lebih memahami (a) struktur umum sistem, dan (b) 3 aliran informasi berbeda di dalam Node-RED
Langkah 7: Tantangan, Keterbatasan, dan Rencana Masa Depan…
Tantangan
Tantangan utama dalam proyek ini sebagian besar menangani layanan MQTT dan Node-RED. Kami pertama kali menggunakan AdafruitIO, tetapi implementasi MQTT kustomnya tidak cukup baik bagi kami. Tidak nyaman bekerja dengan "umpan" di dalam Node-RED. Oleh karena itu, kami akhirnya memilih CloudMQTT, yang didasarkan pada server Mosquitto MQTT, dan jauh lebih standar. Kemudian kami beralih untuk menangani Node-RED, yang cukup menantang, terutama karena Node-RED adalah binatang buas. Misalnya, ini jauh lebih komprehensif dan profesional daripada IFTTT dalam sudut pandang kami. Kami harus menyesuaikan dan mempelajari cara menggunakan pendekatan desain berbasis aliran untuk membangun fitur sistem yang kami butuhkan. Selain itu, salah satu keuntungan terbesarnya adalah dukungan kode javascript, tetapi butuh beberapa saat untuk membiasakan diri karena kami bukan programmer javascript. Terlepas dari semua itu, kami sangat menikmati bekerja dengan alat khusus ini, dan kami merasa alat ini sangat menarik dan berguna.
Keterbatasan
Sehubungan dengan batasan, yang pertama adalah fakta bahwa kami hanya menggunakan layanan gratis, dan mereka tidak akan mengizinkannya untuk skala penuh. Paket gratis CloudMQTT tidak akan mengizinkan memiliki lebih dari 5 koneksi paralel, artinya kami hanya dapat memiliki 4 tong sampah dan Node-RED. Paket gratis FRED Node-RED hanya memungkinkan penggunaan 24 jam berturut-turut, setelah itu Anda harus masuk secara manual dan mengatur ulang penghitung waktu. Namun, masalah ini mudah dipecahkan dengan menjalankan layanan ini secara lokal, atau membayar sedikit ekstra untuk menghilangkan batasannya. Keterbatasan kedua adalah fakta bahwa ketika seseorang menambahkan tong sampah keempat dan seterusnya, ia harus secara manual mengedit aliran widget di Node-RED untuk menambahkan widget yang sesuai.
Rencana untuk Masa Depan
Kami memiliki beberapa ide untuk lebih meningkatkan sistem kami dan memperluasnya:
- Pindah ke layanan cloud non-gratis. (satu hari kerja).
- Menambahkan kompresor sampah ke tempat sampah, sehingga mengurangi frekuensi pengosongannya. (4 bulan kerja)
- Bekerja dengan tong sampah perkotaan dan industri untuk meningkatkan efisiensi truk kota yang menangani sampah di kota. Ini berarti akan sangat meningkatkan dasbor dan sistem notifikasi sehingga pengemudi truk dapat merencanakan rute mereka dengan lebih baik saat menangani sampah. (6 bulan kerja).
- Menambahkan kemampuan daur ulang ke tempat sampah, seperti kemampuan menuangkan larutan biologis khusus ke dalam sampah dan membantu mendaur ulangnya saat masih berada di dalam tempat sampah. Ini dapat digunakan di dalam negeri misalnya untuk menghasilkan kompos untuk kebun, tetapi jelas dapat digunakan juga pada kaleng industri. (6 bulan kerja).
Direkomendasikan:
IDC2018IOT IoPill Box: 7 Langkah
IDC2018IOT IoPill Box: Ini adalah IoPill Box - kotak pil mingguan yang terhubung ke internet. Untuk proyek akhir kursus IoT kami, kami memutuskan untuk menawarkan solusi yang akan membantu memastikan bahwa orang tua (atau orang lain yang menggunakan kotak pil mingguan ) jangan lupa ambil
Gantungan Kain IDC2018IOT: 6 Langkah
IDC2018IOT Cloth Hanger: gantungan kain IOT akan membuat lemari Anda lebih pintar dan memberi Anda statistik online tentang pakaian di dalamnya. Ia memiliki 3 fitur utama: ketika Anda ingin memilih apa yang akan dikenakan, Anda dapat menekan warna yang ingin Anda kenakan hari ini dan gantungan baju IOT
Sistem Pintu Pintar untuk Gangguan Pendengaran (IDC2018IOT): 11 Langkah
Sistem Pintu Pintar untuk Gangguan Pendengaran (IDC2018IOT): Kita semua berharap memiliki rumah yang cocok untuk kita, tetapi bangunan standar tidak cocok untuk semua orang. Pintu ke rumah dirancang dengan sangat buruk untuk orang yang tuli atau memiliki gangguan pendengaran. Orang dengan gangguan pendengaran tidak dapat mendengar ketukan di pintu, atau
Belajar Lebih Baik Dengan Lampu Meja Pintar - IDC2018IOT: 10 Langkah (dengan Gambar)
Belajar Lebih Baik Dengan Lampu Meja Cerdas - IDC2018IOT: Orang-orang di dunia barat menghabiskan banyak waktu untuk duduk. Di meja, berkeliling, menonton TV dan banyak lagi. Terkadang, duduk terlalu banyak dapat membahayakan tubuh Anda dan membahayakan kemampuan fokus Anda. Berjalan dan berdiri setelah waktu tertentu sangat penting untuk
Sistem Makanan, Air, dan Monitor Terhubung IDC2018IOT: 7 Langkah
IDC2018IOT Connected Pet Food, Air dan Sistem Monitor: PengantarApakah Anda seorang pelajar di bawah tekanan, orang yang bekerja keras, atau hanya jauh dari rumah selama lebih dari beberapa jam sehari. Sebagai pemilik hewan peliharaan yang peduli, kami ingin memastikan orang yang kami cintai tetap sehat, diberi makan dan tentu saja TIDAK berbaring di