Isi kandungan:

IDC2018IOT GarbageCan-Online: 7 Langkah
IDC2018IOT GarbageCan-Online: 7 Langkah

Video: IDC2018IOT GarbageCan-Online: 7 Langkah

Video: IDC2018IOT GarbageCan-Online: 7 Langkah
Video: Homeless boy Found alot of iphone and Money in Rubbish | Restore iphone X Bought from poor boy 2024, Julai
Anonim
Image
Image
Bahagian yang diperlukan
Bahagian yang diperlukan

Pengenalan

Semua orang tahu apa yang berlaku apabila kita membuang sampah di tong sampah terlalu lama tanpa membuangnya. Perkara yang paling jelas adalah bahawa tidak ada ruang untuk lebih banyak sampah, tetapi ia juga mulai berbau, dan ia menjadi sangat tidak menyenangkan.

Dengan projek ini, kami bertujuan untuk membantu anda mengawasi tong sampah anda di sekitar rumah / ruang kerja / dan lain-lain, sehingga anda selalu dapat mengetahui kapan mereka penuh, dan dapat mengambil tindakan segera dengan membuang sampah.

Sistem akan memberi amaran kepada anda melalui pemberitahuan telefon atau papan pemuka bahawa anda harus mengosongkan tong sampah. Sistem ini mengambil kira tahap kepenuhan tong sampah, tetapi juga suhu dan kelembapan yang diukur di dalamnya. Kita semua sudah biasa dengan mendesak mengosongkan tong sampah pada hari yang panas dan lembap …

Ciri-ciri utama

  1. Papan Pemuka Pemantauan:

    • Bahagian Utama:

      • Tahap kepenuhan setiap tong sampah.
      • Suhu dan kelembapan setiap tong sampah.
    • Bahagian Statistik:

      • Tong sampah sepenuhnya.
      • Tong sampah terpanas.
  2. Sistem Makluman & Pemberitahuan:

    • Acara berikut disokong:

      • Tong sampah penuh.
      • Ralat sensor berlaku.
    • Makluman kenyang mengambil kira tahap kepenuhan tong sampah, tetapi juga tahap suhu dan kelembapan tong sampah.
    • Makluman boleh dihantar melalui pemberitahuan telefon dan amaran papan pemuka.
    • Setiap saluran amaran dapat dihidupkan dan dimatikan melalui papan pemuka.
  3. Skalabiliti:

    • Dengan menggunakan butang penentukuran, adalah mungkin untuk menyesuaikan sistem ke tong sampah yang berbeza dengan kapasiti yang berbeza-beza.
    • Adalah mungkin untuk menambahkan lebih banyak tong sampah dengan mudah. Seseorang dapat memasang sistem yang sama pada tong sampah baru, menetapkan tong sampah ID dan menentukurnya (tekan butang). Memiliki lebih dari 3 tong sampah memerlukan peluasan Papan Pemuka (tugas mudah dilakukan).

Siapakah kita?

Projek ini dibuat (dengan kasih sayang dan dedikasi!) Oleh Rom Cyncynatus dan Daniel Alima - Pelajar IDC Herzliya sebagai projek terakhir untuk kursus IoT kami. Kami harap anda dapat menjadikan karya kami berguna, dan seronok menggunakannya!

Langkah 1: Bahagian yang Diperlukan

Untuk membina sistem, anda akan memperoleh komponen dan bahagian berikut:

  1. Tong sampah (sebaiknya dengan penutup): Ini akan digunakan untuk … baik.. anda tahu apa yang akan kita lakukan dengan yang satu ini, eh?;)
  2. Papan roti: Untuk menyambungkan semua komponen yang berbeza tanpa menggunakan pematerian.
  3. NodeMCU (ESP-8266): Bertugas membaca sensor dan menghantar maklumat ke awan.
  4. Sensor IR Jarak - Sharp 0A41SK: Sensor ini akan mengukur jumlah sampah (Tahap kepenuhan) di dalam tin.
  5. Sensor Suhu & Kelembapan - DHT11: Sensor ini akan mengukur suhu dan kelembapan di dalam tong sampah.
  6. Momentary Switch: Akan digunakan untuk mengkalibrasi sensor jarak mengikut ukuran tong sampah.
  7. Aluminium Foil: Akan digunakan untuk membentuk alat pengesan untuk status penutup - sama ada dibuka atau ditutup.
  8. Kabel pelompat: Dapatkan banyak, dan dengan panjang dan warna yang berbeza. Akan menghubungkan semuanya bersama.
  9. Pita Saluran: Kita mesti meletakkan sesuatu di tempatnya.
  10. Kabel Mikro-USB: Untuk menyambungkan NodeMCU ke komputer anda untuk pengaturcaraan, dan kemudian untuk bekalan kuasa.
  11. Bekalan Kuasa USB (pengecas telefon pintar): Akan memberi kuasa kepada NodeMCU apabila dipasang di tong sampah.

Langkah 2: Pendawaian & Pemasangan

Pendawaian & Pemasangan
Pendawaian & Pemasangan
Pendawaian & Pemasangan
Pendawaian & Pemasangan
Pendawaian & Pemasangan
Pendawaian & Pemasangan

Pendawaian

Letakkan NodeMCU di papan roti sehingga senang untuk memasangkannya kemudian ke tong sampah anda, dan sambungkan kabel USB kepadanya. Kemudian, rujuk gambar rajah pendawaian di atas untuk menyambungkan komponen yang berlainan ke NodeMCU. Pastikan menggunakan wayar panjang untuk sensor dan kabel status supaya mudah untuk memasang sistem dan menggunakan tong sampah dengannya.

  • Sensor IR Jarak - Tajam 0A41SK:

    • Vin (Merah) Vin
    • GND (Hitam) GND
    • Vout (Kuning) A0
  • Sensor Suhu & Kelembapan - DHT11:

    • Vin (Merah) 3V3
    • GND (Hitam) GND
    • DATA (Kuning) D4
  • Suis sesaat:

    • Pin1 D3
    • Pin2 GND
  • Kabel status tutup (buka / tutup):

    • Kawat1 D2
    • Wire2 GND

perhimpunan

Pemasangan sistem di tong sampah agak mudah. Pasang Papan Roti ke tong sampah, lebih baik dekat dengan penutupnya. Gunakan pita atau tali leher untuk mengikatnya pada tempatnya. Kemudian:

  1. Letakkan sensor jarak IR di bahagian tengah penutup (dari bahagian dalam!). Pastikan untuk mengamankannya dengan betul, atau anda akan menghadapi pembacaan palsu!
  2. Letakkan sensor suhu & kelembapan di suatu tempat di dalam tong sampah. Selamat dengan pita.
  3. Tutup bahagian penutup dan hujung tong sampah dengan aluminium foil. Pastikan terdapat hubungan yang baik semasa penutupnya ditutup. Ini akan memberi isyarat kepada sistem bahawa tong sampah dibuka atau ditutup. Kemudian pasangkan setiap wayar status penutup di salah satu aluminium foil, dan selamatkan dengan pita.

Langkah 3: Siapkan MQTT, Node-RED dan IFTTT

Sediakan MQTT, Node-MERAH dan IFTTT
Sediakan MQTT, Node-MERAH dan IFTTT
Sediakan MQTT, Node-MERAH dan IFTTT
Sediakan MQTT, Node-MERAH dan IFTTT
Sediakan MQTT, Node-MERAH dan IFTTT
Sediakan MQTT, Node-MERAH dan IFTTT

Sebilangan besar logik projek sebenarnya dilaksanakan di cloud. NodeMCU menghantar data ke pelayan MQTT, dan Node-RED menggunakannya dan menggunakan logiknya (lebih lanjut mengenai seni bina di depan). Terakhir, untuk menghantar notifikasi push (alert) ke telefon pintar kami, kami menggunakan IFTTT.

Kami akan menggunakan perkhidmatan cloud CloudMQTT dan FRED sebagai pelayan MQTT dan Node-RED masing-masing, dan kami akan menggunakan IFTTT untuk pemberitahuan push.

  1. Daftar ke CloudMQTT dengan pelan percuma. Perhatikan kelayakan anda ke pelayan MQTT (nama pengguna dan kata laluan).
  2. Mendaftar ke IFTTT. Buat applet baru "Pemberitahuan aplikasi IFTTT Webhooks". Gunakan "Pemberitahuan Telefon Mudah Alih" sebagai nama acara WebHookds. Rujuk gambar di atas untuk maklumat terperinci. Perhatikan kunci API pembuat anda.
  3. Muat turun aplikasi IFTTT ke telefon anda dan log masuk dengan bukti kelayakan anda. Ini akan membolehkan anda mendapat pemberitahuan tolak.
  4. Daftar ke FRED dengan rancangan percuma.
  5. Setelah anda menjalankan instance FRED, import aliran yang dilampirkan ke dalamnya (butang 3 Bar Import Dari papan keratan). Cukup tampalkan kandungan setiap fail (widgest.json, alerts.json, statistik.json) dan importnya.
  6. Edit salah satu nod MQTT (satu cukup) untuk mengemas kini kelayakan CloudMQTT anda.
  7. Edit nod IFTTT untuk mengemas kini kunci API pembuat IFTTT anda.

Langkah 4: Program Kalibrasi Kapasiti NodeMCU dan Tong Sampah

Setelah semuanya disiapkan, kita perlu memprogram NodeMCU dengan perisian yang sesuai (lakaran) sehingga benar-benar menggunakan semua perkara yang terhubung dengannya, dan berkomunikasi dengan internet.

  1. Muat turun dan pasang Arduino IDE dari sini.
  2. Pasang dan tetapkan jenis papan NodeMCU seperti yang dijelaskan pada awal arahan berikut.
  3. Pasang perpustakaan berikut (Sketsa Sertakan Perpustakaan Menguruskan Perpustakaan …):

    1. Perpustakaan MQTT Adafruit (oleh Adafruit)
    2. Perpustakaan sensor DHT (Oleh Adafruit)
    3. SharpIR (oleh Giuseppe Masino)
    4. EEPROMApa sahaja - penjelasan di sini.
  4. Buka fail GarbageCanOnline.ino, dan kemas kini yang berikut:

    1. Kelayakan WiFi anda (WLAN_SSID, WLAN_PASS)
    2. Kelayakan CloudMQTT anda (MQTT_USERNAME, MQTT_PASSWORD)
    3. Sekiranya ini tong sampah kedua atau lebih, ubah ID tong sampah (GARBAGECAN_ID)
  5. Muat naik lakaran yang dikemas kini ke NodeMCU anda.
  6. Buka tetingkap monitor bersiri (Ctrl + M) dan pastikan ia berjaya menerbitkan data sensor ke CloudMQTT.
  7. Sekarang, apabila penutup ditutup dan tong sampah kosong, tekan lama butang penentukuran untuk menentukurkan kapasiti tong sampah.
  8. Tong sampah sudah siap. Anda boleh memutuskannya dari komputer anda, dan menyambungkannya di lokasi yang ditentukan menggunakan bekalan kuasa USB.

Langkah 5: Menggunakan Sistem

Menggunakan Sistem
Menggunakan Sistem
Menggunakan Sistem
Menggunakan Sistem
Menggunakan Sistem
Menggunakan Sistem

Sekiranya anda sampai sejauh ini, semuanya mesti berjalan lancar. Mari kita buat tinjauan ringkas mengenai pelbagai aspek penggunaan sistem.

Kami menganggap anda hanya mempunyai satu sampah yang dapat disambungkan, tetapi mudah untuk ditambahkan kemudian!

Pertama, perhatikan papan pemuka utama. Anda mesti berada di skrin utama, melihat tahap kepenuhan, suhu dan kelembapan sampah. Anda boleh mengawal pemberitahuan telefon dan amaran Papan Pemuka menggunakan suis di sebelah kiri.

Apabila jumlah sampah di dalam sampah dapat berubah, anda akan melihat alat pengukurnya berubah. Ini juga berlaku untuk grafik suhu dan kelembapan.

Apabila tahap kepenuhan mencapai 85% -90% (ambang tepat bergantung pada suhu dan kelembapan), atau kesalahan sensor berlaku, anda akan mendapat pemberitahuan melalui kaedah pilihan anda. Anda akan diberitahu sekali setiap jam setiap tong sampah.

Dalam paparan Statistik, anda akan dapat melihat tong sampah yang paling lengkap dan yang paling panas. Tajuk yang tidak menarik, jika kita boleh mengatakan…

Langkah 6: Memahami Aliran

Memahami Arus
Memahami Arus
Memahami Arus
Memahami Arus
Memahami Arus
Memahami Arus
Memahami Arus
Memahami Arus

Seperti yang anda perhatikan sekarang, sistem ini mempunyai banyak "bahagian bergerak". Kami akan cuba menjelaskan bagaimana sesuatu saling berkaitan.

Pertama, kita mempunyai tong sampah dengan NodeMCU dan sensornya. Kita dapat banyak - hanya "salinan" satu sama lain.

NodeMCU mengukur sensor yang berbeza yang diletakkan di tong sampah, dan menerbitkan data ke pelayan MQTT (protokol MQTT). Anda boleh menganggap pelayan MQTT sebagai pertukaran maklumat yang besar, yang banyak tong sampah dapat melaporkan maklumatnya.

Entiti lain yang menghubungkan ke pelayan MQTT adalah Node-RED. Node-RED mendengar pelbagai mesej yang datang dari tong sampah yang membawa data sensori, dan menggunakan logiknya. Ia berfungsi dengan menggunakan "aliran" maklumat. Setiap kali mesej diterima, berdasarkan jenisnya (topik MQTT), ia memasuki rantai operasi tertentu yang akhirnya mengaktifkan ciri sistem yang berbeza (mengemas kini papan pemuka, menghantar amaran, dll.) Sangat tepat untuk mengatakan bahawa Node-RED adalah "otak" sistem. Ia mengetahui segala yang berlaku di mana-mana, dan dapat mengambil tindakan yang sewajarnya.

Di dalam Node-RED, kami telah membina 3 aliran maklumat utama:

  1. Widget - Maklumat sensorial yang dimasukkan ke Node-RED kemudian dipaparkan di papan pemuka melalui alat pengukur dan grafik.
  2. Makluman - Maklumat sensorial diproses untuk menyimpulkan sama ada amaran harus dicetuskan (di papan pemuka atau ke aplikasi telefon pintar). Tahap kepenuhan, dengan suhu & kelembapan diambil kira untuk memutuskan untuk memberitahu pengguna bahawa tong sampah sudah penuh. Kesalahan sensorik juga dilaporkan oleh aliran yang sama.
  3. Statistik - Maklumat sensorial digabungkan untuk memaparkan tong sampah yang paling lengkap dan panas.

Agar Node-RED dapat mengirim pemberitahuan push, ia menghubungkan ke perkhidmatan yang disebut IFTTT (oleh protokol HTTP). Ini mengaktifkan acara IFTTT tertentu dengan teks pemberitahuan yang relevan, dan IFTTT mengirimkan pemberitahuan ke telefon pintar kami (protokol HTTP & XMPP).

Rujuk gambar di atas untuk lebih memahami (a) struktur umum sistem, dan (b) 3 aliran maklumat berbeza di dalam Node-RED

Langkah 7: Cabaran, Batasan dan Rancangan untuk Masa Depan…

Cabaran

Cabaran utama dalam projek ini adalah mengendalikan perkhidmatan MQTT dan Node-RED. Kami pertama kali menggunakan AdafruitIO, tetapi pelaksanaan MQTT khususnya tidak begitu baik bagi kami. Tidak selesa bekerja dengan "suapan" di dalam Node-RED. Oleh itu, kami akhirnya memilih CloudMQTT, yang berdasarkan pada pelayan Mosquitto MQTT, dan jauh lebih standard. Kemudian kami terus menangani Node-RED, yang agak mencabar, terutamanya kerana Node-RED adalah binatang. Sebagai contoh, ini jauh lebih komprehensif dan profesional daripada IFTTT pada pandangan kami. Kami harus menyesuaikan diri dan belajar bagaimana menggunakan pendekatan reka bentuk berdasarkan aliran untuk membina ciri sistem kami yang diperlukan. Selain itu, salah satu kelebihan terbesarnya ialah sokongan kod javascript, tetapi memerlukan sedikit masa untuk membiasakan diri kerana kita bukan pengaturcara javascript. Walaupun begitu, kami sangat senang bekerja dengan alat ini, dan kami menganggapnya sangat menarik dan berguna.

Batasan

Berkenaan dengan batasan, yang pertama adalah kenyataan bahawa kami menggunakan perkhidmatan percuma sahaja, dan mereka tidak akan membenarkan penggunaannya secara besar-besaran. Pelan percuma CloudMQTT tidak akan membenarkan mempunyai lebih daripada 5 sambungan selari, yang bermaksud kita hanya boleh memiliki 4 tong sampah dan Node-MERAH. Pelan percuma FRED Node-RED hanya membolehkan penggunaan langsung selama 24 jam, selepas itu anda mesti log masuk dan menetapkan semula pemasa secara manual. Walau bagaimanapun, masalah ini dapat diselesaikan dengan mudah dengan menjalankan perkhidmatan ini secara tempatan, atau membayar sedikit tambahan untuk menghilangkan batasan. Batasan kedua adalah hakikat bahawa apabila seseorang memasukkan tong sampah keempat dan seterusnya, dia harus mengedit secara manual aliran widget di Node-RED untuk menambahkan widget yang sesuai.

Rancangan untuk Masa Depan

Kami mempunyai beberapa idea untuk meningkatkan lagi sistem kami dan memperluasnya:

  1. Beralih ke perkhidmatan awan yang tidak percuma. (satu hari bekerja).
  2. Menambah pemampat sampah ke tong sampah, sehingga mengurangkan kekerapan mengosongkannya. (4 bulan bekerja)
  3. Bekerja dengan tong sampah bandar dan perindustrian untuk meningkatkan kecekapan trak bandar yang mengendalikan sampah di bandar. Ini bermaksud untuk memperbaiki sistem dashboard dan pemberitahuan sehingga pemandu trak dapat merancang perjalanan mereka dengan lebih baik semasa mengendalikan tong sampah. (6 bulan bekerja).
  4. Menambah kebolehan mengitar semula ke tong sampah, seperti kemampuan menuangkan larutan biologi khas ke dalam sampah dan membantu mengitar semula sampah tersebut ketika masih di dalam tong sampah. Ini boleh digunakan di dalam negeri misalnya untuk menghasilkan kompos untuk kebun, tetapi jelas dapat digunakan juga pada tin industri juga. (6 bulan bekerja).

Disyorkan: