Innehållsförteckning:

Ultra-low Power WiFi-hemautomationssystem: 6 steg (med bilder)
Ultra-low Power WiFi-hemautomationssystem: 6 steg (med bilder)

Video: Ultra-low Power WiFi-hemautomationssystem: 6 steg (med bilder)

Video: Ultra-low Power WiFi-hemautomationssystem: 6 steg (med bilder)
Video: Мужчина Строит Секретный Подземный БУНКЕР На Своем Заднем Дворе 2024, November
Anonim
Ultra-låg effekt WiFi-hemmautomationssystem
Ultra-låg effekt WiFi-hemmautomationssystem
Ultra-låg effekt WiFi-hemmautomationssystem
Ultra-låg effekt WiFi-hemmautomationssystem

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

Anslut IOT Cricket till RaspberryPi Over MQTT
Anslut IOT Cricket till RaspberryPi Over MQTT
Anslut IOT Cricket till RaspberryPi över MQTT
Anslut IOT Cricket till RaspberryPi över 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

Kontrollera MQTT -meddelanden
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

Sammanfattning
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: