Innehållsförteckning:
- Steg 1: Vad är MQTT?
- Steg 2: Installera MQTT Broker på Raspberry Pi
- Steg 3: Anslut IOT Cricket till RaspberryPi Over MQTT
- Steg 4: Kontrollera MQTT -meddelanden
- Steg 5: Sammanfattning
- Steg 6: Om oss
Video: Ultra-low Power WiFi-hemautomationssystem: 6 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:35
I det här projektet visar vi hur du kan bygga ett grundläggande lokalt hemautomatiseringssystem i några få steg. Vi kommer att använda en Raspberry Pi som kommer att fungera som en central WiFi -enhet. För slutnoder kommer vi att använda IOT Cricket för att göra en batteridriven WiFi -enhet t.ex. temperatursensorn och anslut den till RPi utan att skriva en enda kodrad.
Vårt system kommer att baseras på MQTT -kommunikationsprotokoll, som är enormt antaget i de flesta hemautomatiseringssystem. För att konfigurera det väljer vi Mosquitto MQTT -mäklare (server) och installerar det på Raspberry Pi (vårt centrala nav).
IOT Cricket levereras också med stöd för HTTP (S) och MQTT -protokoll. Vi konfigurerar den för att använda MQTT för att kommunicera direkt till vår RPi MQTT -mäklare.
Detta projekt kan realiseras av beslutsfattare på alla nivåer. Det kan kräva viss grundlödning men det kräver ingen kodning eller programmering. I slutet av detta projekt får du en gedigen uppfattning om hur du enkelt kan bygga ditt eget system och snabbt förlänga genom att lägga till dina egna IOT -slutnoder i systemet.
Tillbehör:
- Raspberry Pi (vi använde ver. 3 för detta projekt)
- IOT Cricket WiFi -modul
- 2xAAA batterihållare
- 2xAAA batterier
Steg 1: Vad är MQTT?
MQTT -protokollet tillhandahåller en lätt metod för att utföra meddelanden med hjälp av en publicerings-/prenumerationsmodell. Detta gör den lämplig för Internet of Things -meddelanden såsom lågeffektsensorer eller mobila enheter som telefoner, inbyggda datorer eller mikrokontroller. (källa: mosquitto.org)
Vi kan använda så många enheter som vi vill prenumerera på ämnen och lyssna på att meddelanden ska komma. Om vissa enheter publicerar ett meddelande om det ämnet, får alla enheter som prenumererar på ämnet det meddelandet omedelbart. Ämnet kan vara valfri godtycklig sträng som vanligtvis sammanfogas med / tecken för att skapa hierarkiska ämnen. Den mest typiska användningen av MQTT är att ha en central server som enheter kan prenumerera på och publicera meddelanden på. Det underlättar all kommunikation mellan enheter som är anslutna till den servern. I detta projekt kommer vi att använda RPi för att fungera som vår centrala MQTT -mäklare och alla andra enheter skickar meddelanden via denna mäklare. Det bästa sättet att lära sig om det är uppenbarligen genom att göra det själva. Det finns gott om resurser tillgängliga på internet på MQTT. Men för detta projekt bör du vara okej med en grundläggande introduktion, som vi gav ovan.
Steg 2: Installera MQTT Broker på Raspberry Pi
För detta projekt använder vi en open source Mosquitto MQTT -mäklare. Den är lätt och är lämplig för användning på alla enheter från enkla datorer med låg effekt till fulla servrar.
Innan vi börjar installera är det bra att först uppdatera systemkomponenterna:
$ sudo apt-get uppdatering $ sudo apt-get uppgradering
Installera Mosquitto mäklare. Öppna en terminal och skriv följande kommando:
$ sudo apt -get install mygg -y
Konfigurera Mosquitto -mäklare. Redigera konfigurationsfil:
$ sudo vi /etc/mosquitto/mosquitto.conf
och lägg till följande rader högst upp:
port 1883allow_anonymous true
Starta om RPi för att tillämpa ändringar:
$ sudo starta om
Det är allt! Vår MQTT -mäklare är igång nu!
OBS: för enkelhetens skull skapar vi inte konton. Så vem som helst i vårt lokala nätverk kan ansluta till denna MQTT -mäklare utan referenser. Om du vill lägga till användarautentisering och göra det säkrare finns det gott om självstudier på internet hur man gör det.
Nu behöver vi bara skaffa IP -adress så att vi kan skicka meddelanden till vår Mosquitto -mäklare från andra enheter i nätverket:
Skaffa IP -adress:
$ värdnamn -I
din_RPi_IP_adress (t.ex. 192.168.1.10)
Steg 3: Anslut IOT Cricket till RaspberryPi Over MQTT
I detta projekt använder vi IOT Cricket WiFi -modulen för en enkel sensor för att rapportera en temperatur var 30: e sekund till vårt system. Den kommer att fungera på ett batteri så att vi kan fästa den var som helst hemma eller i trädgården. Senare kan du använda IOT Cricket för att bygga olika batteridrivna sensorer, larm, knappar, switchar och ansluta dem också till vår RPi MQTT -mäklare ur lådan.
I det första steget ansluter du batterier till Cricket.
Cricket levereras med en inbyggd temperatursensor. Vi behöver bara konfigurera det för att skicka temperaturvärde till vår MQTT -mäklare genom att ställa in RPi IP -adressen. För att göra det öppnar Cricket konfigurationspanel (se stegen här) och tillämpar följande inställningar (som visas på bilden nedan, vänligen justera IP -adressen i rutan "url" till din RPi)
Nu kan vi lämna konfigurationsläget. Enheten är klar! Cricket skickar redan data till vår MQTT -mäklare var 30: e sekund.
Steg 4: Kontrollera MQTT -meddelanden
För att se / ta emot meddelanden som skickas till vår MQTT -mäklare kan vi använda olika verktyg.
Det enklaste kan vara ett kommandoradsverktyg mosquitto_sub. Vi kan installera det antingen på vilken dator som helst i vårt nätverk eller på vår RPi med det här kommandot:
$ sudo apt-get install mosquitto-clients -y
Nu kan vi utföra följande kommando för att lyssna på ALLA ämnen och meddelanden som skickas via vår MQTT -mäklare:
$ 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_f
Ovanstående är ett utmatningsexempel på vad IOT Cricket skickar till vår mäklare. Bland de andra data vi kan se finns en temperatur:
/59A98F494C/temp 26,0
Det fina med MQTT är att det tillåter oss att bara prenumerera på ämnen som vi är intresserade av. Om vi bara vill få en temperatur kan vi prenumerera på /59A98F494C /temp topic med hjälp av följande kommando:
$ mosquitto_sub -h your_RPi_IP_address -t '/59A98F494C/temp'
…26.126.527.227.6…
Steg 5: Sammanfattning
Vi har i detta projekt visat en viktig hårdvara och mjukvara för att börja bygga energisnåla, energieffektiva, hemautomatiseringssystem baserade på WiFi. MQTT är essensen att bygga vidare på för mer sofistikerade system.
Ekosystemet för programvara och tjänster som kan integreras med MQTT är STORT! Det finns många bra system som Home Assistant, Node RED, Grafana, etc. för att låta dig få en bra användarupplevelse av ditt eget system. Inte bara kan vi göra enkla utskrifter av en temperatur, men vi kan ha fantastiska instrumentpaneler som visualiserar data och hanterar dina enheter.
Nu när vi har denna grundläggande systeminfrastruktur på plats är himlen vår gräns för vilka andra WiFi -enheter vi kan bygga med IOT Cricket -moduler och lägga till i vårt hemautomatiseringssystem.
Tack för att du kom hit. Vi hoppas att du gillade denna handledning!
Things On Edge -team
Steg 6: Om oss
Things On Edge är ett företag baserat i Cambridge, Storbritannien. Vi designar Cricket Wi-Fi-modul med extremt lågt batteri för att du ska kunna ansluta olika elektroniska enheter till smartphones eller andra internettjänster bokstavligen på några minuter. Det kräver ingen programmering och kodning. Det låter dig integrera dina enheter till en enorm IOT -ekosystemtjänster över MQTT- och HTTP -apis.
Rekommenderad:
IoT Power Module: Lägga till en IoT Power Measurement Feature till Min Solar Charge Controller: 19 steg (med bilder)
IoT Power Module: Lägga till en IoT Power Measurement Feature till Min Solar Charge Controller: Hej alla, jag hoppas att ni alla är bra! I den här instruktören kommer jag att visa dig hur jag gjorde en IoT Power Measurement -modul som beräknar mängden energi som genereras av mina solpaneler, som används av min solcellsladdare
VHT Special 6 Ultra Channel Switching Mod (inkl. Fotpedal): 10 steg (med bilder)
VHT Special 6 Ultra Channel Switching Mod (inkl. Fotpedal): Detta är min första instruerbara. Jag skaffade mig nyligen ett VHT -special 6 Ultra -huvud och älskar det förutom att jag måste koppla ur gitarrkabeln för att byta kanal! Jag märkte att andra känner på samma sätt, så jag bestämde mig för att ändra det. Dess
Joule Thief Med Ultra Simple Control of Light Output: 6 steg (med bilder)
Joule Thief Med Ultra Simple Control of Light Output: Joule Thief -kretsen är en utmärkt entré för den nybörjade elektroniska experimenteraren och har reproducerats otaliga gånger, en Google -sökning ger 245000 träffar! Den överlägset vanligaste kretsen är den som visas i steg 1 här
Från Power Bar till Power Bank: 7 steg (med bilder)
Från Power Bar till Power Bank: Den här instruktionsboken visar dig hur du förvandlar min favorit powerbar (Toblerone) till en powerbank.Min chokladkonsumtion är enorm, därför har jag alltid paket med chokladkakor liggande och inspirerar mig att göra något kreativt. Så jag hamnade
Ultra bärbar USB -laddare med cool hölje: 3 steg (med bilder)
Ultra bärbar USB -laddare med cool hölje: Jag har precis börjat geocacha nyligen och har använt mina garmin -bilgps. Det fungerar ganska bra förutom att en lång dag (eller natt) kan döda batteriet. Jag blev inspirerad av denna instruerbara: DIY mer effektiv långvarig USB eller vilken laddare som helst nu