M2M solution
Skolen har akkurat flyttet inn i nytt bygg og vi har opplevd at luften noen ganger er dÄrlig i klasserommene. MÄlet for eksamen i M2M er Ä ende opp med noe som kan bli en permanent lÞsning for Ä overvÄke lÊringsmiljÞet, slik at man pÄ sikt kan fÄ det bedre. Dataene som lÞsningen samler inn skal brukes av elevene pÄ M2M faget, men ogsÄ av Driftsavdelingen og andre linjer ved skolen. Det mÄ derfor publiseres pÄ en plattform som er enkelt tilgjengelig for alle som Þnsker tilgang. Sensor-nodene skal samle inn data om temperatur, fuktighet, lysnivÄ, bevegelse og CO2-nivÄ mÄlt i PPM. à sÞrge for at sensorene produserer riktige data er en del av oppgaven, sÄ om man trenger Ä gjÞre kalibrering eller andre tilpasninger mÄ dette dokumenteres. Hvordan man tenker Ä bygge og plassere nodene bÞr ogsÄ dokumenteres.
Sensor-noden skal lages med enten LoRa radio eller Particle Photon:
- Velger man LoRa radio, mÄ man skrive en liten Gateway som kan sende dataene videre til internett. Om noen av dere trenger Ä lÄne en ekstra LoRa radio som Gateway, gi meg beskjed sÄ snart som mulig. Det er ikke krav om Ä bruke PubSub for LoRa, da jobbing med Gateway er forventet Ä ta litt ekstra tid.
- Velger man Particle Photon mÄ man basere klienten pÄ en PubSub lÞsning (f.eks. MQTT). Du mÄ argumentere for hvorfor du velger den ene fremfor den andre lÞsningen. Det at vi har mer erfaring med Photon bÞr ikke vÊre et argument. I tillegg til en radio, skal man ha med fÞlgende sensorer i noden:
- DHT11 sensor
- Photoresistor
- PIR sensor
- MH-Z19 CO2 sensor (ikke MQ7 som er en CO-sensor!)
Sensor-nodene skal rapportere og lagre dataene pÄ en valgfri skytjeneste. Det skal lages en klient som bÞr fungere pÄ enten mobil eller stasjonÊr PC. Her skal man kunne lese av status for mer enn ett rom og det bÞr ogsÄ vÊre mulig Ä kunne se historiske data. Klienten bÞr minimum ha en grafisk fremstilling av dataene over tid.
Det mÄ lages en trinnvis dokumentasjon for hvordan man setter opp bÄde klient og server. Denne skal vÊre enkel Ä fÞlge for en som ikke har samme erfarings-grunnlag som vi har bygget opp i lÞpet av skoleÄret. Den dere skriver dokumentasjonen for er altsÄ en som ikke har brukt Photon eller LoRa Feather noe sÊrlig fÞr. Alle valg av tjenester mÄ begrunnes og det mÄ dokumenteres hvordan lÞsningen skal kunne skaleres til Ä dekke bÄde Fjerdingen og Vulkan Campus.
Utover selve oppgaven skal det leveres dokumentasjon og kode som beskriver:
- Sensornode m/nĂždvendige biblioteker
- Skytjeneste
- Klient
- Skalering av lĂžsningen utover en enkelt node
- Sikkerhet
- Valg av radio-lĂžsning
Dokumentasjonen skal inneholde en video som viser hele lÞsningen i bruk. Den skriftlige dokumentasjonen bÞr vÊre sÄpass god at andre skoler ogsÄ kan sette opp en tilsvarende lÞsning. OBS!
Sensor-delen av denne oppgaven har dere langt pÄ vei allerede gjort, men det holder ikke Ä lagre data til Particle Cloud. Denne oppgaven bygger videre pÄ den fÞrste og mÄlet er at dere har bygget en komplett ende til ende implementasjon av et sensor-nettverk. Hvis dere skrev god dokumentasjon pÄ sensor-noden i Oppgave 1, kan dere gjerne gjenbruke noe av dette, men bÄde klient og server-lÞsning er annerledes og mÄ dokumenteres skikkelig. I tillegg skal kommunikasjonen med server-tjenesten vÊre annerledes enn i forrige lÞsning, sÄ det bÞr vÊre litt av hvert Ä bryne seg pÄ her!