Sadržaj:

WiFi sistem kućne automatizacije sa izuzetno niskom snagom: 6 koraka (sa slikama)
WiFi sistem kućne automatizacije sa izuzetno niskom snagom: 6 koraka (sa slikama)

Video: WiFi sistem kućne automatizacije sa izuzetno niskom snagom: 6 koraka (sa slikama)

Video: WiFi sistem kućne automatizacije sa izuzetno niskom snagom: 6 koraka (sa slikama)
Video: Как запрограммировать модуль реле Wi-Fi ESP8266 ESP-01 2024, Novembar
Anonim
WiFi sistem kućne automatizacije izuzetno niske snage
WiFi sistem kućne automatizacije izuzetno niske snage
WiFi sistem kućne automatizacije izuzetno niske snage
WiFi sistem kućne automatizacije izuzetno niske snage

U ovom projektu pokazujemo kako možete izgraditi osnovni lokalni sistem kućne automatizacije u nekoliko koraka. Koristit ćemo Raspberry Pi koji će djelovati kao centralni WiFi uređaj. Dok ćemo za krajnje čvorove koristiti IOT kriket za izradu WiFi uređaja na baterije, npr. temperaturni senzor i spojite ga na RPi bez pisanja jedne linije koda.

Naš sistem će se zasnivati na komunikacionom protokolu MQTT, koji je široko prihvaćen u većini sistema kućne automatizacije. Za njegovo postavljanje biramo Mosquitto MQTT posrednik (server) i instaliramo ga na Raspberry Pi (naše centralno čvorište).

IOT Cricket također dolazi s podrškom za HTTP (S) i MQTT protokole. Konfiguriramo ga tako da koristi MQTT za direktnu komunikaciju s našim RPi MQTT posrednikom.

Ovaj projekt mogu realizirati tvorci na svim nivoima vještina. Možda će trebati neko osnovno lemljenje, ali ne zahtijeva nikakvo kodiranje ili programiranje. Na kraju ovog projekta dobit ćete čvrstu ideju o tome kako možete lako izgraditi vlastiti sistem i brzo ga proširiti dodavanjem vlastitih IOT krajnjih čvorova u sistem.

Potrošni materijal:

  • Raspberry Pi (koristili smo verziju 3 za ovaj projekat)
  • IOT modul za kriket WiFi
  • 2xAAA držač baterije
  • 2xAAA baterije

Korak 1: Šta je MQTT?

MQTT protokol pruža lagan način slanja poruka pomoću modela objavljivanja/pretplate. To ga čini pogodnim za razmjenu poruka Interneta stvari, poput senzora male snage ili mobilnih uređaja, poput telefona, ugrađenih računara ili mikrokontrolera. (izvor: mosquitto.org)

Možemo koristiti onoliko uređaja koliko želimo da se pretplatimo na teme i osluškujemo poruke. Ako neki uređaji objave poruku o toj temi, svi uređaji koji su pretplaćeni na tu temu trenutno primaju tu poruku. Tema može biti bilo koji proizvoljan niz koji je obično spojen sa / znakovima kako bi se omogućilo stvaranje hijerarhijskih tema. Najčešća upotreba MQTT -a je imati jedan centralni poslužitelj na koji se uređaji mogu pretplatiti i objavljivati poruke. Olakšava svu komunikaciju između uređaja povezanih na taj server. U ovom projektu ćemo koristiti RPi da djelujemo kao naš centralni MQTT posrednik, a svi drugi uređaji će slati poruke putem ovog brokera. Najbolji način da naučite o tome je očito ako to učinite sami. Na internetu postoji mnogo resursa dostupnih na MQTT -u. Međutim, za ovaj projekt trebali biste biti u redu s osnovnim uvodom, koji smo gore dali.

Korak 2: Instaliranje MQTT brokera na Raspberry Pi

Za ovaj projekt koristimo otvorenog koda Mosquitto MQTT brokera. Lagan je i pogodan je za upotrebu na svim uređajima, od single board računara male snage do punih servera.

Prije nego počnemo s instalacijom, dobra je praksa da prvo ažurirate komponente sistema:

$ sudo apt-get update $ sudo apt-get nadogradnja

Instalirajte Mosquitto brokera. Otvorite terminal i upišite sljedeću naredbu:

$ sudo apt -get install mosquitto -y

Konfigurirajte Mosquitto brokera. Uredite konfiguracionu datoteku:

$ sudo vi /etc/mosquitto/mosquitto.conf

i dodajte sljedeće retke pri vrhu:

port 1883allow_anonymous true

Ponovo pokrenite RPi da biste primijenili promjene:

$ sudo ponovno pokretanje

To je to! Naš MQTT posrednik je sada u funkciji!

NAPOMENA: radi jednostavnosti ovog projekta ne stvaramo račune. Tako da se svi unutar naše lokalne mreže mogu povezati s ovim MQTT posrednikom bez vjerodajnica. Ako želite dodati autentifikaciju korisnika i učiniti je sigurnijom, na internetu postoji mnogo vodiča kako to učiniti.

Sada samo trebamo dobiti IP adresu kako bismo mogli slati poruke našem posredniku Mosquitto s drugih uređaja u mreži:

Nabavite IP adresu:

$ hostname -I

vaša_RPi_IP_adresa (npr. 192.168.1.10)

Korak 3: Povežite IOT kriket sa RaspberryPi preko MQTT -a

Povežite IOT kriket sa RaspberryPi preko MQTT -a
Povežite IOT kriket sa RaspberryPi preko MQTT -a
Povežite IOT kriket sa RaspberryPi preko MQTT -a
Povežite IOT kriket sa RaspberryPi preko MQTT -a

U ovom projektu koristimo IOT Cricket WiFi modul za jednostavan senzor koji izvještava o temperaturi svakih 30 sekundi u našem sistemu. Radit će na bateriju pa ga možemo zalijepiti bilo gdje u kući ili vrtu. Kasnije možete koristiti IOT Cricket za izradu različitih senzora na baterije, alarma, dugmadi, prekidača i njihovo povezivanje s RPi MQTT posrednikom.

U prvom koraku spojite baterije na kriket.

Cvrčak dolazi s ugrađenim senzorom temperature. Samo ga moramo konfigurirati za slanje vrijednosti temperature našem MQTT brokeru postavljanjem RPi IP adrese. Da biste to učinili, otvorite konfiguracijsku ploču kriketa (pogledajte korake ovdje) i primijenite sljedeće postavke (kao što je prikazano na donjoj slici, molimo vas prilagodite IP adresu u polju "url" svom RPi)

Sada možemo izaći iz konfiguracijskog načina rada. Uređaj je spreman! Cricket već šalje podatke našem MQTT brokeru svakih 30 sekundi.

Korak 4: Pregledajte MQTT poruke

Pregledajte MQTT poruke
Pregledajte MQTT poruke

Za pregled / primanje poruka poslanih našem MQTT brokeru možemo koristiti različite alate.

Najlakši bi mogao biti alat za naredbeni red mosquitto_sub. Možemo ga instalirati bilo na bilo koje računalo u našoj mreži ili na RPi pomoću ove naredbe:

$ sudo apt-get install mosquitto-clients -y

Sada možemo izvršiti sljedeću naredbu za preslušavanje SVIH tema i poruka poslanih putem našeg MQTT brokera:

$ mosquitto_sub -v -h vaša_RPi_IP_adresa -p 1883 -t '#'

…/59A98F494C/h4C64

Gore navedeno je primjer izlaza onoga što IOT Cricket šalje našem brokeru. Između ostalih podataka koje možemo vidjeti postoji temperatura:

/59A98F494C/temp 26.0

Ljepota MQTT -a je u tome što nam omogućava da se pretplatimo samo na teme koje nas zanimaju. Ako želimo primiti samo temperaturu, možemo se pretplatiti na /59A98F494C /temp temu pomoću sljedeće naredbe:

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

…26.126.527.227.6…

Korak 5: Sažetak

Sažetak
Sažetak

U ovom projektu pokazali smo bitan hardver i softver za početak izgradnje niskoenergetskih, energetski efikasnih, kućnih automatizacijskih sistema zasnovanih na WiFi -u. MQTT je suština na kojoj se može graditi za sofisticiranije sisteme.

Ekosistem softvera i usluga koji se mogu integrirati s MQTT je OGROMAN! Postoji mnogo sjajnih sistema kao što su Home Assistant, Node RED, Grafana itd. Koji vam omogućuju da dođete do sjajnog korisničkog iskustva za svoj sistem. Ne samo da možemo jednostavno odštampati temperaturu, već možemo imati i odlične nadzorne ploče koje vizualiziraju podatke i upravljaju vašim uređajima.

Budući da imamo postavljenu ovu osnovnu sistemsku infrastrukturu, nebo je naša granica onoga što druge WiFi uređaje možemo izgraditi pomoću IOT kriketnih modula i dodati u naš sistem kućne automatizacije.

Hvala što ste došli ovdje. Nadamo se da ste uživali u ovom vodiču!

Tim Things on Edge

Korak 6: O nama

Things On Edge je kompanija sa sjedištem u Cambridgeu, UK. Dizajniramo Wi-Fi modul za kriket sa ultra niskom baterijom koji vam omogućava da doslovno u nekoliko minuta povežete različite elektroničke uređaje sa pametnim telefonima ili drugim internetskim uslugama. Ne zahtijeva programiranje i kodiranje. Omogućava vam da svoje uređaje integrirate u ogromne IOT usluge ekosistema preko MQTT i HTTP apis.

Preporučuje se: