Innholdsfortegnelse:
- Trinn 1: PowerHub Webserver Project & Internet Enabled Outlet Setup Instructions
- Trinn 2: Aktiver RaspberriPi Advanced Options
- Trinn 3: Begynn å installere nødvendige pakker
- Trinn 4: BYGG WEB -API
- Trinn 5: Nødvendig rekvisita
- Trinn 6: Bygg uttaket
- Trinn 7: Installer knapper
- Trinn 8: Ledningsrelé
- Trinn 9: Ekstra lednings- og monteringsbilder
- Trinn 10: Koblingsskjema
- Trinn 11: Test tørrkjøring
- Trinn 12: Angi oppstartsskriptene
Video: Internett -aktivert strømuttak: 13 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Installasjonsinstruksjoner for PowerHub Webserver Prosjekt og Internett
Sentralt datapersistenshub for Internett -aktivert lys og stikkontakter i hjemmet ditt!
Trinn 1: PowerHub Webserver Project & Internet Enabled Outlet Setup Instructions
Sentralt dataholdighetsnav for Internett -aktivert lys og stikkontakter i hjemmet ditt
Blinkende RaspberriPi -harddisk/Installer nødvendig programvare (ved hjelp av Ubuntu Linux) Last ned "RASPBIAN JESSIE LITE"
Lag din nye harddisk for DashboardPI
Sett inn microSD -en på datamaskinen din via USB -adapteren, og lag diskbildet med kommandoen dd
Finn ditt innsatte microSD -kort via kommandoen df -h, demonter det og lag diskbildet med kommandoen disk copy dd
$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678
$ umount /dev /sdb1
Forsiktig: sørg for at kommandoen er helt nøyaktig, du kan skade andre disker med denne kommandoen
if = plassering av RASPBIAN JESSIE LITE bildefil av = plassering av microSD -kortet
$ sudo dd bs = 4M hvis =/path/to/raspbian-jessie-lite.img av =/dev/sdb (merk: i dette tilfellet er det/dev/sdb,/dev/sdb1 en eksisterende fabrikkpartisjon på microSD)
Sette opp RaspberriPi
Sett inn det nye microSD -kortet i raspberrypi og slå det på med en skjerm koblet til HDMI -porten
Logg Inn
bruker: pi pass: bringebær
Endre kontopassordet ditt for sikkerhet
sudo passwd pi
Trinn 2: Aktiver RaspberriPi Advanced Options
sudo raspi-config
Velg: 1 Utvid filsystemet
9 Avanserte alternativer
A2 Hostname endre det til "WIFI-OUTLET"
A4 SSH Aktiver SSH -server
A7 I2C Aktiver i2c -grensesnitt
Aktiver engelsk/amerikansk tastatur
sudo nano/etc/default/keyboard
Endre følgende linje: XKBLAYOUT = "oss"
Start PI på nytt for endringer i tastaturoppsett / endring av filsystem for å tre i kraft
$ sudo shutdown -r nå
Koble til WiFi automatisk
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Legg til følgende linjer for å få raspberrypi -enheten din til å koble seg automatisk til WiFi hjemme (hvis det trådløse nettverket ditt for eksempel heter "linksys" i eksempelet nedenfor)
network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} Start PI på nytt for å koble til WiFi -nettverk
$ sudo shutdown -r nå
Nå som PI -en din endelig er på det lokale nettverket, kan du logge eksternt på den via SSH. Men først må du få IP -adressen den har for øyeblikket.
$ ifconfig Se etter "inet addr: 192.168. XXX. XXX" i følgende kommandos utgang for PIs IP -adresse
Gå til en annen maskin og logg på raspberrypi via ssh
$ ssh [email protected]. XXX. XXX
Trinn 3: Begynn å installere nødvendige pakker
$ sudo apt-get oppdatering
$ sudo apt-get oppgradering
$ sudo apt-get install vim git python-forespørsler python-gpiozero python-smbus i2c-verktøy python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev python3-spidev python-spidev
Oppdater lokale tidssoneinnstillinger
$ sudo dpkg-omkonfigurer tzdata
velg din tidssone ved hjelp av grensesnittet
Sett opp den enkle katalog l -kommandoen [valgfritt]
vi ~/.bashrc
legg til følgende linje:
alias l = 'ls -lh'
kilde ~/.bashrc
Fix VIM standardsyntaks utheving [valgfritt]
sudo vi/etc/vim/vimrc
ikke kommenter følgende linje:
syntaks på
Installer i2c Python -drivere
Trinn 4: BYGG WEB -API
Følgende instruksjoner lar deg bygge den sentrale huben som forklarer de forskjellige wifi -aktiverte stikkontaktene og veggbrytere du kan bygge, hvilke enheter som er slått på og av. Dette er et lite PHP -skript å plassere på en webhost du velger. Den har følgende API for å hente og sette informasjon til den. Merk: Ikke glem å inkludere.htaccess -filen for at riktig URL -ruting skal finne sted.
Installer mappen "index.php", "values/" og settings.php (konfigurert til dine egne verdier) til en PHP -aktivert webserver etter eget valg. Den hemmelige nøkkelverdien i "settings.php" -filen må samsvare med den hemmelige nøkkelverdien du ville angitt i filen "settings.py". Dette vil på et grunnleggende nivå forhindre all annen webtrafikk i å angi / skrive verdier, slå på enhetene dine. Du trenger nå denne haschede API -nøkkelen i HTTP -forespørselsoverskriften for å gjøre det.
API -en støtter følgende funksjoner. For dette prosjektet bruker vi bare "flagg" -verdiene, som er boolske verdier som forteller bryteren å slå på og av. Kanskje hvis du ville dra nytte av "lese" -verdiene, kan du ha det, så hvis en romtemperatur blir for varm ved å lagre en temperatur der, kan den slå på en vindusvifte, etc.
Få koden
Klon følgende prosjekt fra GitHub for å få koden for å kjøre webserveren og utløpet RaspberryPI.
github.com/khinds10/PowerHub
API -endepunkter når du kjører på webserver
myhost/melding (få gjeldende meldingssett)
myhost/melding/sett (HTTP POST en rå strengverdi til denne nettadressen for å angi en ny melding)
myhost/flag/{id} (få flaggets nåværende boolske status etter heltall: {id})
myhost/flag/all (få all den nåværende boolske statusen til alle flaggene som en matrise)
myhost/flag/{id}/set (sett nåværende boolske status til 'true' for flagget etter heltall: {id})
myhost/flag/{id}/unset (sett nåværende boolske status til "usann" for flagget etter heltall: {id})
myhost/reading/{id} (få gjeldende gjennomsnittsverdi for lesingen etter heltall: {id})
myhost/reading/all (få gjeldende gjennomsnittsverdi for alle avlesninger som en matrise)
myhost/reading/{id}/set (HTTP POST en rå numerisk verdi for denne nettadressen for å legge til en ny verdi i det nåværende beregnede gjennomsnittet) - se nedenfor for hvor mange verdier totalt som er samlet til gjennomsnittsverdien Konfigurasjon "Lesings" -verdiene beregnes som gjennomsnitt av et visst antall nylige numeriske verdier for vedvarende lesing. Sett følgende konstant til hvor mange av de siste målingene som skal inkluderes for å produsere gjennomsnittet.
$ readingsAverageLimit = 5;
Datastore Server vil beholde verdier for enkle filer som er lokalisert ved navnekonvensjoner nedenfor. Merk: {id} blir erstattet av det virkelige heltallet som presenteres av den innkommende forespørselens URL.
$ valueFileFolder = 'verdier' (navn på mappen som skal inneholde målefilene) $ messageFileName = 'message.msg' (navn på teksttekstfilen) $ readingsFilesNames = 'reading {id}.avg' (navnet på CSV -gjennomsnittet lesingsfil) $ flagFilesNames = 'flagg {id}.flg' (navnet på den boolske flaggverdiens flaggfil)
Sørg for at alle verdifilene er skrivbare av systemchmod 777 -verdiene/*
Trinn 5: Nødvendig rekvisita
1 tommers hullsag (for en drill)
5V 2 -kanals relemodul
Veggplate for tosidig oppbevaring
Tosidig oppbevaring
Pi Zero W
Surface Mount Backbox Dual Gang
Hvite opplyste trykknapper
Trinn 6: Bygg uttaket
Break Outlet -faner
Bryt tappen på siden av uttaket for å få hver kontakt til å slå seg av/på uavhengig av hverandre
Trinn 7: Installer knapper
På Outlet -frontplaten bruker du 1 hullsagen til å kutte to hull for knappene som skal plasseres ved siden av uttakene
Teststørrelse på komponenter
Sørg for at alle komponentene får plass i utløpsboksens monteringsboks
Trinn 8: Ledningsrelé
Koble reléet til uttaket, fra skjøteledningen som går til veggen, koble bakken (grønn) og nøytral (hvit) direkte til uttaket For den varme (svarte) koble dem til reléet og deretter fra reléet til hver kontakt for varme kontakter individuelt
Trinn 9: Ekstra lednings- og monteringsbilder
Trinn 10: Koblingsskjema
Bruk diagrammet til å koble komponentene riktig til å fungere med RaspberryPI Python -koden.
Trinn 11: Test tørrkjøring
Etter siste montering før du skrur sammen hullenheten, utfør en tørr kjøring av enheten for å sikre at det ikke er shorts, dårlige ledninger
Trinn 12: Angi oppstartsskriptene
crontab -e
legg til følgende linjer
@reboot python /home/pi/PowerHub/device/outlet/buttons.py @reboot python /home/pi/PowerHub/device/outlet/relay.py
Anbefalt:
BOSEBerry Pi Internett -radio: 4 trinn (med bilder)
BOSEBerry Pi Internett -radio: Jeg elsker å høre på radio! Jeg brukte en DAB -radio i huset mitt, men syntes resepsjonen var litt ujevn og lyden fortsatte å bryte opp, så jeg bestemte meg for å bygge min egen internettradio. Jeg har et sterkt wifi -signal rundt huset mitt og den digitale broen
Internett -servo: 3 trinn
Internett -servo: INNLEDNING Jeg liker å mate fugler i hagen min, men dessverre drar den svarte rotten også fordeler av dette. Så jeg tenkte på en måte å forhindre rotter i å spise fuglemat. Den svarte rotten er bare aktiv i mørket, så vi må lukke bi
DIY Monitor -støtte med strømuttak: 4 trinn (med bilder)
DIY Monitor Support with Power Outlet: Først av alt må jeg nevne at jeg alltid liker å bygge min egen ting for å løse mine spesifikke nødvendigheter, og i dette tilfellet er ikke annerledes.Problem: Finn en billigere skjermstøtte som passer til den nøyaktige størrelsen av notatboken min. For meg er det beste oppsettet for
Reparasjon av billig bærbar strømuttak fra Dell: 4 trinn
Billig Dell Notebook Power Jack -reparasjon: I stedet for å betale over $ 100 for å få en ny DC -strømkontakt installert på min bærbare Dell -pc, fant jeg ut en måte å gjøre det på selv uten kostnad. Det krever IKKE demontering av datamaskinen. Den i guiden min gjennomgikk et bytte av skjermkort
Legg til en USB -strømuttak i bilen din: 9 trinn (med bilder)
Legg til en USB -stikkontakt i bilen din: På grunn av den omfangsrike naturen til 12 volt -adaptere for kjøretøyer, bestemte jeg meg for å integrere et USB -strømuttak i min 2010 Prius III. Selv om denne moden er spesifikk for bilen min, kan den brukes på mange biler, lastebiler, bobiler, båter, ect