Innholdsfortegnelse:
- Trinn 1: Eksperimentet
- Trinn 2: Maskinvare
- Trinn 3: Google Cloud - Registrering
- Trinn 4: Google Cloud - Pub/Sub
- Trinn 5: Google Cloud - IOT Core
- Trinn 6: Google Cloud - Cloud Functions
- Trinn 7: Google Cloud - Cloud DataStore
- Trinn 8: Google Cloud - BigQuery
- Trinn 9: Google Cloud - Data Studio
- Trinn 10: Forutsigelsesfase
- Trinn 11: Kode
Video: Avløpstoppdetektor: 11 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:25
Ikke la en tett tømming bremse deg! Da jeg kom tilbake fra ferien, ble jeg og min kone overrasket over vannet som dekker gulvet i leiligheten vår, og vi fant ut at det ikke engang er rent vann, det tømmes overalt. Etter å ha renset avløpet og rengjort gulvet, hadde jeg dette spørsmålet: hvorfor har vi ikke et alarmsystem for potensielle dreneringssko? Tette avløp kan ikke bare stoppe hjemmet ditt, men det vil forbruke ekstra kostnader fra lommene dine. $ 206 i gjennomsnitt er kostnaden for å rydde et tett avløp i henhold til HomeAdvisor, i tillegg til skjulte kostnader for ødelagte tepper, tremøbler, etc. Vår idé er å la huseiere så vel som bedrifter som vedlikeholdsavdelinger for byer/forbindelser og spesialiserte tjenesteleverandører ha et effektivt og intelligent system som varsler alle som har ansvaret så tidlig som mulig, noe som bidrar til å berike smarte byer med en viktig trekk.
Idéen Selv om det kan oppdages tresko gjennom en rekke teknikker, som å bruke gassensorer eller interne mekanismer, var teamet vårt fokusert på å bruke lyd som innspill, ettersom vi vet at det å banke på et rør der det åpnes er en annen lyd enn det som skjedde når den blir stengt. I henhold til dette enkle konseptet, hvis vi kan trene en modell på lydmønstrene som forekommer på røroverflaten under tresko, så vel som disse mønstrene forekommer i åpne rør, kan vi deretter bruke modellen til å oppdage proaktivt når en tette begynner å komponere, og vi deretter ringe noen regninger.
Studiepoeng for
- Mohamed Hassan
- Ahmed Emam
Prosjekt i detalj 3 faser er implementert i dette prosjektet: Innsamling av data, læring og prediksjon.
Før vi brukte dette systemet i virkeligheten, trengte vi å lage et håndhevet simuleringsmiljø, der vi har røret, rennende vann og på en eller annen måte simulerer tette. Så, vi fikk et rør, en vannslange med en vannkilde som gjør dette i badekaret, og bruker karetoverflaten til å lukke røret som representerer tilstoppingen. I denne videoen forklarer vi hvordan vi bygde miljøet og hvordan vi samlet data for modellopplæringen.
Og i denne neste videoen, som viser hvordan vi testet systemet og modellen, i åpen modus, deretter i tettemodus og tilbake til åpen modus.
Så la oss utforske implementeringen vår trinn for trinn:
Trinn 1: Eksperimentet
I dette scenariet bruker vi et lite vannrør som er koblet til maskinvare- og lydsensoren vår. Maskinvare leser sensorverdien og sender den tilbake til Cloud. Dette har blitt gjort i 10 minutter for blokkert rør, deretter ytterligere 10 minutter for rør som ikke er blokkert.
Trinn 2: Maskinvare
I- Arduino
For å oppdage vannlyden inne i røret trenger vi en lydsensor. Raspberry Pi 3 har imidlertid ikke Analog GPIO. For å håndtere dette problemet bruker vi Arduino ettersom Arduino har analog GPIO. Så vi kobler Grove Sound -sensor til Grove Arduino -skjold og kobler Shield til Arduino UNO 3. Deretter kobler vi Arduino & Raspberry ved hjelp av USB -kabel. For å få mer informasjon om Grove Sound -sensor, kan du sjekke databladet. Du kan finne et eksempelkode på hvordan du leser sensorverdier i databladet. Prøvekode er nesten bruk vil små endringer. I koden nedenfor kobler vi sensoren til A0 i skjold. For å skrive på serie bruker vi funksjonen Serial.begin (). For å kommunisere med Raspberry baud rate satt til 115200Data vil bli sendt til Raspberry hvis det er større enn en viss terskel for å kutte støyen Mange forsøk har blitt gjort for å velge ønsket terskel og forsinkelsesverdier. Terskelen er 400 og forsinkelsesverdien er 10 millisekund. Terskelen er valgt for å filtrere normal støy og sikre at bare meningsfulle data vil bli sendt til skyen.
II- Raspberry Pi 3 For å laste ned android ting på Raspberry, kan du laste ned den nyeste versjonen fra Android Things Console. I dette prosjektet bruker vi versjon: OIR1.170720.017. følg trinnene i Raspberry -nettstedet for å installere operativsystemet på bringebær, for Windows kan du bruke disse trinnene Etter installasjonen kan du koble bringebæret til datamaskinen din ved hjelp av USB. Deretter bruker du kommandoen under for å få bringebær IP
nmap -sn 192.168.1.*
Etter å ha fått IP -en, koble til bringebæret ditt ved å bruke kommandoen nedenfor
adb koble til
For å koble bringebæret til Wifi (legg til SSID og passord)
adb am startservice
-n com.google.wifisetup/. WifiSetupService
-en WifiSetupService. Connect
-e ssid *****
-e passordet ****
Trinn 3: Google Cloud - Registrering
Google tilbyr et gratis nivå for alle brukere i ett år med et tak på 300 $, takk til Google:). Følg skjermene for å opprette et nytt prosjekt i Google Cloud
Trinn 4: Google Cloud - Pub/Sub
Google Cloud Pub/Sub er en fullt administrert meldingstjeneste i sanntid som lar deg sende og motta meldinger mellom uavhengige applikasjoner.
Trinn 5: Google Cloud - IOT Core
II- IOT CoreA fullt administrert tjeneste for enkelt og sikkert å koble til, administrere og innta data fra globalt spredte enheter. IOT Core er fortsatt beta, for å ha tilgang til den må du sende en forespørsel med begrunnelse til Google. Vi sendte forespørselen, vår begrunnelse var denne konkurransen. Google godkjent, takk til Google igjen:). Bringebær vil sende sensordata til IOT Core som videresender avlesninger til PubSub -emnet som ble opprettet i forrige trinn
Trinn 6: Google Cloud - Cloud Functions
Cloud Functions er et serverfritt miljø for å bygge og koble til skytjenester. Utløser for denne funksjonen er PubSup -emnet som ble opprettet i trinn 1.;; Denne funksjonen utløses når ny verdi skrives i PubSup og skrives i Cloud DataStore med Kind "SoundValue"
Trinn 7: Google Cloud - Cloud DataStore
Google Cloud Datastore er en NoSQL -dokumentdatabase bygget for automatisk skalering, høy ytelse og enkel applikasjonsutvikling. Mens Cloud Datastore -grensesnittet har mange av de samme funksjonene som tradisjonelle databaser, skiller det seg som en NoSQL -database fra dem på den måten det beskriver relasjoner mellom dataobjekter. Ingen grunn til oppsett, ettersom Cloud Functions skriver sensorverdier til DataStore, blir data lagt til i DataStore
Trinn 8: Google Cloud - BigQuery
Vi samler en prøve 10 minutter fra vanlig rør og 10 minutter fra blokkert rør med forskjellen nøyaktig 1 time mellom de to iterasjonene. Etter nedlasting av dataStore og foreta noen manipulasjoner for å legge til klassifisering for hver rad. Nå har vi 2 csv -filer en for hver kategori. Som beste praksis laster du opp CSV -filer med data først til Cloud Storage. I skjermbildet nedenfor oppretter vi en ny bøtte og laster opp de 2 CSV-filene Ettersom denne bøtten kun skal brukes til analyse, trenger du ikke velge Multiregionalt bøtte. Deretter oppretter du nytt datasett og nytt bord i BigQuery og laster opp 2 CSV-filer fra bøtte til det nye bordet
Trinn 9: Google Cloud - Data Studio
Deretter bruker vi Data Studio til å trekke noen innsikt. Data Studio vil lese data fra BigQuery -tabellen. Fra grafer kan vi se forskjellen mellom 2 kategorier i antall telemetrier og summen av verdier per minutt. Basert på disse innsiktene kan vi designe en enkel modell, rør anses å være blokkert hvis antallet telemetriverdier som er høyere enn støyterskelen (400) er mer enn 350 telemetri i tre påfølgende minutter. og på 3 påfølgende minutter er tellingen av telemeterverdien som er høyere enn gnistterskelen (720) mer enn 10 telemetrier.
Trinn 10: Forutsigelsesfase
Vi refererer til en avlesning når den overstiger en viss verdi (THRESHOLD_VALUE) som ble satt til 350 som filtrerer støy og lavere vannstrømningshastigheter i røret, fra å bli sett på som en avlesning
Dataanalyse viste at i åpen modus er antall avlesninger mindre enn 100, men i tette modus er verdiene langt høyere (nådd 900 per minutt), men i sjeldne tilfeller også mindre enn 100. Imidlertid gjentas disse tilfellene ikke, og i tre påfølgende minutter oversteg det totale antallet avlesninger alltid 350. Å ha åpen modus på de samme tre minuttene vil oppsummere mindre enn 300, vi kunne trygt sette denne regelen: Regel # 1 For tre minutter i en rå, hvis totalt avlesninger > 350, så oppdages en tett. Vi fant at maksimalverdi oppnådd i åpen modus ikke overstiger en viss verdi (SPARK_VALUE) som er funnet å være 770, så vi la til denne regelen: Regel # 2 Hvis avlesningsverdi> 350, blir en tetting for det meste oppdaget.
Ved å kombinere begge reglene ga vi en enkel måte å implementere deteksjonslogikken, som vist. Legg merke til at koden nedenfor ble distribuert på Arduino som deretter evaluerer mottatte telemetries basert på vår modell og sender til bringebær hvis røret er tett eller åpent.
Trinn 11: Kode
All kode for Arduino, Raspberry & Cloud -funksjonen finnes på Github.
For mer informasjon kan du sjekke denne lenken
Anbefalt:
Ta flotte bilder med en iPhone: 9 trinn (med bilder)
Ta flotte bilder med en iPhone: De fleste av oss har med oss en smarttelefon overalt i disse dager, så det er viktig å vite hvordan du bruker smarttelefonkameraet ditt til å ta flotte bilder! Jeg har bare hatt en smarttelefon i et par år, og jeg har elsket å ha et greit kamera for å dokumentere ting jeg
Slik gjør du det: Installere Raspberry PI 4 Headless (VNC) med Rpi-imager og bilder: 7 trinn (med bilder)
Howto: Installere Raspberry PI 4 Headless (VNC) Med Rpi-imager og bilder: Jeg planlegger å bruke denne Rapsberry PI i en haug med morsomme prosjekter tilbake i bloggen min. Sjekk det gjerne ut. Jeg ønsket å begynne å bruke Raspberry PI igjen, men jeg hadde ikke tastatur eller mus på min nye plassering. Det var en stund siden jeg konfigurerte en bringebær
Slik demonterer du en datamaskin med enkle trinn og bilder: 13 trinn (med bilder)
Slik demonterer du en datamaskin med enkle trinn og bilder: Dette er en instruksjon om hvordan du demonterer en PC. De fleste grunnkomponentene er modulære og fjernes lett. Det er imidlertid viktig at du er organisert om det. Dette vil bidra til å hindre deg i å miste deler, og også i å gjøre monteringen igjen
PCB -design med enkle og enkle trinn: 30 trinn (med bilder)
PCB -design med enkle og enkle trinn: HELLO VENNER Den veldig nyttige og enkle opplæringen for de som ønsker å lære PCB -design, kan komme i gang
Hvordan lage en delt skjermvideo med fire trinn: 4 trinn (med bilder)
Hvordan lage en delt skjermvideo med fire trinn: Vi ser ofte en samme person vise i en scene to ganger i et TV -spill. Og så vidt vi vet har ikke skuespilleren en tvillingbror. Vi har også sett at to sangvideoer blir satt på en skjerm for å sammenligne sangferdighetene sine. Dette er kraften til spl