Sisällysluettelo:
- Vaihe 1: Tarvittavat laitteet ja protokollat
- Vaihe 2: Yhdistä mikrofoni ja PIR -anturi
- Vaihe 3: Luo työnkulku Zapierissa
- Vaihe 4: Google Scripts
- Vaihe 5: Yhdistä virtaus Arduino -koodilla
- Vaihe 6: Katsaus, johtopäätökset ja tuleva skaalaus
Video: IDC2018IOT: Kokoushuone Snitcher: 6 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
ONGELMA
Kuten tiedämme, yhteistyötilojen trendi on kiihtynyt viime vuosina, ja huipputekniikka määrittelee tarpeisiisi sopivan yhteistyötilan valinnan.
Yksi tärkeimmistä tarjotuista ominaisuuksista on yhteistilahuoneet, joita tarjotaan yhteistyötilan jäsenille, ja jota hallinnoi (yleensä) yksinkertainen kalenterialusta.
Ongelma toistuu, kun ihmisten aikataulu on yleensä dynaaminen.
Voisi varata huoneen ajattelemalla, että hän saattaa tarvita sitä eikä halua missata aikaväliä.
Vaikka kukaan ei lopulta käyttäisi tätä aikaväliä, hän ei vaivaudu ilmoittamaan ja peruuttamaan sitä muiden vuoksi, koska se on valitettavasti ihmisluonto.
MITEN RATKAISEMME SEN?
Käytämme IoT -tekniikkaa - tarkistaaksemme äänen ja liikkeen määrätyssä kokoushuoneessa - tarkistamme jokaisen tietyn aikavälin jälkeen, onko huone varattu ja todella varattu vai ei:
1. Jos se ei ole varattu, älä tee mitään.
2. Jos se on varattu, tarkista, havaitaanko liikettä tai ääntä.
Jos on, älä tee mitään.
Jos mitään ei havaittu, lähetä varoitusviesti (sähköpostitse) huoneen varanneelle käyttäjälle, joka kysyy, onko huone edelleen käytössä. ellei käyttäjä ilmoita käyttävänsä edelleen huonetta, huoneen tilaksi muutetaan "Saatavilla".
* Täällä integroimme projektimme Google -kalenteriin yleistääksemme sen mahdollisimman paljon.
Vaihe 1: Tarvittavat laitteet ja protokollat
1. Käytimme NOSEMCU: ta, jotta voisimme päivittää asioita dynaamisesti WIFI -yhteyden avulla.
2. Mikrofonianturi, joka "lukee" huoneen melun.
3. PIR -anturi, joka tarkistaa, onko liikettä.
Ohjelmisto- ja palvelinkäyttöön käytimme Arduinon koodin lisäksi Google Scriptiä ja Zapieria tukemaan järjestelmäämme verkossa. Näet kulun lisätyssä kuvassa (ja PDF -tiedostossa).
Käytimme Zapieria sovellusten yhdistämiseen ja työnkulkujen automatisointiin (kuten IFTTT) ja Google Scriptin avulla kommunikoimaan Google -kalenterin kanssa. Kirjoittamamme skripti tuottaa tapahtuman tekijän sähköpostin, jotta voimme lähettää sen lähettäen Zapierin ja tarkistaa, onko käyttäjä pyytänyt pitämään huoneen (tallentamalla joitain tietoja Google Sheetsiin) ennen tapahtuman poistamista.
Vaihe 2: Yhdistä mikrofoni ja PIR -anturi
Halusimme tarkistaa keskimääräiset arvot, jotka mikrofoni lähettää NODEMCU: lle, kun ihmiset puhuvat (selvästi, jokaisessa huoneessa oli erilaiset taustaäänet). Teimme joitain testejä ja huomasimme, että keskimääräinen melutaso on huone, jossa työskentelimme, on jossain yli 50.
PIR -anturi antaa vain HIGH tai LOW -arvoja, joten tarkistimme vain sen herkkyyden tason, joka on tarkin tarkastamaamme huoneeseen. Tämä opas oli varsin hyödyllinen.
YHTEYDEMME:
Mikrofoni - kuten kuvassa PIR -anturi: GND> GND, OUT> D7, VCC> VN (5V)
Vaihe 3: Luo työnkulku Zapierissa
Jotta voimme tietää, onko huone todella tyhjä vai edelleen käytössä (ja käyttäjät ovat esimerkiksi tauolla), haluamme luoda sen varmistavan virran heti sen jälkeen, kun NodeMCU laukaisee Webhookin Zapierille, joka ilmoittaa, että huone on tyhjä:
(1) TRIGGER - CATCH HOOKZapier saa Webhookin (jonka NODEMCU lähettää)
(2) TOIMINTA - GETZapier lähettää toisen Webhookin hakemaan tapahtumatiedot;> Se kutsuu (suorittaa) GoogleScriptin - GetCurrentEmailEventID (selitys seuraavassa vaiheessa) saadakseen nykyisen tapahtuman tiedot - tapahtuman nimen, tapahtumatunnuksen, käyttäjän sähköpostin.
(3) SUODATIN - JATKA VAIN JOS
Jatka seuraavaan vaiheeseen vain, jos kalenterissa on tapahtuma (mikä tahansa tapahtuma) (ROOM IS BUSY), muuten pysähtyy, koska huone on tyhjä.
(4) TOIMINTA - GMAILZapier lähettää sähköpostiviestin Gmailin kautta huoneen varanneelle käyttäjälle (sai nämä tiedot vaiheessa 2)
(5) TOIMENPITEET - VIIMEISTELY Anna käyttäjälle aikaa vastata sähköpostiin. - Jos käyttäjä napsauttaa linkkiä: soita (suorita) GoogleScript - ApproveCurrentEvent (Siksi huone poistetaan poistettavista huoneista -luettelosta ja huone on edelleen merkitty varattuksi.)
(6) TOIMINTA - HANKI 5 minuutin kuluttua Zapier soittaa (suorittaa) GoogleScriptin - DeleteCurrentEvent- Jos käyttäjä ei napsauttanut linkkiä
Tarkista, onko huonetunnus poistettavien huoneiden luettelossa
se vain poistaa tapahtuman.
Vaihe 4: Google Scripts
Kun integroimme koko järjestelmän, GoogleScripts oli IDE: n triviaali valinta, joten käytimme asiaankuuluvia Google -kirjastoja. Muuttuisi huoneen varausalustan mukaan.
(1) GetCurrentEmailEventID
Toimii Webhook -puhelun avulla.
Tietyn poikkeaman käyttäminen mahdollisen virheen peruuttamisen poistamiseksi, nykyisten tapahtumatietojen saaminen.
(2) ApproveCurrentEvent
Toimii käyttäjän napsautuksella.
Jos käyttäjä hyväksyy, että huone on edelleen käytössä, se poistaa tapahtumatunnuksen poistettavista huoneista. Käytimme Google -taulukkoa, mikä tahansa muu luettelomuoto voisi olla osuva tässä.
(3) DeleteCurrentEvent
Toimii Webhook -puhelun avulla.
Etsii asianomaista tapahtumatunnusta luettelosta (Google -taulukko) ja poistaa tapahtuman kalenterista.
Vaihe 5: Yhdistä virtaus Arduino -koodilla
Liitteenä oleva koodi yhdistää anturit, jotka tarkistimme muutama vaihe sitten online -järjestelmään (Google -kalenteri meidän tapauksessamme). Se tarkistaa, onko huone varattu, ja sitten, jos ei, se lähettää HTTP -pyynnön (Webhook), joka käynnistää Zapier -tapahtumapyyntöpyynnön.
Vaihe 6: Katsaus, johtopäätökset ja tuleva skaalaus
Suurin haaste, joka meidän oli käsiteltävä, on kattaa kaikki reuna -asiat päätettäessä vapauttaa kokoustila. Meidän oli sitten luotava tilakone, joka huomioi kaikki mahdolliset tapaukset siten, että virhe ei tapahdu ja huone asetetaan saataville vain silloin, kun sen pitäisi.
Jos huone on esimerkiksi varattu jollekin ryhmälle, joka ei ole tällä hetkellä paikalla (esimerkiksi tauolla), mutta silti tarvitsee sitä, NODEMCU havaitsee, että huone on vapaa> ONGELMA.
Ratkaisumme oli sitten lähettää sähköpostitse huoneen varanneelle käyttäjälle (mikä ei ollut yksinkertaista selvittää) viesti, joka tarjoaa mahdollisuuden jatkaa huoneen pitämistä.
Jos käyttäjä ei vastannut tietyssä ajassa (asetimme sen 5 minuutiksi, mutta se voidaan muuttaa helposti), poistamme tapahtuman kalenterista (ja vapautamme huoneen).
Tällä tavalla onnistuimme lopulta käsittelemään kaikki mahdolliset skenaariot ja luomaan toimivan järjestelmän.
JÄRJESTELMÄN RAJOITUKSET:
1. Käytettyjen antureiden on oltava erittäin tarkkoja ja herkkiä.
2. Huoneen koko on rajoitettu anturin säteelle/alueelle.
3. Meidän on luotettava käyttäjien reagointikykyyn.
4. Järjestelmämme on rakennettu useilla alustoilla (Google -kalenteri, Gmail, Zapier jne.), Ja sen on käytettävä palveluaan.
5. Tämän palvelun skaalaaminen useisiin huoneisiin (koko järjestelmän päällekkäisyyksien sijasta) vaatii lisäkäsittelyn huoneen tunnuksella.
6. Järjestelmä on vain automaattinen, eikä huonevarauksen peruuttamiseen ole manuaalista vaihtoehtoa.
TULEVAISUUDEN KEHITYS:
Haluamme varmasti laajentaa järjestelmää kahdella tavalla:
1. Kyky työskennellä muiden kalenterialustojen kanssa (joten kaikki yhteistyötilat tuottavat yritykset voivat käyttää sitä).
2. Kyky käsitellä useita huoneita, kerroksia ja sivustoja.
Uskomme, että tällaisen mittakaavan yleistäminen, testaaminen ja useiden huoneiden (kerrosten jne.) Lisääminen kestää 2-3 kuukautta.
Lisäksi käyttämällä rajoittamatonta määrää rahaa ja resursseja käytämme parempia antureita, joilla on suurempi alue, sekä räätälöimme ne nimettyyn huoneeseen - ottaen huomioon kantama, säde, anturien määrä jne. Vaihe, joka pidentää jokaisen järjestelmän asennusta, ilmeisesti.
Suositeltava:
IDC2018IOT IoPill -laatikko: 7 vaihetta
IDC2018IOT IoPill Box: Tämä on IoPill Box - Internetiin yhdistetty viikoittainen pillerirasia. IoT -kurssimme viimeisessä projektissa päätimme tarjota ratkaisun, joka auttaa varmistamaan, että vanhukset (tai muut henkilöt, jotka käyttävät viikoittaista pillerirasiaa) ) älä unohda ottaa
IDC2018IOT -kangasvarsi: 6 vaihetta
IDC2018IOT Cloth Hanger: IOT -kangasvarsi tekee kaapistasi älykkäämmän ja antaa sinulle online -tilastoja sen sisällä olevista vaatteista. Sillä on 3 pääominaisuutta: kun haluat valita, mitä haluat käyttää, voit painaa väriä, jonka haluat käyttää tänään ja IOT -vaatekaapit
Älykäs ovijärjestelmä kuulovammaisille (IDC2018IOT): 11 vaihetta
Älykäs ovijärjestelmä heikentynyttä kuuloa varten (IDC2018IOT): Toivomme, että meillä on koti, joka sopii meille, mutta vakiomalli ei sovi kaikille. Talon ovi on erittäin huonosti suunniteltu kuuroille tai kuulovammaisille. Ihmiset, joilla on kuulovamma, eivät kuule ovelle koputusta tai
Opiskele paremmin älykkään pöytävalaisimen avulla - IDC2018IOT: 10 vaihetta (kuvilla)
Opiskele paremmin älykkään pöytävalaisimen avulla - IDC2018IOT: Länsimaissa ihmiset viettävät paljon aikaa istuen. Pöydän ääressä, ajaminen ympäri, television katselu ja paljon muuta. Joskus liika istuminen voi vahingoittaa kehoa ja keskittymiskykyä. Kävely ja seisominen tietyn ajan jälkeen on ratkaisevan tärkeää
IDC2018IOT yhdistetty lemmikkieläinten ruoka-, vesi- ja valvontajärjestelmä: 7 vaihetta
IDC2018IOT Connected Lemmikkieläinten ruoka-, vesi- ja valvontajärjestelmä: Johdanto Olitpa paineenalainen opiskelija, ahkera ihminen tai yksinkertaisesti poissa kotoa yli muutaman tunnin päivässä. Huolehtivina lemmikkien omistajina haluamme varmistaa, että rakkaamme pysyvät terveinä, ruokittuina ja tietysti EI makuulla t