Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11
Introduktion
Det finns gott om exempel på smart hemautomation där ute, men den här är enkel och har fungerat mycket effektivt i ett år i mitt hus så jag hoppas att du gillar det. När du är klar kommer du att ha en enhet som kan skanna nätverket för att se om du är i huset, beroende på vilken wi-fi-aktiverad enhet du behåller på dig själv, och kan styra en uppsättning uttag med en RF-antenn. Så nu, när du går in i ditt hem, tänds lamporna och när du lämnar kommer de att släckas, bara från din närvaro (du kan också spara mycket energi på apparater som inte behöver vara på när du är inte där, som trådlösa högtalare).
Den körs av en Raspberry Pi 2 modell B och använder pi-moten från Energenie, även om jag är säker på att alla RF-kontrollerade uttag kan hackas för att fungera med rätt kit. Den är kodad i Python, huvudsakligen med hjälp av nmap-python-biblioteket för portskanning i ditt lokala nätverk.
Krav:
1. Raspberry Pi - Jag har använt en 2 -modell B, men alla skulle fungera (inte säker på tillförlitligheten för en nolla över ett trådlöst nätverk dock) - ansluten till din router (Ethernet om möjligt).
2. Egengenie Pi-mote board och uttag
3. längd på tråd och lödkolv om möjligt
4. Valfri knapp och LED -åsidosättning
Steg 1: Steg 1: Montering
Jag behöver inte upprepa de grundläggande installationsanvisningarna här, Pi-moten har sina egna instruktioner som är ganska omfattande. Du kan köra övningskoden för att kontrollera att omkopplarna fungerar korrekt.
energenie4u.co.uk/res/pdfs/ENER314%20UM.pd…
Medan kortet har en antenn på, rekommenderas det för större räckvidd (> 5 m) att lägga till en trådantenn som visas på bilden (vertikal svart tråd). Signalerna överförs vid 433MHz så antennen ska vara ungefär 1/4 * v/f ~ = 15cm lång.
Jag har också lagt till ett lego -ärende i mitt, jag låter dig vara domare av kvaliteten på jobbet:)
Steg 2: Steg 2: Hitta dina enheters IP -adress
Som nämnts är huvudprogramvaruverktyget ett bibliotek som heter nmap som har anpassats för python och kan laddas ner härifrån: https://pypi.python.org/pypi/python-nmap/0.6.1 Det kan göra massor av saker:
Vi kommer inledningsvis att göra en bred skanning av nätverket för att hitta rätt enheter och i huvudprogrammet köra en skanning av nätverket.
Öppna en python -terminal och skriv:
importera nmap
nm = nmap. PortScanner ()
nm.scan (värdar = 'nätverks-IP-adressintervall', argument = '-sP')
IP -adressintervallet kommer att vara ungefär: '192.168.0.1/24'
Detta kommer att ge dig en lång lista över enheterna i ditt nätverk, du måste använda trial and error för att avgöra vilka enheter du är intresserad av.
Det här steget görs lättare med arp-scan-kommandon eller ping utanför pytontolkaren, vilket ger dig lite information om enheterna, men eftersom vi ändå använde python-nmap-biblioteket trodde jag att jag skulle lägga in den här.
När du väl har hittat vilka enheter du vill använda som närvarokontroller t.ex. mobiltelefoner, surfplattor etc. Notera deras IP -adresser. Detta fungerar på både dynamiskt och statiskt styrda IP -adressnätverk.
För att bekräfta att du har rätt enhet kan du koppla bort den från nätverket och köra genomsökningen igen, den ska då inte visas i din genomsökning.
Steg 3: Steg 3: Konfigurera dina uttag
Nu när du har dina IP -adresser måste du konfigurera dina uttag. Detta görs genom att hålla den gröna knappen på uttagen tills den röda lampan blinkar och sedan skicka den valda signalen. De olika signalerna uppnås med en uppsättning av 4 binära omkopplare som motsvarar digitala utgångar på Pi.
Det finns en exempelkod i Energenie -handboken för att byta, jag föreslår att du kopierar detta och anpassar ett kort skript som gör att du kan konfigurera uttagen genom att skicka en signal när du kör skriptet.
Steg 4: Steg 4: Skriv din kod
Och vidare till det sista programmet.
Jag har bifogat koden som jag använde, som fungerade för två enheter för var och en av de boende i vårt hus, medan det fanns en överstyrningsknapp för någon annan.
Koden fungerar genom att söka i IP -adresserna '192.168.0.10' och '192.168.0.28'. Den tittar då bara på portar 80 och 62078 för att spara tid, dessa portar är ofta öppna för kommunikation på mobila enheter. Ändra IP -adresserna till de adresser som du hittade i det senaste steget. Den kontrollerar också knappinmatningen, i detta fall är knappen ansluten till stift 40 i GPIO.setup med en neddragning till marken. Om någon av enheterna finns eller knappen är på, skickar den en signal till uttagen för att slå på.
För att undvika potentiella bortfall: medan enheten slås på snabbt vid din närvaro, eftersom det inte finns några falska positiva effekter, stängs den av efter en längre period. Detta beror på att det ibland finns falska negativ, det vill säga att det inte korrekt detekterar en enhet vid varje genomsökning. Som jag nämnde har vi inte haft några avhopp under ett års drift med denna teknik.
Jag har också lämnat felsökningskoden eftersom det är användbart för att ta reda på om din kod fungerar korrekt. Känn dig fri att bygga och modifiera från denna grund för att ha massor av uttag och massor av enheter som alla interagerar. Dessutom kommer du förmodligen att vilja köra den här koden hela tiden på din Pi i bakgrunden medan den gör andra saker, helst från start. För information om hur du gör detta, se den här tråden:
Rekommenderad:
IR -hemautomation med relä: 6 steg (med bilder)
IR -hemautomation med relä: Infared Remote Home Automation System (varning: replikera projektet på egen risk! Detta projekt innebär högspänning)
Hur man gör IoT -baserad hemautomation med NodeMCU -sensorer Kontrollrelä: 14 steg (med bilder)
Hur man gör IoT-baserad hemautomation med NodeMCU-sensorer Kontrollrelä: I detta IoT-baserade projekt har jag gjort Hemautomation med Blynk och NodeMCU-styrrelämodul med realtidsfeedback. I manuellt läge kan denna relämodul styras från mobil eller smartphone och manuell omkopplare. I autoläge är detta smar
Internet/molnstyrd hemautomation med Esp8266 (aREST, MQTT, IoT): 7 steg (med bilder)
Internet/molnstyrd hemautomation med Esp8266 (aREST, MQTT, IoT): ALLA poäng till http://arest.io/ för molntjänsten !! IoT det mest diskuterade ämnet i världen just nu !! Molnservrar och tjänster som gör detta möjligt är attraktionspunkten i dagens värld … UTKOMMANDE AV DISTANCE BARRIER var och är
GPS -biltracker med SMS -avisering och dataöverföring av Thingspeak, Arduino -baserad, Hemautomation: 5 steg (med bilder)
GPS -biltracker med SMS -meddelande och Thingspeak -dataöverföring, Arduino -baserad, Hemautomation: Jag gjorde den här GPS -spåraren förra året och eftersom den fungerar bra publicerar jag den nu på Instructable. Den är ansluten till tillbehörskontakten i min bagagerum. GPS -spåraren laddar upp bilens position, hastighet, riktning och uppmätt temperatur via en mobildata
Smart musik i sovrum och bad med hallon Pi - Integrering av flerrum, larm, knappstyrning och hemautomation: 7 steg
Smart musik i sovrum och bad med Raspberry Pi - Integrering av multirum, larm, knappstyrning och hemautomation: Idag vill vi ge dig två exempel på hur du kan använda Raspberry Pi med vår Max2Play -programvara för hemautomation: i badrummet och sovrummet . Båda projekten liknar varandra genom att musik i hög kvalitet från olika källor kan streamas genom