Innholdsfortegnelse:

Internett -aktivert strømuttak: 13 trinn
Internett -aktivert strømuttak: 13 trinn

Video: Internett -aktivert strømuttak: 13 trinn

Video: Internett -aktivert strømuttak: 13 trinn
Video: How to Reset D-Link Router to Factory Default Settings 2024, Juli
Anonim
Image
Image
Rekvisita nødvendig
Rekvisita nødvendig

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

Rekvisita nødvendig
Rekvisita nødvendig
Rekvisita nødvendig
Rekvisita nødvendig
Rekvisita nødvendig
Rekvisita nødvendig

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

Bygg uttaket
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

Installer knapper
Installer knapper
Installer knapper
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é

Ledningsrelé
Ledningsrelé
Ledningsrelé
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

Ekstra lednings- og monteringsbilder
Ekstra lednings- og monteringsbilder

Trinn 10: Koblingsskjema

Koblingsskjema
Koblingsskjema

Bruk diagrammet til å koble komponentene riktig til å fungere med RaspberryPI Python -koden.

Trinn 11: Test tørrkjøring

Test tørrkjøring
Test tørrkjøring
Test tørrkjøring
Test tørrkjøring
Test tørrkjøring
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: