Talaan ng mga Nilalaman:

IDC2018IOT GarbageCan-Online: 7 Hakbang
IDC2018IOT GarbageCan-Online: 7 Hakbang

Video: IDC2018IOT GarbageCan-Online: 7 Hakbang

Video: IDC2018IOT GarbageCan-Online: 7 Hakbang
Video: Truck Campers for Adventurous Travelers: Top 10 Picks 2024, Hulyo
Anonim
Image
Image
Mga Kinakailangan na Bahagi
Mga Kinakailangan na Bahagi

Panimula

Alam ng lahat kung ano ang nangyayari kapag iniiwan natin ang basurahan sa basurahan nang masyadong matagal nang hindi tinatanggal ito. Sa gayon, ang pinaka-halata na bagay ay walang puwang para sa mas maraming basura, ngunit nagsisimula rin itong mabaho, at napakasakit nito.

Sa proyektong ito, hangarin naming tulungan kang subaybayan ang iyong mga lata ng basura sa paligid ng bahay / workspace / atbp, upang lagi mong malaman kung puno na sila, at makakagawa ng agarang aksyon sa pamamagitan ng pagkuha ng basurahan.

Aalertuhan ka ng system sa pamamagitan ng abiso sa telepono o alerto sa dashboard na kailangan mong alisan ng basurahan. Isinasaalang-alang ng system ang antas ng kapunuan ng basurahan, ngunit pati na rin ang temperatura at halumigmig na sinusukat sa loob nito. Pamilyar tayong lahat sa pagpipilit na alisin ang basurahan sa mga mainit at mahalumigmig na araw …

Pangunahing Mga Tampok

  1. Pagsubaybay sa Dashboard:

    • Pangunahing Seksyon:

      • Ang antas ng kapunuan ng bawat lata ng basura.
      • Temperatura at kahalumigmigan ng bawat lata ng basura.
    • Seksyon ng Istatistika:

      • Kumpletong basurahan.
      • Pinakamainit na basurahan.
  2. Sistema ng Mga Alerto at Abiso:

    • Ang mga sumusunod na kaganapan ay suportado:

      • Puno ang basurahan.
      • May naganap na error sa sensor.
    • Ang mga alerto sa kapunuan ay isinasaalang-alang ang antas ng kapunuan ng basurahan, ngunit pati na rin ang antas ng temperatura at kahalumigmigan ng basurahan.
    • Maaaring maipadala ang mga alerto sa pamamagitan ng mga notification sa telepono at mga alerto sa dashboard.
    • Ang bawat alert channel ay maaaring i-on at i-off sa pamamagitan ng dashboard.
  3. Kakayahang sukatin:

    • Gamit ang pindutan ng pagkakalibrate, posible na ayusin ang system sa iba't ibang mga lata ng basura na may iba't ibang mga kapasidad.
    • Posibleng magdagdag ng mas maraming mga lata ng basura na medyo madali. Maaaring tipunin ng isa ang parehong sistema sa isang bagong lata ng basura, itakda ang basurang lata ID at i-calibrate ito (itulak ng isang pindutan). Ang pagkakaroon ng higit sa 3 mga basurang lata ay mangangailangan ng pagpapalawak ng Dashboard (madaling gawain upang maisagawa).

Sino tayo?

Ang proyektong ito ay nilikha (na may pag-ibig at pagtatalaga!) Nina Rom Cyncynatus at Daniel Alima - Mga Mag-aaral ng IDC Herzliya bilang isang pangwakas na proyekto para sa aming kurso sa IoT. Inaasahan namin na magiging kapaki-pakinabang ang aming trabaho, at masisiyahan ka sa paggamit nito!

Hakbang 1: Mga Kinakailangan na Bahagi

Upang maitayo ang system, makukuha mo ang mga sumusunod na bahagi at bahagi:

  1. Maaari ang basura (mas mabuti na may takip): Magagamit ito para sa… mabuti.. alam mo kung ano ang gagawin natin sa isang ito, eh?;)
  2. Breadboard: Upang ikonekta ang lahat ng iba't ibang mga bahagi nang hindi gumagamit ng anumang paghihinang.
  3. NodeMCU (ESP-8266): Namamahala sa pagbabasa ng mga sensor at pagpapadala ng impormasyon sa cloud.
  4. Distansya ng IR Sensor - Biglang 0A41SK: Susukat ng sensor na ito ang dami ng basura (antas ng Kapunuan) sa loob ng lata.
  5. Temperatura at Humidity Sensor - DHT11: Susukat ng sensor na ito ang temperatura at halumigmig sa loob ng basurahan.
  6. Momentary Switch: Gagamitin upang i-calibrate ang distansya sensor ayon sa laki ng basurahan.
  7. Aluminium Foil: Gagamitin upang makabuo ng isang detector para sa katayuan ng talukap ng mata - ito ay binuksan o sarado.
  8. Jumper wires: Kumuha ng maraming, at sa iba't ibang haba at kulay. Ikonekta magkasama ang lahat.
  9. Duct Tape: Magkakabit kami ng mga bagay sa lugar.
  10. Micro-USB Cable: Upang ikonekta ang NodeMCU sa iyong computer para sa programa, at sa paglaon para sa isang supply ng kuryente.
  11. USB Power Supply (smartphone charger): Magbibigay ng lakas sa NodeMCU kapag na-install sa basurahan.

Hakbang 2: Mga Kable at Assembling

Mga Kable at Assembling
Mga Kable at Assembling
Mga Kable at Assembling
Mga Kable at Assembling
Mga Kable at Assembling
Mga Kable at Assembling

Kable

Ilagay ang NodeMCU sa breadboard upang maginhawa upang ikabit ito sa paglaon sa iyong basurahan, at ikonekta ang USB cable dito. Pagkatapos, kumunsulta sa larawan ng diagram ng mga kable sa itaas upang ikonekta ang iba't ibang mga bahagi sa NodeMCU. Siguraduhing gumamit ng mahabang wires para sa mga sensor at status wires upang maginhawa upang mai-install ang system at gamitin ang basurahan kasama nito.

  • Distansya ng IR Sensor - Biglang 0A41SK:

    • Vin (Pula) Vin
    • GND (Itim) GND
    • Vout (Dilaw) A0
  • Temperatura at Humidity Sensor - DHT11:

    • Vin (Pula) 3V3
    • GND (Itim) GND
    • DATA (Dilaw) D4
  • Pansamantalang Lumipat:

    • Pin1 D3
    • Pin2 GND
  • Katayuan sa takip (buksan ang / close) na mga wire:

    • Wire1 D2
    • Wire2 GND

Assembly

Ang pagtitipon ng system sa basurahan ay medyo simple. Ikabit ang Breadboard sa basurahan, mas mabuti na malapit sa takip. Gumamit ng alinman sa tape o cable tie upang mai-secure ito. Pagkatapos:

  1. Ilagay ang IR distansya sensor sa gitna ng takip (mula sa panloob na bahagi!). Siguraduhin na ma-secure ito nang maayos, o makatagpo ka ng maling pagbasa!
  2. Ilagay ang temperatura at sensor ng kahalumigmigan saanman sa loob ng basurahan. Secure sa tape.
  3. Takpan ang gilid ng takip at ang dulo ng basurahan na may aluminyo foil. Siguraduhing may mahusay na pakikipag-ugnay kapag sarado ang takip. Hudyat ito sa system na ang basurahan ay maaaring buksan o sarado. Pagkatapos ay idikit ang bawat isa sa mga wire ng katayuan ng takip sa isa sa aluminyo palara, at i-secure sa tape.

Hakbang 3: I-setup ang MQTT, Node-RED at IFTTT

I-setup ang MQTT, Node-RED at IFTTT
I-setup ang MQTT, Node-RED at IFTTT
I-setup ang MQTT, Node-RED at IFTTT
I-setup ang MQTT, Node-RED at IFTTT
I-setup ang MQTT, Node-RED at IFTTT
I-setup ang MQTT, Node-RED at IFTTT

Karamihan sa lohika ng proyekto ay talagang ipinatupad sa cloud. Ipinapadala ng NodeMCU ang data sa MQTT server, at ubusin ito ng Node-RED at inilalapat ang lohika dito (higit pa tungkol sa arkitektura na mas maaga). Panghuli, upang maipadala ang mga push notification (alerto) sa aming smartphone, ginamit namin ang IFTTT.

Gagamitin namin ang CloudMQTT at FRED cloud services bilang aming MQTT at Node-RED server ayon sa pagkakabanggit, at gagamitin namin ang IFTTT para sa mga push notification.

  1. Pag-sign up sa CloudMQTT kasama ang libreng plano. Tandaan ang iyong mga kredensyal sa MQTT server (username at password).
  2. Pag-sign up sa IFTTT. Lumikha ng isang bagong applet ng "Webhooks IFTTT app notification". Gumamit ng "Mobile Phone Notification" bilang pangalan ng kaganapan sa WebHookds. Kumunsulta sa imahe sa itaas para sa mga nitty gritty na detalye. Tandaan ang iyong tagagawa ng API key.
  3. I-download ang IFTTT app sa iyong telepono at mag-sign in gamit ang iyong mga kredensyal. Papayagan ka nitong makakuha ng mga notification sa push.
  4. Mag-sign up sa FRED gamit ang libreng plano.
  5. Kapag natapos mo na ang instance ng FRED na tumatakbo, i-import ang naka-attach na daloy dito (3 Mga pindutan ng Bar na Mag-import Mula sa clipboard). I-paste lamang ang mga nilalaman ng bawat file (widgest.json, alerts.json, statistics.json) at i-import ito.
  6. I-edit ang isa sa mga node ng MQTT (sapat ang isa) upang mai-update ang iyong mga kredensyal sa CloudMQTT.
  7. I-edit ang IFTTT node upang i-update ang iyong IFTTT maker API key.

Hakbang 4: I-program ang NodeMCU at Garbage Can Capacity Calibration

Sa sandaling mayroon kaming lahat na naka-wire, kailangan nating i-program ang NodeMCU gamit ang naaangkop na software (sketch) upang magamit talaga nito ang lahat ng mga bagay na konektado dito, at makipag-usap sa internet.

  1. I-download at i-install ang Arduino IDE mula rito.
  2. I-install at itakda ang uri ng board ng NodeMCU tulad ng ipinaliwanag sa simula ng sumusunod na itinuturo.
  3. I-install ang mga sumusunod na aklatan (Isama sa Sketch ang Library Pamahalaan ang Mga Aklatan …):

    1. Adafruit MQTT Library (ni Adafruit)
    2. Library ng sensor ng DHT (Ni Adafruit)
    3. SharpIR (ni Giuseppe Masino)
    4. EEPROMAnything - paliwanag dito.
  4. Buksan ang GarbageCanOnline.ino file, at i-update ang sumusunod:

    1. Ang iyong mga kredensyal sa WiFi (WLAN_SSID, WLAN_PASS)
    2. Ang iyong mga kredensyal sa CloudMQTT (MQTT_USERNAME, MQTT_PASSWORD)
    3. Kung ito ay pangalawang lata ng basura o higit pa, palitan ang ID ng basurahan (GARBAGECAN_ID)
  5. I-upload ang na-update na sketch sa iyong NodeMCU.
  6. Buksan ang window ng serial monitor (Ctrl + M) at tiyaking namamahala ito upang mai-publish ang data ng mga sensor sa CloudMQTT.
  7. Ngayon, kapag ang takip ay sarado at ang basurahan ay walang laman, pindutin nang matagal ang pindutan ng pagkakalibrate upang i-calibrate ang kapasidad ng basura.
  8. Nakatakda na ang basurahan. Maaari mo itong idiskonekta mula sa iyong computer, at ikonekta ito sa itinalagang lokasyon nito gamit ang USB power supply.

Hakbang 5: Gamit ang System

Gamit ang System
Gamit ang System
Gamit ang System
Gamit ang System
Gamit ang System
Gamit ang System

Kung naabot mo na ito, dapat na lahat ay tumatakbo at tumatakbo. Gawin natin ang isang mabilis na pangkalahatang ideya ng iba't ibang mga aspeto ng paggamit ng system.

Ipinapalagay namin na mayroon ka lamang isang solong basura na maaaring konektado, ngunit madali itong magdagdag ng higit pa sa paglaon!

Una, pansinin ang pangunahing dashboard. Dapat ay nasa home screen ka, nakikita ang basura ay maaaring puno, mga antas ng temperatura at halumigmig. Maaari mong kontrolin ang mga abiso sa telepono at mga alerto sa Dashboard gamit ang mga switch sa kaliwa.

Kapag ang halaga ng basura sa loob ng basura ay maaaring magbago, makikita mo ang mga pagbabago sa gauge nang naaayon. Ito rin ang kaso para sa mga graph ng temperatura at halumigmig.

Kapag ang antas ng kapunuan ay umabot sa 85% -90% (eksaktong threshold ay nakasalalay sa temperatura at halumigmig), o isang error sa sensor na naganap, makakakuha ka ng isang abiso sa pamamagitan ng iyong (mga) ginustong pamamaraan. Aabisuhan ka isang beses bawat oras bawat lata ng basura.

Sa view ng Statistics, makikita mo ang kasalukuyang pinak buong basurahan, at ang pinakamainit. Hindi namamalaging pamagat, kung sasabihin namin…

Hakbang 6: Pag-unawa sa Daloy

Pag-unawa sa Daloy
Pag-unawa sa Daloy
Pag-unawa sa Daloy
Pag-unawa sa Daloy
Pag-unawa sa Daloy
Pag-unawa sa Daloy
Pag-unawa sa Daloy
Pag-unawa sa Daloy

Tulad ng malamang na napansin mo sa ngayon, ang system ay may maraming mga "gumagalaw na bahagi". Susubukan naming linawin kung paano nakakonekta ang mga bagay sa bawat isa.

Una, mayroon kaming basurahan sa NodeMCU at mga sensor nito. Maaari tayong magkaroon ng maraming mga ito - "kopya" lamang sa bawat isa.

Sinusukat ng NodeMCU ang iba't ibang mga sensor na inilagay sa basurahan, at inilalathala ang data sa MQTT server (MQTT protocol). Maaari mong isipin ang server ng MQTT bilang isang malaking palitan ng impormasyon, na maraming mga lata ng basura ang maaaring mag-ulat ng kanilang impormasyon.

Ang isa pang nilalang na kumokonekta sa MQTT server ay ang Node-RED. Nakikinig ang Node-RED sa iba't ibang mga mensahe na nagmumula sa (mga) basurahan na maaaring nagdadala ng sensorial data, at inilalapat ang lohika dito. Gumagana ito sa pamamagitan ng paggamit ng "dumadaloy" na impormasyon. Sa tuwing matatanggap ang isang mensahe, batay sa uri nito (paksa ng MQTT), pumapasok ito sa mga tukoy na kadena ng pagpapatakbo na nagtatapos sa pag-aktibo ng iba't ibang mga tampok ng system (pag-update sa dashboard, pagpapadala ng mga alerto, atbp.) Napaka tamang sabihin na ang Node-RED ang "utak" ng system. May kamalayan ito sa lahat ng bagay na nangyayari saanman, at maaaring gumawa ng pagkilos nang naaayon.

Sa loob ng Node-RED nakabuo kami ng 3 pangunahing daloy ng impormasyon:

  1. Mga Widget - Ang impormasyong pang-alaala na pinakain sa Node-RED ay ipapakita sa dashboard sa pamamagitan ng mga gauge at grap.
  2. Mga Alerto - Pinoproseso ang impormasyong Sensorial upang magwakas kung ang isang alerto ay dapat na ma-trigger (sa dashboard o sa smartphone app). Ang antas ng kapunuan, na may temperatura at halumigmig ay isinasaalang-alang upang magpasyang ipaalam sa gumagamit na ang basurahan ay puno na. Gayundin, ang mga sensorial error ay iniulat ng parehong daloy.
  3. Mga Istatistika - Pinagsama-sama ang impormasyong sensoryal upang maipakita ang buong at pinakamainit na mga lata ng basura.

Upang makapagpadala ang Node-RED ng notification ng push, kumokonekta ito sa isang serbisyong tinatawag na IFTTT (ng HTTP protocol). Pinapagana nito ang isang tiyak na kaganapan ng IFTTT kasama ang nauugnay na teksto ng abiso, at ipinapadala ng IFTTT ang notification sa aming smartphone (mga protokol na HTTP at XMPP).

Sumangguni sa mga imahe sa itaas upang mas maintindihan ang (a) pangkalahatang istraktura ng system, at (b) ang 3 magkakaibang impormasyon na dumadaloy sa loob ng Node-RED

Hakbang 7: Mga Hamon, Limitasyon at Plano para sa Kinabukasan…

Mga Hamon

Ang mga pangunahing hamon sa proyektong ito ay halos lahat ng paghawak ng mga serbisyo ng MQTT at Node-RED. Una naming ginamit ang AdafruitIO, ngunit ang pasadyang pagpapatupad ng MQTT na ito ay hindi maganda para sa amin. Hindi maginhawa upang gumana kasama ang mga "feed" nito sa loob ng Node-RED. Samakatuwid sa huli ay nag-opt kami para sa CloudMQTT, na batay sa Mosquitto MQTT server, at higit na pamantayan. Pagkatapos ay lumipat kami upang hawakan ang Node-RED, na kung saan ay medyo mapaghamong, karamihan dahil ang Node-RED ay isang hayop. Halimbawa, ito ay mas komprehensibo at propesyonal kaysa sa IFTTT sa aming pananaw. Kailangan naming ayusin at malaman kung paano gamitin ang diskarte na disenyo na batay sa daloy upang mabuo ang aming mga kinakailangang tampok ng system. Bukod dito, ang isa sa pinakamalaking pakinabang nito ay ang suporta ng javascript code, ngunit tumagal ng mas matagal upang masanay dahil hindi kami mga programmer ng javascript. Sa kabila ng lahat ng iyon, talagang nasiyahan kami sa pagtatrabaho kasama ang partikular na tool na ito, at nalaman naming ito ay napaka-interesante at kapaki-pakinabang.

Mga limitasyon

Tungkol sa mga limitasyon, ang una ay ang katotohanan na gumamit kami ng mga libreng serbisyo lamang, at hindi nila papayagan ang pagpunta sa buong sukat. Hindi papayagan ng libreng plano ng CloudMQTT ang pagkakaroon ng higit sa 5 mga parallel na koneksyon, nangangahulugang maaari lamang kaming magkaroon ng 4 na mga lata ng basura at ang Node-RED. Pinapayagan lamang ng FRED Node-RED libreng plano ang 24 na oras ng tuwid na paggamit, at pagkatapos ay kailangan mong manu-manong mag-log in at i-reset ang timer. Gayunpaman, ang mga isyung ito ay madaling malulutas ng alinman sa pagpapatakbo ng mga serbisyong ito nang lokal, o pagbabayad ng kaunting labis upang maiangat ang mga limitasyon. Ang pangalawang limitasyon ay ang katotohanan na kapag idinagdag ng isang tao ang ikaapat na basura maaari at pataas, kailangan niyang manu-manong i-edit ang daloy ng mga widget sa Node-RED upang idagdag ang naaangkop na mga widget.

Plano para sa kinabukasan

Mayroon kaming ilang mga ideya upang higit na mapahusay ang aming system at palawakin ito:

  1. Lumipat sa mga serbisyong hindi cloud na libre. (solong araw ng trabaho).
  2. Ang pagdaragdag ng isang compressor ng basura sa basurahan ay maaaring, sa gayon binabawasan ang dalas ng pag-alis ng laman nito. (4 na buwan ng trabaho)
  3. Ang pakikipagtulungan sa mga kalunsuran at pang-industriya na basurahan ay maaaring mapabuti ang kahusayan ng mga trak ng lungsod na hahawak sa basurahan sa lungsod. Mangangahulugan ito na lubos na mapagbuti ang dashboard at notification system upang ang mga driver ng trak ay maaaring planuhin ang kanilang ruta nang mas mahusay kapag hawakan ang basurahan. (6 na buwan ng trabaho).
  4. Ang pagdaragdag ng mga kakayahan sa pag-recycle sa basurahan, tulad ng kakayahang ibuhos ang mga espesyal na solusyon sa biological sa basura at tulungan itong i-recycle habang nasa loob pa ito ng basurahan. Maaari itong magamit sa loob ng bansa halimbawa upang makabuo ng pag-aabono para sa mga hardin, ngunit malinaw na magagamit din sa mga de-industriya na lata rin. (6 na buwan ng trabaho).

Inirerekumendang: