Kazalo:

Vtičnica z omogočenim internetom: 13 korakov
Vtičnica z omogočenim internetom: 13 korakov

Video: Vtičnica z omogočenim internetom: 13 korakov

Video: Vtičnica z omogočenim internetom: 13 korakov
Video: Лайфхаки для ремонта квартиры. Полезные советы.#2 2024, November
Anonim
Image
Image
Potrebne zaloge
Potrebne zaloge

Navodila za nastavitev vtičnice projekta PowerHub Webserver Project & Internet Enabled

Centralno središče za obstojnost podatkov za svetlobo in vtičnice, ki omogočajo internet v vašem domu!

1. korak: Navodila za nastavitev vtičnice projekta PowerHub Webserver Project & Internet Enabled

Centralno središče za obstoj podatkov za svetlobo in vtičnice v vašem domu, ki omogočajo internet

Utripanje trdega diska RaspberriPi/namestitev potrebne programske opreme (z uporabo Ubuntu Linuxa) Prenos "RASPBIAN JESSIE LITE"

Ustvarite nov trdi disk za DashboardPI

Vstavite kartico microSD v računalnik prek adapterja USB in ustvarite podobo diska z ukazom dd

Poiščite vstavljeno kartico microSD z ukazom df -h, jo odstranite in ustvarite sliko diska z ukazom dd copy copy

$ df -h/dev/sdb1 7,4G 32K 7,4G 1%/mediji/XXX/1234-5678

$ umount /dev /sdb1

Pozor: preverite, ali je ukaz popolnoma natančen, s tem ukazom lahko poškodujete druge diske

if = lokacija slikovne datoteke RASPBIAN JESSIE LITE = lokacija vaše kartice microSD

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (opomba: v tem primeru je to/dev/sdb,/dev/sdb1 je bila obstoječa tovarniška particija na microSD)

Nastavitev vašega RaspberriPi

Novo kartico microSD vstavite v raspberrypi in jo vklopite z monitorjem, priključenim na vrata HDMI

Vpiši se

uporabnik: pi pass: malina

Zaradi varnosti spremenite geslo računa

sudo passwd pi

2. korak: Omogočite napredne možnosti RaspberriPi

sudo raspi-config

Izberite: 1 Razširite datotečni sistem

9 Napredne možnosti

Ime gostitelja A2 ga spremenite v "WIFI-OUTLET"

A4 SSH Omogoči strežnik SSH

A7 I2C Omogoči vmesnik i2c

Omogočite angleško/ameriško tipkovnico

sudo nano/etc/default/tipkovnica

Spremenite naslednjo vrstico: XKBLAYOUT = "mi"

Znova zaženite PI za spremembe postavitve tipkovnice / spreminjanje velikosti datotečnega sistema

$ sudo shutdown -r zdaj

Samodejna povezava z WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Dodajte naslednje vrstice, da se vaš raspberrypi samodejno poveže z vašo domačo WiFi (če je vaše brezžično omrežje na primer v naslednjem primeru imenovano "linksys")

network = {ssid = "linksys" psk = "TUKAJ BREZŽIČNA GESLO"} Znova zaženite PI za povezavo z omrežjem WiFi

$ sudo shutdown -r zdaj

Zdaj, ko je vaš PI končno v lokalnem omrežju, se lahko nanj na daljavo prijavite prek SSH. Najprej pa morate dobiti naslov IP, ki ga trenutno ima.

$ ifconfig Poiščite "inet addr: 192.168. XXX. XXX" v izhodu tega ukaza za IP naslov vašega PI

Pojdite na drug stroj in se prijavite v svoj raspberrypi prek ssh

$ ssh [email protected]. XXX. XXX

3. korak: Začnite nameščati potrebne pakete

$ sudo apt-get posodobitev

$ sudo apt-get nadgradnja

$ sudo apt-get install vim git python-requests python-gpiozero python-smbus i2c-tools python-imaging python-smbus build-bistven python-dev rpi.gpio python3 python3-pip libi2c-dev python3-spidev python-spidev python-spidev

Posodobite nastavitve lokalnega časovnega pasu

$ sudo dpkg-ponovno konfigurirajte tzdata

z vmesnikom izberite časovni pas

Nastavitev preprostega ukaza l imenika [neobvezno]

vi ~/.bashrc

dodaj naslednjo vrstico:

vzdevek l = 'ls -lh'

vir ~/.bashrc

Popravi označevanje privzete sintakse VIM [neobvezno]

sudo vi/etc/vim/vimrc

odkomentirajte naslednjo vrstico:

sintaksa vklopljena

Namestite gonilnike Python i2c

4. korak: ZGRADITE WEB API

Naslednja navodila vam bodo omogočila, da zgradite osrednje vozlišče, ki pojasnjuje različne vtičnice in stenska stikala, ki jih lahko izdelate, katere naprave so vklopljene in izklopljene. To je majhen skript PHP, ki ga postavite na spletnega gostitelja po vaši izbiri. Ima naslednji API za pridobivanje in nastavljanje informacij. Opomba: ne pozabite vključiti datoteke.htaccess za pravilno usmerjanje URL -jev.

Namestite mapo "index.php", "values/" in settings.php (konfigurirano po lastnih vrednostih) na spletni strežnik, ki podpira PHP po vaši izbiri. Vrednost skrivnega ključa v datoteki "settings.php" se mora ujemati z vrednostjo tajnega ključa, ki bi jo nastavili v datoteki "settings.py". To bo na osnovni ravni preprečilo, da bi kateri koli drug spletni promet nastavil / zapisal vrednosti, pri čemer bi vklopili vaše naprave, zdaj za to potrebujete ta zgoščeni ključ API v glavi zahteve

API podpira naslednje funkcije, za ta projekt bomo uporabljali samo vrednosti "zastavice", ki so logične vrednosti, ki stikalu povedo, da se vklopi in izklopi. Če bi želeli izkoristiti vrednosti "branja", bi jih lahko imeli, če bi se sobna temperatura preveč segrela s tem, ko bi tam prihranila temperaturo, bi lahko vklopila okenski ventilator itd.

Pridobite kodo

Klonirajte naslednji projekt iz GitHub -a, da dobite kodo za izvajanje spletnega strežnika in vtičnice RaspberryPI.

github.com/khinds10/PowerHub

Končne točke API pri izvajanju na spletnem strežniku

myhost/message (dobite trenutni niz sporočil)

myhost/message/set (HTTP POST surova vrednost niza za ta URL za nastavitev novega sporočila)

myhost/flag/{id} (dobite trenutno logično stanje zastave s celim številom: {id})

myhost/flag/all (dobite vse trenutne logične vrednosti vseh zastavic kot matriko)

myhost/flag/{id}/set (nastavite trenutno logično stanje na »true« za zastavo s celim številom: {id})

myhost/flag/{id}/unset (nastavite trenutno logično stanje na 'false' za zastavo s celim številom: {id})

myhost/reading/{id} (dobite trenutno povprečno vrednost branja za celo število: {id})

myhost/reading/all (dobite trenutno povprečno vrednost za vse odčitke kot matriko)

myhost/reading/{id}/set (HTTP POST surova numerična vrednost tega URL -ja za dodajanje nove vrednosti trenutnemu izračunanemu povprečju) - spodaj si oglejte, koliko skupnih vrednosti je sestavljenih v povprečno vrednost Konfiguracija Vrednosti „odčitkov“so izračunane kot povprečja določenega števila nedavno ohranjenih številskih vrednosti. Naslednjo konstanto nastavite na to, koliko najnovejših odčitkov je treba vključiti, da dobite povprečje.

$ readingsAverageLimit = 5;

Strežnik Datastore bo ohranil vrednosti enostavnih datotek, ki se nahajajo s spodnjimi pravili poimenovanja. Opomba: {id} bo nadomeščeno z resničnim celim številom, ki ga predstavlja URL dohodne zahteve.

$ valueFileFolder = 'vrednosti' (ime mape, ki vsebuje merilne datoteke) $ messageFileName = 'sporočilo.msg' (ime besedilne datoteke sporočila) $ readingsFilesNames = 'branje {id}.avg' (povprečje imena CSV -ja) readings file) $ flagFilesNames = 'flag {id}.flg' (ime datoteke z zastavico vrednosti boolean flag)

Prepričajte se, da lahko vse datoteke z vrednostmi zapisujejo vrednosti systemchmod 777/*

5. korak: Potrebne zaloge

Potrebne zaloge
Potrebne zaloge
Potrebne zaloge
Potrebne zaloge
Potrebne zaloge
Potrebne zaloge

1 -palčna žaga za luknje (za vrtanje)

5V 2 -kanalni relejni modul

Stenska plošča za obojestransko posodo

Duplex vtičnica

Pi Zero W

Površinska montaža Backbox Dual Gang

Beli osvetljeni gumbi

Korak 6: Izgradnja vtičnice

Gradnja vtičnice
Gradnja vtičnice

Prekinite zavihke Outlet

Zlomite jeziček na strani vtičnice, da se vsaka vtičnica vklopi/izklopi neodvisno

7. korak: Namestite gumbe

Gumbi za namestitev
Gumbi za namestitev
Gumbi za namestitev
Gumbi za namestitev

Na vhodni sprednji plošči z 1 -palčno žago izrežite 2 luknji za gumbe, ki jih namestite poleg vtičnic

Preskusna velikost sestavnih delov

Prepričajte se, da se vsi sestavni deli prilegajo v škatlo za izhodno površinsko montažo

8. korak: žični rele

Žični rele
Žični rele
Žični rele
Žični rele

Priključite rele na vtičnico, od podaljška do stene, ozemljitev (zelena) in nevtralno (belo) priključite neposredno na vtičnico. posamično

9. korak: Dodatne slike ožičenja in montaže

Dodatne slike ožičenja in montaže
Dodatne slike ožičenja in montaže

10. korak: Shema ožičenja

Žični diagram
Žični diagram

Z diagramom pravilno povežite komponente za delo s kodo RaspberryPI Python.

11. korak: Preizkus suhega teka

Preizkus suhega teka
Preizkus suhega teka
Preizkus suhega teka
Preizkus suhega teka
Preizkus suhega teka
Preizkus suhega teka

Po končni montaži, preden vijačno enoto privijete skupaj, izvedite napravo na suho, da se prepričate, da ni kratkih hlač, slabo ožičenje

12. korak: Nastavite zagonske skripte

crontab -e

dodajte naslednje vrstice

@reboot python /home/pi/PowerHub/device/outlet/buttons.py @reboot python /home/pi/PowerHub/device/outlet/relay.py

Priporočena: