Cuprins:
- Pasul 1: Ce este MQTT?
- Pasul 2: Instalarea MQTT Broker pe Raspberry Pi
- Pasul 3: Conectați IOT Cricket la RaspberryPi peste MQTT
- Pasul 4: Inspectați mesajele MQTT
- Pasul 5: Rezumat
- Pasul 6: Despre noi
Video: Sistem de automatizare la domiciliu WiFi cu putere redusă: 6 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
În acest proiect vă arătăm cum puteți construi un sistem local de automatizare a locuinței în câțiva pași. Vom folosi un Raspberry Pi care va acționa ca un dispozitiv WiFi central. În timp ce pentru nodurile finale vom folosi IOT Cricket pentru a crea dispozitive WiFi alimentate cu baterii, de ex. senzor de temperatură și conectați-l la RPi fără a scrie o singură linie de cod.
Sistemul nostru se va baza pe protocolul de comunicație MQTT, care este extrem de adoptat în majoritatea sistemelor de automatizare a casei. Pentru configurare, alegem brokerul Mosquitto MQTT (server) și îl instalăm pe Raspberry Pi (hub-ul nostru central).
IOT Cricket vine, de asemenea, cu suport pentru protocoalele HTTP (S) și MQTT. Îl configurăm pentru a utiliza MQTT pentru a comunica direct brokerului nostru RPi MQTT.
Acest proiect poate fi realizat de factorii de decizie la toate nivelurile de calificare. Poate necesita unele lipiri de bază, însă nu necesită codare sau programare. La sfârșitul acestui proiect, veți avea o idee solidă despre cum vă puteți construi cu ușurință propriul sistem și extindeți rapid prin adăugarea propriilor noduri finale IOT la sistem.
Provizii:
- Raspberry Pi (am folosit versiunea 3 pentru acest proiect)
- Modulul IOT Cricket WiFi
- Suport baterie 2xAAA
- 2xAAA baterii
Pasul 1: Ce este MQTT?
Protocolul MQTT oferă o metodă ușoară de a efectua mesaje utilizând un model de publicare / abonare. Acest lucru îl face adecvat pentru mesageria Internet of Things, cum ar fi senzorii cu putere redusă sau dispozitivele mobile, cum ar fi telefoanele, computerele încorporate sau microcontrolerele. (sursa: mosquitto.org)
Putem folosi oricâte dispozitive dorim să ne abonăm la subiecte și să ascultăm mesajele. Dacă unele dispozitive publică un mesaj pe subiectul respectiv, atunci toate dispozitivele, care sunt abonate la subiect, primesc acel mesaj instantaneu. Subiectul poate fi orice șir arbitrar concatenat de obicei cu / caractere pentru a permite construirea subiectelor ierarhice. Cea mai tipică utilizare a MQTT este de a avea un server unic la care dispozitivele se pot abona și publica mesaje. Facilitează orice comunicare între dispozitivele conectate la acel server. În acest proiect vom folosi RPi pentru a acționa ca brokerul nostru central MQTT și toate celelalte dispozitive vor trimite mesaje prin intermediul acestui broker. Cea mai bună modalitate de a afla despre asta este, evident, făcând-o singură. Există multe resurse disponibile pe internet pe MQTT. Cu toate acestea, pentru acest proiect ar trebui să fiți în regulă cu o introducere de bază, pe care am furnizat-o mai sus.
Pasul 2: Instalarea MQTT Broker pe Raspberry Pi
Pentru acest proiect folosim un broker Mosquitto MQTT open source. Este ușor și este potrivit pentru utilizare pe toate dispozitivele, de la computere cu o singură placă de putere redusă la servere complete.
Înainte de a începe instalarea, este o bună practică să actualizăm mai întâi componentele sistemului:
$ sudo apt-get update $ sudo apt-get upgrade
Instalați brokerul Mosquitto. Deschideți un terminal și tastați următoarea comandă:
$ sudo apt-get install mosquitto -y
Configurați brokerul Mosquitto. Editați fișierul de configurare:
$ sudo vi /etc/mosquitto/mosquitto.conf
și adăugați următoarele linii în partea de sus:
port 1883allow_anonymous adevărat
Reporniți RPi pentru a aplica modificări:
$ sudo reporniți
Asta e! Brokerul nostru MQTT este în funcțiune acum!
NOTĂ: pentru simplitatea acestui proiect, nu creăm conturi. Deci, oricine din rețeaua noastră locală se poate conecta la acest broker MQTT fără acreditări. Dacă doriți să adăugați autentificarea utilizatorului și să o faceți mai sigură, există o mulțime de tutoriale pe internet cum să o faceți.
Acum, trebuie doar să obținem adresa IP, astfel încât să putem trimite mesaje către brokerul nostru Mosquitto de pe alte dispozitive din rețea:
Obțineți adresa IP:
$ hostname -I
adresa_RPi_IP_ dvs. (de ex. 192.168.1.10)
Pasul 3: Conectați IOT Cricket la RaspberryPi peste MQTT
În acest proiect, folosim modulul WiFi IOT Cricket pentru un senzor simplu pentru a raporta o temperatură la fiecare 30 de secunde sistemului nostru. Va funcționa pe o baterie, astfel încât să o putem lipi oriunde acasă sau într-o grădină. Mai târziu puteți utiliza IOT Cricket pentru a construi diferiți senzori, alarme, butoane, comutatoare alimentate de baterie și le puteți conecta și la brokerul nostru RPi MQTT.
În primul pas, conectați bateriile la Cricket.
Cricket vine cu un senzor de temperatură încorporat. Trebuie doar să-l configurăm pentru a trimite valoarea de temperatură brokerului nostru MQTT prin setarea adresei IP RPi. Pentru a face acest lucru, deschideți panoul de configurare al Cricket (consultați pașii de aici) și aplicați următoarele setări (așa cum se arată în imaginea de mai jos, vă rugăm să ajustați adresa IP din caseta „url” la RPi)
Acum putem ieși din modul de configurare. Dispozitivul este gata! Cricket trimite deja date brokerului nostru MQTT la fiecare 30 de secunde.
Pasul 4: Inspectați mesajele MQTT
Pentru a vizualiza / primi mesaje trimise brokerului nostru MQTT putem folosi diverse instrumente.
Cel mai ușor ar putea fi un instrument pentru linia de comandă mosquitto_sub. O putem instala fie pe orice computer din rețeaua noastră, fie pe RPi cu ajutorul acestei comenzi:
$ sudo apt-get install mosquitto-clients -y
Acum putem executa următoarea comandă pentru a asculta TOATE subiectele și mesajele trimise prin brokerul nostru MQTT:
$ 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_s / 59/49/49/49/49
Cele de mai sus sunt un exemplu de ieșire a ceea ce IOT Cricket trimite brokerului nostru. Printre celelalte date pe care le putem vedea există o temperatură:
/ 59A98F494C / temp 26.0
Frumusețea MQTT este că ne permite să ne abonăm doar la subiecte care ne interesează. Dacă dorim să primim doar o temperatură, ne putem abona la subiectul / 59A98F494C / temp folosind următoarea comandă:
$ mosquitto_sub -h your_RPi_IP_address -t '/ 59A98F494C / temp'
…26.126.527.227.6…
Pasul 5: Rezumat
Am arătat în acest proiect un hardware și un software esențial pentru a începe să construim sisteme de automatizare a casei cu consum redus de energie, eficiente din punct de vedere energetic, bazate pe WiFi. MQTT este esența pe care se poate construi pentru sisteme mai sofisticate.
Ecosistemul de software și servicii care pot fi integrate cu MQTT este ÎNORM! Există o mulțime de sisteme excelente, cum ar fi Home Assistant, Node RED, Grafana, etc. Nu numai că putem face o imprimare simplă a unei temperaturi, dar putem avea tablouri de bord excelente care vizualizează datele și gestionează dispozitivele dvs.
Acum, deoarece avem această infrastructură de bază, cerul este limita noastră a celorlalte dispozitive WiFi pe care le putem construi folosind modulele IOT Cricket și le putem adăuga la sistemul nostru de automatizare a casei.
Vă mulțumim că ați ajuns aici. Sperăm că ți-a plăcut acest tutorial!
Echipa Things On Edge
Pasul 6: Despre noi
Things On Edge este o companie cu sediul în Cambridge, Marea Britanie. Proiectăm modulul Cricket Wi-Fi alimentat cu baterii foarte scăzute pentru a vă permite să conectați diferite dispozitive electronice la smartphone-uri sau alte servicii de internet literalmente în câteva minute. Nu necesită programare și codificare. Vă permite să vă integrați dispozitivele într-un imens serviciu ecosistem IOT prin API MQTT și
Recomandat:
Cum se realizează un PCB personalizat folosind un gravor laser cu putere redusă: 8 pași (cu imagini)
Cum se realizează un PCB personalizat folosind un gravor laser cu putere redusă: Când vine vorba de realizarea unui PCB de casă, puteți găsi mai multe metode online: de la cele mai rudimentare, folosind doar un stilou, la cele mai sofisticate folosind imprimante 3D și alte echipamente. Și acest tutorial se încadrează în ultimul caz! În acest proiect am
Stație meteo cu putere redusă: 6 pași (cu imagini)
Stație meteo cu consum redus de energie: acum în cea de-a treia versiune și fiind testată de peste doi ani, stația meteo a fost îmbunătățită pentru o performanță mai redusă a energiei și fiabilitatea transferului de date
Alarmă PIR către WiFi (și automatizare la domiciliu): 7 pași (cu imagini)
Alarmă PIR către WiFi (și automatizare la domiciliu): Prezentare generală Această instrucțiune vă va oferi posibilitatea de a vizualiza ultima dată / oră (și, opțional, un istoric al timpurilor) de când au fost declanșate PIR-urile House Alarm (senzori infraroșii pasivi), în automatizarea casei dvs. software. În acest proiect, voi
Sistem puternic de automatizare la domiciliu autonom - Pi, Sonoff, ESP8266 și Node-Red: 9 pași (cu imagini)
Sistem puternic de automatizare la domiciliu autonom - Pi, Sonoff, ESP8266 și Node-Red: acest ghid ar trebui să vă conducă la prima bază unde puteți porni / opri o lumină sau un aparat prin orice dispozitiv care se poate conecta la rețeaua dvs. locală și cu un interfață web personalizabilă excelentă. Domeniul de aplicare pentru extinderea / adăugarea caracteristicilor este vast, inclusiv
Sistem de automatizare la domiciliu care utilizează modulul Arduino și HC-05 Bluetooth: 5 pași (cu imagini)
Sistem de automatizare la domiciliu care utilizează modulul Arduino și HC-05 Bluetooth: Hei, băieți, ce faceți! Astăzi sunt aici cu al doilea instructor Arduino al meu. Este un sistem de automatizare a locuinței controlat prin Bluetooth. Vă puteți controla electrocasnicele doar de pe telefonul dvs. smartphone. lucrurile funcționează perfect! De asemenea, am proiectat aplicația