Indholdsfortegnelse:

IDC2018IOT GarbageCan-Online: 7 trin
IDC2018IOT GarbageCan-Online: 7 trin

Video: IDC2018IOT GarbageCan-Online: 7 trin

Video: IDC2018IOT GarbageCan-Online: 7 trin
Video: IoT Full Course - Learn IoT In 4 Hours | Internet Of Things | IoT Tutorial For Beginners | Edureka 2024, Juli
Anonim
Image
Image
Nødvendige dele
Nødvendige dele

Introduktion

Alle ved, hvad der sker, når vi forlader skraldespanden for længe uden at fjerne det. Det mest oplagte er, at der ikke er plads til mere skrald, men det begynder også at stinke, og det bliver meget ubehageligt.

Med dette projekt har vi til formål at hjælpe dig med at overvåge dine skraldespande rundt i huset / arbejdsområde / etc, så du altid kan vide, hvornår de er fulde, og kan tage øjeblikkelig handling ved at tage skraldespanden ud.

Systemet advarer dig via telefonmeddelelse eller dashboard -advarsel om, at du skal tømme skraldespanden. Systemet tager højde for skraldespandens fylde, men også den temperatur og luftfugtighed, der er målt inde i det. Vi kender alle til, hvor vigtigt det er at tømme skraldespandene i varme og fugtige dage …

Hovedtræk

  1. Overvågning Dashboard:

    • Hovedsektion:

      • Fyldighedsniveau for hver skraldespand.
      • Temperatur og fugtighed i hver skraldespand.
    • Statistikafdeling:

      • Fuldeste skraldespand.
      • Varmeste skraldespand.
  2. Advarsler og meddelelsessystem:

    • Følgende begivenheder understøttes:

      • Skraldespanden er fuld.
      • Der opstod en sensorfejl.
    • Fuldhedsadvarsler tager højde for skraldespandens fylde, men også skraldespandens temperatur og fugtighedsniveauer.
    • Underretninger kan sendes via telefonmeddelelser og advarsler om dashboard.
    • Hver alarmkanal kan tændes og slukkes via instrumentbrættet.
  3. Skalerbarhed:

    • Ved hjælp af kalibreringsknappen er det muligt at justere systemet til forskellige skraldespande med varierende kapacitet.
    • Det er relativt let at tilføje flere skraldespande. Man kan samle det samme system på en ny skraldespand, indstille skraldespandens ID og kalibrere det (tryk på en knap). At have mere end 3 skraldespande vil kræve forlængelse af instrumentbrættet (let opgave at udføre).

Hvem er vi?

Dette projekt blev oprettet (med kærlighed og engagement!) Af Rom Cyncynatus og Daniel Alima - Studerende ved IDC Herzliya som et afsluttende projekt til vores IoT -kursus. Vi håber, at du vil finde vores arbejde nyttigt og nyde det!

Trin 1: Påkrævede dele

For at bygge systemet får du følgende komponenter og dele:

  1. Skraldespand (helst med låg): Dette vil blive brugt til … ja.. ved du hvad vi skal gøre med denne, ik?;)
  2. Breadboard: Til tilslutning af alle de forskellige komponenter uden brug af lodning.
  3. NodeMCU (ESP-8266): Ansvarlig for at læse sensorerne og sende informationen til skyen.
  4. Distance IR -sensor - Sharp 0A41SK: Denne sensor måler mængden af affald (Fyldighedsniveau) inde i dåsen.
  5. Temperatur- og fugtighedsføler - DHT11: Denne sensor måler temperatur og fugtighed inde i skraldespanden.
  6. Momentary Switch: Vil blive brugt til at kalibrere afstandssensoren i henhold til skraldespandens størrelse.
  7. Aluminiumsfolie: Vil blive brugt til at danne en detektor for lågets status - uanset om den åbnes eller lukkes.
  8. Jumperwires: Få masser, og i forskellige længder og farver. Vil forbinde alt sammen.
  9. Kanaltape: Vi bliver nødt til at fastgøre tingene på plads.
  10. Micro-USB-kabel: Til tilslutning af NodeMCU til din computer til programmering og senere til en strømforsyning.
  11. USB -strømforsyning (smartphone -oplader): Leverer strøm til NodeMCU, når den er installeret på skraldespanden.

Trin 2: Ledningsføring og samling

Ledninger og samling
Ledninger og samling
Ledninger og samling
Ledninger og samling
Ledninger og samling
Ledninger og samling

Ledninger

Placer NodeMCU på brødbrættet, så det vil være praktisk at vedhæfte det senere til din skraldespand, og tilslut USB -kablet til det. Se derefter billedet af ledningsdiagrammet ovenfor for at forbinde de forskellige komponenter til NodeMCU. Sørg for at bruge lange ledninger til sensorerne og statustrådene, så det vil være praktisk at installere systemet og bruge skraldespanden med det.

  • Afstands IR -sensor - Sharp 0A41SK:

    • Vin (rød) Vin
    • GND (sort) GND
    • Vout (gul) A0
  • Temperatur- og luftfugtighedssensor - DHT11:

    • Vin (rød) 3V3
    • GND (sort) GND
    • DATA (gul) D4
  • Momentary Switch:

    • Pin1 D3
    • Pin2 GND
  • Lågstatus (åbne / lukke) ledninger:

    • Wire1 D2
    • Wire2 GND

montage

Det er ganske enkelt at samle systemet på skraldespanden. Fastgør brødbrættet til skraldespanden, helst tæt på låget. Brug enten tape eller kabelbinder til at fastgøre det på plads. Derefter:

  1. Placer IR -afstandssensoren i midten af låget (fra indersiden!). Sørg for at sikre den ordentligt, ellers støder du på falske aflæsninger!
  2. Placer temperatur- og fugtighedsføleren et sted inde i skraldespanden. Fastgør med tape.
  3. Dæk siden af låget og spidsen af skraldespanden med aluminiumsfolie. Sørg for god kontakt, når låget er lukket. Dette vil signalere systemet om, at skraldespanden åbnes eller lukkes. Stik derefter hver af lågets statusledninger i en af aluminiumsfolien, og fastgør med tape.

Trin 3: Opsætning af MQTT, Node-RED og IFTTT

Opsætning af MQTT, Node-RED og IFTTT
Opsætning af MQTT, Node-RED og IFTTT
Opsætning af MQTT, Node-RED og IFTTT
Opsætning af MQTT, Node-RED og IFTTT
Opsætning af MQTT, Node-RED og IFTTT
Opsætning af MQTT, Node-RED og IFTTT

Det meste af projektlogikken er faktisk implementeret i skyen. NodeMCU sender dataene til MQTT-serveren, og Node-RED forbruger dem og anvender sin logik på den (mere om arkitekturen længere fremme). Til sidst brugte vi IFTTT for at overføre push -meddelelser (advarsler) til vores smartphone.

Vi vil bruge CloudMQTT og FRED cloud-tjenesterne som henholdsvis vores MQTT- og Node-RED-servere, og vi vil bruge IFTTT til push-notifikationer.

  1. Tilmeld dig CloudMQTT med den gratis plan. Noter dine legitimationsoplysninger til MQTT -serveren (brugernavn og adgangskode).
  2. Tilmeld dig IFTTT. Opret en ny applet med "Webhooks IFTTT app notification". Brug "Mobiltelefonmeddelelse" som WebHookds -begivenhedsnavn. Se billedet ovenfor for detaljerede detaljer. Bemærk din maker API -nøgle.
  3. Download IFTTT -appen til din telefon, og log ind med dine legitimationsoplysninger. Dette giver dig mulighed for at få push -meddelelser.
  4. Tilmeld dig FRED med den gratis plan.
  5. Når du har FRED -forekomsten i gang, skal du importere de vedhæftede strømme til den (3 søjler knap Importer fra udklipsholder). Bare indsæt indholdet i hver fil (widgest.json, alerts.json, statistics.json) og importer den.
  6. Rediger en af MQTT -noder (en er nok) for at opdatere dine CloudMQTT -legitimationsoplysninger.
  7. Rediger IFTTT -noden for at opdatere din IFTTT maker API -nøgle.

Trin 4: Programmer kalibrering af NodeMCU og skraldespandskapacitet

Når vi har fået alt tilsluttet, skal vi programmere NodeMCU'en med den relevante software (skitse), så den rent faktisk vil udnytte alle de ting, der er forbundet til den, og kommunikere med internettet.

  1. Download og installer Arduino IDE herfra.
  2. Installer og indstil NodeMCU -korttypen som forklaret i begyndelsen af følgende instruktioner.
  3. Installer følgende biblioteker (Sketch Include Library Manage Libraries …):

    1. Adafruit MQTT Library (af Adafruit)
    2. DHT -sensorbibliotek (af Adafruit)
    3. SharpIR (af Giuseppe Masino)
    4. EEPROMAnything - forklaring her.
  4. Åbn filen GarbageCanOnline.ino, og opdater følgende:

    1. Dine WiFi -legitimationsoplysninger (WLAN_SSID, WLAN_PASS)
    2. Dine CloudMQTT -legitimationsoplysninger (MQTT_USERNAME, MQTT_PASSWORD)
    3. Hvis dette er en anden skraldespand eller mere, skal du ændre affaldsbeholderens ID (GARBAGECAN_ID)
  5. Upload den opdaterede skitse til din NodeMCU.
  6. Åbn det serielle monitorvindue (Ctrl+M), og sørg for, at det formår at offentliggøre sensordata til CloudMQTT.
  7. Når låget nu er lukket, og skraldespanden er tom, skal du trykke længe på kalibreringsknappen for at kalibrere skraldespandskapaciteten.
  8. Skraldespanden er klar. Du kan afbryde forbindelsen til din computer og tilslutte den til den angivne placering ved hjælp af USB -strømforsyningen.

Trin 5: Brug af systemet

Brug af systemet
Brug af systemet
Brug af systemet
Brug af systemet
Brug af systemet
Brug af systemet

Hvis du er nået så langt, skal alt være i gang. Lad os få et hurtigt overblik over systemets forskellige anvendelsesaspekter.

Vi går ud fra, at du kun har tilsluttet en enkelt skraldespand, men det er let at tilføje mere senere!

Bemærk først hoveddashboardet. Du skal være på startskærmen og se skraldespandets fylde, temperatur og fugtighedsniveauer. Du kan styre telefonmeddelelser og betjeningspaneladvarsler ved hjælp af kontakterne til venstre.

Når affaldsmængden inde i skraldespanden ændres, vil du se måleren ændre sig i overensstemmelse hermed. Dette er også tilfældet for temperatur- og fugtighedsgraferne.

Når fuldhedsniveauet når 85% -90% (den nøjagtige tærskel afhænger af temperaturen og luftfugtigheden), eller der er opstået en sensorfejl, får du en meddelelse via dine foretrukne metoder. Du får besked en gang hver time pr. Skraldespand.

I visningen Statistik vil du kunne se den aktuelt mest fyldte skraldespand og den hotteste. Smigrende titel, hvis vi må sige …

Trin 6: Forstå strømmen

Forstå strømmen
Forstå strømmen
Forstå strømmen
Forstå strømmen
Forstå strømmen
Forstå strømmen
Forstå strømmen
Forstå strømmen

Som du sikkert nu har bemærket, har systemet mange "bevægelige dele". Vi vil forsøge at præcisere, hvordan tingene hænger sammen.

For det første har vi vores skraldespand med NodeMCU og dens sensorer. Vi kan have masser af dem - bare "kopier" af hinanden.

NodeMCU måler de forskellige sensorer, der er placeret i skraldespanden, og offentliggør dataene til MQTT -serveren (MQTT -protokol). Du kan tænke på MQTT -serveren som en stor informationsudveksling, som mange skraldespande kan rapportere deres oplysninger til.

En anden enhed, der opretter forbindelse til MQTT-serveren, er Node-RED. Node-RED lytter til de forskellige meddelelser, der kommer fra skraldespandene, der bærer de sensoriske data, og anvender sin logik på dem. Det fungerer ved at udnytte "informationsstrømme". Hver gang en besked modtages, baseret på dens type (MQTT -emne), går den ind i specifikke operationskæder, der ender med at aktivere de forskellige funktioner i systemet (opdatering af instrumentbrættet, afsendelse af advarsler osv.) Det ville være meget korrekt at sige at Node-RED er systemets "hjerne". Det er opmærksom på alt, hvad der sker overalt, og kan tage handlinger i overensstemmelse hermed.

Inde i Node-RED har vi konstrueret 3 hovedinformationsstrømme:

  1. Widgets - Sensoriske oplysninger, der indføres i Node -RED, vises derefter på instrumentbrættet via målere og grafer.
  2. Advarsler - Sensoriske oplysninger behandles for at konkludere, om en advarsel skal udløses (på instrumentbrættet eller til smartphone -appen). Fyldighedsniveauet, med temperatur og fugtighed, tages i betragtning for at beslutte at informere brugeren om, at skraldespanden er fuld. Også sensoriske fejl rapporteres af det samme flow.
  3. Statistik - Sensoriske oplysninger aggregeres for at vise de fyldigste og hotteste skraldespande.

For at Node-RED kan sende push-meddelelse, opretter den forbindelse til en tjeneste kaldet IFTTT (ved HTTP-protokol). Det aktiverer en bestemt IFTTT -hændelse med den relevante meddelelsestekst, og IFTTT sender meddelelsen til vores smartphone (HTTP & XMPP -protokoller).

Se billederne ovenfor for bedre at forstå (a) systemets generelle struktur og (b) de 3 forskellige informationsstrømme inde i Node-RED

Trin 7: Udfordringer, begrænsninger og planer for fremtiden …

Udfordringer

De største udfordringer i dette projekt var for det meste håndtering af MQTT- og Node-RED-tjenesterne. Vi brugte først AdafruitIO, men dets tilpassede MQTT -implementering var ikke helt god for os. Det var ikke praktisk at arbejde med sine "feeds" inde i Node-RED. Derfor valgte vi til sidst CloudMQTT, som er baseret på Mosquitto MQTT -serveren, og er meget mere standard. Derefter gik vi videre til at håndtere Node-RED, hvilket var ret udfordrende, mest fordi Node-RED er et dyr. For eksempel er det meget mere omfattende og professionelt end IFTTT i vores synspunkt. Vi var nødt til at justere og lære at bruge den flowbaserede designmetode til at konstruere vores nødvendige funktioner i systemet. Desuden er en af dens største fordele understøttelse af javascript -kode, men det tog et stykke tid at vænne sig til, da vi ikke er javascript -programmører. På trods af alt det nød vi virkelig at arbejde med dette særlige værktøj, og vi fandt det meget interessant og nyttigt.

Begrænsninger

Med hensyn til begrænsninger ville den første være den kendsgerning, at vi kun brugte gratis tjenester, og de tillader ikke at gå i fuld skala. CloudMQTT gratis plan tillader ikke at have mere end 5 parallelle forbindelser, hvilket betyder at vi kun kan have 4 skraldespande og Node-RED. FRED Node-RED gratis plan tillader kun 24 timers direkte brug, hvorefter du manuelt skal logge ind og nulstille timeren. Disse problemer kan dog let løses ved enten at køre disse tjenester lokalt eller betale lidt ekstra for at løfte begrænsningerne. Den anden begrænsning er det faktum, at når man tilføjer den fjerde skraldespand og fremefter, skal han manuelt redigere widgetsflowet i Node-RED for at tilføje de relevante widgets.

Planer for fremtiden

Vi havde nogle ideer til yderligere at forbedre vores system og udvide det:

  1. Gå videre til ikke-gratis cloud-tjenester. (enkelt arbejdsdag).
  2. Tilføjelse af en affaldskompressor til skraldespanden, hvilket reducerer hyppigheden af tømning. (4 måneders arbejde)
  3. Arbejde med by- og industrielle skraldespande for at forbedre effektiviteten af bybilerne, der håndterer skraldespanden i byen. Dette ville betyde en væsentlig forbedring af instrumentbrættet og meddelelsessystemet, så lastbilchauffører kan planlægge deres rute meget bedre, når de håndterer skraldespanden. (6 måneders arbejde).
  4. Tilføjelse af genbrugsevner til skraldespanden, ligesom evnen til at hælde specielle biologiske løsninger i skraldespanden og hjælpe med at genbruge det, mens det stadig er inde i skraldespanden. Dette kan bruges indenlands for eksempel til at producere kompost til haver, men kan klart også bruges på industrielle dåser. (6 måneders arbejde).

Anbefalede: