ReCap Uke 12 og 13

Tjohei!

De siste ukene har prosjektet virkelig falt på plass, og beta versjon er nå ferdig!

På API fronten er det nå gjort endringer til måten klientene kan interagere med systemet, det kreves nå en hemmelig API nøkkel som må til for å kryptere og decryptere innhold som kommer fra serveren!

Nettsiden har også blitt drastisk pusset opp med login-side, Capcount-Live, og Capcount-Feedback nå fungerende.

Nettsidene er begge offentlige og kan sees her:
https://capcountportal.azurewebsites.net/capcountlive/?5c92683ee97316002be1051b
https://capcountportal.azurewebsites.net/capcountfeedback/?5c92683ee97316002be1051b

Sensor enheten er også nå fungerende, etter mye arbeid med å få til kommunikasjon med mmWave, er det nå laget en applikasjon som kan lese data fra den og sende til databasen når det kommer personer.

Sensor enhet fungerer nå ved at det er laget ett API i c++ hvor man kan kommunisere med sensor-enhet, dette c++ programmet er blitt kompilert til en node modul hvor all prosessering av posisjonsdata foregår og om noen paserer sensor vil en oppdatering bli sendt til databasen.

Herman har også tegnet ett rikt bilde over hvordan systemet vil kunne komme til å fungere i ett reelt kontorlandskap.

 

Til neste uke blir prioritet å pusse opp det vi allerede har, samt å utvikle et grafpanel der man kan se statistikk fra de siste dagene/ukene grafisk.

 

Gruppe 7

 

ReCap Uke 11

Hei bloggen!

Forrige uke har gått med på å pusse opp litt rundt det vi alt har.
På API har vi nå implementert muligheten til å legge til brukere i systemet og skru av og på underseksjoner.
Det er også nå nødvendig med en hemmelig API nøkkel for å gjøre noen som helst forespørsler til API.

Med nettsiden er det også gjort arbeid for å få på plass ett graf-panel, hvor brukere kan se historikk grafisk fremstilt.

Med sensoren er det forsøkt å gjøre arbeid med kommunikasjon, planlagt for sensor enheten er å modifisere koden som er produsert av TexasInstruments for persontelling.

Texas Instruments har produsert kode for mmWave, hvor sensoren detekterer mennesker og sender denne informasjonen over USB til et Matlab program, vår plan fremover er å ta imot denne strømmen ment for matlab programmet og tyde dette.
Vi har tenkt til å gjøre dette på Raspberry Pi ved hjelp av C++, de tidligere ukene har vi forsøkt med Node, uten noen serlig hell.

Gruppe 7

 

ReCap Uke 9 og 10

Hei og hopp!

De siste to ukene har gått mye med på ferdigstilling av første utkast av hoveddokument.
Det er derfor forrige ukes ReCap slås samen med denne da vi ikke hadde så mye å vise til.

På nettside-fronten har vi kommet opp med mer plantegninger for hvordan nettsiden vil se ut.

Her ser dere en oppdatert versjon av UX-kartet som ble publisert i forrige ReCap.


Vi har også kommet med en wireframe, og oppdatert design til capcount-portalen som dere kan se over.

For mmWave sensoren er det gjort en del arbeid for å forstå hvordan den opererer og hvordan vi kan utvikle på den.
mmWave har en innebygd prosessor som kommer til å gjøre mesteparten av jobben med å detektere menneskene, mens raspberryPi, vil hovedsaklig fungere som ett mellomledd til API’et.
Her er en liten demo av mmWave som sporer ett menneske:

 

API’et er det også gjort arbeid på, tidligere har alle operasjoner til API’et medført ett kall til databasen, dette gjorde at vi endte opp med en del pengeforbruk på backendløsningen  vår.
Så hver gang sanntidspanelet skulle spørre API’et om hvor mange som befant seg i underseksjonen måtte API’et gjøre ett kall til databasen.
Nå har vi implementert en cache som sparer på den nyeste verdien, så sålenge en sensor-enhet ikke har økt antallet i underseksjonen vil API’et hente informasjonen fra cache i stedet for dataabasen.
Tidligere har vi vært veldig usikre på hvordan vi skulle løse det med å hente informasjonen til sanntidspanelet, man kunne ha satt opp at nettsiden spør API’et hvert minutt om hvor mange som befinner seg i underseksjonen, men dette ville tatt bort mye av hensiktet med ett sanntidspanel, at det skal være i sanntid.
Vi hadde også tenkt at nettsiden kunne spørre hver sekund eller mindre, men dette ville da medført skyhøye kostnader på databasen.
Løsningen vi hadde endt på var oprette en socket forbindelse mellom API’et og nettsiden, noe som gjorde at det er API’et som informerer nettsiden om oppdateringer, vi vil nok fortsatt gå for denne løsningen, men inntil videre vil vi kunne spørre API’et hver sekund uten nevneverdig økte kostnader!

Gruppe 7

 

ReCap uke 8

Jippi!

Fungerende Alpha versjon nå oppe og kjøre.
Nå er alle komponenter fungerende og kommuniserer sammen.
Det er satt opp en enkel nettside som viser hvor mange mennesker som befinner seg i underseksjonen.

 

Sensor-enhet er også satt opp til å kunne øke antallet som befinner seg i underseksjonen fra raspberry pi zero.

Her kan dere se at på raspberry pi enheten sender vi en «increment» kommando til databasen, og nettsiden automatisk oppdaterer antallet i underseksjonen.

 

For fremtiden har vi laget ett UX-kart over hvordan vil vil at brukeren skal interagere med nettsiden.

Som dere kan se vil funksjonaliteten foregå på en hovedside som vi kaller CapCount-portalen, her vil man få litt forskjellige valg utifra om man er administrator eller vanlig bruker.
Alle valgene dere kan se under adminpanel vil være forbeholdt administratorer.

For å sette opp ett feedback panel eller ett live panel, vil man muligens måtte generere en nøkkel som vil brukes for å autentisere enheten som applikasjonen skal være på.
Dette er for å unngå at en enhet som står uten oppsyn skal være logget inn på noens brukerkonto, da vil enheten ikke ha mulighet til å endre noe i databasen, kun oppdatere eksisterende tilfredshet og telle-data.
Dette er noe vi er ekstremt usikre på hvordan vi bør løse og skal ta en prat med Tom-Heine Nätt i løpet av uka.

Til neste uke vil målet være å få opp ett skjelett på nettsiden, man skal kunne navigere seg gjennom UX-kartet, og vi vil gjerne ha historikkpanelet oppe og kjøre.
På databasen skal det settes opp mulighet for tilfredshetdata.
Og på sensor-enheten skal det uforskes mer rundt dette med kommunikasjon med mmWave sensoren.

Gruppe 7

 

ReCap uke 7

Forrige uke ble det jobbet mye med databaseoppsett, nå har vi en fungerende database med enkle CRUD operasjoner på det meste av innhold. Man kan oprette seksjoner og underseksjoner, og man kan incremente antall mennesker som befinner seg i disse seksjonene.

For nettsidene vi skal lage har vi kommet opp med en liste over hva vi skal lage.
Planen er å ha ett hovedpanel, som vi har kalt Capcount portal, hvor ansatte kan logge inn og få opp en rekke funksjoner de kan gjøre på databasen.
For eksempel oprette underseksjoner, legge til sensorer, hente ut historiske data og skru av og på systemet. Disse funksjonene vil bli delt opp i forskjellige rettighetsnivåer, hvor det er kun administratorer som har lov til å gjøre visse funksjoner.
Her en en skisse på hvordan dette panelet skal se ut.

Utenom dette skal vi ha ett sanntidspanel, hvor man kan spesifisere en underseksjon og deretter få oversikt over hvor mange som befinner seg i den underseksjonen i sanntid.
En skisse på dette lagde vi for noen uker siden og du kan se den i blogginnlegget, capcount en prosjektfødsel.

Den siste nettsiden som skal lages er en side hvor ansatte skal kunne rapportere sin tilfredshet med arbeidsdagen, denne kommer mest sansynlig til å være på ett nettbrett ved en av utgangene til lokalet. Planen nå er at denne skal ha fem knapper hvor hver av dem representerer ett tilfredshetnivå fra ikke tilfreds til veldig tilfreds.  Denne har vi ikke enda kommet med noe utkast til.

 

Siden sist uke har vi også vært i kontakt med statens strålevern angående helserisikoene ved en mmWave sensor. Her er hva de hadde å si.

Grenseverdien for frekvensene du viser til er 10W/m2. Det betyr at effekten ikke skal være høyere der mennesker blir eksponert. Eneste dokumenterte helseeffekt ved denne frekvensen er oppvarming av vev. Denne frekvensen vil ha liten gjennomtrengningsevne, så det er overflateoppvarming (hud og øyne) som er aktuelt .

Heldigvis for oss har en mmWave sensor en effekt på max ca 16mW, dette tilsvarer ca 1/1000000 av grenseverdien, noe som er godt innenfor hva vi ser som akseptabelt.

mmWave er også oppe og kjører, vi traff på en liten hindring da det ikke fulgte med strømforsyning i developer settet, men 45 minutter på makerspace løste dette da vi lagde vår egen strømforsyning.

 

Til neste uke er planen å prøve å få en fungerende alpha sammen, i det ligger at vi vil få kommunikasjon mellom alle leddene i systemet, raspberry pi skal kunne sende til databasen at noen har gått inn i lokalet, databasen skal oppdatere dette, og en enkel nettside skal vise hvor mange som befinner seg i lokalet.

Gruppe 7

 

ReCap uke 6

Hei, her er en liten statusoppdatering på gruppa!

De siste ukene har vi arbeidet med kravspesifikasjon til prosjektet, samt å utarbeide user-stories og use-cases.
Her er funksjonaliteten gruppen mener prosjektet skal inneholde.

Mye av tiden går med å å definere hvordan dashbord og systemet skal fungere.

Dette er en skisse på hvordan telle-funksjonaliteten vil fungere i praksis

 

Vi har også endelig mottatt mmWave sensoren, så fremover vil det forhåpentligvis komme blogginnlegg med noen kule demonstrasjoner om hva denne sensoren er kapabel til.

Fremover vil det komme ukentlige bloggoppdateringer hvor vi gir en liten ReCap av hva som ble gjort den forrige uken, og hva målet for uken vil være.

Til neste uke er planen å ha en grovskisse for webpanelene, og forhåpentligvis på Azure, og ha grunnleggende funksjoner for database-operasjoner. Målet fremover de neste 3 ukene er å få til ett system hvor alle komponentene(database,API,nettside, og sensor-enhet), kan kommunisere sammen.

Gruppe 7

 

Forrapport på plass

Da var forrapporten på plass og hele gruppen er ivrige på å få begynt på utviklingsfasen av prosjektet.

Forrapport_CapCount

 

Capcount, en prosjektfødsel

Da var nettside oppe og går, og prosjektet smått begynt.

Vårt bachelorprosjekt i samarbeid med capgemini Fredrikstad vil gå i hovedsak ut på å telle antall mennesker som kommer og går på kontoret.
Prosjektet er i hovedsak tredelt, men en sensorordning som ligger backend for å telle menneskene, en database med ett API interface, og ett frontend dashboard.

Fremover de neste ukene vil det bli gjort research av hvilke teknologier som kunne vært fornuftig å bruke på disse postene.

En løsning vi har sett på for detektering av menesker er en veldig kul  sensor fra Texas Instruments, AWR1642BOOST. Denne fungerer ved hjelp av 80GHz frekvenser som da tilsvarer radarbølger. Dette er en veldig liten sensor og siden den fungerer på såpass høye frekvenser vil den kunne «se» mennesker gjennom tynn plastikk om vi vil 3d printe en slags boks til sensoren. Her er en liten oversikt over hva denne sensoren kapabel til å gjøre http://www.ti.com/sensors/mmwave/iwr/applications/applications.html

Backend er planen å kjøre en node server, sette opp muligheten for API calls for foreksempel å incremente og decremente telleren, gjøre spørringer på hvor mange mensker som er på kontoret nå, og hvor mange som har vært der innenfor en spesifik tidsperiode. Dette må selfølgelig krypteres i trafikken og settes opp så det krever API nøkler for å kunne forespørre data.

På frontend vil vi ha ett simpelt dashboard hvor det skal være lett å se hvor mange som befinner seg på kontoret, her er planen å utforske litt nye web teknologier som React eller Vue. Her er en tidlig sketch av hvordan dashboardet kan se ut: