Innholdsfortegnelse:

Ultra-lavt strøm WiFi hjemmeautomatiseringssystem: 6 trinn (med bilder)
Ultra-lavt strøm WiFi hjemmeautomatiseringssystem: 6 trinn (med bilder)

Video: Ultra-lavt strøm WiFi hjemmeautomatiseringssystem: 6 trinn (med bilder)

Video: Ultra-lavt strøm WiFi hjemmeautomatiseringssystem: 6 trinn (med bilder)
Video: Битва пылесосов. DYSON VS BISSELL. 2024, November
Anonim
Ultra-lavt strøm WiFi hjemmeautomatiseringssystem
Ultra-lavt strøm WiFi hjemmeautomatiseringssystem
Ultra-lavt strøm WiFi hjemmeautomatiseringssystem
Ultra-lavt strøm WiFi hjemmeautomatiseringssystem

I dette prosjektet viser vi hvordan du kan bygge et grunnleggende lokalt hjemmeautomatiseringssystem i noen få trinn. Vi skal bruke en Raspberry Pi som vil fungere som en sentral WiFi -enhet. For sluttnoder skal vi bruke IOT Cricket til å lage batteridrevne WiFi -enheter, f.eks. temperatursensoren og koble den til RPi uten å skrive en eneste linje med kode.

Systemet vårt kommer til å være basert på MQTT kommunikasjonsprotokoll, som er enormt vedtatt i de fleste hjemmeautomatiseringssystemer. For å sette det opp velger vi Mosquitto MQTT -megler (server) og installerer det på Raspberry Pi (vår sentrale hub).

IOT Cricket leveres også med støtte for HTTP (S) og MQTT -protokoller. Vi konfigurerer den til å bruke MQTT til å kommunisere direkte til vår RPi MQTT -megler.

Dette prosjektet kan realiseres av beslutningstakere på alle ferdighetsnivåer. Det kan kreve litt grunnleggende lodding, men det krever ingen koding eller programmering. På slutten av dette prosjektet vil du få en solid idé om hvordan du enkelt kan bygge ditt eget system og raskt utvide ved å legge til dine egne IOT -sluttnoder i systemet.

Rekvisita:

  • Raspberry Pi (vi brukte vers. 3 for dette prosjektet)
  • IOT Cricket WiFi -modul
  • 2xAAA batteriholder
  • 2xAAA batterier

Trinn 1: Hva er MQTT?

MQTT -protokollen gir en lett metode for å utføre meldinger ved hjelp av en publiser/abonner -modell. Dette gjør den egnet for Internett -ting -meldinger, for eksempel sensorer med lav effekt eller mobile enheter som telefoner, innebygde datamaskiner eller mikrokontrollere. (kilde: mosquitto.org)

Vi kan bruke så mange enheter vi vil abonnere på emner og lytte etter at meldinger skal komme. Hvis noen enheter publiserer en melding om det emnet, mottar alle enheter som abonnerer på emnet den meldingen umiddelbart. Temaet kan være hvilken som helst vilkårlig streng som vanligvis er koblet til / tegn for å bygge hierarkiske emner. Den mest typiske bruken av MQTT er å ha en sentral server som enheter kan abonnere på og publisere meldinger på. Det letter all kommunikasjon mellom enheter som er koblet til den serveren. I dette prosjektet vil vi bruke RPi til å fungere som vår sentrale MQTT -megler, og alle andre enheter sender meldinger via denne megleren. Den beste måten å lære om det på er åpenbart ved å gjøre det selv. Det er mange ressurser tilgjengelig på internett på MQTT. Men for dette prosjektet bør du ha det bra med en grunnleggende introduksjon, som vi ga ovenfor.

Trinn 2: Installere MQTT Broker på Raspberry Pi

For dette prosjektet bruker vi en åpen kildekode Mosquitto MQTT -megler. Den er lett og er egnet for bruk på alle enheter fra enkeltbrettmaskiner med lav effekt til fulle servere.

Før vi begynner å installere, er det en god praksis å oppdatere systemkomponentene først:

$ sudo apt-get oppdatering $ sudo apt-get oppgradering

Installer Mosquitto megler. Åpne en terminal og skriv inn følgende kommando:

$ sudo apt -get install mygg -y

Konfigurer Mosquitto -megler. Rediger konfigurasjonsfil:

$ sudo vi /etc/mosquitto/mosquitto.conf

og legg til følgende linjer øverst:

port 1883allow_anonymous true

Start RPi på nytt for å bruke endringer:

$ sudo omstart

Det er det! Vår MQTT -megler er i gang nå!

MERK: For enkelhets skyld i dette prosjektet oppretter vi ikke kontoer. Så alle i vårt lokale nettverk kan koble seg til denne MQTT -megleren uten legitimasjon. Hvis du vil legge til brukerautentisering og gjøre det sikrere, er det mange opplæringsprogrammer på internett om hvordan du gjør det.

Nå trenger vi bare å skaffe IP -adresse slik at vi kan sende meldinger til Mosquitto -megleren fra andre enheter i nettverket:

Skaff IP -adresse:

$ vertsnavn -I

din_RPi_IP_adresse (f.eks. 192.168.1.10)

Trinn 3: Koble IOT Cricket til RaspberryPi Over MQTT

Koble IOT Cricket til RaspberryPi Over MQTT
Koble IOT Cricket til RaspberryPi Over MQTT
Koble IOT Cricket til RaspberryPi Over MQTT
Koble IOT Cricket til RaspberryPi Over MQTT

I dette prosjektet bruker vi IOT Cricket WiFi -modulen for en enkel sensor til å rapportere en temperatur hvert 30. sekund til systemet vårt. Den går på et batteri, slik at vi kan feste den hvor som helst hjemme eller i hagen. Senere kan du bruke IOT Cricket til å bygge forskjellige batteridrevne sensorer, alarmer, knapper, brytere og koble dem også til vår RPi MQTT -megler ut av esken.

I det første trinnet kobler du batteriene til Cricket.

Cricket kommer med en innebygd temperatursensor. Vi trenger bare å konfigurere den til å sende temperaturverdi til vår MQTT -megler ved å angi RPi IP -adressen. For å gjøre det, åpner Cricket konfigurasjonspanel (se trinnene her) og bruk følgende innstillinger (som vist på bildet nedenfor, vær så snill) juster IP -adressen i "url" -boksen til RPi)

Nå kan vi gå ut av konfigurasjonsmodusen. Enheten er klar! Cricket sender allerede data til vår MQTT -megler hvert 30. sekund.

Trinn 4: Undersøk MQTT -meldinger

Undersøk MQTT -meldinger
Undersøk MQTT -meldinger

For å se / motta meldinger sendt til vår MQTT -megler kan vi bruke forskjellige verktøy.

Den enkleste kan være et kommandolinjeverktøy mosquitto_sub. Vi kan installere den enten på hvilken som helst datamaskin i vårt nettverk eller på vår RPi med denne kommandoen:

$ sudo apt-get install mosquitto-clients -y

Nå kan vi utføre følgende kommando for å lytte til ALLE emner og meldinger som sendes via vår MQTT -megler:

$ mosquitto_sub -v -h your_RPi_IP_address -p 1883 -t '#'

…/59A98F494C/device_name MyTemperatureDev/59A98F494C/device_sn 59A98F494C/59A98F494C/hwc_wake_up 3794/59A98F494C/hwc_wifi_enabled 3763/59A98F494C/hwc_message/

Ovenstående er et eksempel på hva IOT Cricket sender til megleren vår. Blant de andre dataene vi kan se er det en temperatur:

/59A98F494C/temp 26.0

Det fine med MQTT er at det tillater oss å abonnere på bare emner vi er interessert i. Hvis vi ønsker å motta bare en temperatur, kan vi abonnere på /59A98F494C /temp topic ved å bruke følgende kommando:

$ mosquitto_sub -h your_RPi_IP_address -t '/59A98F494C/temp'

…26.126.527.227.6…

Trinn 5: Oppsummering

Sammendrag
Sammendrag

Vi har vist i dette prosjektet en viktig maskinvare og programvare for å begynne å bygge laveffekt, energieffektive, hjemmeautomatiseringssystemer basert på WiFi. MQTT er essensen å bygge videre på for mer sofistikerte systemer.

Økosystemet til programvare og tjenester som kan integreres med MQTT er STORT! Det er mange flotte systemer som Home Assistant, Node RED, Grafana, etc. som lar deg få en flott brukeropplevelse av ditt eget system. Ikke bare kan vi gjøre enkle utskrifter av en temperatur, men vi kan ha flotte dashbord som visualiserer dataene og administrerer enhetene dine.

Nå som vi har denne grunnleggende systeminfrastrukturen på plass, er himmelen vår grense for hvilke andre WiFi -enheter vi kan bygge ved hjelp av IOT Cricket -moduler og legge til i vårt hjemmeautomatiseringssystem.

Takk for at du kom hit. Vi håper du likte denne opplæringen!

Things On Edge -teamet

Trinn 6: Om oss

Things On Edge er et selskap basert i Cambridge, Storbritannia. Vi designer Cricket Wi-Fi-modul med ekstremt lavt batteri, slik at du kan koble forskjellige elektroniske enheter til smarttelefoner eller andre internettjenester bokstavelig talt på få minutter. Det krever ingen programmering og koding. Den lar deg integrere enhetene dine til en enorm IOT -økosystemtjenester over MQTT- og HTTP -apis.

Anbefalt: