Innholdsfortegnelse:

Billig og effektiv hjemmeautomatisering med bringebær Pi: 11 trinn (med bilder)
Billig og effektiv hjemmeautomatisering med bringebær Pi: 11 trinn (med bilder)

Video: Billig og effektiv hjemmeautomatisering med bringebær Pi: 11 trinn (med bilder)

Video: Billig og effektiv hjemmeautomatisering med bringebær Pi: 11 trinn (med bilder)
Video: Lærke - Vi skal ikke være kærester 2024, November
Anonim
Billig og effektiv hjemmeautomatisering med bringebær Pi
Billig og effektiv hjemmeautomatisering med bringebær Pi
Billig og effektiv hjemmeautomatisering med bringebær Pi
Billig og effektiv hjemmeautomatisering med bringebær Pi
Billig og effektiv hjemmeautomatisering med bringebær Pi
Billig og effektiv hjemmeautomatisering med bringebær Pi

Jeg har alltid ønsket å kunne styre lysene trådløst, men kommersielle alternativer er vanligvis dyre. Philips Hue -lys koster rundt $ 70, og WiFi -tilkoblede lys er også dyre. Denne opplæringen vil fortelle deg hvordan du kan kontrollere opptil fem lamper/lamper/julelys for rundt $ 50, og kan utvides til å inkludere flere lys også.

Trinn 1: Hva du trenger

Hva du trenger
Hva du trenger

Materialer:

Raspberry Pi Zero W (trådløs utgave)

Micro SD -kort (minst 4 GB)

Mini HDMI til HDMI kabel/omformer (Det er en forskjell mellom mini og mikro, sørg for å få den riktige!)

Micro USB til USB kabel/omformer

USB -tastatur

Merk: Jeg har et Raspberry Pi Zero W -startsett fra Amazon som fulgte med Raspberry Pi Zero W, SD -kort, etui, strømkabel, HDMI -omformer og USB -omformer. For bare $ 30 er det et ganske godt alternativ (lenke)

Du kan bruke en annen modell av Raspberry Pi, men Raspberry Pi må ha en form for internettforbindelse, og Pi Zero W er det billigste alternativet.

Fjernkontakter - jeg brukte disse

RF -sender og mottaker (Merk: frekvensen til senderen/mottakeren må stemme overens med frekvensen til de eksterne uttakene) - Jeg brukte disse

Ledning til antenne (jeg brukte 22 gauge solid kjernetråd, annen ledning kan fungere)

Brødbrett, jumperkabler, 40-pins mann-til-mann-topptekst

Programvare:

Raspberry Pi OS (Last ned Raspbian Desktop)

Etcher disk imager (For å skrive Pi OS til SD -kortet)

Verktøy:

Loddejern

Datamaskin for nedlasting av Pi OS og Etcher

Trinn 2: Sett opp utsalgssteder

Sett opp utsalgsstedene
Sett opp utsalgsstedene
Sett opp utsalgsstedene
Sett opp utsalgsstedene

Begynn med å koble stikkontaktene til en stikkontakt. Følg instruksjonene som følger med for å sette dem opp, og koble til lysene/apparatene. Forsikre deg om at fjernkontrollen er riktig paret og kontrollerer kontaktene.

Trinn 3: Opprett en PubNub -konto

PubNub er en gratis internettserver som lar deg kommunisere mellom enheter, hvor som helst i verden. Python -skriptet mottar meldinger fra en webside, og bruker informasjonen i meldingen til å slå lysene på eller av. Du kan registrere deg for din gratis konto her. Når du har registrert deg, logger du på kontoen din. Dette tar deg til en appadministrasjonsside. Klikk på "Opprett ny app". Gi deg appen et navn, og velg den fra listen over apper (Hvis dette er din første app, vil den være den eneste) Dette tar deg til siden med appnøkler. Klikk på "Demo Keyset", og du bør se tre forskjellige taster. Hold denne siden oppe, du trenger disse tastene senere. Nå som du har din PubNub -konto, kan du konfigurere bringebær -pi.

Trinn 4: Forbered Raspberry Pi

Last ned Etcher og Raspberry Pi OS på datamaskinen din (lenker i deleliste)

Installer Etcher på datamaskinen din, og pakk ut (om nødvendig) Raspberry Pi OS. Sett inn Micro SD -kortet i datamaskinen, og åpne Etcher. Klikk "Velg bilde" og naviger til den utpakkede Raspberry Pi OS -filen. Velg det, klikk deretter "Velg stasjon" og velg micro SD -kortet ditt fra listen. Klikk på "Flash", og vent til Etcher er fullført. Når Etcher er fullført, fjerner du SD -kortet fra datamaskinen (Etcher løser det ut automatisk) og setter det inn i Raspberry Pi. På dette tidspunktet må du koble din Raspberry Pi til en skjerm med HDMI -omformeren. Koble til et tastatur (og mus hvis du har en multi-USB-hub) og koble til strømkabelen. Det er to mikro -USB -porter. Den ene er for strøm, den andre er en faktisk USB -port. Den som er nærmest slutten av Pi er strøm, mens den som er nærmere midten er USB. Din bringebær -pi begynner nå å starte opp. Den kan starte på nytt noen ganger under den første oppstarten, men det er normalt. Når bringebær -pi er startet, kobler du den til WiFi -en. Etter at du har koblet den til WiFi, kan du bruke en SSH -server, men jeg synes det er lettere å bruke GUI for nå. Åpne et terminalvindu og skriv inn disse kommandoene:

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 -ledningerPi

./bygge

Nå åpner du Raspberry Pi-filleseren, og du bør se mappen pi-home-automation. Dobbeltklikk på den, og du bør se en fil som heter RFControl.py. Kopier den (motsatt klikk og velg "Kopier"), gå deretter tilbake til pi -mappen og lim den inn der.

Slå av bringebær -pi (enten fra menyen eller ved å kjøre sudo poweroff fra kommandolinjen), og koble fra den når det grønne lyset slutter å blinke.

Trinn 5: Opprette kretsen

Opprette kretsen
Opprette kretsen
Opprette kretsen
Opprette kretsen
Opprette kretsen
Opprette kretsen

Nå er det på tide å lage kretsen. Jeg brukte et brødbrett, men du kan gjøre det som du vil.

Først må vi lage en antenne for RF -senderen. Denne instruksjonsopplæringen forteller hvordan du lager en antenne for en RF -sender. Følg instruksjonene, og lodd den deretter til senderens antennepinne (på den jeg brukte var den merket ANT) med den kortere siden nærmest senderen

Koble til senderen

Senderen bruker disse pinnene:

DATA: GPIO 17, fysisk pin 11

VCC: Raspberry Pi 5v, fysisk pin 2

GND: Raspberry Pi GND, fysisk pin 6

Koble mottakeren

Mottakeren bruker disse pinnene:

GND: Raspberry Pi GND, fysisk pin 9

VCC: Raspberry Pi 5v, fysisk pin 4

DATA: GPIO 27, fysisk pin 13 (Det er to datapinner på mottakeren jeg brukte, og jeg brukte den som er nærmest VCC)

Trinn 6: Få RF -kodene dine

Få RF -kodene dine
Få RF -kodene dine

Etter at kretsen er koblet til Raspberry Pi, må du sjekke den to ganger for å kontrollere at alt er på plass og deretter slå den på igjen. Når den er slått på, åpner du en terminal og skriver

sudo/var/www/rfoutlet/RFSniffer

Deretter åpner du RFControl -programmet. Å sette terminalvinduet og programvinduet side om side kan være nyttig i neste trinn.

Du trenger fjernkontrollen som var inkludert i uttakssettet nå. Hold den nær mottakeren, og trykk på hver enkelt knapp. Når du trykker på en knapp, vil du se to tall skrevet ut på skjermen. En av dem vil være en seks -syv -sifret kode, og den andre en tresifret kode. Du må redigere kodelisten i programmet. Tast inn den 7-sifrede koden på den tilhørende bryterens plass i programmet, og for hver av/på-knapp setter du inn den tresifrede koden (dette er lengden) i den tilhørende bryterens len i programmet.

For eksempel, hvis bryter 1 på har en kode på 1234567, en av -kode på 7654321 og en lengde på 890, vil koden se slik ut:

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': {… },…}

Gjenta dette for hver knapp. Mens du redigerer denne filen, endrer du strengene som sier "YOUR-SUB-KEY" til PubNub-abonnementsnøkkelen din, og "YOUR-PUB-KEY" til publiseringsnøkkelen.

Når hver knapp er spilt inn, kan du fortsette til neste avsnitt.

Trinn 7: Kjøre programmet

Kjører programmet
Kjører programmet

Nå som du har alle kodene dine, går du til denne GitHub -siden (På datamaskinen din, ikke bringebær pi) og klikker på den grønne knappen som sier "Klon eller last ned", og klikk deretter på "Last ned ZIP". Når denne filen er lastet ned, pakker du den ut og åpner mappen. Åpne filen main.js. Du må skrive inn abonnements- og publiseringsnøkler i programmet ved å erstatte "YOUR-PUB-KEY" med publiseringsnøkkelen din og "YOUR-SUB-KEY" med abonnementsnøkkelen.

Gå deretter tilbake til Raspberry Pi og skriv inn

python3 RFControl.py

Når den har skrevet ut "Klar", går du tilbake til datamaskinen og åpner index.html -filen i en nettleser ved å gjøre et motsatt klikk, velg "Åpne med" og velg din foretrukne nettleser. Du bør se 2 kolonner med 5 knapper, med navnene på bryterne mellom dem. Trykk på en av knappene. Hvis den kontrollerer stikkontakten riktig, flott! Hvis ikke, er det noen ting du kan prøve:

  1. Sørg for at Raspberry Pi mottar meldinger. Den skal skrive ut på skjermen når den mottar en melding fra nettsiden. Hvis ikke, må du kontrollere at abonnements-/publiseringsnøklene er riktige.
  2. Hvis Raspberry Pi mottar meldinger, må du kontrollere at RF -kodene er riktige. Kontroller at stikkontaktene er koblet til fjernkontrollen, at fjernkontrollen kan kontrollere dem, og at kodene du skrev inn i programmet er riktige.
  3. Hvis RF -kodene er riktige, må du kontrollere at Raspberry Pi er innenfor rekkevidden til utsalgsstedene. Hvis de begynner å fungere etter å ha flyttet den nærmere, må du kanskje gjøre antennen på nytt.
  4. Hvis de fortsatt ikke fungerer, vennligst fortell meg problemet ditt i kommentarene, så skal jeg prøve å hjelpe det.

Trinn 8: Kjører ved oppstart

For å få ditt pythonprogram til å kjøre ved oppstart, skriv inn dette i din bringebær pi -terminal:

crontab -e

Gå deretter til bunnen av filen og skriv inn dette:

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

Dette vil gjøre at Python -skriptet kjøres ved oppstart hver gang. Start Raspberry Pi på nytt.

Trinn 9: Legge til flere brytere

Legger til flere brytere
Legger til flere brytere

Følg disse instruksjonene hvis du vil legge til flere utsalgssteder:

Åpne RFControl.py på Raspberry Pi, og legg til en ny bryter i bryterordlisten.

Eksempel:

brytere = {

… andre brytere … 'NAME-OF-SWITCH': {'on': xxxxxxx, 'off': yyyyyyyy, 'len': zzz,},}

Deretter legger du til en ny knapp i nettappen din ved å redigere svitsjvariabelen i main.js på datamaskinen din.

Eksempel:

var brytere = [… gamle brytere … ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];

Erstatt NAME-TO-DISPLAY med navnet du vil at det skal vises på nettsiden, og NAME-OF-SWITCH på begge filene med alt du liker. Den må være unik fra de andre!

Trinn 10: Ta det videre

Tar det videre
Tar det videre

PubNub støttes på mange forskjellige plattformer, noe som betyr at du kan sende meldinger fra nesten hvilken som helst enhet! Jeg brukte et Raspberry Pi AIY Voice kit og PubNub for å sende kommandoer med stemmen min, men det kan være temaet for en senere Instructable. Takk for at du leser instruksjonsboken min, jeg håper den var nyttig!

Trinn 11: studiepoeng

Takk til Tim Leland for opplæringen om hvordan du konfigurerer RF -senderen: opplæring

Takk til diy_bloke for opplæringen om å lage en antenne: opplæring

Takk også til alle andre som la ut opplæringsprogrammer på nettet som jeg så på for å få hjelp!

Anbefalt: