Satura rādītājs:

IDC2018IOT GarbageCan-Online: 7 soļi
IDC2018IOT GarbageCan-Online: 7 soļi

Video: IDC2018IOT GarbageCan-Online: 7 soļi

Video: IDC2018IOT GarbageCan-Online: 7 soļi
Video: СОЛЬ | Документальный фильм 2024, Jūlijs
Anonim
Image
Image
Nepieciešamās detaļas
Nepieciešamās detaļas

Ievads

Ikviens zina, kas notiek, ja mēs pārāk ilgi atstājam miskasti atkritumu tvertnē, to neizņemot. Nu, acīmredzamākais ir tas, ka nav vietas vairāk atkritumiem, bet tas arī sāk smirdēt, un tas kļūst ļoti nepatīkami.

Ar šo projektu mēs cenšamies palīdzēt jums uzraudzīt atkritumu urnas ap māju / darbvietu / utt., Lai jūs vienmēr varētu zināt, kad tās ir pilnas, un nekavējoties rīkoties, izvedot miskasti.

Sistēma jūs brīdinās pa tālruni vai informācijas paneļa brīdinājumu, ka jums ir jāiztukšo atkritumu tvertne. Sistēma ņem vērā atkritumu tvertnes pilnības pakāpi, bet arī tajā izmērīto temperatūru un mitrumu. Mēs visi zinām, cik steidzami jāiztukšo atkritumu tvertnes karstās un mitrās dienās …

Galvenās iezīmes

  1. Uzraudzības informācijas panelis:

    • Galvenā sadaļa:

      • Katras atkritumu tvertnes pilnības līmenis.
      • Katras atkritumu tvertnes temperatūra un mitrums.
    • Statistikas sadaļa:

      • Pilnīgākā atkritumu tvertne.
      • Karstākā atkritumu tvertne.
  2. Brīdinājumu un paziņojumu sistēma:

    • Tiek atbalstīti šādi notikumi:

      • Atkritumu tvertne ir pilna.
      • Radās sensora kļūda.
    • Pilnības brīdinājumos tiek ņemts vērā atkritumu tvertnes pilnības līmenis, bet arī atkritumu tvertnes temperatūra un mitruma līmenis.
    • Brīdinājumus var nosūtīt, izmantojot tālruņa paziņojumus un informācijas paneļa brīdinājumus.
    • Katru brīdinājuma kanālu var ieslēgt un izslēgt, izmantojot informācijas paneli.
  3. Mērogojamība:

    • Izmantojot kalibrēšanas pogu, ir iespējams pielāgot sistēmu dažādām atkritumu tvertnēm ar dažādu ietilpību.
    • Salīdzinoši viegli ir iespējams pievienot vairāk atkritumu urnu. To pašu sistēmu var samontēt jaunā atkritumu tvertnē, iestatīt atkritumu tvertnes ID un to kalibrēt (nospiežot pogu). Ja jums ir vairāk nekā 3 atkritumu tvertnes, būs jāpagarina informācijas panelis (vienkāršs uzdevums).

Kas mēs esam?

Šo projektu (ar mīlestību un centību!) Izveidoja Rom Cyncynatus un Daniel Alima - IDC Herzliya studenti kā mūsu IoT kursa noslēguma projektu. Mēs ceram, ka mūsu darbs jums šķitīs noderīgs un jums patiks to izmantot!

1. darbība. Nepieciešamās detaļas

Lai izveidotu sistēmu, jums būs jāiegādājas šādas sastāvdaļas un daļas:

  1. Atkritumu tvertne (vēlams ar vāku): tas tiks izmantots … nu.. jūs zināt, ko mēs ar šo darīsim, vai ne?;)
  2. Maizes dēlis: lai savienotu visus dažādus komponentus, neizmantojot lodēšanu.
  3. NodeMCU (ESP-8266): atbild par sensoru nolasīšanu un informācijas nosūtīšanu uz mākoni.
  4. Attāluma IR sensors - Sharp 0A41SK: Šis sensors izmērīs atkritumu daudzumu (pilnības līmenis) kārbas iekšpusē.
  5. Temperatūras un mitruma sensors - DHT11: Šis sensors izmērīs temperatūru un mitrumu atkritumu tvertnes iekšpusē.
  6. Momentārais slēdzis: tiks izmantots, lai kalibrētu attāluma sensoru atbilstoši atkritumu tvertnes izmēram.
  7. Alumīnija folija: tiks izmantota, lai izveidotu detektoru vāka stāvoklim - neatkarīgi no tā, vai tas ir atvērts vai aizvērts.
  8. Džempera vadi: iegūstiet daudz dažādu garumu un krāsu. Savienos visu kopā.
  9. Kanāla lente: Mums būs jāpiestiprina lietas vietā.
  10. Mikro-USB kabelis: lai pievienotu NodeMCU datoram programmēšanai un vēlāk barošanas avotam.
  11. USB barošanas avots (viedtālruņa lādētājs): nodrošinās strāvu NodeMCU, kad tas ir uzstādīts uz atkritumu tvertnes.

2. darbība: elektroinstalācija un montāža

Elektroinstalācija un montāža
Elektroinstalācija un montāža
Elektroinstalācija un montāža
Elektroinstalācija un montāža
Elektroinstalācija un salikšana
Elektroinstalācija un salikšana

Elektroinstalācija

Novietojiet NodeMCU uz maizes dēļa tā, lai vēlāk to būtu ērti piestiprināt pie atkritumu tvertnes, un pievienojiet tam USB kabeli. Pēc tam skatiet iepriekš redzamo elektroinstalācijas shēmas attēlu, lai savienotu dažādus komponentus ar NodeMCU. Noteikti izmantojiet garus vadus sensoriem un statusa vadiem, lai būtu ērti uzstādīt sistēmu un kopā ar to izmantot atkritumu tvertni.

  • Attāluma IR sensors - Sharp 0A41SK:

    • Vīns (sarkans) Vīns
    • GND (melns) GND
    • Vout (dzeltens) A0
  • Temperatūras un mitruma sensors - DHT11:

    • Vin (sarkans) 3V3
    • GND (melns) GND
    • DATI (dzeltens) D4
  • Mirkļa slēdzis:

    • Pin1 D3
    • Pin2 GND
  • Vāka statusa (atvērtas / aizvērtas) vadi:

    • Vads1 D2
    • Wire2 GND

Montāža

Sistēmas montāža uz atkritumu tvertnes ir diezgan vienkārša. Piestipriniet maizes dēli pie atkritumu tvertnes, vēlams tuvu vākam. Izmantojiet lenti vai kabeļu saiti, lai to nostiprinātu vietā. Tad:

  1. Novietojiet IR attāluma sensoru vāka vidū (no iekšpuses!). Pārliecinieties, vai tas ir pareizi nostiprināts, pretējā gadījumā jūs sasniegsit nepatiesus rādījumus!
  2. Novietojiet temperatūras un mitruma sensoru kaut kur atkritumu tvertnes iekšpusē. Nostipriniet ar lenti.
  3. Pārklājiet vāka malu un atkritumu tvertnes galu ar alumīnija foliju. Pārliecinieties, vai ir labs kontakts, kad vāks ir aizvērts. Tas signalizēs sistēmu, ka atkritumu tvertne ir atvērta vai aizvērta. Pēc tam ielīmējiet katru vāka statusa vadu vienā no alumīnija folijas un nostipriniet ar lenti.

3. darbība: iestatiet MQTT, Node-RED un IFTTT

Iestatiet MQTT, Node-RED un IFTTT
Iestatiet MQTT, Node-RED un IFTTT
Iestatiet MQTT, Node-RED un IFTTT
Iestatiet MQTT, Node-RED un IFTTT
Iestatiet MQTT, Node-RED un IFTTT
Iestatiet MQTT, Node-RED un IFTTT

Lielākā daļa projekta loģikas faktiski tiek īstenota mākonī. NodeMCU nosūta datus uz MQTT serveri, un Node-RED tos patērē un piemēro tam savu loģiku (vairāk par arhitektūru tālāk). Visbeidzot, lai pārsūtītu push paziņojumus (brīdinājumus) uz mūsu viedtālruni, mēs izmantojām IFTTT.

Mēs izmantosim CloudMQTT un FRED mākoņa pakalpojumus kā mūsu MQTT un Node-RED serverus, un mēs izmantosim IFTTT push paziņojumiem.

  1. Reģistrējieties CloudMQTT, izmantojot bezmaksas plānu. Pierakstiet savus akreditācijas datus MQTT serverim (lietotājvārds un parole).
  2. Reģistrējieties IFTTT. Izveidojiet jaunu sīklietotni “Webhooks IFTTT lietotnes paziņojums”. Kā WebHookds notikuma nosaukumu izmantojiet “Mobilā tālruņa paziņojums”. Lai iegūtu sīkāku informāciju, skatiet iepriekš redzamo attēlu. Ņemiet vērā sava veidotāja API atslēgu.
  3. Lejupielādējiet tālrunī lietotni IFTTT un pierakstieties, izmantojot savus akreditācijas datus. Tas ļaus jums saņemt push paziņojumus.
  4. Reģistrējieties FRED, izmantojot bezmaksas plānu.
  5. Kad FRED instance ir izveidota un darbojas, importējiet tajā pievienotās plūsmas (poga 3 joslas Importēt no starpliktuves). Vienkārši ielīmējiet katra faila saturu (widgest.json, alerts.json, statistics.json) un importējiet to.
  6. Rediģējiet vienu no MQTT mezgliem (pietiek ar vienu), lai atjauninātu savus CloudMQTT akreditācijas datus.
  7. Rediģējiet IFTTT mezglu, lai atjauninātu IFTTT veidotāja API atslēgu.

4. solis: ieprogrammējiet NodeMCU un atkritumu tvertnes tilpuma kalibrēšanu

Kad viss ir savienots, mums jāprogrammē NodeMCU ar atbilstošu programmatūru (skice), lai tā faktiski izmantotu visu ar to saistīto saturu un sazinātos ar internetu.

  1. Lejupielādējiet un instalējiet Arduino IDE no šejienes.
  2. Instalējiet un iestatiet NodeMCU plates tipu, kā paskaidrots šīs pamācības sākumā.
  3. Instalējiet šādas bibliotēkas (Skice Iekļaut bibliotēku Pārvaldīt bibliotēkas …):

    1. Adafruit MQTT bibliotēka (Adafruit)
    2. DHT sensoru bibliotēka (Adafruit)
    3. SharpIR (Džuzepe Masino)
    4. EEPROMAnything - skaidrojums šeit.
  4. Atveriet failu GarbageCanOnline.ino un atjauniniet:

    1. Jūsu WiFi akreditācijas dati (WLAN_SSID, WLAN_PASS)
    2. Jūsu CloudMQTT akreditācijas dati (MQTT_USERNAME, MQTT_PASSWORD)
    3. Ja šī ir otrā vai vairāk atkritumu tvertne, nomainiet atkritumu tvertnes ID (GARBAGECAN_ID)
  5. Augšupielādējiet atjaunināto skici savā NodeMCU.
  6. Atveriet seriālā monitora logu (Ctrl+M) un pārliecinieties, vai tas izdod sensoru datus CloudMQTT.
  7. Tagad, kad vāks ir aizvērts un atkritumu tvertne ir tukša, ilgi nospiediet kalibrēšanas pogu, lai kalibrētu atkritumu tvertnes ietilpību.
  8. Atkritumu tvertne ir gatava. Varat to atvienot no datora un pievienot tam paredzētajā vietā, izmantojot USB barošanas avotu.

5. darbība: sistēmas lietošana

Sistēmas izmantošana
Sistēmas izmantošana
Sistēmas izmantošana
Sistēmas izmantošana
Sistēmas izmantošana
Sistēmas izmantošana

Ja esat sasniedzis tik tālu, visam vajadzētu būt kārtībā. Ļaujiet mums ātri apskatīt dažādus sistēmas izmantošanas aspektus.

Mēs pieņemam, ka jums ir pievienota tikai viena atkritumu tvertne, taču vēlāk to ir viegli pievienot!

Vispirms ievērojiet galveno informācijas paneli. Jums vajadzētu būt sākuma ekrānā, redzēt atkritumu tvertnes pilnību, temperatūru un mitruma līmeni. Varat kontrolēt tālruņa paziņojumus un informācijas paneļa brīdinājumus, izmantojot kreisajā pusē esošos slēdžus.

Kad atkritumu daudzums atkritumu tvertnē var mainīties, jūs redzēsit, ka mērinstruments attiecīgi mainās. Tas attiecas arī uz temperatūras un mitruma grafikiem.

Kad pilnības līmenis sasniedz 85% -90% (precīzs slieksnis ir atkarīgs no temperatūras un mitruma) vai radās sensora kļūda, jūs saņemsit paziņojumu, izmantojot vēlamo (-ās) metodi (-es). Par atkritumu tvertni jūs saņemsiet paziņojumu reizi stundā.

Skatījumā Statistika jūs varēsit redzēt šobrīd vispilnīgāko un karstāko atkritumu tvertni. Nepatīkams virsraksts, ja tā var teikt …

6. darbība: plūsmas izpratne

Plūsmas izpratne
Plūsmas izpratne
Plūsmas izpratne
Plūsmas izpratne
Plūsmas izpratne
Plūsmas izpratne
Plūsmas izpratne
Plūsmas izpratne

Kā jūs, iespējams, jau esat pamanījis, sistēmā ir daudz "kustīgu daļu". Mēs centīsimies noskaidrot, kā lietas ir savstarpēji saistītas.

Pirmkārt, mums ir mūsu atkritumu tvertne ar NodeMCU un tā sensoriem. To mums var būt daudz - tikai viens otra "kopijas".

NodeMCU mēra dažādus sensorus, kas ievietoti atkritumu tvertnē, un publicē datus MQTT serverī (MQTT protokols). Jūs varat iedomāties MQTT serveri kā lielu informācijas apmaiņu, kurai daudzas atkritumu urnas var ziņot par savu informāciju.

Vēl viena entītija, kas izveido savienojumu ar MQTT serveri, ir Node-RED. Mezgls-SARKANA klausās dažādus ziņojumus, kas nāk no atkritumu tvertnes (-ēm), kurā ir sensoro dati, un izmanto savu loģiku. Tas darbojas, izmantojot informācijas "plūsmas". Katru reizi, kad tiek saņemts ziņojums, pamatojoties uz tā veidu (MQTT tēma), tas nonāk noteiktās darbības ķēdēs, kas galu galā aktivizē dažādas sistēmas funkcijas (informācijas paneļa atjaunināšana, brīdinājumu nosūtīšana utt.) Būtu ļoti pareizi teikt ka Node-RED ir sistēmas "smadzenes". Tā apzinās visu, kas notiek visur, un var attiecīgi rīkoties.

Node-RED iekšpusē mēs esam izveidojuši 3 galvenās informācijas plūsmas:

  1. Logrīki - Sensora informācija, kas tiek ievadīta mezglā -RED, tiek parādīta informācijas panelī, izmantojot mērinstrumentus un diagrammas.
  2. Brīdinājumi - Sensora informācija tiek apstrādāta, lai secinātu, vai ir jāaktivizē brīdinājums (informācijas panelī vai viedtālruņa lietotnē). Pilnības līmenis ar temperatūru un mitrumu tiek ņemts vērā, lai nolemtu informēt lietotāju, ka atkritumu tvertne ir pilna. Arī sensora kļūdas tiek ziņotas vienā un tajā pašā plūsmā.
  3. Statistika - Sensora informācija tiek apkopota, lai parādītu pilnīgākās un karstākās atkritumu tvertnes.

Lai Node-RED varētu nosūtīt push paziņojumu, tas izveido savienojumu ar pakalpojumu IFTTT (izmantojot HTTP protokolu). Tas aktivizē noteiktu IFTTT notikumu ar attiecīgo paziņojuma tekstu, un IFTTT nosūta paziņojumu uz mūsu viedtālruni (HTTP un XMPP protokoli).

Apskatiet iepriekš redzamos attēlus, lai labāk izprastu (a) sistēmas vispārējo struktūru un (b) 3 dažādas informācijas plūsmas mezglā-RED

7. solis: izaicinājumi, ierobežojumi un nākotnes plāni…

Izaicinājumi

Galvenie šī projekta izaicinājumi galvenokārt bija MQTT un Node-RED pakalpojumu apstrāde. Mēs vispirms izmantojām AdafruitIO, taču tā pielāgotā MQTT ieviešana mums nebija gluži laba. Nebija ērti strādāt ar tās "plūsmām" Node-RED iekšpusē. Tāpēc mēs galu galā izvēlējāmies CloudMQTT, kas balstīts uz Mosquitto MQTT serveri un ir daudz standarta. Tad mēs ķērāmies pie Node-RED apstrādes, kas bija diezgan izaicinoši, galvenokārt tāpēc, ka Node-RED ir zvērs. Piemēram, mūsu skatījumā tā ir daudz vispusīgāka un profesionālāka nekā IFTTT. Mums bija jāpielāgojas un jāiemācās izmantot uz plūsmu balstīto projektēšanas pieeju, lai izveidotu nepieciešamās sistēmas funkcijas. Turklāt viena no tās lielākajām priekšrocībām ir javascript koda atbalsts, taču bija vajadzīgs laiks, lai pierastu, jo mēs neesam javascript programmētāji. Neskatoties uz visu to, mums ļoti patika strādāt ar šo konkrēto rīku, un mēs to uzskatījām par ļoti interesantu un noderīgu.

Ierobežojumi

Attiecībā uz ierobežojumiem pirmais būtu fakts, ka mēs izmantojām tikai bezmaksas pakalpojumus, un tie neļaus pilnībā darboties. Bezmaksas CloudMQTT plāns neļaus izveidot vairāk nekā 5 paralēlus savienojumus, kas nozīmē, ka mums var būt tikai 4 atkritumu urnas un mezgls-RED. FRED Node-RED bezmaksas plāns ļauj izmantot tikai 24 stundas pēc kārtas, pēc tam jums ir jāpiesakās manuāli un jāatiestata taimeris. Tomēr šīs problēmas ir viegli atrisināmas, vai nu palaižot šos pakalpojumus uz vietas, vai arī samaksājot nedaudz papildus, lai atceltu ierobežojumus. Otrs ierobežojums ir fakts, ka, pievienojot ceturto atkritumu tvertni un turpmāk, viņam ir manuāli jārediģē logrīku plūsma mezglā RED, lai pievienotu atbilstošos logrīkus.

Plāni nākotnei

Mums bija dažas idejas, kā vēl vairāk uzlabot mūsu sistēmu un to paplašināt:

  1. Pārejiet uz bezmaksas mākoņa pakalpojumiem. (viena darba diena).
  2. Atkritumu kompresoram pievienojot atkritumu tvertni, tādējādi samazinot iztukšošanas biežumu. (4 mēneši darba)
  3. Darbs ar pilsētas un rūpniecības atkritumu tvertnēm, lai uzlabotu pilsētas kravas automašīnu, kas apkalpo atkritumus pilsētā, efektivitāti. Tas nozīmētu ievērojami uzlabot informācijas paneli un paziņojumu sistēmu, lai kravas automašīnu vadītāji varētu daudz labāk plānot savu maršrutu, rīkojoties ar atkritumiem. (6 mēnešu darbs).
  4. Atkritumu tvertnei tiek pievienotas pārstrādes iespējas, piemēram, iespēja ieliet atkritumos īpašus bioloģiskos šķīdumus un palīdzēt tos pārstrādāt, kamēr tie vēl atrodas atkritumu urnā. To var izmantot iekšzemē, piemēram, lai ražotu kompostu dārziem, bet to var izmantot arī rūpnieciskās kannās. (6 mēnešu darbs).

Ieteicams: