Innehållsförteckning:

Billig och effektiv hemautomation med hallon Pi: 11 steg (med bilder)
Billig och effektiv hemautomation med hallon Pi: 11 steg (med bilder)

Video: Billig och effektiv hemautomation med hallon Pi: 11 steg (med bilder)

Video: Billig och effektiv hemautomation med hallon Pi: 11 steg (med bilder)
Video: ETIHAD'S Incredible Apartments! A380 First Class Trip Report【Abu Dhabi to London】 2024, November
Anonim
Billig och effektiv hemautomation med hallon Pi
Billig och effektiv hemautomation med hallon Pi
Billig och effektiv hemautomation med hallon Pi
Billig och effektiv hemautomation med hallon Pi
Billig och effektiv hemautomation med hallon Pi
Billig och effektiv hemautomation med hallon Pi

Jag har alltid velat kunna styra lamporna trådlöst, men kommersiella alternativ är vanligtvis dyra. Philips Hue -lampor kostar cirka $ 70, och WiFi -anslutna lampor är också dyra. Denna handledning kommer att berätta hur du styr upp till fem lampor/lampor/julbelysningstrådar för cirka $ 50, och kan utökas till att inkludera fler lampor också.

Steg 1: Vad du behöver

Vad du kommer att behöva
Vad du kommer att behöva

Material:

Raspberry Pi Zero W (Wireless edition)

Micro SD -kort (minst 4 GB)

Mini HDMI till HDMI -kabel/omvandlare (Det är skillnad på mini och micro, se till att du får rätt!)

Micro USB till USB -kabel/omvandlare

USB -tangentbord

Obs: Jag fick ett Raspberry Pi Zero W -startpaket från Amazon som följde med Raspberry Pi Zero W, SD -kort, fodral, strömkabel, HDMI -omvandlare och USB -omvandlare. För endast $ 30 är det ett ganska bra alternativ (länk)

Du kan använda en annan modell av Raspberry Pi, men Raspberry Pi måste ha någon form av internetanslutning, och Pi Zero W är det billigaste alternativet.

Fjärruttag - jag använde dessa

RF -sändare och mottagare (Obs: sändarens/mottagarens frekvens måste matcha frekvensen på fjärruttagen) - jag använde dessa

Tråd för antenn (jag använde 22 gauge solid core koppartråd, annan tråd kan fungera)

Brödbräda, bygeltrådar, 40-stifts han-till-han-huvud

Programvara:

Raspberry Pi OS (Ladda ner Raspbian Desktop)

Etcher disk imager (För att skriva Pi OS till SD -kortet)

Verktyg:

Lödkolv

Dator för nedladdning av Pi OS och Etcher

Steg 2: Konfigurera Outlets

Sätt upp Outlets
Sätt upp Outlets
Sätt upp Outlets
Sätt upp Outlets

Börja med att ansluta dina uttag till ett uttag. Följ de medföljande instruktionerna för att installera dem och anslut dina lampor/apparater. Se till att fjärrkontrollen är korrekt ihopkopplad och styr uttagen.

Steg 3: Skapa ett PubNub -konto

PubNub är en gratis internetserver som låter dig kommunicera mellan enheter, var som helst i världen. Python -skriptet tar emot meddelanden från en webbsida och använder informationen i meddelandet för att slå på eller av lampor. Du kan registrera dig för ditt kostnadsfria konto här. När du har registrerat dig loggar du in på ditt konto. Detta tar dig till en apphanteringssida. Klicka på "Skapa ny app". Ge dig appen ett namn och välj den sedan från listan över appar (Om det här är din första app är det den enda) Detta tar dig till sidan med appnycklar. Klicka på "Demo Keyset", så ska du se tre olika tangenter. Håll den här sidan uppe, du behöver dessa nycklar senare. Nu när du har ditt PubNub -konto kan du konfigurera din hallon pi.

Steg 4: Förbered Raspberry Pi

Ladda ner Etcher och Raspberry Pi OS till din dator (länkar i listan med delar)

Installera Etcher på din dator och packa upp (om det behövs) Raspberry Pi OS. Sätt i ditt Micro SD -kort i datorn och öppna Etcher. Klicka på "Välj bild" och navigera till den uppackade Raspberry Pi OS -filen. Välj det, klicka sedan på "Välj enhet" och välj ditt micro SD -kort från listan. Klicka på "Flash" och vänta tills Etcher är klart. När Etcher har slutfört, ta bort ditt SD -kort från din dator (Etcher matar ut det automatiskt) och sätt in det i din Raspberry Pi. Vid denna tidpunkt måste du ansluta din Raspberry Pi till en bildskärm med HDMI -omvandlaren. Anslut ett tangentbord (och mus om du har en multi-USB-hubb) och anslut strömkabeln. Det finns två mikro -USB -portar. Den ena är för ström, den andra är en faktisk USB -port. Den som är närmast slutet av Pi är ström, medan den närmare mitten är USB. Din hallon pi börjar nu starta. Det kan starta om några gånger under den första uppstarten, men det är normalt. När din hallon pi har startat, anslut den till din WiFi. Efter att ha anslutit den till WiFi kan du använda en SSH -server, men jag tycker att det är lättare att använda GUI för tillfället. Öppna ett terminalfönster och ange dessa kommandon:

sudo pip3 install 'pubnub == 3.9.0'

cd git klon git: //git.drogon.net/wiringPi git klon

sudo git klon

sudo chown root.root/var/www/rfoutlet/codesend sudo chmod 4755/var/www/rfoutlet/codesend

cd -ledningarPi

./bygga

Öppna nu Raspberry Pi-filwebbläsaren och du bör se mappen pi-home-automation. Dubbelklicka på den så ska du se en fil som heter RFControl.py. Kopiera den (motsatt klick och välj "Kopiera"), återgå sedan till pi -mappen och klistra in den där.

Stäng av din hallon pi (antingen från menyn eller genom att köra sudo poweroff från kommandoraden) och koppla ur den när den gröna lampan slutar blinka.

Steg 5: Skapa kretsen

Skapa kretsen
Skapa kretsen
Skapa kretsen
Skapa kretsen
Skapa kretsen
Skapa kretsen

Nu är det dags att skapa kretsen. Jag använde en brödbräda, men du kan göra det som du vill.

Först måste vi skapa en antenn för RF -sändaren. Denna instruerbara handledning berättar hur man gör en antenn för en RF -sändare. Följ instruktionerna och löd det sedan till sändarens antennstift (på den jag använde var det märkt ANT) med den kortare sidan närmast sändaren

Anslut sändaren

Sändaren använder dessa stift:

DATA: GPIO 17, fysisk stift 11

VCC: Raspberry Pi 5v, Fysisk stift 2

GND: Raspberry Pi GND, fysisk stift 6

Anslut mottagaren

Mottagaren använder dessa stift:

GND: Raspberry Pi GND, fysisk stift 9

VCC: Raspberry Pi 5v, fysisk stift 4

DATA: GPIO 27, fysisk stift 13 (Det finns två datapinnar på mottagaren jag använde, och jag använde den som ligger närmast VCC)

Steg 6: Skaffa dina RF -koder

Skaffa dina RF -koder
Skaffa dina RF -koder

När din krets är ansluten till din Raspberry Pi, kontrollera den två gånger för att se till att allt är på plats och slå sedan på den igen. När den har slagits på öppnar du en terminal och skriver

sudo/var/www/rfoutlet/RFSniffer

Öppna sedan RFControl -programmet. Att sätta terminalfönstret och programfönstret sida vid sida kan vara till hjälp i nästa steg.

Du behöver fjärrkontrollen som ingick i uttagssatsen nu. Håll den nära mottagaren och tryck på varje enskild knapp. När du trycker på en knapp visas två nummer som skrivs ut på skärmen. En av dem kommer att vara en sex- eller sjusiffrig kod och den andra en tresiffrig kod. Du måste redigera kodordlistan i programmet. Ange den 7-siffriga koden på motsvarande switchens plats i programmet, och för varje på/av-knapp sätter du in den tresiffriga koden (detta är längden) i motsvarande switchens len i programmet.

Till exempel, om omkopplare 1 på har en kod på 1234567, en avkod på 7654321 och en längd på 890, ser koden ut så här:

koder = {

'switch1': {'on': 1234567, #This is switch 1 on 'off': 7654321, #this is switch 1 off 'len': 890, #this is switch 1 code length}, 'switch2': {… },…}

Upprepa detta för varje knapp. Medan du redigerar den här filen ändrar du strängarna som säger "YOUR-SUB-KEY" till din PubNub-prenumerationsnyckel och "YOUR-PUB-KEY" till din publiceringsnyckel.

När varje knapp har spelats in kan du fortsätta till nästa avsnitt.

Steg 7: Kör programmet

Kör programmet
Kör programmet

Nu när du har alla dina koder, gå till den här GitHub -sidan (på din dator, inte hallon pi) och klicka på den gröna knappen som säger "Klona eller ladda ner", klicka sedan på "Ladda ner ZIP". När den här filen har laddats ner, packa upp den och öppna mappen. Öppna filen main.js. Du måste ange dina prenumerations- och publiceringsnycklar i programmet genom att ersätta "YOUR-PUB-KEY" med din publiceringsnyckel och "YOUR-SUB-KEY" med din prenumerationsnyckel.

Gå sedan tillbaka till din Raspberry Pi och ange

python3 RFControl.py

När den har skrivit ut "Klar", gå tillbaka till din dator och öppna index.html -filen i en webbläsare genom att göra ett motsatt klick, välj "Öppna med" och välj önskad webbläsare. Du bör se 2 kolumner med 5 knappar, med namnen på växlarna mellan dem. Tryck på någon av knapparna. Om den kontrollerar uttaget korrekt, bra! Om inte, här är några saker att prova:

  1. Se till att Raspberry Pi tar emot meddelanden. Det ska skrivas ut på skärmen när det tar emot ett meddelande från webbsidan. Om inte, se till att dina prenumerations-/publiceringsnycklar är korrekta.
  2. Om Raspberry Pi tar emot meddelanden, se till att dina RF -koder är korrekta. Se till att dina uttag är ihopkopplade med fjärrkontrollen, fjärrkontrollen kan styra dem och att koder du angav i programmet är korrekta.
  3. Om RF -koder är korrekta, se till att din Raspberry Pi är inom utbudet. Om de börjar fungera efter att ha flyttat den närmare kan du behöva göra om din antenn.
  4. Om de fortfarande inte fungerar, berätta för mig ditt problem i kommentarerna så ska jag försöka hjälpa till med det.

Steg 8: Kör vid start

För att ditt pythonprogram ska köras vid start, ange detta i din hallon pi -terminal:

crontab -e

Gå sedan till botten av filen och ange detta:

@reboot python3 /home/pi/RFControl.py &

Detta gör att ditt Python -skript körs vid start varje gång. Starta om din Raspberry Pi nu.

Steg 9: Lägga till fler switchar

Lägger till fler switchar
Lägger till fler switchar

Om du vill lägga till fler butiker följer du dessa instruktioner:

Öppna RFControl.py på din Raspberry Pi och lägg till en ny switch i switchens ordlista.

Exempel:

växlar = {

… andra omkopplare … 'NAME-OF-SWITCH': {'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz,},}

Lägg sedan till en ny knapp i din webbapp genom att redigera växlarvariabeln i main.js på din dator.

Exempel:

var switchar = [… gamla switchar … ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];

Ersätt NAME-TO-DISPLAY med namnet du vill att det ska visas på webbsidan och NAME-OF-SWITCH på båda filerna med vad du vill. Det måste dock vara unikt från de andra!

Steg 10: Ta det vidare

Tar det vidare
Tar det vidare

PubNub stöds på många olika plattformar, vilket innebär att du kan skicka meddelanden från nästan vilken enhet som helst! Jag använde ett Raspberry Pi AIY Voice -kit och PubNub för att skicka kommandon med min röst, men det kan vara ämnet för en senare Instructable. Tack för att du läste min Instructable, jag hoppas att den var till hjälp!

Steg 11: Poäng

Tack till Tim Leland för självstudien om hur du konfigurerar RF -sändaren: handledning

Tack till diy_bloke för självstudien om hur du skapar en antenn: handledning

Tack också till alla andra som lagt ut självstudier online som jag tittade på för hjälp!

Rekommenderad: